@wordpress/edit-site 5.19.2 → 5.20.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 (788) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-page/index.js +9 -8
  3. package/build/components/add-new-page/index.js.map +1 -1
  4. package/build/components/add-new-pattern/index.js +12 -15
  5. package/build/components/add-new-pattern/index.js.map +1 -1
  6. package/build/components/add-new-template/add-custom-generic-template-modal-content.js +8 -7
  7. package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  8. package/build/components/add-new-template/add-custom-template-modal-content.js +20 -19
  9. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  10. package/build/components/add-new-template/index.js +2 -2
  11. package/build/components/add-new-template/index.js.map +1 -1
  12. package/build/components/add-new-template/new-template.js +17 -16
  13. package/build/components/add-new-template/new-template.js.map +1 -1
  14. package/build/components/add-new-template/template-actions-loading-screen.js +4 -4
  15. package/build/components/add-new-template/template-actions-loading-screen.js.map +1 -1
  16. package/build/components/app/index.js +2 -2
  17. package/build/components/app/index.js.map +1 -1
  18. package/build/components/block-editor/back-button.js +2 -2
  19. package/build/components/block-editor/back-button.js.map +1 -1
  20. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +10 -6
  21. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -1
  22. package/build/components/block-editor/block-editor-provider/index.js +3 -3
  23. package/build/components/block-editor/block-editor-provider/index.js.map +1 -1
  24. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +3 -2
  25. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +1 -1
  26. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +19 -11
  27. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -1
  28. package/build/components/block-editor/block-inspector-button.js +2 -2
  29. package/build/components/block-editor/block-inspector-button.js.map +1 -1
  30. package/build/components/block-editor/editor-canvas.js +4 -3
  31. package/build/components/block-editor/editor-canvas.js.map +1 -1
  32. package/build/components/block-editor/index.js +2 -2
  33. package/build/components/block-editor/index.js.map +1 -1
  34. package/build/components/block-editor/resizable-editor.js +4 -3
  35. package/build/components/block-editor/resizable-editor.js.map +1 -1
  36. package/build/components/block-editor/resize-handle.js +3 -3
  37. package/build/components/block-editor/resize-handle.js.map +1 -1
  38. package/build/components/block-editor/site-editor-canvas.js +8 -7
  39. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  40. package/build/components/canvas-loader/index.js +4 -4
  41. package/build/components/canvas-loader/index.js.map +1 -1
  42. package/build/components/code-editor/index.js +8 -7
  43. package/build/components/code-editor/index.js.map +1 -1
  44. package/build/components/create-template-part-modal/index.js +17 -16
  45. package/build/components/create-template-part-modal/index.js.map +1 -1
  46. package/build/components/dataviews/dataviews.js +61 -0
  47. package/build/components/dataviews/dataviews.js.map +1 -0
  48. package/build/components/dataviews/index.js +21 -0
  49. package/build/components/dataviews/index.js.map +1 -0
  50. package/build/components/dataviews/list-view.js +89 -0
  51. package/build/components/dataviews/list-view.js.map +1 -0
  52. package/build/components/dataviews/pagination.js +89 -0
  53. package/build/components/dataviews/pagination.js.map +1 -0
  54. package/build/components/dataviews/text-filter.js +44 -0
  55. package/build/components/dataviews/text-filter.js.map +1 -0
  56. package/build/components/dataviews/view-actions.js +189 -0
  57. package/build/components/dataviews/view-actions.js.map +1 -0
  58. package/build/components/editor/index.js +15 -14
  59. package/build/components/editor/index.js.map +1 -1
  60. package/build/components/editor-canvas-container/index.js +4 -3
  61. package/build/components/editor-canvas-container/index.js.map +1 -1
  62. package/build/components/error-boundary/index.js +2 -1
  63. package/build/components/error-boundary/index.js.map +1 -1
  64. package/build/components/error-boundary/warning.js +4 -4
  65. package/build/components/error-boundary/warning.js.map +1 -1
  66. package/build/components/global-styles/block-preview-panel.js +5 -4
  67. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  68. package/build/components/global-styles/color-indicator-wrapper.js +2 -2
  69. package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
  70. package/build/components/global-styles/color-palette-panel.js +5 -5
  71. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  72. package/build/components/global-styles/dimensions-panel.js +3 -2
  73. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  74. package/build/components/global-styles/font-families.js +14 -14
  75. package/build/components/global-styles/font-families.js.map +1 -1
  76. package/build/components/global-styles/font-family-item.js +6 -5
  77. package/build/components/global-styles/font-family-item.js.map +1 -1
  78. package/build/components/global-styles/font-library-modal/collection-font-details.js +9 -7
  79. package/build/components/global-styles/font-library-modal/collection-font-details.js.map +1 -1
  80. package/build/components/global-styles/font-library-modal/collection-font-variant.js +5 -5
  81. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  82. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +2 -2
  83. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -1
  84. package/build/components/global-styles/font-library-modal/context.js +28 -31
  85. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  86. package/build/components/global-styles/font-library-modal/font-card.js +7 -7
  87. package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
  88. package/build/components/global-styles/font-library-modal/font-collection.js +44 -23
  89. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  90. package/build/components/global-styles/font-library-modal/font-demo.js +5 -4
  91. package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -1
  92. package/build/components/global-styles/font-library-modal/font-variant.js +7 -7
  93. package/build/components/global-styles/font-library-modal/font-variant.js.map +1 -1
  94. package/build/components/global-styles/font-library-modal/fonts-grid.js +8 -7
  95. package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -1
  96. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +9 -9
  97. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  98. package/build/components/global-styles/font-library-modal/index.js +16 -8
  99. package/build/components/global-styles/font-library-modal/index.js.map +1 -1
  100. package/build/components/global-styles/font-library-modal/installed-fonts.js +39 -18
  101. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  102. package/build/components/global-styles/font-library-modal/library-font-card.js +3 -2
  103. package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
  104. package/build/components/global-styles/font-library-modal/library-font-details.js +6 -6
  105. package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
  106. package/build/components/global-styles/font-library-modal/library-font-variant.js +5 -4
  107. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  108. package/build/components/global-styles/font-library-modal/local-fonts.js +39 -11
  109. package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -1
  110. package/build/components/global-styles/font-library-modal/resolvers.js +1 -1
  111. package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  112. package/build/components/global-styles/font-library-modal/tab-layout.js +9 -9
  113. package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -1
  114. package/build/components/global-styles/font-library-modal/upload-fonts.js +26 -0
  115. package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -0
  116. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js +4 -1
  117. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -1
  118. package/build/components/global-styles/font-library-modal/utils/get-notice-from-response.js +71 -0
  119. package/build/components/global-styles/font-library-modal/utils/get-notice-from-response.js.map +1 -0
  120. package/build/components/global-styles/font-library-modal/utils/index.js +4 -1
  121. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  122. package/build/components/global-styles/global-styles-provider.js +3 -2
  123. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  124. package/build/components/global-styles/gradients-palette-panel.js +8 -8
  125. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  126. package/build/components/global-styles/header.js +7 -7
  127. package/build/components/global-styles/header.js.map +1 -1
  128. package/build/components/global-styles/icon-with-current-color.js +2 -2
  129. package/build/components/global-styles/icon-with-current-color.js.map +1 -1
  130. package/build/components/global-styles/navigation-button.js +7 -7
  131. package/build/components/global-styles/navigation-button.js.map +1 -1
  132. package/build/components/global-styles/palette.js +11 -10
  133. package/build/components/global-styles/palette.js.map +1 -1
  134. package/build/components/global-styles/preview.js +17 -16
  135. package/build/components/global-styles/preview.js.map +1 -1
  136. package/build/components/global-styles/root-menu.js +4 -4
  137. package/build/components/global-styles/root-menu.js.map +1 -1
  138. package/build/components/global-styles/screen-block-list.js +10 -9
  139. package/build/components/global-styles/screen-block-list.js.map +1 -1
  140. package/build/components/global-styles/screen-block.js +17 -16
  141. package/build/components/global-styles/screen-block.js.map +1 -1
  142. package/build/components/global-styles/screen-color-palette.js +5 -5
  143. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  144. package/build/components/global-styles/screen-colors.js +5 -5
  145. package/build/components/global-styles/screen-colors.js.map +1 -1
  146. package/build/components/global-styles/screen-css.js +5 -5
  147. package/build/components/global-styles/screen-css.js.map +1 -1
  148. package/build/components/global-styles/screen-layout.js +3 -3
  149. package/build/components/global-styles/screen-layout.js.map +1 -1
  150. package/build/components/global-styles/screen-revisions/index.js +10 -9
  151. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  152. package/build/components/global-styles/screen-revisions/revisions-buttons.js +10 -10
  153. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  154. package/build/components/global-styles/screen-root.js +14 -14
  155. package/build/components/global-styles/screen-root.js.map +1 -1
  156. package/build/components/global-styles/screen-style-variations.js +5 -4
  157. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  158. package/build/components/global-styles/screen-typography-element.js +15 -14
  159. package/build/components/global-styles/screen-typography-element.js.map +1 -1
  160. package/build/components/global-styles/screen-typography.js +5 -5
  161. package/build/components/global-styles/screen-typography.js.map +1 -1
  162. package/build/components/global-styles/style-variations-container.js +8 -7
  163. package/build/components/global-styles/style-variations-container.js.map +1 -1
  164. package/build/components/global-styles/subtitle.js +2 -2
  165. package/build/components/global-styles/subtitle.js.map +1 -1
  166. package/build/components/global-styles/typography-panel.js +2 -2
  167. package/build/components/global-styles/typography-panel.js.map +1 -1
  168. package/build/components/global-styles/typography-preview.js +2 -2
  169. package/build/components/global-styles/typography-preview.js.map +1 -1
  170. package/build/components/global-styles/typogrphy-elements.js +13 -13
  171. package/build/components/global-styles/typogrphy-elements.js.map +1 -1
  172. package/build/components/global-styles/ui.js +41 -40
  173. package/build/components/global-styles/ui.js.map +1 -1
  174. package/build/components/global-styles/variations-panel.js +3 -3
  175. package/build/components/global-styles/variations-panel.js.map +1 -1
  176. package/build/components/header-edit-mode/document-actions/index.js +16 -15
  177. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  178. package/build/components/header-edit-mode/index.js +20 -19
  179. package/build/components/header-edit-mode/index.js.map +1 -1
  180. package/build/components/header-edit-mode/mode-switcher/index.js +3 -3
  181. package/build/components/header-edit-mode/mode-switcher/index.js.map +1 -1
  182. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js +2 -2
  183. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +1 -1
  184. package/build/components/header-edit-mode/more-menu/index.js +14 -14
  185. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  186. package/build/components/header-edit-mode/more-menu/site-export.js +2 -2
  187. package/build/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  188. package/build/components/header-edit-mode/more-menu/welcome-guide-menu-item.js +2 -2
  189. package/build/components/header-edit-mode/more-menu/welcome-guide-menu-item.js.map +1 -1
  190. package/build/components/header-edit-mode/plugin-more-menu-item/index.js +1 -1
  191. package/build/components/header-edit-mode/plugin-more-menu-item/index.js.map +1 -1
  192. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +3 -3
  193. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -1
  194. package/build/components/header-edit-mode/tools-more-menu-group/index.js +2 -2
  195. package/build/components/header-edit-mode/tools-more-menu-group/index.js.map +1 -1
  196. package/build/components/header-edit-mode/undo-redo/redo.js +3 -2
  197. package/build/components/header-edit-mode/undo-redo/redo.js.map +1 -1
  198. package/build/components/header-edit-mode/undo-redo/undo.js +3 -2
  199. package/build/components/header-edit-mode/undo-redo/undo.js.map +1 -1
  200. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +2 -2
  201. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +1 -1
  202. package/build/components/keyboard-shortcut-help-modal/index.js +15 -15
  203. package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  204. package/build/components/keyboard-shortcut-help-modal/shortcut.js +8 -7
  205. package/build/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -1
  206. package/build/components/layout/index.js +15 -14
  207. package/build/components/layout/index.js.map +1 -1
  208. package/build/components/list/added-by.js +9 -8
  209. package/build/components/list/added-by.js.map +1 -1
  210. package/build/components/list/header.js +5 -5
  211. package/build/components/list/header.js.map +1 -1
  212. package/build/components/list/index.js +5 -5
  213. package/build/components/list/index.js.map +1 -1
  214. package/build/components/list/table.js +15 -15
  215. package/build/components/list/table.js.map +1 -1
  216. package/build/components/page/header.js +6 -6
  217. package/build/components/page/header.js.map +1 -1
  218. package/build/components/page/index.js +5 -5
  219. package/build/components/page/index.js.map +1 -1
  220. package/build/components/page-actions/index.js +3 -3
  221. package/build/components/page-actions/index.js.map +1 -1
  222. package/build/components/page-actions/trash-page-menu-item.js +2 -2
  223. package/build/components/page-actions/trash-page-menu-item.js.map +1 -1
  224. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +3 -2
  225. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  226. package/build/components/page-content-focus-manager/edit-template-notification.js +3 -2
  227. package/build/components/page-content-focus-manager/edit-template-notification.js.map +1 -1
  228. package/build/components/page-content-focus-manager/index.js +35 -4
  229. package/build/components/page-content-focus-manager/index.js.map +1 -1
  230. package/build/components/page-main/index.js +7 -4
  231. package/build/components/page-main/index.js.map +1 -1
  232. package/build/components/page-pages/index.js +174 -0
  233. package/build/components/page-pages/index.js.map +1 -0
  234. package/build/components/page-patterns/duplicate-menu-item.js +2 -2
  235. package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
  236. package/build/components/page-patterns/grid-item.js +21 -20
  237. package/build/components/page-patterns/grid-item.js.map +1 -1
  238. package/build/components/page-patterns/grid.js +3 -4
  239. package/build/components/page-patterns/grid.js.map +1 -1
  240. package/build/components/page-patterns/header.js +4 -4
  241. package/build/components/page-patterns/header.js.map +1 -1
  242. package/build/components/page-patterns/index.js +4 -4
  243. package/build/components/page-patterns/index.js.map +1 -1
  244. package/build/components/page-patterns/no-patterns.js +2 -2
  245. package/build/components/page-patterns/no-patterns.js.map +1 -1
  246. package/build/components/page-patterns/pagination.js +10 -10
  247. package/build/components/page-patterns/pagination.js.map +1 -1
  248. package/build/components/page-patterns/patterns-list.js +16 -15
  249. package/build/components/page-patterns/patterns-list.js.map +1 -1
  250. package/build/components/page-patterns/rename-menu-item.js +10 -9
  251. package/build/components/page-patterns/rename-menu-item.js.map +1 -1
  252. package/build/components/page-patterns/use-patterns.js +5 -1
  253. package/build/components/page-patterns/use-patterns.js.map +1 -1
  254. package/build/components/page-template-parts/add-new-template-part.js +4 -3
  255. package/build/components/page-template-parts/add-new-template-part.js.map +1 -1
  256. package/build/components/page-template-parts/index.js +21 -10
  257. package/build/components/page-template-parts/index.js.map +1 -1
  258. package/build/components/page-templates/index.js +10 -10
  259. package/build/components/page-templates/index.js.map +1 -1
  260. package/build/components/plugin-template-setting-panel/index.js +1 -1
  261. package/build/components/plugin-template-setting-panel/index.js.map +1 -1
  262. package/build/components/preferences-modal/enable-feature.js +2 -2
  263. package/build/components/preferences-modal/enable-feature.js.map +1 -1
  264. package/build/components/preferences-modal/index.js +12 -11
  265. package/build/components/preferences-modal/index.js.map +1 -1
  266. package/build/components/resizable-frame/index.js +7 -6
  267. package/build/components/resizable-frame/index.js.map +1 -1
  268. package/build/components/revisions/index.js +9 -8
  269. package/build/components/revisions/index.js.map +1 -1
  270. package/build/components/routes/link.js +2 -2
  271. package/build/components/routes/link.js.map +1 -1
  272. package/build/components/save-button/index.js +2 -2
  273. package/build/components/save-button/index.js.map +1 -1
  274. package/build/components/save-hub/index.js +4 -4
  275. package/build/components/save-hub/index.js.map +1 -1
  276. package/build/components/save-panel/index.js +11 -11
  277. package/build/components/save-panel/index.js.map +1 -1
  278. package/build/components/secondary-sidebar/inserter-sidebar.js +7 -6
  279. package/build/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  280. package/build/components/secondary-sidebar/list-view-sidebar.js +7 -6
  281. package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  282. package/build/components/sidebar/index.js +23 -14
  283. package/build/components/sidebar/index.js.map +1 -1
  284. package/build/components/sidebar-button/index.js +2 -2
  285. package/build/components/sidebar-button/index.js.map +1 -1
  286. package/build/components/sidebar-edit-mode/default-sidebar.js +3 -3
  287. package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  288. package/build/components/sidebar-edit-mode/global-styles-sidebar.js +8 -7
  289. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  290. package/build/components/sidebar-edit-mode/index.js +6 -5
  291. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  292. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +20 -10
  293. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  294. package/build/components/sidebar-edit-mode/page-panels/index.js +7 -7
  295. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  296. package/build/components/sidebar-edit-mode/page-panels/page-content.js +3 -2
  297. package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -1
  298. package/build/components/sidebar-edit-mode/page-panels/page-status.js +21 -20
  299. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  300. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +4 -4
  301. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  302. package/build/components/sidebar-edit-mode/page-panels/publish-date.js +7 -6
  303. package/build/components/sidebar-edit-mode/page-panels/publish-date.js.map +1 -1
  304. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +3 -3
  305. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  306. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +7 -6
  307. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
  308. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -2
  309. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  310. package/build/components/sidebar-edit-mode/settings-header/index.js +3 -3
  311. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  312. package/build/components/sidebar-edit-mode/sidebar-card/index.js +7 -7
  313. package/build/components/sidebar-edit-mode/sidebar-card/index.js.map +1 -1
  314. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js +2 -2
  315. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js.map +1 -1
  316. package/build/components/sidebar-edit-mode/template-panel/hooks.js +71 -0
  317. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -0
  318. package/build/components/sidebar-edit-mode/template-panel/index.js +5 -5
  319. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  320. package/build/components/sidebar-edit-mode/template-panel/last-revision.js +5 -5
  321. package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
  322. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +5 -4
  323. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -1
  324. package/build/components/sidebar-edit-mode/template-panel/replace-template-button.js +83 -0
  325. package/build/components/sidebar-edit-mode/template-panel/replace-template-button.js.map +1 -0
  326. package/build/components/sidebar-edit-mode/template-panel/template-actions.js +12 -5
  327. package/build/components/sidebar-edit-mode/template-panel/template-actions.js.map +1 -1
  328. package/build/components/sidebar-edit-mode/template-panel/template-areas.js +8 -8
  329. package/build/components/sidebar-edit-mode/template-panel/template-areas.js.map +1 -1
  330. package/build/components/sidebar-navigation-item/index.js +5 -5
  331. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  332. package/build/components/sidebar-navigation-screen/index.js +11 -11
  333. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  334. package/build/components/sidebar-navigation-screen-details-footer/index.js +8 -7
  335. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  336. package/build/components/sidebar-navigation-screen-details-panel/index.js +3 -3
  337. package/build/components/sidebar-navigation-screen-details-panel/index.js.map +1 -1
  338. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +2 -2
  339. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -1
  340. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
  341. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  342. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +2 -2
  343. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -1
  344. package/build/components/sidebar-navigation-screen-global-styles/index.js +12 -11
  345. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  346. package/build/components/sidebar-navigation-screen-main/index.js +9 -8
  347. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  348. package/build/components/sidebar-navigation-screen-main/template-part-hint.js +2 -2
  349. package/build/components/sidebar-navigation-screen-main/template-part-hint.js.map +1 -1
  350. package/build/components/sidebar-navigation-screen-navigation-item/index.js +4 -4
  351. package/build/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -1
  352. package/build/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +2 -2
  353. package/build/components/sidebar-navigation-screen-navigation-menu/delete-modal.js.map +1 -1
  354. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -2
  355. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -1
  356. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +7 -7
  357. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  358. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +8 -7
  359. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  360. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +4 -3
  361. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  362. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +9 -8
  363. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  364. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +5 -5
  365. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  366. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +8 -8
  367. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  368. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +7 -6
  369. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  370. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +5 -4
  371. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  372. package/build/components/sidebar-navigation-screen-page/index.js +11 -11
  373. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  374. package/build/components/sidebar-navigation-screen-page/page-details.js +6 -6
  375. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  376. package/build/components/sidebar-navigation-screen-page/status-label.js +5 -4
  377. package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  378. package/build/components/sidebar-navigation-screen-pages/index.js +26 -17
  379. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  380. package/build/components/sidebar-navigation-screen-pattern/index.js +4 -4
  381. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  382. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +5 -3
  383. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  384. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +3 -3
  385. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +1 -1
  386. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +6 -4
  387. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  388. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +4 -4
  389. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  390. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +10 -3
  391. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  392. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +7 -7
  393. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  394. package/build/components/sidebar-navigation-screen-patterns/category-item.js +3 -3
  395. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  396. package/build/components/sidebar-navigation-screen-patterns/index.js +27 -15
  397. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  398. package/build/components/sidebar-navigation-screen-template/home-template-details.js +26 -30
  399. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  400. package/build/components/sidebar-navigation-screen-template/index.js +12 -12
  401. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  402. package/build/components/sidebar-navigation-screen-templates/index.js +6 -6
  403. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  404. package/build/components/sidebar-navigation-screen-templates-browse/index.js +17 -5
  405. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  406. package/build/components/site-hub/index.js +12 -11
  407. package/build/components/site-hub/index.js.map +1 -1
  408. package/build/components/site-icon/index.js +5 -5
  409. package/build/components/site-icon/index.js.map +1 -1
  410. package/build/components/start-template-options/index.js +10 -9
  411. package/build/components/start-template-options/index.js.map +1 -1
  412. package/build/components/style-book/index.js +19 -18
  413. package/build/components/style-book/index.js.map +1 -1
  414. package/build/components/table/index.js +6 -6
  415. package/build/components/table/index.js.map +1 -1
  416. package/build/components/template-actions/index.js +8 -7
  417. package/build/components/template-actions/index.js.map +1 -1
  418. package/build/components/template-actions/rename-menu-item.js +10 -9
  419. package/build/components/template-actions/rename-menu-item.js.map +1 -1
  420. package/build/components/template-part-converter/convert-to-regular.js +2 -2
  421. package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
  422. package/build/components/template-part-converter/convert-to-template-part.js +4 -3
  423. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  424. package/build/components/template-part-converter/index.js +5 -5
  425. package/build/components/template-part-converter/index.js.map +1 -1
  426. package/build/components/welcome-guide/editor.js +8 -7
  427. package/build/components/welcome-guide/editor.js.map +1 -1
  428. package/build/components/welcome-guide/image.js +4 -4
  429. package/build/components/welcome-guide/image.js.map +1 -1
  430. package/build/components/welcome-guide/index.js +2 -2
  431. package/build/components/welcome-guide/index.js.map +1 -1
  432. package/build/components/welcome-guide/page.js +6 -6
  433. package/build/components/welcome-guide/page.js.map +1 -1
  434. package/build/components/welcome-guide/styles.js +15 -15
  435. package/build/components/welcome-guide/styles.js.map +1 -1
  436. package/build/components/welcome-guide/template.js +6 -6
  437. package/build/components/welcome-guide/template.js.map +1 -1
  438. package/build/hooks/commands/use-common-commands.js +2 -2
  439. package/build/hooks/commands/use-common-commands.js.map +1 -1
  440. package/build/hooks/navigation-menu-edit.js +5 -5
  441. package/build/hooks/navigation-menu-edit.js.map +1 -1
  442. package/build/hooks/push-changes-to-global-styles/index.js +6 -5
  443. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  444. package/build/hooks/template-part-edit.js +5 -5
  445. package/build/hooks/template-part-edit.js.map +1 -1
  446. package/build/index.js +3 -2
  447. package/build/index.js.map +1 -1
  448. package/build/utils/constants.js +1 -1
  449. package/build/utils/constants.js.map +1 -1
  450. package/build/utils/get-is-list-page.js +1 -1
  451. package/build/utils/get-is-list-page.js.map +1 -1
  452. package/build-module/components/add-new-page/index.js +1 -1
  453. package/build-module/components/add-new-pattern/index.js +8 -12
  454. package/build-module/components/add-new-pattern/index.js.map +1 -1
  455. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js +1 -1
  456. package/build-module/components/add-new-template/add-custom-template-modal-content.js +1 -1
  457. package/build-module/components/add-new-template/index.js +1 -1
  458. package/build-module/components/add-new-template/new-template.js +1 -1
  459. package/build-module/components/add-new-template/template-actions-loading-screen.js +1 -1
  460. package/build-module/components/app/index.js +1 -1
  461. package/build-module/components/block-editor/back-button.js +1 -1
  462. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +9 -5
  463. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -1
  464. package/build-module/components/block-editor/block-editor-provider/index.js +1 -1
  465. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +1 -1
  466. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +19 -11
  467. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -1
  468. package/build-module/components/block-editor/block-inspector-button.js +1 -1
  469. package/build-module/components/block-editor/editor-canvas.js +1 -1
  470. package/build-module/components/block-editor/index.js +1 -1
  471. package/build-module/components/block-editor/resizable-editor.js +1 -1
  472. package/build-module/components/block-editor/resize-handle.js +1 -1
  473. package/build-module/components/block-editor/site-editor-canvas.js +1 -1
  474. package/build-module/components/canvas-loader/index.js +1 -1
  475. package/build-module/components/code-editor/index.js +1 -1
  476. package/build-module/components/create-template-part-modal/index.js +1 -1
  477. package/build-module/components/dataviews/dataviews.js +53 -0
  478. package/build-module/components/dataviews/dataviews.js.map +1 -0
  479. package/build-module/components/dataviews/index.js +3 -0
  480. package/build-module/components/dataviews/index.js.map +1 -0
  481. package/build-module/components/dataviews/list-view.js +80 -0
  482. package/build-module/components/dataviews/list-view.js.map +1 -0
  483. package/build-module/components/dataviews/pagination.js +83 -0
  484. package/build-module/components/dataviews/pagination.js.map +1 -0
  485. package/build-module/components/dataviews/text-filter.js +36 -0
  486. package/build-module/components/dataviews/text-filter.js.map +1 -0
  487. package/build-module/components/dataviews/view-actions.js +179 -0
  488. package/build-module/components/dataviews/view-actions.js.map +1 -0
  489. package/build-module/components/editor/index.js +1 -1
  490. package/build-module/components/editor-canvas-container/index.js +1 -1
  491. package/build-module/components/error-boundary/index.js +1 -1
  492. package/build-module/components/error-boundary/warning.js +1 -1
  493. package/build-module/components/global-styles/block-preview-panel.js +1 -1
  494. package/build-module/components/global-styles/color-indicator-wrapper.js +1 -1
  495. package/build-module/components/global-styles/color-palette-panel.js +1 -1
  496. package/build-module/components/global-styles/dimensions-panel.js +1 -1
  497. package/build-module/components/global-styles/font-families.js +3 -4
  498. package/build-module/components/global-styles/font-families.js.map +1 -1
  499. package/build-module/components/global-styles/font-family-item.js +1 -1
  500. package/build-module/components/global-styles/font-library-modal/collection-font-details.js +4 -2
  501. package/build-module/components/global-styles/font-library-modal/collection-font-details.js.map +1 -1
  502. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +1 -1
  503. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js +1 -1
  504. package/build-module/components/global-styles/font-library-modal/context.js +27 -31
  505. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  506. package/build-module/components/global-styles/font-library-modal/font-card.js +1 -1
  507. package/build-module/components/global-styles/font-library-modal/font-collection.js +33 -13
  508. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  509. package/build-module/components/global-styles/font-library-modal/font-demo.js +1 -1
  510. package/build-module/components/global-styles/font-library-modal/font-variant.js +1 -1
  511. package/build-module/components/global-styles/font-library-modal/fonts-grid.js +1 -1
  512. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +1 -1
  513. package/build-module/components/global-styles/font-library-modal/index.js +11 -4
  514. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
  515. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +29 -9
  516. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  517. package/build-module/components/global-styles/font-library-modal/library-font-card.js +1 -1
  518. package/build-module/components/global-styles/font-library-modal/library-font-details.js +1 -1
  519. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +1 -1
  520. package/build-module/components/global-styles/font-library-modal/local-fonts.js +39 -12
  521. package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -1
  522. package/build-module/components/global-styles/font-library-modal/resolvers.js +1 -1
  523. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  524. package/build-module/components/global-styles/font-library-modal/tab-layout.js +1 -1
  525. package/build-module/components/global-styles/font-library-modal/upload-fonts.js +17 -0
  526. package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -0
  527. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js +4 -1
  528. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -1
  529. package/build-module/components/global-styles/font-library-modal/utils/get-notice-from-response.js +63 -0
  530. package/build-module/components/global-styles/font-library-modal/utils/get-notice-from-response.js.map +1 -0
  531. package/build-module/components/global-styles/font-library-modal/utils/index.js +4 -1
  532. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  533. package/build-module/components/global-styles/global-styles-provider.js +1 -1
  534. package/build-module/components/global-styles/gradients-palette-panel.js +1 -1
  535. package/build-module/components/global-styles/header.js +1 -1
  536. package/build-module/components/global-styles/icon-with-current-color.js +1 -1
  537. package/build-module/components/global-styles/navigation-button.js +1 -1
  538. package/build-module/components/global-styles/palette.js +1 -1
  539. package/build-module/components/global-styles/preview.js +1 -1
  540. package/build-module/components/global-styles/root-menu.js +1 -1
  541. package/build-module/components/global-styles/screen-block-list.js +1 -1
  542. package/build-module/components/global-styles/screen-block.js +1 -1
  543. package/build-module/components/global-styles/screen-color-palette.js +1 -1
  544. package/build-module/components/global-styles/screen-colors.js +1 -1
  545. package/build-module/components/global-styles/screen-css.js +1 -1
  546. package/build-module/components/global-styles/screen-layout.js +1 -1
  547. package/build-module/components/global-styles/screen-revisions/index.js +1 -1
  548. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
  549. package/build-module/components/global-styles/screen-root.js +1 -1
  550. package/build-module/components/global-styles/screen-style-variations.js +1 -1
  551. package/build-module/components/global-styles/screen-typography-element.js +1 -1
  552. package/build-module/components/global-styles/screen-typography.js +2 -2
  553. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  554. package/build-module/components/global-styles/style-variations-container.js +1 -1
  555. package/build-module/components/global-styles/subtitle.js +1 -1
  556. package/build-module/components/global-styles/typography-panel.js +1 -1
  557. package/build-module/components/global-styles/typography-preview.js +1 -1
  558. package/build-module/components/global-styles/typogrphy-elements.js +1 -1
  559. package/build-module/components/global-styles/ui.js +1 -1
  560. package/build-module/components/global-styles/variations-panel.js +1 -1
  561. package/build-module/components/header-edit-mode/document-actions/index.js +1 -1
  562. package/build-module/components/header-edit-mode/index.js +1 -1
  563. package/build-module/components/header-edit-mode/mode-switcher/index.js +1 -1
  564. package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js +1 -1
  565. package/build-module/components/header-edit-mode/more-menu/index.js +1 -1
  566. package/build-module/components/header-edit-mode/more-menu/site-export.js +1 -1
  567. package/build-module/components/header-edit-mode/more-menu/welcome-guide-menu-item.js +1 -1
  568. package/build-module/components/header-edit-mode/plugin-more-menu-item/index.js +1 -1
  569. package/build-module/components/header-edit-mode/plugin-more-menu-item/index.js.map +1 -1
  570. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +2 -2
  571. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -1
  572. package/build-module/components/header-edit-mode/tools-more-menu-group/index.js +1 -1
  573. package/build-module/components/header-edit-mode/undo-redo/redo.js +1 -1
  574. package/build-module/components/header-edit-mode/undo-redo/undo.js +1 -1
  575. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +1 -1
  576. package/build-module/components/keyboard-shortcut-help-modal/index.js +1 -1
  577. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js +1 -1
  578. package/build-module/components/layout/index.js +1 -1
  579. package/build-module/components/list/added-by.js +1 -1
  580. package/build-module/components/list/header.js +1 -1
  581. package/build-module/components/list/index.js +1 -1
  582. package/build-module/components/list/table.js +1 -1
  583. package/build-module/components/page/header.js +1 -1
  584. package/build-module/components/page/index.js +1 -1
  585. package/build-module/components/page-actions/index.js +1 -1
  586. package/build-module/components/page-actions/trash-page-menu-item.js +1 -1
  587. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +1 -1
  588. package/build-module/components/page-content-focus-manager/edit-template-notification.js +1 -1
  589. package/build-module/components/page-content-focus-manager/index.js +34 -4
  590. package/build-module/components/page-content-focus-manager/index.js.map +1 -1
  591. package/build-module/components/page-main/index.js +4 -1
  592. package/build-module/components/page-main/index.js.map +1 -1
  593. package/build-module/components/page-pages/index.js +166 -0
  594. package/build-module/components/page-pages/index.js.map +1 -0
  595. package/build-module/components/page-patterns/duplicate-menu-item.js +1 -1
  596. package/build-module/components/page-patterns/grid-item.js +1 -1
  597. package/build-module/components/page-patterns/grid.js +1 -2
  598. package/build-module/components/page-patterns/grid.js.map +1 -1
  599. package/build-module/components/page-patterns/header.js +1 -1
  600. package/build-module/components/page-patterns/index.js +1 -1
  601. package/build-module/components/page-patterns/no-patterns.js +1 -1
  602. package/build-module/components/page-patterns/pagination.js +1 -1
  603. package/build-module/components/page-patterns/patterns-list.js +2 -2
  604. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  605. package/build-module/components/page-patterns/rename-menu-item.js +1 -1
  606. package/build-module/components/page-patterns/use-patterns.js +5 -1
  607. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  608. package/build-module/components/page-template-parts/add-new-template-part.js +1 -1
  609. package/build-module/components/page-template-parts/index.js +13 -2
  610. package/build-module/components/page-template-parts/index.js.map +1 -1
  611. package/build-module/components/page-templates/index.js +1 -1
  612. package/build-module/components/plugin-template-setting-panel/index.js +1 -1
  613. package/build-module/components/plugin-template-setting-panel/index.js.map +1 -1
  614. package/build-module/components/preferences-modal/enable-feature.js +1 -1
  615. package/build-module/components/preferences-modal/index.js +1 -1
  616. package/build-module/components/resizable-frame/index.js +1 -1
  617. package/build-module/components/revisions/index.js +1 -1
  618. package/build-module/components/routes/link.js +1 -1
  619. package/build-module/components/save-button/index.js +1 -1
  620. package/build-module/components/save-hub/index.js +1 -1
  621. package/build-module/components/save-panel/index.js +1 -1
  622. package/build-module/components/secondary-sidebar/inserter-sidebar.js +1 -1
  623. package/build-module/components/secondary-sidebar/list-view-sidebar.js +1 -1
  624. package/build-module/components/sidebar/index.js +10 -2
  625. package/build-module/components/sidebar/index.js.map +1 -1
  626. package/build-module/components/sidebar-button/index.js +1 -1
  627. package/build-module/components/sidebar-edit-mode/default-sidebar.js +1 -1
  628. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js +1 -1
  629. package/build-module/components/sidebar-edit-mode/index.js +1 -1
  630. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +15 -5
  631. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  632. package/build-module/components/sidebar-edit-mode/page-panels/index.js +1 -1
  633. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +1 -1
  634. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +1 -1
  635. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +1 -1
  636. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js +1 -1
  637. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +2 -2
  638. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  639. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +1 -1
  640. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +1 -1
  641. package/build-module/components/sidebar-edit-mode/settings-header/index.js +1 -1
  642. package/build-module/components/sidebar-edit-mode/sidebar-card/index.js +1 -1
  643. package/build-module/components/sidebar-edit-mode/sidebar-fixed-bottom.js +1 -1
  644. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +64 -0
  645. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -0
  646. package/build-module/components/sidebar-edit-mode/template-panel/index.js +1 -1
  647. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +1 -1
  648. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +4 -4
  649. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -1
  650. package/build-module/components/sidebar-edit-mode/template-panel/replace-template-button.js +76 -0
  651. package/build-module/components/sidebar-edit-mode/template-panel/replace-template-button.js.map +1 -0
  652. package/build-module/components/sidebar-edit-mode/template-panel/template-actions.js +11 -4
  653. package/build-module/components/sidebar-edit-mode/template-panel/template-actions.js.map +1 -1
  654. package/build-module/components/sidebar-edit-mode/template-panel/template-areas.js +2 -2
  655. package/build-module/components/sidebar-edit-mode/template-panel/template-areas.js.map +1 -1
  656. package/build-module/components/sidebar-navigation-item/index.js +1 -1
  657. package/build-module/components/sidebar-navigation-screen/index.js +1 -1
  658. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +1 -1
  659. package/build-module/components/sidebar-navigation-screen-details-panel/index.js +1 -1
  660. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +1 -1
  661. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +1 -1
  662. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +1 -1
  663. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  664. package/build-module/components/sidebar-navigation-screen-main/index.js +1 -1
  665. package/build-module/components/sidebar-navigation-screen-main/template-part-hint.js +1 -1
  666. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js +1 -1
  667. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +1 -1
  668. package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js +1 -1
  669. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +1 -1
  670. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -1
  671. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  672. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +1 -1
  673. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +1 -1
  674. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +1 -1
  675. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +1 -1
  676. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +1 -1
  677. package/build-module/components/sidebar-navigation-screen-page/index.js +1 -1
  678. package/build-module/components/sidebar-navigation-screen-page/page-details.js +1 -1
  679. package/build-module/components/sidebar-navigation-screen-page/status-label.js +1 -1
  680. package/build-module/components/sidebar-navigation-screen-pages/index.js +13 -5
  681. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  682. package/build-module/components/sidebar-navigation-screen-pattern/index.js +1 -1
  683. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +4 -2
  684. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  685. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +1 -1
  686. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +4 -2
  687. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  688. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +1 -1
  689. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +8 -2
  690. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  691. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
  692. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +1 -1
  693. package/build-module/components/sidebar-navigation-screen-patterns/index.js +15 -3
  694. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  695. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +15 -20
  696. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  697. package/build-module/components/sidebar-navigation-screen-template/index.js +1 -1
  698. package/build-module/components/sidebar-navigation-screen-templates/index.js +1 -1
  699. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +17 -5
  700. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  701. package/build-module/components/site-hub/index.js +1 -1
  702. package/build-module/components/site-icon/index.js +1 -1
  703. package/build-module/components/start-template-options/index.js +4 -4
  704. package/build-module/components/start-template-options/index.js.map +1 -1
  705. package/build-module/components/style-book/index.js +1 -1
  706. package/build-module/components/table/index.js +1 -1
  707. package/build-module/components/template-actions/index.js +1 -1
  708. package/build-module/components/template-actions/rename-menu-item.js +1 -1
  709. package/build-module/components/template-part-converter/convert-to-regular.js +1 -1
  710. package/build-module/components/template-part-converter/convert-to-template-part.js +1 -1
  711. package/build-module/components/template-part-converter/index.js +1 -1
  712. package/build-module/components/welcome-guide/editor.js +1 -1
  713. package/build-module/components/welcome-guide/image.js +1 -1
  714. package/build-module/components/welcome-guide/index.js +1 -1
  715. package/build-module/components/welcome-guide/page.js +1 -1
  716. package/build-module/components/welcome-guide/styles.js +1 -1
  717. package/build-module/components/welcome-guide/template.js +1 -1
  718. package/build-module/hooks/commands/use-common-commands.js +4 -4
  719. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  720. package/build-module/hooks/navigation-menu-edit.js +1 -1
  721. package/build-module/hooks/push-changes-to-global-styles/index.js +1 -1
  722. package/build-module/hooks/template-part-edit.js +1 -1
  723. package/build-module/index.js +1 -1
  724. package/build-module/utils/constants.js +1 -1
  725. package/build-module/utils/constants.js.map +1 -1
  726. package/build-module/utils/get-is-list-page.js +1 -1
  727. package/build-module/utils/get-is-list-page.js.map +1 -1
  728. package/build-style/style-rtl.css +93 -18
  729. package/build-style/style.css +93 -18
  730. package/package.json +41 -40
  731. package/src/components/add-new-pattern/index.js +7 -10
  732. package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +10 -5
  733. package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +33 -4
  734. package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +27 -14
  735. package/src/components/dataviews/dataviews.js +60 -0
  736. package/src/components/dataviews/index.js +2 -0
  737. package/src/components/dataviews/list-view.js +106 -0
  738. package/src/components/dataviews/pagination.js +118 -0
  739. package/src/components/dataviews/style.scss +36 -0
  740. package/src/components/dataviews/text-filter.js +37 -0
  741. package/src/components/dataviews/view-actions.js +246 -0
  742. package/src/components/global-styles/font-families.js +1 -5
  743. package/src/components/global-styles/font-library-modal/collection-font-details.js +1 -1
  744. package/src/components/global-styles/font-library-modal/context.js +36 -38
  745. package/src/components/global-styles/font-library-modal/font-collection.js +41 -12
  746. package/src/components/global-styles/font-library-modal/index.js +16 -6
  747. package/src/components/global-styles/font-library-modal/installed-fonts.js +36 -6
  748. package/src/components/global-styles/font-library-modal/local-fonts.js +65 -23
  749. package/src/components/global-styles/font-library-modal/resolvers.js +1 -1
  750. package/src/components/global-styles/font-library-modal/style.scss +18 -1
  751. package/src/components/global-styles/font-library-modal/upload-fonts.js +20 -0
  752. package/src/components/global-styles/font-library-modal/utils/fonts-outline.js +4 -3
  753. package/src/components/global-styles/font-library-modal/utils/get-notice-from-response.js +62 -0
  754. package/src/components/global-styles/font-library-modal/utils/index.js +5 -1
  755. package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +1 -1
  756. package/src/components/global-styles/screen-typography.js +3 -4
  757. package/src/components/header-edit-mode/plugin-more-menu-item/index.js +1 -1
  758. package/src/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +1 -1
  759. package/src/components/page-content-focus-manager/index.js +29 -4
  760. package/src/components/page-main/index.js +3 -0
  761. package/src/components/page-pages/index.js +190 -0
  762. package/src/components/page-patterns/grid.js +1 -1
  763. package/src/components/page-patterns/patterns-list.js +1 -1
  764. package/src/components/page-patterns/use-patterns.js +7 -3
  765. package/src/components/page-template-parts/index.js +14 -1
  766. package/src/components/plugin-template-setting-panel/index.js +1 -1
  767. package/src/components/sidebar/index.js +11 -0
  768. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +31 -16
  769. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +1 -1
  770. package/src/components/sidebar-edit-mode/template-panel/hooks.js +97 -0
  771. package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +18 -16
  772. package/src/components/sidebar-edit-mode/template-panel/replace-template-button.js +89 -0
  773. package/src/components/sidebar-edit-mode/template-panel/style.scss +18 -0
  774. package/src/components/sidebar-edit-mode/template-panel/template-actions.js +27 -12
  775. package/src/components/sidebar-edit-mode/template-panel/template-areas.js +1 -1
  776. package/src/components/sidebar-navigation-screen/style.scss +0 -1
  777. package/src/components/sidebar-navigation-screen-pages/index.js +11 -4
  778. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +3 -1
  779. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +3 -1
  780. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +11 -5
  781. package/src/components/sidebar-navigation-screen-patterns/index.js +25 -4
  782. package/src/components/sidebar-navigation-screen-template/home-template-details.js +27 -35
  783. package/src/components/sidebar-navigation-screen-templates-browse/index.js +12 -4
  784. package/src/components/start-template-options/index.js +3 -3
  785. package/src/hooks/commands/use-common-commands.js +12 -4
  786. package/src/style.scss +1 -0
  787. package/src/utils/constants.js +1 -1
  788. package/src/utils/get-is-list-page.js +3 -2
@@ -0,0 +1,246 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import {
5
+ Button,
6
+ Icon,
7
+ SelectControl,
8
+ privateApis as componentsPrivateApis,
9
+ __experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,
10
+ } from '@wordpress/components';
11
+ import {
12
+ chevronRightSmall,
13
+ check,
14
+ blockTable,
15
+ chevronDown,
16
+ arrowUp,
17
+ arrowDown,
18
+ } from '@wordpress/icons';
19
+ import { __ } from '@wordpress/i18n';
20
+
21
+ /**
22
+ * Internal dependencies
23
+ */
24
+ import { unlock } from '../../lock-unlock';
25
+
26
+ const {
27
+ DropdownMenuV2,
28
+ DropdownMenuGroupV2,
29
+ DropdownMenuItemV2,
30
+ DropdownSubMenuV2,
31
+ DropdownSubMenuTriggerV2,
32
+ } = unlock( componentsPrivateApis );
33
+
34
+ export const PAGE_SIZE_VALUES = [ 5, 20, 50 ];
35
+
36
+ export function PageSizeControl( { dataView } ) {
37
+ const label = __( 'Rows per page:' );
38
+ return (
39
+ <SelectControl
40
+ __nextHasNoMarginBottom
41
+ label={ label }
42
+ hideLabelFromVision
43
+ // TODO: This should probably use a label based on the wanted design
44
+ // and we could remove InputControlPrefixWrapper usage.
45
+ prefix={
46
+ <InputControlPrefixWrapper
47
+ as="span"
48
+ className="dataviews__per-page-control-prefix"
49
+ >
50
+ { label }
51
+ </InputControlPrefixWrapper>
52
+ }
53
+ value={ dataView.getState().pagination.pageSize }
54
+ options={ PAGE_SIZE_VALUES.map( ( pageSize ) => ( {
55
+ value: pageSize,
56
+ label: pageSize,
57
+ } ) ) }
58
+ onChange={ ( value ) => dataView.setPageSize( +value ) }
59
+ />
60
+ );
61
+ }
62
+
63
+ function PageSizeMenu( { dataView } ) {
64
+ const currenPageSize = dataView.getState().pagination.pageSize;
65
+ return (
66
+ <DropdownSubMenuV2
67
+ trigger={
68
+ <DropdownSubMenuTriggerV2
69
+ suffix={
70
+ <>
71
+ { currenPageSize }
72
+ <Icon icon={ chevronRightSmall } />
73
+ </>
74
+ }
75
+ >
76
+ { /* TODO: probably label per view type. */ }
77
+ { __( 'Rows per page' ) }
78
+ </DropdownSubMenuTriggerV2>
79
+ }
80
+ >
81
+ { PAGE_SIZE_VALUES.map( ( size ) => {
82
+ return (
83
+ <DropdownMenuItemV2
84
+ key={ size }
85
+ prefix={
86
+ currenPageSize === size && <Icon icon={ check } />
87
+ }
88
+ onSelect={ ( event ) => {
89
+ // We need to handle this on DropDown component probably..
90
+ event.preventDefault();
91
+ dataView.setPageSize( size );
92
+ } }
93
+ // TODO: check about role and a11y.
94
+ role="menuitemcheckbox"
95
+ >
96
+ { size }
97
+ </DropdownMenuItemV2>
98
+ );
99
+ } ) }
100
+ </DropdownSubMenuV2>
101
+ );
102
+ }
103
+
104
+ function FieldsVisibilityMenu( { dataView } ) {
105
+ const hideableFields = dataView
106
+ .getAllColumns()
107
+ .filter( ( columnn ) => columnn.getCanHide() );
108
+ if ( ! hideableFields?.length ) {
109
+ return null;
110
+ }
111
+ return (
112
+ <DropdownSubMenuV2
113
+ trigger={
114
+ <DropdownSubMenuTriggerV2
115
+ suffix={ <Icon icon={ chevronRightSmall } /> }
116
+ >
117
+ { __( 'Fields' ) }
118
+ </DropdownSubMenuTriggerV2>
119
+ }
120
+ >
121
+ { hideableFields?.map( ( field ) => {
122
+ return (
123
+ <DropdownMenuItemV2
124
+ key={ field.id }
125
+ prefix={
126
+ field.getIsVisible() && <Icon icon={ check } />
127
+ }
128
+ onSelect={ ( event ) => {
129
+ event.preventDefault();
130
+ field.getToggleVisibilityHandler()( event );
131
+ } }
132
+ role="menuitemcheckbox"
133
+ >
134
+ { field.columnDef.header }
135
+ </DropdownMenuItemV2>
136
+ );
137
+ } ) }
138
+ </DropdownSubMenuV2>
139
+ );
140
+ }
141
+
142
+ // This object is used to construct the sorting options per sortable field.
143
+ const sortingItemsInfo = {
144
+ asc: { icon: arrowUp, label: __( 'Sort ascending' ) },
145
+ desc: { icon: arrowDown, label: __( 'Sort descending' ) },
146
+ };
147
+ function SortMenu( { dataView } ) {
148
+ const sortableFields = dataView
149
+ .getAllColumns()
150
+ .filter( ( columnn ) => columnn.getCanSort() );
151
+ if ( ! sortableFields?.length ) {
152
+ return null;
153
+ }
154
+ const currentSortedField = sortableFields.find( ( field ) =>
155
+ field.getIsSorted()
156
+ );
157
+ return (
158
+ <DropdownSubMenuV2
159
+ trigger={
160
+ <DropdownSubMenuTriggerV2
161
+ suffix={
162
+ <>
163
+ { currentSortedField?.columnDef.header }
164
+ <Icon icon={ chevronRightSmall } />
165
+ </>
166
+ }
167
+ >
168
+ { __( 'Sort by' ) }
169
+ </DropdownSubMenuTriggerV2>
170
+ }
171
+ >
172
+ { sortableFields?.map( ( field ) => {
173
+ const sortedDirection = field.getIsSorted();
174
+ return (
175
+ <DropdownSubMenuV2
176
+ key={ field.id }
177
+ trigger={
178
+ <DropdownSubMenuTriggerV2
179
+ suffix={ <Icon icon={ chevronRightSmall } /> }
180
+ >
181
+ { field.columnDef.header }
182
+ </DropdownSubMenuTriggerV2>
183
+ }
184
+ side="left"
185
+ >
186
+ { Object.entries( sortingItemsInfo ).map(
187
+ ( [ direction, info ] ) => {
188
+ return (
189
+ <DropdownMenuItemV2
190
+ key={ direction }
191
+ prefix={ <Icon icon={ info.icon } /> }
192
+ suffix={
193
+ sortedDirection === direction && (
194
+ <Icon icon={ check } />
195
+ )
196
+ }
197
+ onSelect={ ( event ) => {
198
+ event.preventDefault();
199
+ if (
200
+ sortedDirection === direction
201
+ ) {
202
+ dataView.resetSorting();
203
+ } else {
204
+ dataView.setSorting( [
205
+ {
206
+ id: field.id,
207
+ desc:
208
+ direction ===
209
+ 'desc',
210
+ },
211
+ ] );
212
+ }
213
+ } }
214
+ >
215
+ { info.label }
216
+ </DropdownMenuItemV2>
217
+ );
218
+ }
219
+ ) }
220
+ </DropdownSubMenuV2>
221
+ );
222
+ } ) }
223
+ </DropdownSubMenuV2>
224
+ );
225
+ }
226
+
227
+ export default function ViewActions( { dataView, className } ) {
228
+ return (
229
+ <DropdownMenuV2
230
+ label={ __( 'Actions' ) }
231
+ className={ className }
232
+ trigger={
233
+ <Button variant="tertiary" icon={ blockTable }>
234
+ { __( 'View' ) }
235
+ <Icon icon={ chevronDown } />
236
+ </Button>
237
+ }
238
+ >
239
+ <DropdownMenuGroupV2>
240
+ <SortMenu dataView={ dataView } />
241
+ <FieldsVisibilityMenu dataView={ dataView } />
242
+ <PageSizeMenu dataView={ dataView } />
243
+ </DropdownMenuGroupV2>
244
+ </DropdownMenuV2>
245
+ );
246
+ }
@@ -64,12 +64,8 @@ function FontFamilies() {
64
64
  );
65
65
  }
66
66
 
67
- const FontFamiliesComponent = ( { ...props } ) => (
67
+ export default ( { ...props } ) => (
68
68
  <FontLibraryProvider>
69
69
  <FontFamilies { ...props } />
70
70
  </FontLibraryProvider>
71
71
  );
72
-
73
- export default process.env.IS_GUTENBERG_PLUGIN
74
- ? FontFamiliesComponent
75
- : undefined;
@@ -42,7 +42,7 @@ function CollectionFontDetails( {
42
42
  handleToggleVariant={ handleToggleVariant }
43
43
  selected={ isFontFontFaceInOutline(
44
44
  font.slug,
45
- face,
45
+ font.fontFace ? face : null, // If the font has no fontFace, we want to check if the font is in the outline
46
46
  fontToInstallOutline
47
47
  ) }
48
48
  />
@@ -9,8 +9,6 @@ import {
9
9
  useEntityRecords,
10
10
  store as coreStore,
11
11
  } from '@wordpress/core-data';
12
- import { store as noticesStore } from '@wordpress/notices';
13
- import { __ } from '@wordpress/i18n';
14
12
 
15
13
  /**
16
14
  * Internal dependencies
@@ -51,8 +49,6 @@ function FontLibraryProvider( { children } ) {
51
49
  const fontFamiliesHasChanges =
52
50
  !! globalStyles?.edits?.settings?.typography?.fontFamilies;
53
51
 
54
- const { createErrorNotice } = useDispatch( noticesStore );
55
-
56
52
  const [ isInstalling, setIsInstalling ] = useState( false );
57
53
  const [ refreshKey, setRefreshKey ] = useState( 0 );
58
54
 
@@ -202,7 +198,8 @@ function FontLibraryProvider( { children } ) {
202
198
  // Prepare formData to install.
203
199
  const formData = makeFormDataFromFontFamilies( fonts );
204
200
  // Install the fonts (upload the font files to the server and create the post in the database).
205
- const fontsInstalled = await fetchInstallFonts( formData );
201
+ const response = await fetchInstallFonts( formData );
202
+ const fontsInstalled = response?.successes || [];
206
203
  // Get intersecting font faces between the fonts we tried to installed and the fonts that were installed
207
204
  // (to avoid activating a non installed font).
208
205
  const fontToBeActivated = getIntersectingFontFaces(
@@ -217,41 +214,40 @@ function FontLibraryProvider( { children } ) {
217
214
  ] );
218
215
  refreshLibrary();
219
216
  setIsInstalling( false );
220
- return true;
221
- } catch ( e ) {
222
- // eslint-disable-next-line no-console
223
- console.error( e );
224
- createErrorNotice( __( 'Error installing fonts.' ), {
225
- type: 'snackbar',
226
- } );
217
+
218
+ return response;
219
+ } catch ( error ) {
227
220
  setIsInstalling( false );
228
- return false;
221
+ return {
222
+ errors: [ error ],
223
+ };
229
224
  }
230
225
  }
231
226
 
232
227
  async function uninstallFont( font ) {
233
228
  try {
234
229
  // Uninstall the font (remove the font files from the server and the post from the database).
235
- await fetchUninstallFonts( [ font ] );
230
+ const response = await fetchUninstallFonts( [ font ] );
236
231
  // Deactivate the font family (remove the font family from the global styles).
237
- deactivateFontFamily( font );
238
- // Save the global styles to the database.
239
- await saveSpecifiedEntityEdits(
240
- 'root',
241
- 'globalStyles',
242
- globalStylesId,
243
- [ 'settings.typography.fontFamilies' ]
244
- );
232
+ if ( ! response.errors ) {
233
+ deactivateFontFamily( font );
234
+ // Save the global styles to the database.
235
+ await saveSpecifiedEntityEdits(
236
+ 'root',
237
+ 'globalStyles',
238
+ globalStylesId,
239
+ [ 'settings.typography.fontFamilies' ]
240
+ );
241
+ }
245
242
  // Refresh the library (the the library font families from database).
246
243
  refreshLibrary();
247
- return true;
248
- } catch ( e ) {
244
+ return response;
245
+ } catch ( error ) {
249
246
  // eslint-disable-next-line no-console
250
- console.error( e );
251
- createErrorNotice( __( 'Error uninstalling fonts.' ), {
252
- type: 'snackbar',
253
- } );
254
- return false;
247
+ console.error( error );
248
+ return {
249
+ errors: [ error ],
250
+ };
255
251
  }
256
252
  }
257
253
 
@@ -281,14 +277,16 @@ function FontLibraryProvider( { children } ) {
281
277
  } );
282
278
  // Add custom fonts to the browser.
283
279
  fontsToAdd.forEach( ( font ) => {
284
- font.fontFace.forEach( ( face ) => {
285
- // Load font faces just in the iframe because they already are in the document.
286
- loadFontFaceInBrowser(
287
- face,
288
- getDisplaySrcFromFontFace( face.src ),
289
- 'iframe'
290
- );
291
- } );
280
+ if ( font.fontFace ) {
281
+ font.fontFace.forEach( ( face ) => {
282
+ // Load font faces just in the iframe because they already are in the document.
283
+ loadFontFaceInBrowser(
284
+ face,
285
+ getDisplaySrcFromFontFace( face.src ),
286
+ 'iframe'
287
+ );
288
+ } );
289
+ }
292
290
  } );
293
291
  };
294
292
 
@@ -311,7 +309,7 @@ function FontLibraryProvider( { children } ) {
311
309
  // Get the src of the font.
312
310
  const src = getDisplaySrcFromFontFace( fontFace.src, themeUrl );
313
311
  // If the font is already loaded, don't load it again.
314
- if ( loadedFontUrls.has( src ) ) return;
312
+ if ( ! src || loadedFontUrls.has( src ) ) return;
315
313
  // Load the font in the browser.
316
314
  loadFontFaceInBrowser( fontFace, src, 'document' );
317
315
  // Add the font to the loaded fonts list.
@@ -12,6 +12,7 @@ import {
12
12
  FlexItem,
13
13
  Flex,
14
14
  Button,
15
+ Notice,
15
16
  } from '@wordpress/components';
16
17
  import { debounce } from '@wordpress/compose';
17
18
  import { __ } from '@wordpress/i18n';
@@ -29,6 +30,7 @@ import CollectionFontDetails from './collection-font-details';
29
30
  import { toggleFont } from './utils/toggleFont';
30
31
  import { getFontsOutline } from './utils/fonts-outline';
31
32
  import GoogleFontsConfirmDialog from './google-fonts-confirm-dialog';
33
+ import { getNoticeFromInstallResponse } from './utils/get-notice-from-response';
32
34
 
33
35
  const DEFAULT_CATEGORY = {
34
36
  id: 'all',
@@ -45,13 +47,15 @@ function FontCollection( { id } ) {
45
47
  );
46
48
  };
47
49
 
50
+ const [ notice, setNotice ] = useState( null );
48
51
  const [ selectedFont, setSelectedFont ] = useState( null );
49
52
  const [ fontsToInstall, setFontsToInstall ] = useState( [] );
50
53
  const [ filters, setFilters ] = useState( {} );
51
54
  const [ renderConfirmDialog, setRenderConfirmDialog ] = useState(
52
55
  requiresPermission && ! getGoogleFontsPermissionFromStorage()
53
56
  );
54
- const { collections, getFontCollection } = useContext( FontLibraryContext );
57
+ const { collections, getFontCollection, installFonts } =
58
+ useContext( FontLibraryContext );
55
59
  const selectedCollection = collections.find(
56
60
  ( collection ) => collection.id === id
57
61
  );
@@ -76,6 +80,16 @@ function FontCollection( { id } ) {
76
80
  setSelectedFont( null );
77
81
  }, [ id ] );
78
82
 
83
+ // Reset notice after 5 seconds
84
+ useEffect( () => {
85
+ if ( notice ) {
86
+ const timeout = setTimeout( () => {
87
+ setNotice( null );
88
+ }, 5000 );
89
+ return () => clearTimeout( timeout );
90
+ }
91
+ }, [ notice ] );
92
+
79
93
  const collectionFonts = useMemo(
80
94
  () => selectedCollection?.data?.fontFamilies ?? [],
81
95
  [ selectedCollection ]
@@ -122,6 +136,13 @@ function FontCollection( { id } ) {
122
136
  setFontsToInstall( [] );
123
137
  };
124
138
 
139
+ const handleInstall = async () => {
140
+ const response = await installFonts( fontsToInstall );
141
+ const installNotice = getNoticeFromInstallResponse( response );
142
+ setNotice( installNotice );
143
+ resetFontsToInstall();
144
+ };
145
+
125
146
  return (
126
147
  <TabLayout
127
148
  title={
@@ -135,10 +156,7 @@ function FontCollection( { id } ) {
135
156
  handleBack={ !! selectedFont && handleUnselectFont }
136
157
  footer={
137
158
  fontsToInstall.length > 0 && (
138
- <Footer
139
- fontsToInstall={ fontsToInstall }
140
- resetFontsToInstall={ resetFontsToInstall }
141
- />
159
+ <Footer handleInstall={ handleInstall } />
142
160
  )
143
161
  }
144
162
  >
@@ -153,6 +171,22 @@ function FontCollection( { id } ) {
153
171
  <Spinner />
154
172
  ) }
155
173
 
174
+ { notice && (
175
+ <>
176
+ <FlexItem>
177
+ <Spacer margin={ 2 } />
178
+ <Notice
179
+ isDismissible={ false }
180
+ status={ notice.type }
181
+ className="font-library-modal__font-collection__notice"
182
+ >
183
+ { notice.message }
184
+ </Notice>
185
+ </FlexItem>
186
+ <Spacer margin={ 2 } />
187
+ </>
188
+ ) }
189
+
156
190
  { ! renderConfirmDialog && ! selectedFont && (
157
191
  <Flex>
158
192
  <FlexItem>
@@ -232,13 +266,8 @@ function FontCollection( { id } ) {
232
266
  );
233
267
  }
234
268
 
235
- function Footer( { fontsToInstall, resetFontsToInstall } ) {
236
- const { installFonts, isInstalling } = useContext( FontLibraryContext );
237
-
238
- const handleInstall = async () => {
239
- await installFonts( fontsToInstall );
240
- resetFontsToInstall();
241
- };
269
+ function Footer( { handleInstall } ) {
270
+ const { isInstalling } = useContext( FontLibraryContext );
242
271
 
243
272
  return (
244
273
  <Flex justify="flex-end">
@@ -10,13 +10,21 @@ import { useContext } from '@wordpress/element';
10
10
  */
11
11
  import InstalledFonts from './installed-fonts';
12
12
  import FontCollection from './font-collection';
13
+ import UploadFonts from './upload-fonts';
13
14
  import { FontLibraryContext } from './context';
14
15
 
15
- const INSTALLED_FONTS_TAB = {
16
- name: 'installed-fonts',
17
- title: __( 'Library' ),
18
- className: 'installed-fonts',
19
- };
16
+ const DEFAULT_TABS = [
17
+ {
18
+ name: 'installed-fonts',
19
+ title: __( 'Library' ),
20
+ className: 'installed-fonts',
21
+ },
22
+ {
23
+ name: 'upload-fonts',
24
+ title: __( 'Upload' ),
25
+ className: 'upload-fonts',
26
+ },
27
+ ];
20
28
 
21
29
  const tabsFromCollections = ( collections ) =>
22
30
  collections.map( ( { id, name } ) => ( {
@@ -35,7 +43,7 @@ function FontLibraryModal( {
35
43
  const { collections } = useContext( FontLibraryContext );
36
44
 
37
45
  const tabs = [
38
- INSTALLED_FONTS_TAB,
46
+ ...DEFAULT_TABS,
39
47
  ...tabsFromCollections( collections || [] ),
40
48
  ];
41
49
 
@@ -53,6 +61,8 @@ function FontLibraryModal( {
53
61
  >
54
62
  { ( tab ) => {
55
63
  switch ( tab.name ) {
64
+ case 'upload-fonts':
65
+ return <UploadFonts />;
56
66
  case 'installed-fonts':
57
67
  return <InstalledFonts />;
58
68
  default:
@@ -9,6 +9,8 @@ import {
9
9
  __experimentalSpacer as Spacer,
10
10
  Button,
11
11
  Spinner,
12
+ Notice,
13
+ FlexItem,
12
14
  } from '@wordpress/components';
13
15
 
14
16
  /**
@@ -19,8 +21,8 @@ import { FontLibraryContext } from './context';
19
21
  import FontsGrid from './fonts-grid';
20
22
  import LibraryFontDetails from './library-font-details';
21
23
  import LibraryFontCard from './library-font-card';
22
- import LocalFonts from './local-fonts';
23
24
  import ConfirmDeleteDialog from './confirm-delete-dialog';
25
+ import { getNoticeFromUninstallResponse } from './utils/get-notice-from-response';
24
26
  import { unlock } from '../../../lock-unlock';
25
27
  const { ProgressBar } = unlock( componentsPrivateApis );
26
28
 
@@ -44,10 +46,14 @@ function InstalledFonts() {
44
46
  handleSetLibraryFontSelected( font );
45
47
  };
46
48
 
49
+ const [ notice, setNotice ] = useState( null );
50
+
47
51
  const handleConfirmUninstall = async () => {
48
- const result = await uninstallFont( libraryFontSelected );
52
+ const response = await uninstallFont( libraryFontSelected );
53
+ const uninstallNotice = getNoticeFromUninstallResponse( response );
54
+ setNotice( uninstallNotice );
49
55
  // If the font was succesfully uninstalled it is unselected
50
- if ( result ) {
56
+ if ( ! response?.errors?.length ) {
51
57
  handleUnselectFont();
52
58
  }
53
59
  setIsConfirmDeleteOpen( false );
@@ -72,8 +78,19 @@ function InstalledFonts() {
72
78
 
73
79
  useEffect( () => {
74
80
  refreshLibrary();
81
+ // eslint-disable-next-line react-hooks/exhaustive-deps
75
82
  }, [] );
76
83
 
84
+ // Reset notice after 5 seconds
85
+ useEffect( () => {
86
+ if ( notice ) {
87
+ const timeout = setTimeout( () => {
88
+ setNotice( null );
89
+ }, 5000 );
90
+ return () => clearTimeout( timeout );
91
+ }
92
+ }, [ notice ] );
93
+
77
94
  return (
78
95
  <TabLayout
79
96
  title={ libraryFontSelected?.name || '' }
@@ -93,6 +110,22 @@ function InstalledFonts() {
93
110
  handleCancelUninstall={ handleCancelUninstall }
94
111
  />
95
112
 
113
+ { notice && (
114
+ <>
115
+ <FlexItem>
116
+ <Spacer margin={ 2 } />
117
+ <Notice
118
+ isDismissible={ false }
119
+ status={ notice.type }
120
+ className="font-library-modal__font-collection__notice"
121
+ >
122
+ { notice.message }
123
+ </Notice>
124
+ </FlexItem>
125
+ <Spacer margin={ 4 } />
126
+ </>
127
+ ) }
128
+
96
129
  { ! libraryFontSelected && (
97
130
  <>
98
131
  { isResolvingLibrary && <Spinner /> }
@@ -129,9 +162,6 @@ function InstalledFonts() {
129
162
  </FontsGrid>
130
163
  </>
131
164
  ) }
132
-
133
- <Spacer margin={ 8 } />
134
- <LocalFonts />
135
165
  </>
136
166
  ) }
137
167