@wordpress/edit-site 5.12.0 → 5.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (883) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/build/components/add-new-pattern/index.js +99 -0
  3. package/build/components/add-new-pattern/index.js.map +1 -0
  4. package/build/components/add-new-template/add-custom-template-modal-content.js +9 -23
  5. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  6. package/build/components/add-new-template/index.js +2 -10
  7. package/build/components/add-new-template/index.js.map +1 -1
  8. package/build/components/add-new-template/new-template.js +6 -8
  9. package/build/components/add-new-template/new-template.js.map +1 -1
  10. package/build/components/app/index.js +2 -2
  11. package/build/components/app/index.js.map +1 -1
  12. package/build/components/block-editor/back-button.js +5 -3
  13. package/build/components/block-editor/back-button.js.map +1 -1
  14. package/build/components/block-editor/constants.js +9 -0
  15. package/build/components/block-editor/constants.js.map +1 -0
  16. package/build/components/block-editor/editor-canvas.js +8 -8
  17. package/build/components/block-editor/editor-canvas.js.map +1 -1
  18. package/build/components/block-editor/get-block-editor-provider.js +42 -0
  19. package/build/components/block-editor/get-block-editor-provider.js.map +1 -0
  20. package/build/components/block-editor/index.js +6 -132
  21. package/build/components/block-editor/index.js.map +1 -1
  22. package/build/components/block-editor/providers/default-block-editor-provider.js +58 -0
  23. package/build/components/block-editor/providers/default-block-editor-provider.js.map +1 -0
  24. package/build/components/block-editor/providers/navigation-block-editor-provider.js +117 -0
  25. package/build/components/block-editor/providers/navigation-block-editor-provider.js.map +1 -0
  26. package/build/components/block-editor/site-editor-canvas.js +137 -0
  27. package/build/components/block-editor/site-editor-canvas.js.map +1 -0
  28. package/build/components/block-editor/use-site-editor-settings.js +82 -0
  29. package/build/components/block-editor/use-site-editor-settings.js.map +1 -0
  30. package/build/components/canvas-spinner/index.js +18 -1
  31. package/build/components/canvas-spinner/index.js.map +1 -1
  32. package/build/components/create-pattern-modal/index.js +125 -0
  33. package/build/components/create-pattern-modal/index.js.map +1 -0
  34. package/build/components/create-template-part-modal/index.js +49 -5
  35. package/build/components/create-template-part-modal/index.js.map +1 -1
  36. package/build/components/editor/index.js +23 -13
  37. package/build/components/editor/index.js.map +1 -1
  38. package/build/components/editor-canvas-container/index.js +22 -4
  39. package/build/components/editor-canvas-container/index.js.map +1 -1
  40. package/build/components/global-styles/color-indicator-wrapper.js +4 -5
  41. package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
  42. package/build/components/global-styles/color-palette-panel.js +2 -2
  43. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  44. package/build/components/global-styles/dimensions-panel.js +2 -2
  45. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  46. package/build/components/global-styles/global-styles-provider.js +12 -16
  47. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  48. package/build/components/global-styles/gradients-palette-panel.js +2 -2
  49. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  50. package/build/components/global-styles/hooks.js +3 -3
  51. package/build/components/global-styles/hooks.js.map +1 -1
  52. package/build/components/global-styles/icon-with-current-color.js +4 -5
  53. package/build/components/global-styles/icon-with-current-color.js.map +1 -1
  54. package/build/components/global-styles/navigation-button.js +10 -11
  55. package/build/components/global-styles/navigation-button.js.map +1 -1
  56. package/build/components/global-styles/palette.js +3 -3
  57. package/build/components/global-styles/palette.js.map +1 -1
  58. package/build/components/global-styles/preview.js +2 -2
  59. package/build/components/global-styles/preview.js.map +1 -1
  60. package/build/components/global-styles/root-menu.js +2 -2
  61. package/build/components/global-styles/root-menu.js.map +1 -1
  62. package/build/components/global-styles/screen-block-list.js +2 -2
  63. package/build/components/global-styles/screen-block-list.js.map +1 -1
  64. package/build/components/global-styles/screen-block.js +2 -2
  65. package/build/components/global-styles/screen-block.js.map +1 -1
  66. package/build/components/global-styles/screen-colors.js +2 -2
  67. package/build/components/global-styles/screen-colors.js.map +1 -1
  68. package/build/components/global-styles/screen-css.js +2 -2
  69. package/build/components/global-styles/screen-css.js.map +1 -1
  70. package/build/components/global-styles/screen-layout.js +2 -2
  71. package/build/components/global-styles/screen-layout.js.map +1 -1
  72. package/build/components/global-styles/screen-revisions/index.js +4 -4
  73. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  74. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +2 -2
  75. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  76. package/build/components/global-styles/screen-root.js +2 -2
  77. package/build/components/global-styles/screen-root.js.map +1 -1
  78. package/build/components/global-styles/screen-typography.js +2 -2
  79. package/build/components/global-styles/screen-typography.js.map +1 -1
  80. package/build/components/global-styles/style-variations-container.js +11 -3
  81. package/build/components/global-styles/style-variations-container.js.map +1 -1
  82. package/build/components/global-styles/typography-panel.js +2 -2
  83. package/build/components/global-styles/typography-panel.js.map +1 -1
  84. package/build/components/global-styles/typography-preview.js +2 -2
  85. package/build/components/global-styles/typography-preview.js.map +1 -1
  86. package/build/components/global-styles/ui.js +90 -36
  87. package/build/components/global-styles/ui.js.map +1 -1
  88. package/build/components/global-styles-renderer/index.js +2 -2
  89. package/build/components/global-styles-renderer/index.js.map +1 -1
  90. package/build/components/header-edit-mode/document-actions/index.js +55 -22
  91. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  92. package/build/components/header-edit-mode/index.js +6 -8
  93. package/build/components/header-edit-mode/index.js.map +1 -1
  94. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +4 -7
  95. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -1
  96. package/build/components/header-edit-mode/undo-redo/redo.js +2 -6
  97. package/build/components/header-edit-mode/undo-redo/redo.js.map +1 -1
  98. package/build/components/header-edit-mode/undo-redo/undo.js +2 -6
  99. package/build/components/header-edit-mode/undo-redo/undo.js.map +1 -1
  100. package/build/components/keyboard-shortcut-help-modal/index.js +2 -1
  101. package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  102. package/build/components/keyboard-shortcuts/edit-mode.js +7 -2
  103. package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  104. package/build/components/keyboard-shortcuts/index.js +7 -2
  105. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  106. package/build/components/keyboard-shortcuts/register.js +1 -1
  107. package/build/components/keyboard-shortcuts/register.js.map +1 -1
  108. package/build/components/layout/hooks.js +21 -0
  109. package/build/components/layout/hooks.js.map +1 -1
  110. package/build/components/layout/index.js +40 -22
  111. package/build/components/layout/index.js.map +1 -1
  112. package/build/components/list/index.js +2 -2
  113. package/build/components/list/index.js.map +1 -1
  114. package/build/components/page/header.js +41 -0
  115. package/build/components/page/header.js.map +1 -0
  116. package/build/components/page/index.js +49 -0
  117. package/build/components/page/index.js.map +1 -0
  118. package/build/components/page-content-focus-manager/back-to-page-notification.js +67 -0
  119. package/build/components/page-content-focus-manager/back-to-page-notification.js.map +1 -0
  120. package/build/components/page-content-focus-manager/constants.js +9 -0
  121. package/build/components/page-content-focus-manager/constants.js.map +1 -0
  122. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +60 -0
  123. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -0
  124. package/build/components/page-content-focus-manager/edit-template-notification.js +121 -0
  125. package/build/components/page-content-focus-manager/edit-template-notification.js.map +1 -0
  126. package/build/components/page-content-focus-manager/index.js +37 -0
  127. package/build/components/page-content-focus-manager/index.js.map +1 -0
  128. package/build/components/page-library/grid-item.js +165 -0
  129. package/build/components/page-library/grid-item.js.map +1 -0
  130. package/build/components/page-library/grid.js +49 -0
  131. package/build/components/page-library/grid.js.map +1 -0
  132. package/build/components/page-library/index.js +61 -0
  133. package/build/components/page-library/index.js.map +1 -0
  134. package/build/components/page-library/no-patterns.js +20 -0
  135. package/build/components/page-library/no-patterns.js.map +1 -0
  136. package/build/components/page-library/patterns-list.js +108 -0
  137. package/build/components/page-library/patterns-list.js.map +1 -0
  138. package/build/components/page-library/search-items.js +172 -0
  139. package/build/components/page-library/search-items.js.map +1 -0
  140. package/build/components/page-library/use-library-settings.js +53 -0
  141. package/build/components/page-library/use-library-settings.js.map +1 -0
  142. package/build/components/page-library/use-patterns.js +194 -0
  143. package/build/components/page-library/use-patterns.js.map +1 -0
  144. package/build/components/page-library/utils.js +30 -0
  145. package/build/components/page-library/utils.js.map +1 -0
  146. package/build/components/page-main/index.js +46 -0
  147. package/build/components/page-main/index.js.map +1 -0
  148. package/build/components/page-templates/index.js +101 -0
  149. package/build/components/page-templates/index.js.map +1 -0
  150. package/build/components/preferences-modal/enable-feature.js +4 -7
  151. package/build/components/preferences-modal/enable-feature.js.map +1 -1
  152. package/build/components/resizable-frame/index.js +6 -4
  153. package/build/components/resizable-frame/index.js.map +1 -1
  154. package/build/components/revisions/index.js +2 -2
  155. package/build/components/revisions/index.js.map +1 -1
  156. package/build/components/routes/link.js +7 -10
  157. package/build/components/routes/link.js.map +1 -1
  158. package/build/components/routes/use-title.js +2 -2
  159. package/build/components/routes/use-title.js.map +1 -1
  160. package/build/components/save-button/index.js +15 -11
  161. package/build/components/save-button/index.js.map +1 -1
  162. package/build/components/save-hub/index.js +2 -2
  163. package/build/components/save-hub/index.js.map +1 -1
  164. package/build/components/save-panel/index.js +5 -7
  165. package/build/components/save-panel/index.js.map +1 -1
  166. package/build/components/secondary-sidebar/inserter-sidebar.js +4 -8
  167. package/build/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  168. package/build/components/secondary-sidebar/list-view-sidebar.js +47 -10
  169. package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  170. package/build/components/sidebar/index.js +12 -8
  171. package/build/components/sidebar/index.js.map +1 -1
  172. package/build/components/sidebar-button/index.js +2 -4
  173. package/build/components/sidebar-button/index.js.map +1 -1
  174. package/build/components/sidebar-edit-mode/global-styles-sidebar.js +22 -8
  175. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  176. package/build/components/sidebar-edit-mode/index.js +5 -5
  177. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  178. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +84 -0
  179. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -0
  180. package/build/components/sidebar-edit-mode/page-panels/index.js +51 -38
  181. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  182. package/build/components/sidebar-edit-mode/page-panels/page-content.js +35 -0
  183. package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -0
  184. package/build/components/sidebar-edit-mode/page-panels/page-status.js +192 -0
  185. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -0
  186. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +45 -0
  187. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -0
  188. package/build/components/sidebar-edit-mode/page-panels/publish-date.js +98 -0
  189. package/build/components/sidebar-edit-mode/page-panels/publish-date.js.map +1 -0
  190. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +4 -7
  191. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  192. package/build/components/sidebar-edit-mode/settings-header/index.js +19 -6
  193. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  194. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js +2 -2
  195. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js.map +1 -1
  196. package/build/components/sidebar-edit-mode/template-panel/index.js +10 -6
  197. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  198. package/build/components/sidebar-navigation-item/index.js +11 -7
  199. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  200. package/build/components/sidebar-navigation-screen/index.js +18 -7
  201. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  202. package/build/components/sidebar-navigation-screen-details-footer/index.js +36 -0
  203. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -0
  204. package/build/components/sidebar-navigation-screen-details-panel/index.js +58 -0
  205. package/build/components/sidebar-navigation-screen-details-panel/index.js.map +1 -0
  206. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +22 -0
  207. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -0
  208. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +35 -0
  209. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -0
  210. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +22 -0
  211. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -0
  212. package/build/components/sidebar-navigation-screen-global-styles/index.js +13 -13
  213. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  214. package/build/components/sidebar-navigation-screen-library/category-item.js +48 -0
  215. package/build/components/sidebar-navigation-screen-library/category-item.js.map +1 -0
  216. package/build/components/sidebar-navigation-screen-library/index.js +112 -0
  217. package/build/components/sidebar-navigation-screen-library/index.js.map +1 -0
  218. package/build/components/sidebar-navigation-screen-library/use-default-pattern-categories.js +36 -0
  219. package/build/components/sidebar-navigation-screen-library/use-default-pattern-categories.js.map +1 -0
  220. package/build/components/sidebar-navigation-screen-library/use-pattern-categories.js +76 -0
  221. package/build/components/sidebar-navigation-screen-library/use-pattern-categories.js.map +1 -0
  222. package/build/components/sidebar-navigation-screen-library/use-template-part-areas.js +41 -0
  223. package/build/components/sidebar-navigation-screen-library/use-template-part-areas.js.map +1 -0
  224. package/build/components/sidebar-navigation-screen-library/use-theme-patterns.js +40 -0
  225. package/build/components/sidebar-navigation-screen-library/use-theme-patterns.js.map +1 -0
  226. package/build/components/sidebar-navigation-screen-main/index.js +12 -13
  227. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  228. package/build/components/sidebar-navigation-screen-navigation-item/index.js +2 -2
  229. package/build/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -1
  230. package/build/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +42 -0
  231. package/build/components/sidebar-navigation-screen-navigation-menu/delete-modal.js.map +1 -0
  232. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js +41 -0
  233. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -0
  234. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +47 -92
  235. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  236. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +84 -0
  237. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -0
  238. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +71 -0
  239. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -0
  240. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +54 -0
  241. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -0
  242. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +49 -0
  243. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -0
  244. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +163 -0
  245. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -0
  246. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js +3 -1
  247. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  248. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +46 -7
  249. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  250. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +57 -10
  251. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  252. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +21 -50
  253. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  254. package/build/components/sidebar-navigation-screen-page/index.js +14 -34
  255. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  256. package/build/components/sidebar-navigation-screen-page/page-details.js +29 -27
  257. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  258. package/build/components/sidebar-navigation-screen-page/status-label.js +8 -7
  259. package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  260. package/build/components/sidebar-navigation-screen-pages/index.js +9 -8
  261. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  262. package/build/components/sidebar-navigation-screen-pattern/index.js +66 -0
  263. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -0
  264. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +41 -0
  265. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -0
  266. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +33 -0
  267. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +1 -0
  268. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +40 -0
  269. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -0
  270. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +47 -0
  271. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -0
  272. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +82 -0
  273. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -0
  274. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +80 -0
  275. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -0
  276. package/build/components/sidebar-navigation-screen-template/home-template-details.js +212 -0
  277. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -0
  278. package/build/components/sidebar-navigation-screen-template/index.js +21 -7
  279. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  280. package/build/components/sidebar-navigation-screen-templates/index.js +11 -11
  281. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  282. package/build/components/site-hub/index.js +10 -12
  283. package/build/components/site-hub/index.js.map +1 -1
  284. package/build/components/style-book/index.js +10 -11
  285. package/build/components/style-book/index.js.map +1 -1
  286. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +14 -4
  287. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  288. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +4 -4
  289. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  290. package/build/components/sync-state-with-url/use-sync-path-with-url.js +12 -2
  291. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  292. package/build/components/table/index.js +29 -0
  293. package/build/components/table/index.js.map +1 -0
  294. package/build/components/template-part-converter/convert-to-template-part.js +3 -21
  295. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  296. package/build/components/welcome-guide/editor.js +1 -1
  297. package/build/components/welcome-guide/editor.js.map +1 -1
  298. package/build/components/welcome-guide/styles.js +4 -3
  299. package/build/components/welcome-guide/styles.js.map +1 -1
  300. package/build/hooks/commands/use-common-commands.js +190 -0
  301. package/build/hooks/commands/use-common-commands.js.map +1 -0
  302. package/build/hooks/commands/use-edit-mode-commands.js +67 -23
  303. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  304. package/build/hooks/index.js +2 -0
  305. package/build/hooks/index.js.map +1 -1
  306. package/build/hooks/navigation-menu-edit.js +95 -0
  307. package/build/hooks/navigation-menu-edit.js.map +1 -0
  308. package/build/hooks/push-changes-to-global-styles/index.js +5 -3
  309. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  310. package/build/hooks/template-part-edit.js +6 -9
  311. package/build/hooks/template-part-edit.js.map +1 -1
  312. package/build/{private-apis.js → lock-unlock.js} +1 -1
  313. package/build/lock-unlock.js.map +1 -0
  314. package/build/store/actions.js +45 -9
  315. package/build/store/actions.js.map +1 -1
  316. package/build/store/index.js +3 -3
  317. package/build/store/index.js.map +1 -1
  318. package/build/store/reducer.js +7 -6
  319. package/build/store/reducer.js.map +1 -1
  320. package/build/store/selectors.js +40 -16
  321. package/build/store/selectors.js.map +1 -1
  322. package/build/utils/get-is-list-page.js +12 -5
  323. package/build/utils/get-is-list-page.js.map +1 -1
  324. package/build/utils/is-previewing-theme.js +2 -2
  325. package/build/utils/is-previewing-theme.js.map +1 -1
  326. package/build/utils/use-activate-theme.js +3 -3
  327. package/build/utils/use-activate-theme.js.map +1 -1
  328. package/build/utils/use-debounced-input.js +26 -0
  329. package/build/utils/use-debounced-input.js.map +1 -0
  330. package/build-module/components/add-new-pattern/index.js +82 -0
  331. package/build-module/components/add-new-pattern/index.js.map +1 -0
  332. package/build-module/components/add-new-template/add-custom-template-modal-content.js +7 -20
  333. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  334. package/build-module/components/add-new-template/index.js +2 -8
  335. package/build-module/components/add-new-template/index.js.map +1 -1
  336. package/build-module/components/add-new-template/new-template.js +4 -5
  337. package/build-module/components/add-new-template/new-template.js.map +1 -1
  338. package/build-module/components/app/index.js +1 -1
  339. package/build-module/components/app/index.js.map +1 -1
  340. package/build-module/components/block-editor/back-button.js +4 -2
  341. package/build-module/components/block-editor/back-button.js.map +1 -1
  342. package/build-module/components/block-editor/constants.js +2 -0
  343. package/build-module/components/block-editor/constants.js.map +1 -0
  344. package/build-module/components/block-editor/editor-canvas.js +6 -5
  345. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  346. package/build-module/components/block-editor/get-block-editor-provider.js +31 -0
  347. package/build-module/components/block-editor/get-block-editor-provider.js.map +1 -0
  348. package/build-module/components/block-editor/index.js +9 -127
  349. package/build-module/components/block-editor/index.js.map +1 -1
  350. package/build-module/components/block-editor/providers/default-block-editor-provider.js +42 -0
  351. package/build-module/components/block-editor/providers/default-block-editor-provider.js.map +1 -0
  352. package/build-module/components/block-editor/providers/navigation-block-editor-provider.js +102 -0
  353. package/build-module/components/block-editor/providers/navigation-block-editor-provider.js.map +1 -0
  354. package/build-module/components/block-editor/site-editor-canvas.js +115 -0
  355. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -0
  356. package/build-module/components/block-editor/use-site-editor-settings.js +67 -0
  357. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -0
  358. package/build-module/components/canvas-spinner/index.js +15 -1
  359. package/build-module/components/canvas-spinner/index.js.map +1 -1
  360. package/build-module/components/create-pattern-modal/index.js +113 -0
  361. package/build-module/components/create-pattern-modal/index.js.map +1 -0
  362. package/build-module/components/create-template-part-modal/index.js +46 -6
  363. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  364. package/build-module/components/editor/index.js +23 -13
  365. package/build-module/components/editor/index.js.map +1 -1
  366. package/build-module/components/editor-canvas-container/index.js +19 -2
  367. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  368. package/build-module/components/global-styles/color-indicator-wrapper.js +4 -4
  369. package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
  370. package/build-module/components/global-styles/color-palette-panel.js +1 -1
  371. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  372. package/build-module/components/global-styles/dimensions-panel.js +1 -1
  373. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  374. package/build-module/components/global-styles/global-styles-provider.js +10 -15
  375. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  376. package/build-module/components/global-styles/gradients-palette-panel.js +1 -1
  377. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  378. package/build-module/components/global-styles/hooks.js +1 -1
  379. package/build-module/components/global-styles/hooks.js.map +1 -1
  380. package/build-module/components/global-styles/icon-with-current-color.js +4 -4
  381. package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
  382. package/build-module/components/global-styles/navigation-button.js +10 -8
  383. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  384. package/build-module/components/global-styles/palette.js +2 -2
  385. package/build-module/components/global-styles/palette.js.map +1 -1
  386. package/build-module/components/global-styles/preview.js +1 -1
  387. package/build-module/components/global-styles/preview.js.map +1 -1
  388. package/build-module/components/global-styles/root-menu.js +1 -1
  389. package/build-module/components/global-styles/root-menu.js.map +1 -1
  390. package/build-module/components/global-styles/screen-block-list.js +1 -1
  391. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  392. package/build-module/components/global-styles/screen-block.js +1 -1
  393. package/build-module/components/global-styles/screen-block.js.map +1 -1
  394. package/build-module/components/global-styles/screen-colors.js +1 -1
  395. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  396. package/build-module/components/global-styles/screen-css.js +1 -1
  397. package/build-module/components/global-styles/screen-css.js.map +1 -1
  398. package/build-module/components/global-styles/screen-layout.js +1 -1
  399. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  400. package/build-module/components/global-styles/screen-revisions/index.js +1 -1
  401. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  402. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +1 -1
  403. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  404. package/build-module/components/global-styles/screen-root.js +1 -1
  405. package/build-module/components/global-styles/screen-root.js.map +1 -1
  406. package/build-module/components/global-styles/screen-typography.js +1 -1
  407. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  408. package/build-module/components/global-styles/style-variations-container.js +11 -3
  409. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  410. package/build-module/components/global-styles/typography-panel.js +1 -1
  411. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  412. package/build-module/components/global-styles/typography-preview.js +1 -1
  413. package/build-module/components/global-styles/typography-preview.js.map +1 -1
  414. package/build-module/components/global-styles/ui.js +89 -35
  415. package/build-module/components/global-styles/ui.js.map +1 -1
  416. package/build-module/components/global-styles-renderer/index.js +1 -1
  417. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  418. package/build-module/components/header-edit-mode/document-actions/index.js +55 -22
  419. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  420. package/build-module/components/header-edit-mode/index.js +4 -6
  421. package/build-module/components/header-edit-mode/index.js.map +1 -1
  422. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +4 -4
  423. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -1
  424. package/build-module/components/header-edit-mode/undo-redo/redo.js +2 -3
  425. package/build-module/components/header-edit-mode/undo-redo/redo.js.map +1 -1
  426. package/build-module/components/header-edit-mode/undo-redo/undo.js +2 -3
  427. package/build-module/components/header-edit-mode/undo-redo/undo.js.map +1 -1
  428. package/build-module/components/keyboard-shortcut-help-modal/index.js +2 -1
  429. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  430. package/build-module/components/keyboard-shortcuts/edit-mode.js +7 -2
  431. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  432. package/build-module/components/keyboard-shortcuts/index.js +7 -2
  433. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  434. package/build-module/components/keyboard-shortcuts/register.js +1 -1
  435. package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
  436. package/build-module/components/layout/hooks.js +21 -0
  437. package/build-module/components/layout/hooks.js.map +1 -1
  438. package/build-module/components/layout/index.js +33 -16
  439. package/build-module/components/layout/index.js.map +1 -1
  440. package/build-module/components/list/index.js +1 -1
  441. package/build-module/components/list/index.js.map +1 -1
  442. package/build-module/components/page/header.js +33 -0
  443. package/build-module/components/page/header.js.map +1 -0
  444. package/build-module/components/page/index.js +37 -0
  445. package/build-module/components/page/index.js.map +1 -0
  446. package/build-module/components/page-content-focus-manager/back-to-page-notification.js +53 -0
  447. package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +1 -0
  448. package/build-module/components/page-content-focus-manager/constants.js +2 -0
  449. package/build-module/components/page-content-focus-manager/constants.js.map +1 -0
  450. package/build-module/components/{page-content-lock/use-disable-non-content-blocks.js → page-content-focus-manager/disable-non-page-content-blocks.js} +18 -9
  451. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -0
  452. package/build-module/components/page-content-focus-manager/edit-template-notification.js +110 -0
  453. package/build-module/components/page-content-focus-manager/edit-template-notification.js.map +1 -0
  454. package/build-module/components/page-content-focus-manager/index.js +23 -0
  455. package/build-module/components/page-content-focus-manager/index.js.map +1 -0
  456. package/build-module/components/page-library/grid-item.js +145 -0
  457. package/build-module/components/page-library/grid-item.js.map +1 -0
  458. package/build-module/components/page-library/grid.js +38 -0
  459. package/build-module/components/page-library/grid.js.map +1 -0
  460. package/build-module/components/page-library/index.js +43 -0
  461. package/build-module/components/page-library/index.js.map +1 -0
  462. package/build-module/components/page-library/no-patterns.js +12 -0
  463. package/build-module/components/page-library/no-patterns.js.map +1 -0
  464. package/build-module/components/page-library/patterns-list.js +87 -0
  465. package/build-module/components/page-library/patterns-list.js.map +1 -0
  466. package/build-module/components/page-library/search-items.js +156 -0
  467. package/build-module/components/page-library/search-items.js.map +1 -0
  468. package/build-module/components/page-library/use-library-settings.js +40 -0
  469. package/build-module/components/page-library/use-library-settings.js.map +1 -0
  470. package/build-module/components/page-library/use-patterns.js +176 -0
  471. package/build-module/components/page-library/use-patterns.js.map +1 -0
  472. package/build-module/components/page-library/utils.js +13 -0
  473. package/build-module/components/page-library/utils.js.map +1 -0
  474. package/build-module/components/page-main/index.js +32 -0
  475. package/build-module/components/page-main/index.js.map +1 -0
  476. package/build-module/components/page-templates/index.js +80 -0
  477. package/build-module/components/page-templates/index.js.map +1 -0
  478. package/build-module/components/preferences-modal/enable-feature.js +4 -4
  479. package/build-module/components/preferences-modal/enable-feature.js.map +1 -1
  480. package/build-module/components/resizable-frame/index.js +5 -3
  481. package/build-module/components/resizable-frame/index.js.map +1 -1
  482. package/build-module/components/revisions/index.js +1 -1
  483. package/build-module/components/revisions/index.js.map +1 -1
  484. package/build-module/components/routes/link.js +6 -6
  485. package/build-module/components/routes/link.js.map +1 -1
  486. package/build-module/components/routes/use-title.js +1 -1
  487. package/build-module/components/routes/use-title.js.map +1 -1
  488. package/build-module/components/save-button/index.js +15 -11
  489. package/build-module/components/save-button/index.js.map +1 -1
  490. package/build-module/components/save-hub/index.js +1 -1
  491. package/build-module/components/save-hub/index.js.map +1 -1
  492. package/build-module/components/save-panel/index.js +3 -4
  493. package/build-module/components/save-panel/index.js.map +1 -1
  494. package/build-module/components/secondary-sidebar/inserter-sidebar.js +4 -5
  495. package/build-module/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  496. package/build-module/components/secondary-sidebar/list-view-sidebar.js +44 -10
  497. package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  498. package/build-module/components/sidebar/index.js +10 -7
  499. package/build-module/components/sidebar/index.js.map +1 -1
  500. package/build-module/components/sidebar-button/index.js +2 -3
  501. package/build-module/components/sidebar-button/index.js.map +1 -1
  502. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js +19 -6
  503. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  504. package/build-module/components/sidebar-edit-mode/index.js +5 -5
  505. package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
  506. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +71 -0
  507. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -0
  508. package/build-module/components/sidebar-edit-mode/page-panels/index.js +51 -40
  509. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  510. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +23 -0
  511. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -0
  512. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +176 -0
  513. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -0
  514. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +33 -0
  515. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -0
  516. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js +85 -0
  517. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js.map +1 -0
  518. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +4 -4
  519. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  520. package/build-module/components/sidebar-edit-mode/settings-header/index.js +20 -7
  521. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  522. package/build-module/components/sidebar-edit-mode/sidebar-fixed-bottom.js +1 -1
  523. package/build-module/components/sidebar-edit-mode/sidebar-fixed-bottom.js.map +1 -1
  524. package/build-module/components/sidebar-edit-mode/template-panel/index.js +9 -6
  525. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  526. package/build-module/components/sidebar-navigation-item/index.js +11 -7
  527. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  528. package/build-module/components/sidebar-navigation-screen/index.js +18 -7
  529. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  530. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +27 -0
  531. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -0
  532. package/build-module/components/sidebar-navigation-screen-details-panel/index.js +30 -0
  533. package/build-module/components/sidebar-navigation-screen-details-panel/index.js.map +1 -0
  534. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +14 -0
  535. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -0
  536. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +24 -0
  537. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -0
  538. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +14 -0
  539. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -0
  540. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +9 -8
  541. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  542. package/build-module/components/sidebar-navigation-screen-library/category-item.js +37 -0
  543. package/build-module/components/sidebar-navigation-screen-library/category-item.js.map +1 -0
  544. package/build-module/components/sidebar-navigation-screen-library/index.js +87 -0
  545. package/build-module/components/sidebar-navigation-screen-library/index.js.map +1 -0
  546. package/build-module/components/sidebar-navigation-screen-library/use-default-pattern-categories.js +25 -0
  547. package/build-module/components/sidebar-navigation-screen-library/use-default-pattern-categories.js.map +1 -0
  548. package/build-module/components/sidebar-navigation-screen-library/use-pattern-categories.js +61 -0
  549. package/build-module/components/sidebar-navigation-screen-library/use-pattern-categories.js.map +1 -0
  550. package/build-module/components/sidebar-navigation-screen-library/use-template-part-areas.js +34 -0
  551. package/build-module/components/sidebar-navigation-screen-library/use-template-part-areas.js.map +1 -0
  552. package/build-module/components/sidebar-navigation-screen-library/use-theme-patterns.js +27 -0
  553. package/build-module/components/sidebar-navigation-screen-library/use-theme-patterns.js.map +1 -0
  554. package/build-module/components/sidebar-navigation-screen-main/index.js +13 -13
  555. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  556. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js +1 -1
  557. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -1
  558. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +33 -0
  559. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-modal.js.map +1 -0
  560. package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js +26 -0
  561. package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -0
  562. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +45 -90
  563. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  564. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +70 -0
  565. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -0
  566. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +58 -0
  567. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -0
  568. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +46 -0
  569. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -0
  570. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +35 -0
  571. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -0
  572. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +151 -0
  573. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -0
  574. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js +3 -1
  575. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  576. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +45 -7
  577. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  578. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +55 -7
  579. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  580. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +22 -50
  581. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  582. package/build-module/components/sidebar-navigation-screen-page/index.js +14 -34
  583. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  584. package/build-module/components/sidebar-navigation-screen-page/page-details.js +28 -28
  585. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  586. package/build-module/components/sidebar-navigation-screen-page/status-label.js +9 -8
  587. package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  588. package/build-module/components/sidebar-navigation-screen-pages/index.js +8 -6
  589. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  590. package/build-module/components/sidebar-navigation-screen-pattern/index.js +46 -0
  591. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -0
  592. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +28 -0
  593. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -0
  594. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +22 -0
  595. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +1 -0
  596. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +27 -0
  597. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -0
  598. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +34 -0
  599. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -0
  600. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +71 -0
  601. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -0
  602. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +64 -0
  603. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -0
  604. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +192 -0
  605. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -0
  606. package/build-module/components/sidebar-navigation-screen-template/index.js +18 -6
  607. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  608. package/build-module/components/sidebar-navigation-screen-templates/index.js +11 -10
  609. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  610. package/build-module/components/site-hub/index.js +8 -9
  611. package/build-module/components/site-hub/index.js.map +1 -1
  612. package/build-module/components/style-book/index.js +9 -9
  613. package/build-module/components/style-book/index.js.map +1 -1
  614. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +13 -3
  615. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  616. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  617. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  618. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +11 -1
  619. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  620. package/build-module/components/table/index.js +21 -0
  621. package/build-module/components/table/index.js.map +1 -0
  622. package/build-module/components/template-part-converter/convert-to-template-part.js +4 -20
  623. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  624. package/build-module/components/welcome-guide/editor.js +1 -1
  625. package/build-module/components/welcome-guide/editor.js.map +1 -1
  626. package/build-module/components/welcome-guide/styles.js +5 -3
  627. package/build-module/components/welcome-guide/styles.js.map +1 -1
  628. package/build-module/hooks/commands/use-common-commands.js +172 -0
  629. package/build-module/hooks/commands/use-common-commands.js.map +1 -0
  630. package/build-module/hooks/commands/use-edit-mode-commands.js +68 -24
  631. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  632. package/build-module/hooks/index.js +1 -0
  633. package/build-module/hooks/index.js.map +1 -1
  634. package/build-module/hooks/navigation-menu-edit.js +77 -0
  635. package/build-module/hooks/navigation-menu-edit.js.map +1 -0
  636. package/build-module/hooks/push-changes-to-global-styles/index.js +4 -2
  637. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  638. package/build-module/hooks/template-part-edit.js +5 -5
  639. package/build-module/hooks/template-part-edit.js.map +1 -1
  640. package/build-module/{private-apis.js → lock-unlock.js} +1 -1
  641. package/build-module/lock-unlock.js.map +1 -0
  642. package/build-module/store/actions.js +39 -7
  643. package/build-module/store/actions.js.map +1 -1
  644. package/build-module/store/index.js +1 -1
  645. package/build-module/store/index.js.map +1 -1
  646. package/build-module/store/reducer.js +6 -5
  647. package/build-module/store/reducer.js.map +1 -1
  648. package/build-module/store/selectors.js +35 -14
  649. package/build-module/store/selectors.js.map +1 -1
  650. package/build-module/utils/get-is-list-page.js +12 -5
  651. package/build-module/utils/get-is-list-page.js.map +1 -1
  652. package/build-module/utils/is-previewing-theme.js +2 -2
  653. package/build-module/utils/is-previewing-theme.js.map +1 -1
  654. package/build-module/utils/use-activate-theme.js +2 -2
  655. package/build-module/utils/use-activate-theme.js.map +1 -1
  656. package/build-module/utils/use-debounced-input.js +17 -0
  657. package/build-module/utils/use-debounced-input.js.map +1 -0
  658. package/build-style/style-rtl.css +323 -29
  659. package/build-style/style.css +323 -29
  660. package/package.json +44 -40
  661. package/src/components/add-new-pattern/index.js +94 -0
  662. package/src/components/add-new-template/add-custom-template-modal-content.js +1 -13
  663. package/src/components/add-new-template/index.js +0 -3
  664. package/src/components/add-new-template/new-template.js +1 -2
  665. package/src/components/app/index.js +1 -1
  666. package/src/components/block-editor/back-button.js +5 -2
  667. package/src/components/block-editor/constants.js +1 -0
  668. package/src/components/block-editor/editor-canvas.js +1 -1
  669. package/src/components/block-editor/get-block-editor-provider.js +29 -0
  670. package/src/components/block-editor/index.js +15 -199
  671. package/src/components/block-editor/providers/default-block-editor-provider.js +44 -0
  672. package/src/components/block-editor/providers/navigation-block-editor-provider.js +114 -0
  673. package/src/components/block-editor/site-editor-canvas.js +155 -0
  674. package/src/components/block-editor/style.scss +6 -0
  675. package/src/components/block-editor/use-site-editor-settings.js +91 -0
  676. package/src/components/canvas-spinner/index.js +11 -1
  677. package/src/components/create-pattern-modal/index.js +134 -0
  678. package/src/components/create-pattern-modal/style.scss +3 -0
  679. package/src/components/create-template-part-modal/index.js +63 -3
  680. package/src/components/editor/index.js +24 -15
  681. package/src/components/editor-canvas-container/index.js +21 -4
  682. package/src/components/global-styles/color-palette-panel.js +1 -1
  683. package/src/components/global-styles/dimensions-panel.js +1 -1
  684. package/src/components/global-styles/global-styles-provider.js +10 -14
  685. package/src/components/global-styles/gradients-palette-panel.js +1 -1
  686. package/src/components/global-styles/hooks.js +1 -1
  687. package/src/components/global-styles/palette.js +2 -2
  688. package/src/components/global-styles/preview.js +1 -1
  689. package/src/components/global-styles/root-menu.js +1 -1
  690. package/src/components/global-styles/screen-block-list.js +1 -1
  691. package/src/components/global-styles/screen-block.js +1 -1
  692. package/src/components/global-styles/screen-colors.js +1 -1
  693. package/src/components/global-styles/screen-css.js +1 -1
  694. package/src/components/global-styles/screen-layout.js +1 -1
  695. package/src/components/global-styles/screen-revisions/index.js +1 -1
  696. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +1 -1
  697. package/src/components/global-styles/screen-root.js +1 -1
  698. package/src/components/global-styles/screen-typography.js +1 -1
  699. package/src/components/global-styles/stories/index.js +1 -1
  700. package/src/components/global-styles/style-variations-container.js +13 -3
  701. package/src/components/global-styles/style.scss +11 -0
  702. package/src/components/global-styles/typography-panel.js +1 -1
  703. package/src/components/global-styles/typography-preview.js +1 -1
  704. package/src/components/global-styles/ui.js +105 -46
  705. package/src/components/global-styles-renderer/index.js +1 -1
  706. package/src/components/header-edit-mode/document-actions/index.js +51 -26
  707. package/src/components/header-edit-mode/document-actions/style.scss +9 -5
  708. package/src/components/header-edit-mode/index.js +4 -4
  709. package/src/components/keyboard-shortcuts/edit-mode.js +5 -1
  710. package/src/components/keyboard-shortcuts/index.js +5 -1
  711. package/src/components/keyboard-shortcuts/register.js +1 -1
  712. package/src/components/layout/hooks.js +21 -0
  713. package/src/components/layout/index.js +92 -64
  714. package/src/components/layout/style.scss +7 -0
  715. package/src/components/list/index.js +1 -1
  716. package/src/components/page/header.js +38 -0
  717. package/src/components/page/index.js +38 -0
  718. package/src/components/page/style.scss +38 -0
  719. package/src/components/page-content-focus-manager/back-to-page-notification.js +65 -0
  720. package/src/components/{page-content-lock → page-content-focus-manager}/constants.js +1 -1
  721. package/src/components/{page-content-lock/use-disable-non-content-blocks.js → page-content-focus-manager/disable-non-page-content-blocks.js} +15 -7
  722. package/src/components/page-content-focus-manager/edit-template-notification.js +108 -0
  723. package/src/components/page-content-focus-manager/index.js +26 -0
  724. package/src/components/page-library/grid-item.js +179 -0
  725. package/src/components/page-library/grid.js +39 -0
  726. package/src/components/page-library/index.js +39 -0
  727. package/src/components/page-library/no-patterns.js +12 -0
  728. package/src/components/page-library/patterns-list.js +114 -0
  729. package/src/components/page-library/search-items.js +171 -0
  730. package/src/components/page-library/style.scss +105 -0
  731. package/src/components/page-library/use-library-settings.js +51 -0
  732. package/src/components/page-library/use-patterns.js +238 -0
  733. package/src/components/page-library/utils.js +21 -0
  734. package/src/components/page-main/index.js +27 -0
  735. package/src/components/page-templates/index.js +104 -0
  736. package/src/components/resizable-frame/index.js +3 -1
  737. package/src/components/revisions/index.js +1 -1
  738. package/src/components/routes/link.js +2 -2
  739. package/src/components/routes/use-title.js +1 -1
  740. package/src/components/save-button/index.js +14 -11
  741. package/src/components/save-hub/index.js +1 -1
  742. package/src/components/save-panel/index.js +1 -1
  743. package/src/components/secondary-sidebar/list-view-sidebar.js +53 -6
  744. package/src/components/sidebar/index.js +11 -7
  745. package/src/components/sidebar-edit-mode/global-styles-sidebar.js +42 -29
  746. package/src/components/sidebar-edit-mode/index.js +5 -5
  747. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +69 -0
  748. package/src/components/sidebar-edit-mode/page-panels/index.js +53 -53
  749. package/src/components/sidebar-edit-mode/page-panels/page-content.js +27 -0
  750. package/src/components/sidebar-edit-mode/page-panels/page-status.js +233 -0
  751. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +35 -0
  752. package/src/components/sidebar-edit-mode/page-panels/publish-date.js +94 -0
  753. package/src/components/sidebar-edit-mode/page-panels/style.scss +31 -0
  754. package/src/components/sidebar-edit-mode/settings-header/index.js +18 -9
  755. package/src/components/sidebar-edit-mode/sidebar-fixed-bottom.js +1 -1
  756. package/src/components/sidebar-edit-mode/template-panel/index.js +9 -6
  757. package/src/components/sidebar-navigation-item/index.js +6 -2
  758. package/src/components/sidebar-navigation-item/style.scss +7 -0
  759. package/src/components/sidebar-navigation-screen/index.js +19 -7
  760. package/src/components/sidebar-navigation-screen/style.scss +28 -8
  761. package/src/components/sidebar-navigation-screen-details-footer/index.js +45 -0
  762. package/src/components/sidebar-navigation-screen-details-footer/style.scss +5 -0
  763. package/src/components/sidebar-navigation-screen-details-panel/index.js +40 -0
  764. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +14 -0
  765. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +29 -0
  766. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +14 -0
  767. package/src/components/sidebar-navigation-screen-details-panel/style.scss +25 -0
  768. package/src/components/sidebar-navigation-screen-global-styles/index.js +9 -3
  769. package/src/components/sidebar-navigation-screen-global-styles/style.scss +0 -3
  770. package/src/components/sidebar-navigation-screen-library/category-item.js +43 -0
  771. package/src/components/sidebar-navigation-screen-library/index.js +136 -0
  772. package/src/components/sidebar-navigation-screen-library/style.scss +7 -0
  773. package/src/components/sidebar-navigation-screen-library/use-default-pattern-categories.js +32 -0
  774. package/src/components/sidebar-navigation-screen-library/use-pattern-categories.js +64 -0
  775. package/src/components/sidebar-navigation-screen-library/use-template-part-areas.js +33 -0
  776. package/src/components/sidebar-navigation-screen-library/use-theme-patterns.js +44 -0
  777. package/src/components/sidebar-navigation-screen-main/index.js +11 -14
  778. package/src/components/sidebar-navigation-screen-navigation-item/index.js +1 -1
  779. package/src/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +45 -0
  780. package/src/components/sidebar-navigation-screen-navigation-menu/edit-button.js +24 -0
  781. package/src/components/sidebar-navigation-screen-navigation-menu/index.js +50 -96
  782. package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +89 -0
  783. package/src/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +51 -0
  784. package/src/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +51 -0
  785. package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +39 -0
  786. package/src/components/sidebar-navigation-screen-navigation-menu/style.scss +15 -0
  787. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +175 -0
  788. package/src/components/sidebar-navigation-screen-navigation-menus/constants.js +3 -1
  789. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +43 -7
  790. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +61 -2
  791. package/src/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +25 -47
  792. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +4 -0
  793. package/src/components/sidebar-navigation-screen-page/index.js +19 -58
  794. package/src/components/sidebar-navigation-screen-page/page-details.js +42 -39
  795. package/src/components/sidebar-navigation-screen-page/status-label.js +23 -19
  796. package/src/components/sidebar-navigation-screen-page/style.scss +1 -18
  797. package/src/components/sidebar-navigation-screen-pages/index.js +30 -29
  798. package/src/components/sidebar-navigation-screen-pattern/index.js +44 -0
  799. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +28 -0
  800. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +21 -0
  801. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +30 -0
  802. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +33 -0
  803. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +71 -0
  804. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +86 -0
  805. package/src/components/sidebar-navigation-screen-template/home-template-details.js +230 -0
  806. package/src/components/sidebar-navigation-screen-template/index.js +19 -5
  807. package/src/components/sidebar-navigation-screen-template/style.scss +23 -0
  808. package/src/components/sidebar-navigation-screen-templates/index.js +18 -25
  809. package/src/components/site-hub/index.js +13 -9
  810. package/src/components/style-book/index.js +1 -1
  811. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +16 -3
  812. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  813. package/src/components/sync-state-with-url/use-sync-path-with-url.js +11 -1
  814. package/src/components/table/index.js +33 -0
  815. package/src/components/table/style.scss +37 -0
  816. package/src/components/template-part-converter/convert-to-template-part.js +4 -27
  817. package/src/components/welcome-guide/editor.js +1 -1
  818. package/src/components/welcome-guide/styles.js +5 -3
  819. package/src/hooks/commands/use-common-commands.js +167 -0
  820. package/src/hooks/commands/use-edit-mode-commands.js +61 -25
  821. package/src/hooks/index.js +1 -0
  822. package/src/hooks/navigation-menu-edit.js +95 -0
  823. package/src/hooks/push-changes-to-global-styles/index.js +1 -1
  824. package/src/hooks/template-part-edit.js +1 -1
  825. package/src/store/actions.js +40 -8
  826. package/src/store/index.js +1 -1
  827. package/src/store/reducer.js +6 -5
  828. package/src/store/selectors.js +34 -9
  829. package/src/store/test/actions.js +8 -8
  830. package/src/store/test/reducer.js +11 -11
  831. package/src/store/test/selectors.js +8 -8
  832. package/src/style.scss +12 -2
  833. package/src/utils/get-is-list-page.js +16 -4
  834. package/src/utils/is-previewing-theme.js +4 -2
  835. package/src/utils/use-activate-theme.js +3 -2
  836. package/src/utils/use-debounced-input.js +17 -0
  837. package/build/components/add-new-template/new-template-part.js +0 -113
  838. package/build/components/add-new-template/new-template-part.js.map +0 -1
  839. package/build/components/page-content-lock/constants.js +0 -9
  840. package/build/components/page-content-lock/constants.js.map +0 -1
  841. package/build/components/page-content-lock/index.js +0 -29
  842. package/build/components/page-content-lock/index.js.map +0 -1
  843. package/build/components/page-content-lock/use-disable-non-content-blocks.js +0 -49
  844. package/build/components/page-content-lock/use-disable-non-content-blocks.js.map +0 -1
  845. package/build/components/page-content-lock/use-page-content-lock-notifications.js +0 -112
  846. package/build/components/page-content-lock/use-page-content-lock-notifications.js.map +0 -1
  847. package/build/components/sidebar-edit-mode/page-panels/content-blocks-list.js +0 -79
  848. package/build/components/sidebar-edit-mode/page-panels/content-blocks-list.js.map +0 -1
  849. package/build/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +0 -52
  850. package/build/components/sidebar-navigation-screen-navigation-menus/navigator-button.js.map +0 -1
  851. package/build/components/sidebar-navigation-screen-template-part/index.js +0 -105
  852. package/build/components/sidebar-navigation-screen-template-part/index.js.map +0 -1
  853. package/build/components/sidebar-navigation-subtitle/index.js +0 -17
  854. package/build/components/sidebar-navigation-subtitle/index.js.map +0 -1
  855. package/build/private-apis.js.map +0 -1
  856. package/build-module/components/add-new-template/new-template-part.js +0 -93
  857. package/build-module/components/add-new-template/new-template-part.js.map +0 -1
  858. package/build-module/components/page-content-lock/constants.js +0 -2
  859. package/build-module/components/page-content-lock/constants.js.map +0 -1
  860. package/build-module/components/page-content-lock/index.js +0 -14
  861. package/build-module/components/page-content-lock/index.js.map +0 -1
  862. package/build-module/components/page-content-lock/use-disable-non-content-blocks.js.map +0 -1
  863. package/build-module/components/page-content-lock/use-page-content-lock-notifications.js +0 -98
  864. package/build-module/components/page-content-lock/use-page-content-lock-notifications.js.map +0 -1
  865. package/build-module/components/sidebar-edit-mode/page-panels/content-blocks-list.js +0 -67
  866. package/build-module/components/sidebar-edit-mode/page-panels/content-blocks-list.js.map +0 -1
  867. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +0 -39
  868. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigator-button.js.map +0 -1
  869. package/build-module/components/sidebar-navigation-screen-template-part/index.js +0 -86
  870. package/build-module/components/sidebar-navigation-screen-template-part/index.js.map +0 -1
  871. package/build-module/components/sidebar-navigation-subtitle/index.js +0 -9
  872. package/build-module/components/sidebar-navigation-subtitle/index.js.map +0 -1
  873. package/build-module/private-apis.js.map +0 -1
  874. package/src/components/add-new-template/new-template-part.js +0 -109
  875. package/src/components/page-content-lock/index.js +0 -14
  876. package/src/components/page-content-lock/use-page-content-lock-notifications.js +0 -128
  877. package/src/components/sidebar-edit-mode/page-panels/content-blocks-list.js +0 -77
  878. package/src/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +0 -47
  879. package/src/components/sidebar-navigation-screen-template-part/index.js +0 -103
  880. package/src/components/sidebar-navigation-screen-templates/style.scss +0 -4
  881. package/src/components/sidebar-navigation-subtitle/index.js +0 -5
  882. package/src/components/sidebar-navigation-subtitle/style.scss +0 -7
  883. /package/src/{private-apis.js → lock-unlock.js} +0 -0
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = PatternsList;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _components = require("@wordpress/components");
13
+
14
+ var _i18n = require("@wordpress/i18n");
15
+
16
+ var _icons = require("@wordpress/icons");
17
+
18
+ var _router = require("@wordpress/router");
19
+
20
+ var _compose = require("@wordpress/compose");
21
+
22
+ var _grid = _interopRequireDefault(require("./grid"));
23
+
24
+ var _noPatterns = _interopRequireDefault(require("./no-patterns"));
25
+
26
+ var _usePatterns = _interopRequireDefault(require("./use-patterns"));
27
+
28
+ var _sidebarButton = _interopRequireDefault(require("../sidebar-button"));
29
+
30
+ var _useDebouncedInput = _interopRequireDefault(require("../../utils/use-debounced-input"));
31
+
32
+ var _lockUnlock = require("../../lock-unlock");
33
+
34
+ /**
35
+ * WordPress dependencies
36
+ */
37
+
38
+ /**
39
+ * Internal dependencies
40
+ */
41
+ const {
42
+ useLocation,
43
+ useHistory
44
+ } = (0, _lockUnlock.unlock)(_router.privateApis);
45
+
46
+ function PatternsList({
47
+ categoryId,
48
+ type
49
+ }) {
50
+ const location = useLocation();
51
+ const history = useHistory();
52
+ const isMobileViewport = (0, _compose.useViewportMatch)('medium', '<');
53
+ const [filterValue, setFilterValue, delayedFilterValue] = (0, _useDebouncedInput.default)('');
54
+ const [patterns, isResolving] = (0, _usePatterns.default)(type, categoryId, delayedFilterValue);
55
+ const {
56
+ syncedPatterns,
57
+ unsyncedPatterns
58
+ } = patterns;
59
+ const hasPatterns = !!syncedPatterns.length || !!unsyncedPatterns.length;
60
+ return (0, _element.createElement)(_components.__experimentalVStack, {
61
+ spacing: 6
62
+ }, (0, _element.createElement)(_components.Flex, null, isMobileViewport && (0, _element.createElement)(_sidebarButton.default, {
63
+ icon: (0, _i18n.isRTL)() ? _icons.chevronRight : _icons.chevronLeft,
64
+ label: (0, _i18n.__)('Back'),
65
+ onClick: () => {
66
+ // Go back in history if we came from the library page.
67
+ // Otherwise push a stack onto the history.
68
+ if (location.state?.backPath === '/library') {
69
+ history.back();
70
+ } else {
71
+ history.push({
72
+ path: '/library'
73
+ });
74
+ }
75
+ }
76
+ }), (0, _element.createElement)(_components.FlexBlock, null, (0, _element.createElement)(_components.SearchControl, {
77
+ className: "edit-site-library__search",
78
+ onChange: value => setFilterValue(value),
79
+ placeholder: (0, _i18n.__)('Search patterns'),
80
+ label: (0, _i18n.__)('Search patterns'),
81
+ value: filterValue,
82
+ __nextHasNoMarginBottom: true
83
+ }))), isResolving && (0, _i18n.__)('Loading'), !isResolving && !!syncedPatterns.length && (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_components.__experimentalVStack, {
84
+ className: "edit-site-library__section-header"
85
+ }, (0, _element.createElement)(_components.__experimentalHeading, {
86
+ level: 4
87
+ }, (0, _i18n.__)('Synced')), (0, _element.createElement)(_components.__experimentalText, {
88
+ variant: "muted",
89
+ as: "p"
90
+ }, (0, _i18n.__)('Patterns that are kept in sync across your site'))), (0, _element.createElement)(_grid.default, {
91
+ icon: _icons.symbol,
92
+ categoryId: categoryId,
93
+ label: (0, _i18n.__)('Synced patterns'),
94
+ items: syncedPatterns
95
+ })), !isResolving && !!unsyncedPatterns.length && (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_components.__experimentalVStack, {
96
+ className: "edit-site-library__section-header"
97
+ }, (0, _element.createElement)(_components.__experimentalHeading, {
98
+ level: 4
99
+ }, (0, _i18n.__)('Standard')), (0, _element.createElement)(_components.__experimentalText, {
100
+ variant: "muted",
101
+ as: "p"
102
+ }, (0, _i18n.__)('Patterns that can be changed freely without affecting your site'))), (0, _element.createElement)(_grid.default, {
103
+ categoryId: categoryId,
104
+ label: (0, _i18n.__)('Standard patterns'),
105
+ items: unsyncedPatterns
106
+ })), !isResolving && !hasPatterns && (0, _element.createElement)(_noPatterns.default, null));
107
+ }
108
+ //# sourceMappingURL=patterns-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/page-library/patterns-list.js"],"names":["useLocation","useHistory","routerPrivateApis","PatternsList","categoryId","type","location","history","isMobileViewport","filterValue","setFilterValue","delayedFilterValue","patterns","isResolving","syncedPatterns","unsyncedPatterns","hasPatterns","length","chevronRight","chevronLeft","state","backPath","back","push","path","value","symbol"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n\nimport {\n\tSearchControl,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { __, isRTL } from '@wordpress/i18n';\nimport { symbol, chevronLeft, chevronRight } from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Grid from './grid';\nimport NoPatterns from './no-patterns';\nimport usePatterns from './use-patterns';\nimport SidebarButton from '../sidebar-button';\nimport useDebouncedInput from '../../utils/use-debounced-input';\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nexport default function PatternsList( { categoryId, type } ) {\n\tconst location = useLocation();\n\tconst history = useHistory();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( '' );\n\n\tconst [ patterns, isResolving ] = usePatterns(\n\t\ttype,\n\t\tcategoryId,\n\t\tdelayedFilterValue\n\t);\n\n\tconst { syncedPatterns, unsyncedPatterns } = patterns;\n\tconst hasPatterns = !! syncedPatterns.length || !! unsyncedPatterns.length;\n\n\treturn (\n\t\t<VStack spacing={ 6 }>\n\t\t\t<Flex>\n\t\t\t\t{ isMobileViewport && (\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t// Go back in history if we came from the library page.\n\t\t\t\t\t\t\t// Otherwise push a stack onto the history.\n\t\t\t\t\t\t\tif ( location.state?.backPath === '/library' ) {\n\t\t\t\t\t\t\t\thistory.back();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\thistory.push( { path: '/library' } );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<FlexBlock>\n\t\t\t\t\t<SearchControl\n\t\t\t\t\t\tclassName=\"edit-site-library__search\"\n\t\t\t\t\t\tonChange={ ( value ) => setFilterValue( value ) }\n\t\t\t\t\t\tplaceholder={ __( 'Search patterns' ) }\n\t\t\t\t\t\tlabel={ __( 'Search patterns' ) }\n\t\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</FlexBlock>\n\t\t\t</Flex>\n\t\t\t{ isResolving && __( 'Loading' ) }\n\t\t\t{ ! isResolving && !! syncedPatterns.length && (\n\t\t\t\t<>\n\t\t\t\t\t<VStack className=\"edit-site-library__section-header\">\n\t\t\t\t\t\t<Heading level={ 4 }>{ __( 'Synced' ) }</Heading>\n\t\t\t\t\t\t<Text variant=\"muted\" as=\"p\">\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Patterns that are kept in sync across your site'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<Grid\n\t\t\t\t\t\ticon={ symbol }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tlabel={ __( 'Synced patterns' ) }\n\t\t\t\t\t\titems={ syncedPatterns }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ ! isResolving && !! unsyncedPatterns.length && (\n\t\t\t\t<>\n\t\t\t\t\t<VStack className=\"edit-site-library__section-header\">\n\t\t\t\t\t\t<Heading level={ 4 }>{ __( 'Standard' ) }</Heading>\n\t\t\t\t\t\t<Text variant=\"muted\" as=\"p\">\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Patterns that can be changed freely without affecting your site'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<Grid\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tlabel={ __( 'Standard patterns' ) }\n\t\t\t\t\t\titems={ unsyncedPatterns }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ ! isResolving && ! hasPatterns && <NoPatterns /> }\n\t\t</VStack>\n\t);\n}\n"]}
@@ -0,0 +1,172 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.searchItems = exports.getNormalizedSearchTerms = void 0;
9
+
10
+ var _removeAccents = _interopRequireDefault(require("remove-accents"));
11
+
12
+ var _changeCase = require("change-case");
13
+
14
+ /**
15
+ * External dependencies
16
+ */
17
+ // Default search helpers.
18
+ const defaultGetName = item => item.name || '';
19
+
20
+ const defaultGetTitle = item => item.title;
21
+
22
+ const defaultGetDescription = item => item.description || '';
23
+
24
+ const defaultGetKeywords = item => item.keywords || [];
25
+
26
+ const defaultHasCategory = () => false;
27
+ /**
28
+ * Extracts words from an input string.
29
+ *
30
+ * @param {string} input The input string.
31
+ *
32
+ * @return {Array} Words, extracted from the input string.
33
+ */
34
+
35
+
36
+ function extractWords(input = '') {
37
+ return (0, _changeCase.noCase)(input, {
38
+ splitRegexp: [/([\p{Ll}\p{Lo}\p{N}])([\p{Lu}\p{Lt}])/gu, // One lowercase or digit, followed by one uppercase.
39
+ /([\p{Lu}\p{Lt}])([\p{Lu}\p{Lt}][\p{Ll}\p{Lo}])/gu // One uppercase followed by one uppercase and one lowercase.
40
+ ],
41
+ stripRegexp: /(\p{C}|\p{P}|\p{S})+/giu // Anything that's not a punctuation, symbol or control/format character.
42
+
43
+ }).split(' ').filter(Boolean);
44
+ }
45
+ /**
46
+ * Sanitizes the search input string.
47
+ *
48
+ * @param {string} input The search input to normalize.
49
+ *
50
+ * @return {string} The normalized search input.
51
+ */
52
+
53
+
54
+ function normalizeSearchInput(input = '') {
55
+ // Disregard diacritics.
56
+ // Input: "média"
57
+ input = (0, _removeAccents.default)(input); // Accommodate leading slash, matching autocomplete expectations.
58
+ // Input: "/media"
59
+
60
+ input = input.replace(/^\//, ''); // Lowercase.
61
+ // Input: "MEDIA"
62
+
63
+ input = input.toLowerCase();
64
+ return input;
65
+ }
66
+ /**
67
+ * Converts the search term into a list of normalized terms.
68
+ *
69
+ * @param {string} input The search term to normalize.
70
+ *
71
+ * @return {string[]} The normalized list of search terms.
72
+ */
73
+
74
+
75
+ const getNormalizedSearchTerms = (input = '') => {
76
+ return extractWords(normalizeSearchInput(input));
77
+ };
78
+
79
+ exports.getNormalizedSearchTerms = getNormalizedSearchTerms;
80
+
81
+ const removeMatchingTerms = (unmatchedTerms, unprocessedTerms) => {
82
+ return unmatchedTerms.filter(term => !getNormalizedSearchTerms(unprocessedTerms).some(unprocessedTerm => unprocessedTerm.includes(term)));
83
+ };
84
+ /**
85
+ * Filters an item list given a search term.
86
+ *
87
+ * @param {Array} items Item list
88
+ * @param {string} searchInput Search input.
89
+ * @param {Object} config Search Config.
90
+ *
91
+ * @return {Array} Filtered item list.
92
+ */
93
+
94
+
95
+ const searchItems = (items = [], searchInput = '', config = {}) => {
96
+ const normalizedSearchTerms = getNormalizedSearchTerms(searchInput);
97
+ const onlyFilterByCategory = !normalizedSearchTerms.length;
98
+ const searchRankConfig = { ...config,
99
+ onlyFilterByCategory
100
+ }; // If we aren't filtering on search terms, matching on category is satisfactory.
101
+ // If we are, then we need more than a category match.
102
+
103
+ const threshold = onlyFilterByCategory ? 0 : 1;
104
+ const rankedItems = items.map(item => {
105
+ return [item, getItemSearchRank(item, searchInput, searchRankConfig)];
106
+ }).filter(([, rank]) => rank > threshold); // If we didn't have terms to search on, there's no point sorting.
107
+
108
+ if (normalizedSearchTerms.length === 0) {
109
+ return rankedItems.map(([item]) => item);
110
+ }
111
+
112
+ rankedItems.sort(([, rank1], [, rank2]) => rank2 - rank1);
113
+ return rankedItems.map(([item]) => item);
114
+ };
115
+ /**
116
+ * Get the search rank for a given item and a specific search term.
117
+ * The better the match, the higher the rank.
118
+ * If the rank equals 0, it should be excluded from the results.
119
+ *
120
+ * @param {Object} item Item to filter.
121
+ * @param {string} searchTerm Search term.
122
+ * @param {Object} config Search Config.
123
+ *
124
+ * @return {number} Search Rank.
125
+ */
126
+
127
+
128
+ exports.searchItems = searchItems;
129
+
130
+ function getItemSearchRank(item, searchTerm, config) {
131
+ const {
132
+ categoryId,
133
+ getName = defaultGetName,
134
+ getTitle = defaultGetTitle,
135
+ getDescription = defaultGetDescription,
136
+ getKeywords = defaultGetKeywords,
137
+ hasCategory = defaultHasCategory,
138
+ onlyFilterByCategory
139
+ } = config;
140
+ let rank = hasCategory(item, categoryId) ? 1 : 0; // If an item doesn't belong to the current category or we don't have
141
+ // search terms to filter by, return the initial rank value.
142
+
143
+ if (!rank || onlyFilterByCategory) {
144
+ return rank;
145
+ }
146
+
147
+ const name = getName(item);
148
+ const title = getTitle(item);
149
+ const description = getDescription(item);
150
+ const keywords = getKeywords(item);
151
+ const normalizedSearchInput = normalizeSearchInput(searchTerm);
152
+ const normalizedTitle = normalizeSearchInput(title); // Prefers exact matches
153
+ // Then prefers if the beginning of the title matches the search term
154
+ // name, keywords, description matches come later.
155
+
156
+ if (normalizedSearchInput === normalizedTitle) {
157
+ rank += 30;
158
+ } else if (normalizedTitle.startsWith(normalizedSearchInput)) {
159
+ rank += 20;
160
+ } else {
161
+ const terms = [name, title, description, ...keywords].join(' ');
162
+ const normalizedSearchTerms = extractWords(normalizedSearchInput);
163
+ const unmatchedTerms = removeMatchingTerms(normalizedSearchTerms, terms);
164
+
165
+ if (unmatchedTerms.length === 0) {
166
+ rank += 10;
167
+ }
168
+ }
169
+
170
+ return rank;
171
+ }
172
+ //# sourceMappingURL=search-items.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/page-library/search-items.js"],"names":["defaultGetName","item","name","defaultGetTitle","title","defaultGetDescription","description","defaultGetKeywords","keywords","defaultHasCategory","extractWords","input","splitRegexp","stripRegexp","split","filter","Boolean","normalizeSearchInput","replace","toLowerCase","getNormalizedSearchTerms","removeMatchingTerms","unmatchedTerms","unprocessedTerms","term","some","unprocessedTerm","includes","searchItems","items","searchInput","config","normalizedSearchTerms","onlyFilterByCategory","length","searchRankConfig","threshold","rankedItems","map","getItemSearchRank","rank","sort","rank1","rank2","searchTerm","categoryId","getName","getTitle","getDescription","getKeywords","hasCategory","normalizedSearchInput","normalizedTitle","startsWith","terms","join"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\nimport { noCase } from 'change-case';\n\n// Default search helpers.\nconst defaultGetName = ( item ) => item.name || '';\nconst defaultGetTitle = ( item ) => item.title;\nconst defaultGetDescription = ( item ) => item.description || '';\nconst defaultGetKeywords = ( item ) => item.keywords || [];\nconst defaultHasCategory = () => false;\n\n/**\n * Extracts words from an input string.\n *\n * @param {string} input The input string.\n *\n * @return {Array} Words, extracted from the input string.\n */\nfunction extractWords( input = '' ) {\n\treturn noCase( input, {\n\t\tsplitRegexp: [\n\t\t\t/([\\p{Ll}\\p{Lo}\\p{N}])([\\p{Lu}\\p{Lt}])/gu, // One lowercase or digit, followed by one uppercase.\n\t\t\t/([\\p{Lu}\\p{Lt}])([\\p{Lu}\\p{Lt}][\\p{Ll}\\p{Lo}])/gu, // One uppercase followed by one uppercase and one lowercase.\n\t\t],\n\t\tstripRegexp: /(\\p{C}|\\p{P}|\\p{S})+/giu, // Anything that's not a punctuation, symbol or control/format character.\n\t} )\n\t\t.split( ' ' )\n\t\t.filter( Boolean );\n}\n\n/**\n * Sanitizes the search input string.\n *\n * @param {string} input The search input to normalize.\n *\n * @return {string} The normalized search input.\n */\nfunction normalizeSearchInput( input = '' ) {\n\t// Disregard diacritics.\n\t// Input: \"média\"\n\tinput = removeAccents( input );\n\n\t// Accommodate leading slash, matching autocomplete expectations.\n\t// Input: \"/media\"\n\tinput = input.replace( /^\\//, '' );\n\n\t// Lowercase.\n\t// Input: \"MEDIA\"\n\tinput = input.toLowerCase();\n\n\treturn input;\n}\n\n/**\n * Converts the search term into a list of normalized terms.\n *\n * @param {string} input The search term to normalize.\n *\n * @return {string[]} The normalized list of search terms.\n */\nexport const getNormalizedSearchTerms = ( input = '' ) => {\n\treturn extractWords( normalizeSearchInput( input ) );\n};\n\nconst removeMatchingTerms = ( unmatchedTerms, unprocessedTerms ) => {\n\treturn unmatchedTerms.filter(\n\t\t( term ) =>\n\t\t\t! getNormalizedSearchTerms( unprocessedTerms ).some(\n\t\t\t\t( unprocessedTerm ) => unprocessedTerm.includes( term )\n\t\t\t)\n\t);\n};\n\n/**\n * Filters an item list given a search term.\n *\n * @param {Array} items Item list\n * @param {string} searchInput Search input.\n * @param {Object} config Search Config.\n *\n * @return {Array} Filtered item list.\n */\nexport const searchItems = ( items = [], searchInput = '', config = {} ) => {\n\tconst normalizedSearchTerms = getNormalizedSearchTerms( searchInput );\n\tconst onlyFilterByCategory = ! normalizedSearchTerms.length;\n\tconst searchRankConfig = { ...config, onlyFilterByCategory };\n\n\t// If we aren't filtering on search terms, matching on category is satisfactory.\n\t// If we are, then we need more than a category match.\n\tconst threshold = onlyFilterByCategory ? 0 : 1;\n\n\tconst rankedItems = items\n\t\t.map( ( item ) => {\n\t\t\treturn [\n\t\t\t\titem,\n\t\t\t\tgetItemSearchRank( item, searchInput, searchRankConfig ),\n\t\t\t];\n\t\t} )\n\t\t.filter( ( [ , rank ] ) => rank > threshold );\n\n\t// If we didn't have terms to search on, there's no point sorting.\n\tif ( normalizedSearchTerms.length === 0 ) {\n\t\treturn rankedItems.map( ( [ item ] ) => item );\n\t}\n\n\trankedItems.sort( ( [ , rank1 ], [ , rank2 ] ) => rank2 - rank1 );\n\treturn rankedItems.map( ( [ item ] ) => item );\n};\n\n/**\n * Get the search rank for a given item and a specific search term.\n * The better the match, the higher the rank.\n * If the rank equals 0, it should be excluded from the results.\n *\n * @param {Object} item Item to filter.\n * @param {string} searchTerm Search term.\n * @param {Object} config Search Config.\n *\n * @return {number} Search Rank.\n */\nfunction getItemSearchRank( item, searchTerm, config ) {\n\tconst {\n\t\tcategoryId,\n\t\tgetName = defaultGetName,\n\t\tgetTitle = defaultGetTitle,\n\t\tgetDescription = defaultGetDescription,\n\t\tgetKeywords = defaultGetKeywords,\n\t\thasCategory = defaultHasCategory,\n\t\tonlyFilterByCategory,\n\t} = config;\n\n\tlet rank = hasCategory( item, categoryId ) ? 1 : 0;\n\n\t// If an item doesn't belong to the current category or we don't have\n\t// search terms to filter by, return the initial rank value.\n\tif ( ! rank || onlyFilterByCategory ) {\n\t\treturn rank;\n\t}\n\n\tconst name = getName( item );\n\tconst title = getTitle( item );\n\tconst description = getDescription( item );\n\tconst keywords = getKeywords( item );\n\n\tconst normalizedSearchInput = normalizeSearchInput( searchTerm );\n\tconst normalizedTitle = normalizeSearchInput( title );\n\n\t// Prefers exact matches\n\t// Then prefers if the beginning of the title matches the search term\n\t// name, keywords, description matches come later.\n\tif ( normalizedSearchInput === normalizedTitle ) {\n\t\trank += 30;\n\t} else if ( normalizedTitle.startsWith( normalizedSearchInput ) ) {\n\t\trank += 20;\n\t} else {\n\t\tconst terms = [ name, title, description, ...keywords ].join( ' ' );\n\t\tconst normalizedSearchTerms = extractWords( normalizedSearchInput );\n\t\tconst unmatchedTerms = removeMatchingTerms(\n\t\t\tnormalizedSearchTerms,\n\t\t\tterms\n\t\t);\n\n\t\tif ( unmatchedTerms.length === 0 ) {\n\t\t\trank += 10;\n\t\t}\n\t}\n\n\treturn rank;\n}\n"]}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useLibrarySettings;
7
+
8
+ var _coreData = require("@wordpress/core-data");
9
+
10
+ var _data = require("@wordpress/data");
11
+
12
+ var _element = require("@wordpress/element");
13
+
14
+ var _lockUnlock = require("../../lock-unlock");
15
+
16
+ var _store = require("../../store");
17
+
18
+ var _utils = require("./utils");
19
+
20
+ /**
21
+ * WordPress dependencies
22
+ */
23
+
24
+ /**
25
+ * Internal dependencies
26
+ */
27
+ function useLibrarySettings() {
28
+ var _storedSettings$__exp;
29
+
30
+ const storedSettings = (0, _data.useSelect)(select => {
31
+ const {
32
+ getSettings
33
+ } = (0, _lockUnlock.unlock)(select(_store.store));
34
+ return getSettings();
35
+ }, []);
36
+ const settingsBlockPatterns = (_storedSettings$__exp = storedSettings.__experimentalAdditionalBlockPatterns) !== null && _storedSettings$__exp !== void 0 ? _storedSettings$__exp : // WP 6.0
37
+ storedSettings.__experimentalBlockPatterns; // WP 5.9
38
+
39
+ const restBlockPatterns = (0, _data.useSelect)(select => select(_coreData.store).getBlockPatterns(), []);
40
+ const blockPatterns = (0, _element.useMemo)(() => [...(settingsBlockPatterns || []), ...(restBlockPatterns || [])].filter(_utils.filterOutDuplicatesByName), [settingsBlockPatterns, restBlockPatterns]);
41
+ const settings = (0, _element.useMemo)(() => {
42
+ const {
43
+ __experimentalAdditionalBlockPatterns,
44
+ ...restStoredSettings
45
+ } = storedSettings;
46
+ return { ...restStoredSettings,
47
+ __experimentalBlockPatterns: blockPatterns,
48
+ __unstableIsPreviewMode: true
49
+ };
50
+ }, [storedSettings, blockPatterns]);
51
+ return settings;
52
+ }
53
+ //# sourceMappingURL=use-library-settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/page-library/use-library-settings.js"],"names":["useLibrarySettings","storedSettings","select","getSettings","editSiteStore","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","coreStore","getBlockPatterns","blockPatterns","filter","filterOutDuplicatesByName","settings","restStoredSettings","__unstableIsPreviewMode"],"mappings":";;;;;;;AAGA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AAZA;AACA;AACA;;AAKA;AACA;AACA;AAKe,SAASA,kBAAT,GAA8B;AAAA;;AAC5C,QAAMC,cAAc,GAAG,qBAAaC,MAAF,IAAc;AAC/C,UAAM;AAAEC,MAAAA;AAAF,QAAkB,wBAAQD,MAAM,CAAEE,YAAF,CAAd,CAAxB;AACA,WAAOD,WAAW,EAAlB;AACA,GAHsB,EAGpB,EAHoB,CAAvB;AAKA,QAAME,qBAAqB,4BAC1BJ,cAAc,CAACK,qCADW,yEAC8B;AACxDL,EAAAA,cAAc,CAACM,2BAFhB,CAN4C,CAQC;;AAE7C,QAAMC,iBAAiB,GAAG,qBACvBN,MAAF,IAAcA,MAAM,CAAEO,eAAF,CAAN,CAAoBC,gBAApB,EADW,EAEzB,EAFyB,CAA1B;AAKA,QAAMC,aAAa,GAAG,sBACrB,MACC,CACC,IAAKN,qBAAqB,IAAI,EAA9B,CADD,EAEC,IAAKG,iBAAiB,IAAI,EAA1B,CAFD,EAGEI,MAHF,CAGUC,gCAHV,CAFoB,EAMrB,CAAER,qBAAF,EAAyBG,iBAAzB,CANqB,CAAtB;AASA,QAAMM,QAAQ,GAAG,sBAAS,MAAM;AAC/B,UAAM;AAAER,MAAAA,qCAAF;AAAyC,SAAGS;AAA5C,QACLd,cADD;AAGA,WAAO,EACN,GAAGc,kBADG;AAENR,MAAAA,2BAA2B,EAAEI,aAFvB;AAGNK,MAAAA,uBAAuB,EAAE;AAHnB,KAAP;AAKA,GATgB,EASd,CAAEf,cAAF,EAAkBU,aAAlB,CATc,CAAjB;AAWA,SAAOG,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { filterOutDuplicatesByName } from './utils';\n\nexport default function useLibrarySettings() {\n\tconst storedSettings = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\treturn getSettings();\n\t}, [] );\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\n\tconst restBlockPatterns = useSelect(\n\t\t( select ) => select( coreStore ).getBlockPatterns(),\n\t\t[]\n\t);\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t].filter( filterOutDuplicatesByName ),\n\t\t[ settingsBlockPatterns, restBlockPatterns ]\n\t);\n\n\tconst settings = useMemo( () => {\n\t\tconst { __experimentalAdditionalBlockPatterns, ...restStoredSettings } =\n\t\t\tstoredSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__unstableIsPreviewMode: true,\n\t\t};\n\t}, [ storedSettings, blockPatterns ] );\n\n\treturn settings;\n}\n"]}
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.usePatterns = exports.default = void 0;
7
+
8
+ var _blocks = require("@wordpress/blocks");
9
+
10
+ var _data = require("@wordpress/data");
11
+
12
+ var _coreData = require("@wordpress/core-data");
13
+
14
+ var _element = require("@wordpress/element");
15
+
16
+ var _utils = require("./utils");
17
+
18
+ var _lockUnlock = require("../../lock-unlock");
19
+
20
+ var _searchItems = require("./search-items");
21
+
22
+ var _store = require("../../store");
23
+
24
+ /**
25
+ * WordPress dependencies
26
+ */
27
+
28
+ /**
29
+ * Internal dependencies
30
+ */
31
+ const EMPTY_PATTERN_LIST = [];
32
+
33
+ const createTemplatePartId = (theme, slug) => theme && slug ? theme + '//' + slug : null;
34
+
35
+ const templatePartToPattern = templatePart => ({
36
+ blocks: (0, _blocks.parse)(templatePart.content.raw),
37
+ categories: [templatePart.area],
38
+ description: templatePart.description || '',
39
+ keywords: templatePart.keywords || [],
40
+ name: createTemplatePartId(templatePart.theme, templatePart.slug),
41
+ title: templatePart.title.rendered,
42
+ type: templatePart.type,
43
+ templatePart
44
+ });
45
+
46
+ const useTemplatePartsAsPatterns = (categoryId, postType = _utils.TEMPLATE_PARTS, filterValue = '') => {
47
+ const {
48
+ templateParts,
49
+ isResolving
50
+ } = (0, _data.useSelect)(select => {
51
+ if (postType !== _utils.TEMPLATE_PARTS) {
52
+ return {
53
+ templateParts: EMPTY_PATTERN_LIST,
54
+ isResolving: false
55
+ };
56
+ }
57
+
58
+ const {
59
+ getEntityRecords,
60
+ isResolving: _isResolving
61
+ } = select(_coreData.store);
62
+ const query = {
63
+ per_page: -1
64
+ };
65
+ const rawTemplateParts = getEntityRecords('postType', postType, query);
66
+ const partsAsPatterns = rawTemplateParts?.map(templatePart => templatePartToPattern(templatePart));
67
+ return {
68
+ templateParts: partsAsPatterns,
69
+ isResolving: _isResolving('getEntityRecords', ['postType', 'wp_template_part', query])
70
+ };
71
+ }, [postType]);
72
+ const filteredTemplateParts = (0, _element.useMemo)(() => {
73
+ if (!templateParts) {
74
+ return EMPTY_PATTERN_LIST;
75
+ }
76
+
77
+ return (0, _searchItems.searchItems)(templateParts, filterValue, {
78
+ categoryId,
79
+ hasCategory: (item, area) => item.templatePart.area === area
80
+ });
81
+ }, [templateParts, filterValue, categoryId]);
82
+ return {
83
+ templateParts: filteredTemplateParts,
84
+ isResolving
85
+ };
86
+ };
87
+
88
+ const useThemePatterns = (categoryId, postType = _utils.PATTERNS, filterValue = '') => {
89
+ const blockPatterns = (0, _data.useSelect)(select => {
90
+ var _settings$__experimen;
91
+
92
+ const {
93
+ getSettings
94
+ } = (0, _lockUnlock.unlock)(select(_store.store));
95
+ const settings = getSettings();
96
+ return (_settings$__experimen = settings.__experimentalAdditionalBlockPatterns) !== null && _settings$__experimen !== void 0 ? _settings$__experimen : settings.__experimentalBlockPatterns;
97
+ });
98
+ const restBlockPatterns = (0, _data.useSelect)(select => select(_coreData.store).getBlockPatterns());
99
+ const patterns = (0, _element.useMemo)(() => [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !_utils.CORE_PATTERN_SOURCES.includes(pattern.source)).filter(_utils.filterOutDuplicatesByName).map(pattern => ({ ...pattern,
100
+ keywords: pattern.keywords || [],
101
+ type: 'pattern',
102
+ blocks: (0, _blocks.parse)(pattern.content)
103
+ })), [blockPatterns, restBlockPatterns]);
104
+ const filteredPatterns = (0, _element.useMemo)(() => {
105
+ if (postType !== _utils.PATTERNS) {
106
+ return EMPTY_PATTERN_LIST;
107
+ }
108
+
109
+ return (0, _searchItems.searchItems)(patterns, filterValue, {
110
+ categoryId,
111
+ hasCategory: (item, currentCategory) => item.categories?.includes(currentCategory)
112
+ });
113
+ }, [patterns, filterValue, categoryId, postType]);
114
+ return filteredPatterns;
115
+ };
116
+
117
+ const reusableBlockToPattern = reusableBlock => ({
118
+ blocks: (0, _blocks.parse)(reusableBlock.content.raw),
119
+ categories: reusableBlock.wp_pattern,
120
+ id: reusableBlock.id,
121
+ name: reusableBlock.slug,
122
+ syncStatus: reusableBlock.meta?.sync_status,
123
+ title: reusableBlock.title.raw,
124
+ type: reusableBlock.type,
125
+ reusableBlock
126
+ });
127
+
128
+ const useUserPatterns = (categoryId, categoryType = _utils.PATTERNS, filterValue = '') => {
129
+ const postType = categoryType === _utils.PATTERNS ? _utils.USER_PATTERNS : categoryType;
130
+ const unfilteredPatterns = (0, _data.useSelect)(select => {
131
+ if (postType !== _utils.USER_PATTERNS || categoryId !== _utils.USER_PATTERN_CATEGORY) {
132
+ return EMPTY_PATTERN_LIST;
133
+ }
134
+
135
+ const {
136
+ getEntityRecords
137
+ } = select(_coreData.store);
138
+ const records = getEntityRecords('postType', postType, {
139
+ per_page: -1
140
+ });
141
+
142
+ if (!records) {
143
+ return EMPTY_PATTERN_LIST;
144
+ }
145
+
146
+ return records.map(record => reusableBlockToPattern(record));
147
+ }, [postType, categoryId]);
148
+ const filteredPatterns = (0, _element.useMemo)(() => {
149
+ if (!unfilteredPatterns.length) {
150
+ return EMPTY_PATTERN_LIST;
151
+ }
152
+
153
+ return (0, _searchItems.searchItems)(unfilteredPatterns, filterValue, {
154
+ // We exit user pattern retrieval early if we aren't in the
155
+ // catch-all category for user created patterns, so it has
156
+ // to be in the category.
157
+ hasCategory: () => true
158
+ });
159
+ }, [unfilteredPatterns, filterValue]);
160
+ const patterns = {
161
+ syncedPatterns: [],
162
+ unsyncedPatterns: []
163
+ };
164
+ filteredPatterns.forEach(pattern => {
165
+ if (pattern.syncStatus === _utils.SYNC_TYPES.full) {
166
+ patterns.syncedPatterns.push(pattern);
167
+ } else {
168
+ patterns.unsyncedPatterns.push(pattern);
169
+ }
170
+ });
171
+ return patterns;
172
+ };
173
+
174
+ const usePatterns = (categoryType, categoryId, filterValue) => {
175
+ const blockPatterns = useThemePatterns(categoryId, categoryType, filterValue);
176
+ const {
177
+ syncedPatterns = [],
178
+ unsyncedPatterns = []
179
+ } = useUserPatterns(categoryId, categoryType, filterValue);
180
+ const {
181
+ templateParts,
182
+ isResolving
183
+ } = useTemplatePartsAsPatterns(categoryId, categoryType, filterValue);
184
+ const patterns = {
185
+ syncedPatterns: [...templateParts, ...syncedPatterns],
186
+ unsyncedPatterns: [...blockPatterns, ...unsyncedPatterns]
187
+ };
188
+ return [patterns, isResolving];
189
+ };
190
+
191
+ exports.usePatterns = usePatterns;
192
+ var _default = usePatterns;
193
+ exports.default = _default;
194
+ //# sourceMappingURL=use-patterns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/page-library/use-patterns.js"],"names":["EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","categories","area","description","keywords","name","title","rendered","type","useTemplatePartsAsPatterns","categoryId","postType","TEMPLATE_PARTS","filterValue","templateParts","isResolving","select","getEntityRecords","_isResolving","coreStore","query","per_page","rawTemplateParts","partsAsPatterns","map","filteredTemplateParts","hasCategory","item","useThemePatterns","PATTERNS","blockPatterns","getSettings","editSiteStore","settings","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","patterns","filter","pattern","CORE_PATTERN_SOURCES","includes","source","filterOutDuplicatesByName","filteredPatterns","currentCategory","reusableBlockToPattern","reusableBlock","wp_pattern","id","syncStatus","meta","sync_status","useUserPatterns","categoryType","USER_PATTERNS","unfilteredPatterns","USER_PATTERN_CATEGORY","records","record","length","syncedPatterns","unsyncedPatterns","forEach","SYNC_TYPES","full","push","usePatterns"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tPATTERNS,\n\tSYNC_TYPES,\n\tTEMPLATE_PARTS,\n\tUSER_PATTERNS,\n\tUSER_PATTERN_CATEGORY,\n\tfilterOutDuplicatesByName,\n} from './utils';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tkeywords: templatePart.keywords || [],\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: templatePart.title.rendered,\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst useTemplatePartsAsPatterns = (\n\tcategoryId,\n\tpostType = TEMPLATE_PARTS,\n\tfilterValue = ''\n) => {\n\tconst { templateParts, isResolving } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( postType !== TEMPLATE_PARTS ) {\n\t\t\t\treturn {\n\t\t\t\t\ttemplateParts: EMPTY_PATTERN_LIST,\n\t\t\t\t\tisResolving: false,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst { getEntityRecords, isResolving: _isResolving } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst query = { per_page: -1 };\n\t\t\tconst rawTemplateParts = getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tquery\n\t\t\t);\n\t\t\tconst partsAsPatterns = rawTemplateParts?.map( ( templatePart ) =>\n\t\t\t\ttemplatePartToPattern( templatePart )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\ttemplateParts: partsAsPatterns,\n\t\t\t\tisResolving: _isResolving( 'getEntityRecords', [\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template_part',\n\t\t\t\t\tquery,\n\t\t\t\t] ),\n\t\t\t};\n\t\t},\n\t\t[ postType ]\n\t);\n\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tif ( ! templateParts ) {\n\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t}\n\n\t\treturn searchItems( templateParts, filterValue, {\n\t\t\tcategoryId,\n\t\t\thasCategory: ( item, area ) => item.templatePart.area === area,\n\t\t} );\n\t}, [ templateParts, filterValue, categoryId ] );\n\n\treturn { templateParts: filteredTemplateParts, isResolving };\n};\n\nconst useThemePatterns = (\n\tcategoryId,\n\tpostType = PATTERNS,\n\tfilterValue = ''\n) => {\n\tconst blockPatterns = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst settings = getSettings();\n\t\treturn (\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns\n\t\t);\n\t} );\n\n\tconst restBlockPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getBlockPatterns()\n\t);\n\n\tconst patterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]\n\t\t\t\t.filter(\n\t\t\t\t\t( pattern ) =>\n\t\t\t\t\t\t! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t\t)\n\t\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t\t...pattern,\n\t\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\t\ttype: 'pattern',\n\t\t\t\t\tblocks: parse( pattern.content ),\n\t\t\t\t} ) ),\n\t\t[ blockPatterns, restBlockPatterns ]\n\t);\n\n\tconst filteredPatterns = useMemo( () => {\n\t\tif ( postType !== PATTERNS ) {\n\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t}\n\n\t\treturn searchItems( patterns, filterValue, {\n\t\t\tcategoryId,\n\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t} );\n\t}, [ patterns, filterValue, categoryId, postType ] );\n\n\treturn filteredPatterns;\n};\n\nconst reusableBlockToPattern = ( reusableBlock ) => ( {\n\tblocks: parse( reusableBlock.content.raw ),\n\tcategories: reusableBlock.wp_pattern,\n\tid: reusableBlock.id,\n\tname: reusableBlock.slug,\n\tsyncStatus: reusableBlock.meta?.sync_status,\n\ttitle: reusableBlock.title.raw,\n\ttype: reusableBlock.type,\n\treusableBlock,\n} );\n\nconst useUserPatterns = (\n\tcategoryId,\n\tcategoryType = PATTERNS,\n\tfilterValue = ''\n) => {\n\tconst postType = categoryType === PATTERNS ? USER_PATTERNS : categoryType;\n\tconst unfilteredPatterns = useSelect(\n\t\t( select ) => {\n\t\t\tif (\n\t\t\t\tpostType !== USER_PATTERNS ||\n\t\t\t\tcategoryId !== USER_PATTERN_CATEGORY\n\t\t\t) {\n\t\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t\t}\n\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\tconst records = getEntityRecords( 'postType', postType, {\n\t\t\t\tper_page: -1,\n\t\t\t} );\n\n\t\t\tif ( ! records ) {\n\t\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t\t}\n\n\t\t\treturn records.map( ( record ) =>\n\t\t\t\treusableBlockToPattern( record )\n\t\t\t);\n\t\t},\n\t\t[ postType, categoryId ]\n\t);\n\n\tconst filteredPatterns = useMemo( () => {\n\t\tif ( ! unfilteredPatterns.length ) {\n\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t}\n\n\t\treturn searchItems( unfilteredPatterns, filterValue, {\n\t\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t\t// catch-all category for user created patterns, so it has\n\t\t\t// to be in the category.\n\t\t\thasCategory: () => true,\n\t\t} );\n\t}, [ unfilteredPatterns, filterValue ] );\n\n\tconst patterns = { syncedPatterns: [], unsyncedPatterns: [] };\n\n\tfilteredPatterns.forEach( ( pattern ) => {\n\t\tif ( pattern.syncStatus === SYNC_TYPES.full ) {\n\t\t\tpatterns.syncedPatterns.push( pattern );\n\t\t} else {\n\t\t\tpatterns.unsyncedPatterns.push( pattern );\n\t\t}\n\t} );\n\n\treturn patterns;\n};\n\nexport const usePatterns = ( categoryType, categoryId, filterValue ) => {\n\tconst blockPatterns = useThemePatterns(\n\t\tcategoryId,\n\t\tcategoryType,\n\t\tfilterValue\n\t);\n\n\tconst { syncedPatterns = [], unsyncedPatterns = [] } = useUserPatterns(\n\t\tcategoryId,\n\t\tcategoryType,\n\t\tfilterValue\n\t);\n\n\tconst { templateParts, isResolving } = useTemplatePartsAsPatterns(\n\t\tcategoryId,\n\t\tcategoryType,\n\t\tfilterValue\n\t);\n\n\tconst patterns = {\n\t\tsyncedPatterns: [ ...templateParts, ...syncedPatterns ],\n\t\tunsyncedPatterns: [ ...blockPatterns, ...unsyncedPatterns ],\n\t};\n\n\treturn [ patterns, isResolving ];\n};\n\nexport default usePatterns;\n"]}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.filterOutDuplicatesByName = exports.USER_PATTERN_CATEGORY = exports.USER_PATTERNS = exports.TEMPLATE_PARTS = exports.SYNC_TYPES = exports.PATTERNS = exports.DEFAULT_TYPE = exports.DEFAULT_CATEGORY = exports.CORE_PATTERN_SOURCES = void 0;
7
+ const DEFAULT_CATEGORY = 'header';
8
+ exports.DEFAULT_CATEGORY = DEFAULT_CATEGORY;
9
+ const DEFAULT_TYPE = 'wp_template_part';
10
+ exports.DEFAULT_TYPE = DEFAULT_TYPE;
11
+ const PATTERNS = 'pattern';
12
+ exports.PATTERNS = PATTERNS;
13
+ const TEMPLATE_PARTS = 'wp_template_part';
14
+ exports.TEMPLATE_PARTS = TEMPLATE_PARTS;
15
+ const USER_PATTERNS = 'wp_block';
16
+ exports.USER_PATTERNS = USER_PATTERNS;
17
+ const USER_PATTERN_CATEGORY = 'custom-patterns';
18
+ exports.USER_PATTERN_CATEGORY = USER_PATTERN_CATEGORY;
19
+ const CORE_PATTERN_SOURCES = ['core', 'pattern-directory/core', 'pattern-directory/featured', 'pattern-directory/theme'];
20
+ exports.CORE_PATTERN_SOURCES = CORE_PATTERN_SOURCES;
21
+ const SYNC_TYPES = {
22
+ full: 'fully',
23
+ unsynced: 'unsynced'
24
+ };
25
+ exports.SYNC_TYPES = SYNC_TYPES;
26
+
27
+ const filterOutDuplicatesByName = (currentItem, index, items) => index === items.findIndex(item => currentItem.name === item.name);
28
+
29
+ exports.filterOutDuplicatesByName = filterOutDuplicatesByName;
30
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/page-library/utils.js"],"names":["DEFAULT_CATEGORY","DEFAULT_TYPE","PATTERNS","TEMPLATE_PARTS","USER_PATTERNS","USER_PATTERN_CATEGORY","CORE_PATTERN_SOURCES","SYNC_TYPES","full","unsynced","filterOutDuplicatesByName","currentItem","index","items","findIndex","item","name"],"mappings":";;;;;;AAAO,MAAMA,gBAAgB,GAAG,QAAzB;;AACA,MAAMC,YAAY,GAAG,kBAArB;;AACA,MAAMC,QAAQ,GAAG,SAAjB;;AACA,MAAMC,cAAc,GAAG,kBAAvB;;AACA,MAAMC,aAAa,GAAG,UAAtB;;AACA,MAAMC,qBAAqB,GAAG,iBAA9B;;AAEA,MAAMC,oBAAoB,GAAG,CACnC,MADmC,EAEnC,wBAFmC,EAGnC,4BAHmC,EAInC,yBAJmC,CAA7B;;AAOA,MAAMC,UAAU,GAAG;AACzBC,EAAAA,IAAI,EAAE,OADmB;AAEzBC,EAAAA,QAAQ,EAAE;AAFe,CAAnB;;;AAKA,MAAMC,yBAAyB,GAAG,CAAEC,WAAF,EAAeC,KAAf,EAAsBC,KAAtB,KACxCD,KAAK,KAAKC,KAAK,CAACC,SAAN,CAAmBC,IAAF,IAAYJ,WAAW,CAACK,IAAZ,KAAqBD,IAAI,CAACC,IAAvD,CADJ","sourcesContent":["export const DEFAULT_CATEGORY = 'header';\nexport const DEFAULT_TYPE = 'wp_template_part';\nexport const PATTERNS = 'pattern';\nexport const TEMPLATE_PARTS = 'wp_template_part';\nexport const USER_PATTERNS = 'wp_block';\nexport const USER_PATTERN_CATEGORY = 'custom-patterns';\n\nexport const CORE_PATTERN_SOURCES = [\n\t'core',\n\t'pattern-directory/core',\n\t'pattern-directory/featured',\n\t'pattern-directory/theme',\n];\n\nexport const SYNC_TYPES = {\n\tfull: 'fully',\n\tunsynced: 'unsynced',\n};\n\nexport const filterOutDuplicatesByName = ( currentItem, index, items ) =>\n\tindex === items.findIndex( ( item ) => currentItem.name === item.name );\n"]}