@wordpress/edit-site 6.32.0 → 6.32.1-next.b8c8708f3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (991) hide show
  1. package/build/components/add-new-pattern/index.js +153 -141
  2. package/build/components/add-new-pattern/index.js.map +7 -1
  3. package/build/components/add-new-post/index.js +114 -89
  4. package/build/components/add-new-post/index.js.map +7 -1
  5. package/build/components/add-new-template/add-custom-generic-template-modal-content.js +80 -60
  6. package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +7 -1
  7. package/build/components/add-new-template/add-custom-template-modal-content.js +284 -207
  8. package/build/components/add-new-template/add-custom-template-modal-content.js.map +7 -1
  9. package/build/components/add-new-template/index.js +309 -248
  10. package/build/components/add-new-template/index.js.map +7 -1
  11. package/build/components/add-new-template/utils.js +459 -446
  12. package/build/components/add-new-template/utils.js.map +7 -1
  13. package/build/components/app/index.js +72 -63
  14. package/build/components/app/index.js.map +7 -1
  15. package/build/components/block-editor/use-editor-iframe-props.js +63 -66
  16. package/build/components/block-editor/use-editor-iframe-props.js.map +7 -1
  17. package/build/components/block-editor/use-navigate-to-entity-record.js +34 -22
  18. package/build/components/block-editor/use-navigate-to-entity-record.js.map +7 -1
  19. package/build/components/block-editor/use-site-editor-settings.js +64 -51
  20. package/build/components/block-editor/use-site-editor-settings.js.map +7 -1
  21. package/build/components/canvas-loader/index.js +41 -56
  22. package/build/components/canvas-loader/index.js.map +7 -1
  23. package/build/components/dataviews-actions/index.js +96 -83
  24. package/build/components/dataviews-actions/index.js.map +7 -1
  25. package/build/components/editor/index.js +288 -235
  26. package/build/components/editor/index.js.map +7 -1
  27. package/build/components/editor/site-preview.js +55 -42
  28. package/build/components/editor/site-preview.js.map +7 -1
  29. package/build/components/editor/use-adapt-editor-to-canvas.js +49 -31
  30. package/build/components/editor/use-adapt-editor-to-canvas.js.map +7 -1
  31. package/build/components/editor/use-editor-title.js +79 -61
  32. package/build/components/editor/use-editor-title.js.map +7 -1
  33. package/build/components/editor/use-resolve-edited-entity.js +112 -140
  34. package/build/components/editor/use-resolve-edited-entity.js.map +7 -1
  35. package/build/components/editor-canvas-container/index.js +101 -91
  36. package/build/components/editor-canvas-container/index.js.map +7 -1
  37. package/build/components/global-styles/background-panel.js +46 -39
  38. package/build/components/global-styles/background-panel.js.map +7 -1
  39. package/build/components/global-styles/block-preview-panel.js +58 -52
  40. package/build/components/global-styles/block-preview-panel.js.map +7 -1
  41. package/build/components/global-styles/color-indicator-wrapper.js +47 -26
  42. package/build/components/global-styles/color-indicator-wrapper.js.map +7 -1
  43. package/build/components/global-styles/color-palette-panel.js +130 -81
  44. package/build/components/global-styles/color-palette-panel.js.map +7 -1
  45. package/build/components/global-styles/confirm-reset-shadow-dialog.js +38 -22
  46. package/build/components/global-styles/confirm-reset-shadow-dialog.js.map +7 -1
  47. package/build/components/global-styles/dimensions-panel.js +46 -41
  48. package/build/components/global-styles/dimensions-panel.js.map +7 -1
  49. package/build/components/global-styles/font-families.js +106 -102
  50. package/build/components/global-styles/font-families.js.map +7 -1
  51. package/build/components/global-styles/font-family-item.js +41 -43
  52. package/build/components/global-styles/font-family-item.js.map +7 -1
  53. package/build/components/global-styles/font-library-modal/collection-font-variant.js +55 -39
  54. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +7 -1
  55. package/build/components/global-styles/font-library-modal/context.js +228 -243
  56. package/build/components/global-styles/font-library-modal/context.js.map +7 -1
  57. package/build/components/global-styles/font-library-modal/font-card.js +70 -59
  58. package/build/components/global-styles/font-library-modal/font-card.js.map +7 -1
  59. package/build/components/global-styles/font-library-modal/font-collection.js +407 -321
  60. package/build/components/global-styles/font-library-modal/font-collection.js.map +7 -1
  61. package/build/components/global-styles/font-library-modal/font-demo.js +54 -50
  62. package/build/components/global-styles/font-library-modal/font-demo.js.map +7 -1
  63. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +52 -44
  64. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +7 -1
  65. package/build/components/global-styles/font-library-modal/index.js +90 -87
  66. package/build/components/global-styles/font-library-modal/index.js.map +7 -1
  67. package/build/components/global-styles/font-library-modal/installed-fonts.js +369 -255
  68. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +7 -1
  69. package/build/components/global-styles/font-library-modal/library-font-details.js +60 -42
  70. package/build/components/global-styles/font-library-modal/library-font-details.js.map +7 -1
  71. package/build/components/global-styles/font-library-modal/library-font-variant.js +64 -49
  72. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +7 -1
  73. package/build/components/global-styles/font-library-modal/resolvers.js +64 -31
  74. package/build/components/global-styles/font-library-modal/resolvers.js.map +7 -1
  75. package/build/components/global-styles/font-library-modal/upload-fonts.js +133 -145
  76. package/build/components/global-styles/font-library-modal/upload-fonts.js.map +7 -1
  77. package/build/components/global-styles/font-library-modal/utils/constants.js +45 -24
  78. package/build/components/global-styles/font-library-modal/utils/constants.js.map +7 -1
  79. package/build/components/global-styles/font-library-modal/utils/filter-fonts.js +30 -27
  80. package/build/components/global-styles/font-library-modal/utils/filter-fonts.js.map +7 -1
  81. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js +41 -13
  82. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js.map +7 -1
  83. package/build/components/global-styles/font-library-modal/utils/index.js +127 -161
  84. package/build/components/global-styles/font-library-modal/utils/index.js.map +7 -1
  85. package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js +25 -18
  86. package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +7 -1
  87. package/build/components/global-styles/font-library-modal/utils/preview-styles.js +55 -74
  88. package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +7 -1
  89. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js +32 -16
  90. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +7 -1
  91. package/build/components/global-styles/font-library-modal/utils/toggleFont.js +43 -72
  92. package/build/components/global-styles/font-library-modal/utils/toggleFont.js.map +7 -1
  93. package/build/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js +44 -23
  94. package/build/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js.map +7 -1
  95. package/build/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js +38 -22
  96. package/build/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js.map +7 -1
  97. package/build/components/global-styles/font-sizes/font-size-preview.js +42 -35
  98. package/build/components/global-styles/font-sizes/font-size-preview.js.map +7 -1
  99. package/build/components/global-styles/font-sizes/font-size.js +207 -170
  100. package/build/components/global-styles/font-sizes/font-size.js.map +7 -1
  101. package/build/components/global-styles/font-sizes/font-sizes-count.js +46 -45
  102. package/build/components/global-styles/font-sizes/font-sizes-count.js.map +7 -1
  103. package/build/components/global-styles/font-sizes/font-sizes.js +199 -136
  104. package/build/components/global-styles/font-sizes/font-sizes.js.map +7 -1
  105. package/build/components/global-styles/font-sizes/rename-font-size-dialog.js +81 -58
  106. package/build/components/global-styles/font-sizes/rename-font-size-dialog.js.map +7 -1
  107. package/build/components/global-styles/gradients-palette-panel.js +140 -85
  108. package/build/components/global-styles/gradients-palette-panel.js.map +7 -1
  109. package/build/components/global-styles/header.js +51 -48
  110. package/build/components/global-styles/header.js.map +7 -1
  111. package/build/components/global-styles/highlighted-colors.js +48 -40
  112. package/build/components/global-styles/highlighted-colors.js.map +7 -1
  113. package/build/components/global-styles/hooks.js +89 -68
  114. package/build/components/global-styles/hooks.js.map +7 -1
  115. package/build/components/global-styles/icon-with-current-color.js +50 -25
  116. package/build/components/global-styles/icon-with-current-color.js.map +7 -1
  117. package/build/components/global-styles/index.js +36 -11
  118. package/build/components/global-styles/index.js.map +7 -1
  119. package/build/components/global-styles/navigation-button.js +41 -42
  120. package/build/components/global-styles/navigation-button.js.map +7 -1
  121. package/build/components/global-styles/palette.js +82 -73
  122. package/build/components/global-styles/palette.js.map +7 -1
  123. package/build/components/global-styles/preset-colors.js +36 -24
  124. package/build/components/global-styles/preset-colors.js.map +7 -1
  125. package/build/components/global-styles/preview-colors.js +68 -46
  126. package/build/components/global-styles/preview-colors.js.map +7 -1
  127. package/build/components/global-styles/preview-styles.js +182 -136
  128. package/build/components/global-styles/preview-styles.js.map +7 -1
  129. package/build/components/global-styles/preview-typography.js +65 -44
  130. package/build/components/global-styles/preview-typography.js.map +7 -1
  131. package/build/components/global-styles/preview-wrapper.js +70 -85
  132. package/build/components/global-styles/preview-wrapper.js.map +7 -1
  133. package/build/components/global-styles/root-menu.js +53 -52
  134. package/build/components/global-styles/root-menu.js.map +7 -1
  135. package/build/components/global-styles/screen-background.js +54 -35
  136. package/build/components/global-styles/screen-background.js.map +7 -1
  137. package/build/components/global-styles/screen-block-list.js +129 -118
  138. package/build/components/global-styles/screen-block-list.js.map +7 -1
  139. package/build/components/global-styles/screen-block.js +185 -182
  140. package/build/components/global-styles/screen-block.js.map +7 -1
  141. package/build/components/global-styles/screen-color-palette.js +61 -56
  142. package/build/components/global-styles/screen-color-palette.js.map +7 -1
  143. package/build/components/global-styles/screen-colors.js +64 -40
  144. package/build/components/global-styles/screen-colors.js.map +7 -1
  145. package/build/components/global-styles/screen-css.js +80 -50
  146. package/build/components/global-styles/screen-css.js.map +7 -1
  147. package/build/components/global-styles/screen-layout.js +45 -32
  148. package/build/components/global-styles/screen-layout.js.map +7 -1
  149. package/build/components/global-styles/screen-revisions/index.js +144 -116
  150. package/build/components/global-styles/screen-revisions/index.js.map +7 -1
  151. package/build/components/global-styles/screen-revisions/revisions-buttons.js +165 -166
  152. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +7 -1
  153. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +93 -81
  154. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +7 -1
  155. package/build/components/global-styles/screen-root.js +93 -84
  156. package/build/components/global-styles/screen-root.js.map +7 -1
  157. package/build/components/global-styles/screen-shadows.js +43 -16
  158. package/build/components/global-styles/screen-shadows.js.map +7 -1
  159. package/build/components/global-styles/screen-style-variations.js +64 -44
  160. package/build/components/global-styles/screen-style-variations.js.map +7 -1
  161. package/build/components/global-styles/screen-typography-element.js +146 -93
  162. package/build/components/global-styles/screen-typography-element.js.map +7 -1
  163. package/build/components/global-styles/screen-typography.js +64 -40
  164. package/build/components/global-styles/screen-typography.js.map +7 -1
  165. package/build/components/global-styles/shadow-utils.js +75 -180
  166. package/build/components/global-styles/shadow-utils.js.map +7 -1
  167. package/build/components/global-styles/shadows-edit-panel.js +433 -358
  168. package/build/components/global-styles/shadows-edit-panel.js.map +7 -1
  169. package/build/components/global-styles/shadows-panel.js +178 -131
  170. package/build/components/global-styles/shadows-panel.js.map +7 -1
  171. package/build/components/global-styles/size-control/index.js +66 -76
  172. package/build/components/global-styles/size-control/index.js.map +7 -1
  173. package/build/components/global-styles/style-variations-container.js +114 -102
  174. package/build/components/global-styles/style-variations-container.js.map +7 -1
  175. package/build/components/global-styles/subtitle.js +34 -21
  176. package/build/components/global-styles/subtitle.js.map +7 -1
  177. package/build/components/global-styles/typeset.js +73 -75
  178. package/build/components/global-styles/typeset.js.map +7 -1
  179. package/build/components/global-styles/typography-elements.js +109 -86
  180. package/build/components/global-styles/typography-elements.js.map +7 -1
  181. package/build/components/global-styles/typography-example.js +66 -65
  182. package/build/components/global-styles/typography-example.js.map +7 -1
  183. package/build/components/global-styles/typography-panel.js +57 -39
  184. package/build/components/global-styles/typography-panel.js.map +7 -1
  185. package/build/components/global-styles/typography-preview.js +73 -53
  186. package/build/components/global-styles/typography-preview.js.map +7 -1
  187. package/build/components/global-styles/ui.js +282 -314
  188. package/build/components/global-styles/ui.js.map +7 -1
  189. package/build/components/global-styles/utils.js +45 -31
  190. package/build/components/global-styles/utils.js.map +7 -1
  191. package/build/components/global-styles/variations/variation.js +90 -74
  192. package/build/components/global-styles/variations/variation.js.map +7 -1
  193. package/build/components/global-styles/variations/variations-color.js +52 -41
  194. package/build/components/global-styles/variations/variations-color.js.map +7 -1
  195. package/build/components/global-styles/variations/variations-panel.js +61 -51
  196. package/build/components/global-styles/variations/variations-panel.js.map +7 -1
  197. package/build/components/global-styles/variations/variations-typography.js +69 -49
  198. package/build/components/global-styles/variations/variations-typography.js.map +7 -1
  199. package/build/components/global-styles-renderer/index.js +39 -33
  200. package/build/components/global-styles-renderer/index.js.map +7 -1
  201. package/build/components/global-styles-sidebar/default-sidebar.js +53 -40
  202. package/build/components/global-styles-sidebar/default-sidebar.js.map +7 -1
  203. package/build/components/global-styles-sidebar/index.js +164 -141
  204. package/build/components/global-styles-sidebar/index.js.map +7 -1
  205. package/build/components/layout/animation.js +53 -78
  206. package/build/components/layout/animation.js.map +7 -1
  207. package/build/components/layout/hooks.js +40 -35
  208. package/build/components/layout/hooks.js.map +7 -1
  209. package/build/components/layout/index.js +220 -199
  210. package/build/components/layout/index.js.map +7 -1
  211. package/build/components/media/index.js +31 -26
  212. package/build/components/media/index.js.map +7 -1
  213. package/build/components/more-menu/index.js +45 -28
  214. package/build/components/more-menu/index.js.map +7 -1
  215. package/build/components/more-menu/site-export.js +69 -44
  216. package/build/components/more-menu/site-export.js.map +7 -1
  217. package/build/components/more-menu/welcome-guide-menu-item.js +29 -21
  218. package/build/components/more-menu/welcome-guide-menu-item.js.map +7 -1
  219. package/build/components/page-patterns/actions.js +82 -0
  220. package/build/components/page-patterns/actions.js.map +7 -0
  221. package/build/components/page-patterns/delete-category-menu-item.js +94 -82
  222. package/build/components/page-patterns/delete-category-menu-item.js.map +7 -1
  223. package/build/components/page-patterns/fields.js +135 -123
  224. package/build/components/page-patterns/fields.js.map +7 -1
  225. package/build/components/page-patterns/index.js +182 -148
  226. package/build/components/page-patterns/index.js.map +7 -1
  227. package/build/components/page-patterns/rename-category-menu-item.js +67 -62
  228. package/build/components/page-patterns/rename-category-menu-item.js.map +7 -1
  229. package/build/components/page-patterns/search-items.js +65 -89
  230. package/build/components/page-patterns/search-items.js.map +7 -1
  231. package/build/components/page-patterns/use-pattern-settings.js +45 -35
  232. package/build/components/page-patterns/use-pattern-settings.js.map +7 -1
  233. package/build/components/page-patterns/use-patterns.js +266 -200
  234. package/build/components/page-patterns/use-patterns.js.map +7 -1
  235. package/build/components/page-patterns/utils.js +27 -7
  236. package/build/components/page-patterns/utils.js.map +7 -1
  237. package/build/components/page-templates/fields.js +165 -159
  238. package/build/components/page-templates/fields.js.map +7 -1
  239. package/build/components/page-templates/hooks.js +66 -64
  240. package/build/components/page-templates/hooks.js.map +7 -1
  241. package/build/components/page-templates/index.js +211 -207
  242. package/build/components/page-templates/index.js.map +7 -1
  243. package/build/components/page-templates/view-utils.js +67 -0
  244. package/build/components/page-templates/view-utils.js.map +7 -0
  245. package/build/components/pagination/index.js +119 -82
  246. package/build/components/pagination/index.js.map +7 -1
  247. package/build/components/plugin-template-setting-panel/index.js +49 -56
  248. package/build/components/plugin-template-setting-panel/index.js.map +7 -1
  249. package/build/components/post-edit/index.js +171 -149
  250. package/build/components/post-edit/index.js.map +7 -1
  251. package/build/components/post-list/index.js +230 -301
  252. package/build/components/post-list/index.js.map +7 -1
  253. package/build/components/post-list/view-utils.js +167 -0
  254. package/build/components/post-list/view-utils.js.map +7 -0
  255. package/build/components/posts-app/index.js +44 -32
  256. package/build/components/posts-app/index.js.map +7 -1
  257. package/build/components/posts-app-routes/index.js +36 -25
  258. package/build/components/posts-app-routes/index.js.map +7 -1
  259. package/build/components/posts-app-routes/post-item.js +54 -35
  260. package/build/components/posts-app-routes/post-item.js.map +7 -1
  261. package/build/components/posts-app-routes/posts.js +91 -76
  262. package/build/components/posts-app-routes/posts.js.map +7 -1
  263. package/build/components/resizable-frame/index.js +200 -224
  264. package/build/components/resizable-frame/index.js.map +7 -1
  265. package/build/components/revisions/index.js +102 -71
  266. package/build/components/revisions/index.js.map +7 -1
  267. package/build/components/routes/use-title.js +45 -35
  268. package/build/components/routes/use-title.js.map +7 -1
  269. package/build/components/save-button/index.js +113 -111
  270. package/build/components/save-button/index.js.map +7 -1
  271. package/build/components/save-hub/index.js +52 -40
  272. package/build/components/save-hub/index.js.map +7 -1
  273. package/build/components/save-keyboard-shortcut/index.js +46 -52
  274. package/build/components/save-keyboard-shortcut/index.js.map +7 -1
  275. package/build/components/save-panel/index.js +155 -136
  276. package/build/components/save-panel/index.js.map +7 -1
  277. package/build/components/sidebar/index.js +81 -79
  278. package/build/components/sidebar/index.js.map +7 -1
  279. package/build/components/sidebar-button/index.js +43 -22
  280. package/build/components/sidebar-button/index.js.map +7 -1
  281. package/build/components/sidebar-dataviews/dataview-item.js +68 -55
  282. package/build/components/sidebar-dataviews/dataview-item.js.map +7 -1
  283. package/build/components/sidebar-dataviews/index.js +68 -54
  284. package/build/components/sidebar-dataviews/index.js.map +7 -1
  285. package/build/components/sidebar-global-styles-wrapper/index.js +125 -111
  286. package/build/components/sidebar-global-styles-wrapper/index.js.map +7 -1
  287. package/build/components/sidebar-navigation-item/index.js +79 -62
  288. package/build/components/sidebar-navigation-item/index.js.map +7 -1
  289. package/build/components/sidebar-navigation-screen/index.js +129 -104
  290. package/build/components/sidebar-navigation-screen/index.js.map +7 -1
  291. package/build/components/sidebar-navigation-screen-details-footer/index.js +63 -53
  292. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +7 -1
  293. package/build/components/sidebar-navigation-screen-global-styles/content.js +50 -33
  294. package/build/components/sidebar-navigation-screen-global-styles/content.js.map +7 -1
  295. package/build/components/sidebar-navigation-screen-global-styles/index.js +94 -81
  296. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +7 -1
  297. package/build/components/sidebar-navigation-screen-main/index.js +141 -90
  298. package/build/components/sidebar-navigation-screen-main/index.js.map +7 -1
  299. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +40 -29
  300. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +7 -1
  301. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +124 -91
  302. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +7 -1
  303. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +116 -83
  304. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +7 -1
  305. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +57 -48
  306. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +7 -1
  307. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +80 -66
  308. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +7 -1
  309. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +64 -38
  310. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +7 -1
  311. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +125 -96
  312. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +7 -1
  313. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +33 -19
  314. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +7 -1
  315. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js +30 -16
  316. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js.map +7 -1
  317. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +119 -105
  318. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +7 -1
  319. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +130 -121
  320. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +7 -1
  321. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +106 -88
  322. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +7 -1
  323. package/build/components/sidebar-navigation-screen-patterns/category-item.js +44 -21
  324. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +7 -1
  325. package/build/components/sidebar-navigation-screen-patterns/index.js +129 -106
  326. package/build/components/sidebar-navigation-screen-patterns/index.js.map +7 -1
  327. package/build/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js +36 -25
  328. package/build/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js.map +7 -1
  329. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +81 -70
  330. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +7 -1
  331. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +42 -32
  332. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +7 -1
  333. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +41 -28
  334. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +7 -1
  335. package/build/components/sidebar-navigation-screen-templates-browse/content.js +95 -76
  336. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +7 -1
  337. package/build/components/sidebar-navigation-screen-templates-browse/index.js +48 -27
  338. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +7 -1
  339. package/build/components/sidebar-navigation-screen-unsupported/index.js +28 -20
  340. package/build/components/sidebar-navigation-screen-unsupported/index.js.map +7 -1
  341. package/build/components/site-editor-routes/home.js +50 -32
  342. package/build/components/site-editor-routes/home.js.map +7 -1
  343. package/build/components/site-editor-routes/index.js +62 -36
  344. package/build/components/site-editor-routes/index.js.map +7 -1
  345. package/build/components/site-editor-routes/navigation-item.js +55 -49
  346. package/build/components/site-editor-routes/navigation-item.js.map +7 -1
  347. package/build/components/site-editor-routes/navigation.js +55 -49
  348. package/build/components/site-editor-routes/navigation.js.map +7 -1
  349. package/build/components/site-editor-routes/notfound.js +54 -34
  350. package/build/components/site-editor-routes/notfound.js.map +7 -1
  351. package/build/components/site-editor-routes/page-item.js +58 -41
  352. package/build/components/site-editor-routes/page-item.js.map +7 -1
  353. package/build/components/site-editor-routes/pages.js +96 -86
  354. package/build/components/site-editor-routes/pages.js.map +7 -1
  355. package/build/components/site-editor-routes/pattern-item.js +48 -26
  356. package/build/components/site-editor-routes/pattern-item.js.map +7 -1
  357. package/build/components/site-editor-routes/patterns.js +51 -36
  358. package/build/components/site-editor-routes/patterns.js.map +7 -1
  359. package/build/components/site-editor-routes/stylebook.js +60 -43
  360. package/build/components/site-editor-routes/stylebook.js.map +7 -1
  361. package/build/components/site-editor-routes/styles.js +58 -46
  362. package/build/components/site-editor-routes/styles.js.map +7 -1
  363. package/build/components/site-editor-routes/template-item.js +54 -34
  364. package/build/components/site-editor-routes/template-item.js.map +7 -1
  365. package/build/components/site-editor-routes/template-part-item.js +45 -21
  366. package/build/components/site-editor-routes/template-part-item.js.map +7 -1
  367. package/build/components/site-editor-routes/templates.js +69 -44
  368. package/build/components/site-editor-routes/templates.js.map +7 -1
  369. package/build/components/site-editor-routes/utils.js +27 -13
  370. package/build/components/site-editor-routes/utils.js.map +7 -1
  371. package/build/components/site-hub/index.js +233 -222
  372. package/build/components/site-hub/index.js.map +7 -1
  373. package/build/components/site-icon/index.js +61 -49
  374. package/build/components/site-icon/index.js.map +7 -1
  375. package/build/components/style-book/categories.js +61 -52
  376. package/build/components/style-book/categories.js.map +7 -1
  377. package/build/components/style-book/color-examples.js +54 -40
  378. package/build/components/style-book/color-examples.js.map +7 -1
  379. package/build/components/style-book/constants.js +218 -144
  380. package/build/components/style-book/constants.js.map +7 -1
  381. package/build/components/style-book/duotone-examples.js +54 -40
  382. package/build/components/style-book/duotone-examples.js.map +7 -1
  383. package/build/components/style-book/examples.js +145 -120
  384. package/build/components/style-book/examples.js.map +7 -1
  385. package/build/components/style-book/index.js +454 -409
  386. package/build/components/style-book/index.js.map +7 -1
  387. package/build/components/style-book/types.js +16 -5
  388. package/build/components/style-book/types.js.map +7 -1
  389. package/build/components/welcome-guide/editor.js +87 -60
  390. package/build/components/welcome-guide/editor.js.map +7 -1
  391. package/build/components/welcome-guide/image.js +34 -22
  392. package/build/components/welcome-guide/image.js.map +7 -1
  393. package/build/components/welcome-guide/index.js +44 -21
  394. package/build/components/welcome-guide/index.js.map +7 -1
  395. package/build/components/welcome-guide/page.js +76 -52
  396. package/build/components/welcome-guide/page.js.map +7 -1
  397. package/build/components/welcome-guide/styles.js +135 -102
  398. package/build/components/welcome-guide/styles.js.map +7 -1
  399. package/build/components/welcome-guide/template.js +71 -59
  400. package/build/components/welcome-guide/template.js.map +7 -1
  401. package/build/deprecated.js +56 -46
  402. package/build/deprecated.js.map +7 -1
  403. package/build/hooks/commands/use-common-commands.js +117 -119
  404. package/build/hooks/commands/use-common-commands.js.map +7 -1
  405. package/build/hooks/commands/use-set-command-context.js +40 -50
  406. package/build/hooks/commands/use-set-command-context.js.map +7 -1
  407. package/build/hooks/index.js +2 -3
  408. package/build/hooks/index.js.map +7 -1
  409. package/build/hooks/push-changes-to-global-styles/index.js +236 -251
  410. package/build/hooks/push-changes-to-global-styles/index.js.map +7 -1
  411. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +78 -111
  412. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +7 -1
  413. package/build/index.js +87 -112
  414. package/build/index.js.map +7 -1
  415. package/build/lock-unlock.js +31 -14
  416. package/build/lock-unlock.js.map +7 -1
  417. package/build/posts.js +67 -63
  418. package/build/posts.js.map +7 -1
  419. package/build/store/actions.js +199 -365
  420. package/build/store/actions.js.map +7 -1
  421. package/build/store/constants.js +27 -11
  422. package/build/store/constants.js.map +7 -1
  423. package/build/store/index.js +52 -30
  424. package/build/store/index.js.map +7 -1
  425. package/build/store/private-actions.js +34 -19
  426. package/build/store/private-actions.js.map +7 -1
  427. package/build/store/private-selectors.js +28 -13
  428. package/build/store/private-selectors.js.map +7 -1
  429. package/build/store/reducer.js +42 -57
  430. package/build/store/reducer.js.map +7 -1
  431. package/build/store/selectors.js +205 -301
  432. package/build/store/selectors.js.map +7 -1
  433. package/build/utils/constants.js +94 -53
  434. package/build/utils/constants.js.map +7 -1
  435. package/build/utils/get-filtered-template-parts.js +36 -42
  436. package/build/utils/get-filtered-template-parts.js.map +7 -1
  437. package/build/utils/is-previewing-theme.js +31 -13
  438. package/build/utils/is-previewing-theme.js.map +7 -1
  439. package/build/utils/is-template-removable.js +24 -17
  440. package/build/utils/is-template-removable.js.map +7 -1
  441. package/build/utils/is-template-revertable.js +24 -19
  442. package/build/utils/is-template-revertable.js.map +7 -1
  443. package/build/utils/set-nested-value.js +24 -25
  444. package/build/utils/set-nested-value.js.map +7 -1
  445. package/build/utils/template-part-create.js +1 -1
  446. package/build/utils/template-part-create.js.map +7 -1
  447. package/build/utils/use-activate-theme.js +40 -45
  448. package/build/utils/use-activate-theme.js.map +7 -1
  449. package/build/utils/use-actual-current-theme.js +47 -25
  450. package/build/utils/use-actual-current-theme.js.map +7 -1
  451. package/build-module/components/add-new-pattern/index.js +133 -127
  452. package/build-module/components/add-new-pattern/index.js.map +7 -1
  453. package/build-module/components/add-new-post/index.js +100 -82
  454. package/build-module/components/add-new-post/index.js.map +7 -1
  455. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js +63 -51
  456. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +7 -1
  457. package/build-module/components/add-new-template/add-custom-template-modal-content.js +269 -196
  458. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +7 -1
  459. package/build-module/components/add-new-template/index.js +289 -219
  460. package/build-module/components/add-new-template/index.js.map +7 -1
  461. package/build-module/components/add-new-template/utils.js +430 -432
  462. package/build-module/components/add-new-template/utils.js.map +7 -1
  463. package/build-module/components/app/index.js +41 -51
  464. package/build-module/components/app/index.js.map +7 -1
  465. package/build-module/components/block-editor/use-editor-iframe-props.js +33 -58
  466. package/build-module/components/block-editor/use-editor-iframe-props.js.map +7 -1
  467. package/build-module/components/block-editor/use-navigate-to-entity-record.js +17 -18
  468. package/build-module/components/block-editor/use-navigate-to-entity-record.js.map +7 -1
  469. package/build-module/components/block-editor/use-site-editor-settings.js +28 -41
  470. package/build-module/components/block-editor/use-site-editor-settings.js.map +7 -1
  471. package/build-module/components/canvas-loader/index.js +25 -50
  472. package/build-module/components/canvas-loader/index.js.map +7 -1
  473. package/build-module/components/dataviews-actions/index.js +75 -78
  474. package/build-module/components/dataviews-actions/index.js.map +7 -1
  475. package/build-module/components/editor/index.js +261 -220
  476. package/build-module/components/editor/index.js.map +7 -1
  477. package/build-module/components/editor/site-preview.js +38 -38
  478. package/build-module/components/editor/site-preview.js.map +7 -1
  479. package/build-module/components/editor/use-adapt-editor-to-canvas.js +25 -24
  480. package/build-module/components/editor/use-adapt-editor-to-canvas.js.map +7 -1
  481. package/build-module/components/editor/use-editor-title.js +49 -53
  482. package/build-module/components/editor/use-editor-title.js.map +7 -1
  483. package/build-module/components/editor/use-resolve-edited-entity.js +89 -129
  484. package/build-module/components/editor/use-resolve-edited-entity.js.map +7 -1
  485. package/build-module/components/editor-canvas-container/index.js +79 -80
  486. package/build-module/components/editor-canvas-container/index.js.map +7 -1
  487. package/build-module/components/global-styles/background-panel.js +25 -35
  488. package/build-module/components/global-styles/background-panel.js.map +7 -1
  489. package/build-module/components/global-styles/block-preview-panel.js +36 -43
  490. package/build-module/components/global-styles/block-preview-panel.js.map +7 -1
  491. package/build-module/components/global-styles/color-indicator-wrapper.js +19 -20
  492. package/build-module/components/global-styles/color-indicator-wrapper.js.map +7 -1
  493. package/build-module/components/global-styles/color-palette-panel.js +105 -74
  494. package/build-module/components/global-styles/color-palette-panel.js.map +7 -1
  495. package/build-module/components/global-styles/confirm-reset-shadow-dialog.js +20 -17
  496. package/build-module/components/global-styles/confirm-reset-shadow-dialog.js.map +7 -1
  497. package/build-module/components/global-styles/dimensions-panel.js +26 -34
  498. package/build-module/components/global-styles/dimensions-panel.js.map +7 -1
  499. package/build-module/components/global-styles/font-families.js +86 -93
  500. package/build-module/components/global-styles/font-families.js.map +7 -1
  501. package/build-module/components/global-styles/font-family-item.js +26 -37
  502. package/build-module/components/global-styles/font-family-item.js.map +7 -1
  503. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +26 -32
  504. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +7 -1
  505. package/build-module/components/global-styles/font-library-modal/context.js +203 -224
  506. package/build-module/components/global-styles/font-library-modal/context.js.map +7 -1
  507. package/build-module/components/global-styles/font-library-modal/font-card.js +48 -52
  508. package/build-module/components/global-styles/font-library-modal/font-card.js.map +7 -1
  509. package/build-module/components/global-styles/font-library-modal/font-collection.js +397 -302
  510. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +7 -1
  511. package/build-module/components/global-styles/font-library-modal/font-demo.js +32 -38
  512. package/build-module/components/global-styles/font-library-modal/font-demo.js.map +7 -1
  513. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +41 -39
  514. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +7 -1
  515. package/build-module/components/global-styles/font-library-modal/index.js +65 -81
  516. package/build-module/components/global-styles/font-library-modal/index.js.map +7 -1
  517. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +354 -243
  518. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +7 -1
  519. package/build-module/components/global-styles/font-library-modal/library-font-details.js +35 -36
  520. package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +7 -1
  521. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +35 -42
  522. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +7 -1
  523. package/build-module/components/global-styles/font-library-modal/resolvers.js +27 -20
  524. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +7 -1
  525. package/build-module/components/global-styles/font-library-modal/upload-fonts.js +111 -135
  526. package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +7 -1
  527. package/build-module/components/global-styles/font-library-modal/utils/constants.js +21 -19
  528. package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +7 -1
  529. package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js +13 -24
  530. package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js.map +7 -1
  531. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js +20 -10
  532. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js.map +7 -1
  533. package/build-module/components/global-styles/font-library-modal/utils/index.js +102 -154
  534. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +7 -1
  535. package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js +8 -14
  536. package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +7 -1
  537. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js +34 -71
  538. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +7 -1
  539. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js +11 -13
  540. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +7 -1
  541. package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js +22 -69
  542. package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js.map +7 -1
  543. package/build-module/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js +26 -18
  544. package/build-module/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js.map +7 -1
  545. package/build-module/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js +20 -17
  546. package/build-module/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js.map +7 -1
  547. package/build-module/components/global-styles/font-sizes/font-size-preview.js +26 -29
  548. package/build-module/components/global-styles/font-sizes/font-size-preview.js.map +7 -1
  549. package/build-module/components/global-styles/font-sizes/font-size.js +185 -160
  550. package/build-module/components/global-styles/font-sizes/font-size.js.map +7 -1
  551. package/build-module/components/global-styles/font-sizes/font-sizes-count.js +23 -39
  552. package/build-module/components/global-styles/font-sizes/font-sizes-count.js.map +7 -1
  553. package/build-module/components/global-styles/font-sizes/font-sizes.js +184 -128
  554. package/build-module/components/global-styles/font-sizes/font-sizes.js.map +7 -1
  555. package/build-module/components/global-styles/font-sizes/rename-font-size-dialog.js +68 -52
  556. package/build-module/components/global-styles/font-sizes/rename-font-size-dialog.js.map +7 -1
  557. package/build-module/components/global-styles/gradients-palette-panel.js +117 -79
  558. package/build-module/components/global-styles/gradients-palette-panel.js.map +7 -1
  559. package/build-module/components/global-styles/header.js +40 -43
  560. package/build-module/components/global-styles/header.js.map +7 -1
  561. package/build-module/components/global-styles/highlighted-colors.js +31 -36
  562. package/build-module/components/global-styles/highlighted-colors.js.map +7 -1
  563. package/build-module/components/global-styles/hooks.js +56 -61
  564. package/build-module/components/global-styles/hooks.js.map +7 -1
  565. package/build-module/components/global-styles/icon-with-current-color.js +18 -19
  566. package/build-module/components/global-styles/icon-with-current-color.js.map +7 -1
  567. package/build-module/components/global-styles/index.js +5 -2
  568. package/build-module/components/global-styles/index.js.map +7 -1
  569. package/build-module/components/global-styles/navigation-button.js +23 -37
  570. package/build-module/components/global-styles/navigation-button.js.map +7 -1
  571. package/build-module/components/global-styles/palette.js +61 -67
  572. package/build-module/components/global-styles/palette.js.map +7 -1
  573. package/build-module/components/global-styles/preset-colors.js +19 -20
  574. package/build-module/components/global-styles/preset-colors.js.map +7 -1
  575. package/build-module/components/global-styles/preview-colors.js +43 -40
  576. package/build-module/components/global-styles/preview-colors.js.map +7 -1
  577. package/build-module/components/global-styles/preview-styles.js +158 -130
  578. package/build-module/components/global-styles/preview-styles.js.map +7 -1
  579. package/build-module/components/global-styles/preview-typography.js +37 -38
  580. package/build-module/components/global-styles/preview-typography.js.map +7 -1
  581. package/build-module/components/global-styles/preview-wrapper.js +51 -75
  582. package/build-module/components/global-styles/preview-wrapper.js.map +7 -1
  583. package/build-module/components/global-styles/root-menu.js +38 -44
  584. package/build-module/components/global-styles/root-menu.js.map +7 -1
  585. package/build-module/components/global-styles/screen-background.js +26 -29
  586. package/build-module/components/global-styles/screen-background.js.map +7 -1
  587. package/build-module/components/global-styles/screen-block-list.js +105 -105
  588. package/build-module/components/global-styles/screen-block-list.js.map +7 -1
  589. package/build-module/components/global-styles/screen-block.js +156 -169
  590. package/build-module/components/global-styles/screen-block.js.map +7 -1
  591. package/build-module/components/global-styles/screen-color-palette.js +33 -50
  592. package/build-module/components/global-styles/screen-color-palette.js.map +7 -1
  593. package/build-module/components/global-styles/screen-colors.js +35 -33
  594. package/build-module/components/global-styles/screen-colors.js.map +7 -1
  595. package/build-module/components/global-styles/screen-css.js +52 -44
  596. package/build-module/components/global-styles/screen-css.js.map +7 -1
  597. package/build-module/components/global-styles/screen-layout.js +17 -26
  598. package/build-module/components/global-styles/screen-layout.js.map +7 -1
  599. package/build-module/components/global-styles/screen-revisions/index.js +117 -105
  600. package/build-module/components/global-styles/screen-revisions/index.js.map +7 -1
  601. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +145 -158
  602. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +7 -1
  603. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +74 -75
  604. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +7 -1
  605. package/build-module/components/global-styles/screen-root.js +74 -77
  606. package/build-module/components/global-styles/screen-root.js.map +7 -1
  607. package/build-module/components/global-styles/screen-shadows.js +12 -11
  608. package/build-module/components/global-styles/screen-shadows.js.map +7 -1
  609. package/build-module/components/global-styles/screen-style-variations.js +38 -37
  610. package/build-module/components/global-styles/screen-style-variations.js.map +7 -1
  611. package/build-module/components/global-styles/screen-typography-element.js +122 -87
  612. package/build-module/components/global-styles/screen-typography-element.js.map +7 -1
  613. package/build-module/components/global-styles/screen-typography.js +36 -34
  614. package/build-module/components/global-styles/screen-typography.js.map +7 -1
  615. package/build-module/components/global-styles/shadow-utils.js +53 -176
  616. package/build-module/components/global-styles/shadow-utils.js.map +7 -1
  617. package/build-module/components/global-styles/shadows-edit-panel.js +426 -344
  618. package/build-module/components/global-styles/shadows-edit-panel.js.map +7 -1
  619. package/build-module/components/global-styles/shadows-panel.js +159 -124
  620. package/build-module/components/global-styles/shadows-panel.js.map +7 -1
  621. package/build-module/components/global-styles/size-control/index.js +57 -70
  622. package/build-module/components/global-styles/size-control/index.js.map +7 -1
  623. package/build-module/components/global-styles/style-variations-container.js +85 -95
  624. package/build-module/components/global-styles/style-variations-container.js.map +7 -1
  625. package/build-module/components/global-styles/subtitle.js +16 -16
  626. package/build-module/components/global-styles/subtitle.js.map +7 -1
  627. package/build-module/components/global-styles/typeset.js +50 -65
  628. package/build-module/components/global-styles/typeset.js.map +7 -1
  629. package/build-module/components/global-styles/typography-elements.js +86 -80
  630. package/build-module/components/global-styles/typography-elements.js.map +7 -1
  631. package/build-module/components/global-styles/typography-example.js +45 -57
  632. package/build-module/components/global-styles/typography-example.js.map +7 -1
  633. package/build-module/components/global-styles/typography-panel.js +38 -33
  634. package/build-module/components/global-styles/typography-panel.js.map +7 -1
  635. package/build-module/components/global-styles/typography-preview.js +55 -48
  636. package/build-module/components/global-styles/typography-preview.js.map +7 -1
  637. package/build-module/components/global-styles/ui.js +252 -295
  638. package/build-module/components/global-styles/ui.js.map +7 -1
  639. package/build-module/components/global-styles/utils.js +24 -28
  640. package/build-module/components/global-styles/utils.js.map +7 -1
  641. package/build-module/components/global-styles/variations/variation.js +59 -65
  642. package/build-module/components/global-styles/variations/variation.js.map +7 -1
  643. package/build-module/components/global-styles/variations/variations-color.js +26 -34
  644. package/build-module/components/global-styles/variations/variations-color.js.map +7 -1
  645. package/build-module/components/global-styles/variations/variations-panel.js +39 -46
  646. package/build-module/components/global-styles/variations/variations-panel.js.map +7 -1
  647. package/build-module/components/global-styles/variations/variations-typography.js +43 -42
  648. package/build-module/components/global-styles/variations/variations-typography.js.map +7 -1
  649. package/build-module/components/global-styles-renderer/index.js +16 -27
  650. package/build-module/components/global-styles-renderer/index.js.map +7 -1
  651. package/build-module/components/global-styles-sidebar/default-sidebar.js +36 -36
  652. package/build-module/components/global-styles-sidebar/default-sidebar.js.map +7 -1
  653. package/build-module/components/global-styles-sidebar/index.js +137 -133
  654. package/build-module/components/global-styles-sidebar/index.js.map +7 -1
  655. package/build-module/components/layout/animation.js +31 -69
  656. package/build-module/components/layout/animation.js.map +7 -1
  657. package/build-module/components/layout/hooks.js +16 -28
  658. package/build-module/components/layout/hooks.js.map +7 -1
  659. package/build-module/components/layout/index.js +199 -183
  660. package/build-module/components/layout/index.js.map +7 -1
  661. package/build-module/components/media/index.js +13 -21
  662. package/build-module/components/media/index.js.map +7 -1
  663. package/build-module/components/more-menu/index.js +18 -23
  664. package/build-module/components/more-menu/index.js.map +7 -1
  665. package/build-module/components/more-menu/site-export.js +41 -38
  666. package/build-module/components/more-menu/site-export.js.map +7 -1
  667. package/build-module/components/more-menu/welcome-guide-menu-item.js +12 -17
  668. package/build-module/components/more-menu/welcome-guide-menu-item.js.map +7 -1
  669. package/build-module/components/page-patterns/actions.js +52 -0
  670. package/build-module/components/page-patterns/actions.js.map +7 -0
  671. package/build-module/components/page-patterns/delete-category-menu-item.js +78 -76
  672. package/build-module/components/page-patterns/delete-category-menu-item.js.map +7 -1
  673. package/build-module/components/page-patterns/fields.js +103 -112
  674. package/build-module/components/page-patterns/fields.js.map +7 -1
  675. package/build-module/components/page-patterns/index.js +144 -120
  676. package/build-module/components/page-patterns/index.js.map +7 -1
  677. package/build-module/components/page-patterns/rename-category-menu-item.js +37 -53
  678. package/build-module/components/page-patterns/rename-category-menu-item.js.map +7 -1
  679. package/build-module/components/page-patterns/search-items.js +43 -77
  680. package/build-module/components/page-patterns/search-items.js.map +7 -1
  681. package/build-module/components/page-patterns/use-pattern-settings.js +27 -30
  682. package/build-module/components/page-patterns/use-pattern-settings.js.map +7 -1
  683. package/build-module/components/page-patterns/use-patterns.js +249 -192
  684. package/build-module/components/page-patterns/use-patterns.js.map +7 -1
  685. package/build-module/components/page-patterns/utils.js +5 -2
  686. package/build-module/components/page-patterns/utils.js.map +7 -1
  687. package/build-module/components/page-templates/fields.js +132 -147
  688. package/build-module/components/page-templates/fields.js.map +7 -1
  689. package/build-module/components/page-templates/hooks.js +44 -55
  690. package/build-module/components/page-templates/hooks.js.map +7 -1
  691. package/build-module/components/page-templates/index.js +189 -194
  692. package/build-module/components/page-templates/index.js.map +7 -1
  693. package/build-module/components/page-templates/view-utils.js +42 -0
  694. package/build-module/components/page-templates/view-utils.js.map +7 -0
  695. package/build-module/components/pagination/index.js +96 -77
  696. package/build-module/components/pagination/index.js.map +7 -1
  697. package/build-module/components/plugin-template-setting-panel/index.js +21 -50
  698. package/build-module/components/plugin-template-setting-panel/index.js.map +7 -1
  699. package/build-module/components/post-edit/index.js +136 -140
  700. package/build-module/components/post-edit/index.js.map +7 -1
  701. package/build-module/components/post-list/index.js +205 -291
  702. package/build-module/components/post-list/index.js.map +7 -1
  703. package/build-module/components/post-list/view-utils.js +149 -0
  704. package/build-module/components/post-list/view-utils.js.map +7 -0
  705. package/build-module/components/posts-app/index.js +15 -25
  706. package/build-module/components/posts-app/index.js.map +7 -1
  707. package/build-module/components/posts-app-routes/index.js +12 -18
  708. package/build-module/components/posts-app-routes/index.js.map +7 -1
  709. package/build-module/components/posts-app-routes/post-item.js +22 -29
  710. package/build-module/components/posts-app-routes/post-item.js.map +7 -1
  711. package/build-module/components/posts-app-routes/posts.js +59 -70
  712. package/build-module/components/posts-app-routes/posts.js.map +7 -1
  713. package/build-module/components/resizable-frame/index.js +169 -211
  714. package/build-module/components/resizable-frame/index.js.map +7 -1
  715. package/build-module/components/revisions/index.js +78 -64
  716. package/build-module/components/revisions/index.js.map +7 -1
  717. package/build-module/components/routes/use-title.js +25 -28
  718. package/build-module/components/routes/use-title.js.map +7 -1
  719. package/build-module/components/save-button/index.js +99 -104
  720. package/build-module/components/save-button/index.js.map +7 -1
  721. package/build-module/components/save-hub/index.js +23 -33
  722. package/build-module/components/save-hub/index.js.map +7 -1
  723. package/build-module/components/save-keyboard-shortcut/index.js +31 -47
  724. package/build-module/components/save-keyboard-shortcut/index.js.map +7 -1
  725. package/build-module/components/save-panel/index.js +125 -124
  726. package/build-module/components/save-panel/index.js.map +7 -1
  727. package/build-module/components/sidebar/index.js +47 -65
  728. package/build-module/components/sidebar/index.js.map +7 -1
  729. package/build-module/components/sidebar-button/index.js +16 -17
  730. package/build-module/components/sidebar-button/index.js.map +7 -1
  731. package/build-module/components/sidebar-dataviews/dataview-item.js +41 -50
  732. package/build-module/components/sidebar-dataviews/dataview-item.js.map +7 -1
  733. package/build-module/components/sidebar-dataviews/index.js +40 -48
  734. package/build-module/components/sidebar-dataviews/index.js.map +7 -1
  735. package/build-module/components/sidebar-global-styles-wrapper/index.js +100 -104
  736. package/build-module/components/sidebar-global-styles-wrapper/index.js.map +7 -1
  737. package/build-module/components/sidebar-navigation-item/index.js +56 -57
  738. package/build-module/components/sidebar-navigation-item/index.js.map +7 -1
  739. package/build-module/components/sidebar-navigation-screen/index.js +108 -98
  740. package/build-module/components/sidebar-navigation-screen/index.js.map +7 -1
  741. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +36 -48
  742. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +7 -1
  743. package/build-module/components/sidebar-navigation-screen-global-styles/content.js +23 -28
  744. package/build-module/components/sidebar-navigation-screen-global-styles/content.js.map +7 -1
  745. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +61 -73
  746. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +7 -1
  747. package/build-module/components/sidebar-navigation-screen-main/index.js +108 -82
  748. package/build-module/components/sidebar-navigation-screen-main/index.js.map +7 -1
  749. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +22 -24
  750. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +7 -1
  751. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +92 -84
  752. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +7 -1
  753. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +87 -76
  754. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +7 -1
  755. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +28 -41
  756. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +7 -1
  757. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +67 -60
  758. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +7 -1
  759. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +37 -32
  760. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +7 -1
  761. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +107 -91
  762. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +7 -1
  763. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +14 -14
  764. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +7 -1
  765. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js +8 -12
  766. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js.map +7 -1
  767. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +89 -98
  768. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +7 -1
  769. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +113 -117
  770. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +7 -1
  771. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +82 -82
  772. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +7 -1
  773. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +17 -16
  774. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +7 -1
  775. package/build-module/components/sidebar-navigation-screen-patterns/index.js +108 -99
  776. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +7 -1
  777. package/build-module/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js +19 -21
  778. package/build-module/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js.map +7 -1
  779. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +53 -59
  780. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +7 -1
  781. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +27 -27
  782. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +7 -1
  783. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +24 -24
  784. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +7 -1
  785. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +67 -70
  786. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +7 -1
  787. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +20 -21
  788. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +7 -1
  789. package/build-module/components/sidebar-navigation-screen-unsupported/index.js +11 -16
  790. package/build-module/components/sidebar-navigation-screen-unsupported/index.js.map +7 -1
  791. package/build-module/components/site-editor-routes/home.js +18 -26
  792. package/build-module/components/site-editor-routes/home.js.map +7 -1
  793. package/build-module/components/site-editor-routes/index.js +39 -30
  794. package/build-module/components/site-editor-routes/index.js.map +7 -1
  795. package/build-module/components/site-editor-routes/navigation-item.js +23 -43
  796. package/build-module/components/site-editor-routes/navigation-item.js.map +7 -1
  797. package/build-module/components/site-editor-routes/navigation.js +23 -43
  798. package/build-module/components/site-editor-routes/navigation.js.map +7 -1
  799. package/build-module/components/site-editor-routes/notfound.js +22 -28
  800. package/build-module/components/site-editor-routes/notfound.js.map +7 -1
  801. package/build-module/components/site-editor-routes/page-item.js +26 -35
  802. package/build-module/components/site-editor-routes/page-item.js.map +7 -1
  803. package/build-module/components/site-editor-routes/pages.js +64 -80
  804. package/build-module/components/site-editor-routes/pages.js.map +7 -1
  805. package/build-module/components/site-editor-routes/pattern-item.js +16 -20
  806. package/build-module/components/site-editor-routes/pattern-item.js.map +7 -1
  807. package/build-module/components/site-editor-routes/patterns.js +19 -30
  808. package/build-module/components/site-editor-routes/patterns.js.map +7 -1
  809. package/build-module/components/site-editor-routes/stylebook.js +28 -37
  810. package/build-module/components/site-editor-routes/stylebook.js.map +7 -1
  811. package/build-module/components/site-editor-routes/styles.js +26 -40
  812. package/build-module/components/site-editor-routes/styles.js.map +7 -1
  813. package/build-module/components/site-editor-routes/template-item.js +21 -28
  814. package/build-module/components/site-editor-routes/template-item.js.map +7 -1
  815. package/build-module/components/site-editor-routes/template-part-item.js +13 -15
  816. package/build-module/components/site-editor-routes/template-part-item.js.map +7 -1
  817. package/build-module/components/site-editor-routes/templates.js +37 -38
  818. package/build-module/components/site-editor-routes/templates.js.map +7 -1
  819. package/build-module/components/site-editor-routes/utils.js +6 -10
  820. package/build-module/components/site-editor-routes/utils.js.map +7 -1
  821. package/build-module/components/site-hub/index.js +204 -215
  822. package/build-module/components/site-hub/index.js.map +7 -1
  823. package/build-module/components/site-icon/index.js +33 -43
  824. package/build-module/components/site-icon/index.js.map +7 -1
  825. package/build-module/components/style-book/categories.js +41 -48
  826. package/build-module/components/style-book/categories.js.map +7 -1
  827. package/build-module/components/style-book/color-examples.js +29 -37
  828. package/build-module/components/style-book/color-examples.js.map +7 -1
  829. package/build-module/components/style-book/constants.js +191 -140
  830. package/build-module/components/style-book/constants.js.map +7 -1
  831. package/build-module/components/style-book/duotone-examples.js +36 -35
  832. package/build-module/components/style-book/duotone-examples.js.map +7 -1
  833. package/build-module/components/style-book/examples.js +114 -116
  834. package/build-module/components/style-book/examples.js.map +7 -1
  835. package/build-module/components/style-book/index.js +431 -384
  836. package/build-module/components/style-book/index.js.map +7 -1
  837. package/build-module/components/style-book/types.js +1 -2
  838. package/build-module/components/style-book/types.js.map +7 -1
  839. package/build-module/components/welcome-guide/editor.js +59 -54
  840. package/build-module/components/welcome-guide/editor.js.map +7 -1
  841. package/build-module/components/welcome-guide/image.js +16 -18
  842. package/build-module/components/welcome-guide/image.js.map +7 -1
  843. package/build-module/components/welcome-guide/index.js +16 -15
  844. package/build-module/components/welcome-guide/index.js.map +7 -1
  845. package/build-module/components/welcome-guide/page.js +59 -48
  846. package/build-module/components/welcome-guide/page.js.map +7 -1
  847. package/build-module/components/welcome-guide/styles.js +108 -97
  848. package/build-module/components/welcome-guide/styles.js.map +7 -1
  849. package/build-module/components/welcome-guide/template.js +54 -55
  850. package/build-module/components/welcome-guide/template.js.map +7 -1
  851. package/build-module/deprecated.js +28 -40
  852. package/build-module/deprecated.js.map +7 -1
  853. package/build-module/hooks/commands/use-common-commands.js +89 -108
  854. package/build-module/hooks/commands/use-common-commands.js.map +7 -1
  855. package/build-module/hooks/commands/use-set-command-context.js +21 -44
  856. package/build-module/hooks/commands/use-set-command-context.js.map +7 -1
  857. package/build-module/hooks/index.js +2 -5
  858. package/build-module/hooks/index.js.map +7 -1
  859. package/build-module/hooks/push-changes-to-global-styles/index.js +218 -243
  860. package/build-module/hooks/push-changes-to-global-styles/index.js.map +7 -1
  861. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +56 -105
  862. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +7 -1
  863. package/build-module/index.js +55 -69
  864. package/build-module/index.js.map +7 -1
  865. package/build-module/lock-unlock.js +8 -7
  866. package/build-module/lock-unlock.js.map +7 -1
  867. package/build-module/posts.js +38 -54
  868. package/build-module/posts.js.map +7 -1
  869. package/build-module/store/actions.js +140 -320
  870. package/build-module/store/actions.js.map +7 -1
  871. package/build-module/store/constants.js +5 -7
  872. package/build-module/store/constants.js.map +7 -1
  873. package/build-module/store/index.js +15 -18
  874. package/build-module/store/index.js.map +7 -1
  875. package/build-module/store/private-actions.js +12 -14
  876. package/build-module/store/private-actions.js.map +7 -1
  877. package/build-module/store/private-selectors.js +7 -10
  878. package/build-module/store/private-selectors.js.map +7 -1
  879. package/build-module/store/reducer.js +21 -53
  880. package/build-module/store/reducer.js.map +7 -1
  881. package/build-module/store/selectors.js +151 -278
  882. package/build-module/store/selectors.js.map +7 -1
  883. package/build-module/utils/constants.js +53 -44
  884. package/build-module/utils/constants.js.map +7 -1
  885. package/build-module/utils/get-filtered-template-parts.js +18 -37
  886. package/build-module/utils/get-filtered-template-parts.js.map +7 -1
  887. package/build-module/utils/is-previewing-theme.js +10 -9
  888. package/build-module/utils/is-previewing-theme.js.map +7 -1
  889. package/build-module/utils/is-template-removable.js +6 -13
  890. package/build-module/utils/is-template-removable.js.map +7 -1
  891. package/build-module/utils/is-template-revertable.js +6 -15
  892. package/build-module/utils/is-template-revertable.js.map +7 -1
  893. package/build-module/utils/set-nested-value.js +7 -22
  894. package/build-module/utils/set-nested-value.js.map +7 -1
  895. package/build-module/utils/template-part-create.js +1 -2
  896. package/build-module/utils/template-part-create.js.map +7 -1
  897. package/build-module/utils/use-activate-theme.js +21 -40
  898. package/build-module/utils/use-activate-theme.js.map +7 -1
  899. package/build-module/utils/use-actual-current-theme.js +13 -17
  900. package/build-module/utils/use-actual-current-theme.js.map +7 -1
  901. package/build-style/posts-rtl.css +484 -214
  902. package/build-style/posts.css +484 -214
  903. package/build-style/style-rtl.css +629 -271
  904. package/build-style/style.css +629 -271
  905. package/package.json +52 -42
  906. package/src/components/add-new-template/index.js +5 -3
  907. package/src/components/add-new-template/style.scss +4 -0
  908. package/src/components/dataviews-actions/index.js +16 -9
  909. package/src/components/editor/style.scss +3 -0
  910. package/src/components/editor/use-resolve-edited-entity.js +4 -18
  911. package/src/components/editor-canvas-container/style.scss +4 -1
  912. package/src/components/global-styles/font-library-modal/style.scss +4 -0
  913. package/src/components/global-styles/screen-revisions/style.scss +4 -0
  914. package/src/components/global-styles/style.scss +3 -0
  915. package/src/components/global-styles/variations/style.scss +3 -0
  916. package/src/components/global-styles-sidebar/style.scss +3 -0
  917. package/src/components/layout/index.js +2 -1
  918. package/src/components/layout/style.scss +5 -0
  919. package/src/components/page-patterns/actions.js +54 -0
  920. package/src/components/page-patterns/index.js +79 -32
  921. package/src/components/page-patterns/style.scss +4 -0
  922. package/src/components/page-templates/fields.js +22 -1
  923. package/src/components/page-templates/index.js +71 -104
  924. package/src/components/page-templates/style.scss +4 -0
  925. package/src/components/page-templates/view-utils.js +41 -0
  926. package/src/components/pagination/style.scss +2 -0
  927. package/src/components/post-edit/index.js +4 -3
  928. package/src/components/post-edit/style.scss +3 -6
  929. package/src/components/post-list/index.js +76 -188
  930. package/src/components/post-list/style.scss +3 -0
  931. package/src/components/post-list/view-utils.js +155 -0
  932. package/src/components/posts-app-routes/posts.js +29 -16
  933. package/src/components/resizable-frame/style.scss +3 -0
  934. package/src/components/save-hub/style.scss +3 -0
  935. package/src/components/save-panel/index.js +2 -2
  936. package/src/components/save-panel/style.scss +2 -0
  937. package/src/components/sidebar/style.scss +4 -0
  938. package/src/components/sidebar-button/style.scss +2 -0
  939. package/src/components/sidebar-dataviews/dataview-item.js +5 -11
  940. package/src/components/sidebar-dataviews/index.js +17 -17
  941. package/src/components/sidebar-dataviews/style.scss +2 -16
  942. package/src/components/sidebar-global-styles-wrapper/index.js +16 -21
  943. package/src/components/sidebar-global-styles-wrapper/style.scss +4 -30
  944. package/src/components/sidebar-navigation-item/style.scss +3 -0
  945. package/src/components/sidebar-navigation-screen/style.scss +5 -0
  946. package/src/components/sidebar-navigation-screen-main/style.scss +2 -0
  947. package/src/components/sidebar-navigation-screen-navigation-menu/style.scss +2 -0
  948. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +3 -0
  949. package/src/components/sidebar-navigation-screen-patterns/style.scss +3 -0
  950. package/src/components/sidebar-navigation-screen-templates-browse/style.scss +2 -0
  951. package/src/components/site-editor-routes/pages.js +29 -16
  952. package/src/components/site-editor-routes/templates.js +21 -4
  953. package/src/components/site-hub/style.scss +3 -0
  954. package/src/components/site-icon/style.scss +3 -0
  955. package/src/components/style-book/style.scss +3 -0
  956. package/src/components/welcome-guide/style.scss +2 -0
  957. package/src/posts.scss +14 -11
  958. package/src/style.scss +42 -39
  959. package/tsconfig.json +2 -0
  960. package/tsconfig.tsbuildinfo +1 -1
  961. package/build/components/page/header.js +0 -45
  962. package/build/components/page/header.js.map +0 -1
  963. package/build/components/page/index.js +0 -50
  964. package/build/components/page/index.js.map +0 -1
  965. package/build/components/page-patterns/header.js +0 -96
  966. package/build/components/page-patterns/header.js.map +0 -1
  967. package/build/components/sidebar-dataviews/add-new-view.js +0 -137
  968. package/build/components/sidebar-dataviews/add-new-view.js.map +0 -1
  969. package/build/components/sidebar-dataviews/custom-dataviews-list.js +0 -211
  970. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +0 -1
  971. package/build/components/sidebar-dataviews/default-views.js +0 -141
  972. package/build/components/sidebar-dataviews/default-views.js.map +0 -1
  973. package/build-module/components/page/header.js +0 -40
  974. package/build-module/components/page/header.js.map +0 -1
  975. package/build-module/components/page/index.js +0 -42
  976. package/build-module/components/page/index.js.map +0 -1
  977. package/build-module/components/page-patterns/header.js +0 -88
  978. package/build-module/components/page-patterns/header.js.map +0 -1
  979. package/build-module/components/sidebar-dataviews/add-new-view.js +0 -129
  980. package/build-module/components/sidebar-dataviews/add-new-view.js.map +0 -1
  981. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +0 -202
  982. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +0 -1
  983. package/build-module/components/sidebar-dataviews/default-views.js +0 -133
  984. package/build-module/components/sidebar-dataviews/default-views.js.map +0 -1
  985. package/src/components/page/header.js +0 -44
  986. package/src/components/page/index.js +0 -43
  987. package/src/components/page/style.scss +0 -56
  988. package/src/components/page-patterns/header.js +0 -120
  989. package/src/components/sidebar-dataviews/add-new-view.js +0 -143
  990. package/src/components/sidebar-dataviews/custom-dataviews-list.js +0 -233
  991. package/src/components/sidebar-dataviews/default-views.js +0 -168
@@ -1 +1,7 @@
1
- {"version":3,"names":["_data","require","_coreData","_htmlEntities","_element","_i18n","_icons","_url","_constants","EMPTY_OBJECT","getValueFromObjectPath","object","path","value","split","forEach","fieldName","prefixSlug","prefix","slug","safeDecodeURI","mapToIHasNameAndId","entities","map","entity","name","decodeEntities","exports","useExistingTemplates","useSelect","select","coreStore","getEntityRecords","TEMPLATE_POST_TYPE","per_page","useDefaultTemplateTypes","getCurrentTheme","default_template_types","usePublicPostTypes","postTypes","getPostTypes","useMemo","excludedPostTypes","filter","viewable","includes","sort","a","b","localeCompare","usePublicTaxonomies","taxonomies","getTaxonomies","visibility","publicly_queryable","usePostTypeArchiveMenuItems","publicPostTypes","postTypesWithArchives","postType","has_archive","existingTemplates","postTypeLabels","reduce","accumulator","labels","singularName","singular_name","toLowerCase","needsUniqueIdentifier","useCallback","some","existingTemplate","title","sprintf","__","description","icon","startsWith","slice","archive","templatePrefix","usePostTypeMenuItems","onClickMenuItem","defaultTemplateTypes","templateLabels","templateName","template_name","templatePrefixes","suffix","postTypesInfo","useEntitiesInfo","menuItems","generalTemplateSlug","defaultTemplateType","find","_slug","_needsUniqueIdentifier","menuItemTitle","_x","menuItem","post","hasEntities","onClick","template","type","config","recordNamePath","queryArgs","search","_fields","orderBy","exclude","existingEntitiesIds","getSpecificTemplate","suggestion","templateSlug","push","postTypesMenuItems","key","defaultPostTypesMenuItems","useTaxonomiesMenuItems","publicTaxonomies","taxonomyLabels","taxonomiesInfo","existingTemplateSlugs","taxonomy","hasGeneralTemplate","blockMeta","taxonomiesMenuItems","defaultTaxonomiesMenuItems","USE_AUTHOR_MENU_ITEM_TEMPLATE_PREFIX","user","USE_AUTHOR_MENU_ITEM_QUERY_PARAMETERS","who","useAuthorMenuItem","authorInfo","authorMenuItem","search_items","not_found","all_items","entityName","additionalQueryParameters","entitiesHasRecords","Object","keys","context","length","entitiesInfo"],"sources":["@wordpress/edit-site/src/components/add-new-template/utils.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useMemo, useCallback } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { blockMeta, post, archive } from '@wordpress/icons';\nimport { safeDecodeURI } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst EMPTY_OBJECT = {};\n\n/**\n * @typedef IHasNameAndId\n * @property {string|number} id The entity's id.\n * @property {string} name The entity's name.\n */\n\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.split( '.' ).forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\n/**\n * Helper that adds a prefix to a post slug. The slug needs to be URL-decoded first,\n * so that we have raw Unicode characters there. The server will truncate the slug to\n * 200 characters, respecing Unicode char boundary. On the other hand, the server\n * doesn't detect urlencoded octet boundary and can possibly construct slugs that\n * are not valid urlencoded strings.\n * @param {string} prefix The prefix to add to the slug.\n * @param {string} slug The slug to add the prefix to.\n * @return {string} The slug with the prefix.\n */\nfunction prefixSlug( prefix, slug ) {\n\treturn `${ prefix }-${ safeDecodeURI( slug ) }`;\n}\n\n/**\n * Helper util to map records to add a `name` prop from a\n * provided path, in order to handle all entities in the same\n * fashion(implementing`IHasNameAndId` interface).\n *\n * @param {Object[]} entities The array of entities.\n * @param {string} path The path to map a `name` property from the entity.\n * @return {IHasNameAndId[]} An array of entities that now implement the `IHasNameAndId` interface.\n */\nexport const mapToIHasNameAndId = ( entities, path ) => {\n\treturn ( entities || [] ).map( ( entity ) => ( {\n\t\t...entity,\n\t\tname: decodeEntities( getValueFromObjectPath( entity, path ) ),\n\t} ) );\n};\n\n/**\n * @typedef {Object} EntitiesInfo\n * @property {boolean} hasEntities If an entity has available records(posts, terms, etc..).\n * @property {number[]} existingEntitiesIds An array of the existing entities ids.\n */\n\nexport const useExistingTemplates = () => {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tper_page: -1,\n\t\t\t\t}\n\t\t\t),\n\t\t[]\n\t);\n};\n\nexport const useDefaultTemplateTypes = () => {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getCurrentTheme()?.default_template_types || [],\n\t\t[]\n\t);\n};\n\nconst usePublicPostTypes = () => {\n\tconst postTypes = useSelect(\n\t\t( select ) => select( coreStore ).getPostTypes( { per_page: -1 } ),\n\t\t[]\n\t);\n\treturn useMemo( () => {\n\t\tconst excludedPostTypes = [ 'attachment' ];\n\t\treturn postTypes\n\t\t\t?.filter(\n\t\t\t\t( { viewable, slug } ) =>\n\t\t\t\t\tviewable && ! excludedPostTypes.includes( slug )\n\t\t\t)\n\t\t\t.sort( ( a, b ) => {\n\t\t\t\t// Sort post types alphabetically by name,\n\t\t\t\t// but exclude the built-in 'post' type from sorting.\n\t\t\t\tif ( a.slug === 'post' || b.slug === 'post' ) {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\n\t\t\t\treturn a.name.localeCompare( b.name );\n\t\t\t} );\n\t}, [ postTypes ] );\n};\n\nconst usePublicTaxonomies = () => {\n\tconst taxonomies = useSelect(\n\t\t( select ) => select( coreStore ).getTaxonomies( { per_page: -1 } ),\n\t\t[]\n\t);\n\treturn useMemo( () => {\n\t\treturn taxonomies?.filter(\n\t\t\t( { visibility } ) => visibility?.publicly_queryable\n\t\t);\n\t}, [ taxonomies ] );\n};\n\nexport function usePostTypeArchiveMenuItems() {\n\tconst publicPostTypes = usePublicPostTypes();\n\tconst postTypesWithArchives = useMemo(\n\t\t() => publicPostTypes?.filter( ( postType ) => postType.has_archive ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst existingTemplates = useExistingTemplates();\n\t// We need to keep track of naming conflicts. If a conflict\n\t// occurs, we need to add slug.\n\tconst postTypeLabels = useMemo(\n\t\t() =>\n\t\t\tpublicPostTypes?.reduce( ( accumulator, { labels } ) => {\n\t\t\t\tconst singularName = labels.singular_name.toLowerCase();\n\t\t\t\taccumulator[ singularName ] =\n\t\t\t\t\t( accumulator[ singularName ] || 0 ) + 1;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst needsUniqueIdentifier = useCallback(\n\t\t( { labels, slug } ) => {\n\t\t\tconst singularName = labels.singular_name.toLowerCase();\n\t\t\treturn postTypeLabels[ singularName ] > 1 && singularName !== slug;\n\t\t},\n\t\t[ postTypeLabels ]\n\t);\n\treturn useMemo(\n\t\t() =>\n\t\t\tpostTypesWithArchives\n\t\t\t\t?.filter(\n\t\t\t\t\t( postType ) =>\n\t\t\t\t\t\t! ( existingTemplates || [] ).some(\n\t\t\t\t\t\t\t( existingTemplate ) =>\n\t\t\t\t\t\t\t\texistingTemplate.slug ===\n\t\t\t\t\t\t\t\t'archive-' + postType.slug\n\t\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t.map( ( postType ) => {\n\t\t\t\t\tlet title;\n\t\t\t\t\tif ( needsUniqueIdentifier( postType ) ) {\n\t\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t\t// translators: %1s: Name of the post type e.g: \"Post\"; %2s: Slug of the post type e.g: \"book\".\n\t\t\t\t\t\t\t__( 'Archive: %1$s (%2$s)' ),\n\t\t\t\t\t\t\tpostType.labels.singular_name,\n\t\t\t\t\t\t\tpostType.slug\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t\t\t__( 'Archive: %s' ),\n\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tslug: 'archive-' + postType.slug,\n\t\t\t\t\t\tdescription: sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Displays an archive with the latest posts of type: %s.'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t),\n\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t// `icon` is the `menu_icon` property of a post type. We\n\t\t\t\t\t\t// only handle `dashicons` for now, even if the `menu_icon`\n\t\t\t\t\t\t// also supports urls and svg as values.\n\t\t\t\t\t\ticon:\n\t\t\t\t\t\t\ttypeof postType.icon === 'string' &&\n\t\t\t\t\t\t\tpostType.icon.startsWith( 'dashicons-' )\n\t\t\t\t\t\t\t\t? postType.icon.slice( 10 )\n\t\t\t\t\t\t\t\t: archive,\n\t\t\t\t\t\ttemplatePrefix: 'archive',\n\t\t\t\t\t};\n\t\t\t\t} ) || [],\n\t\t[ postTypesWithArchives, existingTemplates, needsUniqueIdentifier ]\n\t);\n}\n\nexport const usePostTypeMenuItems = ( onClickMenuItem ) => {\n\tconst publicPostTypes = usePublicPostTypes();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\t// We need to keep track of naming conflicts. If a conflict\n\t// occurs, we need to add slug.\n\tconst templateLabels = useMemo(\n\t\t() =>\n\t\t\tpublicPostTypes?.reduce( ( accumulator, { labels } ) => {\n\t\t\t\tconst templateName = (\n\t\t\t\t\tlabels.template_name || labels.singular_name\n\t\t\t\t).toLowerCase();\n\t\t\t\taccumulator[ templateName ] =\n\t\t\t\t\t( accumulator[ templateName ] || 0 ) + 1;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst needsUniqueIdentifier = useCallback(\n\t\t( { labels, slug } ) => {\n\t\t\tconst templateName = (\n\t\t\t\tlabels.template_name || labels.singular_name\n\t\t\t).toLowerCase();\n\t\t\treturn templateLabels[ templateName ] > 1 && templateName !== slug;\n\t\t},\n\t\t[ templateLabels ]\n\t);\n\n\t// `page`is a special case in template hierarchy.\n\tconst templatePrefixes = useMemo(\n\t\t() =>\n\t\t\tpublicPostTypes?.reduce( ( accumulator, { slug } ) => {\n\t\t\t\tlet suffix = slug;\n\t\t\t\tif ( slug !== 'page' ) {\n\t\t\t\t\tsuffix = `single-${ suffix }`;\n\t\t\t\t}\n\t\t\t\taccumulator[ slug ] = suffix;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst postTypesInfo = useEntitiesInfo( 'postType', templatePrefixes );\n\tconst menuItems = ( publicPostTypes || [] ).reduce(\n\t\t( accumulator, postType ) => {\n\t\t\tconst { slug, labels, icon } = postType;\n\t\t\t// We need to check if the general template is part of the\n\t\t\t// defaultTemplateTypes. If it is, just use that info and\n\t\t\t// augment it with the specific template functionality.\n\t\t\tconst generalTemplateSlug = templatePrefixes[ slug ];\n\t\t\tconst defaultTemplateType = defaultTemplateTypes?.find(\n\t\t\t\t( { slug: _slug } ) => _slug === generalTemplateSlug\n\t\t\t);\n\t\t\tconst _needsUniqueIdentifier = needsUniqueIdentifier( postType );\n\t\t\tlet menuItemTitle =\n\t\t\t\tlabels.template_name ||\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t__( 'Single item: %s' ),\n\t\t\t\t\tlabels.singular_name\n\t\t\t\t);\n\t\t\tif ( _needsUniqueIdentifier ) {\n\t\t\t\tmenuItemTitle = labels.template_name\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the template e.g: \"Single Item: Post\". 2: Slug of the post type e.g: \"book\".\n\t\t\t\t\t\t\t_x( '%1$s (%2$s)', 'post type menu label' ),\n\t\t\t\t\t\t\tlabels.template_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the post type e.g: \"Post\". 2: Slug of the post type e.g: \"book\".\n\t\t\t\t\t\t\t_x(\n\t\t\t\t\t\t\t\t'Single item: %1$s (%2$s)',\n\t\t\t\t\t\t\t\t'post type menu label'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tlabels.singular_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t );\n\t\t\t}\n\t\t\tconst menuItem = defaultTemplateType\n\t\t\t\t? {\n\t\t\t\t\t\t...defaultTemplateType,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t }\n\t\t\t\t: {\n\t\t\t\t\t\tslug: generalTemplateSlug,\n\t\t\t\t\t\ttitle: menuItemTitle,\n\t\t\t\t\t\tdescription: sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t\t\t__( 'Displays a single item: %s.' ),\n\t\t\t\t\t\t\tlabels.singular_name\n\t\t\t\t\t\t),\n\t\t\t\t\t\t// `icon` is the `menu_icon` property of a post type. We\n\t\t\t\t\t\t// only handle `dashicons` for now, even if the `menu_icon`\n\t\t\t\t\t\t// also supports urls and svg as values.\n\t\t\t\t\t\ticon:\n\t\t\t\t\t\t\ttypeof icon === 'string' &&\n\t\t\t\t\t\t\ticon.startsWith( 'dashicons-' )\n\t\t\t\t\t\t\t\t? icon.slice( 10 )\n\t\t\t\t\t\t\t\t: post,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t };\n\t\t\tconst hasEntities = postTypesInfo?.[ slug ]?.hasEntities;\n\t\t\t// We have a different template creation flow only if they have entities.\n\t\t\tif ( hasEntities ) {\n\t\t\t\tmenuItem.onClick = ( template ) => {\n\t\t\t\t\tonClickMenuItem( {\n\t\t\t\t\t\ttype: 'postType',\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\tconfig: {\n\t\t\t\t\t\t\trecordNamePath: 'title.rendered',\n\t\t\t\t\t\t\tqueryArgs: ( { search } ) => {\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t_fields: 'id,title,slug,link',\n\t\t\t\t\t\t\t\t\torderBy: search ? 'relevance' : 'modified',\n\t\t\t\t\t\t\t\t\texclude:\n\t\t\t\t\t\t\t\t\t\tpostTypesInfo[ slug ]\n\t\t\t\t\t\t\t\t\t\t\t.existingEntitiesIds,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tgetSpecificTemplate: ( suggestion ) => {\n\t\t\t\t\t\t\t\tconst templateSlug = prefixSlug(\n\t\t\t\t\t\t\t\t\ttemplatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t\tsuggestion.slug\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\ttitle: templateSlug,\n\t\t\t\t\t\t\t\t\tslug: templateSlug,\n\t\t\t\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlabels,\n\t\t\t\t\t\ttemplate,\n\t\t\t\t\t} );\n\t\t\t\t};\n\t\t\t}\n\t\t\t// We don't need to add the menu item if there are no entities.\n\t\t\tif ( hasEntities ) {\n\t\t\t\taccumulator.push( menuItem );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t},\n\t\t[]\n\t);\n\t// Split menu items into two groups: one for the default post types\n\t// and one for the rest.\n\tconst postTypesMenuItems = useMemo(\n\t\t() =>\n\t\t\tmenuItems.reduce(\n\t\t\t\t( accumulator, postType ) => {\n\t\t\t\t\tconst { slug } = postType;\n\t\t\t\t\tlet key = 'postTypesMenuItems';\n\t\t\t\t\tif ( slug === 'page' ) {\n\t\t\t\t\t\tkey = 'defaultPostTypesMenuItems';\n\t\t\t\t\t}\n\t\t\t\t\taccumulator[ key ].push( postType );\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{ defaultPostTypesMenuItems: [], postTypesMenuItems: [] }\n\t\t\t),\n\t\t[ menuItems ]\n\t);\n\treturn postTypesMenuItems;\n};\n\nexport const useTaxonomiesMenuItems = ( onClickMenuItem ) => {\n\tconst publicTaxonomies = usePublicTaxonomies();\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\t// `category` and `post_tag` are special cases in template hierarchy.\n\tconst templatePrefixes = useMemo(\n\t\t() =>\n\t\t\tpublicTaxonomies?.reduce( ( accumulator, { slug } ) => {\n\t\t\t\tlet suffix = slug;\n\t\t\t\tif ( ! [ 'category', 'post_tag' ].includes( slug ) ) {\n\t\t\t\t\tsuffix = `taxonomy-${ suffix }`;\n\t\t\t\t}\n\t\t\t\tif ( slug === 'post_tag' ) {\n\t\t\t\t\tsuffix = `tag`;\n\t\t\t\t}\n\t\t\t\taccumulator[ slug ] = suffix;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicTaxonomies ]\n\t);\n\t// We need to keep track of naming conflicts. If a conflict\n\t// occurs, we need to add slug.\n\tconst taxonomyLabels = publicTaxonomies?.reduce(\n\t\t( accumulator, { labels } ) => {\n\t\t\tconst templateName = (\n\t\t\t\tlabels.template_name || labels.singular_name\n\t\t\t).toLowerCase();\n\t\t\taccumulator[ templateName ] =\n\t\t\t\t( accumulator[ templateName ] || 0 ) + 1;\n\t\t\treturn accumulator;\n\t\t},\n\t\t{}\n\t);\n\tconst needsUniqueIdentifier = ( labels, slug ) => {\n\t\tif ( [ 'category', 'post_tag' ].includes( slug ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tconst templateName = (\n\t\t\tlabels.template_name || labels.singular_name\n\t\t).toLowerCase();\n\t\treturn taxonomyLabels[ templateName ] > 1 && templateName !== slug;\n\t};\n\tconst taxonomiesInfo = useEntitiesInfo( 'taxonomy', templatePrefixes );\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst menuItems = ( publicTaxonomies || [] ).reduce(\n\t\t( accumulator, taxonomy ) => {\n\t\t\tconst { slug, labels } = taxonomy;\n\t\t\t// We need to check if the general template is part of the\n\t\t\t// defaultTemplateTypes. If it is, just use that info and\n\t\t\t// augment it with the specific template functionality.\n\t\t\tconst generalTemplateSlug = templatePrefixes[ slug ];\n\t\t\tconst defaultTemplateType = defaultTemplateTypes?.find(\n\t\t\t\t( { slug: _slug } ) => _slug === generalTemplateSlug\n\t\t\t);\n\t\t\tconst hasGeneralTemplate =\n\t\t\t\texistingTemplateSlugs?.includes( generalTemplateSlug );\n\t\t\tconst _needsUniqueIdentifier = needsUniqueIdentifier(\n\t\t\t\tlabels,\n\t\t\t\tslug\n\t\t\t);\n\t\t\tlet menuItemTitle = labels.template_name || labels.singular_name;\n\t\t\tif ( _needsUniqueIdentifier ) {\n\t\t\t\tmenuItemTitle = labels.template_name\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the template e.g: \"Products by Category\". 2: Slug of the taxonomy e.g: \"product_cat\".\n\t\t\t\t\t\t\t_x( '%1$s (%2$s)', 'taxonomy template menu label' ),\n\t\t\t\t\t\t\tlabels.template_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the taxonomy e.g: \"Category\". 2: Slug of the taxonomy e.g: \"product_cat\".\n\t\t\t\t\t\t\t_x( '%1$s (%2$s)', 'taxonomy menu label' ),\n\t\t\t\t\t\t\tlabels.singular_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t );\n\t\t\t}\n\t\t\tconst menuItem = defaultTemplateType\n\t\t\t\t? {\n\t\t\t\t\t\t...defaultTemplateType,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t }\n\t\t\t\t: {\n\t\t\t\t\t\tslug: generalTemplateSlug,\n\t\t\t\t\t\ttitle: menuItemTitle,\n\t\t\t\t\t\tdescription: sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the taxonomy e.g: \"Product Categories\".\n\t\t\t\t\t\t\t__( 'Displays taxonomy: %s.' ),\n\t\t\t\t\t\t\tlabels.singular_name\n\t\t\t\t\t\t),\n\t\t\t\t\t\ticon: blockMeta,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t };\n\t\t\tconst hasEntities = taxonomiesInfo?.[ slug ]?.hasEntities;\n\t\t\t// We have a different template creation flow only if they have entities.\n\t\t\tif ( hasEntities ) {\n\t\t\t\tmenuItem.onClick = ( template ) => {\n\t\t\t\t\tonClickMenuItem( {\n\t\t\t\t\t\ttype: 'taxonomy',\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\tconfig: {\n\t\t\t\t\t\t\tqueryArgs: ( { search } ) => {\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t_fields: 'id,name,slug,link',\n\t\t\t\t\t\t\t\t\torderBy: search ? 'name' : 'count',\n\t\t\t\t\t\t\t\t\texclude:\n\t\t\t\t\t\t\t\t\t\ttaxonomiesInfo[ slug ]\n\t\t\t\t\t\t\t\t\t\t\t.existingEntitiesIds,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tgetSpecificTemplate: ( suggestion ) => {\n\t\t\t\t\t\t\t\tconst templateSlug = prefixSlug(\n\t\t\t\t\t\t\t\t\ttemplatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t\tsuggestion.slug\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\ttitle: templateSlug,\n\t\t\t\t\t\t\t\t\tslug: templateSlug,\n\t\t\t\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlabels,\n\t\t\t\t\t\thasGeneralTemplate,\n\t\t\t\t\t\ttemplate,\n\t\t\t\t\t} );\n\t\t\t\t};\n\t\t\t}\n\t\t\t// We don't need to add the menu item if there are no\n\t\t\t// entities and the general template exists.\n\t\t\tif ( ! hasGeneralTemplate || hasEntities ) {\n\t\t\t\taccumulator.push( menuItem );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t},\n\t\t[]\n\t);\n\t// Split menu items into two groups: one for the default taxonomies\n\t// and one for the rest.\n\tconst taxonomiesMenuItems = useMemo(\n\t\t() =>\n\t\t\tmenuItems.reduce(\n\t\t\t\t( accumulator, taxonomy ) => {\n\t\t\t\t\tconst { slug } = taxonomy;\n\t\t\t\t\tlet key = 'taxonomiesMenuItems';\n\t\t\t\t\tif ( [ 'category', 'tag' ].includes( slug ) ) {\n\t\t\t\t\t\tkey = 'defaultTaxonomiesMenuItems';\n\t\t\t\t\t}\n\t\t\t\t\taccumulator[ key ].push( taxonomy );\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{ defaultTaxonomiesMenuItems: [], taxonomiesMenuItems: [] }\n\t\t\t),\n\t\t[ menuItems ]\n\t);\n\treturn taxonomiesMenuItems;\n};\n\nconst USE_AUTHOR_MENU_ITEM_TEMPLATE_PREFIX = { user: 'author' };\nconst USE_AUTHOR_MENU_ITEM_QUERY_PARAMETERS = { user: { who: 'authors' } };\nexport function useAuthorMenuItem( onClickMenuItem ) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst authorInfo = useEntitiesInfo(\n\t\t'root',\n\t\tUSE_AUTHOR_MENU_ITEM_TEMPLATE_PREFIX,\n\t\tUSE_AUTHOR_MENU_ITEM_QUERY_PARAMETERS\n\t);\n\tlet authorMenuItem = defaultTemplateTypes?.find(\n\t\t( { slug } ) => slug === 'author'\n\t);\n\tif ( ! authorMenuItem ) {\n\t\tauthorMenuItem = {\n\t\t\tdescription: __(\n\t\t\t\t'Displays latest posts written by a single author.'\n\t\t\t),\n\t\t\tslug: 'author',\n\t\t\ttitle: 'Author',\n\t\t};\n\t}\n\tconst hasGeneralTemplate = !! existingTemplates?.find(\n\t\t( { slug } ) => slug === 'author'\n\t);\n\tif ( authorInfo.user?.hasEntities ) {\n\t\tauthorMenuItem = { ...authorMenuItem, templatePrefix: 'author' };\n\t\tauthorMenuItem.onClick = ( template ) => {\n\t\t\tonClickMenuItem( {\n\t\t\t\ttype: 'root',\n\t\t\t\tslug: 'user',\n\t\t\t\tconfig: {\n\t\t\t\t\tqueryArgs: ( { search } ) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t_fields: 'id,name,slug,link',\n\t\t\t\t\t\t\torderBy: search ? 'name' : 'registered_date',\n\t\t\t\t\t\t\texclude: authorInfo.user.existingEntitiesIds,\n\t\t\t\t\t\t\twho: 'authors',\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\t\t\t\tgetSpecificTemplate: ( suggestion ) => {\n\t\t\t\t\t\tconst templateSlug = prefixSlug(\n\t\t\t\t\t\t\t'author',\n\t\t\t\t\t\t\tsuggestion.slug\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\ttitle: sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Name of the author e.g: \"Admin\".\n\t\t\t\t\t\t\t\t__( 'Author: %s' ),\n\t\t\t\t\t\t\t\tsuggestion.name\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tslug: templateSlug,\n\t\t\t\t\t\t\ttemplatePrefix: 'author',\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tlabels: {\n\t\t\t\t\tsingular_name: __( 'Author' ),\n\t\t\t\t\tsearch_items: __( 'Search Authors' ),\n\t\t\t\t\tnot_found: __( 'No authors found.' ),\n\t\t\t\t\tall_items: __( 'All Authors' ),\n\t\t\t\t},\n\t\t\t\thasGeneralTemplate,\n\t\t\t\ttemplate,\n\t\t\t} );\n\t\t};\n\t}\n\tif ( ! hasGeneralTemplate || authorInfo.user?.hasEntities ) {\n\t\treturn authorMenuItem;\n\t}\n}\n\n/**\n * Helper hook that returns information about an entity having\n * records that we can create a specific template for.\n *\n * For example we can search for `terms` in `taxonomy` entity or\n * `posts` in `postType` entity.\n *\n * First we need to find the existing records with an associated template,\n * to query afterwards for any remaining record, by excluding them.\n *\n * @param {string} entityName The entity's name.\n * @param {Record<string,string>} templatePrefixes An object with the entity's slug as key and the template prefix as value.\n * @param {Record<string,Object>} additionalQueryParameters An object with the entity's slug as key and additional query parameters as value.\n * @return {Record<string,EntitiesInfo>} An object with the entity's slug as key and the EntitiesInfo as value.\n */\nconst useEntitiesInfo = (\n\tentityName,\n\ttemplatePrefixes,\n\tadditionalQueryParameters = EMPTY_OBJECT\n) => {\n\tconst entitiesHasRecords = useSelect(\n\t\t( select ) => {\n\t\t\treturn Object.keys( templatePrefixes || {} ).reduce(\n\t\t\t\t( accumulator, slug ) => {\n\t\t\t\t\taccumulator[ slug ] = !! select(\n\t\t\t\t\t\tcoreStore\n\t\t\t\t\t).getEntityRecords( entityName, slug, {\n\t\t\t\t\t\tper_page: 1,\n\t\t\t\t\t\t_fields: 'id',\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t\t...additionalQueryParameters[ slug ],\n\t\t\t\t\t} )?.length;\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{}\n\t\t\t);\n\t\t},\n\t\t[ templatePrefixes, entityName, additionalQueryParameters ]\n\t);\n\tconst entitiesInfo = useMemo( () => {\n\t\treturn Object.keys( templatePrefixes || {} ).reduce(\n\t\t\t( accumulator, slug ) => {\n\t\t\t\taccumulator[ slug ] = {\n\t\t\t\t\thasEntities: entitiesHasRecords[ slug ],\n\t\t\t\t};\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\t}, [ templatePrefixes, entitiesHasRecords ] );\n\treturn entitiesInfo;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/add-new-template/utils.js"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useMemo, useCallback } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { blockMeta, post, archive } from '@wordpress/icons';\nimport { safeDecodeURI } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst EMPTY_OBJECT = {};\n\n/**\n * @typedef IHasNameAndId\n * @property {string|number} id The entity's id.\n * @property {string} name The entity's name.\n */\n\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.split( '.' ).forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\n/**\n * Helper that adds a prefix to a post slug. The slug needs to be URL-decoded first,\n * so that we have raw Unicode characters there. The server will truncate the slug to\n * 200 characters, respecing Unicode char boundary. On the other hand, the server\n * doesn't detect urlencoded octet boundary and can possibly construct slugs that\n * are not valid urlencoded strings.\n * @param {string} prefix The prefix to add to the slug.\n * @param {string} slug The slug to add the prefix to.\n * @return {string} The slug with the prefix.\n */\nfunction prefixSlug( prefix, slug ) {\n\treturn `${ prefix }-${ safeDecodeURI( slug ) }`;\n}\n\n/**\n * Helper util to map records to add a `name` prop from a\n * provided path, in order to handle all entities in the same\n * fashion(implementing`IHasNameAndId` interface).\n *\n * @param {Object[]} entities The array of entities.\n * @param {string} path The path to map a `name` property from the entity.\n * @return {IHasNameAndId[]} An array of entities that now implement the `IHasNameAndId` interface.\n */\nexport const mapToIHasNameAndId = ( entities, path ) => {\n\treturn ( entities || [] ).map( ( entity ) => ( {\n\t\t...entity,\n\t\tname: decodeEntities( getValueFromObjectPath( entity, path ) ),\n\t} ) );\n};\n\n/**\n * @typedef {Object} EntitiesInfo\n * @property {boolean} hasEntities If an entity has available records(posts, terms, etc..).\n * @property {number[]} existingEntitiesIds An array of the existing entities ids.\n */\n\nexport const useExistingTemplates = () => {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tper_page: -1,\n\t\t\t\t}\n\t\t\t),\n\t\t[]\n\t);\n};\n\nexport const useDefaultTemplateTypes = () => {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getCurrentTheme()?.default_template_types || [],\n\t\t[]\n\t);\n};\n\nconst usePublicPostTypes = () => {\n\tconst postTypes = useSelect(\n\t\t( select ) => select( coreStore ).getPostTypes( { per_page: -1 } ),\n\t\t[]\n\t);\n\treturn useMemo( () => {\n\t\tconst excludedPostTypes = [ 'attachment' ];\n\t\treturn postTypes\n\t\t\t?.filter(\n\t\t\t\t( { viewable, slug } ) =>\n\t\t\t\t\tviewable && ! excludedPostTypes.includes( slug )\n\t\t\t)\n\t\t\t.sort( ( a, b ) => {\n\t\t\t\t// Sort post types alphabetically by name,\n\t\t\t\t// but exclude the built-in 'post' type from sorting.\n\t\t\t\tif ( a.slug === 'post' || b.slug === 'post' ) {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\n\t\t\t\treturn a.name.localeCompare( b.name );\n\t\t\t} );\n\t}, [ postTypes ] );\n};\n\nconst usePublicTaxonomies = () => {\n\tconst taxonomies = useSelect(\n\t\t( select ) => select( coreStore ).getTaxonomies( { per_page: -1 } ),\n\t\t[]\n\t);\n\treturn useMemo( () => {\n\t\treturn taxonomies?.filter(\n\t\t\t( { visibility } ) => visibility?.publicly_queryable\n\t\t);\n\t}, [ taxonomies ] );\n};\n\nexport function usePostTypeArchiveMenuItems() {\n\tconst publicPostTypes = usePublicPostTypes();\n\tconst postTypesWithArchives = useMemo(\n\t\t() => publicPostTypes?.filter( ( postType ) => postType.has_archive ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst existingTemplates = useExistingTemplates();\n\t// We need to keep track of naming conflicts. If a conflict\n\t// occurs, we need to add slug.\n\tconst postTypeLabels = useMemo(\n\t\t() =>\n\t\t\tpublicPostTypes?.reduce( ( accumulator, { labels } ) => {\n\t\t\t\tconst singularName = labels.singular_name.toLowerCase();\n\t\t\t\taccumulator[ singularName ] =\n\t\t\t\t\t( accumulator[ singularName ] || 0 ) + 1;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst needsUniqueIdentifier = useCallback(\n\t\t( { labels, slug } ) => {\n\t\t\tconst singularName = labels.singular_name.toLowerCase();\n\t\t\treturn postTypeLabels[ singularName ] > 1 && singularName !== slug;\n\t\t},\n\t\t[ postTypeLabels ]\n\t);\n\treturn useMemo(\n\t\t() =>\n\t\t\tpostTypesWithArchives\n\t\t\t\t?.filter(\n\t\t\t\t\t( postType ) =>\n\t\t\t\t\t\t! ( existingTemplates || [] ).some(\n\t\t\t\t\t\t\t( existingTemplate ) =>\n\t\t\t\t\t\t\t\texistingTemplate.slug ===\n\t\t\t\t\t\t\t\t'archive-' + postType.slug\n\t\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t.map( ( postType ) => {\n\t\t\t\t\tlet title;\n\t\t\t\t\tif ( needsUniqueIdentifier( postType ) ) {\n\t\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t\t// translators: %1s: Name of the post type e.g: \"Post\"; %2s: Slug of the post type e.g: \"book\".\n\t\t\t\t\t\t\t__( 'Archive: %1$s (%2$s)' ),\n\t\t\t\t\t\t\tpostType.labels.singular_name,\n\t\t\t\t\t\t\tpostType.slug\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t\t\t__( 'Archive: %s' ),\n\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tslug: 'archive-' + postType.slug,\n\t\t\t\t\t\tdescription: sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Displays an archive with the latest posts of type: %s.'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t),\n\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t// `icon` is the `menu_icon` property of a post type. We\n\t\t\t\t\t\t// only handle `dashicons` for now, even if the `menu_icon`\n\t\t\t\t\t\t// also supports urls and svg as values.\n\t\t\t\t\t\ticon:\n\t\t\t\t\t\t\ttypeof postType.icon === 'string' &&\n\t\t\t\t\t\t\tpostType.icon.startsWith( 'dashicons-' )\n\t\t\t\t\t\t\t\t? postType.icon.slice( 10 )\n\t\t\t\t\t\t\t\t: archive,\n\t\t\t\t\t\ttemplatePrefix: 'archive',\n\t\t\t\t\t};\n\t\t\t\t} ) || [],\n\t\t[ postTypesWithArchives, existingTemplates, needsUniqueIdentifier ]\n\t);\n}\n\nexport const usePostTypeMenuItems = ( onClickMenuItem ) => {\n\tconst publicPostTypes = usePublicPostTypes();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\t// We need to keep track of naming conflicts. If a conflict\n\t// occurs, we need to add slug.\n\tconst templateLabels = useMemo(\n\t\t() =>\n\t\t\tpublicPostTypes?.reduce( ( accumulator, { labels } ) => {\n\t\t\t\tconst templateName = (\n\t\t\t\t\tlabels.template_name || labels.singular_name\n\t\t\t\t).toLowerCase();\n\t\t\t\taccumulator[ templateName ] =\n\t\t\t\t\t( accumulator[ templateName ] || 0 ) + 1;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst needsUniqueIdentifier = useCallback(\n\t\t( { labels, slug } ) => {\n\t\t\tconst templateName = (\n\t\t\t\tlabels.template_name || labels.singular_name\n\t\t\t).toLowerCase();\n\t\t\treturn templateLabels[ templateName ] > 1 && templateName !== slug;\n\t\t},\n\t\t[ templateLabels ]\n\t);\n\n\t// `page`is a special case in template hierarchy.\n\tconst templatePrefixes = useMemo(\n\t\t() =>\n\t\t\tpublicPostTypes?.reduce( ( accumulator, { slug } ) => {\n\t\t\t\tlet suffix = slug;\n\t\t\t\tif ( slug !== 'page' ) {\n\t\t\t\t\tsuffix = `single-${ suffix }`;\n\t\t\t\t}\n\t\t\t\taccumulator[ slug ] = suffix;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicPostTypes ]\n\t);\n\tconst postTypesInfo = useEntitiesInfo( 'postType', templatePrefixes );\n\tconst menuItems = ( publicPostTypes || [] ).reduce(\n\t\t( accumulator, postType ) => {\n\t\t\tconst { slug, labels, icon } = postType;\n\t\t\t// We need to check if the general template is part of the\n\t\t\t// defaultTemplateTypes. If it is, just use that info and\n\t\t\t// augment it with the specific template functionality.\n\t\t\tconst generalTemplateSlug = templatePrefixes[ slug ];\n\t\t\tconst defaultTemplateType = defaultTemplateTypes?.find(\n\t\t\t\t( { slug: _slug } ) => _slug === generalTemplateSlug\n\t\t\t);\n\t\t\tconst _needsUniqueIdentifier = needsUniqueIdentifier( postType );\n\t\t\tlet menuItemTitle =\n\t\t\t\tlabels.template_name ||\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t__( 'Single item: %s' ),\n\t\t\t\t\tlabels.singular_name\n\t\t\t\t);\n\t\t\tif ( _needsUniqueIdentifier ) {\n\t\t\t\tmenuItemTitle = labels.template_name\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the template e.g: \"Single Item: Post\". 2: Slug of the post type e.g: \"book\".\n\t\t\t\t\t\t\t_x( '%1$s (%2$s)', 'post type menu label' ),\n\t\t\t\t\t\t\tlabels.template_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the post type e.g: \"Post\". 2: Slug of the post type e.g: \"book\".\n\t\t\t\t\t\t\t_x(\n\t\t\t\t\t\t\t\t'Single item: %1$s (%2$s)',\n\t\t\t\t\t\t\t\t'post type menu label'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tlabels.singular_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t );\n\t\t\t}\n\t\t\tconst menuItem = defaultTemplateType\n\t\t\t\t? {\n\t\t\t\t\t\t...defaultTemplateType,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t }\n\t\t\t\t: {\n\t\t\t\t\t\tslug: generalTemplateSlug,\n\t\t\t\t\t\ttitle: menuItemTitle,\n\t\t\t\t\t\tdescription: sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t\t\t\t\t__( 'Displays a single item: %s.' ),\n\t\t\t\t\t\t\tlabels.singular_name\n\t\t\t\t\t\t),\n\t\t\t\t\t\t// `icon` is the `menu_icon` property of a post type. We\n\t\t\t\t\t\t// only handle `dashicons` for now, even if the `menu_icon`\n\t\t\t\t\t\t// also supports urls and svg as values.\n\t\t\t\t\t\ticon:\n\t\t\t\t\t\t\ttypeof icon === 'string' &&\n\t\t\t\t\t\t\ticon.startsWith( 'dashicons-' )\n\t\t\t\t\t\t\t\t? icon.slice( 10 )\n\t\t\t\t\t\t\t\t: post,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t };\n\t\t\tconst hasEntities = postTypesInfo?.[ slug ]?.hasEntities;\n\t\t\t// We have a different template creation flow only if they have entities.\n\t\t\tif ( hasEntities ) {\n\t\t\t\tmenuItem.onClick = ( template ) => {\n\t\t\t\t\tonClickMenuItem( {\n\t\t\t\t\t\ttype: 'postType',\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\tconfig: {\n\t\t\t\t\t\t\trecordNamePath: 'title.rendered',\n\t\t\t\t\t\t\tqueryArgs: ( { search } ) => {\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t_fields: 'id,title,slug,link',\n\t\t\t\t\t\t\t\t\torderBy: search ? 'relevance' : 'modified',\n\t\t\t\t\t\t\t\t\texclude:\n\t\t\t\t\t\t\t\t\t\tpostTypesInfo[ slug ]\n\t\t\t\t\t\t\t\t\t\t\t.existingEntitiesIds,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tgetSpecificTemplate: ( suggestion ) => {\n\t\t\t\t\t\t\t\tconst templateSlug = prefixSlug(\n\t\t\t\t\t\t\t\t\ttemplatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t\tsuggestion.slug\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\ttitle: templateSlug,\n\t\t\t\t\t\t\t\t\tslug: templateSlug,\n\t\t\t\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlabels,\n\t\t\t\t\t\ttemplate,\n\t\t\t\t\t} );\n\t\t\t\t};\n\t\t\t}\n\t\t\t// We don't need to add the menu item if there are no entities.\n\t\t\tif ( hasEntities ) {\n\t\t\t\taccumulator.push( menuItem );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t},\n\t\t[]\n\t);\n\t// Split menu items into two groups: one for the default post types\n\t// and one for the rest.\n\tconst postTypesMenuItems = useMemo(\n\t\t() =>\n\t\t\tmenuItems.reduce(\n\t\t\t\t( accumulator, postType ) => {\n\t\t\t\t\tconst { slug } = postType;\n\t\t\t\t\tlet key = 'postTypesMenuItems';\n\t\t\t\t\tif ( slug === 'page' ) {\n\t\t\t\t\t\tkey = 'defaultPostTypesMenuItems';\n\t\t\t\t\t}\n\t\t\t\t\taccumulator[ key ].push( postType );\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{ defaultPostTypesMenuItems: [], postTypesMenuItems: [] }\n\t\t\t),\n\t\t[ menuItems ]\n\t);\n\treturn postTypesMenuItems;\n};\n\nexport const useTaxonomiesMenuItems = ( onClickMenuItem ) => {\n\tconst publicTaxonomies = usePublicTaxonomies();\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\t// `category` and `post_tag` are special cases in template hierarchy.\n\tconst templatePrefixes = useMemo(\n\t\t() =>\n\t\t\tpublicTaxonomies?.reduce( ( accumulator, { slug } ) => {\n\t\t\t\tlet suffix = slug;\n\t\t\t\tif ( ! [ 'category', 'post_tag' ].includes( slug ) ) {\n\t\t\t\t\tsuffix = `taxonomy-${ suffix }`;\n\t\t\t\t}\n\t\t\t\tif ( slug === 'post_tag' ) {\n\t\t\t\t\tsuffix = `tag`;\n\t\t\t\t}\n\t\t\t\taccumulator[ slug ] = suffix;\n\t\t\t\treturn accumulator;\n\t\t\t}, {} ),\n\t\t[ publicTaxonomies ]\n\t);\n\t// We need to keep track of naming conflicts. If a conflict\n\t// occurs, we need to add slug.\n\tconst taxonomyLabels = publicTaxonomies?.reduce(\n\t\t( accumulator, { labels } ) => {\n\t\t\tconst templateName = (\n\t\t\t\tlabels.template_name || labels.singular_name\n\t\t\t).toLowerCase();\n\t\t\taccumulator[ templateName ] =\n\t\t\t\t( accumulator[ templateName ] || 0 ) + 1;\n\t\t\treturn accumulator;\n\t\t},\n\t\t{}\n\t);\n\tconst needsUniqueIdentifier = ( labels, slug ) => {\n\t\tif ( [ 'category', 'post_tag' ].includes( slug ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tconst templateName = (\n\t\t\tlabels.template_name || labels.singular_name\n\t\t).toLowerCase();\n\t\treturn taxonomyLabels[ templateName ] > 1 && templateName !== slug;\n\t};\n\tconst taxonomiesInfo = useEntitiesInfo( 'taxonomy', templatePrefixes );\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst menuItems = ( publicTaxonomies || [] ).reduce(\n\t\t( accumulator, taxonomy ) => {\n\t\t\tconst { slug, labels } = taxonomy;\n\t\t\t// We need to check if the general template is part of the\n\t\t\t// defaultTemplateTypes. If it is, just use that info and\n\t\t\t// augment it with the specific template functionality.\n\t\t\tconst generalTemplateSlug = templatePrefixes[ slug ];\n\t\t\tconst defaultTemplateType = defaultTemplateTypes?.find(\n\t\t\t\t( { slug: _slug } ) => _slug === generalTemplateSlug\n\t\t\t);\n\t\t\tconst hasGeneralTemplate =\n\t\t\t\texistingTemplateSlugs?.includes( generalTemplateSlug );\n\t\t\tconst _needsUniqueIdentifier = needsUniqueIdentifier(\n\t\t\t\tlabels,\n\t\t\t\tslug\n\t\t\t);\n\t\t\tlet menuItemTitle = labels.template_name || labels.singular_name;\n\t\t\tif ( _needsUniqueIdentifier ) {\n\t\t\t\tmenuItemTitle = labels.template_name\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the template e.g: \"Products by Category\". 2: Slug of the taxonomy e.g: \"product_cat\".\n\t\t\t\t\t\t\t_x( '%1$s (%2$s)', 'taxonomy template menu label' ),\n\t\t\t\t\t\t\tlabels.template_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// translators: 1: Name of the taxonomy e.g: \"Category\". 2: Slug of the taxonomy e.g: \"product_cat\".\n\t\t\t\t\t\t\t_x( '%1$s (%2$s)', 'taxonomy menu label' ),\n\t\t\t\t\t\t\tlabels.singular_name,\n\t\t\t\t\t\t\tslug\n\t\t\t\t\t );\n\t\t\t}\n\t\t\tconst menuItem = defaultTemplateType\n\t\t\t\t? {\n\t\t\t\t\t\t...defaultTemplateType,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t }\n\t\t\t\t: {\n\t\t\t\t\t\tslug: generalTemplateSlug,\n\t\t\t\t\t\ttitle: menuItemTitle,\n\t\t\t\t\t\tdescription: sprintf(\n\t\t\t\t\t\t\t// translators: %s: Name of the taxonomy e.g: \"Product Categories\".\n\t\t\t\t\t\t\t__( 'Displays taxonomy: %s.' ),\n\t\t\t\t\t\t\tlabels.singular_name\n\t\t\t\t\t\t),\n\t\t\t\t\t\ticon: blockMeta,\n\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t };\n\t\t\tconst hasEntities = taxonomiesInfo?.[ slug ]?.hasEntities;\n\t\t\t// We have a different template creation flow only if they have entities.\n\t\t\tif ( hasEntities ) {\n\t\t\t\tmenuItem.onClick = ( template ) => {\n\t\t\t\t\tonClickMenuItem( {\n\t\t\t\t\t\ttype: 'taxonomy',\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\tconfig: {\n\t\t\t\t\t\t\tqueryArgs: ( { search } ) => {\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t_fields: 'id,name,slug,link',\n\t\t\t\t\t\t\t\t\torderBy: search ? 'name' : 'count',\n\t\t\t\t\t\t\t\t\texclude:\n\t\t\t\t\t\t\t\t\t\ttaxonomiesInfo[ slug ]\n\t\t\t\t\t\t\t\t\t\t\t.existingEntitiesIds,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tgetSpecificTemplate: ( suggestion ) => {\n\t\t\t\t\t\t\t\tconst templateSlug = prefixSlug(\n\t\t\t\t\t\t\t\t\ttemplatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t\tsuggestion.slug\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\ttitle: templateSlug,\n\t\t\t\t\t\t\t\t\tslug: templateSlug,\n\t\t\t\t\t\t\t\t\ttemplatePrefix: templatePrefixes[ slug ],\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlabels,\n\t\t\t\t\t\thasGeneralTemplate,\n\t\t\t\t\t\ttemplate,\n\t\t\t\t\t} );\n\t\t\t\t};\n\t\t\t}\n\t\t\t// We don't need to add the menu item if there are no\n\t\t\t// entities and the general template exists.\n\t\t\tif ( ! hasGeneralTemplate || hasEntities ) {\n\t\t\t\taccumulator.push( menuItem );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t},\n\t\t[]\n\t);\n\t// Split menu items into two groups: one for the default taxonomies\n\t// and one for the rest.\n\tconst taxonomiesMenuItems = useMemo(\n\t\t() =>\n\t\t\tmenuItems.reduce(\n\t\t\t\t( accumulator, taxonomy ) => {\n\t\t\t\t\tconst { slug } = taxonomy;\n\t\t\t\t\tlet key = 'taxonomiesMenuItems';\n\t\t\t\t\tif ( [ 'category', 'tag' ].includes( slug ) ) {\n\t\t\t\t\t\tkey = 'defaultTaxonomiesMenuItems';\n\t\t\t\t\t}\n\t\t\t\t\taccumulator[ key ].push( taxonomy );\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{ defaultTaxonomiesMenuItems: [], taxonomiesMenuItems: [] }\n\t\t\t),\n\t\t[ menuItems ]\n\t);\n\treturn taxonomiesMenuItems;\n};\n\nconst USE_AUTHOR_MENU_ITEM_TEMPLATE_PREFIX = { user: 'author' };\nconst USE_AUTHOR_MENU_ITEM_QUERY_PARAMETERS = { user: { who: 'authors' } };\nexport function useAuthorMenuItem( onClickMenuItem ) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst authorInfo = useEntitiesInfo(\n\t\t'root',\n\t\tUSE_AUTHOR_MENU_ITEM_TEMPLATE_PREFIX,\n\t\tUSE_AUTHOR_MENU_ITEM_QUERY_PARAMETERS\n\t);\n\tlet authorMenuItem = defaultTemplateTypes?.find(\n\t\t( { slug } ) => slug === 'author'\n\t);\n\tif ( ! authorMenuItem ) {\n\t\tauthorMenuItem = {\n\t\t\tdescription: __(\n\t\t\t\t'Displays latest posts written by a single author.'\n\t\t\t),\n\t\t\tslug: 'author',\n\t\t\ttitle: 'Author',\n\t\t};\n\t}\n\tconst hasGeneralTemplate = !! existingTemplates?.find(\n\t\t( { slug } ) => slug === 'author'\n\t);\n\tif ( authorInfo.user?.hasEntities ) {\n\t\tauthorMenuItem = { ...authorMenuItem, templatePrefix: 'author' };\n\t\tauthorMenuItem.onClick = ( template ) => {\n\t\t\tonClickMenuItem( {\n\t\t\t\ttype: 'root',\n\t\t\t\tslug: 'user',\n\t\t\t\tconfig: {\n\t\t\t\t\tqueryArgs: ( { search } ) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t_fields: 'id,name,slug,link',\n\t\t\t\t\t\t\torderBy: search ? 'name' : 'registered_date',\n\t\t\t\t\t\t\texclude: authorInfo.user.existingEntitiesIds,\n\t\t\t\t\t\t\twho: 'authors',\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\t\t\t\tgetSpecificTemplate: ( suggestion ) => {\n\t\t\t\t\t\tconst templateSlug = prefixSlug(\n\t\t\t\t\t\t\t'author',\n\t\t\t\t\t\t\tsuggestion.slug\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\ttitle: sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Name of the author e.g: \"Admin\".\n\t\t\t\t\t\t\t\t__( 'Author: %s' ),\n\t\t\t\t\t\t\t\tsuggestion.name\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tslug: templateSlug,\n\t\t\t\t\t\t\ttemplatePrefix: 'author',\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tlabels: {\n\t\t\t\t\tsingular_name: __( 'Author' ),\n\t\t\t\t\tsearch_items: __( 'Search Authors' ),\n\t\t\t\t\tnot_found: __( 'No authors found.' ),\n\t\t\t\t\tall_items: __( 'All Authors' ),\n\t\t\t\t},\n\t\t\t\thasGeneralTemplate,\n\t\t\t\ttemplate,\n\t\t\t} );\n\t\t};\n\t}\n\tif ( ! hasGeneralTemplate || authorInfo.user?.hasEntities ) {\n\t\treturn authorMenuItem;\n\t}\n}\n\n/**\n * Helper hook that returns information about an entity having\n * records that we can create a specific template for.\n *\n * For example we can search for `terms` in `taxonomy` entity or\n * `posts` in `postType` entity.\n *\n * First we need to find the existing records with an associated template,\n * to query afterwards for any remaining record, by excluding them.\n *\n * @param {string} entityName The entity's name.\n * @param {Record<string,string>} templatePrefixes An object with the entity's slug as key and the template prefix as value.\n * @param {Record<string,Object>} additionalQueryParameters An object with the entity's slug as key and additional query parameters as value.\n * @return {Record<string,EntitiesInfo>} An object with the entity's slug as key and the EntitiesInfo as value.\n */\nconst useEntitiesInfo = (\n\tentityName,\n\ttemplatePrefixes,\n\tadditionalQueryParameters = EMPTY_OBJECT\n) => {\n\tconst entitiesHasRecords = useSelect(\n\t\t( select ) => {\n\t\t\treturn Object.keys( templatePrefixes || {} ).reduce(\n\t\t\t\t( accumulator, slug ) => {\n\t\t\t\t\taccumulator[ slug ] = !! select(\n\t\t\t\t\t\tcoreStore\n\t\t\t\t\t).getEntityRecords( entityName, slug, {\n\t\t\t\t\t\tper_page: 1,\n\t\t\t\t\t\t_fields: 'id',\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t\t...additionalQueryParameters[ slug ],\n\t\t\t\t\t} )?.length;\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{}\n\t\t\t);\n\t\t},\n\t\t[ templatePrefixes, entityName, additionalQueryParameters ]\n\t);\n\tconst entitiesInfo = useMemo( () => {\n\t\treturn Object.keys( templatePrefixes || {} ).reduce(\n\t\t\t( accumulator, slug ) => {\n\t\t\t\taccumulator[ slug ] = {\n\t\t\t\t\thasEntities: entitiesHasRecords[ slug ],\n\t\t\t\t};\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\t}, [ templatePrefixes, entitiesHasRecords ] );\n\treturn entitiesInfo;\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["coreStore"]
7
+ }
@@ -1,82 +1,91 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var app_exports = {};
30
+ __export(app_exports, {
31
+ default: () => App
6
32
  });
7
- exports.default = App;
8
- var _data = require("@wordpress/data");
9
- var _router = require("@wordpress/router");
10
- var _element = require("@wordpress/element");
11
- var _coreData = require("@wordpress/core-data");
12
- var _layout = _interopRequireDefault(require("../layout"));
13
- var _lockUnlock = require("../../lock-unlock");
14
- var _store = require("../../store");
15
- var _useCommonCommands = require("../../hooks/commands/use-common-commands");
16
- var _useSetCommandContext = _interopRequireDefault(require("../../hooks/commands/use-set-command-context"));
17
- var _siteEditorRoutes = require("../site-editor-routes");
18
- var _isPreviewingTheme = require("../../utils/is-previewing-theme");
19
- var _jsxRuntime = require("react/jsx-runtime");
20
- /**
21
- * WordPress dependencies
22
- */
23
-
24
- /**
25
- * Internal dependencies
26
- */
27
-
28
- const {
29
- RouterProvider
30
- } = (0, _lockUnlock.unlock)(_router.privateApis);
33
+ module.exports = __toCommonJS(app_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_data = require("@wordpress/data");
36
+ var import_router = require("@wordpress/router");
37
+ var import_element = require("@wordpress/element");
38
+ var import_core_data = require("@wordpress/core-data");
39
+ var import_layout = __toESM(require("../layout"));
40
+ var import_lock_unlock = require("../../lock-unlock");
41
+ var import_store = require("../../store");
42
+ var import_use_common_commands = require("../../hooks/commands/use-common-commands");
43
+ var import_use_set_command_context = __toESM(require("../../hooks/commands/use-set-command-context"));
44
+ var import_site_editor_routes = require("../site-editor-routes");
45
+ var import_is_previewing_theme = require("../../utils/is-previewing-theme");
46
+ const { RouterProvider } = (0, import_lock_unlock.unlock)(import_router.privateApis);
31
47
  function AppLayout() {
32
- (0, _useCommonCommands.useCommonCommands)();
33
- (0, _useSetCommandContext.default)();
34
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_layout.default, {});
48
+ (0, import_use_common_commands.useCommonCommands)();
49
+ (0, import_use_set_command_context.default)();
50
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_layout.default, {});
35
51
  }
36
52
  function App() {
37
- (0, _siteEditorRoutes.useRegisterSiteEditorRoutes)();
38
- const {
39
- routes,
40
- currentTheme,
41
- editorSettings
42
- } = (0, _data.useSelect)(select => {
53
+ (0, import_site_editor_routes.useRegisterSiteEditorRoutes)();
54
+ const { routes, currentTheme, editorSettings } = (0, import_data.useSelect)((select) => {
43
55
  return {
44
- routes: (0, _lockUnlock.unlock)(select(_store.store)).getRoutes(),
45
- currentTheme: select(_coreData.store).getCurrentTheme(),
56
+ routes: (0, import_lock_unlock.unlock)(select(import_store.store)).getRoutes(),
57
+ currentTheme: select(import_core_data.store).getCurrentTheme(),
46
58
  // This is a temp solution until the has_theme_json value is available for the current theme.
47
- editorSettings: select(_store.store).getSettings()
59
+ editorSettings: select(import_store.store).getSettings()
48
60
  };
49
61
  }, []);
50
- const beforeNavigate = (0, _element.useCallback)(({
51
- path,
52
- query
53
- }) => {
54
- if (!(0, _isPreviewingTheme.isPreviewingTheme)()) {
55
- return {
56
- path,
57
- query
58
- };
62
+ const beforeNavigate = (0, import_element.useCallback)(({ path, query }) => {
63
+ if (!(0, import_is_previewing_theme.isPreviewingTheme)()) {
64
+ return { path, query };
59
65
  }
60
66
  return {
61
67
  path,
62
68
  query: {
63
69
  ...query,
64
- wp_theme_preview: 'wp_theme_preview' in query ? query.wp_theme_preview : (0, _isPreviewingTheme.currentlyPreviewingTheme)()
70
+ wp_theme_preview: "wp_theme_preview" in query ? query.wp_theme_preview : (0, import_is_previewing_theme.currentlyPreviewingTheme)()
65
71
  }
66
72
  };
67
73
  }, []);
68
- const matchResolverArgsValue = (0, _element.useMemo)(() => ({
69
- siteData: {
70
- currentTheme,
71
- editorSettings
74
+ const matchResolverArgsValue = (0, import_element.useMemo)(
75
+ () => ({
76
+ siteData: { currentTheme, editorSettings }
77
+ }),
78
+ [currentTheme, editorSettings]
79
+ );
80
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
81
+ RouterProvider,
82
+ {
83
+ routes,
84
+ pathArg: "p",
85
+ beforeNavigate,
86
+ matchResolverArgs: matchResolverArgsValue,
87
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AppLayout, {})
72
88
  }
73
- }), [currentTheme, editorSettings]);
74
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(RouterProvider, {
75
- routes: routes,
76
- pathArg: "p",
77
- beforeNavigate: beforeNavigate,
78
- matchResolverArgs: matchResolverArgsValue,
79
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(AppLayout, {})
80
- });
89
+ );
81
90
  }
82
- //# sourceMappingURL=index.js.map
91
+ //# sourceMappingURL=index.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_data","require","_router","_element","_coreData","_layout","_interopRequireDefault","_lockUnlock","_store","_useCommonCommands","_useSetCommandContext","_siteEditorRoutes","_isPreviewingTheme","_jsxRuntime","RouterProvider","unlock","routerPrivateApis","AppLayout","useCommonCommands","useSetCommandContext","jsx","default","App","useRegisterSiteEditorRoutes","routes","currentTheme","editorSettings","useSelect","select","editSiteStore","getRoutes","coreStore","getCurrentTheme","getSettings","beforeNavigate","useCallback","path","query","isPreviewingTheme","wp_theme_preview","currentlyPreviewingTheme","matchResolverArgsValue","useMemo","siteData","pathArg","matchResolverArgs","children"],"sources":["@wordpress/edit-site/src/components/app/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport Layout from '../layout';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useCommonCommands } from '../../hooks/commands/use-common-commands';\nimport useSetCommandContext from '../../hooks/commands/use-set-command-context';\nimport { useRegisterSiteEditorRoutes } from '../site-editor-routes';\nimport {\n\tcurrentlyPreviewingTheme,\n\tisPreviewingTheme,\n} from '../../utils/is-previewing-theme';\n\nconst { RouterProvider } = unlock( routerPrivateApis );\n\nfunction AppLayout() {\n\tuseCommonCommands();\n\tuseSetCommandContext();\n\n\treturn <Layout />;\n}\n\nexport default function App() {\n\tuseRegisterSiteEditorRoutes();\n\tconst { routes, currentTheme, editorSettings } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\troutes: unlock( select( editSiteStore ) ).getRoutes(),\n\t\t\tcurrentTheme: select( coreStore ).getCurrentTheme(),\n\t\t\t// This is a temp solution until the has_theme_json value is available for the current theme.\n\t\t\teditorSettings: select( editSiteStore ).getSettings(),\n\t\t};\n\t}, [] );\n\n\tconst beforeNavigate = useCallback( ( { path, query } ) => {\n\t\tif ( ! isPreviewingTheme() ) {\n\t\t\treturn { path, query };\n\t\t}\n\n\t\treturn {\n\t\t\tpath,\n\t\t\tquery: {\n\t\t\t\t...query,\n\t\t\t\twp_theme_preview:\n\t\t\t\t\t'wp_theme_preview' in query\n\t\t\t\t\t\t? query.wp_theme_preview\n\t\t\t\t\t\t: currentlyPreviewingTheme(),\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst matchResolverArgsValue = useMemo(\n\t\t() => ( {\n\t\t\tsiteData: { currentTheme, editorSettings },\n\t\t} ),\n\t\t[ currentTheme, editorSettings ]\n\t);\n\n\treturn (\n\t\t<RouterProvider\n\t\t\troutes={ routes }\n\t\t\tpathArg=\"p\"\n\t\t\tbeforeNavigate={ beforeNavigate }\n\t\t\tmatchResolverArgs={ matchResolverArgsValue }\n\t\t>\n\t\t\t<AppLayout />\n\t\t</RouterProvider>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAKA,IAAAI,OAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,kBAAA,GAAAR,OAAA;AACA,IAAAS,qBAAA,GAAAJ,sBAAA,CAAAL,OAAA;AACA,IAAAU,iBAAA,GAAAV,OAAA;AACA,IAAAW,kBAAA,GAAAX,OAAA;AAGyC,IAAAY,WAAA,GAAAZ,OAAA;AApBzC;AACA;AACA;;AAMA;AACA;AACA;;AAYA,MAAM;EAAEa;AAAe,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAEtD,SAASC,SAASA,CAAA,EAAG;EACpB,IAAAC,oCAAiB,EAAC,CAAC;EACnB,IAAAC,6BAAoB,EAAC,CAAC;EAEtB,oBAAO,IAAAN,WAAA,CAAAO,GAAA,EAACf,OAAA,CAAAgB,OAAM,IAAE,CAAC;AAClB;AAEe,SAASC,GAAGA,CAAA,EAAG;EAC7B,IAAAC,6CAA2B,EAAC,CAAC;EAC7B,MAAM;IAAEC,MAAM;IAAEC,YAAY;IAAEC;EAAe,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACzE,OAAO;MACNJ,MAAM,EAAE,IAAAT,kBAAM,EAAEa,MAAM,CAAEC,YAAc,CAAE,CAAC,CAACC,SAAS,CAAC,CAAC;MACrDL,YAAY,EAAEG,MAAM,CAAEG,eAAU,CAAC,CAACC,eAAe,CAAC,CAAC;MACnD;MACAN,cAAc,EAAEE,MAAM,CAAEC,YAAc,CAAC,CAACI,WAAW,CAAC;IACrD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,cAAc,GAAG,IAAAC,oBAAW,EAAE,CAAE;IAAEC,IAAI;IAAEC;EAAM,CAAC,KAAM;IAC1D,IAAK,CAAE,IAAAC,oCAAiB,EAAC,CAAC,EAAG;MAC5B,OAAO;QAAEF,IAAI;QAAEC;MAAM,CAAC;IACvB;IAEA,OAAO;MACND,IAAI;MACJC,KAAK,EAAE;QACN,GAAGA,KAAK;QACRE,gBAAgB,EACf,kBAAkB,IAAIF,KAAK,GACxBA,KAAK,CAACE,gBAAgB,GACtB,IAAAC,2CAAwB,EAAC;MAC9B;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,sBAAsB,GAAG,IAAAC,gBAAO,EACrC,OAAQ;IACPC,QAAQ,EAAE;MAAElB,YAAY;MAAEC;IAAe;EAC1C,CAAC,CAAE,EACH,CAAED,YAAY,EAAEC,cAAc,CAC/B,CAAC;EAED,oBACC,IAAAb,WAAA,CAAAO,GAAA,EAACN,cAAc;IACdU,MAAM,EAAGA,MAAQ;IACjBoB,OAAO,EAAC,GAAG;IACXV,cAAc,EAAGA,cAAgB;IACjCW,iBAAiB,EAAGJ,sBAAwB;IAAAK,QAAA,eAE5C,IAAAjC,WAAA,CAAAO,GAAA,EAACH,SAAS,IAAE;EAAC,CACE,CAAC;AAEnB","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/app/index.js"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport Layout from '../layout';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useCommonCommands } from '../../hooks/commands/use-common-commands';\nimport useSetCommandContext from '../../hooks/commands/use-set-command-context';\nimport { useRegisterSiteEditorRoutes } from '../site-editor-routes';\nimport {\n\tcurrentlyPreviewingTheme,\n\tisPreviewingTheme,\n} from '../../utils/is-previewing-theme';\n\nconst { RouterProvider } = unlock( routerPrivateApis );\n\nfunction AppLayout() {\n\tuseCommonCommands();\n\tuseSetCommandContext();\n\n\treturn <Layout />;\n}\n\nexport default function App() {\n\tuseRegisterSiteEditorRoutes();\n\tconst { routes, currentTheme, editorSettings } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\troutes: unlock( select( editSiteStore ) ).getRoutes(),\n\t\t\tcurrentTheme: select( coreStore ).getCurrentTheme(),\n\t\t\t// This is a temp solution until the has_theme_json value is available for the current theme.\n\t\t\teditorSettings: select( editSiteStore ).getSettings(),\n\t\t};\n\t}, [] );\n\n\tconst beforeNavigate = useCallback( ( { path, query } ) => {\n\t\tif ( ! isPreviewingTheme() ) {\n\t\t\treturn { path, query };\n\t\t}\n\n\t\treturn {\n\t\t\tpath,\n\t\t\tquery: {\n\t\t\t\t...query,\n\t\t\t\twp_theme_preview:\n\t\t\t\t\t'wp_theme_preview' in query\n\t\t\t\t\t\t? query.wp_theme_preview\n\t\t\t\t\t\t: currentlyPreviewingTheme(),\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst matchResolverArgsValue = useMemo(\n\t\t() => ( {\n\t\t\tsiteData: { currentTheme, editorSettings },\n\t\t} ),\n\t\t[ currentTheme, editorSettings ]\n\t);\n\n\treturn (\n\t\t<RouterProvider\n\t\t\troutes={ routes }\n\t\t\tpathArg=\"p\"\n\t\t\tbeforeNavigate={ beforeNavigate }\n\t\t\tmatchResolverArgs={ matchResolverArgsValue }\n\t\t>\n\t\t\t<AppLayout />\n\t\t</RouterProvider>\n\t);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA4BQ;AAzBR,kBAA0B;AAC1B,oBAAiD;AACjD,qBAAqC;AACrC,uBAAmC;AAKnC,oBAAmB;AACnB,yBAAuB;AACvB,mBAAuC;AACvC,iCAAkC;AAClC,qCAAiC;AACjC,gCAA4C;AAC5C,iCAGO;AAEP,MAAM,EAAE,eAAe,QAAI,2BAAQ,cAAAA,WAAkB;AAErD,SAAS,YAAY;AACpB,oDAAkB;AAClB,qCAAAC,SAAqB;AAErB,SAAO,4CAAC,cAAAC,SAAA,EAAO;AAChB;AAEe,SAAR,MAAuB;AAC7B,6DAA4B;AAC5B,QAAM,EAAE,QAAQ,cAAc,eAAe,QAAI,uBAAW,CAAE,WAAY;AACzE,WAAO;AAAA,MACN,YAAQ,2BAAQ,OAAQ,aAAAC,KAAc,CAAE,EAAE,UAAU;AAAA,MACpD,cAAc,OAAQ,iBAAAC,KAAU,EAAE,gBAAgB;AAAA;AAAA,MAElD,gBAAgB,OAAQ,aAAAD,KAAc,EAAE,YAAY;AAAA,IACrD;AAAA,EACD,GAAG,CAAC,CAAE;AAEN,QAAM,qBAAiB,4BAAa,CAAE,EAAE,MAAM,MAAM,MAAO;AAC1D,QAAK,KAAE,8CAAkB,GAAI;AAC5B,aAAO,EAAE,MAAM,MAAM;AAAA,IACtB;AAEA,WAAO;AAAA,MACN;AAAA,MACA,OAAO;AAAA,QACN,GAAG;AAAA,QACH,kBACC,sBAAsB,QACnB,MAAM,uBACN,qDAAyB;AAAA,MAC9B;AAAA,IACD;AAAA,EACD,GAAG,CAAC,CAAE;AAEN,QAAM,6BAAyB;AAAA,IAC9B,OAAQ;AAAA,MACP,UAAU,EAAE,cAAc,eAAe;AAAA,IAC1C;AAAA,IACA,CAAE,cAAc,cAAe;AAAA,EAChC;AAEA,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,SAAQ;AAAA,MACR;AAAA,MACA,mBAAoB;AAAA,MAEpB,sDAAC,aAAU;AAAA;AAAA,EACZ;AAEF;",
6
+ "names": ["routerPrivateApis", "useSetCommandContext", "Layout", "editSiteStore", "coreStore"]
7
+ }
@@ -1,83 +1,80 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var use_editor_iframe_props_exports = {};
30
+ __export(use_editor_iframe_props_exports, {
31
+ default: () => useEditorIframeProps
6
32
  });
7
- exports.default = useEditorIframeProps;
8
- var _clsx = _interopRequireDefault(require("clsx"));
9
- var _data = require("@wordpress/data");
10
- var _keycodes = require("@wordpress/keycodes");
11
- var _element = require("@wordpress/element");
12
- var _i18n = require("@wordpress/i18n");
13
- var _editor = require("@wordpress/editor");
14
- var _router = require("@wordpress/router");
15
- var _url = require("@wordpress/url");
16
- var _lockUnlock = require("../../lock-unlock");
17
- /**
18
- * External dependencies
19
- */
20
-
21
- /**
22
- * WordPress dependencies
23
- */
24
-
25
- /**
26
- * Internal dependencies
27
- */
28
-
29
- const {
30
- useLocation,
31
- useHistory
32
- } = (0, _lockUnlock.unlock)(_router.privateApis);
33
+ module.exports = __toCommonJS(use_editor_iframe_props_exports);
34
+ var import_clsx = __toESM(require("clsx"));
35
+ var import_data = require("@wordpress/data");
36
+ var import_keycodes = require("@wordpress/keycodes");
37
+ var import_element = require("@wordpress/element");
38
+ var import_i18n = require("@wordpress/i18n");
39
+ var import_editor = require("@wordpress/editor");
40
+ var import_router = require("@wordpress/router");
41
+ var import_url = require("@wordpress/url");
42
+ var import_lock_unlock = require("../../lock-unlock");
43
+ const { useLocation, useHistory } = (0, import_lock_unlock.unlock)(import_router.privateApis);
33
44
  function useEditorIframeProps() {
34
- const {
35
- query,
36
- path
37
- } = useLocation();
45
+ const { query, path } = useLocation();
38
46
  const history = useHistory();
39
- const {
40
- canvas = 'view'
41
- } = query;
42
- const currentPostIsTrashed = (0, _data.useSelect)(select => {
43
- return select(_editor.store).getCurrentPostAttribute('status') === 'trash';
47
+ const { canvas = "view" } = query;
48
+ const currentPostIsTrashed = (0, import_data.useSelect)((select) => {
49
+ return select(import_editor.store).getCurrentPostAttribute("status") === "trash";
44
50
  }, []);
45
- const [isFocused, setIsFocused] = (0, _element.useState)(false);
46
- (0, _element.useEffect)(() => {
47
- if (canvas === 'edit') {
51
+ const [isFocused, setIsFocused] = (0, import_element.useState)(false);
52
+ (0, import_element.useEffect)(() => {
53
+ if (canvas === "edit") {
48
54
  setIsFocused(false);
49
55
  }
50
56
  }, [canvas]);
51
-
52
- // In view mode, make the canvas iframe be perceived and behave as a button
53
- // to switch to edit mode, with a meaningful label and no title attribute.
54
57
  const viewModeIframeProps = {
55
- 'aria-label': (0, _i18n.__)('Edit'),
56
- 'aria-disabled': currentPostIsTrashed,
58
+ "aria-label": (0, import_i18n.__)("Edit"),
59
+ "aria-disabled": currentPostIsTrashed,
57
60
  title: null,
58
- role: 'button',
61
+ role: "button",
59
62
  tabIndex: 0,
60
63
  onFocus: () => setIsFocused(true),
61
64
  onBlur: () => setIsFocused(false),
62
- onKeyDown: event => {
63
- const {
64
- keyCode
65
- } = event;
66
- if ((keyCode === _keycodes.ENTER || keyCode === _keycodes.SPACE) && !currentPostIsTrashed) {
65
+ onKeyDown: (event) => {
66
+ const { keyCode } = event;
67
+ if ((keyCode === import_keycodes.ENTER || keyCode === import_keycodes.SPACE) && !currentPostIsTrashed) {
67
68
  event.preventDefault();
68
- history.navigate((0, _url.addQueryArgs)(path, {
69
- canvas: 'edit'
70
- }), {
71
- transition: 'canvas-mode-edit-transition'
69
+ history.navigate((0, import_url.addQueryArgs)(path, { canvas: "edit" }), {
70
+ transition: "canvas-mode-edit-transition"
72
71
  });
73
72
  }
74
73
  },
75
- onClick: () => history.navigate((0, _url.addQueryArgs)(path, {
76
- canvas: 'edit'
77
- }), {
78
- transition: 'canvas-mode-edit-transition'
74
+ onClick: () => history.navigate((0, import_url.addQueryArgs)(path, { canvas: "edit" }), {
75
+ transition: "canvas-mode-edit-transition"
79
76
  }),
80
- onClickCapture: event => {
77
+ onClickCapture: (event) => {
81
78
  if (currentPostIsTrashed) {
82
79
  event.preventDefault();
83
80
  event.stopPropagation();
@@ -86,10 +83,10 @@ function useEditorIframeProps() {
86
83
  readonly: true
87
84
  };
88
85
  return {
89
- className: (0, _clsx.default)('edit-site-visual-editor__editor-canvas', {
90
- 'is-focused': isFocused && canvas === 'view'
86
+ className: (0, import_clsx.default)("edit-site-visual-editor__editor-canvas", {
87
+ "is-focused": isFocused && canvas === "view"
91
88
  }),
92
- ...(canvas === 'view' ? viewModeIframeProps : {})
89
+ ...canvas === "view" ? viewModeIframeProps : {}
93
90
  };
94
91
  }
95
- //# sourceMappingURL=use-editor-iframe-props.js.map
92
+ //# sourceMappingURL=use-editor-iframe-props.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_data","_keycodes","_element","_i18n","_editor","_router","_url","_lockUnlock","useLocation","useHistory","unlock","routerPrivateApis","useEditorIframeProps","query","path","history","canvas","currentPostIsTrashed","useSelect","select","editorStore","getCurrentPostAttribute","isFocused","setIsFocused","useState","useEffect","viewModeIframeProps","__","title","role","tabIndex","onFocus","onBlur","onKeyDown","event","keyCode","ENTER","SPACE","preventDefault","navigate","addQueryArgs","transition","onClick","onClickCapture","stopPropagation","readonly","className","clsx"],"sources":["@wordpress/edit-site/src/components/block-editor/use-editor-iframe-props.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { ENTER, SPACE } from '@wordpress/keycodes';\nimport { useState, useEffect } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { store as editorStore } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nexport default function useEditorIframeProps() {\n\tconst { query, path } = useLocation();\n\tconst history = useHistory();\n\tconst { canvas = 'view' } = query;\n\tconst currentPostIsTrashed = useSelect( ( select ) => {\n\t\treturn (\n\t\t\tselect( editorStore ).getCurrentPostAttribute( 'status' ) ===\n\t\t\t'trash'\n\t\t);\n\t}, [] );\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( canvas === 'edit' ) {\n\t\t\tsetIsFocused( false );\n\t\t}\n\t}, [ canvas ] );\n\n\t// In view mode, make the canvas iframe be perceived and behave as a button\n\t// to switch to edit mode, with a meaningful label and no title attribute.\n\tconst viewModeIframeProps = {\n\t\t'aria-label': __( 'Edit' ),\n\t\t'aria-disabled': currentPostIsTrashed,\n\t\ttitle: null,\n\t\trole: 'button',\n\t\ttabIndex: 0,\n\t\tonFocus: () => setIsFocused( true ),\n\t\tonBlur: () => setIsFocused( false ),\n\t\tonKeyDown: ( event ) => {\n\t\t\tconst { keyCode } = event;\n\t\t\tif (\n\t\t\t\t( keyCode === ENTER || keyCode === SPACE ) &&\n\t\t\t\t! currentPostIsTrashed\n\t\t\t) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\thistory.navigate( addQueryArgs( path, { canvas: 'edit' } ), {\n\t\t\t\t\ttransition: 'canvas-mode-edit-transition',\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\tonClick: () =>\n\t\t\thistory.navigate( addQueryArgs( path, { canvas: 'edit' } ), {\n\t\t\t\ttransition: 'canvas-mode-edit-transition',\n\t\t\t} ),\n\t\tonClickCapture: ( event ) => {\n\t\t\tif ( currentPostIsTrashed ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t},\n\t\treadonly: true,\n\t};\n\n\treturn {\n\t\tclassName: clsx( 'edit-site-visual-editor__editor-canvas', {\n\t\t\t'is-focused': isFocused && canvas === 'view',\n\t\t} ),\n\t\t...( canvas === 'view' ? viewModeIframeProps : {} ),\n\t};\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,IAAA,GAAAP,OAAA;AAKA,IAAAQ,WAAA,GAAAR,OAAA;AAnBA;AACA;AACA;;AAGA;AACA;AACA;;AASA;AACA;AACA;;AAGA,MAAM;EAAES,WAAW;EAAEC;AAAW,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAEhD,SAASC,oBAAoBA,CAAA,EAAG;EAC9C,MAAM;IAAEC,KAAK;IAAEC;EAAK,CAAC,GAAGN,WAAW,CAAC,CAAC;EACrC,MAAMO,OAAO,GAAGN,UAAU,CAAC,CAAC;EAC5B,MAAM;IAAEO,MAAM,GAAG;EAAO,CAAC,GAAGH,KAAK;EACjC,MAAMI,oBAAoB,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACrD,OACCA,MAAM,CAAEC,aAAY,CAAC,CAACC,uBAAuB,CAAE,QAAS,CAAC,KACzD,OAAO;EAET,CAAC,EAAE,EAAG,CAAC;EACP,MAAM,CAAEC,SAAS,EAAEC,YAAY,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAErD,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKT,MAAM,KAAK,MAAM,EAAG;MACxBO,YAAY,CAAE,KAAM,CAAC;IACtB;EACD,CAAC,EAAE,CAAEP,MAAM,CAAG,CAAC;;EAEf;EACA;EACA,MAAMU,mBAAmB,GAAG;IAC3B,YAAY,EAAE,IAAAC,QAAE,EAAE,MAAO,CAAC;IAC1B,eAAe,EAAEV,oBAAoB;IACrCW,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE,QAAQ;IACdC,QAAQ,EAAE,CAAC;IACXC,OAAO,EAAEA,CAAA,KAAMR,YAAY,CAAE,IAAK,CAAC;IACnCS,MAAM,EAAEA,CAAA,KAAMT,YAAY,CAAE,KAAM,CAAC;IACnCU,SAAS,EAAIC,KAAK,IAAM;MACvB,MAAM;QAAEC;MAAQ,CAAC,GAAGD,KAAK;MACzB,IACC,CAAEC,OAAO,KAAKC,eAAK,IAAID,OAAO,KAAKE,eAAK,KACxC,CAAEpB,oBAAoB,EACrB;QACDiB,KAAK,CAACI,cAAc,CAAC,CAAC;QACtBvB,OAAO,CAACwB,QAAQ,CAAE,IAAAC,iBAAY,EAAE1B,IAAI,EAAE;UAAEE,MAAM,EAAE;QAAO,CAAE,CAAC,EAAE;UAC3DyB,UAAU,EAAE;QACb,CAAE,CAAC;MACJ;IACD,CAAC;IACDC,OAAO,EAAEA,CAAA,KACR3B,OAAO,CAACwB,QAAQ,CAAE,IAAAC,iBAAY,EAAE1B,IAAI,EAAE;MAAEE,MAAM,EAAE;IAAO,CAAE,CAAC,EAAE;MAC3DyB,UAAU,EAAE;IACb,CAAE,CAAC;IACJE,cAAc,EAAIT,KAAK,IAAM;MAC5B,IAAKjB,oBAAoB,EAAG;QAC3BiB,KAAK,CAACI,cAAc,CAAC,CAAC;QACtBJ,KAAK,CAACU,eAAe,CAAC,CAAC;MACxB;IACD,CAAC;IACDC,QAAQ,EAAE;EACX,CAAC;EAED,OAAO;IACNC,SAAS,EAAE,IAAAC,aAAI,EAAE,wCAAwC,EAAE;MAC1D,YAAY,EAAEzB,SAAS,IAAIN,MAAM,KAAK;IACvC,CAAE,CAAC;IACH,IAAKA,MAAM,KAAK,MAAM,GAAGU,mBAAmB,GAAG,CAAC,CAAC;EAClD,CAAC;AACF","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/block-editor/use-editor-iframe-props.js"],
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { ENTER, SPACE } from '@wordpress/keycodes';\nimport { useState, useEffect } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { store as editorStore } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nexport default function useEditorIframeProps() {\n\tconst { query, path } = useLocation();\n\tconst history = useHistory();\n\tconst { canvas = 'view' } = query;\n\tconst currentPostIsTrashed = useSelect( ( select ) => {\n\t\treturn (\n\t\t\tselect( editorStore ).getCurrentPostAttribute( 'status' ) ===\n\t\t\t'trash'\n\t\t);\n\t}, [] );\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( canvas === 'edit' ) {\n\t\t\tsetIsFocused( false );\n\t\t}\n\t}, [ canvas ] );\n\n\t// In view mode, make the canvas iframe be perceived and behave as a button\n\t// to switch to edit mode, with a meaningful label and no title attribute.\n\tconst viewModeIframeProps = {\n\t\t'aria-label': __( 'Edit' ),\n\t\t'aria-disabled': currentPostIsTrashed,\n\t\ttitle: null,\n\t\trole: 'button',\n\t\ttabIndex: 0,\n\t\tonFocus: () => setIsFocused( true ),\n\t\tonBlur: () => setIsFocused( false ),\n\t\tonKeyDown: ( event ) => {\n\t\t\tconst { keyCode } = event;\n\t\t\tif (\n\t\t\t\t( keyCode === ENTER || keyCode === SPACE ) &&\n\t\t\t\t! currentPostIsTrashed\n\t\t\t) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\thistory.navigate( addQueryArgs( path, { canvas: 'edit' } ), {\n\t\t\t\t\ttransition: 'canvas-mode-edit-transition',\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\tonClick: () =>\n\t\t\thistory.navigate( addQueryArgs( path, { canvas: 'edit' } ), {\n\t\t\t\ttransition: 'canvas-mode-edit-transition',\n\t\t\t} ),\n\t\tonClickCapture: ( event ) => {\n\t\t\tif ( currentPostIsTrashed ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t},\n\t\treadonly: true,\n\t};\n\n\treturn {\n\t\tclassName: clsx( 'edit-site-visual-editor__editor-canvas', {\n\t\t\t'is-focused': isFocused && canvas === 'view',\n\t\t} ),\n\t\t...( canvas === 'view' ? viewModeIframeProps : {} ),\n\t};\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAiB;AAKjB,kBAA0B;AAC1B,sBAA6B;AAC7B,qBAAoC;AACpC,kBAAmB;AACnB,oBAAqC;AACrC,oBAAiD;AACjD,iBAA6B;AAK7B,yBAAuB;AAEvB,MAAM,EAAE,aAAa,WAAW,QAAI,2BAAQ,cAAAA,WAAkB;AAE/C,SAAR,uBAAwC;AAC9C,QAAM,EAAE,OAAO,KAAK,IAAI,YAAY;AACpC,QAAM,UAAU,WAAW;AAC3B,QAAM,EAAE,SAAS,OAAO,IAAI;AAC5B,QAAM,2BAAuB,uBAAW,CAAE,WAAY;AACrD,WACC,OAAQ,cAAAC,KAAY,EAAE,wBAAyB,QAAS,MACxD;AAAA,EAEF,GAAG,CAAC,CAAE;AACN,QAAM,CAAE,WAAW,YAAa,QAAI,yBAAU,KAAM;AAEpD,gCAAW,MAAM;AAChB,QAAK,WAAW,QAAS;AACxB,mBAAc,KAAM;AAAA,IACrB;AAAA,EACD,GAAG,CAAE,MAAO,CAAE;AAId,QAAM,sBAAsB;AAAA,IAC3B,kBAAc,gBAAI,MAAO;AAAA,IACzB,iBAAiB;AAAA,IACjB,OAAO;AAAA,IACP,MAAM;AAAA,IACN,UAAU;AAAA,IACV,SAAS,MAAM,aAAc,IAAK;AAAA,IAClC,QAAQ,MAAM,aAAc,KAAM;AAAA,IAClC,WAAW,CAAE,UAAW;AACvB,YAAM,EAAE,QAAQ,IAAI;AACpB,WACG,YAAY,yBAAS,YAAY,0BACnC,CAAE,sBACD;AACD,cAAM,eAAe;AACrB,gBAAQ,aAAU,yBAAc,MAAM,EAAE,QAAQ,OAAO,CAAE,GAAG;AAAA,UAC3D,YAAY;AAAA,QACb,CAAE;AAAA,MACH;AAAA,IACD;AAAA,IACA,SAAS,MACR,QAAQ,aAAU,yBAAc,MAAM,EAAE,QAAQ,OAAO,CAAE,GAAG;AAAA,MAC3D,YAAY;AAAA,IACb,CAAE;AAAA,IACH,gBAAgB,CAAE,UAAW;AAC5B,UAAK,sBAAuB;AAC3B,cAAM,eAAe;AACrB,cAAM,gBAAgB;AAAA,MACvB;AAAA,IACD;AAAA,IACA,UAAU;AAAA,EACX;AAEA,SAAO;AAAA,IACN,eAAW,YAAAC,SAAM,0CAA0C;AAAA,MAC1D,cAAc,aAAa,WAAW;AAAA,IACvC,CAAE;AAAA,IACF,GAAK,WAAW,SAAS,sBAAsB,CAAC;AAAA,EACjD;AACD;",
6
+ "names": ["routerPrivateApis", "editorStore", "clsx"]
7
+ }
@@ -1,28 +1,40 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var use_navigate_to_entity_record_exports = {};
20
+ __export(use_navigate_to_entity_record_exports, {
21
+ default: () => useNavigateToEntityRecord
5
22
  });
6
- exports.default = useNavigateToEntityRecord;
7
- var _router = require("@wordpress/router");
8
- var _element = require("@wordpress/element");
9
- var _lockUnlock = require("../../lock-unlock");
10
- /**
11
- * WordPress dependencies
12
- */
13
-
14
- /**
15
- * Internal dependencies
16
- */
17
-
18
- const {
19
- useHistory
20
- } = (0, _lockUnlock.unlock)(_router.privateApis);
23
+ module.exports = __toCommonJS(use_navigate_to_entity_record_exports);
24
+ var import_router = require("@wordpress/router");
25
+ var import_element = require("@wordpress/element");
26
+ var import_lock_unlock = require("../../lock-unlock");
27
+ const { useHistory } = (0, import_lock_unlock.unlock)(import_router.privateApis);
21
28
  function useNavigateToEntityRecord() {
22
29
  const history = useHistory();
23
- const onNavigateToEntityRecord = (0, _element.useCallback)(params => {
24
- history.navigate(`/${params.postType}/${params.postId}?canvas=edit&focusMode=true`);
25
- }, [history]);
30
+ const onNavigateToEntityRecord = (0, import_element.useCallback)(
31
+ (params) => {
32
+ history.navigate(
33
+ `/${params.postType}/${params.postId}?canvas=edit&focusMode=true`
34
+ );
35
+ },
36
+ [history]
37
+ );
26
38
  return onNavigateToEntityRecord;
27
39
  }
28
- //# sourceMappingURL=use-navigate-to-entity-record.js.map
40
+ //# sourceMappingURL=use-navigate-to-entity-record.js.map