@wordpress/edit-site 6.9.0 → 6.11.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 (675) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/add-new-post/index.js +1 -1
  3. package/build/components/add-new-post/index.js.map +1 -1
  4. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  5. package/build/components/add-new-template/index.js +1 -1
  6. package/build/components/add-new-template/index.js.map +1 -1
  7. package/build/components/add-new-template/utils.js +8 -8
  8. package/build/components/add-new-template/utils.js.map +1 -1
  9. package/build/components/app/index.js +3 -1
  10. package/build/components/app/index.js.map +1 -1
  11. package/build/components/block-editor/use-editor-iframe-props.js +29 -20
  12. package/build/components/block-editor/use-editor-iframe-props.js.map +1 -1
  13. package/build/components/block-editor/use-site-editor-settings.js +10 -8
  14. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  15. package/build/components/editor/index.js +23 -11
  16. package/build/components/editor/index.js.map +1 -1
  17. package/build/components/editor/use-adapt-editor-to-canvas.js +49 -0
  18. package/build/components/editor/use-adapt-editor-to-canvas.js.map +1 -0
  19. package/build/components/editor/use-editor-title.js +2 -2
  20. package/build/components/editor/use-editor-title.js.map +1 -1
  21. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  22. package/build/components/global-styles/font-families.js +41 -25
  23. package/build/components/global-styles/font-families.js.map +1 -1
  24. package/build/components/global-styles/font-family-item.js +1 -1
  25. package/build/components/global-styles/font-family-item.js.map +1 -1
  26. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  27. package/build/components/global-styles/font-library-modal/context.js +1 -0
  28. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  29. package/build/components/global-styles/font-library-modal/font-card.js +1 -1
  30. package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
  31. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  32. package/build/components/global-styles/font-library-modal/installed-fonts.js +4 -3
  33. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  34. package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
  35. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  36. package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  37. package/build/components/global-styles/font-library-modal/upload-fonts.js +1 -0
  38. package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  39. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -1
  40. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  41. package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
  42. package/build/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js +1 -1
  43. package/build/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js.map +1 -1
  44. package/build/components/global-styles/font-sizes/font-size.js +14 -15
  45. package/build/components/global-styles/font-sizes/font-size.js.map +1 -1
  46. package/build/components/global-styles/font-sizes/font-sizes-count.js +1 -2
  47. package/build/components/global-styles/font-sizes/font-sizes-count.js.map +1 -1
  48. package/build/components/global-styles/font-sizes/font-sizes.js +4 -4
  49. package/build/components/global-styles/font-sizes/font-sizes.js.map +1 -1
  50. package/build/components/global-styles/highlighted-colors.js.map +1 -1
  51. package/build/components/global-styles/palette.js +16 -13
  52. package/build/components/global-styles/palette.js.map +1 -1
  53. package/build/components/global-styles/preset-colors.js.map +1 -1
  54. package/build/components/global-styles/root-menu.js +0 -4
  55. package/build/components/global-styles/root-menu.js.map +1 -1
  56. package/build/components/global-styles/screen-block-list.js +2 -6
  57. package/build/components/global-styles/screen-block-list.js.map +1 -1
  58. package/build/components/global-styles/screen-css.js +1 -1
  59. package/build/components/global-styles/screen-css.js.map +1 -1
  60. package/build/components/global-styles/screen-revisions/index.js +3 -8
  61. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  62. package/build/components/global-styles/screen-revisions/revisions-buttons.js +3 -3
  63. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  64. package/build/components/global-styles/screen-root.js +0 -3
  65. package/build/components/global-styles/screen-root.js.map +1 -1
  66. package/build/components/global-styles/screen-style-variations.js +14 -3
  67. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  68. package/build/components/global-styles/shadow-utils.js.map +1 -1
  69. package/build/components/global-styles/shadows-edit-panel.js +26 -15
  70. package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
  71. package/build/components/global-styles/shadows-panel.js +1 -4
  72. package/build/components/global-styles/shadows-panel.js.map +1 -1
  73. package/build/components/global-styles/style-variations-container.js +1 -5
  74. package/build/components/global-styles/style-variations-container.js.map +1 -1
  75. package/build/components/global-styles/typography-elements.js +1 -4
  76. package/build/components/global-styles/typography-elements.js.map +1 -1
  77. package/build/components/global-styles/typography-preview.js.map +1 -1
  78. package/build/components/global-styles/ui.js +27 -14
  79. package/build/components/global-styles/ui.js.map +1 -1
  80. package/build/components/global-styles/utils.js.map +1 -1
  81. package/build/components/global-styles/variations/variation.js +2 -2
  82. package/build/components/global-styles/variations/variation.js.map +1 -1
  83. package/build/components/global-styles/variations/variations-panel.js +0 -1
  84. package/build/components/global-styles/variations/variations-panel.js.map +1 -1
  85. package/build/components/global-styles-sidebar/default-sidebar.js +0 -1
  86. package/build/components/global-styles-sidebar/default-sidebar.js.map +1 -1
  87. package/build/components/global-styles-sidebar/index.js +43 -36
  88. package/build/components/global-styles-sidebar/index.js.map +1 -1
  89. package/build/components/layout/animation.js +1 -3
  90. package/build/components/layout/animation.js.map +1 -1
  91. package/build/components/layout/index.js +23 -47
  92. package/build/components/layout/index.js.map +1 -1
  93. package/build/components/layout/router.js +17 -140
  94. package/build/components/layout/router.js.map +1 -1
  95. package/build/components/page-patterns/delete-category-menu-item.js +3 -3
  96. package/build/components/page-patterns/delete-category-menu-item.js.map +1 -1
  97. package/build/components/page-patterns/fields.js.map +1 -1
  98. package/build/components/page-patterns/header.js +1 -1
  99. package/build/components/page-patterns/header.js.map +1 -1
  100. package/build/components/page-patterns/index.js +4 -2
  101. package/build/components/page-patterns/index.js.map +1 -1
  102. package/build/components/page-patterns/use-pattern-settings.js +1 -1
  103. package/build/components/page-patterns/use-pattern-settings.js.map +1 -1
  104. package/build/components/page-templates/index.js +2 -2
  105. package/build/components/page-templates/index.js.map +1 -1
  106. package/build/components/pagination/index.js +1 -1
  107. package/build/components/pagination/index.js.map +1 -1
  108. package/build/components/post-edit/index.js +8 -4
  109. package/build/components/post-edit/index.js.map +1 -1
  110. package/build/components/post-fields/index.js +8 -54
  111. package/build/components/post-fields/index.js.map +1 -1
  112. package/build/components/post-list/index.js +1 -1
  113. package/build/components/post-list/index.js.map +1 -1
  114. package/build/components/posts-app/index.js.map +1 -1
  115. package/build/components/posts-app/router.js +4 -4
  116. package/build/components/posts-app/router.js.map +1 -1
  117. package/build/components/resizable-frame/index.js +21 -9
  118. package/build/components/resizable-frame/index.js.map +1 -1
  119. package/build/components/revisions/index.js +1 -1
  120. package/build/components/revisions/index.js.map +1 -1
  121. package/build/components/routes/use-title.js +1 -1
  122. package/build/components/routes/use-title.js.map +1 -1
  123. package/build/components/save-button/index.js +3 -3
  124. package/build/components/save-button/index.js.map +1 -1
  125. package/build/components/save-keyboard-shortcut/index.js +78 -0
  126. package/build/components/save-keyboard-shortcut/index.js.map +1 -0
  127. package/build/components/save-panel/index.js +17 -6
  128. package/build/components/save-panel/index.js.map +1 -1
  129. package/build/components/sidebar-button/index.js +1 -1
  130. package/build/components/sidebar-button/index.js.map +1 -1
  131. package/build/components/sidebar-dataviews/default-views.js +2 -5
  132. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  133. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  134. package/build/components/sidebar-navigation-screen/index.js +2 -1
  135. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  136. package/build/components/sidebar-navigation-screen-details-footer/index.js +1 -1
  137. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  138. package/build/components/sidebar-navigation-screen-global-styles/index.js +30 -10
  139. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  140. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  141. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +5 -5
  142. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  143. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +3 -3
  144. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  145. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +7 -12
  146. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  147. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -2
  148. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  149. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  150. package/build/components/site-editor-routes/home-edit.js +26 -0
  151. package/build/components/site-editor-routes/home-edit.js.map +1 -0
  152. package/build/components/site-editor-routes/home-view.js +25 -0
  153. package/build/components/site-editor-routes/home-view.js.map +1 -0
  154. package/build/components/site-editor-routes/index.js +49 -0
  155. package/build/components/site-editor-routes/index.js.map +1 -0
  156. package/build/components/site-editor-routes/navigation-edit.js +29 -0
  157. package/build/components/site-editor-routes/navigation-edit.js.map +1 -0
  158. package/build/components/site-editor-routes/navigation-item-edit.js +31 -0
  159. package/build/components/site-editor-routes/navigation-item-edit.js.map +1 -0
  160. package/build/components/site-editor-routes/navigation-item-view.js +30 -0
  161. package/build/components/site-editor-routes/navigation-item-view.js.map +1 -0
  162. package/build/components/site-editor-routes/navigation-view.js +28 -0
  163. package/build/components/site-editor-routes/navigation-view.js.map +1 -0
  164. package/build/components/site-editor-routes/pages-edit.js +43 -0
  165. package/build/components/site-editor-routes/pages-edit.js.map +1 -0
  166. package/build/components/site-editor-routes/pages-list-view-quick-edit.js +64 -0
  167. package/build/components/site-editor-routes/pages-list-view-quick-edit.js.map +1 -0
  168. package/build/components/site-editor-routes/pages-list-view.js +47 -0
  169. package/build/components/site-editor-routes/pages-list-view.js.map +1 -0
  170. package/build/components/site-editor-routes/pages-view-quick-edit.js +61 -0
  171. package/build/components/site-editor-routes/pages-view-quick-edit.js.map +1 -0
  172. package/build/components/site-editor-routes/pages-view.js +42 -0
  173. package/build/components/site-editor-routes/pages-view.js.map +1 -0
  174. package/build/components/site-editor-routes/patterns-edit.js +31 -0
  175. package/build/components/site-editor-routes/patterns-edit.js.map +1 -0
  176. package/build/components/site-editor-routes/patterns-view.js +29 -0
  177. package/build/components/site-editor-routes/patterns-view.js.map +1 -0
  178. package/build/components/site-editor-routes/styles-edit.js +28 -0
  179. package/build/components/site-editor-routes/styles-edit.js.map +1 -0
  180. package/build/components/site-editor-routes/styles-view.js +27 -0
  181. package/build/components/site-editor-routes/styles-view.js.map +1 -0
  182. package/build/components/site-editor-routes/templates-edit.js +31 -0
  183. package/build/components/site-editor-routes/templates-edit.js.map +1 -0
  184. package/build/components/site-editor-routes/templates-list-view.js +34 -0
  185. package/build/components/site-editor-routes/templates-list-view.js.map +1 -0
  186. package/build/components/site-editor-routes/templates-view.js +29 -0
  187. package/build/components/site-editor-routes/templates-view.js.map +1 -0
  188. package/build/components/site-hub/index.js +3 -2
  189. package/build/components/site-hub/index.js.map +1 -1
  190. package/build/components/style-book/color-examples.js +46 -0
  191. package/build/components/style-book/color-examples.js.map +1 -0
  192. package/build/components/style-book/constants.js +75 -10
  193. package/build/components/style-book/constants.js.map +1 -1
  194. package/build/components/style-book/duotone-examples.js +55 -0
  195. package/build/components/style-book/duotone-examples.js.map +1 -0
  196. package/build/components/style-book/examples.js +46 -3
  197. package/build/components/style-book/examples.js.map +1 -1
  198. package/build/components/style-book/index.js +92 -36
  199. package/build/components/style-book/index.js.map +1 -1
  200. package/build/components/style-book/types.js.map +1 -1
  201. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +6 -1
  202. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  203. package/build/deprecated.js.map +1 -1
  204. package/build/hooks/commands/use-common-commands.js +46 -30
  205. package/build/hooks/commands/use-common-commands.js.map +1 -1
  206. package/build/hooks/commands/use-edit-mode-commands.js +15 -11
  207. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  208. package/build/hooks/commands/use-set-command-context.js +12 -15
  209. package/build/hooks/commands/use-set-command-context.js.map +1 -1
  210. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  211. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -1
  212. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  213. package/build/index.js +2 -4
  214. package/build/index.js.map +1 -1
  215. package/build/posts.js +1 -1
  216. package/build/posts.js.map +1 -1
  217. package/build/store/actions.js.map +1 -1
  218. package/build/store/private-actions.js +8 -61
  219. package/build/store/private-actions.js.map +1 -1
  220. package/build/store/private-selectors.js +4 -12
  221. package/build/store/private-selectors.js.map +1 -1
  222. package/build/store/reducer.js +9 -18
  223. package/build/store/reducer.js.map +1 -1
  224. package/build/store/selectors.js.map +1 -1
  225. package/build/utils/get-filtered-template-parts.js.map +1 -1
  226. package/build-module/components/add-new-pattern/index.js +1 -3
  227. package/build-module/components/add-new-pattern/index.js.map +1 -1
  228. package/build-module/components/add-new-post/index.js +2 -3
  229. package/build-module/components/add-new-post/index.js.map +1 -1
  230. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js +1 -2
  231. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  232. package/build-module/components/add-new-template/add-custom-template-modal-content.js +1 -3
  233. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  234. package/build-module/components/add-new-template/index.js +2 -4
  235. package/build-module/components/add-new-template/index.js.map +1 -1
  236. package/build-module/components/add-new-template/utils.js +9 -9
  237. package/build-module/components/add-new-template/utils.js.map +1 -1
  238. package/build-module/components/app/index.js +6 -5
  239. package/build-module/components/app/index.js.map +1 -1
  240. package/build-module/components/block-editor/use-editor-iframe-props.js +30 -21
  241. package/build-module/components/block-editor/use-editor-iframe-props.js.map +1 -1
  242. package/build-module/components/block-editor/use-site-editor-settings.js +10 -8
  243. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  244. package/build-module/components/editor/index.js +24 -14
  245. package/build-module/components/editor/index.js.map +1 -1
  246. package/build-module/components/editor/use-adapt-editor-to-canvas.js +42 -0
  247. package/build-module/components/editor/use-adapt-editor-to-canvas.js.map +1 -0
  248. package/build-module/components/editor/use-editor-title.js +3 -3
  249. package/build-module/components/editor/use-editor-title.js.map +1 -1
  250. package/build-module/components/editor-canvas-container/index.js +1 -2
  251. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  252. package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
  253. package/build-module/components/global-styles/color-palette-panel.js +1 -2
  254. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  255. package/build-module/components/global-styles/font-families.js +45 -31
  256. package/build-module/components/global-styles/font-families.js.map +1 -1
  257. package/build-module/components/global-styles/font-family-item.js +2 -3
  258. package/build-module/components/global-styles/font-family-item.js.map +1 -1
  259. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +1 -2
  260. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  261. package/build-module/components/global-styles/font-library-modal/context.js +1 -0
  262. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  263. package/build-module/components/global-styles/font-library-modal/font-card.js +2 -3
  264. package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
  265. package/build-module/components/global-styles/font-library-modal/font-collection.js +1 -3
  266. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  267. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +1 -2
  268. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  269. package/build-module/components/global-styles/font-library-modal/index.js +1 -2
  270. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
  271. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +5 -6
  272. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  273. package/build-module/components/global-styles/font-library-modal/library-font-details.js +1 -3
  274. package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
  275. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +1 -2
  276. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  277. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  278. package/build-module/components/global-styles/font-library-modal/upload-fonts.js +2 -2
  279. package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  280. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -1
  281. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  282. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
  283. package/build-module/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js +1 -1
  284. package/build-module/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js.map +1 -1
  285. package/build-module/components/global-styles/font-sizes/font-size.js +15 -18
  286. package/build-module/components/global-styles/font-sizes/font-size.js.map +1 -1
  287. package/build-module/components/global-styles/font-sizes/font-sizes-count.js +2 -4
  288. package/build-module/components/global-styles/font-sizes/font-sizes-count.js.map +1 -1
  289. package/build-module/components/global-styles/font-sizes/font-sizes.js +5 -7
  290. package/build-module/components/global-styles/font-sizes/font-sizes.js.map +1 -1
  291. package/build-module/components/global-styles/font-sizes/rename-font-size-dialog.js +1 -2
  292. package/build-module/components/global-styles/font-sizes/rename-font-size-dialog.js.map +1 -1
  293. package/build-module/components/global-styles/gradients-palette-panel.js +1 -2
  294. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  295. package/build-module/components/global-styles/header.js +1 -2
  296. package/build-module/components/global-styles/header.js.map +1 -1
  297. package/build-module/components/global-styles/highlighted-colors.js.map +1 -1
  298. package/build-module/components/global-styles/navigation-button.js +1 -2
  299. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  300. package/build-module/components/global-styles/palette.js +17 -15
  301. package/build-module/components/global-styles/palette.js.map +1 -1
  302. package/build-module/components/global-styles/preset-colors.js.map +1 -1
  303. package/build-module/components/global-styles/preview-iframe.js +1 -3
  304. package/build-module/components/global-styles/preview-iframe.js.map +1 -1
  305. package/build-module/components/global-styles/preview-styles.js +1 -2
  306. package/build-module/components/global-styles/preview-styles.js.map +1 -1
  307. package/build-module/components/global-styles/root-menu.js +1 -7
  308. package/build-module/components/global-styles/root-menu.js.map +1 -1
  309. package/build-module/components/global-styles/screen-background.js +1 -3
  310. package/build-module/components/global-styles/screen-background.js.map +1 -1
  311. package/build-module/components/global-styles/screen-block-list.js +3 -9
  312. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  313. package/build-module/components/global-styles/screen-block.js +1 -3
  314. package/build-module/components/global-styles/screen-block.js.map +1 -1
  315. package/build-module/components/global-styles/screen-color-palette.js +1 -3
  316. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  317. package/build-module/components/global-styles/screen-colors.js +1 -3
  318. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  319. package/build-module/components/global-styles/screen-css.js +2 -4
  320. package/build-module/components/global-styles/screen-css.js.map +1 -1
  321. package/build-module/components/global-styles/screen-layout.js +1 -3
  322. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  323. package/build-module/components/global-styles/screen-revisions/index.js +5 -12
  324. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  325. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +4 -5
  326. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  327. package/build-module/components/global-styles/screen-root.js +1 -6
  328. package/build-module/components/global-styles/screen-root.js.map +1 -1
  329. package/build-module/components/global-styles/screen-style-variations.js +15 -6
  330. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  331. package/build-module/components/global-styles/screen-typography-element.js +1 -3
  332. package/build-module/components/global-styles/screen-typography-element.js.map +1 -1
  333. package/build-module/components/global-styles/screen-typography.js +1 -3
  334. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  335. package/build-module/components/global-styles/shadow-utils.js.map +1 -1
  336. package/build-module/components/global-styles/shadows-edit-panel.js +28 -19
  337. package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
  338. package/build-module/components/global-styles/shadows-panel.js +2 -7
  339. package/build-module/components/global-styles/shadows-panel.js.map +1 -1
  340. package/build-module/components/global-styles/size-control/index.js +1 -2
  341. package/build-module/components/global-styles/size-control/index.js.map +1 -1
  342. package/build-module/components/global-styles/style-variations-container.js +2 -6
  343. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  344. package/build-module/components/global-styles/typeset.js +3 -5
  345. package/build-module/components/global-styles/typeset.js.map +1 -1
  346. package/build-module/components/global-styles/typography-elements.js +3 -7
  347. package/build-module/components/global-styles/typography-elements.js.map +1 -1
  348. package/build-module/components/global-styles/typography-example.js +1 -2
  349. package/build-module/components/global-styles/typography-example.js.map +1 -1
  350. package/build-module/components/global-styles/typography-preview.js.map +1 -1
  351. package/build-module/components/global-styles/ui.js +28 -17
  352. package/build-module/components/global-styles/ui.js.map +1 -1
  353. package/build-module/components/global-styles/utils.js.map +1 -1
  354. package/build-module/components/global-styles/variations/variation.js +3 -3
  355. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  356. package/build-module/components/global-styles/variations/variations-color.js +1 -2
  357. package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
  358. package/build-module/components/global-styles/variations/variations-panel.js +0 -1
  359. package/build-module/components/global-styles/variations/variations-panel.js.map +1 -1
  360. package/build-module/components/global-styles/variations/variations-typography.js +1 -2
  361. package/build-module/components/global-styles/variations/variations-typography.js.map +1 -1
  362. package/build-module/components/global-styles-sidebar/default-sidebar.js +1 -4
  363. package/build-module/components/global-styles-sidebar/default-sidebar.js.map +1 -1
  364. package/build-module/components/global-styles-sidebar/index.js +45 -39
  365. package/build-module/components/global-styles-sidebar/index.js.map +1 -1
  366. package/build-module/components/layout/animation.js +1 -3
  367. package/build-module/components/layout/animation.js.map +1 -1
  368. package/build-module/components/layout/index.js +24 -50
  369. package/build-module/components/layout/index.js.map +1 -1
  370. package/build-module/components/layout/router.js +17 -139
  371. package/build-module/components/layout/router.js.map +1 -1
  372. package/build-module/components/more-menu/index.js +1 -3
  373. package/build-module/components/more-menu/index.js.map +1 -1
  374. package/build-module/components/page/header.js +1 -2
  375. package/build-module/components/page/header.js.map +1 -1
  376. package/build-module/components/page/index.js +1 -2
  377. package/build-module/components/page/index.js.map +1 -1
  378. package/build-module/components/page-patterns/delete-category-menu-item.js +5 -7
  379. package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -1
  380. package/build-module/components/page-patterns/fields.js +1 -2
  381. package/build-module/components/page-patterns/fields.js.map +1 -1
  382. package/build-module/components/page-patterns/header.js +2 -3
  383. package/build-module/components/page-patterns/header.js.map +1 -1
  384. package/build-module/components/page-patterns/index.js +5 -4
  385. package/build-module/components/page-patterns/index.js.map +1 -1
  386. package/build-module/components/page-patterns/rename-category-menu-item.js +1 -3
  387. package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -1
  388. package/build-module/components/page-patterns/use-pattern-settings.js +1 -1
  389. package/build-module/components/page-patterns/use-pattern-settings.js.map +1 -1
  390. package/build-module/components/page-templates/fields.js +1 -2
  391. package/build-module/components/page-templates/fields.js.map +1 -1
  392. package/build-module/components/page-templates/index.js +2 -2
  393. package/build-module/components/page-templates/index.js.map +1 -1
  394. package/build-module/components/pagination/index.js +2 -3
  395. package/build-module/components/pagination/index.js.map +1 -1
  396. package/build-module/components/post-edit/index.js +9 -6
  397. package/build-module/components/post-edit/index.js.map +1 -1
  398. package/build-module/components/post-fields/index.js +10 -55
  399. package/build-module/components/post-fields/index.js.map +1 -1
  400. package/build-module/components/post-list/index.js +2 -4
  401. package/build-module/components/post-list/index.js.map +1 -1
  402. package/build-module/components/posts-app/index.js +3 -4
  403. package/build-module/components/posts-app/index.js.map +1 -1
  404. package/build-module/components/posts-app/router.js +3 -3
  405. package/build-module/components/posts-app/router.js.map +1 -1
  406. package/build-module/components/resizable-frame/index.js +21 -12
  407. package/build-module/components/resizable-frame/index.js.map +1 -1
  408. package/build-module/components/revisions/index.js +2 -3
  409. package/build-module/components/revisions/index.js.map +1 -1
  410. package/build-module/components/routes/use-title.js +1 -1
  411. package/build-module/components/routes/use-title.js.map +1 -1
  412. package/build-module/components/save-button/index.js +3 -3
  413. package/build-module/components/save-button/index.js.map +1 -1
  414. package/build-module/components/save-keyboard-shortcut/index.js +71 -0
  415. package/build-module/components/save-keyboard-shortcut/index.js.map +1 -0
  416. package/build-module/components/save-panel/index.js +18 -8
  417. package/build-module/components/save-panel/index.js.map +1 -1
  418. package/build-module/components/sidebar-button/index.js +1 -1
  419. package/build-module/components/sidebar-button/index.js.map +1 -1
  420. package/build-module/components/sidebar-dataviews/add-new-view.js +1 -3
  421. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
  422. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +1 -3
  423. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  424. package/build-module/components/sidebar-dataviews/dataview-item.js +1 -2
  425. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  426. package/build-module/components/sidebar-dataviews/default-views.js +2 -5
  427. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  428. package/build-module/components/sidebar-dataviews/index.js +1 -3
  429. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  430. package/build-module/components/sidebar-navigation-item/index.js +1 -2
  431. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  432. package/build-module/components/sidebar-navigation-screen/index.js +3 -4
  433. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  434. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +2 -3
  435. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  436. package/build-module/components/sidebar-navigation-screen-details-panel/index.js +1 -2
  437. package/build-module/components/sidebar-navigation-screen-details-panel/index.js.map +1 -1
  438. package/build-module/components/sidebar-navigation-screen-global-styles/content.js +1 -2
  439. package/build-module/components/sidebar-navigation-screen-global-styles/content.js.map +1 -1
  440. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +31 -13
  441. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  442. package/build-module/components/sidebar-navigation-screen-main/index.js +1 -3
  443. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  444. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  445. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -3
  446. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  447. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +1 -2
  448. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  449. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +1 -2
  450. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  451. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +6 -6
  452. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  453. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +4 -4
  454. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  455. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +8 -13
  456. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  457. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +3 -5
  458. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  459. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +1 -3
  460. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  461. package/build-module/components/sidebar-navigation-screen-patterns/index.js +1 -3
  462. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  463. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +1 -2
  464. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  465. package/build-module/components/site-editor-routes/home-edit.js +18 -0
  466. package/build-module/components/site-editor-routes/home-edit.js.map +1 -0
  467. package/build-module/components/site-editor-routes/home-view.js +17 -0
  468. package/build-module/components/site-editor-routes/home-view.js.map +1 -0
  469. package/build-module/components/site-editor-routes/index.js +42 -0
  470. package/build-module/components/site-editor-routes/index.js.map +1 -0
  471. package/build-module/components/site-editor-routes/navigation-edit.js +21 -0
  472. package/build-module/components/site-editor-routes/navigation-edit.js.map +1 -0
  473. package/build-module/components/site-editor-routes/navigation-item-edit.js +23 -0
  474. package/build-module/components/site-editor-routes/navigation-item-edit.js.map +1 -0
  475. package/build-module/components/site-editor-routes/navigation-item-view.js +22 -0
  476. package/build-module/components/site-editor-routes/navigation-item-view.js.map +1 -0
  477. package/build-module/components/site-editor-routes/navigation-view.js +20 -0
  478. package/build-module/components/site-editor-routes/navigation-view.js.map +1 -0
  479. package/build-module/components/site-editor-routes/pages-edit.js +35 -0
  480. package/build-module/components/site-editor-routes/pages-edit.js.map +1 -0
  481. package/build-module/components/site-editor-routes/pages-list-view-quick-edit.js +56 -0
  482. package/build-module/components/site-editor-routes/pages-list-view-quick-edit.js.map +1 -0
  483. package/build-module/components/site-editor-routes/pages-list-view.js +39 -0
  484. package/build-module/components/site-editor-routes/pages-list-view.js.map +1 -0
  485. package/build-module/components/site-editor-routes/pages-view-quick-edit.js +53 -0
  486. package/build-module/components/site-editor-routes/pages-view-quick-edit.js.map +1 -0
  487. package/build-module/components/site-editor-routes/pages-view.js +34 -0
  488. package/build-module/components/site-editor-routes/pages-view.js.map +1 -0
  489. package/build-module/components/site-editor-routes/patterns-edit.js +23 -0
  490. package/build-module/components/site-editor-routes/patterns-edit.js.map +1 -0
  491. package/build-module/components/site-editor-routes/patterns-view.js +21 -0
  492. package/build-module/components/site-editor-routes/patterns-view.js.map +1 -0
  493. package/build-module/components/site-editor-routes/styles-edit.js +20 -0
  494. package/build-module/components/site-editor-routes/styles-edit.js.map +1 -0
  495. package/build-module/components/site-editor-routes/styles-view.js +19 -0
  496. package/build-module/components/site-editor-routes/styles-view.js.map +1 -0
  497. package/build-module/components/site-editor-routes/templates-edit.js +23 -0
  498. package/build-module/components/site-editor-routes/templates-edit.js.map +1 -0
  499. package/build-module/components/site-editor-routes/templates-list-view.js +26 -0
  500. package/build-module/components/site-editor-routes/templates-list-view.js.map +1 -0
  501. package/build-module/components/site-editor-routes/templates-view.js +21 -0
  502. package/build-module/components/site-editor-routes/templates-view.js.map +1 -0
  503. package/build-module/components/site-hub/index.js +4 -4
  504. package/build-module/components/site-hub/index.js.map +1 -1
  505. package/build-module/components/style-book/color-examples.js +38 -0
  506. package/build-module/components/style-book/color-examples.js.map +1 -0
  507. package/build-module/components/style-book/constants.js +74 -9
  508. package/build-module/components/style-book/constants.js.map +1 -1
  509. package/build-module/components/style-book/duotone-examples.js +48 -0
  510. package/build-module/components/style-book/duotone-examples.js.map +1 -0
  511. package/build-module/components/style-book/examples.js +47 -3
  512. package/build-module/components/style-book/examples.js.map +1 -1
  513. package/build-module/components/style-book/index.js +95 -40
  514. package/build-module/components/style-book/index.js.map +1 -1
  515. package/build-module/components/style-book/types.js.map +1 -1
  516. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +6 -1
  517. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  518. package/build-module/components/welcome-guide/editor.js +1 -3
  519. package/build-module/components/welcome-guide/editor.js.map +1 -1
  520. package/build-module/components/welcome-guide/image.js +1 -2
  521. package/build-module/components/welcome-guide/image.js.map +1 -1
  522. package/build-module/components/welcome-guide/index.js +1 -3
  523. package/build-module/components/welcome-guide/index.js.map +1 -1
  524. package/build-module/components/welcome-guide/page.js +1 -3
  525. package/build-module/components/welcome-guide/page.js.map +1 -1
  526. package/build-module/components/welcome-guide/styles.js +1 -3
  527. package/build-module/components/welcome-guide/styles.js.map +1 -1
  528. package/build-module/components/welcome-guide/template.js +1 -3
  529. package/build-module/components/welcome-guide/template.js.map +1 -1
  530. package/build-module/deprecated.js.map +1 -1
  531. package/build-module/hooks/commands/use-common-commands.js +46 -30
  532. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  533. package/build-module/hooks/commands/use-edit-mode-commands.js +15 -11
  534. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  535. package/build-module/hooks/commands/use-set-command-context.js +12 -15
  536. package/build-module/hooks/commands/use-set-command-context.js.map +1 -1
  537. package/build-module/hooks/push-changes-to-global-styles/index.js +1 -3
  538. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  539. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -1
  540. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  541. package/build-module/index.js +2 -4
  542. package/build-module/index.js.map +1 -1
  543. package/build-module/posts.js +1 -1
  544. package/build-module/posts.js.map +1 -1
  545. package/build-module/store/actions.js.map +1 -1
  546. package/build-module/store/private-actions.js +6 -59
  547. package/build-module/store/private-actions.js.map +1 -1
  548. package/build-module/store/private-selectors.js +3 -11
  549. package/build-module/store/private-selectors.js.map +1 -1
  550. package/build-module/store/reducer.js +9 -18
  551. package/build-module/store/reducer.js.map +1 -1
  552. package/build-module/store/selectors.js.map +1 -1
  553. package/build-module/utils/get-filtered-template-parts.js.map +1 -1
  554. package/build-style/posts-rtl.css +39 -45
  555. package/build-style/posts.css +39 -45
  556. package/build-style/style-rtl.css +160 -60
  557. package/build-style/style.css +160 -60
  558. package/package.json +44 -42
  559. package/src/components/add-new-post/index.js +1 -1
  560. package/src/components/add-new-template/index.js +1 -1
  561. package/src/components/add-new-template/utils.js +12 -9
  562. package/src/components/app/index.js +4 -2
  563. package/src/components/block-editor/use-editor-iframe-props.js +22 -18
  564. package/src/components/block-editor/use-site-editor-settings.js +12 -10
  565. package/src/components/editor/index.js +34 -14
  566. package/src/components/editor/use-adapt-editor-to-canvas.js +53 -0
  567. package/src/components/editor/use-editor-title.js +3 -3
  568. package/src/components/global-styles/font-families.js +51 -35
  569. package/src/components/global-styles/font-sizes/font-size.js +20 -21
  570. package/src/components/global-styles/font-sizes/font-sizes-count.js +1 -4
  571. package/src/components/global-styles/font-sizes/font-sizes.js +7 -9
  572. package/src/components/global-styles/palette.js +21 -18
  573. package/src/components/global-styles/root-menu.js +3 -16
  574. package/src/components/global-styles/screen-block-list.js +1 -8
  575. package/src/components/global-styles/screen-css.js +1 -0
  576. package/src/components/global-styles/screen-revisions/index.js +2 -11
  577. package/src/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  578. package/src/components/global-styles/screen-root.js +3 -12
  579. package/src/components/global-styles/screen-style-variations.js +11 -3
  580. package/src/components/global-styles/shadows-edit-panel.js +33 -18
  581. package/src/components/global-styles/shadows-panel.js +0 -4
  582. package/src/components/global-styles/style-variations-container.js +2 -7
  583. package/src/components/global-styles/typography-elements.js +3 -11
  584. package/src/components/global-styles/ui.js +29 -12
  585. package/src/components/global-styles/variations/variation.js +3 -3
  586. package/src/components/global-styles/variations/variations-panel.js +0 -1
  587. package/src/components/global-styles-sidebar/default-sidebar.js +0 -1
  588. package/src/components/global-styles-sidebar/index.js +86 -75
  589. package/src/components/global-styles-sidebar/style.scss +6 -0
  590. package/src/components/layout/animation.js +0 -1
  591. package/src/components/layout/index.js +17 -51
  592. package/src/components/layout/router.js +18 -133
  593. package/src/components/layout/style.scss +2 -2
  594. package/src/components/page-patterns/delete-category-menu-item.js +4 -4
  595. package/src/components/page-patterns/index.js +3 -2
  596. package/src/components/page-patterns/use-pattern-settings.js +1 -1
  597. package/src/components/page-templates/index.js +0 -1
  598. package/src/components/pagination/index.js +1 -1
  599. package/src/components/post-edit/index.js +35 -4
  600. package/src/components/post-fields/index.js +7 -54
  601. package/src/components/post-fields/style.scss +3 -0
  602. package/src/components/post-list/index.js +1 -1
  603. package/src/components/post-list/style.scss +1 -1
  604. package/src/components/posts-app/index.js +2 -2
  605. package/src/components/posts-app/router.js +3 -3
  606. package/src/components/resizable-frame/index.js +19 -10
  607. package/src/components/revisions/index.js +4 -1
  608. package/src/components/save-keyboard-shortcut/index.js +69 -0
  609. package/src/components/save-panel/index.js +30 -32
  610. package/src/components/sidebar-button/index.js +1 -1
  611. package/src/components/sidebar-button/style.scss +2 -2
  612. package/src/components/sidebar-dataviews/default-views.js +2 -5
  613. package/src/components/sidebar-navigation-screen/index.js +2 -1
  614. package/src/components/sidebar-navigation-screen/style.scss +5 -1
  615. package/src/components/sidebar-navigation-screen-global-styles/index.js +47 -29
  616. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -2
  617. package/src/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +4 -4
  618. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +11 -13
  619. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +1 -1
  620. package/src/components/site-editor-routes/README.md +20 -0
  621. package/src/components/site-editor-routes/home-edit.js +17 -0
  622. package/src/components/site-editor-routes/home-view.js +16 -0
  623. package/src/components/site-editor-routes/index.js +60 -0
  624. package/src/components/site-editor-routes/navigation-edit.js +22 -0
  625. package/src/components/site-editor-routes/navigation-item-edit.js +26 -0
  626. package/src/components/site-editor-routes/navigation-item-view.js +25 -0
  627. package/src/components/site-editor-routes/navigation-view.js +21 -0
  628. package/src/components/site-editor-routes/pages-edit.js +35 -0
  629. package/src/components/site-editor-routes/pages-list-view-quick-edit.js +56 -0
  630. package/src/components/site-editor-routes/pages-list-view.js +44 -0
  631. package/src/components/site-editor-routes/pages-view-quick-edit.js +53 -0
  632. package/src/components/site-editor-routes/pages-view.js +39 -0
  633. package/src/components/site-editor-routes/patterns-edit.js +24 -0
  634. package/src/components/site-editor-routes/patterns-view.js +22 -0
  635. package/src/components/site-editor-routes/styles-edit.js +17 -0
  636. package/src/components/site-editor-routes/styles-view.js +16 -0
  637. package/src/components/site-editor-routes/templates-edit.js +22 -0
  638. package/src/components/site-editor-routes/templates-list-view.js +28 -0
  639. package/src/components/site-editor-routes/templates-view.js +22 -0
  640. package/src/components/site-hub/index.js +2 -2
  641. package/src/components/site-hub/style.scss +4 -0
  642. package/src/components/style-book/color-examples.tsx +44 -0
  643. package/src/components/style-book/constants.ts +83 -10
  644. package/src/components/style-book/duotone-examples.tsx +53 -0
  645. package/src/components/style-book/examples.tsx +113 -0
  646. package/src/components/style-book/index.js +149 -52
  647. package/src/components/style-book/style.scss +12 -14
  648. package/src/components/style-book/test/categories.js +0 -5
  649. package/src/components/style-book/types.ts +34 -1
  650. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +11 -1
  651. package/src/hooks/commands/use-common-commands.js +60 -40
  652. package/src/hooks/commands/use-edit-mode-commands.js +14 -18
  653. package/src/hooks/commands/use-set-command-context.js +7 -9
  654. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -1
  655. package/src/index.js +1 -5
  656. package/src/store/private-actions.js +7 -82
  657. package/src/store/private-selectors.js +4 -11
  658. package/src/store/reducer.js +10 -18
  659. package/src/style.scss +3 -0
  660. package/build/components/keyboard-shortcuts/global.js +0 -53
  661. package/build/components/keyboard-shortcuts/global.js.map +0 -1
  662. package/build/components/keyboard-shortcuts/register.js +0 -34
  663. package/build/components/keyboard-shortcuts/register.js.map +0 -1
  664. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +0 -69
  665. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +0 -1
  666. package/build-module/components/keyboard-shortcuts/global.js +0 -46
  667. package/build-module/components/keyboard-shortcuts/global.js.map +0 -1
  668. package/build-module/components/keyboard-shortcuts/register.js +0 -27
  669. package/build-module/components/keyboard-shortcuts/register.js.map +0 -1
  670. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +0 -62
  671. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +0 -1
  672. package/src/components/keyboard-shortcuts/global.js +0 -47
  673. package/src/components/keyboard-shortcuts/register.js +0 -27
  674. package/src/components/style-book/examples.ts +0 -63
  675. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +0 -73
@@ -8,6 +8,7 @@ exports.default = void 0;
8
8
  var _i18n = require("@wordpress/i18n");
9
9
  var _components = require("@wordpress/components");
10
10
  var _blockEditor = require("@wordpress/block-editor");
11
+ var _icons = require("@wordpress/icons");
11
12
  var _element = require("@wordpress/element");
12
13
  var _context = _interopRequireWildcard(require("./font-library-modal/context"));
13
14
  var _fontLibraryModal = _interopRequireDefault(require("./font-library-modal"));
@@ -29,6 +30,19 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
29
30
  const {
30
31
  useGlobalSetting
31
32
  } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
33
+
34
+ /**
35
+ * Maps the fonts with the source, if available.
36
+ *
37
+ * @param {Array} fonts The fonts to map.
38
+ * @param {string} source The source of the fonts.
39
+ * @return {Array} The mapped fonts.
40
+ */
41
+ function mapFontsWithSource(fonts, source) {
42
+ return fonts ? fonts.map(f => (0, _utils.setUIValuesNeeded)(f, {
43
+ source
44
+ })) : [];
45
+ }
32
46
  function FontFamilies() {
33
47
  const {
34
48
  baseCustomFonts,
@@ -37,48 +51,50 @@ function FontFamilies() {
37
51
  } = (0, _element.useContext)(_context.FontLibraryContext);
38
52
  const [fontFamilies] = useGlobalSetting('typography.fontFamilies');
39
53
  const [baseFontFamilies] = useGlobalSetting('typography.fontFamilies', undefined, 'base');
40
- const themeFonts = fontFamilies?.theme ? fontFamilies.theme.map(f => (0, _utils.setUIValuesNeeded)(f, {
41
- source: 'theme'
42
- })).sort((a, b) => a.name.localeCompare(b.name)) : [];
43
- const customFonts = fontFamilies?.custom ? fontFamilies.custom.map(f => (0, _utils.setUIValuesNeeded)(f, {
44
- source: 'custom'
45
- })).sort((a, b) => a.name.localeCompare(b.name)) : [];
46
- const hasFonts = 0 < customFonts.length || 0 < themeFonts.length;
54
+ const themeFonts = mapFontsWithSource(fontFamilies?.theme, 'theme');
55
+ const customFonts = mapFontsWithSource(fontFamilies?.custom, 'custom');
56
+ const activeFonts = [...themeFonts, ...customFonts].sort((a, b) => a.name.localeCompare(b.name));
57
+ const hasFonts = 0 < activeFonts.length;
47
58
  const hasInstalledFonts = hasFonts || baseFontFamilies?.theme?.length > 0 || baseCustomFonts?.length > 0;
48
59
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
49
60
  children: [!!modalTabOpen && /*#__PURE__*/(0, _jsxRuntime.jsx)(_fontLibraryModal.default, {
50
61
  onRequestClose: () => setModalTabOpen(null),
51
62
  defaultTabId: modalTabOpen
52
63
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
53
- spacing: 4,
54
- children: [[...themeFonts, ...customFonts].length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
64
+ spacing: 2,
65
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
66
+ justify: "space-between",
55
67
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_subtitle.default, {
56
68
  level: 3,
57
69
  children: (0, _i18n.__)('Fonts')
58
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalItemGroup, {
70
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
71
+ onClick: () => setModalTabOpen('installed-fonts'),
72
+ label: (0, _i18n.__)('Manage fonts'),
73
+ icon: _icons.settings,
74
+ size: "small"
75
+ })]
76
+ }), activeFonts.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
77
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalItemGroup, {
59
78
  size: "large",
60
79
  isBordered: true,
61
80
  isSeparated: true,
62
- children: themeFonts.map(font => /*#__PURE__*/(0, _jsxRuntime.jsx)(_fontFamilyItem.default, {
81
+ children: activeFonts.map(font => /*#__PURE__*/(0, _jsxRuntime.jsx)(_fontFamilyItem.default, {
63
82
  font: font
64
83
  }, font.slug))
65
- })]
66
- }), !hasFonts && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
67
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_subtitle.default, {
68
- level: 3,
69
- children: (0, _i18n.__)('Fonts')
70
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
84
+ })
85
+ }), !hasFonts && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
86
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
71
87
  as: "p",
72
88
  children: hasInstalledFonts ? (0, _i18n.__)('No fonts activated.') : (0, _i18n.__)('No fonts installed.')
89
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
90
+ className: "edit-site-global-styles-font-families__manage-fonts",
91
+ variant: "secondary",
92
+ __next40pxDefaultSize: true,
93
+ onClick: () => {
94
+ setModalTabOpen(hasInstalledFonts ? 'installed-fonts' : 'upload-fonts');
95
+ },
96
+ children: hasInstalledFonts ? (0, _i18n.__)('Manage fonts') : (0, _i18n.__)('Add fonts')
73
97
  })]
74
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
75
- className: "edit-site-global-styles-font-families__manage-fonts",
76
- variant: "secondary",
77
- __next40pxDefaultSize: true,
78
- onClick: () => {
79
- setModalTabOpen(hasInstalledFonts ? 'installed-fonts' : 'upload-fonts');
80
- },
81
- children: hasInstalledFonts ? (0, _i18n.__)('Manage fonts') : (0, _i18n.__)('Add fonts')
82
98
  })]
83
99
  })]
84
100
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_blockEditor","_element","_context","_interopRequireWildcard","_fontLibraryModal","_interopRequireDefault","_fontFamilyItem","_subtitle","_utils","_lockUnlock","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useGlobalSetting","unlock","blockEditorPrivateApis","FontFamilies","baseCustomFonts","modalTabOpen","setModalTabOpen","useContext","FontLibraryContext","fontFamilies","baseFontFamilies","undefined","themeFonts","theme","map","f","setUIValuesNeeded","source","sort","b","name","localeCompare","customFonts","custom","hasFonts","length","hasInstalledFonts","jsxs","Fragment","children","jsx","onRequestClose","defaultTabId","__experimentalVStack","spacing","level","__","__experimentalItemGroup","size","isBordered","isSeparated","font","slug","__experimentalText","as","Button","className","variant","__next40pxDefaultSize","onClick","_default","props","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-families.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalText as Text,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalVStack as VStack,\n\tButton,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport FontLibraryProvider, {\n\tFontLibraryContext,\n} from './font-library-modal/context';\nimport FontLibraryModal from './font-library-modal';\nimport FontFamilyItem from './font-family-item';\nimport Subtitle from './subtitle';\nimport { setUIValuesNeeded } from './font-library-modal/utils';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction FontFamilies() {\n\tconst { baseCustomFonts, modalTabOpen, setModalTabOpen } =\n\t\tuseContext( FontLibraryContext );\n\tconst [ fontFamilies ] = useGlobalSetting( 'typography.fontFamilies' );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\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 customFonts = fontFamilies?.custom\n\t\t? fontFamilies.custom\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\tconst hasFonts = 0 < customFonts.length || 0 < themeFonts.length;\n\n\tconst hasInstalledFonts =\n\t\thasFonts ||\n\t\tbaseFontFamilies?.theme?.length > 0 ||\n\t\tbaseCustomFonts?.length > 0;\n\n\treturn (\n\t\t<>\n\t\t\t{ !! modalTabOpen && (\n\t\t\t\t<FontLibraryModal\n\t\t\t\t\tonRequestClose={ () => setModalTabOpen( null ) }\n\t\t\t\t\tdefaultTabId={ modalTabOpen }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t{ [ ...themeFonts, ...customFonts ].length > 0 && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Fonts' ) }</Subtitle>\n\t\t\t\t\t\t<ItemGroup size=\"large\" isBordered isSeparated>\n\t\t\t\t\t\t\t{ themeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t<FontFamilyItem\n\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t<VStack>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Fonts' ) }</Subtitle>\n\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t\t\t? __( 'No fonts activated.' )\n\t\t\t\t\t\t\t\t: __( 'No fonts installed.' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</VStack>\n\t\t\t\t) }\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"edit-site-global-styles-font-families__manage-fonts\"\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetModalTabOpen(\n\t\t\t\t\t\t\thasInstalledFonts\n\t\t\t\t\t\t\t\t? 'installed-fonts'\n\t\t\t\t\t\t\t\t: 'upload-fonts'\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t? __( 'Manage fonts' )\n\t\t\t\t\t\t: __( 'Add fonts' ) }\n\t\t\t\t</Button>\n\t\t\t</VStack>\n\t\t</>\n\t);\n}\n\nexport default ( { ...props } ) => (\n\t<FontLibraryProvider>\n\t\t<FontFamilies { ...props } />\n\t</FontLibraryProvider>\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_blockEditor","_icons","_element","_context","_interopRequireWildcard","_fontLibraryModal","_interopRequireDefault","_fontFamilyItem","_subtitle","_utils","_lockUnlock","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useGlobalSetting","unlock","blockEditorPrivateApis","mapFontsWithSource","fonts","source","map","f","setUIValuesNeeded","FontFamilies","baseCustomFonts","modalTabOpen","setModalTabOpen","useContext","FontLibraryContext","fontFamilies","baseFontFamilies","undefined","themeFonts","theme","customFonts","custom","activeFonts","sort","b","name","localeCompare","hasFonts","length","hasInstalledFonts","jsxs","Fragment","children","jsx","onRequestClose","defaultTabId","__experimentalVStack","spacing","__experimentalHStack","justify","level","__","Button","onClick","label","icon","settings","size","__experimentalItemGroup","isBordered","isSeparated","font","slug","__experimentalText","as","className","variant","__next40pxDefaultSize","_default","props","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-families.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalText as Text,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n\tButton,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { settings } from '@wordpress/icons';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport FontLibraryProvider, {\n\tFontLibraryContext,\n} from './font-library-modal/context';\nimport FontLibraryModal from './font-library-modal';\nimport FontFamilyItem from './font-family-item';\nimport Subtitle from './subtitle';\nimport { setUIValuesNeeded } from './font-library-modal/utils';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\n/**\n * Maps the fonts with the source, if available.\n *\n * @param {Array} fonts The fonts to map.\n * @param {string} source The source of the fonts.\n * @return {Array} The mapped fonts.\n */\nfunction mapFontsWithSource( fonts, source ) {\n\treturn fonts\n\t\t? fonts.map( ( f ) => setUIValuesNeeded( f, { source } ) )\n\t\t: [];\n}\n\nfunction FontFamilies() {\n\tconst { baseCustomFonts, modalTabOpen, setModalTabOpen } =\n\t\tuseContext( FontLibraryContext );\n\tconst [ fontFamilies ] = useGlobalSetting( 'typography.fontFamilies' );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst themeFonts = mapFontsWithSource( fontFamilies?.theme, 'theme' );\n\tconst customFonts = mapFontsWithSource( fontFamilies?.custom, 'custom' );\n\tconst activeFonts = [ ...themeFonts, ...customFonts ].sort( ( a, b ) =>\n\t\ta.name.localeCompare( b.name )\n\t);\n\tconst hasFonts = 0 < activeFonts.length;\n\tconst hasInstalledFonts =\n\t\thasFonts ||\n\t\tbaseFontFamilies?.theme?.length > 0 ||\n\t\tbaseCustomFonts?.length > 0;\n\n\treturn (\n\t\t<>\n\t\t\t{ !! modalTabOpen && (\n\t\t\t\t<FontLibraryModal\n\t\t\t\t\tonRequestClose={ () => setModalTabOpen( null ) }\n\t\t\t\t\tdefaultTabId={ modalTabOpen }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Fonts' ) }</Subtitle>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tonClick={ () => setModalTabOpen( 'installed-fonts' ) }\n\t\t\t\t\t\tlabel={ __( 'Manage fonts' ) }\n\t\t\t\t\t\ticon={ settings }\n\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t\t{ activeFonts.length > 0 && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ItemGroup size=\"large\" isBordered isSeparated>\n\t\t\t\t\t\t\t{ activeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t<FontFamilyItem\n\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t\t\t? __( 'No fonts activated.' )\n\t\t\t\t\t\t\t\t: __( 'No fonts installed.' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-font-families__manage-fonts\"\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetModalTabOpen(\n\t\t\t\t\t\t\t\t\thasInstalledFonts\n\t\t\t\t\t\t\t\t\t\t? 'installed-fonts'\n\t\t\t\t\t\t\t\t\t\t: 'upload-fonts'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t\t\t? __( 'Manage fonts' )\n\t\t\t\t\t\t\t\t: __( 'Add fonts' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</VStack>\n\t\t</>\n\t);\n}\n\nexport default ( { ...props } ) => (\n\t<FontLibraryProvider>\n\t\t<FontFamilies { ...props } />\n\t</FontLibraryProvider>\n);\n"],"mappings":"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","ignoreList":[]}
@@ -40,7 +40,7 @@ function FontFamilyItem({
40
40
  children: font.name
41
41
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.FlexItem, {
42
42
  className: "edit-site-global-styles-screen-typography__font-variants-count",
43
- children: (0, _i18n.sprintf)( /* translators: %d: Number of font variants. */
43
+ children: (0, _i18n.sprintf)(/* translators: %d: Number of font variants. */
44
44
  (0, _i18n._n)('%d variant', '%d variants', variantsCount), variantsCount)
45
45
  })]
46
46
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_element","_context","_previewStyles","_jsxRuntime","FontFamilyItem","font","handleSetLibraryFontSelected","setModalTabOpen","useContext","FontLibraryContext","variantsCount","fontFace","length","handleClick","previewStyle","getFamilyPreviewStyle","jsx","__experimentalItem","onClick","children","jsxs","__experimentalHStack","justify","FlexItem","style","name","className","sprintf","_n","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-family-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _n, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalItem as Item,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './font-library-modal/context';\nimport { getFamilyPreviewStyle } from './font-library-modal/utils/preview-styles';\n\nfunction FontFamilyItem( { font } ) {\n\tconst { handleSetLibraryFontSelected, setModalTabOpen } =\n\t\tuseContext( FontLibraryContext );\n\n\tconst variantsCount = font?.fontFace?.length || 1;\n\n\tconst handleClick = () => {\n\t\thandleSetLibraryFontSelected( font );\n\t\tsetModalTabOpen( 'installed-fonts' );\n\t};\n\n\tconst previewStyle = getFamilyPreviewStyle( font );\n\n\treturn (\n\t\t<Item onClick={ handleClick }>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<FlexItem style={ previewStyle }>{ font.name }</FlexItem>\n\t\t\t\t<FlexItem className=\"edit-site-global-styles-screen-typography__font-variants-count\">\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %d: Number of font variants. */\n\t\t\t\t\t\t_n( '%d variant', '%d variants', variantsCount ),\n\t\t\t\t\t\tvariantsCount\n\t\t\t\t\t) }\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</Item>\n\t);\n}\n\nexport default FontFamilyItem;\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAKA,IAAAE,QAAA,GAAAF,OAAA;AAKA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAAkF,IAAAK,WAAA,GAAAL,OAAA;AAflF;AACA;AACA;;AASA;AACA;AACA;;AAIA,SAASM,cAAcA,CAAE;EAAEC;AAAK,CAAC,EAAG;EACnC,MAAM;IAAEC,4BAA4B;IAAEC;EAAgB,CAAC,GACtD,IAAAC,mBAAU,EAAEC,2BAAmB,CAAC;EAEjC,MAAMC,aAAa,GAAGL,IAAI,EAAEM,QAAQ,EAAEC,MAAM,IAAI,CAAC;EAEjD,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACzBP,4BAA4B,CAAED,IAAK,CAAC;IACpCE,eAAe,CAAE,iBAAkB,CAAC;EACrC,CAAC;EAED,MAAMO,YAAY,GAAG,IAAAC,oCAAqB,EAAEV,IAAK,CAAC;EAElD,oBACC,IAAAF,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAkB,kBAAI;IAACC,OAAO,EAAGL,WAAa;IAAAM,QAAA,eAC5B,IAAAhB,WAAA,CAAAiB,IAAA,EAACrB,WAAA,CAAAsB,oBAAM;MAACC,OAAO,EAAC,eAAe;MAAAH,QAAA,gBAC9B,IAAAhB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAwB,QAAQ;QAACC,KAAK,EAAGV,YAAc;QAAAK,QAAA,EAAGd,IAAI,CAACoB;MAAI,CAAY,CAAC,eACzD,IAAAtB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAwB,QAAQ;QAACG,SAAS,EAAC,gEAAgE;QAAAP,QAAA,EACjF,IAAAQ,aAAO,GACR;QACA,IAAAC,QAAE,EAAE,YAAY,EAAE,aAAa,EAAElB,aAAc,CAAC,EAChDA,aACD;MAAC,CACQ,CAAC;IAAA,CACJ;EAAC,CACJ,CAAC;AAET;AAAC,IAAAmB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc3B,cAAc","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_element","_context","_previewStyles","_jsxRuntime","FontFamilyItem","font","handleSetLibraryFontSelected","setModalTabOpen","useContext","FontLibraryContext","variantsCount","fontFace","length","handleClick","previewStyle","getFamilyPreviewStyle","jsx","__experimentalItem","onClick","children","jsxs","__experimentalHStack","justify","FlexItem","style","name","className","sprintf","_n","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-family-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _n, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalItem as Item,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './font-library-modal/context';\nimport { getFamilyPreviewStyle } from './font-library-modal/utils/preview-styles';\n\nfunction FontFamilyItem( { font } ) {\n\tconst { handleSetLibraryFontSelected, setModalTabOpen } =\n\t\tuseContext( FontLibraryContext );\n\n\tconst variantsCount = font?.fontFace?.length || 1;\n\n\tconst handleClick = () => {\n\t\thandleSetLibraryFontSelected( font );\n\t\tsetModalTabOpen( 'installed-fonts' );\n\t};\n\n\tconst previewStyle = getFamilyPreviewStyle( font );\n\n\treturn (\n\t\t<Item onClick={ handleClick }>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<FlexItem style={ previewStyle }>{ font.name }</FlexItem>\n\t\t\t\t<FlexItem className=\"edit-site-global-styles-screen-typography__font-variants-count\">\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %d: Number of font variants. */\n\t\t\t\t\t\t_n( '%d variant', '%d variants', variantsCount ),\n\t\t\t\t\t\tvariantsCount\n\t\t\t\t\t) }\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</Item>\n\t);\n}\n\nexport default FontFamilyItem;\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAKA,IAAAE,QAAA,GAAAF,OAAA;AAKA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAAkF,IAAAK,WAAA,GAAAL,OAAA;AAflF;AACA;AACA;;AASA;AACA;AACA;;AAIA,SAASM,cAAcA,CAAE;EAAEC;AAAK,CAAC,EAAG;EACnC,MAAM;IAAEC,4BAA4B;IAAEC;EAAgB,CAAC,GACtD,IAAAC,mBAAU,EAAEC,2BAAmB,CAAC;EAEjC,MAAMC,aAAa,GAAGL,IAAI,EAAEM,QAAQ,EAAEC,MAAM,IAAI,CAAC;EAEjD,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACzBP,4BAA4B,CAAED,IAAK,CAAC;IACpCE,eAAe,CAAE,iBAAkB,CAAC;EACrC,CAAC;EAED,MAAMO,YAAY,GAAG,IAAAC,oCAAqB,EAAEV,IAAK,CAAC;EAElD,oBACC,IAAAF,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAkB,kBAAI;IAACC,OAAO,EAAGL,WAAa;IAAAM,QAAA,eAC5B,IAAAhB,WAAA,CAAAiB,IAAA,EAACrB,WAAA,CAAAsB,oBAAM;MAACC,OAAO,EAAC,eAAe;MAAAH,QAAA,gBAC9B,IAAAhB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAwB,QAAQ;QAACC,KAAK,EAAGV,YAAc;QAAAK,QAAA,EAAGd,IAAI,CAACoB;MAAI,CAAY,CAAC,eACzD,IAAAtB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAwB,QAAQ;QAACG,SAAS,EAAC,gEAAgE;QAAAP,QAAA,EACjF,IAAAQ,aAAO,EACR;QACA,IAAAC,QAAE,EAAE,YAAY,EAAE,aAAa,EAAElB,aAAc,CAAC,EAChDA,aACD;MAAC,CACQ,CAAC;IAAA,CACJ;EAAC,CACJ,CAAC;AAET;AAAC,IAAAmB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc3B,cAAc","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_utils","_fontDemo","_interopRequireDefault","_lockUnlock","_jsxRuntime","kebabCase","unlock","componentsPrivateApis","CollectionFontVariant","face","font","handleToggleVariant","selected","handleToggleActivation","fontFace","displayName","name","getFontFaceVariantName","checkboxId","slug","jsx","className","children","jsxs","Flex","justify","align","gap","CheckboxControl","checked","onChange","__nextHasNoMarginBottom","id","htmlFor","default","text","onClick","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/collection-font-variant.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tCheckboxControl,\n\tFlex,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { getFontFaceVariantName } from './utils';\nimport FontDemo from './font-demo';\nimport { unlock } from '../../../lock-unlock';\n\nconst { kebabCase } = unlock( componentsPrivateApis );\n\nfunction CollectionFontVariant( {\n\tface,\n\tfont,\n\thandleToggleVariant,\n\tselected,\n} ) {\n\tconst handleToggleActivation = () => {\n\t\tif ( font?.fontFace ) {\n\t\t\thandleToggleVariant( font, face );\n\t\t\treturn;\n\t\t}\n\t\thandleToggleVariant( font );\n\t};\n\n\tconst displayName = font.name + ' ' + getFontFaceVariantName( face );\n\tconst checkboxId = kebabCase(\n\t\t`${ font.slug }-${ getFontFaceVariantName( face ) }`\n\t);\n\n\treturn (\n\t\t<div className=\"font-library-modal__font-card\">\n\t\t\t<Flex justify=\"flex-start\" align=\"center\" gap=\"1rem\">\n\t\t\t\t<CheckboxControl\n\t\t\t\t\tchecked={ selected }\n\t\t\t\t\tonChange={ handleToggleActivation }\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tid={ checkboxId }\n\t\t\t\t/>\n\t\t\t\t<label htmlFor={ checkboxId }>\n\t\t\t\t\t<FontDemo\n\t\t\t\t\t\tfont={ face }\n\t\t\t\t\t\ttext={ displayName }\n\t\t\t\t\t\tonClick={ handleToggleActivation }\n\t\t\t\t\t/>\n\t\t\t\t</label>\n\t\t\t</Flex>\n\t\t</div>\n\t);\n}\n\nexport default CollectionFontVariant;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AASA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAA8C,IAAAK,WAAA,GAAAL,OAAA;AAd9C;AACA;AACA;;AAOA;AACA;AACA;;AAKA,MAAM;EAAEM;AAAU,CAAC,GAAG,IAAAC,kBAAM,EAAEC,uBAAsB,CAAC;AAErD,SAASC,qBAAqBA,CAAE;EAC/BC,IAAI;EACJC,IAAI;EACJC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAMC,sBAAsB,GAAGA,CAAA,KAAM;IACpC,IAAKH,IAAI,EAAEI,QAAQ,EAAG;MACrBH,mBAAmB,CAAED,IAAI,EAAED,IAAK,CAAC;MACjC;IACD;IACAE,mBAAmB,CAAED,IAAK,CAAC;EAC5B,CAAC;EAED,MAAMK,WAAW,GAAGL,IAAI,CAACM,IAAI,GAAG,GAAG,GAAG,IAAAC,6BAAsB,EAAER,IAAK,CAAC;EACpE,MAAMS,UAAU,GAAGb,SAAS,CAC1B,GAAGK,IAAI,CAACS,IAAM,IAAI,IAAAF,6BAAsB,EAAER,IAAK,CAAG,EACpD,CAAC;EAED,oBACC,IAAAL,WAAA,CAAAgB,GAAA;IAAKC,SAAS,EAAC,+BAA+B;IAAAC,QAAA,eAC7C,IAAAlB,WAAA,CAAAmB,IAAA,EAACzB,WAAA,CAAA0B,IAAI;MAACC,OAAO,EAAC,YAAY;MAACC,KAAK,EAAC,QAAQ;MAACC,GAAG,EAAC,MAAM;MAAAL,QAAA,gBACnD,IAAAlB,WAAA,CAAAgB,GAAA,EAACtB,WAAA,CAAA8B,eAAe;QACfC,OAAO,EAAGjB,QAAU;QACpBkB,QAAQ,EAAGjB,sBAAwB;QACnCkB,uBAAuB;QACvBC,EAAE,EAAGd;MAAY,CACjB,CAAC,eACF,IAAAd,WAAA,CAAAgB,GAAA;QAAOa,OAAO,EAAGf,UAAY;QAAAI,QAAA,eAC5B,IAAAlB,WAAA,CAAAgB,GAAA,EAACnB,SAAA,CAAAiC,OAAQ;UACRxB,IAAI,EAAGD,IAAM;UACb0B,IAAI,EAAGpB,WAAa;UACpBqB,OAAO,EAAGvB;QAAwB,CAClC;MAAC,CACI,CAAC;IAAA,CACH;EAAC,CACH,CAAC;AAER;AAAC,IAAAwB,QAAA,GAAAC,OAAA,CAAAJ,OAAA,GAEc1B,qBAAqB","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_utils","_fontDemo","_interopRequireDefault","_lockUnlock","_jsxRuntime","kebabCase","unlock","componentsPrivateApis","CollectionFontVariant","face","font","handleToggleVariant","selected","handleToggleActivation","fontFace","displayName","name","getFontFaceVariantName","checkboxId","slug","jsx","className","children","jsxs","Flex","justify","align","gap","CheckboxControl","checked","onChange","__nextHasNoMarginBottom","id","htmlFor","default","text","onClick","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/collection-font-variant.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tCheckboxControl,\n\tFlex,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { getFontFaceVariantName } from './utils';\nimport FontDemo from './font-demo';\nimport { unlock } from '../../../lock-unlock';\n\nconst { kebabCase } = unlock( componentsPrivateApis );\n\nfunction CollectionFontVariant( {\n\tface,\n\tfont,\n\thandleToggleVariant,\n\tselected,\n} ) {\n\tconst handleToggleActivation = () => {\n\t\tif ( font?.fontFace ) {\n\t\t\thandleToggleVariant( font, face );\n\t\t\treturn;\n\t\t}\n\t\thandleToggleVariant( font );\n\t};\n\n\tconst displayName = font.name + ' ' + getFontFaceVariantName( face );\n\tconst checkboxId = kebabCase(\n\t\t`${ font.slug }-${ getFontFaceVariantName( face ) }`\n\t);\n\n\treturn (\n\t\t<div className=\"font-library-modal__font-card\">\n\t\t\t<Flex justify=\"flex-start\" align=\"center\" gap=\"1rem\">\n\t\t\t\t<CheckboxControl\n\t\t\t\t\tchecked={ selected }\n\t\t\t\t\tonChange={ handleToggleActivation }\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tid={ checkboxId }\n\t\t\t\t/>\n\t\t\t\t<label htmlFor={ checkboxId }>\n\t\t\t\t\t<FontDemo\n\t\t\t\t\t\tfont={ face }\n\t\t\t\t\t\ttext={ displayName }\n\t\t\t\t\t\tonClick={ handleToggleActivation }\n\t\t\t\t\t/>\n\t\t\t\t</label>\n\t\t\t</Flex>\n\t\t</div>\n\t);\n}\n\nexport default CollectionFontVariant;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AASA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAA8C,IAAAK,WAAA,GAAAL,OAAA;AAd9C;AACA;AACA;;AAOA;AACA;AACA;;AAKA,MAAM;EAAEM;AAAU,CAAC,GAAG,IAAAC,kBAAM,EAAEC,uBAAsB,CAAC;AAErD,SAASC,qBAAqBA,CAAE;EAC/BC,IAAI;EACJC,IAAI;EACJC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAMC,sBAAsB,GAAGA,CAAA,KAAM;IACpC,IAAKH,IAAI,EAAEI,QAAQ,EAAG;MACrBH,mBAAmB,CAAED,IAAI,EAAED,IAAK,CAAC;MACjC;IACD;IACAE,mBAAmB,CAAED,IAAK,CAAC;EAC5B,CAAC;EAED,MAAMK,WAAW,GAAGL,IAAI,CAACM,IAAI,GAAG,GAAG,GAAG,IAAAC,6BAAsB,EAAER,IAAK,CAAC;EACpE,MAAMS,UAAU,GAAGb,SAAS,CAC3B,GAAIK,IAAI,CAACS,IAAI,IAAM,IAAAF,6BAAsB,EAAER,IAAK,CAAC,EAClD,CAAC;EAED,oBACC,IAAAL,WAAA,CAAAgB,GAAA;IAAKC,SAAS,EAAC,+BAA+B;IAAAC,QAAA,eAC7C,IAAAlB,WAAA,CAAAmB,IAAA,EAACzB,WAAA,CAAA0B,IAAI;MAACC,OAAO,EAAC,YAAY;MAACC,KAAK,EAAC,QAAQ;MAACC,GAAG,EAAC,MAAM;MAAAL,QAAA,gBACnD,IAAAlB,WAAA,CAAAgB,GAAA,EAACtB,WAAA,CAAA8B,eAAe;QACfC,OAAO,EAAGjB,QAAU;QACpBkB,QAAQ,EAAGjB,sBAAwB;QACnCkB,uBAAuB;QACvBC,EAAE,EAAGd;MAAY,CACjB,CAAC,eACF,IAAAd,WAAA,CAAAgB,GAAA;QAAOa,OAAO,EAAGf,UAAY;QAAAI,QAAA,eAC5B,IAAAlB,WAAA,CAAAgB,GAAA,EAACnB,SAAA,CAAAiC,OAAQ;UACRxB,IAAI,EAAGD,IAAM;UACb0B,IAAI,EAAGpB,WAAa;UACpBqB,OAAO,EAAGvB;QAAwB,CAClC;MAAC,CACI,CAAC;IAAA,CACH;EAAC,CACH,CAAC;AAER;AAAC,IAAAwB,QAAA,GAAAC,OAAA,CAAAJ,OAAA,GAEc1B,qBAAqB","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_blockEditor","_data","_coreData","_i18n","_resolvers","_lockUnlock","_utils","_toggleFont","_setNestedValue","_interopRequireDefault","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","FontLibraryContext","exports","createContext","FontLibraryProvider","children","saveEntityRecord","useDispatch","coreStore","globalStylesId","useSelect","select","__experimentalGetCurrentGlobalStylesId","globalStyles","useEntityRecord","isInstalling","setIsInstalling","useState","refreshKey","setRefreshKey","refreshLibrary","Date","now","records","libraryPosts","isResolving","isResolvingLibrary","useEntityRecords","_embed","libraryFonts","map","fontFamilyPost","id","font_family_settings","fontFace","_embedded","font_faces","face","font_face_settings","fontFamilies","setFontFamilies","saveFontFamilies","fonts","updatedGlobalStyles","record","setNestedValue","modalTabOpen","setModalTabOpen","libraryFontSelected","setLibraryFontSelected","themeFonts","theme","f","setUIValuesNeeded","source","sort","a","b","name","localeCompare","customFonts","custom","baseCustomFonts","useEffect","handleSetLibraryFontSelected","font","fontSelected","find","slug","loadedFontUrls","Set","getAvailableFontsOutline","availableFontFamilies","outline","reduce","acc","availableFontFaces","length","fontStyle","fontWeight","getActivatedFontsOutline","isFontActivated","style","weight","includes","getFontFacesActivated","installFonts","fontFamiliesToInstall","fontFamiliesToActivate","installationErrors","fontFamilyToInstall","isANewFontFamily","installedFontFamily","fetchGetFontFamilyBySlug","fetchInstallFontFamily","makeFontFamilyFormData","alreadyInstalledFontFaces","filter","fontFaceToInstall","checkFontFaceInstalled","successfullyInstalledFontFaces","unsuccessfullyInstalledFontFaces","response","batchInstallFontFaces","makeFontFacesFormData","successes","errors","push","fetchUninstallFontFamily","concat","unique","item","message","activeFonts","activateCustomFontFamilies","installError","Error","__","uninstallFontFamily","fontFamilyToUninstall","uninstalledFontFamily","deleted","deactivateFontFamily","error","console","_fontFamilies$font$so","initialCustomFonts","newCustomFonts","forEach","unloadFontFaceInBrowser","fontsToAdd","fontsToActivate","cleanFontsForSave","mergeFontFamilies","loadFontsInBrowser","_familyDbId","_faceDbId","loadFontFaceInBrowser","getDisplaySrcFromFontFace","src","toggleActivateFont","_fontFamilies$font$so2","initialFonts","newFonts","toggleFont","isFaceActivated","loadFontFaceAsset","has","add","collections","setFontCollections","getFontCollections","fetchFontCollections","getFontCollection","hasData","collection","font_families","fetchFontCollection","updatedCollections","e","jsx","Provider","value","_default","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/context.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext, useState, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseEntityRecord,\n\tuseEntityRecords,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tfetchGetFontFamilyBySlug,\n\tfetchInstallFontFamily,\n\tfetchUninstallFontFamily,\n\tfetchFontCollections,\n\tfetchFontCollection,\n} from './resolvers';\nimport { unlock } from '../../../lock-unlock';\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nimport {\n\tsetUIValuesNeeded,\n\tmergeFontFamilies,\n\tloadFontFaceInBrowser,\n\tunloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n\tmakeFontFacesFormData,\n\tmakeFontFamilyFormData,\n\tbatchInstallFontFaces,\n\tcheckFontFaceInstalled,\n} from './utils';\nimport { toggleFont } from './utils/toggleFont';\nimport setNestedValue from '../../../utils/set-nested-value';\n\nexport const FontLibraryContext = createContext( {} );\n\nfunction FontLibraryProvider( { children } ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { globalStylesId } = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn { globalStylesId: __experimentalGetCurrentGlobalStylesId() };\n\t} );\n\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\n\tconst [ isInstalling, setIsInstalling ] = useState( false );\n\tconst [ refreshKey, setRefreshKey ] = useState( 0 );\n\n\tconst refreshLibrary = () => {\n\t\tsetRefreshKey( Date.now() );\n\t};\n\n\tconst { records: libraryPosts = [], isResolving: isResolvingLibrary } =\n\t\tuseEntityRecords( 'postType', 'wp_font_family', {\n\t\t\trefreshKey,\n\t\t\t_embed: true,\n\t\t} );\n\n\tconst libraryFonts =\n\t\t( libraryPosts || [] ).map( ( fontFamilyPost ) => {\n\t\t\treturn {\n\t\t\t\tid: fontFamilyPost.id,\n\t\t\t\t...fontFamilyPost.font_family_settings,\n\t\t\t\tfontFace:\n\t\t\t\t\tfontFamilyPost?._embedded?.font_faces.map(\n\t\t\t\t\t\t( face ) => face.font_face_settings\n\t\t\t\t\t) || [],\n\t\t\t};\n\t\t} ) || [];\n\n\t// Global Styles (settings) font families\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\n\t/*\n\t * Save the font families to the database.\n\n\t * This function is called when the user activates or deactivates a font family.\n\t * It only updates the global styles post content in the database for new font families.\n\t * This avoids saving other styles/settings changed by the user using other parts of the editor.\n\t *\n\t * It uses the font families from the param to avoid using the font families from an outdated state.\n\t *\n\t * @param {Array} fonts - The font families that will be saved to the database.\n\t */\n\tconst saveFontFamilies = async ( fonts ) => {\n\t\t// Gets the global styles database post content.\n\t\tconst updatedGlobalStyles = globalStyles.record;\n\n\t\t// Updates the database version of global styles with the edited font families in the client.\n\t\tsetNestedValue(\n\t\t\tupdatedGlobalStyles,\n\t\t\t[ 'settings', 'typography', 'fontFamilies' ],\n\t\t\tfonts\n\t\t);\n\n\t\t// Saves a new version of the global styles in the database.\n\t\tawait saveEntityRecord( 'root', 'globalStyles', updatedGlobalStyles );\n\t};\n\n\t// Library Fonts\n\tconst [ modalTabOpen, setModalTabOpen ] = useState( false );\n\tconst [ libraryFontSelected, setLibraryFontSelected ] = useState( null );\n\n\t// Themes Fonts are the fonts defined in the global styles (database persisted theme.json data).\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\n\tconst customFonts = fontFamilies?.custom\n\t\t? fontFamilies.custom\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst baseCustomFonts = libraryFonts\n\t\t? libraryFonts\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tuseEffect( () => {\n\t\tif ( ! modalTabOpen ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t}\n\t}, [ modalTabOpen ] );\n\n\tconst handleSetLibraryFontSelected = ( font ) => {\n\t\t// If font is null, reset the selected font\n\t\tif ( ! font ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t\treturn;\n\t\t}\n\n\t\tconst fonts = font.source === 'theme' ? themeFonts : baseCustomFonts;\n\n\t\t// Tries to find the font in the installed fonts\n\t\tconst fontSelected = fonts.find( ( f ) => f.slug === font.slug );\n\t\t// If the font is not found (it is only defined in custom styles), use the font from custom styles\n\t\tsetLibraryFontSelected( {\n\t\t\t...( fontSelected || font ),\n\t\t\tsource: font.source,\n\t\t} );\n\t};\n\n\t// Demo\n\tconst [ loadedFontUrls ] = useState( new Set() );\n\n\tconst getAvailableFontsOutline = ( availableFontFamilies ) => {\n\t\tconst outline = availableFontFamilies.reduce( ( acc, font ) => {\n\t\t\tconst availableFontFaces =\n\t\t\t\tfont?.fontFace && font.fontFace?.length > 0\n\t\t\t\t\t? font?.fontFace.map(\n\t\t\t\t\t\t\t( face ) => `${ face.fontStyle + face.fontWeight }`\n\t\t\t\t\t )\n\t\t\t\t\t: [ 'normal400' ]; // If the font doesn't have fontFace, we assume it is a system font and we add the defaults: normal 400\n\n\t\t\tacc[ font.slug ] = availableFontFaces;\n\t\t\treturn acc;\n\t\t}, {} );\n\t\treturn outline;\n\t};\n\n\tconst getActivatedFontsOutline = ( source ) => {\n\t\tswitch ( source ) {\n\t\t\tcase 'theme':\n\t\t\t\treturn getAvailableFontsOutline( themeFonts );\n\t\t\tcase 'custom':\n\t\t\tdefault:\n\t\t\t\treturn getAvailableFontsOutline( customFonts );\n\t\t}\n\t};\n\n\tconst isFontActivated = ( slug, style, weight, source ) => {\n\t\tif ( ! style && ! weight ) {\n\t\t\treturn !! getActivatedFontsOutline( source )[ slug ];\n\t\t}\n\t\treturn !! getActivatedFontsOutline( source )[ slug ]?.includes(\n\t\t\tstyle + weight\n\t\t);\n\t};\n\n\tconst getFontFacesActivated = ( slug, source ) => {\n\t\treturn getActivatedFontsOutline( source )[ slug ] || [];\n\t};\n\n\tasync function installFonts( fontFamiliesToInstall ) {\n\t\tsetIsInstalling( true );\n\t\ttry {\n\t\t\tconst fontFamiliesToActivate = [];\n\t\t\tlet installationErrors = [];\n\n\t\t\tfor ( const fontFamilyToInstall of fontFamiliesToInstall ) {\n\t\t\t\tlet isANewFontFamily = false;\n\n\t\t\t\t// Get the font family if it already exists.\n\t\t\t\tlet installedFontFamily = await fetchGetFontFamilyBySlug(\n\t\t\t\t\tfontFamilyToInstall.slug\n\t\t\t\t);\n\n\t\t\t\t// Otherwise create it.\n\t\t\t\tif ( ! installedFontFamily ) {\n\t\t\t\t\tisANewFontFamily = true;\n\t\t\t\t\t// Prepare font family form data to install.\n\t\t\t\t\tinstalledFontFamily = await fetchInstallFontFamily(\n\t\t\t\t\t\tmakeFontFamilyFormData( fontFamilyToInstall )\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Collect font faces that have already been installed (to be activated later)\n\t\t\t\tconst alreadyInstalledFontFaces =\n\t\t\t\t\tinstalledFontFamily.fontFace && fontFamilyToInstall.fontFace\n\t\t\t\t\t\t? installedFontFamily.fontFace.filter(\n\t\t\t\t\t\t\t\t( fontFaceToInstall ) =>\n\t\t\t\t\t\t\t\t\tcheckFontFaceInstalled(\n\t\t\t\t\t\t\t\t\t\tfontFaceToInstall,\n\t\t\t\t\t\t\t\t\t\tfontFamilyToInstall.fontFace\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: [];\n\n\t\t\t\t// Filter out Font Faces that have already been installed (so that they are not re-installed)\n\t\t\t\tif (\n\t\t\t\t\tinstalledFontFamily.fontFace &&\n\t\t\t\t\tfontFamilyToInstall.fontFace\n\t\t\t\t) {\n\t\t\t\t\tfontFamilyToInstall.fontFace =\n\t\t\t\t\t\tfontFamilyToInstall.fontFace.filter(\n\t\t\t\t\t\t\t( fontFaceToInstall ) =>\n\t\t\t\t\t\t\t\t! checkFontFaceInstalled(\n\t\t\t\t\t\t\t\t\tfontFaceToInstall,\n\t\t\t\t\t\t\t\t\tinstalledFontFamily.fontFace\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Install the fonts (upload the font files to the server and create the post in the database).\n\t\t\t\tlet successfullyInstalledFontFaces = [];\n\t\t\t\tlet unsuccessfullyInstalledFontFaces = [];\n\t\t\t\tif ( fontFamilyToInstall?.fontFace?.length > 0 ) {\n\t\t\t\t\tconst response = await batchInstallFontFaces(\n\t\t\t\t\t\tinstalledFontFamily.id,\n\t\t\t\t\t\tmakeFontFacesFormData( fontFamilyToInstall )\n\t\t\t\t\t);\n\t\t\t\t\tsuccessfullyInstalledFontFaces = response?.successes;\n\t\t\t\t\tunsuccessfullyInstalledFontFaces = response?.errors;\n\t\t\t\t}\n\n\t\t\t\t// Use the successfully installed font faces\n\t\t\t\t// As well as any font faces that were already installed (those will be activated)\n\t\t\t\tif (\n\t\t\t\t\tsuccessfullyInstalledFontFaces?.length > 0 ||\n\t\t\t\t\talreadyInstalledFontFaces?.length > 0\n\t\t\t\t) {\n\t\t\t\t\t// Use font data from REST API not from client to ensure\n\t\t\t\t\t// correct font information is used.\n\t\t\t\t\tinstalledFontFamily.fontFace = [\n\t\t\t\t\t\t...successfullyInstalledFontFaces,\n\t\t\t\t\t];\n\n\t\t\t\t\tfontFamiliesToActivate.push( installedFontFamily );\n\t\t\t\t}\n\n\t\t\t\t// If it's a system font but was installed successfully, activate it.\n\t\t\t\tif (\n\t\t\t\t\tinstalledFontFamily &&\n\t\t\t\t\t! fontFamilyToInstall?.fontFace?.length\n\t\t\t\t) {\n\t\t\t\t\tfontFamiliesToActivate.push( installedFontFamily );\n\t\t\t\t}\n\n\t\t\t\t// If the font family is new and is not a system font, delete it to avoid having font families without font faces.\n\t\t\t\tif (\n\t\t\t\t\tisANewFontFamily &&\n\t\t\t\t\tfontFamilyToInstall?.fontFace?.length > 0 &&\n\t\t\t\t\tsuccessfullyInstalledFontFaces?.length === 0\n\t\t\t\t) {\n\t\t\t\t\tawait fetchUninstallFontFamily( installedFontFamily.id );\n\t\t\t\t}\n\n\t\t\t\tinstallationErrors = installationErrors.concat(\n\t\t\t\t\tunsuccessfullyInstalledFontFaces\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tinstallationErrors = installationErrors.reduce(\n\t\t\t\t( unique, item ) =>\n\t\t\t\t\tunique.includes( item.message )\n\t\t\t\t\t\t? unique\n\t\t\t\t\t\t: [ ...unique, item.message ],\n\t\t\t\t[]\n\t\t\t);\n\n\t\t\tif ( fontFamiliesToActivate.length > 0 ) {\n\t\t\t\t// Activate the font family (add the font family to the global styles).\n\t\t\t\tconst activeFonts = activateCustomFontFamilies(\n\t\t\t\t\tfontFamiliesToActivate\n\t\t\t\t);\n\t\t\t\t// Save the global styles to the database.\n\t\t\t\tawait saveFontFamilies( activeFonts );\n\n\t\t\t\trefreshLibrary();\n\t\t\t}\n\n\t\t\tif ( installationErrors.length > 0 ) {\n\t\t\t\tconst installError = new Error(\n\t\t\t\t\t__( 'There was an error installing fonts.' )\n\t\t\t\t);\n\n\t\t\t\tinstallError.installationErrors = installationErrors;\n\n\t\t\t\tthrow installError;\n\t\t\t}\n\t\t} finally {\n\t\t\tsetIsInstalling( false );\n\t\t}\n\t}\n\n\tasync function uninstallFontFamily( fontFamilyToUninstall ) {\n\t\ttry {\n\t\t\t// Uninstall the font family.\n\t\t\t// (Removes the font files from the server and the posts from the database).\n\t\t\tconst uninstalledFontFamily = await fetchUninstallFontFamily(\n\t\t\t\tfontFamilyToUninstall.id\n\t\t\t);\n\n\t\t\t// Deactivate the font family if delete request is successful\n\t\t\t// (Removes the font family from the global styles).\n\t\t\tif ( uninstalledFontFamily.deleted ) {\n\t\t\t\tconst activeFonts = deactivateFontFamily(\n\t\t\t\t\tfontFamilyToUninstall\n\t\t\t\t);\n\t\t\t\t// Save the global styles to the database.\n\t\t\t\tawait saveFontFamilies( activeFonts );\n\t\t\t}\n\n\t\t\t// Refresh the library (the library font families from database).\n\t\t\trefreshLibrary();\n\n\t\t\treturn uninstalledFontFamily;\n\t\t} catch ( error ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t`There was an error uninstalling the font family:`,\n\t\t\t\terror\n\t\t\t);\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\tconst deactivateFontFamily = ( font ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialCustomFonts = fontFamilies?.[ font.source ] ?? [];\n\t\tconst newCustomFonts = initialCustomFonts.filter(\n\t\t\t( f ) => f.slug !== font.slug\n\t\t);\n\t\tconst activeFonts = {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newCustomFonts,\n\t\t};\n\t\tsetFontFamilies( activeFonts );\n\n\t\tif ( font.fontFace ) {\n\t\t\tfont.fontFace.forEach( ( face ) => {\n\t\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t\t} );\n\t\t}\n\t\treturn activeFonts;\n\t};\n\n\tconst activateCustomFontFamilies = ( fontsToAdd ) => {\n\t\tconst fontsToActivate = cleanFontsForSave( fontsToAdd );\n\n\t\tconst activeFonts = {\n\t\t\t...fontFamilies,\n\t\t\t// Merge the existing custom fonts with the new fonts.\n\t\t\tcustom: mergeFontFamilies( fontFamilies?.custom, fontsToActivate ),\n\t\t};\n\n\t\t// Activate the fonts by set the new custom fonts array.\n\t\tsetFontFamilies( activeFonts );\n\n\t\tloadFontsInBrowser( fontsToActivate );\n\n\t\treturn activeFonts;\n\t};\n\n\t// Removes the id from the families and faces to avoid saving that to global styles post content.\n\tconst cleanFontsForSave = ( fonts ) => {\n\t\treturn fonts.map( ( { id: _familyDbId, fontFace, ...font } ) => ( {\n\t\t\t...font,\n\t\t\t...( fontFace && fontFace.length > 0\n\t\t\t\t? {\n\t\t\t\t\t\tfontFace: fontFace.map(\n\t\t\t\t\t\t\t( { id: _faceDbId, ...face } ) => face\n\t\t\t\t\t\t),\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t} ) );\n\t};\n\n\tconst loadFontsInBrowser = ( fonts ) => {\n\t\t// Add custom fonts to the browser.\n\t\tfonts.forEach( ( font ) => {\n\t\t\tif ( font.fontFace ) {\n\t\t\t\tfont.fontFace.forEach( ( face ) => {\n\t\t\t\t\t// Load font faces just in the iframe because they already are in the document.\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 toggleActivateFont = ( font, face ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialFonts = fontFamilies?.[ font.source ] ?? [];\n\t\t// Toggles the received font family or font face\n\t\tconst newFonts = toggleFont( font, face, initialFonts );\n\t\t// Updates the font families activated in global settings:\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newFonts,\n\t\t} );\n\n\t\tconst isFaceActivated = isFontActivated(\n\t\t\tfont.slug,\n\t\t\tface?.fontStyle,\n\t\t\tface?.fontWeight,\n\t\t\tfont.source\n\t\t);\n\n\t\tif ( isFaceActivated ) {\n\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t} else {\n\t\t\tloadFontFaceInBrowser(\n\t\t\t\tface,\n\t\t\t\tgetDisplaySrcFromFontFace( face?.src ),\n\t\t\t\t'all'\n\t\t\t);\n\t\t}\n\t};\n\n\tconst loadFontFaceAsset = async ( fontFace ) => {\n\t\t// If the font doesn't have a src, don't load it.\n\t\tif ( ! fontFace.src ) {\n\t\t\treturn;\n\t\t}\n\t\t// Get the src of the font.\n\t\tconst src = getDisplaySrcFromFontFace( fontFace.src );\n\t\t// If the font is already loaded, don't load it again.\n\t\tif ( ! src || loadedFontUrls.has( src ) ) {\n\t\t\treturn;\n\t\t}\n\t\t// Load the font in the browser.\n\t\tloadFontFaceInBrowser( fontFace, src, 'document' );\n\t\t// Add the font to the loaded fonts list.\n\t\tloadedFontUrls.add( src );\n\t};\n\n\t// Font Collections\n\tconst [ collections, setFontCollections ] = useState( [] );\n\tconst getFontCollections = async () => {\n\t\tconst response = await fetchFontCollections();\n\t\tsetFontCollections( response );\n\t};\n\tconst getFontCollection = async ( slug ) => {\n\t\ttry {\n\t\t\tconst hasData = !! collections.find(\n\t\t\t\t( collection ) => collection.slug === slug\n\t\t\t)?.font_families;\n\t\t\tif ( hasData ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst response = await fetchFontCollection( slug );\n\t\t\tconst updatedCollections = collections.map( ( collection ) =>\n\t\t\t\tcollection.slug === slug\n\t\t\t\t\t? { ...collection, ...response }\n\t\t\t\t\t: collection\n\t\t\t);\n\t\t\tsetFontCollections( updatedCollections );\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\tuseEffect( () => {\n\t\tgetFontCollections();\n\t}, [] );\n\n\treturn (\n\t\t<FontLibraryContext.Provider\n\t\t\tvalue={ {\n\t\t\t\tlibraryFontSelected,\n\t\t\t\thandleSetLibraryFontSelected,\n\t\t\t\tfontFamilies,\n\t\t\t\tbaseCustomFonts,\n\t\t\t\tisFontActivated,\n\t\t\t\tgetFontFacesActivated,\n\t\t\t\tloadFontFaceAsset,\n\t\t\t\tinstallFonts,\n\t\t\t\tuninstallFontFamily,\n\t\t\t\ttoggleActivateFont,\n\t\t\t\tgetAvailableFontsOutline,\n\t\t\t\tmodalTabOpen,\n\t\t\t\tsetModalTabOpen,\n\t\t\t\trefreshLibrary,\n\t\t\t\tsaveFontFamilies,\n\t\t\t\tisResolvingLibrary,\n\t\t\t\tisInstalling,\n\t\t\t\tcollections,\n\t\t\t\tgetFontCollection,\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</FontLibraryContext.Provider>\n\t);\n}\n\nexport default FontLibraryProvider;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_blockEditor","_data","_coreData","_i18n","_resolvers","_lockUnlock","_utils","_toggleFont","_setNestedValue","_interopRequireDefault","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","FontLibraryContext","exports","createContext","FontLibraryProvider","children","saveEntityRecord","useDispatch","coreStore","globalStylesId","useSelect","select","__experimentalGetCurrentGlobalStylesId","globalStyles","useEntityRecord","isInstalling","setIsInstalling","useState","refreshKey","setRefreshKey","refreshLibrary","Date","now","records","libraryPosts","isResolving","isResolvingLibrary","useEntityRecords","_embed","libraryFonts","map","fontFamilyPost","id","font_family_settings","fontFace","_embedded","font_faces","face","font_face_settings","fontFamilies","setFontFamilies","saveFontFamilies","fonts","updatedGlobalStyles","record","setNestedValue","modalTabOpen","setModalTabOpen","libraryFontSelected","setLibraryFontSelected","themeFonts","theme","f","setUIValuesNeeded","source","sort","a","b","name","localeCompare","customFonts","custom","baseCustomFonts","useEffect","handleSetLibraryFontSelected","font","fontSelected","find","slug","loadedFontUrls","Set","getAvailableFontsOutline","availableFontFamilies","outline","reduce","acc","availableFontFaces","length","fontStyle","fontWeight","getActivatedFontsOutline","isFontActivated","style","weight","includes","getFontFacesActivated","installFonts","fontFamiliesToInstall","fontFamiliesToActivate","installationErrors","fontFamilyToInstall","isANewFontFamily","installedFontFamily","fetchGetFontFamilyBySlug","fetchInstallFontFamily","makeFontFamilyFormData","alreadyInstalledFontFaces","filter","fontFaceToInstall","checkFontFaceInstalled","successfullyInstalledFontFaces","unsuccessfullyInstalledFontFaces","response","batchInstallFontFaces","makeFontFacesFormData","successes","errors","push","fetchUninstallFontFamily","concat","unique","item","message","activeFonts","activateCustomFontFamilies","installError","Error","__","uninstallFontFamily","fontFamilyToUninstall","uninstalledFontFamily","deleted","deactivateFontFamily","error","console","_fontFamilies$font$so","initialCustomFonts","newCustomFonts","forEach","unloadFontFaceInBrowser","fontsToAdd","fontsToActivate","cleanFontsForSave","mergeFontFamilies","loadFontsInBrowser","_familyDbId","_faceDbId","loadFontFaceInBrowser","getDisplaySrcFromFontFace","src","toggleActivateFont","_fontFamilies$font$so2","initialFonts","newFonts","toggleFont","isFaceActivated","loadFontFaceAsset","has","add","collections","setFontCollections","getFontCollections","fetchFontCollections","getFontCollection","hasData","collection","font_families","fetchFontCollection","updatedCollections","e","jsx","Provider","value","_default","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/context.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext, useState, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseEntityRecord,\n\tuseEntityRecords,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tfetchGetFontFamilyBySlug,\n\tfetchInstallFontFamily,\n\tfetchUninstallFontFamily,\n\tfetchFontCollections,\n\tfetchFontCollection,\n} from './resolvers';\nimport { unlock } from '../../../lock-unlock';\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nimport {\n\tsetUIValuesNeeded,\n\tmergeFontFamilies,\n\tloadFontFaceInBrowser,\n\tunloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n\tmakeFontFacesFormData,\n\tmakeFontFamilyFormData,\n\tbatchInstallFontFaces,\n\tcheckFontFaceInstalled,\n} from './utils';\nimport { toggleFont } from './utils/toggleFont';\nimport setNestedValue from '../../../utils/set-nested-value';\n\nexport const FontLibraryContext = createContext( {} );\n\nfunction FontLibraryProvider( { children } ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { globalStylesId } = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn { globalStylesId: __experimentalGetCurrentGlobalStylesId() };\n\t} );\n\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\n\tconst [ isInstalling, setIsInstalling ] = useState( false );\n\tconst [ refreshKey, setRefreshKey ] = useState( 0 );\n\n\tconst refreshLibrary = () => {\n\t\tsetRefreshKey( Date.now() );\n\t};\n\n\tconst { records: libraryPosts = [], isResolving: isResolvingLibrary } =\n\t\tuseEntityRecords( 'postType', 'wp_font_family', {\n\t\t\trefreshKey,\n\t\t\t_embed: true,\n\t\t} );\n\n\tconst libraryFonts =\n\t\t( libraryPosts || [] ).map( ( fontFamilyPost ) => {\n\t\t\treturn {\n\t\t\t\tid: fontFamilyPost.id,\n\t\t\t\t...fontFamilyPost.font_family_settings,\n\t\t\t\tfontFace:\n\t\t\t\t\tfontFamilyPost?._embedded?.font_faces.map(\n\t\t\t\t\t\t( face ) => face.font_face_settings\n\t\t\t\t\t) || [],\n\t\t\t};\n\t\t} ) || [];\n\n\t// Global Styles (settings) font families\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\n\t/*\n\t * Save the font families to the database.\n\n\t * This function is called when the user activates or deactivates a font family.\n\t * It only updates the global styles post content in the database for new font families.\n\t * This avoids saving other styles/settings changed by the user using other parts of the editor.\n\t *\n\t * It uses the font families from the param to avoid using the font families from an outdated state.\n\t *\n\t * @param {Array} fonts - The font families that will be saved to the database.\n\t */\n\tconst saveFontFamilies = async ( fonts ) => {\n\t\t// Gets the global styles database post content.\n\t\tconst updatedGlobalStyles = globalStyles.record;\n\n\t\t// Updates the database version of global styles with the edited font families in the client.\n\t\tsetNestedValue(\n\t\t\tupdatedGlobalStyles,\n\t\t\t[ 'settings', 'typography', 'fontFamilies' ],\n\t\t\tfonts\n\t\t);\n\n\t\t// Saves a new version of the global styles in the database.\n\t\tawait saveEntityRecord( 'root', 'globalStyles', updatedGlobalStyles );\n\t};\n\n\t// Library Fonts\n\tconst [ modalTabOpen, setModalTabOpen ] = useState( false );\n\tconst [ libraryFontSelected, setLibraryFontSelected ] = useState( null );\n\n\t// Themes Fonts are the fonts defined in the global styles (database persisted theme.json data).\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\n\tconst customFonts = fontFamilies?.custom\n\t\t? fontFamilies.custom\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst baseCustomFonts = libraryFonts\n\t\t? libraryFonts\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tuseEffect( () => {\n\t\tif ( ! modalTabOpen ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t}\n\t}, [ modalTabOpen ] );\n\n\tconst handleSetLibraryFontSelected = ( font ) => {\n\t\t// If font is null, reset the selected font\n\t\tif ( ! font ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t\treturn;\n\t\t}\n\n\t\tconst fonts = font.source === 'theme' ? themeFonts : baseCustomFonts;\n\n\t\t// Tries to find the font in the installed fonts\n\t\tconst fontSelected = fonts.find( ( f ) => f.slug === font.slug );\n\t\t// If the font is not found (it is only defined in custom styles), use the font from custom styles\n\t\tsetLibraryFontSelected( {\n\t\t\t...( fontSelected || font ),\n\t\t\tsource: font.source,\n\t\t} );\n\t};\n\n\t// Demo\n\tconst [ loadedFontUrls ] = useState( new Set() );\n\n\tconst getAvailableFontsOutline = ( availableFontFamilies ) => {\n\t\tconst outline = availableFontFamilies.reduce( ( acc, font ) => {\n\t\t\tconst availableFontFaces =\n\t\t\t\tfont?.fontFace && font.fontFace?.length > 0\n\t\t\t\t\t? font?.fontFace.map(\n\t\t\t\t\t\t\t( face ) => `${ face.fontStyle + face.fontWeight }`\n\t\t\t\t\t )\n\t\t\t\t\t: [ 'normal400' ]; // If the font doesn't have fontFace, we assume it is a system font and we add the defaults: normal 400\n\n\t\t\tacc[ font.slug ] = availableFontFaces;\n\t\t\treturn acc;\n\t\t}, {} );\n\t\treturn outline;\n\t};\n\n\tconst getActivatedFontsOutline = ( source ) => {\n\t\tswitch ( source ) {\n\t\t\tcase 'theme':\n\t\t\t\treturn getAvailableFontsOutline( themeFonts );\n\t\t\tcase 'custom':\n\t\t\tdefault:\n\t\t\t\treturn getAvailableFontsOutline( customFonts );\n\t\t}\n\t};\n\n\tconst isFontActivated = ( slug, style, weight, source ) => {\n\t\tif ( ! style && ! weight ) {\n\t\t\treturn !! getActivatedFontsOutline( source )[ slug ];\n\t\t}\n\t\treturn !! getActivatedFontsOutline( source )[ slug ]?.includes(\n\t\t\tstyle + weight\n\t\t);\n\t};\n\n\tconst getFontFacesActivated = ( slug, source ) => {\n\t\treturn getActivatedFontsOutline( source )[ slug ] || [];\n\t};\n\n\tasync function installFonts( fontFamiliesToInstall ) {\n\t\tsetIsInstalling( true );\n\t\ttry {\n\t\t\tconst fontFamiliesToActivate = [];\n\t\t\tlet installationErrors = [];\n\n\t\t\tfor ( const fontFamilyToInstall of fontFamiliesToInstall ) {\n\t\t\t\tlet isANewFontFamily = false;\n\n\t\t\t\t// Get the font family if it already exists.\n\t\t\t\tlet installedFontFamily = await fetchGetFontFamilyBySlug(\n\t\t\t\t\tfontFamilyToInstall.slug\n\t\t\t\t);\n\n\t\t\t\t// Otherwise create it.\n\t\t\t\tif ( ! installedFontFamily ) {\n\t\t\t\t\tisANewFontFamily = true;\n\t\t\t\t\t// Prepare font family form data to install.\n\t\t\t\t\tinstalledFontFamily = await fetchInstallFontFamily(\n\t\t\t\t\t\tmakeFontFamilyFormData( fontFamilyToInstall )\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Collect font faces that have already been installed (to be activated later)\n\t\t\t\tconst alreadyInstalledFontFaces =\n\t\t\t\t\tinstalledFontFamily.fontFace && fontFamilyToInstall.fontFace\n\t\t\t\t\t\t? installedFontFamily.fontFace.filter(\n\t\t\t\t\t\t\t\t( fontFaceToInstall ) =>\n\t\t\t\t\t\t\t\t\tcheckFontFaceInstalled(\n\t\t\t\t\t\t\t\t\t\tfontFaceToInstall,\n\t\t\t\t\t\t\t\t\t\tfontFamilyToInstall.fontFace\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: [];\n\n\t\t\t\t// Filter out Font Faces that have already been installed (so that they are not re-installed)\n\t\t\t\tif (\n\t\t\t\t\tinstalledFontFamily.fontFace &&\n\t\t\t\t\tfontFamilyToInstall.fontFace\n\t\t\t\t) {\n\t\t\t\t\tfontFamilyToInstall.fontFace =\n\t\t\t\t\t\tfontFamilyToInstall.fontFace.filter(\n\t\t\t\t\t\t\t( fontFaceToInstall ) =>\n\t\t\t\t\t\t\t\t! checkFontFaceInstalled(\n\t\t\t\t\t\t\t\t\tfontFaceToInstall,\n\t\t\t\t\t\t\t\t\tinstalledFontFamily.fontFace\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Install the fonts (upload the font files to the server and create the post in the database).\n\t\t\t\tlet successfullyInstalledFontFaces = [];\n\t\t\t\tlet unsuccessfullyInstalledFontFaces = [];\n\t\t\t\tif ( fontFamilyToInstall?.fontFace?.length > 0 ) {\n\t\t\t\t\tconst response = await batchInstallFontFaces(\n\t\t\t\t\t\tinstalledFontFamily.id,\n\t\t\t\t\t\tmakeFontFacesFormData( fontFamilyToInstall )\n\t\t\t\t\t);\n\t\t\t\t\tsuccessfullyInstalledFontFaces = response?.successes;\n\t\t\t\t\tunsuccessfullyInstalledFontFaces = response?.errors;\n\t\t\t\t}\n\n\t\t\t\t// Use the successfully installed font faces\n\t\t\t\t// As well as any font faces that were already installed (those will be activated)\n\t\t\t\tif (\n\t\t\t\t\tsuccessfullyInstalledFontFaces?.length > 0 ||\n\t\t\t\t\talreadyInstalledFontFaces?.length > 0\n\t\t\t\t) {\n\t\t\t\t\t// Use font data from REST API not from client to ensure\n\t\t\t\t\t// correct font information is used.\n\t\t\t\t\tinstalledFontFamily.fontFace = [\n\t\t\t\t\t\t...successfullyInstalledFontFaces,\n\t\t\t\t\t];\n\n\t\t\t\t\tfontFamiliesToActivate.push( installedFontFamily );\n\t\t\t\t}\n\n\t\t\t\t// If it's a system font but was installed successfully, activate it.\n\t\t\t\tif (\n\t\t\t\t\tinstalledFontFamily &&\n\t\t\t\t\t! fontFamilyToInstall?.fontFace?.length\n\t\t\t\t) {\n\t\t\t\t\tfontFamiliesToActivate.push( installedFontFamily );\n\t\t\t\t}\n\n\t\t\t\t// If the font family is new and is not a system font, delete it to avoid having font families without font faces.\n\t\t\t\tif (\n\t\t\t\t\tisANewFontFamily &&\n\t\t\t\t\tfontFamilyToInstall?.fontFace?.length > 0 &&\n\t\t\t\t\tsuccessfullyInstalledFontFaces?.length === 0\n\t\t\t\t) {\n\t\t\t\t\tawait fetchUninstallFontFamily( installedFontFamily.id );\n\t\t\t\t}\n\n\t\t\t\tinstallationErrors = installationErrors.concat(\n\t\t\t\t\tunsuccessfullyInstalledFontFaces\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tinstallationErrors = installationErrors.reduce(\n\t\t\t\t( unique, item ) =>\n\t\t\t\t\tunique.includes( item.message )\n\t\t\t\t\t\t? unique\n\t\t\t\t\t\t: [ ...unique, item.message ],\n\t\t\t\t[]\n\t\t\t);\n\n\t\t\tif ( fontFamiliesToActivate.length > 0 ) {\n\t\t\t\t// Activate the font family (add the font family to the global styles).\n\t\t\t\tconst activeFonts = activateCustomFontFamilies(\n\t\t\t\t\tfontFamiliesToActivate\n\t\t\t\t);\n\t\t\t\t// Save the global styles to the database.\n\t\t\t\tawait saveFontFamilies( activeFonts );\n\n\t\t\t\trefreshLibrary();\n\t\t\t}\n\n\t\t\tif ( installationErrors.length > 0 ) {\n\t\t\t\tconst installError = new Error(\n\t\t\t\t\t__( 'There was an error installing fonts.' )\n\t\t\t\t);\n\n\t\t\t\tinstallError.installationErrors = installationErrors;\n\n\t\t\t\tthrow installError;\n\t\t\t}\n\t\t} finally {\n\t\t\tsetIsInstalling( false );\n\t\t}\n\t}\n\n\tasync function uninstallFontFamily( fontFamilyToUninstall ) {\n\t\ttry {\n\t\t\t// Uninstall the font family.\n\t\t\t// (Removes the font files from the server and the posts from the database).\n\t\t\tconst uninstalledFontFamily = await fetchUninstallFontFamily(\n\t\t\t\tfontFamilyToUninstall.id\n\t\t\t);\n\n\t\t\t// Deactivate the font family if delete request is successful\n\t\t\t// (Removes the font family from the global styles).\n\t\t\tif ( uninstalledFontFamily.deleted ) {\n\t\t\t\tconst activeFonts = deactivateFontFamily(\n\t\t\t\t\tfontFamilyToUninstall\n\t\t\t\t);\n\t\t\t\t// Save the global styles to the database.\n\t\t\t\tawait saveFontFamilies( activeFonts );\n\t\t\t}\n\n\t\t\t// Refresh the library (the library font families from database).\n\t\t\trefreshLibrary();\n\n\t\t\treturn uninstalledFontFamily;\n\t\t} catch ( error ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t`There was an error uninstalling the font family:`,\n\t\t\t\terror\n\t\t\t);\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\tconst deactivateFontFamily = ( font ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialCustomFonts = fontFamilies?.[ font.source ] ?? [];\n\t\tconst newCustomFonts = initialCustomFonts.filter(\n\t\t\t( f ) => f.slug !== font.slug\n\t\t);\n\t\tconst activeFonts = {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newCustomFonts,\n\t\t};\n\t\tsetFontFamilies( activeFonts );\n\n\t\tif ( font.fontFace ) {\n\t\t\tfont.fontFace.forEach( ( face ) => {\n\t\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t\t} );\n\t\t}\n\t\treturn activeFonts;\n\t};\n\n\tconst activateCustomFontFamilies = ( fontsToAdd ) => {\n\t\tconst fontsToActivate = cleanFontsForSave( fontsToAdd );\n\n\t\tconst activeFonts = {\n\t\t\t...fontFamilies,\n\t\t\t// Merge the existing custom fonts with the new fonts.\n\t\t\tcustom: mergeFontFamilies( fontFamilies?.custom, fontsToActivate ),\n\t\t};\n\n\t\t// Activate the fonts by set the new custom fonts array.\n\t\tsetFontFamilies( activeFonts );\n\n\t\tloadFontsInBrowser( fontsToActivate );\n\n\t\treturn activeFonts;\n\t};\n\n\t// Removes the id from the families and faces to avoid saving that to global styles post content.\n\tconst cleanFontsForSave = ( fonts ) => {\n\t\treturn fonts.map( ( { id: _familyDbId, fontFace, ...font } ) => ( {\n\t\t\t...font,\n\t\t\t...( fontFace && fontFace.length > 0\n\t\t\t\t? {\n\t\t\t\t\t\tfontFace: fontFace.map(\n\t\t\t\t\t\t\t( { id: _faceDbId, ...face } ) => face\n\t\t\t\t\t\t),\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t} ) );\n\t};\n\n\tconst loadFontsInBrowser = ( fonts ) => {\n\t\t// Add custom fonts to the browser.\n\t\tfonts.forEach( ( font ) => {\n\t\t\tif ( font.fontFace ) {\n\t\t\t\tfont.fontFace.forEach( ( face ) => {\n\t\t\t\t\t// Load font faces just in the iframe because they already are in the document.\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 toggleActivateFont = ( font, face ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialFonts = fontFamilies?.[ font.source ] ?? [];\n\t\t// Toggles the received font family or font face\n\t\tconst newFonts = toggleFont( font, face, initialFonts );\n\t\t// Updates the font families activated in global settings:\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newFonts,\n\t\t} );\n\n\t\tconst isFaceActivated = isFontActivated(\n\t\t\tfont.slug,\n\t\t\tface?.fontStyle,\n\t\t\tface?.fontWeight,\n\t\t\tfont.source\n\t\t);\n\n\t\tif ( isFaceActivated ) {\n\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t} else {\n\t\t\tloadFontFaceInBrowser(\n\t\t\t\tface,\n\t\t\t\tgetDisplaySrcFromFontFace( face?.src ),\n\t\t\t\t'all'\n\t\t\t);\n\t\t}\n\t};\n\n\tconst loadFontFaceAsset = async ( fontFace ) => {\n\t\t// If the font doesn't have a src, don't load it.\n\t\tif ( ! fontFace.src ) {\n\t\t\treturn;\n\t\t}\n\t\t// Get the src of the font.\n\t\tconst src = getDisplaySrcFromFontFace( fontFace.src );\n\t\t// If the font is already loaded, don't load it again.\n\t\tif ( ! src || loadedFontUrls.has( src ) ) {\n\t\t\treturn;\n\t\t}\n\t\t// Load the font in the browser.\n\t\tloadFontFaceInBrowser( fontFace, src, 'document' );\n\t\t// Add the font to the loaded fonts list.\n\t\tloadedFontUrls.add( src );\n\t};\n\n\t// Font Collections\n\tconst [ collections, setFontCollections ] = useState( [] );\n\tconst getFontCollections = async () => {\n\t\tconst response = await fetchFontCollections();\n\t\tsetFontCollections( response );\n\t};\n\tconst getFontCollection = async ( slug ) => {\n\t\ttry {\n\t\t\tconst hasData = !! collections.find(\n\t\t\t\t( collection ) => collection.slug === slug\n\t\t\t)?.font_families;\n\t\t\tif ( hasData ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst response = await fetchFontCollection( slug );\n\t\t\tconst updatedCollections = collections.map( ( collection ) =>\n\t\t\t\tcollection.slug === slug\n\t\t\t\t\t? { ...collection, ...response }\n\t\t\t\t\t: collection\n\t\t\t);\n\t\t\tsetFontCollections( updatedCollections );\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\tuseEffect( () => {\n\t\tgetFontCollections();\n\t}, [] );\n\n\treturn (\n\t\t<FontLibraryContext.Provider\n\t\t\tvalue={ {\n\t\t\t\tlibraryFontSelected,\n\t\t\t\thandleSetLibraryFontSelected,\n\t\t\t\tfontFamilies,\n\t\t\t\tbaseCustomFonts,\n\t\t\t\tisFontActivated,\n\t\t\t\tgetFontFacesActivated,\n\t\t\t\tloadFontFaceAsset,\n\t\t\t\tinstallFonts,\n\t\t\t\tuninstallFontFamily,\n\t\t\t\ttoggleActivateFont,\n\t\t\t\tgetAvailableFontsOutline,\n\t\t\t\tmodalTabOpen,\n\t\t\t\tsetModalTabOpen,\n\t\t\t\trefreshLibrary,\n\t\t\t\tsaveFontFamilies,\n\t\t\t\tisResolvingLibrary,\n\t\t\t\tisInstalling,\n\t\t\t\tcollections,\n\t\t\t\tgetFontCollection,\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</FontLibraryContext.Provider>\n\t);\n}\n\nexport default FontLibraryProvider;\n"],"mappings":"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","ignoreList":[]}
@@ -49,7 +49,7 @@ function FontCard({
49
49
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.FlexItem, {
50
50
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
51
51
  className: "font-library-modal__font-card__count",
52
- children: variantsText || (0, _i18n.sprintf)( /* translators: %d: Number of font variants. */
52
+ children: variantsText || (0, _i18n.sprintf)(/* translators: %d: Number of font variants. */
53
53
  (0, _i18n._n)('%d variant', '%d variants', variantsCount), variantsCount)
54
54
  })
55
55
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.FlexItem, {
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_fontDemo","_interopRequireDefault","_icons","_jsxRuntime","FontCard","font","onClick","variantsText","navigatorPath","variantsCount","fontFace","length","style","cursor","navigator","useNavigator","jsx","Button","__next40pxDefaultSize","goTo","className","children","jsxs","Flex","justify","wrap","default","FlexItem","__experimentalText","sprintf","_n","Icon","icon","isRTL","chevronLeft","chevronRight","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/font-card.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _n, sprintf, isRTL } from '@wordpress/i18n';\nimport {\n\tuseNavigator,\n\t__experimentalText as Text,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tIcon,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport FontDemo from './font-demo';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\n\nfunction FontCard( { font, onClick, variantsText, navigatorPath } ) {\n\tconst variantsCount = font.fontFace?.length || 1;\n\n\tconst style = {\n\t\tcursor: !! onClick ? 'pointer' : 'default',\n\t};\n\n\tconst navigator = useNavigator();\n\n\treturn (\n\t\t<Button\n\t\t\t__next40pxDefaultSize\n\t\t\tonClick={ () => {\n\t\t\t\tonClick();\n\t\t\t\tif ( navigatorPath ) {\n\t\t\t\t\tnavigator.goTo( navigatorPath );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tstyle={ style }\n\t\t\tclassName=\"font-library-modal__font-card\"\n\t\t>\n\t\t\t<Flex justify=\"space-between\" wrap={ false }>\n\t\t\t\t<FontDemo font={ font } />\n\t\t\t\t<Flex justify=\"flex-end\">\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Text className=\"font-library-modal__font-card__count\">\n\t\t\t\t\t\t\t{ variantsText ||\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %d: Number of font variants. */\n\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t'%d variant',\n\t\t\t\t\t\t\t\t\t\t'%d variants',\n\t\t\t\t\t\t\t\t\t\tvariantsCount\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tvariantsCount\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Icon icon={ isRTL() ? chevronLeft : chevronRight } />\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n\nexport default FontCard;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAYA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAA6D,IAAAK,WAAA,GAAAL,OAAA;AAjB7D;AACA;AACA;;AAWA;AACA;AACA;;AAIA,SAASM,QAAQA,CAAE;EAAEC,IAAI;EAAEC,OAAO;EAAEC,YAAY;EAAEC;AAAc,CAAC,EAAG;EACnE,MAAMC,aAAa,GAAGJ,IAAI,CAACK,QAAQ,EAAEC,MAAM,IAAI,CAAC;EAEhD,MAAMC,KAAK,GAAG;IACbC,MAAM,EAAE,CAAC,CAAEP,OAAO,GAAG,SAAS,GAAG;EAClC,CAAC;EAED,MAAMQ,SAAS,GAAG,IAAAC,wBAAY,EAAC,CAAC;EAEhC,oBACC,IAAAZ,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAkB,MAAM;IACNC,qBAAqB;IACrBZ,OAAO,EAAGA,CAAA,KAAM;MACfA,OAAO,CAAC,CAAC;MACT,IAAKE,aAAa,EAAG;QACpBM,SAAS,CAACK,IAAI,CAAEX,aAAc,CAAC;MAChC;IACD,CAAG;IACHI,KAAK,EAAGA,KAAO;IACfQ,SAAS,EAAC,+BAA+B;IAAAC,QAAA,eAEzC,IAAAlB,WAAA,CAAAmB,IAAA,EAACvB,WAAA,CAAAwB,IAAI;MAACC,OAAO,EAAC,eAAe;MAACC,IAAI,EAAG,KAAO;MAAAJ,QAAA,gBAC3C,IAAAlB,WAAA,CAAAa,GAAA,EAAChB,SAAA,CAAA0B,OAAQ;QAACrB,IAAI,EAAGA;MAAM,CAAE,CAAC,eAC1B,IAAAF,WAAA,CAAAmB,IAAA,EAACvB,WAAA,CAAAwB,IAAI;QAACC,OAAO,EAAC,UAAU;QAAAH,QAAA,gBACvB,IAAAlB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAA4B,QAAQ;UAAAN,QAAA,eACR,IAAAlB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAA6B,kBAAI;YAACR,SAAS,EAAC,sCAAsC;YAAAC,QAAA,EACnDd,YAAY,IACb,IAAAsB,aAAO,GACN;YACA,IAAAC,QAAE,EACD,YAAY,EACZ,aAAa,EACbrB,aACD,CAAC,EACDA,aACD;UAAC,CACG;QAAC,CACE,CAAC,eACX,IAAAN,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAA4B,QAAQ;UAAAN,QAAA,eACR,IAAAlB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAgC,IAAI;YAACC,IAAI,EAAG,IAAAC,WAAK,EAAC,CAAC,GAAGC,kBAAW,GAAGC;UAAc,CAAE;QAAC,CAC7C,CAAC;MAAA,CACN,CAAC;IAAA,CACF;EAAC,CACA,CAAC;AAEX;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAX,OAAA,GAEctB,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_fontDemo","_interopRequireDefault","_icons","_jsxRuntime","FontCard","font","onClick","variantsText","navigatorPath","variantsCount","fontFace","length","style","cursor","navigator","useNavigator","jsx","Button","__next40pxDefaultSize","goTo","className","children","jsxs","Flex","justify","wrap","default","FlexItem","__experimentalText","sprintf","_n","Icon","icon","isRTL","chevronLeft","chevronRight","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/font-card.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _n, sprintf, isRTL } from '@wordpress/i18n';\nimport {\n\tuseNavigator,\n\t__experimentalText as Text,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tIcon,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport FontDemo from './font-demo';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\n\nfunction FontCard( { font, onClick, variantsText, navigatorPath } ) {\n\tconst variantsCount = font.fontFace?.length || 1;\n\n\tconst style = {\n\t\tcursor: !! onClick ? 'pointer' : 'default',\n\t};\n\n\tconst navigator = useNavigator();\n\n\treturn (\n\t\t<Button\n\t\t\t__next40pxDefaultSize\n\t\t\tonClick={ () => {\n\t\t\t\tonClick();\n\t\t\t\tif ( navigatorPath ) {\n\t\t\t\t\tnavigator.goTo( navigatorPath );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tstyle={ style }\n\t\t\tclassName=\"font-library-modal__font-card\"\n\t\t>\n\t\t\t<Flex justify=\"space-between\" wrap={ false }>\n\t\t\t\t<FontDemo font={ font } />\n\t\t\t\t<Flex justify=\"flex-end\">\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Text className=\"font-library-modal__font-card__count\">\n\t\t\t\t\t\t\t{ variantsText ||\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %d: Number of font variants. */\n\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t'%d variant',\n\t\t\t\t\t\t\t\t\t\t'%d variants',\n\t\t\t\t\t\t\t\t\t\tvariantsCount\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tvariantsCount\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Icon icon={ isRTL() ? chevronLeft : chevronRight } />\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n\nexport default FontCard;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAYA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAA6D,IAAAK,WAAA,GAAAL,OAAA;AAjB7D;AACA;AACA;;AAWA;AACA;AACA;;AAIA,SAASM,QAAQA,CAAE;EAAEC,IAAI;EAAEC,OAAO;EAAEC,YAAY;EAAEC;AAAc,CAAC,EAAG;EACnE,MAAMC,aAAa,GAAGJ,IAAI,CAACK,QAAQ,EAAEC,MAAM,IAAI,CAAC;EAEhD,MAAMC,KAAK,GAAG;IACbC,MAAM,EAAE,CAAC,CAAEP,OAAO,GAAG,SAAS,GAAG;EAClC,CAAC;EAED,MAAMQ,SAAS,GAAG,IAAAC,wBAAY,EAAC,CAAC;EAEhC,oBACC,IAAAZ,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAkB,MAAM;IACNC,qBAAqB;IACrBZ,OAAO,EAAGA,CAAA,KAAM;MACfA,OAAO,CAAC,CAAC;MACT,IAAKE,aAAa,EAAG;QACpBM,SAAS,CAACK,IAAI,CAAEX,aAAc,CAAC;MAChC;IACD,CAAG;IACHI,KAAK,EAAGA,KAAO;IACfQ,SAAS,EAAC,+BAA+B;IAAAC,QAAA,eAEzC,IAAAlB,WAAA,CAAAmB,IAAA,EAACvB,WAAA,CAAAwB,IAAI;MAACC,OAAO,EAAC,eAAe;MAACC,IAAI,EAAG,KAAO;MAAAJ,QAAA,gBAC3C,IAAAlB,WAAA,CAAAa,GAAA,EAAChB,SAAA,CAAA0B,OAAQ;QAACrB,IAAI,EAAGA;MAAM,CAAE,CAAC,eAC1B,IAAAF,WAAA,CAAAmB,IAAA,EAACvB,WAAA,CAAAwB,IAAI;QAACC,OAAO,EAAC,UAAU;QAAAH,QAAA,gBACvB,IAAAlB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAA4B,QAAQ;UAAAN,QAAA,eACR,IAAAlB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAA6B,kBAAI;YAACR,SAAS,EAAC,sCAAsC;YAAAC,QAAA,EACnDd,YAAY,IACb,IAAAsB,aAAO,EACN;YACA,IAAAC,QAAE,EACD,YAAY,EACZ,aAAa,EACbrB,aACD,CAAC,EACDA,aACD;UAAC,CACG;QAAC,CACE,CAAC,eACX,IAAAN,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAA4B,QAAQ;UAAAN,QAAA,eACR,IAAAlB,WAAA,CAAAa,GAAA,EAACjB,WAAA,CAAAgC,IAAI;YAACC,IAAI,EAAG,IAAAC,WAAK,EAAC,CAAC,GAAGC,kBAAW,GAAGC;UAAc,CAAE;QAAC,CAC7C,CAAC;MAAA,CACN,CAAC;IAAA,CACF;EAAC,CACA,CAAC;AAEX;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAX,OAAA,GAEctB,QAAQ","ignoreList":[]}