@wordpress/edit-site 6.12.1-next.082ed6819.0 → 6.13.1-next.cd6172eb0.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 (443) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-pattern/index.js +3 -16
  3. package/build/components/add-new-pattern/index.js.map +1 -1
  4. package/build/components/add-new-template/index.js +1 -5
  5. package/build/components/add-new-template/index.js.map +1 -1
  6. package/build/components/app/index.js +31 -29
  7. package/build/components/app/index.js.map +1 -1
  8. package/build/components/block-editor/use-editor-iframe-props.js +8 -8
  9. package/build/components/block-editor/use-editor-iframe-props.js.map +1 -1
  10. package/build/components/block-editor/use-navigate-to-entity-record.js +1 -5
  11. package/build/components/block-editor/use-navigate-to-entity-record.js.map +1 -1
  12. package/build/components/block-editor/use-site-editor-settings.js +4 -4
  13. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  14. package/build/components/dataviews-actions/index.js +1 -5
  15. package/build/components/dataviews-actions/index.js.map +1 -1
  16. package/build/components/editor/index.js +38 -22
  17. package/build/components/editor/index.js.map +1 -1
  18. package/build/components/editor/use-editor-title.js +5 -0
  19. package/build/components/editor/use-editor-title.js.map +1 -1
  20. package/build/components/editor/use-resolve-edited-entity.js +19 -4
  21. package/build/components/editor/use-resolve-edited-entity.js.map +1 -1
  22. package/build/components/global-styles/font-library-modal/context.js +0 -1
  23. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  24. package/build/components/global-styles/font-library-modal/font-collection.js +36 -26
  25. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  26. package/build/components/global-styles/font-library-modal/installed-fonts.js +0 -1
  27. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  28. package/build/components/global-styles/font-library-modal/upload-fonts.js +0 -1
  29. package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  30. package/build/components/global-styles-sidebar/index.js +5 -5
  31. package/build/components/global-styles-sidebar/index.js.map +1 -1
  32. package/build/components/layout/index.js +31 -13
  33. package/build/components/layout/index.js.map +1 -1
  34. package/build/components/page-patterns/delete-category-menu-item.js +1 -4
  35. package/build/components/page-patterns/delete-category-menu-item.js.map +1 -1
  36. package/build/components/page-patterns/fields.js +6 -11
  37. package/build/components/page-patterns/fields.js.map +1 -1
  38. package/build/components/page-patterns/index.js +14 -16
  39. package/build/components/page-patterns/index.js.map +1 -1
  40. package/build/components/page-templates/fields.js +8 -17
  41. package/build/components/page-templates/fields.js.map +1 -1
  42. package/build/components/page-templates/index.js +13 -12
  43. package/build/components/page-templates/index.js.map +1 -1
  44. package/build/components/post-edit/index.js +38 -3
  45. package/build/components/post-edit/index.js.map +1 -1
  46. package/build/components/post-list/index.js +25 -39
  47. package/build/components/post-list/index.js.map +1 -1
  48. package/build/components/posts-app/index.js +10 -16
  49. package/build/components/posts-app/index.js.map +1 -1
  50. package/build/components/posts-app-routes/index.js +3 -7
  51. package/build/components/posts-app-routes/index.js.map +1 -1
  52. package/build/components/posts-app-routes/{posts-edit.js → post-item.js} +9 -13
  53. package/build/components/posts-app-routes/post-item.js.map +1 -0
  54. package/build/components/posts-app-routes/posts.js +89 -0
  55. package/build/components/posts-app-routes/posts.js.map +1 -0
  56. package/build/components/resizable-frame/index.js +6 -5
  57. package/build/components/resizable-frame/index.js.map +1 -1
  58. package/build/components/save-panel/index.js +9 -6
  59. package/build/components/save-panel/index.js.map +1 -1
  60. package/build/components/sidebar-dataviews/add-new-view.js +7 -8
  61. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
  62. package/build/components/sidebar-dataviews/dataview-item.js +5 -8
  63. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  64. package/build/components/sidebar-dataviews/index.js +4 -3
  65. package/build/components/sidebar-dataviews/index.js.map +1 -1
  66. package/build/components/sidebar-global-styles-wrapper/index.js +18 -18
  67. package/build/components/sidebar-global-styles-wrapper/index.js.map +1 -1
  68. package/build/components/sidebar-navigation-item/index.js +8 -5
  69. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  70. package/build/components/sidebar-navigation-screen/index.js +2 -2
  71. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  72. package/build/components/sidebar-navigation-screen-global-styles/index.js +8 -19
  73. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  74. package/build/components/sidebar-navigation-screen-main/index.js +6 -14
  75. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  76. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -5
  77. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  78. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -7
  79. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  80. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +1 -6
  81. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  82. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +14 -20
  83. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  84. package/build/components/sidebar-navigation-screen-patterns/category-item.js +5 -7
  85. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  86. package/build/components/sidebar-navigation-screen-patterns/index.js +4 -5
  87. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  88. package/build/components/sidebar-navigation-screen-templates-browse/content.js +25 -16
  89. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  90. package/build/components/sidebar-navigation-screen-templates-browse/index.js +1 -14
  91. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  92. package/build/components/site-editor-routes/{home-view.js → home.js} +7 -8
  93. package/build/components/site-editor-routes/home.js.map +1 -0
  94. package/build/components/site-editor-routes/index.js +12 -18
  95. package/build/components/site-editor-routes/index.js.map +1 -1
  96. package/build/components/site-editor-routes/navigation-item.js +49 -0
  97. package/build/components/site-editor-routes/navigation-item.js.map +1 -0
  98. package/build/components/{posts-app-routes/home.js → site-editor-routes/navigation.js} +16 -18
  99. package/build/components/site-editor-routes/navigation.js.map +1 -0
  100. package/build/components/site-editor-routes/{pages-edit.js → page-item.js} +10 -17
  101. package/build/components/site-editor-routes/page-item.js.map +1 -0
  102. package/build/components/site-editor-routes/pages.js +87 -0
  103. package/build/components/site-editor-routes/pages.js.map +1 -0
  104. package/build/components/site-editor-routes/{home-edit.js → pattern-item.js} +11 -11
  105. package/build/components/site-editor-routes/pattern-item.js.map +1 -0
  106. package/build/components/site-editor-routes/{patterns-view.js → patterns.js} +6 -9
  107. package/build/components/site-editor-routes/patterns.js.map +1 -0
  108. package/build/components/site-editor-routes/{styles-view.js → styles.js} +28 -9
  109. package/build/components/site-editor-routes/styles.js.map +1 -0
  110. package/build/components/site-editor-routes/{templates-edit.js → template-item.js} +6 -11
  111. package/build/components/site-editor-routes/template-item.js.map +1 -0
  112. package/build/components/site-editor-routes/{patterns-edit.js → template-part-item.js} +6 -11
  113. package/build/components/site-editor-routes/template-part-item.js.map +1 -0
  114. package/build/components/site-editor-routes/{templates-list-view.js → templates.js} +20 -13
  115. package/build/components/site-editor-routes/templates.js.map +1 -0
  116. package/build/components/site-hub/index.js +3 -3
  117. package/build/components/site-hub/index.js.map +1 -1
  118. package/build/components/style-book/constants.js +8 -19
  119. package/build/components/style-book/constants.js.map +1 -1
  120. package/build/components/style-book/index.js +5 -0
  121. package/build/components/style-book/index.js.map +1 -1
  122. package/build/hooks/commands/use-common-commands.js +12 -48
  123. package/build/hooks/commands/use-common-commands.js.map +1 -1
  124. package/build/hooks/commands/use-set-command-context.js +2 -2
  125. package/build/hooks/commands/use-set-command-context.js.map +1 -1
  126. package/build/store/private-actions.js +7 -0
  127. package/build/store/private-actions.js.map +1 -1
  128. package/build/store/reducer.js +2 -0
  129. package/build/store/reducer.js.map +1 -1
  130. package/build/utils/is-previewing-theme.js +1 -1
  131. package/build/utils/is-previewing-theme.js.map +1 -1
  132. package/build/utils/use-activate-theme.js +9 -8
  133. package/build/utils/use-activate-theme.js.map +1 -1
  134. package/build-module/components/add-new-pattern/index.js +3 -16
  135. package/build-module/components/add-new-pattern/index.js.map +1 -1
  136. package/build-module/components/add-new-template/index.js +1 -5
  137. package/build-module/components/add-new-template/index.js.map +1 -1
  138. package/build-module/components/app/index.js +33 -31
  139. package/build-module/components/app/index.js.map +1 -1
  140. package/build-module/components/block-editor/use-editor-iframe-props.js +8 -8
  141. package/build-module/components/block-editor/use-editor-iframe-props.js.map +1 -1
  142. package/build-module/components/block-editor/use-navigate-to-entity-record.js +1 -5
  143. package/build-module/components/block-editor/use-navigate-to-entity-record.js.map +1 -1
  144. package/build-module/components/block-editor/use-site-editor-settings.js +4 -4
  145. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  146. package/build-module/components/dataviews-actions/index.js +1 -5
  147. package/build-module/components/dataviews-actions/index.js.map +1 -1
  148. package/build-module/components/editor/index.js +38 -22
  149. package/build-module/components/editor/index.js.map +1 -1
  150. package/build-module/components/editor/use-editor-title.js +5 -0
  151. package/build-module/components/editor/use-editor-title.js.map +1 -1
  152. package/build-module/components/editor/use-resolve-edited-entity.js +19 -4
  153. package/build-module/components/editor/use-resolve-edited-entity.js.map +1 -1
  154. package/build-module/components/global-styles/font-library-modal/context.js +0 -1
  155. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  156. package/build-module/components/global-styles/font-library-modal/font-collection.js +37 -27
  157. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  158. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +0 -1
  159. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  160. package/build-module/components/global-styles/font-library-modal/upload-fonts.js +0 -1
  161. package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  162. package/build-module/components/global-styles-sidebar/index.js +5 -5
  163. package/build-module/components/global-styles-sidebar/index.js.map +1 -1
  164. package/build-module/components/layout/index.js +33 -15
  165. package/build-module/components/layout/index.js.map +1 -1
  166. package/build-module/components/page-patterns/delete-category-menu-item.js +1 -4
  167. package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -1
  168. package/build-module/components/page-patterns/fields.js +6 -11
  169. package/build-module/components/page-patterns/fields.js.map +1 -1
  170. package/build-module/components/page-patterns/index.js +14 -16
  171. package/build-module/components/page-patterns/index.js.map +1 -1
  172. package/build-module/components/page-templates/fields.js +7 -14
  173. package/build-module/components/page-templates/fields.js.map +1 -1
  174. package/build-module/components/page-templates/index.js +13 -12
  175. package/build-module/components/page-templates/index.js.map +1 -1
  176. package/build-module/components/post-edit/index.js +38 -3
  177. package/build-module/components/post-edit/index.js.map +1 -1
  178. package/build-module/components/post-list/index.js +25 -39
  179. package/build-module/components/post-list/index.js.map +1 -1
  180. package/build-module/components/posts-app/index.js +11 -17
  181. package/build-module/components/posts-app/index.js.map +1 -1
  182. package/build-module/components/posts-app-routes/index.js +3 -7
  183. package/build-module/components/posts-app-routes/index.js.map +1 -1
  184. package/build-module/components/posts-app-routes/{posts-edit.js → post-item.js} +8 -12
  185. package/build-module/components/posts-app-routes/post-item.js.map +1 -0
  186. package/build-module/components/posts-app-routes/posts.js +81 -0
  187. package/build-module/components/posts-app-routes/posts.js.map +1 -0
  188. package/build-module/components/resizable-frame/index.js +6 -5
  189. package/build-module/components/resizable-frame/index.js.map +1 -1
  190. package/build-module/components/save-panel/index.js +9 -6
  191. package/build-module/components/save-panel/index.js.map +1 -1
  192. package/build-module/components/sidebar-dataviews/add-new-view.js +7 -8
  193. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
  194. package/build-module/components/sidebar-dataviews/dataview-item.js +5 -8
  195. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  196. package/build-module/components/sidebar-dataviews/index.js +4 -3
  197. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  198. package/build-module/components/sidebar-global-styles-wrapper/index.js +18 -18
  199. package/build-module/components/sidebar-global-styles-wrapper/index.js.map +1 -1
  200. package/build-module/components/sidebar-navigation-item/index.js +8 -5
  201. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  202. package/build-module/components/sidebar-navigation-screen/index.js +2 -2
  203. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  204. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +9 -20
  205. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  206. package/build-module/components/sidebar-navigation-screen-main/index.js +6 -14
  207. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  208. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -5
  209. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  210. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -7
  211. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  212. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +1 -6
  213. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  214. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +14 -20
  215. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  216. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +5 -7
  217. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  218. package/build-module/components/sidebar-navigation-screen-patterns/index.js +4 -5
  219. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  220. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +25 -16
  221. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  222. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +1 -14
  223. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  224. package/build-module/components/site-editor-routes/{home-edit.js → home.js} +5 -7
  225. package/build-module/components/site-editor-routes/home.js.map +1 -0
  226. package/build-module/components/site-editor-routes/index.js +12 -18
  227. package/build-module/components/site-editor-routes/index.js.map +1 -1
  228. package/build-module/components/site-editor-routes/navigation-item.js +41 -0
  229. package/build-module/components/site-editor-routes/navigation-item.js.map +1 -0
  230. package/build-module/components/site-editor-routes/navigation.js +38 -0
  231. package/build-module/components/site-editor-routes/navigation.js.map +1 -0
  232. package/build-module/components/site-editor-routes/{pages-edit.js → page-item.js} +9 -16
  233. package/build-module/components/site-editor-routes/page-item.js.map +1 -0
  234. package/build-module/components/site-editor-routes/pages.js +79 -0
  235. package/build-module/components/site-editor-routes/pages.js.map +1 -0
  236. package/build-module/components/site-editor-routes/pattern-item.js +18 -0
  237. package/build-module/components/site-editor-routes/pattern-item.js.map +1 -0
  238. package/build-module/components/site-editor-routes/{patterns-view.js → patterns.js} +5 -8
  239. package/build-module/components/site-editor-routes/patterns.js.map +1 -0
  240. package/build-module/components/site-editor-routes/styles.js +44 -0
  241. package/build-module/components/site-editor-routes/styles.js.map +1 -0
  242. package/build-module/components/site-editor-routes/{templates-edit.js → template-item.js} +5 -10
  243. package/build-module/components/site-editor-routes/template-item.js.map +1 -0
  244. package/build-module/components/site-editor-routes/template-part-item.js +18 -0
  245. package/build-module/components/site-editor-routes/template-part-item.js.map +1 -0
  246. package/build-module/components/site-editor-routes/templates.js +33 -0
  247. package/build-module/components/site-editor-routes/templates.js.map +1 -0
  248. package/build-module/components/site-hub/index.js +3 -3
  249. package/build-module/components/site-hub/index.js.map +1 -1
  250. package/build-module/components/style-book/constants.js +8 -19
  251. package/build-module/components/style-book/constants.js.map +1 -1
  252. package/build-module/components/style-book/index.js +5 -0
  253. package/build-module/components/style-book/index.js.map +1 -1
  254. package/build-module/hooks/commands/use-common-commands.js +12 -48
  255. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  256. package/build-module/hooks/commands/use-set-command-context.js +2 -2
  257. package/build-module/hooks/commands/use-set-command-context.js.map +1 -1
  258. package/build-module/store/private-actions.js +6 -0
  259. package/build-module/store/private-actions.js.map +1 -1
  260. package/build-module/store/reducer.js +2 -0
  261. package/build-module/store/reducer.js.map +1 -1
  262. package/build-module/utils/is-previewing-theme.js +1 -1
  263. package/build-module/utils/is-previewing-theme.js.map +1 -1
  264. package/build-module/utils/use-activate-theme.js +9 -8
  265. package/build-module/utils/use-activate-theme.js.map +1 -1
  266. package/build-style/style-rtl.css +94 -12
  267. package/build-style/style.css +94 -12
  268. package/package.json +40 -40
  269. package/src/components/add-new-pattern/index.js +9 -17
  270. package/src/components/add-new-template/index.js +3 -5
  271. package/src/components/app/index.js +34 -35
  272. package/src/components/block-editor/use-editor-iframe-props.js +5 -4
  273. package/src/components/block-editor/use-navigate-to-entity-record.js +3 -1
  274. package/src/components/block-editor/use-site-editor-settings.js +6 -6
  275. package/src/components/dataviews-actions/index.js +1 -5
  276. package/src/components/editor/index.js +64 -29
  277. package/src/components/editor/use-editor-title.js +4 -0
  278. package/src/components/editor/use-resolve-edited-entity.js +17 -2
  279. package/src/components/global-styles/font-library-modal/font-collection.js +40 -27
  280. package/src/components/global-styles/font-library-modal/style.scss +12 -5
  281. package/src/components/global-styles/style.scss +4 -0
  282. package/src/components/global-styles-sidebar/index.js +4 -4
  283. package/src/components/layout/index.js +36 -6
  284. package/src/components/page-patterns/delete-category-menu-item.js +3 -4
  285. package/src/components/page-patterns/fields.js +12 -11
  286. package/src/components/page-patterns/index.js +16 -14
  287. package/src/components/page-templates/fields.js +4 -15
  288. package/src/components/page-templates/index.js +18 -13
  289. package/src/components/post-edit/index.js +36 -2
  290. package/src/components/post-list/index.js +43 -39
  291. package/src/components/posts-app/index.js +9 -18
  292. package/src/components/posts-app-routes/index.js +3 -14
  293. package/src/components/posts-app-routes/{posts-edit.js → post-item.js} +5 -9
  294. package/src/components/posts-app-routes/posts.js +66 -0
  295. package/src/components/resizable-frame/index.js +6 -7
  296. package/src/components/save-panel/index.js +11 -5
  297. package/src/components/sidebar-dataviews/add-new-view.js +9 -9
  298. package/src/components/sidebar-dataviews/dataview-item.js +5 -8
  299. package/src/components/sidebar-dataviews/index.js +2 -2
  300. package/src/components/sidebar-dataviews/style.scss +2 -2
  301. package/src/components/sidebar-global-styles-wrapper/index.js +24 -30
  302. package/src/components/sidebar-navigation-item/index.js +7 -5
  303. package/src/components/sidebar-navigation-item/style.scss +1 -2
  304. package/src/components/sidebar-navigation-screen/index.js +2 -2
  305. package/src/components/sidebar-navigation-screen/style.scss +2 -2
  306. package/src/components/sidebar-navigation-screen-global-styles/index.js +13 -34
  307. package/src/components/sidebar-navigation-screen-main/index.js +6 -10
  308. package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +3 -5
  309. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -2
  310. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +6 -6
  311. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +9 -21
  312. package/src/components/sidebar-navigation-screen-patterns/category-item.js +5 -20
  313. package/src/components/sidebar-navigation-screen-patterns/index.js +3 -4
  314. package/src/components/sidebar-navigation-screen-templates-browse/content.js +24 -18
  315. package/src/components/sidebar-navigation-screen-templates-browse/index.js +1 -14
  316. package/src/components/site-editor-routes/{home-view.js → home.js} +4 -5
  317. package/src/components/site-editor-routes/index.js +22 -34
  318. package/src/components/site-editor-routes/navigation-item.js +39 -0
  319. package/src/components/site-editor-routes/navigation.js +34 -0
  320. package/src/components/site-editor-routes/{pages-edit.js → page-item.js} +6 -14
  321. package/src/components/site-editor-routes/pages.js +66 -0
  322. package/src/components/site-editor-routes/pattern-item.js +15 -0
  323. package/src/components/site-editor-routes/patterns.js +15 -0
  324. package/src/components/site-editor-routes/styles.js +39 -0
  325. package/src/components/site-editor-routes/template-item.js +15 -0
  326. package/src/components/site-editor-routes/template-part-item.js +15 -0
  327. package/src/components/site-editor-routes/templates.js +26 -0
  328. package/src/components/site-hub/index.js +3 -6
  329. package/src/components/style-book/constants.ts +8 -19
  330. package/src/components/style-book/index.js +5 -0
  331. package/src/hooks/commands/use-common-commands.js +14 -72
  332. package/src/hooks/commands/use-set-command-context.js +2 -2
  333. package/src/store/private-actions.js +7 -0
  334. package/src/store/reducer.js +2 -0
  335. package/src/utils/is-previewing-theme.js +1 -3
  336. package/src/utils/use-activate-theme.js +4 -3
  337. package/build/components/layout/router.js +0 -92
  338. package/build/components/layout/router.js.map +0 -1
  339. package/build/components/posts-app-routes/home.js.map +0 -1
  340. package/build/components/posts-app-routes/posts-edit.js.map +0 -1
  341. package/build/components/posts-app-routes/posts-list-view-quick-edit.js +0 -63
  342. package/build/components/posts-app-routes/posts-list-view-quick-edit.js.map +0 -1
  343. package/build/components/posts-app-routes/posts-list-view.js +0 -48
  344. package/build/components/posts-app-routes/posts-list-view.js.map +0 -1
  345. package/build/components/posts-app-routes/posts-view-quick-edit.js +0 -60
  346. package/build/components/posts-app-routes/posts-view-quick-edit.js.map +0 -1
  347. package/build/components/posts-app-routes/posts-view.js +0 -41
  348. package/build/components/posts-app-routes/posts-view.js.map +0 -1
  349. package/build/components/routes/link.js +0 -69
  350. package/build/components/routes/link.js.map +0 -1
  351. package/build/components/site-editor-routes/home-edit.js.map +0 -1
  352. package/build/components/site-editor-routes/home-view.js.map +0 -1
  353. package/build/components/site-editor-routes/navigation-edit.js +0 -29
  354. package/build/components/site-editor-routes/navigation-edit.js.map +0 -1
  355. package/build/components/site-editor-routes/navigation-item-edit.js +0 -31
  356. package/build/components/site-editor-routes/navigation-item-edit.js.map +0 -1
  357. package/build/components/site-editor-routes/navigation-item-view.js +0 -30
  358. package/build/components/site-editor-routes/navigation-item-view.js.map +0 -1
  359. package/build/components/site-editor-routes/navigation-view.js +0 -28
  360. package/build/components/site-editor-routes/navigation-view.js.map +0 -1
  361. package/build/components/site-editor-routes/pages-edit.js.map +0 -1
  362. package/build/components/site-editor-routes/pages-list-view-quick-edit.js +0 -64
  363. package/build/components/site-editor-routes/pages-list-view-quick-edit.js.map +0 -1
  364. package/build/components/site-editor-routes/pages-list-view.js +0 -47
  365. package/build/components/site-editor-routes/pages-list-view.js.map +0 -1
  366. package/build/components/site-editor-routes/pages-view-quick-edit.js +0 -61
  367. package/build/components/site-editor-routes/pages-view-quick-edit.js.map +0 -1
  368. package/build/components/site-editor-routes/pages-view.js +0 -42
  369. package/build/components/site-editor-routes/pages-view.js.map +0 -1
  370. package/build/components/site-editor-routes/patterns-edit.js.map +0 -1
  371. package/build/components/site-editor-routes/patterns-view.js.map +0 -1
  372. package/build/components/site-editor-routes/styles-view.js.map +0 -1
  373. package/build/components/site-editor-routes/templates-edit.js.map +0 -1
  374. package/build/components/site-editor-routes/templates-list-view.js.map +0 -1
  375. package/build/components/site-editor-routes/templates-view.js +0 -29
  376. package/build/components/site-editor-routes/templates-view.js.map +0 -1
  377. package/build-module/components/layout/router.js +0 -84
  378. package/build-module/components/layout/router.js.map +0 -1
  379. package/build-module/components/posts-app-routes/home.js +0 -40
  380. package/build-module/components/posts-app-routes/home.js.map +0 -1
  381. package/build-module/components/posts-app-routes/posts-edit.js.map +0 -1
  382. package/build-module/components/posts-app-routes/posts-list-view-quick-edit.js +0 -55
  383. package/build-module/components/posts-app-routes/posts-list-view-quick-edit.js.map +0 -1
  384. package/build-module/components/posts-app-routes/posts-list-view.js +0 -40
  385. package/build-module/components/posts-app-routes/posts-list-view.js.map +0 -1
  386. package/build-module/components/posts-app-routes/posts-view-quick-edit.js +0 -52
  387. package/build-module/components/posts-app-routes/posts-view-quick-edit.js.map +0 -1
  388. package/build-module/components/posts-app-routes/posts-view.js +0 -33
  389. package/build-module/components/posts-app-routes/posts-view.js.map +0 -1
  390. package/build-module/components/routes/link.js +0 -61
  391. package/build-module/components/routes/link.js.map +0 -1
  392. package/build-module/components/site-editor-routes/home-edit.js.map +0 -1
  393. package/build-module/components/site-editor-routes/home-view.js +0 -17
  394. package/build-module/components/site-editor-routes/home-view.js.map +0 -1
  395. package/build-module/components/site-editor-routes/navigation-edit.js +0 -21
  396. package/build-module/components/site-editor-routes/navigation-edit.js.map +0 -1
  397. package/build-module/components/site-editor-routes/navigation-item-edit.js +0 -23
  398. package/build-module/components/site-editor-routes/navigation-item-edit.js.map +0 -1
  399. package/build-module/components/site-editor-routes/navigation-item-view.js +0 -22
  400. package/build-module/components/site-editor-routes/navigation-item-view.js.map +0 -1
  401. package/build-module/components/site-editor-routes/navigation-view.js +0 -20
  402. package/build-module/components/site-editor-routes/navigation-view.js.map +0 -1
  403. package/build-module/components/site-editor-routes/pages-edit.js.map +0 -1
  404. package/build-module/components/site-editor-routes/pages-list-view-quick-edit.js +0 -56
  405. package/build-module/components/site-editor-routes/pages-list-view-quick-edit.js.map +0 -1
  406. package/build-module/components/site-editor-routes/pages-list-view.js +0 -39
  407. package/build-module/components/site-editor-routes/pages-list-view.js.map +0 -1
  408. package/build-module/components/site-editor-routes/pages-view-quick-edit.js +0 -53
  409. package/build-module/components/site-editor-routes/pages-view-quick-edit.js.map +0 -1
  410. package/build-module/components/site-editor-routes/pages-view.js +0 -34
  411. package/build-module/components/site-editor-routes/pages-view.js.map +0 -1
  412. package/build-module/components/site-editor-routes/patterns-edit.js +0 -23
  413. package/build-module/components/site-editor-routes/patterns-edit.js.map +0 -1
  414. package/build-module/components/site-editor-routes/patterns-view.js.map +0 -1
  415. package/build-module/components/site-editor-routes/styles-view.js +0 -25
  416. package/build-module/components/site-editor-routes/styles-view.js.map +0 -1
  417. package/build-module/components/site-editor-routes/templates-edit.js.map +0 -1
  418. package/build-module/components/site-editor-routes/templates-list-view.js +0 -26
  419. package/build-module/components/site-editor-routes/templates-list-view.js.map +0 -1
  420. package/build-module/components/site-editor-routes/templates-view.js +0 -21
  421. package/build-module/components/site-editor-routes/templates-view.js.map +0 -1
  422. package/src/components/layout/router.js +0 -86
  423. package/src/components/posts-app-routes/home.js +0 -36
  424. package/src/components/posts-app-routes/posts-list-view-quick-edit.js +0 -52
  425. package/src/components/posts-app-routes/posts-list-view.js +0 -40
  426. package/src/components/posts-app-routes/posts-view-quick-edit.js +0 -49
  427. package/src/components/posts-app-routes/posts-view.js +0 -35
  428. package/src/components/routes/link.js +0 -68
  429. package/src/components/site-editor-routes/home-edit.js +0 -17
  430. package/src/components/site-editor-routes/navigation-edit.js +0 -22
  431. package/src/components/site-editor-routes/navigation-item-edit.js +0 -26
  432. package/src/components/site-editor-routes/navigation-item-view.js +0 -25
  433. package/src/components/site-editor-routes/navigation-view.js +0 -21
  434. package/src/components/site-editor-routes/pages-list-view-quick-edit.js +0 -56
  435. package/src/components/site-editor-routes/pages-list-view.js +0 -44
  436. package/src/components/site-editor-routes/pages-view-quick-edit.js +0 -53
  437. package/src/components/site-editor-routes/pages-view.js +0 -39
  438. package/src/components/site-editor-routes/patterns-edit.js +0 -24
  439. package/src/components/site-editor-routes/patterns-view.js +0 -22
  440. package/src/components/site-editor-routes/styles-view.js +0 -26
  441. package/src/components/site-editor-routes/templates-edit.js +0 -22
  442. package/src/components/site-editor-routes/templates-list-view.js +0 -28
  443. package/src/components/site-editor-routes/templates-view.js +0 -22
@@ -1 +1 @@
1
- {"version":3,"names":["Button","__experimentalConfirmDialog","ConfirmDialog","__experimentalHStack","HStack","__experimentalHeading","Heading","Navigator","useNavigator","__experimentalSpacer","Spacer","__experimentalText","Text","__experimentalVStack","VStack","Flex","Notice","ProgressBar","CheckboxControl","useEntityRecord","store","coreStore","useSelect","useContext","useEffect","useState","__","_x","sprintf","isRTL","chevronLeft","chevronRight","privateApis","blockEditorPrivateApis","FontLibraryContext","FontCard","LibraryFontVariant","sortFontFaces","setUIValuesNeeded","loadFontFaceInBrowser","unloadFontFaceInBrowser","getDisplaySrcFromFontFace","unlock","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","InstalledFonts","_libraryFontSelected$","baseCustomFonts","libraryFontSelected","handleSetLibraryFontSelected","refreshLibrary","uninstallFontFamily","isResolvingLibrary","isInstalling","saveFontFamilies","getFontFacesActivated","fontFamilies","setFontFamilies","isConfirmDeleteOpen","setIsConfirmDeleteOpen","notice","setNotice","baseFontFamilies","undefined","globalStylesId","select","__experimentalGetCurrentGlobalStylesId","globalStyles","fontFamiliesHasChanges","edits","settings","typography","themeFonts","theme","map","f","source","sort","a","b","name","localeCompare","themeFontsSlugs","Set","slug","baseThemeFonts","concat","filter","has","customFontFamilyId","id","canUserDelete","canUser","kind","shouldDisplayDeleteButton","handleUninstallClick","handleUpdate","type","message","error","getFontFacesToDisplay","font","fontFace","length","fontFamily","fontStyle","fontWeight","getFontCardVariantsText","variantsInstalled","variantsActive","activeFontsCount","selectedFontsCount","isIndeterminate","isSelectAllChecked","toggleSelectAll","_fontFamilies$library","initialFonts","newFonts","forEach","face","src","hasFonts","className","children","initialPath","Screen","path","spacing","status","onRemove","as","role","navigatorPath","variantsText","onClick","ConfirmDeleteDialog","isOpen","setIsOpen","justify","BackButton","icon","size","label","level","margin","checked","onChange","indeterminate","__nextHasNoMarginBottom","i","__next40pxDefaultSize","isDestructive","variant","disabled","accessibleWhenDisabled","navigator","handleConfirmUninstall","goBack","handleCancelUninstall","cancelButtonText","confirmButtonText","onCancel","onConfirm"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\tNavigator,\n\tuseNavigator,\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tNotice,\n\tProgressBar,\n\tCheckboxControl,\n} from '@wordpress/components';\nimport { useEntityRecord, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useEffect, useState } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './context';\nimport FontCard from './font-card';\nimport LibraryFontVariant from './library-font-variant';\nimport { sortFontFaces } from './utils/sort-font-faces';\nimport {\n\tsetUIValuesNeeded,\n\tloadFontFaceInBrowser,\n\tunloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n} from './utils';\nimport { unlock } from '../../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction InstalledFonts() {\n\tconst {\n\t\tbaseCustomFonts,\n\t\tlibraryFontSelected,\n\t\thandleSetLibraryFontSelected,\n\t\trefreshLibrary,\n\t\tuninstallFontFamily,\n\t\tisResolvingLibrary,\n\t\tisInstalling,\n\t\tsaveFontFamilies,\n\t\tgetFontFacesActivated,\n\t} = useContext( FontLibraryContext );\n\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\tconst [ isConfirmDeleteOpen, setIsConfirmDeleteOpen ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst globalStylesId = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn __experimentalGetCurrentGlobalStylesId();\n\t} );\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\tconst fontFamiliesHasChanges =\n\t\t!! globalStyles?.edits?.settings?.typography?.fontFamilies;\n\n\tconst themeFonts = fontFamilies?.theme\n\t\t? fontFamilies.theme\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\tconst themeFontsSlugs = new Set( themeFonts.map( ( f ) => f.slug ) );\n\tconst baseThemeFonts = baseFontFamilies?.theme\n\t\t? themeFonts.concat(\n\t\t\t\tbaseFontFamilies.theme\n\t\t\t\t\t.filter( ( f ) => ! themeFontsSlugs.has( f.slug ) )\n\t\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t )\n\t\t: [];\n\n\tconst customFontFamilyId =\n\t\tlibraryFontSelected?.source === 'custom' && libraryFontSelected?.id;\n\n\tconst canUserDelete = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\treturn (\n\t\t\t\tcustomFontFamilyId &&\n\t\t\t\tcanUser( 'delete', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_font_family',\n\t\t\t\t\tid: customFontFamilyId,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\t[ customFontFamilyId ]\n\t);\n\n\tconst shouldDisplayDeleteButton =\n\t\t!! libraryFontSelected &&\n\t\tlibraryFontSelected?.source !== 'theme' &&\n\t\tcanUserDelete;\n\n\tconst handleUninstallClick = () => {\n\t\tsetIsConfirmDeleteOpen( true );\n\t};\n\n\tconst handleUpdate = async () => {\n\t\tsetNotice( null );\n\t\ttry {\n\t\t\tawait saveFontFamilies( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family updated successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: sprintf(\n\t\t\t\t\t/* translators: %s: error message */\n\t\t\t\t\t__( 'There was an error updating the font family. %s' ),\n\t\t\t\t\terror.message\n\t\t\t\t),\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst getFontFacesToDisplay = ( font ) => {\n\t\tif ( ! font ) {\n\t\t\treturn [];\n\t\t}\n\t\tif ( ! font.fontFace || ! font.fontFace.length ) {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tfontFamily: font.fontFamily,\n\t\t\t\t\tfontStyle: 'normal',\n\t\t\t\t\tfontWeight: '400',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn sortFontFaces( font.fontFace );\n\t};\n\n\tconst getFontCardVariantsText = ( font ) => {\n\t\tconst variantsInstalled =\n\t\t\tfont?.fontFace?.length > 0 ? font.fontFace.length : 1;\n\t\tconst variantsActive = getFontFacesActivated(\n\t\t\tfont.slug,\n\t\t\tfont.source\n\t\t).length;\n\t\treturn sprintf(\n\t\t\t/* translators: 1: Active font variants, 2: Total font variants. */\n\t\t\t__( '%1$s/%2$s variants active' ),\n\t\t\tvariantsActive,\n\t\t\tvariantsInstalled\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\thandleSetLibraryFontSelected( libraryFontSelected );\n\t\trefreshLibrary();\n\t}, [] );\n\n\t// Get activated fonts count.\n\tconst activeFontsCount = libraryFontSelected\n\t\t? getFontFacesActivated(\n\t\t\t\tlibraryFontSelected.slug,\n\t\t\t\tlibraryFontSelected.source\n\t\t ).length\n\t\t: 0;\n\n\tconst selectedFontsCount =\n\t\tlibraryFontSelected?.fontFace?.length ??\n\t\t( libraryFontSelected?.fontFamily ? 1 : 0 );\n\n\t// Check if any fonts are selected.\n\tconst isIndeterminate =\n\t\tactiveFontsCount > 0 && activeFontsCount !== selectedFontsCount;\n\n\t// Check if all fonts are selected.\n\tconst isSelectAllChecked = activeFontsCount === selectedFontsCount;\n\n\t// Toggle select all fonts.\n\tconst toggleSelectAll = () => {\n\t\tconst initialFonts =\n\t\t\tfontFamilies?.[ libraryFontSelected.source ]?.filter(\n\t\t\t\t( f ) => f.slug !== libraryFontSelected.slug\n\t\t\t) ?? [];\n\t\tconst newFonts = isSelectAllChecked\n\t\t\t? initialFonts\n\t\t\t: [ ...initialFonts, libraryFontSelected ];\n\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ libraryFontSelected.source ]: newFonts,\n\t\t} );\n\n\t\tif ( libraryFontSelected.fontFace ) {\n\t\t\tlibraryFontSelected.fontFace.forEach( ( face ) => {\n\t\t\t\tif ( isSelectAllChecked ) {\n\t\t\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t\t\t} else {\n\t\t\t\t\tloadFontFaceInBrowser(\n\t\t\t\t\t\tface,\n\t\t\t\t\t\tgetDisplaySrcFromFontFace( face?.src ),\n\t\t\t\t\t\t'all'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst hasFonts = baseThemeFonts.length > 0 || baseCustomFonts.length > 0;\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t{ isResolvingLibrary && (\n\t\t\t\t<div className=\"font-library-modal__loading\">\n\t\t\t\t\t<ProgressBar />\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ ! isResolvingLibrary && (\n\t\t\t\t<>\n\t\t\t\t\t<Navigator\n\t\t\t\t\t\tinitialPath={\n\t\t\t\t\t\t\tlibraryFontSelected ? '/fontFamily' : '/'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Navigator.Screen path=\"/\">\n\t\t\t\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'No fonts installed.' ) }\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseThemeFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts provided by the theme. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Theme', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseThemeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseCustomFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts installed by the user. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Custom', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseCustomFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</Navigator.Screen>\n\n\t\t\t\t\t\t<Navigator.Screen path=\"/fontFamily\">\n\t\t\t\t\t\t\t<ConfirmDeleteDialog\n\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\tisOpen={ isConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetIsOpen={ setIsConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetNotice={ setNotice }\n\t\t\t\t\t\t\t\tuninstallFontFamily={ uninstallFontFamily }\n\t\t\t\t\t\t\t\thandleSetLibraryFontSelected={\n\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<Flex justify=\"flex-start\">\n\t\t\t\t\t\t\t\t<Navigator.BackButton\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronRight : chevronLeft\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected( null );\n\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\t\tlevel={ 2 }\n\t\t\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-header\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ libraryFontSelected?.name }\n\t\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<Text>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Choose font variants. Keep in mind that too many variants could make your site slower.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__select-all\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Select all' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isSelectAllChecked }\n\t\t\t\t\t\t\t\t\tonChange={ toggleSelectAll }\n\t\t\t\t\t\t\t\t\tindeterminate={ isIndeterminate }\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Spacer margin={ 8 } />\n\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ getFontFacesToDisplay(\n\t\t\t\t\t\t\t\t\t\tlibraryFontSelected\n\t\t\t\t\t\t\t\t\t).map( ( face, i ) => (\n\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<LibraryFontVariant\n\t\t\t\t\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\t\t\t\t\tface={ face }\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</Navigator.Screen>\n\t\t\t\t\t</Navigator>\n\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\tclassName=\"font-library-modal__footer\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isInstalling && <ProgressBar /> }\n\t\t\t\t\t\t{ shouldDisplayDeleteButton && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleUninstallClick }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ handleUpdate }\n\t\t\t\t\t\t\tdisabled={ ! fontFamiliesHasChanges }\n\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Update' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction ConfirmDeleteDialog( {\n\tfont,\n\tisOpen,\n\tsetIsOpen,\n\tsetNotice,\n\tuninstallFontFamily,\n\thandleSetLibraryFontSelected,\n} ) {\n\tconst navigator = useNavigator();\n\n\tconst handleConfirmUninstall = async () => {\n\t\tsetNotice( null );\n\t\tsetIsOpen( false );\n\t\ttry {\n\t\t\tawait uninstallFontFamily( font );\n\t\t\tnavigator.goBack();\n\t\t\thandleSetLibraryFontSelected( null );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family uninstalled successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage:\n\t\t\t\t\t__( 'There was an error uninstalling the font family.' ) +\n\t\t\t\t\terror.message,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleCancelUninstall = () => {\n\t\tsetIsOpen( false );\n\t};\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isOpen }\n\t\t\tcancelButtonText={ __( 'Cancel' ) }\n\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\tonCancel={ handleCancelUninstall }\n\t\t\tonConfirm={ handleConfirmUninstall }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ font &&\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: Name of the font. */\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\" font and all its variants and assets?'\n\t\t\t\t\t),\n\t\t\t\t\tfont.name\n\t\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n\nexport default InstalledFonts;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Button","__experimentalConfirmDialog","ConfirmDialog","__experimentalHStack","HStack","__experimentalHeading","Heading","Navigator","useNavigator","__experimentalSpacer","Spacer","__experimentalText","Text","__experimentalVStack","VStack","Flex","Notice","ProgressBar","CheckboxControl","useEntityRecord","store","coreStore","useSelect","useContext","useEffect","useState","__","_x","sprintf","isRTL","chevronLeft","chevronRight","privateApis","blockEditorPrivateApis","FontLibraryContext","FontCard","LibraryFontVariant","sortFontFaces","setUIValuesNeeded","loadFontFaceInBrowser","unloadFontFaceInBrowser","getDisplaySrcFromFontFace","unlock","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","InstalledFonts","_libraryFontSelected$","baseCustomFonts","libraryFontSelected","handleSetLibraryFontSelected","refreshLibrary","uninstallFontFamily","isResolvingLibrary","isInstalling","saveFontFamilies","getFontFacesActivated","fontFamilies","setFontFamilies","isConfirmDeleteOpen","setIsConfirmDeleteOpen","notice","setNotice","baseFontFamilies","undefined","globalStylesId","select","__experimentalGetCurrentGlobalStylesId","globalStyles","fontFamiliesHasChanges","edits","settings","typography","themeFonts","theme","map","f","source","sort","a","b","name","localeCompare","themeFontsSlugs","Set","slug","baseThemeFonts","concat","filter","has","customFontFamilyId","id","canUserDelete","canUser","kind","shouldDisplayDeleteButton","handleUninstallClick","handleUpdate","type","message","error","getFontFacesToDisplay","font","fontFace","length","fontFamily","fontStyle","fontWeight","getFontCardVariantsText","variantsInstalled","variantsActive","activeFontsCount","selectedFontsCount","isIndeterminate","isSelectAllChecked","toggleSelectAll","_fontFamilies$library","initialFonts","newFonts","forEach","face","src","hasFonts","className","children","initialPath","Screen","path","spacing","status","onRemove","as","role","navigatorPath","variantsText","onClick","ConfirmDeleteDialog","isOpen","setIsOpen","justify","BackButton","icon","size","label","level","margin","checked","onChange","indeterminate","__nextHasNoMarginBottom","i","__next40pxDefaultSize","isDestructive","variant","disabled","accessibleWhenDisabled","navigator","handleConfirmUninstall","goBack","handleCancelUninstall","cancelButtonText","confirmButtonText","onCancel","onConfirm"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\tNavigator,\n\tuseNavigator,\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tNotice,\n\tProgressBar,\n\tCheckboxControl,\n} from '@wordpress/components';\nimport { useEntityRecord, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useEffect, useState } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './context';\nimport FontCard from './font-card';\nimport LibraryFontVariant from './library-font-variant';\nimport { sortFontFaces } from './utils/sort-font-faces';\nimport {\n\tsetUIValuesNeeded,\n\tloadFontFaceInBrowser,\n\tunloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n} from './utils';\nimport { unlock } from '../../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction InstalledFonts() {\n\tconst {\n\t\tbaseCustomFonts,\n\t\tlibraryFontSelected,\n\t\thandleSetLibraryFontSelected,\n\t\trefreshLibrary,\n\t\tuninstallFontFamily,\n\t\tisResolvingLibrary,\n\t\tisInstalling,\n\t\tsaveFontFamilies,\n\t\tgetFontFacesActivated,\n\t} = useContext( FontLibraryContext );\n\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\tconst [ isConfirmDeleteOpen, setIsConfirmDeleteOpen ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst globalStylesId = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn __experimentalGetCurrentGlobalStylesId();\n\t} );\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\tconst fontFamiliesHasChanges =\n\t\t!! globalStyles?.edits?.settings?.typography?.fontFamilies;\n\n\tconst themeFonts = fontFamilies?.theme\n\t\t? fontFamilies.theme\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\tconst themeFontsSlugs = new Set( themeFonts.map( ( f ) => f.slug ) );\n\tconst baseThemeFonts = baseFontFamilies?.theme\n\t\t? themeFonts.concat(\n\t\t\t\tbaseFontFamilies.theme\n\t\t\t\t\t.filter( ( f ) => ! themeFontsSlugs.has( f.slug ) )\n\t\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t )\n\t\t: [];\n\n\tconst customFontFamilyId =\n\t\tlibraryFontSelected?.source === 'custom' && libraryFontSelected?.id;\n\n\tconst canUserDelete = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\treturn (\n\t\t\t\tcustomFontFamilyId &&\n\t\t\t\tcanUser( 'delete', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_font_family',\n\t\t\t\t\tid: customFontFamilyId,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\t[ customFontFamilyId ]\n\t);\n\n\tconst shouldDisplayDeleteButton =\n\t\t!! libraryFontSelected &&\n\t\tlibraryFontSelected?.source !== 'theme' &&\n\t\tcanUserDelete;\n\n\tconst handleUninstallClick = () => {\n\t\tsetIsConfirmDeleteOpen( true );\n\t};\n\n\tconst handleUpdate = async () => {\n\t\tsetNotice( null );\n\t\ttry {\n\t\t\tawait saveFontFamilies( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family updated successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: sprintf(\n\t\t\t\t\t/* translators: %s: error message */\n\t\t\t\t\t__( 'There was an error updating the font family. %s' ),\n\t\t\t\t\terror.message\n\t\t\t\t),\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst getFontFacesToDisplay = ( font ) => {\n\t\tif ( ! font ) {\n\t\t\treturn [];\n\t\t}\n\t\tif ( ! font.fontFace || ! font.fontFace.length ) {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tfontFamily: font.fontFamily,\n\t\t\t\t\tfontStyle: 'normal',\n\t\t\t\t\tfontWeight: '400',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn sortFontFaces( font.fontFace );\n\t};\n\n\tconst getFontCardVariantsText = ( font ) => {\n\t\tconst variantsInstalled =\n\t\t\tfont?.fontFace?.length > 0 ? font.fontFace.length : 1;\n\t\tconst variantsActive = getFontFacesActivated(\n\t\t\tfont.slug,\n\t\t\tfont.source\n\t\t).length;\n\t\treturn sprintf(\n\t\t\t/* translators: 1: Active font variants, 2: Total font variants. */\n\t\t\t__( '%1$s/%2$s variants active' ),\n\t\t\tvariantsActive,\n\t\t\tvariantsInstalled\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\thandleSetLibraryFontSelected( libraryFontSelected );\n\t\trefreshLibrary();\n\t}, [] );\n\n\t// Get activated fonts count.\n\tconst activeFontsCount = libraryFontSelected\n\t\t? getFontFacesActivated(\n\t\t\t\tlibraryFontSelected.slug,\n\t\t\t\tlibraryFontSelected.source\n\t\t ).length\n\t\t: 0;\n\n\tconst selectedFontsCount =\n\t\tlibraryFontSelected?.fontFace?.length ??\n\t\t( libraryFontSelected?.fontFamily ? 1 : 0 );\n\n\t// Check if any fonts are selected.\n\tconst isIndeterminate =\n\t\tactiveFontsCount > 0 && activeFontsCount !== selectedFontsCount;\n\n\t// Check if all fonts are selected.\n\tconst isSelectAllChecked = activeFontsCount === selectedFontsCount;\n\n\t// Toggle select all fonts.\n\tconst toggleSelectAll = () => {\n\t\tconst initialFonts =\n\t\t\tfontFamilies?.[ libraryFontSelected.source ]?.filter(\n\t\t\t\t( f ) => f.slug !== libraryFontSelected.slug\n\t\t\t) ?? [];\n\t\tconst newFonts = isSelectAllChecked\n\t\t\t? initialFonts\n\t\t\t: [ ...initialFonts, libraryFontSelected ];\n\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ libraryFontSelected.source ]: newFonts,\n\t\t} );\n\n\t\tif ( libraryFontSelected.fontFace ) {\n\t\t\tlibraryFontSelected.fontFace.forEach( ( face ) => {\n\t\t\t\tif ( isSelectAllChecked ) {\n\t\t\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t\t\t} else {\n\t\t\t\t\tloadFontFaceInBrowser(\n\t\t\t\t\t\tface,\n\t\t\t\t\t\tgetDisplaySrcFromFontFace( face?.src ),\n\t\t\t\t\t\t'all'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst hasFonts = baseThemeFonts.length > 0 || baseCustomFonts.length > 0;\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t{ isResolvingLibrary && (\n\t\t\t\t<div className=\"font-library-modal__loading\">\n\t\t\t\t\t<ProgressBar />\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ ! isResolvingLibrary && (\n\t\t\t\t<>\n\t\t\t\t\t<Navigator\n\t\t\t\t\t\tinitialPath={\n\t\t\t\t\t\t\tlibraryFontSelected ? '/fontFamily' : '/'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Navigator.Screen path=\"/\">\n\t\t\t\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'No fonts installed.' ) }\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseThemeFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts provided by the theme. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Theme', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseThemeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseCustomFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts installed by the user. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Custom', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseCustomFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</Navigator.Screen>\n\n\t\t\t\t\t\t<Navigator.Screen path=\"/fontFamily\">\n\t\t\t\t\t\t\t<ConfirmDeleteDialog\n\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\tisOpen={ isConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetIsOpen={ setIsConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetNotice={ setNotice }\n\t\t\t\t\t\t\t\tuninstallFontFamily={ uninstallFontFamily }\n\t\t\t\t\t\t\t\thandleSetLibraryFontSelected={\n\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<Flex justify=\"flex-start\">\n\t\t\t\t\t\t\t\t<Navigator.BackButton\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronRight : chevronLeft\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected( null );\n\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\t\tlevel={ 2 }\n\t\t\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-header\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ libraryFontSelected?.name }\n\t\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<Text>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Choose font variants. Keep in mind that too many variants could make your site slower.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__select-all\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Select all' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isSelectAllChecked }\n\t\t\t\t\t\t\t\t\tonChange={ toggleSelectAll }\n\t\t\t\t\t\t\t\t\tindeterminate={ isIndeterminate }\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Spacer margin={ 8 } />\n\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ getFontFacesToDisplay(\n\t\t\t\t\t\t\t\t\t\tlibraryFontSelected\n\t\t\t\t\t\t\t\t\t).map( ( face, i ) => (\n\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<LibraryFontVariant\n\t\t\t\t\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\t\t\t\t\tface={ face }\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</Navigator.Screen>\n\t\t\t\t\t</Navigator>\n\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\tclassName=\"font-library-modal__footer\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isInstalling && <ProgressBar /> }\n\t\t\t\t\t\t{ shouldDisplayDeleteButton && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleUninstallClick }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ handleUpdate }\n\t\t\t\t\t\t\tdisabled={ ! fontFamiliesHasChanges }\n\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Update' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction ConfirmDeleteDialog( {\n\tfont,\n\tisOpen,\n\tsetIsOpen,\n\tsetNotice,\n\tuninstallFontFamily,\n\thandleSetLibraryFontSelected,\n} ) {\n\tconst navigator = useNavigator();\n\n\tconst handleConfirmUninstall = async () => {\n\t\tsetNotice( null );\n\t\tsetIsOpen( false );\n\t\ttry {\n\t\t\tawait uninstallFontFamily( font );\n\t\t\tnavigator.goBack();\n\t\t\thandleSetLibraryFontSelected( null );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family uninstalled successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage:\n\t\t\t\t\t__( 'There was an error uninstalling the font family.' ) +\n\t\t\t\t\terror.message,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleCancelUninstall = () => {\n\t\tsetIsOpen( false );\n\t};\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isOpen }\n\t\t\tcancelButtonText={ __( 'Cancel' ) }\n\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\tonCancel={ handleCancelUninstall }\n\t\t\tonConfirm={ handleConfirmUninstall }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ font &&\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: Name of the font. */\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\" font and all its variants and assets?'\n\t\t\t\t\t),\n\t\t\t\t\tfont.name\n\t\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n\nexport default InstalledFonts;\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- /* wp:polyfill */
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -1 +1 @@
1
- {"version":3,"names":["__","__experimentalSpacer","Spacer","__experimentalText","Text","__experimentalVStack","VStack","Button","DropZone","Notice","FormFileUpload","FlexItem","ProgressBar","useContext","useState","ALLOWED_FILE_EXTENSIONS","FontLibraryContext","Font","makeFamiliesFromFaces","loadFontFaceInBrowser","jsx","_jsx","jsxs","_jsxs","UploadFonts","installFonts","isUploading","setIsUploading","notice","setNotice","handleDropZone","files","handleFilesUpload","onFilesUpload","event","target","uniqueFilenames","Set","selectedFiles","hasInvalidFiles","checkFilesPromises","map","file","isFont","isFontFile","has","name","fileExtension","split","pop","toLowerCase","includes","add","allowedFiles","Promise","all","filter","length","loadFiles","message","type","fontFacesLoaded","fontFile","fontFaceData","getFontFaceMetadata","handleInstall","font","buffer","readFileAsArrayBuffer","fromDataBuffer","error","resolve","reject","reader","window","FileReader","readAsArrayBuffer","onload","result","onerror","fontObj","onloadEvent","detail","opentype","tables","fontName","get","isItalic","fontWeight","usWeightClass","isVariable","fvar","weightAxis","axes","find","tag","weightRange","minValue","maxValue","fontFamily","fontStyle","fontFaces","fontFamilies","errors","installationErrors","className","children","onFilesDrop","status","__unstableHTML","onRemove","index","accept","ext","join","multiple","onChange","render","openFileDialog","__next40pxDefaultSize","onClick","margin"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/upload-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tButton,\n\tDropZone,\n\tNotice,\n\tFormFileUpload,\n\tFlexItem,\n\tProgressBar,\n} from '@wordpress/components';\nimport { useContext, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_FILE_EXTENSIONS } from './utils/constants';\nimport { FontLibraryContext } from './context';\nimport { Font } from '../../../../lib/lib-font.browser';\nimport makeFamiliesFromFaces from './utils/make-families-from-faces';\nimport { loadFontFaceInBrowser } from './utils';\n\nfunction UploadFonts() {\n\tconst { installFonts } = useContext( FontLibraryContext );\n\tconst [ isUploading, setIsUploading ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\n\tconst handleDropZone = ( files ) => {\n\t\thandleFilesUpload( files );\n\t};\n\tconst onFilesUpload = ( event ) => {\n\t\thandleFilesUpload( event.target.files );\n\t};\n\n\t/**\n\t * Filters the selected files to only allow the ones with the allowed extensions\n\t *\n\t * @param {Array} files The files to be filtered\n\t * @return {void}\n\t */\n\tconst handleFilesUpload = async ( files ) => {\n\t\tsetNotice( null );\n\t\tsetIsUploading( true );\n\t\tconst uniqueFilenames = new Set();\n\t\tconst selectedFiles = [ ...files ];\n\t\tlet hasInvalidFiles = false;\n\n\t\t// Use map to create a promise for each file check, then filter with Promise.all.\n\t\tconst checkFilesPromises = selectedFiles.map( async ( file ) => {\n\t\t\tconst isFont = await isFontFile( file );\n\t\t\tif ( ! isFont ) {\n\t\t\t\thasInvalidFiles = true;\n\t\t\t\treturn null; // Return null for invalid files.\n\t\t\t}\n\t\t\t// Check for duplicates\n\t\t\tif ( uniqueFilenames.has( file.name ) ) {\n\t\t\t\treturn null; // Return null for duplicates.\n\t\t\t}\n\t\t\t// Check if the file extension is allowed.\n\t\t\tconst fileExtension = file.name.split( '.' ).pop().toLowerCase();\n\t\t\tif ( ALLOWED_FILE_EXTENSIONS.includes( fileExtension ) ) {\n\t\t\t\tuniqueFilenames.add( file.name );\n\t\t\t\treturn file; // Return the file if it passes all checks.\n\t\t\t}\n\t\t\treturn null; // Return null for disallowed file extensions.\n\t\t} );\n\n\t\t// Filter out the nulls after all promises have resolved.\n\t\tconst allowedFiles = ( await Promise.all( checkFilesPromises ) ).filter(\n\t\t\t( file ) => null !== file\n\t\t);\n\n\t\tif ( allowedFiles.length > 0 ) {\n\t\t\tloadFiles( allowedFiles );\n\t\t} else {\n\t\t\tconst message = hasInvalidFiles\n\t\t\t\t? __( 'Sorry, you are not allowed to upload this file type.' )\n\t\t\t\t: __( 'No fonts found to install.' );\n\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage,\n\t\t\t} );\n\t\t\tsetIsUploading( false );\n\t\t}\n\t};\n\n\t/**\n\t * Loads the selected files and reads the font metadata\n\t *\n\t * @param {Array} files The files to be loaded\n\t * @return {void}\n\t */\n\tconst loadFiles = async ( files ) => {\n\t\tconst fontFacesLoaded = await Promise.all(\n\t\t\tfiles.map( async ( fontFile ) => {\n\t\t\t\tconst fontFaceData = await getFontFaceMetadata( fontFile );\n\t\t\t\tawait loadFontFaceInBrowser(\n\t\t\t\t\tfontFaceData,\n\t\t\t\t\tfontFaceData.file,\n\t\t\t\t\t'all'\n\t\t\t\t);\n\t\t\t\treturn fontFaceData;\n\t\t\t} )\n\t\t);\n\t\thandleInstall( fontFacesLoaded );\n\t};\n\n\t/**\n\t * Checks if a file is a valid Font file.\n\t *\n\t * @param {File} file The file to be checked.\n\t * @return {boolean} Whether the file is a valid font file.\n\t */\n\tasync function isFontFile( file ) {\n\t\tconst font = new Font( 'Uploaded Font' );\n\t\ttry {\n\t\t\tconst buffer = await readFileAsArrayBuffer( file );\n\t\t\tawait font.fromDataBuffer( buffer, 'font' );\n\t\t\treturn true;\n\t\t} catch ( error ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t// Create a function to read the file as array buffer\n\tasync function readFileAsArrayBuffer( file ) {\n\t\treturn new Promise( ( resolve, reject ) => {\n\t\t\tconst reader = new window.FileReader();\n\t\t\treader.readAsArrayBuffer( file );\n\t\t\treader.onload = () => resolve( reader.result );\n\t\t\treader.onerror = reject;\n\t\t} );\n\t}\n\n\tconst getFontFaceMetadata = async ( fontFile ) => {\n\t\tconst buffer = await readFileAsArrayBuffer( fontFile );\n\t\tconst fontObj = new Font( 'Uploaded Font' );\n\t\tfontObj.fromDataBuffer( buffer, fontFile.name );\n\t\t// Assuming that fromDataBuffer triggers onload event and returning a Promise\n\t\tconst onloadEvent = await new Promise(\n\t\t\t( resolve ) => ( fontObj.onload = resolve )\n\t\t);\n\t\tconst font = onloadEvent.detail.font;\n\t\tconst { name } = font.opentype.tables;\n\t\tconst fontName = name.get( 16 ) || name.get( 1 );\n\t\tconst isItalic = name.get( 2 ).toLowerCase().includes( 'italic' );\n\t\tconst fontWeight =\n\t\t\tfont.opentype.tables[ 'OS/2' ].usWeightClass || 'normal';\n\t\tconst isVariable = !! font.opentype.tables.fvar;\n\t\tconst weightAxis =\n\t\t\tisVariable &&\n\t\t\tfont.opentype.tables.fvar.axes.find(\n\t\t\t\t( { tag } ) => tag === 'wght'\n\t\t\t);\n\t\tconst weightRange = weightAxis\n\t\t\t? `${ weightAxis.minValue } ${ weightAxis.maxValue }`\n\t\t\t: null;\n\t\treturn {\n\t\t\tfile: fontFile,\n\t\t\tfontFamily: fontName,\n\t\t\tfontStyle: isItalic ? 'italic' : 'normal',\n\t\t\tfontWeight: weightRange || fontWeight,\n\t\t};\n\t};\n\n\t/**\n\t * Creates the font family definition and sends it to the server\n\t *\n\t * @param {Array} fontFaces The font faces to be installed\n\t * @return {void}\n\t */\n\tconst handleInstall = async ( fontFaces ) => {\n\t\tconst fontFamilies = makeFamiliesFromFaces( fontFaces );\n\n\t\ttry {\n\t\t\tawait installFonts( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Fonts were installed successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: error.message,\n\t\t\t\terrors: error?.installationErrors,\n\t\t\t} );\n\t\t}\n\n\t\tsetIsUploading( false );\n\t};\n\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t<DropZone onFilesDrop={ handleDropZone } />\n\t\t\t<VStack className=\"font-library-modal__local-fonts\">\n\t\t\t\t{ notice && (\n\t\t\t\t\t<Notice\n\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t__unstableHTML\n\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t{ notice.errors && (\n\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t{ notice.errors.map( ( error, index ) => (\n\t\t\t\t\t\t\t\t\t<li key={ index }>{ error }</li>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Notice>\n\t\t\t\t) }\n\t\t\t\t{ isUploading && (\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<div className=\"font-library-modal__upload-area\">\n\t\t\t\t\t\t\t<ProgressBar />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t) }\n\t\t\t\t{ ! isUploading && (\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\taccept={ ALLOWED_FILE_EXTENSIONS.map(\n\t\t\t\t\t\t\t( ext ) => `.${ ext }`\n\t\t\t\t\t\t).join( ',' ) }\n\t\t\t\t\t\tmultiple\n\t\t\t\t\t\tonChange={ onFilesUpload }\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tclassName=\"font-library-modal__upload-area\"\n\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Upload font' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Spacer margin={ 2 } />\n\t\t\t\t<Text className=\"font-library-modal__upload-area__text\">\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Uploaded fonts appear in your library and can be used in your theme. Supported formats: .ttf, .otf, .woff, and .woff2.'\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default UploadFonts;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","__experimentalSpacer","Spacer","__experimentalText","Text","__experimentalVStack","VStack","Button","DropZone","Notice","FormFileUpload","FlexItem","ProgressBar","useContext","useState","ALLOWED_FILE_EXTENSIONS","FontLibraryContext","Font","makeFamiliesFromFaces","loadFontFaceInBrowser","jsx","_jsx","jsxs","_jsxs","UploadFonts","installFonts","isUploading","setIsUploading","notice","setNotice","handleDropZone","files","handleFilesUpload","onFilesUpload","event","target","uniqueFilenames","Set","selectedFiles","hasInvalidFiles","checkFilesPromises","map","file","isFont","isFontFile","has","name","fileExtension","split","pop","toLowerCase","includes","add","allowedFiles","Promise","all","filter","length","loadFiles","message","type","fontFacesLoaded","fontFile","fontFaceData","getFontFaceMetadata","handleInstall","font","buffer","readFileAsArrayBuffer","fromDataBuffer","error","resolve","reject","reader","window","FileReader","readAsArrayBuffer","onload","result","onerror","fontObj","onloadEvent","detail","opentype","tables","fontName","get","isItalic","fontWeight","usWeightClass","isVariable","fvar","weightAxis","axes","find","tag","weightRange","minValue","maxValue","fontFamily","fontStyle","fontFaces","fontFamilies","errors","installationErrors","className","children","onFilesDrop","status","__unstableHTML","onRemove","index","accept","ext","join","multiple","onChange","render","openFileDialog","__next40pxDefaultSize","onClick","margin"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/upload-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tButton,\n\tDropZone,\n\tNotice,\n\tFormFileUpload,\n\tFlexItem,\n\tProgressBar,\n} from '@wordpress/components';\nimport { useContext, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_FILE_EXTENSIONS } from './utils/constants';\nimport { FontLibraryContext } from './context';\nimport { Font } from '../../../../lib/lib-font.browser';\nimport makeFamiliesFromFaces from './utils/make-families-from-faces';\nimport { loadFontFaceInBrowser } from './utils';\n\nfunction UploadFonts() {\n\tconst { installFonts } = useContext( FontLibraryContext );\n\tconst [ isUploading, setIsUploading ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\n\tconst handleDropZone = ( files ) => {\n\t\thandleFilesUpload( files );\n\t};\n\tconst onFilesUpload = ( event ) => {\n\t\thandleFilesUpload( event.target.files );\n\t};\n\n\t/**\n\t * Filters the selected files to only allow the ones with the allowed extensions\n\t *\n\t * @param {Array} files The files to be filtered\n\t * @return {void}\n\t */\n\tconst handleFilesUpload = async ( files ) => {\n\t\tsetNotice( null );\n\t\tsetIsUploading( true );\n\t\tconst uniqueFilenames = new Set();\n\t\tconst selectedFiles = [ ...files ];\n\t\tlet hasInvalidFiles = false;\n\n\t\t// Use map to create a promise for each file check, then filter with Promise.all.\n\t\tconst checkFilesPromises = selectedFiles.map( async ( file ) => {\n\t\t\tconst isFont = await isFontFile( file );\n\t\t\tif ( ! isFont ) {\n\t\t\t\thasInvalidFiles = true;\n\t\t\t\treturn null; // Return null for invalid files.\n\t\t\t}\n\t\t\t// Check for duplicates\n\t\t\tif ( uniqueFilenames.has( file.name ) ) {\n\t\t\t\treturn null; // Return null for duplicates.\n\t\t\t}\n\t\t\t// Check if the file extension is allowed.\n\t\t\tconst fileExtension = file.name.split( '.' ).pop().toLowerCase();\n\t\t\tif ( ALLOWED_FILE_EXTENSIONS.includes( fileExtension ) ) {\n\t\t\t\tuniqueFilenames.add( file.name );\n\t\t\t\treturn file; // Return the file if it passes all checks.\n\t\t\t}\n\t\t\treturn null; // Return null for disallowed file extensions.\n\t\t} );\n\n\t\t// Filter out the nulls after all promises have resolved.\n\t\tconst allowedFiles = ( await Promise.all( checkFilesPromises ) ).filter(\n\t\t\t( file ) => null !== file\n\t\t);\n\n\t\tif ( allowedFiles.length > 0 ) {\n\t\t\tloadFiles( allowedFiles );\n\t\t} else {\n\t\t\tconst message = hasInvalidFiles\n\t\t\t\t? __( 'Sorry, you are not allowed to upload this file type.' )\n\t\t\t\t: __( 'No fonts found to install.' );\n\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage,\n\t\t\t} );\n\t\t\tsetIsUploading( false );\n\t\t}\n\t};\n\n\t/**\n\t * Loads the selected files and reads the font metadata\n\t *\n\t * @param {Array} files The files to be loaded\n\t * @return {void}\n\t */\n\tconst loadFiles = async ( files ) => {\n\t\tconst fontFacesLoaded = await Promise.all(\n\t\t\tfiles.map( async ( fontFile ) => {\n\t\t\t\tconst fontFaceData = await getFontFaceMetadata( fontFile );\n\t\t\t\tawait loadFontFaceInBrowser(\n\t\t\t\t\tfontFaceData,\n\t\t\t\t\tfontFaceData.file,\n\t\t\t\t\t'all'\n\t\t\t\t);\n\t\t\t\treturn fontFaceData;\n\t\t\t} )\n\t\t);\n\t\thandleInstall( fontFacesLoaded );\n\t};\n\n\t/**\n\t * Checks if a file is a valid Font file.\n\t *\n\t * @param {File} file The file to be checked.\n\t * @return {boolean} Whether the file is a valid font file.\n\t */\n\tasync function isFontFile( file ) {\n\t\tconst font = new Font( 'Uploaded Font' );\n\t\ttry {\n\t\t\tconst buffer = await readFileAsArrayBuffer( file );\n\t\t\tawait font.fromDataBuffer( buffer, 'font' );\n\t\t\treturn true;\n\t\t} catch ( error ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t// Create a function to read the file as array buffer\n\tasync function readFileAsArrayBuffer( file ) {\n\t\treturn new Promise( ( resolve, reject ) => {\n\t\t\tconst reader = new window.FileReader();\n\t\t\treader.readAsArrayBuffer( file );\n\t\t\treader.onload = () => resolve( reader.result );\n\t\t\treader.onerror = reject;\n\t\t} );\n\t}\n\n\tconst getFontFaceMetadata = async ( fontFile ) => {\n\t\tconst buffer = await readFileAsArrayBuffer( fontFile );\n\t\tconst fontObj = new Font( 'Uploaded Font' );\n\t\tfontObj.fromDataBuffer( buffer, fontFile.name );\n\t\t// Assuming that fromDataBuffer triggers onload event and returning a Promise\n\t\tconst onloadEvent = await new Promise(\n\t\t\t( resolve ) => ( fontObj.onload = resolve )\n\t\t);\n\t\tconst font = onloadEvent.detail.font;\n\t\tconst { name } = font.opentype.tables;\n\t\tconst fontName = name.get( 16 ) || name.get( 1 );\n\t\tconst isItalic = name.get( 2 ).toLowerCase().includes( 'italic' );\n\t\tconst fontWeight =\n\t\t\tfont.opentype.tables[ 'OS/2' ].usWeightClass || 'normal';\n\t\tconst isVariable = !! font.opentype.tables.fvar;\n\t\tconst weightAxis =\n\t\t\tisVariable &&\n\t\t\tfont.opentype.tables.fvar.axes.find(\n\t\t\t\t( { tag } ) => tag === 'wght'\n\t\t\t);\n\t\tconst weightRange = weightAxis\n\t\t\t? `${ weightAxis.minValue } ${ weightAxis.maxValue }`\n\t\t\t: null;\n\t\treturn {\n\t\t\tfile: fontFile,\n\t\t\tfontFamily: fontName,\n\t\t\tfontStyle: isItalic ? 'italic' : 'normal',\n\t\t\tfontWeight: weightRange || fontWeight,\n\t\t};\n\t};\n\n\t/**\n\t * Creates the font family definition and sends it to the server\n\t *\n\t * @param {Array} fontFaces The font faces to be installed\n\t * @return {void}\n\t */\n\tconst handleInstall = async ( fontFaces ) => {\n\t\tconst fontFamilies = makeFamiliesFromFaces( fontFaces );\n\n\t\ttry {\n\t\t\tawait installFonts( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Fonts were installed successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: error.message,\n\t\t\t\terrors: error?.installationErrors,\n\t\t\t} );\n\t\t}\n\n\t\tsetIsUploading( false );\n\t};\n\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t<DropZone onFilesDrop={ handleDropZone } />\n\t\t\t<VStack className=\"font-library-modal__local-fonts\">\n\t\t\t\t{ notice && (\n\t\t\t\t\t<Notice\n\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t__unstableHTML\n\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t{ notice.errors && (\n\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t{ notice.errors.map( ( error, index ) => (\n\t\t\t\t\t\t\t\t\t<li key={ index }>{ error }</li>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Notice>\n\t\t\t\t) }\n\t\t\t\t{ isUploading && (\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<div className=\"font-library-modal__upload-area\">\n\t\t\t\t\t\t\t<ProgressBar />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t) }\n\t\t\t\t{ ! isUploading && (\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\taccept={ ALLOWED_FILE_EXTENSIONS.map(\n\t\t\t\t\t\t\t( ext ) => `.${ ext }`\n\t\t\t\t\t\t).join( ',' ) }\n\t\t\t\t\t\tmultiple\n\t\t\t\t\t\tonChange={ onFilesUpload }\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tclassName=\"font-library-modal__upload-area\"\n\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Upload font' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Spacer margin={ 2 } />\n\t\t\t\t<Text className=\"font-library-modal__upload-area__text\">\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Uploaded fonts appear in your library and can be used in your theme. Supported formats: .ttf, .otf, .woff, and .woff2.'\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default UploadFonts;\n"],"mappings":"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","ignoreList":[]}
@@ -29,12 +29,12 @@ const {
29
29
  } = unlock(routerPrivateApis);
30
30
  export default function GlobalStylesSidebar() {
31
31
  const {
32
- params
32
+ query
33
33
  } = useLocation();
34
34
  const {
35
35
  canvas = 'view',
36
- path
37
- } = params;
36
+ name
37
+ } = query;
38
38
  const {
39
39
  shouldClearCanvasContainerView,
40
40
  isStyleBookOpened,
@@ -116,13 +116,13 @@ export default function GlobalStylesSidebar() {
116
116
  } = useDispatch(interfaceStore);
117
117
  const previousActiveAreaRef = useRef(null);
118
118
  useEffect(() => {
119
- if (path?.startsWith('/wp_global_styles') && canvas === 'edit') {
119
+ if (name === 'styles' && canvas === 'edit') {
120
120
  previousActiveAreaRef.current = getActiveComplementaryArea('core');
121
121
  enableComplementaryArea('core', 'edit-site/global-styles');
122
122
  } else if (previousActiveAreaRef.current) {
123
123
  enableComplementaryArea('core', previousActiveAreaRef.current);
124
124
  }
125
- }, [path, enableComplementaryArea, canvas, getActiveComplementaryArea]);
125
+ }, [name, enableComplementaryArea, canvas, getActiveComplementaryArea]);
126
126
  return /*#__PURE__*/_jsx(DefaultSidebar, {
127
127
  className: "edit-site-global-styles-sidebar",
128
128
  identifier: "edit-site/global-styles",
@@ -1 +1 @@
1
- {"version":3,"names":["FlexItem","Flex","Button","__","styles","seen","backup","useSelect","useDispatch","useEffect","useRef","store","preferencesStore","editorStore","privateApis","editorPrivateApis","useViewportMatch","routerPrivateApis","GlobalStylesUI","editSiteStore","GlobalStylesMenuSlot","unlock","coreStore","DefaultSidebar","jsx","_jsx","jsxs","_jsxs","interfaceStore","useLocation","GlobalStylesSidebar","params","canvas","path","shouldClearCanvasContainerView","isStyleBookOpened","showListViewByDefault","hasRevisions","isRevisionsOpened","isRevisionsStyleBookOpened","select","getActiveComplementaryArea","getEditorCanvasContainerView","canvasContainerView","_isVisualEditorMode","getEditorMode","_isEditCanvasMode","_showListViewByDefault","get","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","count","setEditorCanvasContainerView","isMobileViewport","setIsListViewOpened","toggleRevisions","toggleStyleBook","enableComplementaryArea","previousActiveAreaRef","startsWith","current","className","identifier","title","icon","closeLabel","panelClassName","header","gap","children","justify","label","isPressed","accessibleWhenDisabled","disabled","onClick","size"],"sources":["@wordpress/edit-site/src/components/global-styles-sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { FlexItem, Flex, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { styles, seen, backup } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { GlobalStylesUI } from '../global-styles';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesMenuSlot } from '../global-styles/ui';\nimport { unlock } from '../../lock-unlock';\nimport { store as coreStore } from '@wordpress/core-data';\nimport DefaultSidebar from './default-sidebar';\n\nconst { interfaceStore } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nexport default function GlobalStylesSidebar() {\n\tconst { params } = useLocation();\n\tconst { canvas = 'view', path } = params;\n\tconst {\n\t\tshouldClearCanvasContainerView,\n\t\tisStyleBookOpened,\n\t\tshowListViewByDefault,\n\t\thasRevisions,\n\t\tisRevisionsOpened,\n\t\tisRevisionsStyleBookOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\t\t\tconst { getEditorCanvasContainerView } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\t\t\tconst canvasContainerView = getEditorCanvasContainerView();\n\t\t\tconst _isVisualEditorMode =\n\t\t\t\t'visual' === select( editorStore ).getEditorMode();\n\t\t\tconst _isEditCanvasMode = 'edit' === canvas;\n\t\t\tconst _showListViewByDefault = select( preferencesStore ).get(\n\t\t\t\t'core',\n\t\t\t\t'showListViewByDefault'\n\t\t\t);\n\t\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\t\tselect( coreStore );\n\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tisStyleBookOpened: 'style-book' === canvasContainerView,\n\t\t\t\tshouldClearCanvasContainerView:\n\t\t\t\t\t'edit-site/global-styles' !==\n\t\t\t\t\t\tgetActiveComplementaryArea( 'core' ) ||\n\t\t\t\t\t! _isVisualEditorMode ||\n\t\t\t\t\t! _isEditCanvasMode,\n\t\t\t\tshowListViewByDefault: _showListViewByDefault,\n\t\t\t\thasRevisions:\n\t\t\t\t\t!! globalStyles?._links?.[ 'version-history' ]?.[ 0 ]\n\t\t\t\t\t\t?.count,\n\t\t\t\tisRevisionsStyleBookOpened:\n\t\t\t\t\t'global-styles-revisions:style-book' ===\n\t\t\t\t\tcanvasContainerView,\n\t\t\t\tisRevisionsOpened:\n\t\t\t\t\t'global-styles-revisions' === canvasContainerView,\n\t\t\t};\n\t\t},\n\t\t[ canvas ]\n\t);\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\tuseEffect( () => {\n\t\tif ( shouldClearCanvasContainerView ) {\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t}\n\t}, [ shouldClearCanvasContainerView, setEditorCanvasContainerView ] );\n\n\tconst { setIsListViewOpened } = useDispatch( editorStore );\n\n\tconst toggleRevisions = () => {\n\t\tsetIsListViewOpened( false );\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView( 'style-book' );\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsOpened ) {\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t} else {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t}\n\t};\n\tconst toggleStyleBook = () => {\n\t\tif ( isRevisionsOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t\treturn;\n\t\t}\n\t\tsetIsListViewOpened( isStyleBookOpened && showListViewByDefault );\n\t\tsetEditorCanvasContainerView(\n\t\t\tisStyleBookOpened ? undefined : 'style-book'\n\t\t);\n\t};\n\n\tconst { getActiveComplementaryArea } = useSelect( interfaceStore );\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\tconst previousActiveAreaRef = useRef( null );\n\n\tuseEffect( () => {\n\t\tif ( path?.startsWith( '/wp_global_styles' ) && canvas === 'edit' ) {\n\t\t\tpreviousActiveAreaRef.current =\n\t\t\t\tgetActiveComplementaryArea( 'core' );\n\t\t\tenableComplementaryArea( 'core', 'edit-site/global-styles' );\n\t\t} else if ( previousActiveAreaRef.current ) {\n\t\t\tenableComplementaryArea( 'core', previousActiveAreaRef.current );\n\t\t}\n\t}, [ path, enableComplementaryArea, canvas, getActiveComplementaryArea ] );\n\n\treturn (\n\t\t<DefaultSidebar\n\t\t\tclassName=\"edit-site-global-styles-sidebar\"\n\t\t\tidentifier=\"edit-site/global-styles\"\n\t\t\ttitle={ __( 'Styles' ) }\n\t\t\ticon={ styles }\n\t\t\tcloseLabel={ __( 'Close Styles' ) }\n\t\t\tpanelClassName=\"edit-site-global-styles-sidebar__panel\"\n\t\t\theader={\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"edit-site-global-styles-sidebar__header\"\n\t\t\t\t\tgap={ 1 }\n\t\t\t\t>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<h2 className=\"edit-site-global-styles-sidebar__header-title\">\n\t\t\t\t\t\t\t{ __( 'Styles' ) }\n\t\t\t\t\t\t</h2>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\tgap={ 1 }\n\t\t\t\t\t\tclassName=\"edit-site-global-styles-sidebar__header-actions\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! isMobileViewport && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ seen }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Style Book' ) }\n\t\t\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\t\t\tisStyleBookOpened ||\n\t\t\t\t\t\t\t\t\t\tisRevisionsStyleBookOpened\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tdisabled={ shouldClearCanvasContainerView }\n\t\t\t\t\t\t\t\t\tonClick={ toggleStyleBook }\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tlabel={ __( 'Revisions' ) }\n\t\t\t\t\t\t\t\ticon={ backup }\n\t\t\t\t\t\t\t\tonClick={ toggleRevisions }\n\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\tdisabled={ ! hasRevisions }\n\t\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\t\tisRevisionsOpened ||\n\t\t\t\t\t\t\t\t\tisRevisionsStyleBookOpened\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t<GlobalStylesMenuSlot />\n\t\t\t\t\t</Flex>\n\t\t\t\t</Flex>\n\t\t\t}\n\t\t>\n\t\t\t<GlobalStylesUI />\n\t\t</DefaultSidebar>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FlexItem","Flex","Button","__","styles","seen","backup","useSelect","useDispatch","useEffect","useRef","store","preferencesStore","editorStore","privateApis","editorPrivateApis","useViewportMatch","routerPrivateApis","GlobalStylesUI","editSiteStore","GlobalStylesMenuSlot","unlock","coreStore","DefaultSidebar","jsx","_jsx","jsxs","_jsxs","interfaceStore","useLocation","GlobalStylesSidebar","query","canvas","name","shouldClearCanvasContainerView","isStyleBookOpened","showListViewByDefault","hasRevisions","isRevisionsOpened","isRevisionsStyleBookOpened","select","getActiveComplementaryArea","getEditorCanvasContainerView","canvasContainerView","_isVisualEditorMode","getEditorMode","_isEditCanvasMode","_showListViewByDefault","get","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","count","setEditorCanvasContainerView","isMobileViewport","setIsListViewOpened","toggleRevisions","toggleStyleBook","enableComplementaryArea","previousActiveAreaRef","current","className","identifier","title","icon","closeLabel","panelClassName","header","gap","children","justify","label","isPressed","accessibleWhenDisabled","disabled","onClick","size"],"sources":["@wordpress/edit-site/src/components/global-styles-sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { FlexItem, Flex, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { styles, seen, backup } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { GlobalStylesUI } from '../global-styles';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesMenuSlot } from '../global-styles/ui';\nimport { unlock } from '../../lock-unlock';\nimport { store as coreStore } from '@wordpress/core-data';\nimport DefaultSidebar from './default-sidebar';\n\nconst { interfaceStore } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nexport default function GlobalStylesSidebar() {\n\tconst { query } = useLocation();\n\tconst { canvas = 'view', name } = query;\n\tconst {\n\t\tshouldClearCanvasContainerView,\n\t\tisStyleBookOpened,\n\t\tshowListViewByDefault,\n\t\thasRevisions,\n\t\tisRevisionsOpened,\n\t\tisRevisionsStyleBookOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\t\t\tconst { getEditorCanvasContainerView } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\t\t\tconst canvasContainerView = getEditorCanvasContainerView();\n\t\t\tconst _isVisualEditorMode =\n\t\t\t\t'visual' === select( editorStore ).getEditorMode();\n\t\t\tconst _isEditCanvasMode = 'edit' === canvas;\n\t\t\tconst _showListViewByDefault = select( preferencesStore ).get(\n\t\t\t\t'core',\n\t\t\t\t'showListViewByDefault'\n\t\t\t);\n\t\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\t\tselect( coreStore );\n\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tisStyleBookOpened: 'style-book' === canvasContainerView,\n\t\t\t\tshouldClearCanvasContainerView:\n\t\t\t\t\t'edit-site/global-styles' !==\n\t\t\t\t\t\tgetActiveComplementaryArea( 'core' ) ||\n\t\t\t\t\t! _isVisualEditorMode ||\n\t\t\t\t\t! _isEditCanvasMode,\n\t\t\t\tshowListViewByDefault: _showListViewByDefault,\n\t\t\t\thasRevisions:\n\t\t\t\t\t!! globalStyles?._links?.[ 'version-history' ]?.[ 0 ]\n\t\t\t\t\t\t?.count,\n\t\t\t\tisRevisionsStyleBookOpened:\n\t\t\t\t\t'global-styles-revisions:style-book' ===\n\t\t\t\t\tcanvasContainerView,\n\t\t\t\tisRevisionsOpened:\n\t\t\t\t\t'global-styles-revisions' === canvasContainerView,\n\t\t\t};\n\t\t},\n\t\t[ canvas ]\n\t);\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\tuseEffect( () => {\n\t\tif ( shouldClearCanvasContainerView ) {\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t}\n\t}, [ shouldClearCanvasContainerView, setEditorCanvasContainerView ] );\n\n\tconst { setIsListViewOpened } = useDispatch( editorStore );\n\n\tconst toggleRevisions = () => {\n\t\tsetIsListViewOpened( false );\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView( 'style-book' );\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsOpened ) {\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t} else {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t}\n\t};\n\tconst toggleStyleBook = () => {\n\t\tif ( isRevisionsOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t\treturn;\n\t\t}\n\t\tsetIsListViewOpened( isStyleBookOpened && showListViewByDefault );\n\t\tsetEditorCanvasContainerView(\n\t\t\tisStyleBookOpened ? undefined : 'style-book'\n\t\t);\n\t};\n\n\tconst { getActiveComplementaryArea } = useSelect( interfaceStore );\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\tconst previousActiveAreaRef = useRef( null );\n\n\tuseEffect( () => {\n\t\tif ( name === 'styles' && canvas === 'edit' ) {\n\t\t\tpreviousActiveAreaRef.current =\n\t\t\t\tgetActiveComplementaryArea( 'core' );\n\t\t\tenableComplementaryArea( 'core', 'edit-site/global-styles' );\n\t\t} else if ( previousActiveAreaRef.current ) {\n\t\t\tenableComplementaryArea( 'core', previousActiveAreaRef.current );\n\t\t}\n\t}, [ name, enableComplementaryArea, canvas, getActiveComplementaryArea ] );\n\n\treturn (\n\t\t<DefaultSidebar\n\t\t\tclassName=\"edit-site-global-styles-sidebar\"\n\t\t\tidentifier=\"edit-site/global-styles\"\n\t\t\ttitle={ __( 'Styles' ) }\n\t\t\ticon={ styles }\n\t\t\tcloseLabel={ __( 'Close Styles' ) }\n\t\t\tpanelClassName=\"edit-site-global-styles-sidebar__panel\"\n\t\t\theader={\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"edit-site-global-styles-sidebar__header\"\n\t\t\t\t\tgap={ 1 }\n\t\t\t\t>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<h2 className=\"edit-site-global-styles-sidebar__header-title\">\n\t\t\t\t\t\t\t{ __( 'Styles' ) }\n\t\t\t\t\t\t</h2>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\tgap={ 1 }\n\t\t\t\t\t\tclassName=\"edit-site-global-styles-sidebar__header-actions\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! isMobileViewport && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ seen }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Style Book' ) }\n\t\t\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\t\t\tisStyleBookOpened ||\n\t\t\t\t\t\t\t\t\t\tisRevisionsStyleBookOpened\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tdisabled={ shouldClearCanvasContainerView }\n\t\t\t\t\t\t\t\t\tonClick={ toggleStyleBook }\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tlabel={ __( 'Revisions' ) }\n\t\t\t\t\t\t\t\ticon={ backup }\n\t\t\t\t\t\t\t\tonClick={ toggleRevisions }\n\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\tdisabled={ ! hasRevisions }\n\t\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\t\tisRevisionsOpened ||\n\t\t\t\t\t\t\t\t\tisRevisionsStyleBookOpened\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t<GlobalStylesMenuSlot />\n\t\t\t\t\t</Flex>\n\t\t\t\t</Flex>\n\t\t\t}\n\t\t>\n\t\t\t<GlobalStylesUI />\n\t\t</DefaultSidebar>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,15 +6,18 @@ import clsx from 'clsx';
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import { __unstableMotion as motion, __unstableAnimatePresence as AnimatePresence, __unstableUseNavigateRegions as useNavigateRegions } from '@wordpress/components';
9
+ import { __unstableMotion as motion, __unstableAnimatePresence as AnimatePresence, __unstableUseNavigateRegions as useNavigateRegions, SlotFillProvider } from '@wordpress/components';
10
10
  import { useReducedMotion, useViewportMatch, useResizeObserver, usePrevious } from '@wordpress/compose';
11
- import { __ } from '@wordpress/i18n';
11
+ import { __, sprintf } from '@wordpress/i18n';
12
12
  import { useState, useRef, useEffect } from '@wordpress/element';
13
13
  import { CommandMenu } from '@wordpress/commands';
14
14
  import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
15
- import { EditorSnackbars, privateApis as editorPrivateApis } from '@wordpress/editor';
15
+ import { EditorSnackbars, UnsavedChangesWarning, privateApis as editorPrivateApis } from '@wordpress/editor';
16
16
  import { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';
17
17
  import { privateApis as routerPrivateApis } from '@wordpress/router';
18
+ import { PluginArea } from '@wordpress/plugins';
19
+ import { store as noticesStore } from '@wordpress/notices';
20
+ import { useDispatch } from '@wordpress/data';
18
21
 
19
22
  /**
20
23
  * Internal dependencies
@@ -37,21 +40,23 @@ const {
37
40
  useGlobalStyle
38
41
  } = unlock(blockEditorPrivateApis);
39
42
  const {
40
- NavigableRegion
43
+ NavigableRegion,
44
+ GlobalStylesProvider
41
45
  } = unlock(editorPrivateApis);
42
46
  const {
43
47
  useLocation
44
48
  } = unlock(routerPrivateApis);
45
49
  const ANIMATION_DURATION = 0.3;
46
- export default function Layout({
47
- route
48
- }) {
50
+ function Layout() {
49
51
  const {
50
- params
52
+ query,
53
+ name: routeKey,
54
+ areas,
55
+ widths
51
56
  } = useLocation();
52
57
  const {
53
58
  canvas = 'view'
54
- } = params;
59
+ } = query;
55
60
  useCommands();
56
61
  const isMobileViewport = useViewportMatch('medium', '<');
57
62
  const toggleRef = useRef();
@@ -60,11 +65,6 @@ export default function Layout({
60
65
  const [canvasResizer, canvasSize] = useResizeObserver();
61
66
  const isEditorLoading = useIsSiteEditorLoading();
62
67
  const [isResizableFrameOversized, setIsResizableFrameOversized] = useState(false);
63
- const {
64
- name: routeKey,
65
- areas,
66
- widths
67
- } = route;
68
68
  const animationRef = useMovingAnimation({
69
69
  triggerAnimationOnChange: routeKey + '-' + canvas
70
70
  });
@@ -78,7 +78,7 @@ export default function Layout({
78
78
  // Should not depend on the previous canvas mode value but the next.
79
79
  }, [canvas]);
80
80
  return /*#__PURE__*/_jsxs(_Fragment, {
81
- children: [/*#__PURE__*/_jsx(CommandMenu, {}), canvas === 'view' && /*#__PURE__*/_jsx(SaveKeyboardShortcut, {}), /*#__PURE__*/_jsx("div", {
81
+ children: [/*#__PURE__*/_jsx(UnsavedChangesWarning, {}), /*#__PURE__*/_jsx(CommandMenu, {}), canvas === 'view' && /*#__PURE__*/_jsx(SaveKeyboardShortcut, {}), /*#__PURE__*/_jsx("div", {
82
82
  ...navigateRegionsProps,
83
83
  ref: navigateRegionsProps.ref,
84
84
  className: clsx('edit-site-layout', navigateRegionsProps.className, {
@@ -168,4 +168,22 @@ export default function Layout({
168
168
  })]
169
169
  });
170
170
  }
171
+ export default function LayoutWithGlobalStylesProvider(props) {
172
+ const {
173
+ createErrorNotice
174
+ } = useDispatch(noticesStore);
175
+ function onPluginAreaError(name) {
176
+ createErrorNotice(sprintf(/* translators: %s: plugin name */
177
+ __('The "%s" plugin has encountered an error and cannot be rendered.'), name));
178
+ }
179
+ return /*#__PURE__*/_jsx(SlotFillProvider, {
180
+ children: /*#__PURE__*/_jsxs(GlobalStylesProvider, {
181
+ children: [/*#__PURE__*/_jsx(PluginArea, {
182
+ onError: onPluginAreaError
183
+ }), /*#__PURE__*/_jsx(Layout, {
184
+ ...props
185
+ })]
186
+ })
187
+ });
188
+ }
171
189
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__unstableUseNavigateRegions","useNavigateRegions","useReducedMotion","useViewportMatch","useResizeObserver","usePrevious","__","useState","useRef","useEffect","CommandMenu","privateApis","blockEditorPrivateApis","EditorSnackbars","editorPrivateApis","coreCommandsPrivateApis","routerPrivateApis","ErrorBoundary","default","SiteHub","SiteHubMobile","ResizableFrame","unlock","SaveKeyboardShortcut","useIsSiteEditorLoading","useMovingAnimation","SidebarContent","SaveHub","SavePanel","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useCommands","useGlobalStyle","NavigableRegion","useLocation","ANIMATION_DURATION","Layout","route","params","canvas","isMobileViewport","toggleRef","navigateRegionsProps","disableMotion","canvasResizer","canvasSize","isEditorLoading","isResizableFrameOversized","setIsResizableFrameOversized","name","routeKey","areas","widths","animationRef","triggerAnimationOnChange","backgroundColor","gradientValue","previousCanvaMode","current","focus","children","ref","className","mobile","ariaLabel","div","initial","opacity","animate","exit","transition","type","duration","ease","isTransparent","shouldAnimate","sidebar","content","style","maxWidth","edit","preview","width","isReady","isFullWidth","defaultSize","height","isOversized","setIsOversized","innerContentStyle","background"],"sources":["@wordpress/edit-site/src/components/layout/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n} from '@wordpress/components';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tuseResizeObserver,\n\tusePrevious,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useRef, useEffect } from '@wordpress/element';\nimport { CommandMenu } from '@wordpress/commands';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tEditorSnackbars,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport ErrorBoundary from '../error-boundary';\nimport { default as SiteHub, SiteHubMobile } from '../site-hub';\nimport ResizableFrame from '../resizable-frame';\nimport { unlock } from '../../lock-unlock';\nimport SaveKeyboardShortcut from '../save-keyboard-shortcut';\nimport { useIsSiteEditorLoading } from './hooks';\nimport useMovingAnimation from './animation';\nimport SidebarContent from '../sidebar';\nimport SaveHub from '../save-hub';\nimport SavePanel from '../save-panel';\n\nconst { useCommands } = unlock( coreCommandsPrivateApis );\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\nconst { NavigableRegion } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst ANIMATION_DURATION = 0.3;\n\nexport default function Layout( { route } ) {\n\tconst { params } = useLocation();\n\tconst { canvas = 'view' } = params;\n\tuseCommands();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst toggleRef = useRef();\n\tconst navigateRegionsProps = useNavigateRegions();\n\tconst disableMotion = useReducedMotion();\n\tconst [ canvasResizer, canvasSize ] = useResizeObserver();\n\tconst isEditorLoading = useIsSiteEditorLoading();\n\tconst [ isResizableFrameOversized, setIsResizableFrameOversized ] =\n\t\tuseState( false );\n\tconst { name: routeKey, areas, widths } = route;\n\tconst animationRef = useMovingAnimation( {\n\t\ttriggerAnimationOnChange: routeKey + '-' + canvas,\n\t} );\n\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst [ gradientValue ] = useGlobalStyle( 'color.gradient' );\n\tconst previousCanvaMode = usePrevious( canvas );\n\tuseEffect( () => {\n\t\tif ( previousCanvaMode === 'edit' ) {\n\t\t\ttoggleRef.current?.focus();\n\t\t}\n\t\t// Should not depend on the previous canvas mode value but the next.\n\t}, [ canvas ] );\n\n\treturn (\n\t\t<>\n\t\t\t<CommandMenu />\n\t\t\t{ canvas === 'view' && <SaveKeyboardShortcut /> }\n\t\t\t<div\n\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'edit-site-layout',\n\t\t\t\t\tnavigateRegionsProps.className,\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-full-canvas': canvas === 'edit',\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-layout__content\">\n\t\t\t\t\t{ /*\n\t\t\t\t\t\tThe NavigableRegion must always be rendered and not use\n\t\t\t\t\t\t`inert` otherwise `useNavigateRegions` will fail.\n\t\t\t\t\t*/ }\n\t\t\t\t\t{ ( ! isMobileViewport || ! areas.mobile ) && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tariaLabel={ __( 'Navigation' ) }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__sidebar-region\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t\t\t{ canvas === 'view' && (\n\t\t\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\t\t\tinitial={ { opacity: 0 } }\n\t\t\t\t\t\t\t\t\t\tanimate={ { opacity: 1 } }\n\t\t\t\t\t\t\t\t\t\texit={ { opacity: 0 } }\n\t\t\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\t\t\tduration:\n\t\t\t\t\t\t\t\t\t\t\t\t// Disable transition in mobile to emulate a full page transition.\n\t\t\t\t\t\t\t\t\t\t\t\tdisableMotion ||\n\t\t\t\t\t\t\t\t\t\t\t\tisMobileViewport\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t\t\t\t: ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__sidebar\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<SiteHub\n\t\t\t\t\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t\t\t\t\t\tisTransparent={\n\t\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<SidebarContent\n\t\t\t\t\t\t\t\t\t\t\tshouldAnimate={\n\t\t\t\t\t\t\t\t\t\t\t\trouteKey !== 'styles-view'\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\trouteKey={ routeKey }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ areas.sidebar }\n\t\t\t\t\t\t\t\t\t\t</SidebarContent>\n\t\t\t\t\t\t\t\t\t\t<SaveHub />\n\t\t\t\t\t\t\t\t\t\t<SavePanel />\n\t\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\n\t\t\t\t\t<EditorSnackbars />\n\n\t\t\t\t\t{ isMobileViewport && areas.mobile && (\n\t\t\t\t\t\t<div className=\"edit-site-layout__mobile\">\n\t\t\t\t\t\t\t{ canvas !== 'edit' && (\n\t\t\t\t\t\t\t\t<SidebarContent routeKey={ routeKey }>\n\t\t\t\t\t\t\t\t\t<SiteHubMobile\n\t\t\t\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t\t\t\t\tisTransparent={\n\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</SidebarContent>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ areas.mobile }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! isMobileViewport &&\n\t\t\t\t\t\tareas.content &&\n\t\t\t\t\t\tcanvas !== 'edit' && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__area\"\n\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\tmaxWidth: widths?.content,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ areas.content }\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! isMobileViewport && areas.edit && canvas !== 'edit' && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__area\"\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: widths?.edit,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ areas.edit }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! isMobileViewport && areas.preview && (\n\t\t\t\t\t\t<div className=\"edit-site-layout__canvas-container\">\n\t\t\t\t\t\t\t{ canvasResizer }\n\t\t\t\t\t\t\t{ !! canvasSize.width && (\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t\t'edit-site-layout__canvas',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t'is-right-aligned':\n\t\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized,\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tref={ animationRef }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ErrorBoundary>\n\t\t\t\t\t\t\t\t\t\t<ResizableFrame\n\t\t\t\t\t\t\t\t\t\t\tisReady={ ! isEditorLoading }\n\t\t\t\t\t\t\t\t\t\t\tisFullWidth={ canvas === 'edit' }\n\t\t\t\t\t\t\t\t\t\t\tdefaultSize={ {\n\t\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\t\tcanvasSize.width -\n\t\t\t\t\t\t\t\t\t\t\t\t\t24 /* $canvas-padding */,\n\t\t\t\t\t\t\t\t\t\t\t\theight: canvasSize.height,\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\tisOversized={\n\t\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetIsOversized={\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tinnerContentStyle={ {\n\t\t\t\t\t\t\t\t\t\t\t\tbackground:\n\t\t\t\t\t\t\t\t\t\t\t\t\tgradientValue ??\n\t\t\t\t\t\t\t\t\t\t\t\t\tbackgroundColor,\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ areas.preview }\n\t\t\t\t\t\t\t\t\t\t</ResizableFrame>\n\t\t\t\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__unstableUseNavigateRegions","useNavigateRegions","SlotFillProvider","useReducedMotion","useViewportMatch","useResizeObserver","usePrevious","__","sprintf","useState","useRef","useEffect","CommandMenu","privateApis","blockEditorPrivateApis","EditorSnackbars","UnsavedChangesWarning","editorPrivateApis","coreCommandsPrivateApis","routerPrivateApis","PluginArea","store","noticesStore","useDispatch","ErrorBoundary","default","SiteHub","SiteHubMobile","ResizableFrame","unlock","SaveKeyboardShortcut","useIsSiteEditorLoading","useMovingAnimation","SidebarContent","SaveHub","SavePanel","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useCommands","useGlobalStyle","NavigableRegion","GlobalStylesProvider","useLocation","ANIMATION_DURATION","Layout","query","name","routeKey","areas","widths","canvas","isMobileViewport","toggleRef","navigateRegionsProps","disableMotion","canvasResizer","canvasSize","isEditorLoading","isResizableFrameOversized","setIsResizableFrameOversized","animationRef","triggerAnimationOnChange","backgroundColor","gradientValue","previousCanvaMode","current","focus","children","ref","className","mobile","ariaLabel","div","initial","opacity","animate","exit","transition","type","duration","ease","isTransparent","shouldAnimate","sidebar","content","style","maxWidth","edit","preview","width","isReady","isFullWidth","defaultSize","height","isOversized","setIsOversized","innerContentStyle","background","LayoutWithGlobalStylesProvider","props","createErrorNotice","onPluginAreaError","onError"],"sources":["@wordpress/edit-site/src/components/layout/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n\tSlotFillProvider,\n} from '@wordpress/components';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tuseResizeObserver,\n\tusePrevious,\n} from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useState, useRef, useEffect } from '@wordpress/element';\nimport { CommandMenu } from '@wordpress/commands';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tEditorSnackbars,\n\tUnsavedChangesWarning,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { PluginArea } from '@wordpress/plugins';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport ErrorBoundary from '../error-boundary';\nimport { default as SiteHub, SiteHubMobile } from '../site-hub';\nimport ResizableFrame from '../resizable-frame';\nimport { unlock } from '../../lock-unlock';\nimport SaveKeyboardShortcut from '../save-keyboard-shortcut';\nimport { useIsSiteEditorLoading } from './hooks';\nimport useMovingAnimation from './animation';\nimport SidebarContent from '../sidebar';\nimport SaveHub from '../save-hub';\nimport SavePanel from '../save-panel';\n\nconst { useCommands } = unlock( coreCommandsPrivateApis );\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\nconst { NavigableRegion, GlobalStylesProvider } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst ANIMATION_DURATION = 0.3;\n\nfunction Layout() {\n\tconst { query, name: routeKey, areas, widths } = useLocation();\n\tconst { canvas = 'view' } = query;\n\tuseCommands();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst toggleRef = useRef();\n\tconst navigateRegionsProps = useNavigateRegions();\n\tconst disableMotion = useReducedMotion();\n\tconst [ canvasResizer, canvasSize ] = useResizeObserver();\n\tconst isEditorLoading = useIsSiteEditorLoading();\n\tconst [ isResizableFrameOversized, setIsResizableFrameOversized ] =\n\t\tuseState( false );\n\tconst animationRef = useMovingAnimation( {\n\t\ttriggerAnimationOnChange: routeKey + '-' + canvas,\n\t} );\n\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst [ gradientValue ] = useGlobalStyle( 'color.gradient' );\n\tconst previousCanvaMode = usePrevious( canvas );\n\tuseEffect( () => {\n\t\tif ( previousCanvaMode === 'edit' ) {\n\t\t\ttoggleRef.current?.focus();\n\t\t}\n\t\t// Should not depend on the previous canvas mode value but the next.\n\t}, [ canvas ] );\n\n\treturn (\n\t\t<>\n\t\t\t<UnsavedChangesWarning />\n\t\t\t<CommandMenu />\n\t\t\t{ canvas === 'view' && <SaveKeyboardShortcut /> }\n\t\t\t<div\n\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'edit-site-layout',\n\t\t\t\t\tnavigateRegionsProps.className,\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-full-canvas': canvas === 'edit',\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-layout__content\">\n\t\t\t\t\t{ /*\n\t\t\t\t\t\tThe NavigableRegion must always be rendered and not use\n\t\t\t\t\t\t`inert` otherwise `useNavigateRegions` will fail.\n\t\t\t\t\t*/ }\n\t\t\t\t\t{ ( ! isMobileViewport || ! areas.mobile ) && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tariaLabel={ __( 'Navigation' ) }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__sidebar-region\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t\t\t{ canvas === 'view' && (\n\t\t\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\t\t\tinitial={ { opacity: 0 } }\n\t\t\t\t\t\t\t\t\t\tanimate={ { opacity: 1 } }\n\t\t\t\t\t\t\t\t\t\texit={ { opacity: 0 } }\n\t\t\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\t\t\tduration:\n\t\t\t\t\t\t\t\t\t\t\t\t// Disable transition in mobile to emulate a full page transition.\n\t\t\t\t\t\t\t\t\t\t\t\tdisableMotion ||\n\t\t\t\t\t\t\t\t\t\t\t\tisMobileViewport\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t\t\t\t: ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__sidebar\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<SiteHub\n\t\t\t\t\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t\t\t\t\t\tisTransparent={\n\t\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<SidebarContent\n\t\t\t\t\t\t\t\t\t\t\tshouldAnimate={\n\t\t\t\t\t\t\t\t\t\t\t\trouteKey !== 'styles-view'\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\trouteKey={ routeKey }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ areas.sidebar }\n\t\t\t\t\t\t\t\t\t\t</SidebarContent>\n\t\t\t\t\t\t\t\t\t\t<SaveHub />\n\t\t\t\t\t\t\t\t\t\t<SavePanel />\n\t\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\n\t\t\t\t\t<EditorSnackbars />\n\n\t\t\t\t\t{ isMobileViewport && areas.mobile && (\n\t\t\t\t\t\t<div className=\"edit-site-layout__mobile\">\n\t\t\t\t\t\t\t{ canvas !== 'edit' && (\n\t\t\t\t\t\t\t\t<SidebarContent routeKey={ routeKey }>\n\t\t\t\t\t\t\t\t\t<SiteHubMobile\n\t\t\t\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t\t\t\t\tisTransparent={\n\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</SidebarContent>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ areas.mobile }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! isMobileViewport &&\n\t\t\t\t\t\tareas.content &&\n\t\t\t\t\t\tcanvas !== 'edit' && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__area\"\n\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\tmaxWidth: widths?.content,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ areas.content }\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! isMobileViewport && areas.edit && canvas !== 'edit' && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__area\"\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: widths?.edit,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ areas.edit }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! isMobileViewport && areas.preview && (\n\t\t\t\t\t\t<div className=\"edit-site-layout__canvas-container\">\n\t\t\t\t\t\t\t{ canvasResizer }\n\t\t\t\t\t\t\t{ !! canvasSize.width && (\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t\t'edit-site-layout__canvas',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t'is-right-aligned':\n\t\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized,\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tref={ animationRef }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ErrorBoundary>\n\t\t\t\t\t\t\t\t\t\t<ResizableFrame\n\t\t\t\t\t\t\t\t\t\t\tisReady={ ! isEditorLoading }\n\t\t\t\t\t\t\t\t\t\t\tisFullWidth={ canvas === 'edit' }\n\t\t\t\t\t\t\t\t\t\t\tdefaultSize={ {\n\t\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\t\tcanvasSize.width -\n\t\t\t\t\t\t\t\t\t\t\t\t\t24 /* $canvas-padding */,\n\t\t\t\t\t\t\t\t\t\t\t\theight: canvasSize.height,\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\tisOversized={\n\t\t\t\t\t\t\t\t\t\t\t\tisResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetIsOversized={\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsResizableFrameOversized\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tinnerContentStyle={ {\n\t\t\t\t\t\t\t\t\t\t\t\tbackground:\n\t\t\t\t\t\t\t\t\t\t\t\t\tgradientValue ??\n\t\t\t\t\t\t\t\t\t\t\t\t\tbackgroundColor,\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ areas.preview }\n\t\t\t\t\t\t\t\t\t\t</ResizableFrame>\n\t\t\t\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default function LayoutWithGlobalStylesProvider( props ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<GlobalStylesProvider>\n\t\t\t\t{ /** This needs to be within the SlotFillProvider */ }\n\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t<Layout { ...props } />\n\t\t\t</GlobalStylesProvider>\n\t\t</SlotFillProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -53,10 +53,7 @@ export default function DeleteCategoryMenuItem({
53
53
  id: 'pattern-category-delete'
54
54
  });
55
55
  onClose?.();
56
- history.push({
57
- postType: PATTERN_TYPES.user,
58
- categoryId: PATTERN_DEFAULT_CATEGORY
59
- });
56
+ history.navigate(`/pattern?categoryId=${PATTERN_DEFAULT_CATEGORY}`);
60
57
  } catch (error) {
61
58
  const errorMessage = error.message && error.code !== 'unknown_error' ? error.message : __('An error occurred while deleting the pattern category.');
62
59
  createErrorNotice(errorMessage, {
@@ -1 +1 @@
1
- {"version":3,"names":["MenuItem","__experimentalConfirmDialog","ConfirmDialog","store","coreStore","useDispatch","useState","decodeEntities","__","_x","sprintf","noticesStore","privateApis","routerPrivateApis","unlock","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useHistory","DeleteCategoryMenuItem","category","onClose","isModalOpen","setIsModalOpen","history","createSuccessNotice","createErrorNotice","deleteEntityRecord","invalidateResolution","onDelete","id","force","throwOnError","user","per_page","label","type","push","postType","categoryId","error","errorMessage","message","code","children","isDestructive","onClick","isOpen","onConfirm","onCancel","confirmButtonText","className","title","size","__experimentalHideHeader"],"sources":["@wordpress/edit-site/src/components/page-patterns/delete-category-menu-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuItem,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { PATTERN_TYPES, PATTERN_DEFAULT_CATEGORY } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function DeleteCategoryMenuItem( { category, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst history = useHistory();\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord, invalidateResolution } =\n\t\tuseDispatch( coreStore );\n\n\tconst onDelete = async () => {\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'taxonomy',\n\t\t\t\t'wp_pattern_category',\n\t\t\t\tcategory.id,\n\t\t\t\t{ force: true },\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Prevent the need to refresh the page to get up-to-date categories\n\t\t\t// and pattern categorization.\n\t\t\tinvalidateResolution( 'getUserPatternCategories' );\n\t\t\tinvalidateResolution( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t{ per_page: -1 },\n\t\t\t] );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: The pattern category's name */\n\t\t\t\t\t_x( '\"%s\" deleted.', 'pattern category' ),\n\t\t\t\t\tcategory.label\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'pattern-category-delete' }\n\t\t\t);\n\n\t\t\tonClose?.();\n\t\t\thistory.push( {\n\t\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\t\tcategoryId: PATTERN_DEFAULT_CATEGORY,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern category.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-delete',\n\t\t\t} );\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem isDestructive onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t{ __( 'Delete' ) }\n\t\t\t</MenuItem>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ isModalOpen }\n\t\t\t\tonConfirm={ onDelete }\n\t\t\t\tonCancel={ () => setIsModalOpen( false ) }\n\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\tclassName=\"edit-site-patterns__delete-modal\"\n\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t_x( 'Delete \"%s\"?', 'pattern category' ),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t\tsize=\"medium\"\n\t\t\t\t__experimentalHideHeader={ false }\n\t\t\t>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete the category \"%s\"? The patterns will not be deleted.'\n\t\t\t\t\t),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t</ConfirmDialog>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MenuItem","__experimentalConfirmDialog","ConfirmDialog","store","coreStore","useDispatch","useState","decodeEntities","__","_x","sprintf","noticesStore","privateApis","routerPrivateApis","unlock","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useHistory","DeleteCategoryMenuItem","category","onClose","isModalOpen","setIsModalOpen","history","createSuccessNotice","createErrorNotice","deleteEntityRecord","invalidateResolution","onDelete","id","force","throwOnError","user","per_page","label","type","navigate","error","errorMessage","message","code","children","isDestructive","onClick","isOpen","onConfirm","onCancel","confirmButtonText","className","title","size","__experimentalHideHeader"],"sources":["@wordpress/edit-site/src/components/page-patterns/delete-category-menu-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuItem,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { PATTERN_TYPES, PATTERN_DEFAULT_CATEGORY } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function DeleteCategoryMenuItem( { category, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst history = useHistory();\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord, invalidateResolution } =\n\t\tuseDispatch( coreStore );\n\n\tconst onDelete = async () => {\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'taxonomy',\n\t\t\t\t'wp_pattern_category',\n\t\t\t\tcategory.id,\n\t\t\t\t{ force: true },\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Prevent the need to refresh the page to get up-to-date categories\n\t\t\t// and pattern categorization.\n\t\t\tinvalidateResolution( 'getUserPatternCategories' );\n\t\t\tinvalidateResolution( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t{ per_page: -1 },\n\t\t\t] );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: The pattern category's name */\n\t\t\t\t\t_x( '\"%s\" deleted.', 'pattern category' ),\n\t\t\t\t\tcategory.label\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'pattern-category-delete' }\n\t\t\t);\n\n\t\t\tonClose?.();\n\t\t\thistory.navigate(\n\t\t\t\t`/pattern?categoryId=${ PATTERN_DEFAULT_CATEGORY }`\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern category.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-delete',\n\t\t\t} );\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem isDestructive onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t{ __( 'Delete' ) }\n\t\t\t</MenuItem>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ isModalOpen }\n\t\t\t\tonConfirm={ onDelete }\n\t\t\t\tonCancel={ () => setIsModalOpen( false ) }\n\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\tclassName=\"edit-site-patterns__delete-modal\"\n\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t_x( 'Delete \"%s\"?', 'pattern category' ),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t\tsize=\"medium\"\n\t\t\t\t__experimentalHideHeader={ false }\n\t\t\t>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete the category \"%s\"? The patterns will not be deleted.'\n\t\t\t\t\t),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t</ConfirmDialog>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,QAAQ,EACRC,2BAA2B,IAAIC,aAAa,QACtC,uBAAuB;AAC9B,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASC,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AACjD,SAASP,KAAK,IAAIQ,YAAY,QAAQ,oBAAoB;AAC1D,SAASC,WAAW,IAAIC,iBAAiB,QAAQ,mBAAmB;;AAEpE;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,aAAa,EAAEC,wBAAwB,QAAQ,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAEhF,MAAM;EAAEC;AAAW,CAAC,GAAGT,MAAM,CAAED,iBAAkB,CAAC;AAElD,eAAe,SAASW,sBAAsBA,CAAE;EAAEC,QAAQ;EAAEC;AAAQ,CAAC,EAAG;EACvE,MAAM,CAAEC,WAAW,EAAEC,cAAc,CAAE,GAAGtB,QAAQ,CAAE,KAAM,CAAC;EACzD,MAAMuB,OAAO,GAAGN,UAAU,CAAC,CAAC;EAE5B,MAAM;IAAEO,mBAAmB;IAAEC;EAAkB,CAAC,GAC/C1B,WAAW,CAAEM,YAAa,CAAC;EAC5B,MAAM;IAAEqB,kBAAkB;IAAEC;EAAqB,CAAC,GACjD5B,WAAW,CAAED,SAAU,CAAC;EAEzB,MAAM8B,QAAQ,GAAG,MAAAA,CAAA,KAAY;IAC5B,IAAI;MACH,MAAMF,kBAAkB,CACvB,UAAU,EACV,qBAAqB,EACrBP,QAAQ,CAACU,EAAE,EACX;QAAEC,KAAK,EAAE;MAAK,CAAC,EACf;QAAEC,YAAY,EAAE;MAAK,CACtB,CAAC;;MAED;MACA;MACAJ,oBAAoB,CAAE,0BAA2B,CAAC;MAClDA,oBAAoB,CAAE,kBAAkB,EAAE,CACzC,UAAU,EACVlB,aAAa,CAACuB,IAAI,EAClB;QAAEC,QAAQ,EAAE,CAAC;MAAE,CAAC,CACf,CAAC;MAEHT,mBAAmB,CAClBpB,OAAO,CACN;MACAD,EAAE,CAAE,eAAe,EAAE,kBAAmB,CAAC,EACzCgB,QAAQ,CAACe,KACV,CAAC,EACD;QAAEC,IAAI,EAAE,UAAU;QAAEN,EAAE,EAAE;MAA0B,CACnD,CAAC;MAEDT,OAAO,GAAG,CAAC;MACXG,OAAO,CAACa,QAAQ,CACf,uBAAwB1B,wBAAwB,EACjD,CAAC;IACF,CAAC,CAAC,OAAQ2B,KAAK,EAAG;MACjB,MAAMC,YAAY,GACjBD,KAAK,CAACE,OAAO,IAAIF,KAAK,CAACG,IAAI,KAAK,eAAe,GAC5CH,KAAK,CAACE,OAAO,GACbrC,EAAE,CACF,wDACA,CAAC;MAELuB,iBAAiB,CAAEa,YAAY,EAAE;QAChCH,IAAI,EAAE,UAAU;QAChBN,EAAE,EAAE;MACL,CAAE,CAAC;IACJ;EACD,CAAC;EAED,oBACCb,KAAA,CAAAF,SAAA;IAAA2B,QAAA,gBACC7B,IAAA,CAAClB,QAAQ;MAACgD,aAAa;MAACC,OAAO,EAAGA,CAAA,KAAMrB,cAAc,CAAE,IAAK,CAAG;MAAAmB,QAAA,EAC7DvC,EAAE,CAAE,QAAS;IAAC,CACP,CAAC,eACXU,IAAA,CAAChB,aAAa;MACbgD,MAAM,EAAGvB,WAAa;MACtBwB,SAAS,EAAGjB,QAAU;MACtBkB,QAAQ,EAAGA,CAAA,KAAMxB,cAAc,CAAE,KAAM,CAAG;MAC1CyB,iBAAiB,EAAG7C,EAAE,CAAE,QAAS,CAAG;MACpC8C,SAAS,EAAC,kCAAkC;MAC5CC,KAAK,EAAG7C,OAAO;MACd;MACAD,EAAE,CAAE,cAAc,EAAE,kBAAmB,CAAC,EACxCF,cAAc,CAAEkB,QAAQ,CAACe,KAAM,CAChC,CAAG;MACHgB,IAAI,EAAC,QAAQ;MACbC,wBAAwB,EAAG,KAAO;MAAAV,QAAA,EAEhCrC,OAAO;MACR;MACAF,EAAE,CACD,sFACD,CAAC,EACDD,cAAc,CAAEkB,QAAQ,CAACe,KAAM,CAChC;IAAC,CACa,CAAC;EAAA,CACf,CAAC;AAEL","ignoreList":[]}