@wordpress/edit-site 5.18.1-next.5a1d1283.0 → 5.19.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 (425) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-pattern/index.js +62 -1
  3. package/build/components/add-new-pattern/index.js.map +1 -1
  4. package/build/components/add-new-template/index.js +3 -2
  5. package/build/components/add-new-template/index.js.map +1 -1
  6. package/build/components/add-new-template/new-template.js +6 -1
  7. package/build/components/add-new-template/new-template.js.map +1 -1
  8. package/build/components/add-new-template/utils.js +6 -1
  9. package/build/components/add-new-template/utils.js.map +1 -1
  10. package/build/components/app/index.js +2 -7
  11. package/build/components/app/index.js.map +1 -1
  12. package/build/components/block-editor/back-button.js +3 -2
  13. package/build/components/block-editor/back-button.js.map +1 -1
  14. package/build/components/block-editor/editor-canvas.js +20 -16
  15. package/build/components/block-editor/editor-canvas.js.map +1 -1
  16. package/build/components/block-editor/site-editor-canvas.js +1 -3
  17. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  18. package/build/components/block-editor/use-site-editor-settings.js +8 -4
  19. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  20. package/build/components/canvas-loader/index.js +18 -1
  21. package/build/components/canvas-loader/index.js.map +1 -1
  22. package/build/components/editor/index.js +3 -8
  23. package/build/components/editor/index.js.map +1 -1
  24. package/build/components/global-styles/dimensions-panel.js +5 -4
  25. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  26. package/build/components/global-styles/font-families.js +68 -0
  27. package/build/components/global-styles/font-families.js.map +1 -0
  28. package/build/components/global-styles/font-family-item.js +47 -0
  29. package/build/components/global-styles/font-family-item.js.map +1 -0
  30. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +31 -0
  31. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
  32. package/build/components/global-styles/font-library-modal/context.js +285 -0
  33. package/build/components/global-styles/font-library-modal/context.js.map +1 -0
  34. package/build/components/global-styles/font-library-modal/font-card.js +58 -0
  35. package/build/components/global-styles/font-library-modal/font-card.js.map +1 -0
  36. package/build/components/global-styles/font-library-modal/font-demo.js +69 -0
  37. package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -0
  38. package/build/components/global-styles/font-library-modal/font-variant.js +51 -0
  39. package/build/components/global-styles/font-library-modal/font-variant.js.map +1 -0
  40. package/build/components/global-styles/font-library-modal/fonts-grid.js +54 -0
  41. package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
  42. package/build/components/global-styles/font-library-modal/index.js +47 -0
  43. package/build/components/global-styles/font-library-modal/index.js.map +1 -0
  44. package/build/components/global-styles/font-library-modal/installed-fonts.js +128 -0
  45. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
  46. package/build/components/global-styles/font-library-modal/library-font-card.js +44 -0
  47. package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
  48. package/build/components/global-styles/font-library-modal/library-font-details.js +43 -0
  49. package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
  50. package/build/components/global-styles/font-library-modal/library-font-variant.js +59 -0
  51. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
  52. package/build/components/global-styles/font-library-modal/local-fonts.js +143 -0
  53. package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
  54. package/build/components/global-styles/font-library-modal/resolvers.js +37 -0
  55. package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -0
  56. package/build/components/global-styles/font-library-modal/tab-layout.js +45 -0
  57. package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
  58. package/build/components/global-styles/font-library-modal/utils/constants.js +37 -0
  59. package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
  60. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
  61. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
  62. package/build/components/global-styles/font-library-modal/utils/index.js +205 -0
  63. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -0
  64. package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js +22 -0
  65. package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
  66. package/build/components/global-styles/font-library-modal/utils/toggleFont.js +92 -0
  67. package/build/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
  68. package/build/components/global-styles/global-styles-provider.js +7 -12
  69. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  70. package/build/components/global-styles/screen-block.js +34 -21
  71. package/build/components/global-styles/screen-block.js.map +1 -1
  72. package/build/components/global-styles/screen-revisions/index.js +1 -3
  73. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  74. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
  75. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  76. package/build/components/global-styles/screen-typography.js +4 -72
  77. package/build/components/global-styles/screen-typography.js.map +1 -1
  78. package/build/components/global-styles/style-variations-container.js +3 -5
  79. package/build/components/global-styles/style-variations-container.js.map +1 -1
  80. package/build/components/global-styles/typogrphy-elements.js +96 -0
  81. package/build/components/global-styles/typogrphy-elements.js.map +1 -0
  82. package/build/components/page-patterns/duplicate-menu-item.js +52 -16
  83. package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
  84. package/build/components/page-patterns/grid-item.js +46 -20
  85. package/build/components/page-patterns/grid-item.js.map +1 -1
  86. package/build/components/page-patterns/header.js +3 -7
  87. package/build/components/page-patterns/header.js.map +1 -1
  88. package/build/components/page-patterns/index.js +3 -3
  89. package/build/components/page-patterns/index.js.map +1 -1
  90. package/build/components/page-patterns/patterns-list.js +7 -7
  91. package/build/components/page-patterns/patterns-list.js.map +1 -1
  92. package/build/components/page-patterns/rename-menu-item.js +6 -5
  93. package/build/components/page-patterns/rename-menu-item.js.map +1 -1
  94. package/build/components/page-patterns/search-items.js +8 -2
  95. package/build/components/page-patterns/search-items.js.map +1 -1
  96. package/build/components/page-patterns/use-patterns.js +53 -27
  97. package/build/components/page-patterns/use-patterns.js.map +1 -1
  98. package/build/components/page-patterns/utils.js +1 -20
  99. package/build/components/page-patterns/utils.js.map +1 -1
  100. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +33 -24
  101. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  102. package/build/components/sidebar-edit-mode/page-panels/hooks.js +64 -0
  103. package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
  104. package/build/components/sidebar-edit-mode/page-panels/index.js +1 -4
  105. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  106. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
  107. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  108. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +56 -0
  109. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
  110. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +91 -0
  111. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
  112. package/build/components/sidebar-edit-mode/template-panel/index.js +11 -9
  113. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  114. package/build/components/sidebar-edit-mode/template-panel/last-revision.js +6 -4
  115. package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
  116. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +211 -0
  117. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
  118. package/build/components/sidebar-navigation-screen/index.js +6 -4
  119. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  120. package/build/components/sidebar-navigation-screen-details-footer/index.js +32 -4
  121. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  122. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
  123. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  124. package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -31
  125. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  126. package/build/components/sidebar-navigation-screen-page/index.js +3 -3
  127. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  128. package/build/components/sidebar-navigation-screen-pattern/index.js +18 -8
  129. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  130. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +34 -5
  131. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  132. package/build/components/sidebar-navigation-screen-patterns/index.js +7 -35
  133. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  134. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +38 -4
  135. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  136. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -1
  137. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  138. package/build/components/sidebar-navigation-screen-template/index.js +2 -2
  139. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  140. package/build/components/sidebar-navigation-screen-templates/index.js +1 -1
  141. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  142. package/build/components/template-actions/index.js +7 -4
  143. package/build/components/template-actions/index.js.map +1 -1
  144. package/build/components/template-actions/rename-menu-item.js +3 -2
  145. package/build/components/template-actions/rename-menu-item.js.map +1 -1
  146. package/build/components/welcome-guide/styles.js +2 -2
  147. package/build/components/welcome-guide/styles.js.map +1 -1
  148. package/build/hooks/push-changes-to-global-styles/index.js +5 -37
  149. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  150. package/build/store/actions.js +29 -6
  151. package/build/store/actions.js.map +1 -1
  152. package/build/utils/constants.js +45 -2
  153. package/build/utils/constants.js.map +1 -1
  154. package/build/utils/is-template-removable.js +6 -1
  155. package/build/utils/is-template-removable.js.map +1 -1
  156. package/build/utils/is-template-revertable.js +6 -1
  157. package/build/utils/is-template-revertable.js.map +1 -1
  158. package/build-module/components/add-new-pattern/index.js +66 -5
  159. package/build-module/components/add-new-pattern/index.js.map +1 -1
  160. package/build-module/components/add-new-template/index.js +3 -2
  161. package/build-module/components/add-new-template/index.js.map +1 -1
  162. package/build-module/components/add-new-template/new-template.js +6 -1
  163. package/build-module/components/add-new-template/new-template.js.map +1 -1
  164. package/build-module/components/add-new-template/utils.js +6 -1
  165. package/build-module/components/add-new-template/utils.js.map +1 -1
  166. package/build-module/components/app/index.js +2 -7
  167. package/build-module/components/app/index.js.map +1 -1
  168. package/build-module/components/block-editor/back-button.js +3 -2
  169. package/build-module/components/block-editor/back-button.js.map +1 -1
  170. package/build-module/components/block-editor/editor-canvas.js +21 -17
  171. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  172. package/build-module/components/block-editor/site-editor-canvas.js +3 -5
  173. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  174. package/build-module/components/block-editor/use-site-editor-settings.js +8 -4
  175. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  176. package/build-module/components/canvas-loader/index.js +18 -1
  177. package/build-module/components/canvas-loader/index.js.map +1 -1
  178. package/build-module/components/editor/index.js +3 -8
  179. package/build-module/components/editor/index.js.map +1 -1
  180. package/build-module/components/global-styles/dimensions-panel.js +5 -4
  181. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  182. package/build-module/components/global-styles/font-families.js +58 -0
  183. package/build-module/components/global-styles/font-families.js.map +1 -0
  184. package/build-module/components/global-styles/font-family-item.js +40 -0
  185. package/build-module/components/global-styles/font-family-item.js.map +1 -0
  186. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js +23 -0
  187. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
  188. package/build-module/components/global-styles/font-library-modal/context.js +276 -0
  189. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -0
  190. package/build-module/components/global-styles/font-library-modal/font-card.js +49 -0
  191. package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -0
  192. package/build-module/components/global-styles/font-library-modal/font-demo.js +62 -0
  193. package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -0
  194. package/build-module/components/global-styles/font-library-modal/font-variant.js +42 -0
  195. package/build-module/components/global-styles/font-library-modal/font-variant.js.map +1 -0
  196. package/build-module/components/global-styles/font-library-modal/fonts-grid.js +47 -0
  197. package/build-module/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
  198. package/build-module/components/global-styles/font-library-modal/index.js +38 -0
  199. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -0
  200. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +120 -0
  201. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
  202. package/build-module/components/global-styles/font-library-modal/library-font-card.js +36 -0
  203. package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
  204. package/build-module/components/global-styles/font-library-modal/library-font-details.js +34 -0
  205. package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
  206. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +50 -0
  207. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
  208. package/build-module/components/global-styles/font-library-modal/local-fonts.js +135 -0
  209. package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
  210. package/build-module/components/global-styles/font-library-modal/resolvers.js +28 -0
  211. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -0
  212. package/build-module/components/global-styles/font-library-modal/tab-layout.js +37 -0
  213. package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
  214. package/build-module/components/global-styles/font-library-modal/utils/constants.js +26 -0
  215. package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
  216. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +52 -0
  217. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
  218. package/build-module/components/global-styles/font-library-modal/utils/index.js +190 -0
  219. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -0
  220. package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js +16 -0
  221. package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
  222. package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js +86 -0
  223. package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
  224. package/build-module/components/global-styles/global-styles-provider.js +7 -12
  225. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  226. package/build-module/components/global-styles/screen-block.js +34 -21
  227. package/build-module/components/global-styles/screen-block.js.map +1 -1
  228. package/build-module/components/global-styles/screen-revisions/index.js +1 -3
  229. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  230. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
  231. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  232. package/build-module/components/global-styles/screen-typography.js +6 -74
  233. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  234. package/build-module/components/global-styles/style-variations-container.js +3 -5
  235. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  236. package/build-module/components/global-styles/typogrphy-elements.js +87 -0
  237. package/build-module/components/global-styles/typogrphy-elements.js.map +1 -0
  238. package/build-module/components/page-patterns/duplicate-menu-item.js +51 -16
  239. package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
  240. package/build-module/components/page-patterns/grid-item.js +47 -21
  241. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  242. package/build-module/components/page-patterns/header.js +3 -7
  243. package/build-module/components/page-patterns/header.js.map +1 -1
  244. package/build-module/components/page-patterns/index.js +3 -3
  245. package/build-module/components/page-patterns/index.js.map +1 -1
  246. package/build-module/components/page-patterns/patterns-list.js +7 -7
  247. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  248. package/build-module/components/page-patterns/rename-menu-item.js +6 -5
  249. package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
  250. package/build-module/components/page-patterns/search-items.js +8 -2
  251. package/build-module/components/page-patterns/search-items.js.map +1 -1
  252. package/build-module/components/page-patterns/use-patterns.js +54 -28
  253. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  254. package/build-module/components/page-patterns/utils.js +0 -11
  255. package/build-module/components/page-patterns/utils.js.map +1 -1
  256. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +34 -27
  257. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  258. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +54 -0
  259. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
  260. package/build-module/components/sidebar-edit-mode/page-panels/index.js +1 -4
  261. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  262. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
  263. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  264. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +49 -0
  265. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
  266. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +85 -0
  267. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
  268. package/build-module/components/sidebar-edit-mode/template-panel/index.js +12 -10
  269. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  270. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +8 -6
  271. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
  272. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +202 -0
  273. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
  274. package/build-module/components/sidebar-navigation-screen/index.js +6 -4
  275. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  276. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +32 -5
  277. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  278. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
  279. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  280. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +6 -33
  281. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  282. package/build-module/components/sidebar-navigation-screen-page/index.js +3 -3
  283. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  284. package/build-module/components/sidebar-navigation-screen-pattern/index.js +19 -9
  285. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  286. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +34 -5
  287. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  288. package/build-module/components/sidebar-navigation-screen-patterns/index.js +10 -38
  289. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  290. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +38 -4
  291. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  292. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -2
  293. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  294. package/build-module/components/sidebar-navigation-screen-template/index.js +2 -2
  295. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  296. package/build-module/components/sidebar-navigation-screen-templates/index.js +1 -1
  297. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  298. package/build-module/components/template-actions/index.js +7 -4
  299. package/build-module/components/template-actions/index.js.map +1 -1
  300. package/build-module/components/template-actions/rename-menu-item.js +3 -2
  301. package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
  302. package/build-module/components/welcome-guide/styles.js +2 -2
  303. package/build-module/components/welcome-guide/styles.js.map +1 -1
  304. package/build-module/hooks/push-changes-to-global-styles/index.js +5 -37
  305. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  306. package/build-module/store/actions.js +30 -7
  307. package/build-module/store/actions.js.map +1 -1
  308. package/build-module/utils/constants.js +35 -1
  309. package/build-module/utils/constants.js.map +1 -1
  310. package/build-module/utils/is-template-removable.js +6 -1
  311. package/build-module/utils/is-template-removable.js.map +1 -1
  312. package/build-module/utils/is-template-revertable.js +6 -1
  313. package/build-module/utils/is-template-revertable.js.map +1 -1
  314. package/build-style/style-rtl.css +244 -37
  315. package/build-style/style.css +244 -37
  316. package/lib/inflate.js +4082 -0
  317. package/lib/lib-font.browser.js +3831 -0
  318. package/lib/unbrotli.js +2679 -0
  319. package/package.json +40 -40
  320. package/src/components/add-new-pattern/index.js +83 -5
  321. package/src/components/add-new-template/index.js +3 -2
  322. package/src/components/add-new-template/new-template.js +6 -1
  323. package/src/components/add-new-template/utils.js +12 -3
  324. package/src/components/app/index.js +9 -12
  325. package/src/components/block-editor/back-button.js +6 -2
  326. package/src/components/block-editor/editor-canvas.js +31 -19
  327. package/src/components/block-editor/site-editor-canvas.js +2 -10
  328. package/src/components/block-editor/style.scss +88 -1
  329. package/src/components/block-editor/use-site-editor-settings.js +26 -19
  330. package/src/components/canvas-loader/index.js +12 -1
  331. package/src/components/canvas-loader/style.scss +1 -1
  332. package/src/components/editor/index.js +3 -8
  333. package/src/components/global-styles/dimensions-panel.js +8 -4
  334. package/src/components/global-styles/font-families.js +71 -0
  335. package/src/components/global-styles/font-family-item.js +44 -0
  336. package/src/components/global-styles/font-library-modal/confirm-delete-dialog.js +33 -0
  337. package/src/components/global-styles/font-library-modal/context.js +347 -0
  338. package/src/components/global-styles/font-library-modal/font-card.js +70 -0
  339. package/src/components/global-styles/font-library-modal/font-demo.js +57 -0
  340. package/src/components/global-styles/font-library-modal/font-variant.js +53 -0
  341. package/src/components/global-styles/font-library-modal/fonts-grid.js +55 -0
  342. package/src/components/global-styles/font-library-modal/index.js +42 -0
  343. package/src/components/global-styles/font-library-modal/installed-fonts.js +174 -0
  344. package/src/components/global-styles/font-library-modal/library-font-card.js +40 -0
  345. package/src/components/global-styles/font-library-modal/library-font-details.js +46 -0
  346. package/src/components/global-styles/font-library-modal/library-font-variant.js +54 -0
  347. package/src/components/global-styles/font-library-modal/local-fonts.js +160 -0
  348. package/src/components/global-styles/font-library-modal/resolvers.js +29 -0
  349. package/src/components/global-styles/font-library-modal/style.scss +113 -0
  350. package/src/components/global-styles/font-library-modal/tab-layout.js +50 -0
  351. package/src/components/global-styles/font-library-modal/utils/constants.js +31 -0
  352. package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
  353. package/src/components/global-styles/font-library-modal/utils/index.js +213 -0
  354. package/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js +15 -0
  355. package/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js +53 -0
  356. package/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js +30 -0
  357. package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +240 -0
  358. package/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js +121 -0
  359. package/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js +31 -0
  360. package/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js +57 -0
  361. package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +62 -0
  362. package/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js +56 -0
  363. package/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js +108 -0
  364. package/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js +41 -0
  365. package/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js +141 -0
  366. package/src/components/global-styles/font-library-modal/utils/toggleFont.js +90 -0
  367. package/src/components/global-styles/global-styles-provider.js +2 -7
  368. package/src/components/global-styles/screen-block.js +42 -20
  369. package/src/components/global-styles/screen-revisions/index.js +0 -2
  370. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
  371. package/src/components/global-styles/screen-typography.js +7 -95
  372. package/src/components/global-styles/style-variations-container.js +0 -2
  373. package/src/components/global-styles/typogrphy-elements.js +110 -0
  374. package/src/components/list/style.scss +2 -0
  375. package/src/components/page-patterns/duplicate-menu-item.js +63 -20
  376. package/src/components/page-patterns/grid-item.js +77 -30
  377. package/src/components/page-patterns/header.js +3 -12
  378. package/src/components/page-patterns/index.js +3 -3
  379. package/src/components/page-patterns/patterns-list.js +7 -7
  380. package/src/components/page-patterns/rename-menu-item.js +18 -7
  381. package/src/components/page-patterns/search-items.js +14 -2
  382. package/src/components/page-patterns/style.scss +1 -5
  383. package/src/components/page-patterns/use-patterns.js +67 -33
  384. package/src/components/page-patterns/utils.js +0 -19
  385. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +47 -33
  386. package/src/components/sidebar-edit-mode/page-panels/hooks.js +83 -0
  387. package/src/components/sidebar-edit-mode/page-panels/index.js +0 -4
  388. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +2 -0
  389. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +44 -0
  390. package/src/components/sidebar-edit-mode/page-panels/style.scss +41 -10
  391. package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +82 -0
  392. package/src/components/sidebar-edit-mode/template-panel/index.js +28 -24
  393. package/src/components/sidebar-edit-mode/template-panel/last-revision.js +19 -15
  394. package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +270 -0
  395. package/src/components/sidebar-navigation-screen/index.js +4 -9
  396. package/src/components/sidebar-navigation-screen/style.scss +7 -1
  397. package/src/components/sidebar-navigation-screen-details-footer/index.js +38 -10
  398. package/src/components/sidebar-navigation-screen-details-footer/style.scss +10 -3
  399. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -0
  400. package/src/components/sidebar-navigation-screen-global-styles/index.js +6 -44
  401. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +0 -4
  402. package/src/components/sidebar-navigation-screen-page/index.js +3 -3
  403. package/src/components/sidebar-navigation-screen-pattern/index.js +20 -7
  404. package/src/components/sidebar-navigation-screen-pattern/style.scss +0 -3
  405. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +46 -13
  406. package/src/components/sidebar-navigation-screen-patterns/index.js +14 -49
  407. package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +48 -6
  408. package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -5
  409. package/src/components/sidebar-navigation-screen-template/index.js +2 -4
  410. package/src/components/sidebar-navigation-screen-templates/index.js +1 -1
  411. package/src/components/template-actions/index.js +14 -8
  412. package/src/components/template-actions/rename-menu-item.js +15 -4
  413. package/src/components/welcome-guide/styles.js +2 -2
  414. package/src/hooks/push-changes-to-global-styles/index.js +6 -49
  415. package/src/store/actions.js +39 -13
  416. package/src/style.scss +1 -1
  417. package/src/utils/constants.js +38 -3
  418. package/src/utils/is-template-removable.js +8 -1
  419. package/src/utils/is-template-revertable.js +8 -1
  420. package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -30
  421. package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
  422. package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -23
  423. package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
  424. package/src/components/sidebar-navigation-screen-global-styles/style.scss +0 -12
  425. package/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -24
@@ -52,21 +52,20 @@ const {
52
52
  useHasDimensionsPanel,
53
53
  useHasTypographyPanel,
54
54
  useHasBorderPanel,
55
- __experimentalUseHasBehaviorsPanel: useHasBehaviorsPanel,
56
55
  useGlobalSetting,
57
56
  useSettingsForBlockElement,
58
57
  useHasColorPanel,
59
58
  useHasEffectsPanel,
60
59
  useHasFiltersPanel,
60
+ useHasImageSettingsPanel,
61
61
  useGlobalStyle,
62
- __experimentalUseGlobalBehaviors: useGlobalBehaviors,
63
- __experimentalBehaviorsPanel: StylesBehaviorsPanel,
64
62
  BorderPanel: StylesBorderPanel,
65
63
  ColorPanel: StylesColorPanel,
66
64
  TypographyPanel: StylesTypographyPanel,
67
65
  DimensionsPanel: StylesDimensionsPanel,
68
66
  EffectsPanel: StylesEffectsPanel,
69
67
  FiltersPanel: StylesFiltersPanel,
68
+ ImageSettingsPanel,
70
69
  AdvancedPanel: StylesAdvancedPanel
71
70
  } = unlock(blockEditorPrivateApis);
72
71
  function ScreenBlock({
@@ -84,15 +83,9 @@ function ScreenBlock({
84
83
  const [inheritedStyle, setStyle] = useGlobalStyle(prefix, name, 'all', {
85
84
  shouldDecodeEncode: false
86
85
  });
86
+ const [userSettings] = useGlobalSetting('', name, 'user');
87
87
  const [rawSettings, setSettings] = useGlobalSetting('', name);
88
88
  const settings = useSettingsForBlockElement(rawSettings, name);
89
- const {
90
- inheritedBehaviors,
91
- setBehavior
92
- } = useGlobalBehaviors(name);
93
- const {
94
- behavior
95
- } = useGlobalBehaviors(name, 'user');
96
89
  const blockType = getBlockType(name);
97
90
 
98
91
  // Only allow `blockGap` support if serialization has not been skipped, to be sure global spacing can be applied.
@@ -102,11 +95,11 @@ function ScreenBlock({
102
95
  const blockVariations = useBlockVariations(name);
103
96
  const hasTypographyPanel = useHasTypographyPanel(settings);
104
97
  const hasColorPanel = useHasColorPanel(settings);
105
- const hasBehaviorsPanel = useHasBehaviorsPanel(rawSettings, name);
106
98
  const hasBorderPanel = useHasBorderPanel(settings);
107
99
  const hasDimensionsPanel = useHasDimensionsPanel(settings);
108
100
  const hasEffectsPanel = useHasEffectsPanel(settings);
109
101
  const hasFiltersPanel = useHasFiltersPanel(settings);
102
+ const hasImageSettingsPanel = useHasImageSettingsPanel(name, userSettings, settings);
110
103
  const hasVariationsPanel = !!blockVariations?.length && !variation;
111
104
  const {
112
105
  canEditCSS
@@ -135,22 +128,43 @@ function ScreenBlock({
135
128
  const styleWithLayout = useMemo(() => {
136
129
  return {
137
130
  ...style,
138
- layout: settings.layout
131
+ layout: userSettings.layout
139
132
  };
140
- }, [style, settings.layout]);
133
+ }, [style, userSettings.layout]);
141
134
  const onChangeDimensions = newStyle => {
142
135
  const updatedStyle = {
143
136
  ...newStyle
144
137
  };
145
138
  delete updatedStyle.layout;
146
139
  setStyle(updatedStyle);
147
- if (newStyle.layout !== settings.layout) {
140
+ if (newStyle.layout !== userSettings.layout) {
148
141
  setSettings({
149
- ...rawSettings,
142
+ ...userSettings,
150
143
  layout: newStyle.layout
151
144
  });
152
145
  }
153
146
  };
147
+ const onChangeLightbox = newSetting => {
148
+ // If the newSetting is undefined, this means that the user has deselected
149
+ // (reset) the lightbox setting.
150
+ if (newSetting === undefined) {
151
+ setSettings({
152
+ ...rawSettings,
153
+ lightbox: undefined
154
+ });
155
+
156
+ // Otherwise, we simply set the lightbox setting to the new value but
157
+ // taking care of not overriding the other lightbox settings.
158
+ } else {
159
+ setSettings({
160
+ ...rawSettings,
161
+ lightbox: {
162
+ ...rawSettings.lightbox,
163
+ ...newSetting
164
+ }
165
+ });
166
+ }
167
+ };
154
168
  const onChangeBorders = newStyle => {
155
169
  if (!newStyle?.border) {
156
170
  setStyle(newStyle);
@@ -243,20 +257,19 @@ function ScreenBlock({
243
257
  },
244
258
 
245
259
  includeLayoutControls: true
260
+ }), hasImageSettingsPanel && createElement(ImageSettingsPanel, {
261
+ onChange: onChangeLightbox,
262
+ value: userSettings,
263
+ inheritedValue: settings
246
264
  }), canEditCSS && createElement(PanelBody, {
247
265
  title: __('Advanced'),
248
266
  initialOpen: false
249
267
  }, createElement("p", null, sprintf(
250
268
  // translators: %s: is the name of a block e.g., 'Image' or 'Table'.
251
- __('Add your own CSS to customize the appearance of the %s block.'), blockType?.title)), createElement(StylesAdvancedPanel, {
269
+ __('Add your own CSS to customize the appearance of the %s block. You do not need to include a CSS selector, just add the property and value.'), blockType?.title)), createElement(StylesAdvancedPanel, {
252
270
  value: style,
253
271
  onChange: setStyle,
254
272
  inheritedValue: inheritedStyle
255
- }), hasBehaviorsPanel && createElement(StylesBehaviorsPanel, {
256
- value: behavior,
257
- onChange: setBehavior,
258
- behaviors: inheritedBehaviors,
259
- blockName: name
260
273
  })));
261
274
  }
262
275
  export default ScreenBlock;
@@ -1 +1 @@
1
- {"version":3,"names":["getBlockType","privateApis","blockEditorPrivateApis","useMemo","useSelect","store","coreStore","PanelBody","__experimentalVStack","VStack","__experimentalHasSplitBorders","hasSplitBorders","__","sprintf","ScreenHeader","BlockPreviewPanel","unlock","Subtitle","useBlockVariations","VariationsPanel","applyFallbackStyle","border","hasColorOrWidth","color","width","style","undefined","applyAllFallbackStyles","top","right","bottom","left","useHasDimensionsPanel","useHasTypographyPanel","useHasBorderPanel","__experimentalUseHasBehaviorsPanel","useHasBehaviorsPanel","useGlobalSetting","useSettingsForBlockElement","useHasColorPanel","useHasEffectsPanel","useHasFiltersPanel","useGlobalStyle","__experimentalUseGlobalBehaviors","useGlobalBehaviors","__experimentalBehaviorsPanel","StylesBehaviorsPanel","BorderPanel","StylesBorderPanel","ColorPanel","StylesColorPanel","TypographyPanel","StylesTypographyPanel","DimensionsPanel","StylesDimensionsPanel","EffectsPanel","StylesEffectsPanel","FiltersPanel","StylesFiltersPanel","AdvancedPanel","StylesAdvancedPanel","ScreenBlock","name","variation","prefixParts","concat","prefix","join","shouldDecodeEncode","inheritedStyle","setStyle","rawSettings","setSettings","settings","inheritedBehaviors","setBehavior","behavior","blockType","spacing","blockGap","supports","__experimentalSkipSerialization","some","spacingType","blockVariations","hasTypographyPanel","hasColorPanel","hasBehaviorsPanel","hasBorderPanel","hasDimensionsPanel","hasEffectsPanel","hasFiltersPanel","hasVariationsPanel","length","canEditCSS","select","_globalStyles$_links$","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","_links","currentBlockStyle","find","s","inheritedStyleWithLayout","layout","styleWithLayout","onChangeDimensions","newStyle","updatedStyle","onChangeBorders","radius","newBorder","updatedBorder","createElement","Fragment","title","label","className","inheritedValue","value","onChange","includeLayoutControls","customDuotone","initialOpen","behaviors","blockName"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-block.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockType } from '@wordpress/blocks';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tPanelBody,\n\t__experimentalVStack as VStack,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport BlockPreviewPanel from './block-preview-panel';\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport { useBlockVariations, VariationsPanel } from './variations-panel';\n\nfunction applyFallbackStyle( border ) {\n\tif ( ! border ) {\n\t\treturn border;\n\t}\n\n\tconst hasColorOrWidth = border.color || border.width;\n\n\tif ( ! border.style && hasColorOrWidth ) {\n\t\treturn { ...border, style: 'solid' };\n\t}\n\n\tif ( border.style && ! hasColorOrWidth ) {\n\t\treturn undefined;\n\t}\n\n\treturn border;\n}\n\nfunction applyAllFallbackStyles( border ) {\n\tif ( ! border ) {\n\t\treturn border;\n\t}\n\n\tif ( hasSplitBorders( border ) ) {\n\t\treturn {\n\t\t\ttop: applyFallbackStyle( border.top ),\n\t\t\tright: applyFallbackStyle( border.right ),\n\t\t\tbottom: applyFallbackStyle( border.bottom ),\n\t\t\tleft: applyFallbackStyle( border.left ),\n\t\t};\n\t}\n\n\treturn applyFallbackStyle( border );\n}\n\nconst {\n\tuseHasDimensionsPanel,\n\tuseHasTypographyPanel,\n\tuseHasBorderPanel,\n\t__experimentalUseHasBehaviorsPanel: useHasBehaviorsPanel,\n\tuseGlobalSetting,\n\tuseSettingsForBlockElement,\n\tuseHasColorPanel,\n\tuseHasEffectsPanel,\n\tuseHasFiltersPanel,\n\tuseGlobalStyle,\n\t__experimentalUseGlobalBehaviors: useGlobalBehaviors,\n\t__experimentalBehaviorsPanel: StylesBehaviorsPanel,\n\tBorderPanel: StylesBorderPanel,\n\tColorPanel: StylesColorPanel,\n\tTypographyPanel: StylesTypographyPanel,\n\tDimensionsPanel: StylesDimensionsPanel,\n\tEffectsPanel: StylesEffectsPanel,\n\tFiltersPanel: StylesFiltersPanel,\n\tAdvancedPanel: StylesAdvancedPanel,\n} = unlock( blockEditorPrivateApis );\n\nfunction ScreenBlock( { name, variation } ) {\n\tlet prefixParts = [];\n\tif ( variation ) {\n\t\tprefixParts = [ 'variations', variation ].concat( prefixParts );\n\t}\n\tconst prefix = prefixParts.join( '.' );\n\n\tconst [ style ] = useGlobalStyle( prefix, name, 'user', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ inheritedStyle, setStyle ] = useGlobalStyle( prefix, name, 'all', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ rawSettings, setSettings ] = useGlobalSetting( '', name );\n\tconst settings = useSettingsForBlockElement( rawSettings, name );\n\tconst { inheritedBehaviors, setBehavior } = useGlobalBehaviors( name );\n\tconst { behavior } = useGlobalBehaviors( name, 'user' );\n\n\tconst blockType = getBlockType( name );\n\n\t// Only allow `blockGap` support if serialization has not been skipped, to be sure global spacing can be applied.\n\tif (\n\t\tsettings?.spacing?.blockGap &&\n\t\tblockType?.supports?.spacing?.blockGap &&\n\t\t( blockType?.supports?.spacing?.__experimentalSkipSerialization ===\n\t\t\ttrue ||\n\t\t\tblockType?.supports?.spacing?.__experimentalSkipSerialization?.some?.(\n\t\t\t\t( spacingType ) => spacingType === 'blockGap'\n\t\t\t) )\n\t) {\n\t\tsettings.spacing.blockGap = false;\n\t}\n\n\tconst blockVariations = useBlockVariations( name );\n\tconst hasTypographyPanel = useHasTypographyPanel( settings );\n\tconst hasColorPanel = useHasColorPanel( settings );\n\tconst hasBehaviorsPanel = useHasBehaviorsPanel( rawSettings, name );\n\tconst hasBorderPanel = useHasBorderPanel( settings );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( settings );\n\tconst hasEffectsPanel = useHasEffectsPanel( settings );\n\tconst hasFiltersPanel = useHasFiltersPanel( settings );\n\tconst hasVariationsPanel = !! blockVariations?.length && ! variation;\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS:\n\t\t\t\t!! globalStyles?._links?.[ 'wp:action-edit-css' ] ?? false,\n\t\t};\n\t}, [] );\n\tconst currentBlockStyle = variation\n\t\t? blockVariations.find( ( s ) => s.name === variation )\n\t\t: null;\n\n\t// These intermediary objects are needed because the \"layout\" property is stored\n\t// in settings rather than styles.\n\tconst inheritedStyleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...inheritedStyle,\n\t\t\tlayout: settings.layout,\n\t\t};\n\t}, [ inheritedStyle, settings.layout ] );\n\tconst styleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...style,\n\t\t\tlayout: settings.layout,\n\t\t};\n\t}, [ style, settings.layout ] );\n\tconst onChangeDimensions = ( newStyle ) => {\n\t\tconst updatedStyle = { ...newStyle };\n\t\tdelete updatedStyle.layout;\n\t\tsetStyle( updatedStyle );\n\n\t\tif ( newStyle.layout !== settings.layout ) {\n\t\t\tsetSettings( {\n\t\t\t\t...rawSettings,\n\t\t\t\tlayout: newStyle.layout,\n\t\t\t} );\n\t\t}\n\t};\n\tconst onChangeBorders = ( newStyle ) => {\n\t\tif ( ! newStyle?.border ) {\n\t\t\tsetStyle( newStyle );\n\t\t\treturn;\n\t\t}\n\n\t\t// As Global Styles can't conditionally generate styles based on if\n\t\t// other style properties have been set, we need to force split\n\t\t// border definitions for user set global border styles. Border\n\t\t// radius is derived from the same property i.e. `border.radius` if\n\t\t// it is a string that is used. The longhand border radii styles are\n\t\t// only generated if that property is an object.\n\t\t//\n\t\t// For borders (color, style, and width) those are all properties on\n\t\t// the `border` style property. This means if the theme.json defined\n\t\t// split borders and the user condenses them into a flat border or\n\t\t// vice-versa we'd get both sets of styles which would conflict.\n\t\tconst { radius, ...newBorder } = newStyle.border;\n\t\tconst border = applyAllFallbackStyles( newBorder );\n\t\tconst updatedBorder = ! hasSplitBorders( border )\n\t\t\t? {\n\t\t\t\t\ttop: border,\n\t\t\t\t\tright: border,\n\t\t\t\t\tbottom: border,\n\t\t\t\t\tleft: border,\n\t\t\t }\n\t\t\t: {\n\t\t\t\t\tcolor: null,\n\t\t\t\t\tstyle: null,\n\t\t\t\t\twidth: null,\n\t\t\t\t\t...border,\n\t\t\t };\n\n\t\tsetStyle( { ...newStyle, border: { ...updatedBorder, radius } } );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ variation ? currentBlockStyle.label : blockType.title }\n\t\t\t/>\n\t\t\t<BlockPreviewPanel name={ name } variation={ variation } />\n\t\t\t{ hasVariationsPanel && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-variations\">\n\t\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t\t<Subtitle>{ __( 'Style Variations' ) }</Subtitle>\n\t\t\t\t\t\t<VariationsPanel name={ name } />\n\t\t\t\t\t</VStack>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ hasColorPanel && (\n\t\t\t\t<StylesColorPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasTypographyPanel && (\n\t\t\t\t<StylesTypographyPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasDimensionsPanel && (\n\t\t\t\t<StylesDimensionsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ onChangeDimensions }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasBorderPanel && (\n\t\t\t\t<StylesBorderPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ onChangeBorders }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasEffectsPanel && (\n\t\t\t\t<StylesEffectsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasFiltersPanel && (\n\t\t\t\t<StylesFiltersPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ {\n\t\t\t\t\t\t...settings,\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t...settings.color,\n\t\t\t\t\t\t\tcustomDuotone: false, //TO FIX: Custom duotone only works on the block level right now\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ canEditCSS && (\n\t\t\t\t<PanelBody title={ __( 'Advanced' ) } initialOpen={ false }>\n\t\t\t\t\t<p>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: is the name of a block e.g., 'Image' or 'Table'.\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Add your own CSS to customize the appearance of the %s block.'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tblockType?.title\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t<StylesAdvancedPanel\n\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\t/>\n\t\t\t\t\t{ hasBehaviorsPanel && (\n\t\t\t\t\t\t<StylesBehaviorsPanel\n\t\t\t\t\t\t\tvalue={ behavior }\n\t\t\t\t\t\t\tonChange={ setBehavior }\n\t\t\t\t\t\t\tbehaviors={ inheritedBehaviors }\n\t\t\t\t\t\t\tblockName={ name }\n\t\t\t\t\t\t></StylesBehaviorsPanel>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenBlock;\n"],"mappings":"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"}
1
+ {"version":3,"names":["getBlockType","privateApis","blockEditorPrivateApis","useMemo","useSelect","store","coreStore","PanelBody","__experimentalVStack","VStack","__experimentalHasSplitBorders","hasSplitBorders","__","sprintf","ScreenHeader","BlockPreviewPanel","unlock","Subtitle","useBlockVariations","VariationsPanel","applyFallbackStyle","border","hasColorOrWidth","color","width","style","undefined","applyAllFallbackStyles","top","right","bottom","left","useHasDimensionsPanel","useHasTypographyPanel","useHasBorderPanel","useGlobalSetting","useSettingsForBlockElement","useHasColorPanel","useHasEffectsPanel","useHasFiltersPanel","useHasImageSettingsPanel","useGlobalStyle","BorderPanel","StylesBorderPanel","ColorPanel","StylesColorPanel","TypographyPanel","StylesTypographyPanel","DimensionsPanel","StylesDimensionsPanel","EffectsPanel","StylesEffectsPanel","FiltersPanel","StylesFiltersPanel","ImageSettingsPanel","AdvancedPanel","StylesAdvancedPanel","ScreenBlock","name","variation","prefixParts","concat","prefix","join","shouldDecodeEncode","inheritedStyle","setStyle","userSettings","rawSettings","setSettings","settings","blockType","spacing","blockGap","supports","__experimentalSkipSerialization","some","spacingType","blockVariations","hasTypographyPanel","hasColorPanel","hasBorderPanel","hasDimensionsPanel","hasEffectsPanel","hasFiltersPanel","hasImageSettingsPanel","hasVariationsPanel","length","canEditCSS","select","_globalStyles$_links$","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","_links","currentBlockStyle","find","s","inheritedStyleWithLayout","layout","styleWithLayout","onChangeDimensions","newStyle","updatedStyle","onChangeLightbox","newSetting","lightbox","onChangeBorders","radius","newBorder","updatedBorder","createElement","Fragment","title","label","className","inheritedValue","value","onChange","includeLayoutControls","customDuotone","initialOpen"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-block.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockType } from '@wordpress/blocks';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tPanelBody,\n\t__experimentalVStack as VStack,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport BlockPreviewPanel from './block-preview-panel';\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport { useBlockVariations, VariationsPanel } from './variations-panel';\n\nfunction applyFallbackStyle( border ) {\n\tif ( ! border ) {\n\t\treturn border;\n\t}\n\n\tconst hasColorOrWidth = border.color || border.width;\n\n\tif ( ! border.style && hasColorOrWidth ) {\n\t\treturn { ...border, style: 'solid' };\n\t}\n\n\tif ( border.style && ! hasColorOrWidth ) {\n\t\treturn undefined;\n\t}\n\n\treturn border;\n}\n\nfunction applyAllFallbackStyles( border ) {\n\tif ( ! border ) {\n\t\treturn border;\n\t}\n\n\tif ( hasSplitBorders( border ) ) {\n\t\treturn {\n\t\t\ttop: applyFallbackStyle( border.top ),\n\t\t\tright: applyFallbackStyle( border.right ),\n\t\t\tbottom: applyFallbackStyle( border.bottom ),\n\t\t\tleft: applyFallbackStyle( border.left ),\n\t\t};\n\t}\n\n\treturn applyFallbackStyle( border );\n}\n\nconst {\n\tuseHasDimensionsPanel,\n\tuseHasTypographyPanel,\n\tuseHasBorderPanel,\n\tuseGlobalSetting,\n\tuseSettingsForBlockElement,\n\tuseHasColorPanel,\n\tuseHasEffectsPanel,\n\tuseHasFiltersPanel,\n\tuseHasImageSettingsPanel,\n\tuseGlobalStyle,\n\tBorderPanel: StylesBorderPanel,\n\tColorPanel: StylesColorPanel,\n\tTypographyPanel: StylesTypographyPanel,\n\tDimensionsPanel: StylesDimensionsPanel,\n\tEffectsPanel: StylesEffectsPanel,\n\tFiltersPanel: StylesFiltersPanel,\n\tImageSettingsPanel,\n\tAdvancedPanel: StylesAdvancedPanel,\n} = unlock( blockEditorPrivateApis );\n\nfunction ScreenBlock( { name, variation } ) {\n\tlet prefixParts = [];\n\tif ( variation ) {\n\t\tprefixParts = [ 'variations', variation ].concat( prefixParts );\n\t}\n\tconst prefix = prefixParts.join( '.' );\n\n\tconst [ style ] = useGlobalStyle( prefix, name, 'user', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ inheritedStyle, setStyle ] = useGlobalStyle( prefix, name, 'all', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ userSettings ] = useGlobalSetting( '', name, 'user' );\n\tconst [ rawSettings, setSettings ] = useGlobalSetting( '', name );\n\tconst settings = useSettingsForBlockElement( rawSettings, name );\n\tconst blockType = getBlockType( name );\n\n\t// Only allow `blockGap` support if serialization has not been skipped, to be sure global spacing can be applied.\n\tif (\n\t\tsettings?.spacing?.blockGap &&\n\t\tblockType?.supports?.spacing?.blockGap &&\n\t\t( blockType?.supports?.spacing?.__experimentalSkipSerialization ===\n\t\t\ttrue ||\n\t\t\tblockType?.supports?.spacing?.__experimentalSkipSerialization?.some?.(\n\t\t\t\t( spacingType ) => spacingType === 'blockGap'\n\t\t\t) )\n\t) {\n\t\tsettings.spacing.blockGap = false;\n\t}\n\n\tconst blockVariations = useBlockVariations( name );\n\tconst hasTypographyPanel = useHasTypographyPanel( settings );\n\tconst hasColorPanel = useHasColorPanel( settings );\n\tconst hasBorderPanel = useHasBorderPanel( settings );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( settings );\n\tconst hasEffectsPanel = useHasEffectsPanel( settings );\n\tconst hasFiltersPanel = useHasFiltersPanel( settings );\n\tconst hasImageSettingsPanel = useHasImageSettingsPanel(\n\t\tname,\n\t\tuserSettings,\n\t\tsettings\n\t);\n\tconst hasVariationsPanel = !! blockVariations?.length && ! variation;\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS:\n\t\t\t\t!! globalStyles?._links?.[ 'wp:action-edit-css' ] ?? false,\n\t\t};\n\t}, [] );\n\tconst currentBlockStyle = variation\n\t\t? blockVariations.find( ( s ) => s.name === variation )\n\t\t: null;\n\n\t// These intermediary objects are needed because the \"layout\" property is stored\n\t// in settings rather than styles.\n\tconst inheritedStyleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...inheritedStyle,\n\t\t\tlayout: settings.layout,\n\t\t};\n\t}, [ inheritedStyle, settings.layout ] );\n\tconst styleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...style,\n\t\t\tlayout: userSettings.layout,\n\t\t};\n\t}, [ style, userSettings.layout ] );\n\tconst onChangeDimensions = ( newStyle ) => {\n\t\tconst updatedStyle = { ...newStyle };\n\t\tdelete updatedStyle.layout;\n\t\tsetStyle( updatedStyle );\n\n\t\tif ( newStyle.layout !== userSettings.layout ) {\n\t\t\tsetSettings( {\n\t\t\t\t...userSettings,\n\t\t\t\tlayout: newStyle.layout,\n\t\t\t} );\n\t\t}\n\t};\n\tconst onChangeLightbox = ( newSetting ) => {\n\t\t// If the newSetting is undefined, this means that the user has deselected\n\t\t// (reset) the lightbox setting.\n\t\tif ( newSetting === undefined ) {\n\t\t\tsetSettings( {\n\t\t\t\t...rawSettings,\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\n\t\t\t// Otherwise, we simply set the lightbox setting to the new value but\n\t\t\t// taking care of not overriding the other lightbox settings.\n\t\t} else {\n\t\t\tsetSettings( {\n\t\t\t\t...rawSettings,\n\t\t\t\tlightbox: {\n\t\t\t\t\t...rawSettings.lightbox,\n\t\t\t\t\t...newSetting,\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t};\n\tconst onChangeBorders = ( newStyle ) => {\n\t\tif ( ! newStyle?.border ) {\n\t\t\tsetStyle( newStyle );\n\t\t\treturn;\n\t\t}\n\n\t\t// As Global Styles can't conditionally generate styles based on if\n\t\t// other style properties have been set, we need to force split\n\t\t// border definitions for user set global border styles. Border\n\t\t// radius is derived from the same property i.e. `border.radius` if\n\t\t// it is a string that is used. The longhand border radii styles are\n\t\t// only generated if that property is an object.\n\t\t//\n\t\t// For borders (color, style, and width) those are all properties on\n\t\t// the `border` style property. This means if the theme.json defined\n\t\t// split borders and the user condenses them into a flat border or\n\t\t// vice-versa we'd get both sets of styles which would conflict.\n\t\tconst { radius, ...newBorder } = newStyle.border;\n\t\tconst border = applyAllFallbackStyles( newBorder );\n\t\tconst updatedBorder = ! hasSplitBorders( border )\n\t\t\t? {\n\t\t\t\t\ttop: border,\n\t\t\t\t\tright: border,\n\t\t\t\t\tbottom: border,\n\t\t\t\t\tleft: border,\n\t\t\t }\n\t\t\t: {\n\t\t\t\t\tcolor: null,\n\t\t\t\t\tstyle: null,\n\t\t\t\t\twidth: null,\n\t\t\t\t\t...border,\n\t\t\t };\n\n\t\tsetStyle( { ...newStyle, border: { ...updatedBorder, radius } } );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ variation ? currentBlockStyle.label : blockType.title }\n\t\t\t/>\n\t\t\t<BlockPreviewPanel name={ name } variation={ variation } />\n\t\t\t{ hasVariationsPanel && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-variations\">\n\t\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t\t<Subtitle>{ __( 'Style Variations' ) }</Subtitle>\n\t\t\t\t\t\t<VariationsPanel name={ name } />\n\t\t\t\t\t</VStack>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ hasColorPanel && (\n\t\t\t\t<StylesColorPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasTypographyPanel && (\n\t\t\t\t<StylesTypographyPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasDimensionsPanel && (\n\t\t\t\t<StylesDimensionsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ onChangeDimensions }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasBorderPanel && (\n\t\t\t\t<StylesBorderPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ onChangeBorders }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasEffectsPanel && (\n\t\t\t\t<StylesEffectsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasFiltersPanel && (\n\t\t\t\t<StylesFiltersPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ {\n\t\t\t\t\t\t...settings,\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t...settings.color,\n\t\t\t\t\t\t\tcustomDuotone: false, //TO FIX: Custom duotone only works on the block level right now\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasImageSettingsPanel && (\n\t\t\t\t<ImageSettingsPanel\n\t\t\t\t\tonChange={ onChangeLightbox }\n\t\t\t\t\tvalue={ userSettings }\n\t\t\t\t\tinheritedValue={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ canEditCSS && (\n\t\t\t\t<PanelBody title={ __( 'Advanced' ) } initialOpen={ false }>\n\t\t\t\t\t<p>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: is the name of a block e.g., 'Image' or 'Table'.\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Add your own CSS to customize the appearance of the %s block. You do not need to include a CSS selector, just add the property and value.'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tblockType?.title\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t<StylesAdvancedPanel\n\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenBlock;\n"],"mappings":"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"}
@@ -62,8 +62,7 @@ function ScreenRevisions() {
62
62
  const restoreRevision = revision => {
63
63
  setUserConfig(() => ({
64
64
  styles: revision?.styles,
65
- settings: revision?.settings,
66
- behaviors: revision?.behaviors
65
+ settings: revision?.settings
67
66
  }));
68
67
  setIsLoadingRevisionWithUnsavedChanges(false);
69
68
  onCloseRevisions();
@@ -72,7 +71,6 @@ function ScreenRevisions() {
72
71
  setGlobalStylesRevision({
73
72
  styles: revision?.styles || {},
74
73
  settings: revision?.settings || {},
75
- behaviors: revision?.behaviors || {},
76
74
  id: revision?.id
77
75
  });
78
76
  setSelectedRevisionId(revision?.id);
@@ -1 +1 @@
1
- {"version":3,"names":["__","Button","__experimentalUseNavigator","useNavigator","__experimentalConfirmDialog","ConfirmDialog","Spinner","__experimentalSpacer","Spacer","useSelect","useDispatch","useContext","useState","useEffect","privateApis","blockEditorPrivateApis","store","blockEditorStore","ScreenHeader","unlock","Revisions","SidebarFixedBottom","editSiteStore","useGlobalStylesRevisions","RevisionsButtons","GlobalStylesContext","areGlobalStyleConfigsEqual","ScreenRevisions","goBack","user","userConfig","setUserConfig","blocks","editorCanvasContainerView","select","getEditorCanvasContainerView","getBlocks","revisions","isLoading","hasUnsavedChanges","selectedRevisionId","setSelectedRevisionId","globalStylesRevision","setGlobalStylesRevision","isLoadingRevisionWithUnsavedChanges","setIsLoadingRevisionWithUnsavedChanges","setEditorCanvasContainerView","onCloseRevisions","restoreRevision","revision","styles","settings","behaviors","selectRevision","id","isLoadButtonEnabled","shouldShowRevisions","length","createElement","Fragment","title","description","className","onClose","onChange","userRevisions","variant","disabled","onClick","isOpen","confirmButtonText","onConfirm","onCancel","marginX"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tSpinner,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext, useState, useEffect } from '@wordpress/element';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from '../header';\nimport { unlock } from '../../../lock-unlock';\nimport Revisions from '../../revisions';\nimport SidebarFixedBottom from '../../sidebar-edit-mode/sidebar-fixed-bottom';\nimport { store as editSiteStore } from '../../../store';\nimport useGlobalStylesRevisions from './use-global-styles-revisions';\nimport RevisionsButtons from './revisions-buttons';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction ScreenRevisions() {\n\tconst { goBack } = useNavigator();\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\tconst { blocks, editorCanvasContainerView } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\teditorCanvasContainerView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tblocks: select( blockEditorStore ).getBlocks(),\n\t\t};\n\t}, [] );\n\tconst { revisions, isLoading, hasUnsavedChanges } =\n\t\tuseGlobalStylesRevisions();\n\tconst [ selectedRevisionId, setSelectedRevisionId ] = useState();\n\tconst [ globalStylesRevision, setGlobalStylesRevision ] =\n\t\tuseState( userConfig );\n\tconst [\n\t\tisLoadingRevisionWithUnsavedChanges,\n\t\tsetIsLoadingRevisionWithUnsavedChanges,\n\t] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\n\tuseEffect( () => {\n\t\tif ( editorCanvasContainerView !== 'global-styles-revisions' ) {\n\t\t\tgoBack();\n\t\t\tsetEditorCanvasContainerView( editorCanvasContainerView );\n\t\t}\n\t}, [ editorCanvasContainerView ] );\n\n\tconst onCloseRevisions = () => {\n\t\tgoBack();\n\t};\n\n\tconst restoreRevision = ( revision ) => {\n\t\tsetUserConfig( () => ( {\n\t\t\tstyles: revision?.styles,\n\t\t\tsettings: revision?.settings,\n\t\t\tbehaviors: revision?.behaviors,\n\t\t} ) );\n\t\tsetIsLoadingRevisionWithUnsavedChanges( false );\n\t\tonCloseRevisions();\n\t};\n\n\tconst selectRevision = ( revision ) => {\n\t\tsetGlobalStylesRevision( {\n\t\t\tstyles: revision?.styles || {},\n\t\t\tsettings: revision?.settings || {},\n\t\t\tbehaviors: revision?.behaviors || {},\n\t\t\tid: revision?.id,\n\t\t} );\n\t\tsetSelectedRevisionId( revision?.id );\n\t};\n\n\tconst isLoadButtonEnabled =\n\t\t!! globalStylesRevision?.id &&\n\t\t! areGlobalStyleConfigsEqual( globalStylesRevision, userConfig );\n\tconst shouldShowRevisions = ! isLoading && revisions.length;\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Revisions' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Revisions are added to the timeline when style changes are saved.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t{ isLoading && (\n\t\t\t\t<Spinner className=\"edit-site-global-styles-screen-revisions__loading\" />\n\t\t\t) }\n\t\t\t{ shouldShowRevisions ? (\n\t\t\t\t<>\n\t\t\t\t\t<Revisions\n\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\tuserConfig={ globalStylesRevision }\n\t\t\t\t\t\tonClose={ onCloseRevisions }\n\t\t\t\t\t/>\n\t\t\t\t\t<div className=\"edit-site-global-styles-screen-revisions\">\n\t\t\t\t\t\t<RevisionsButtons\n\t\t\t\t\t\t\tonChange={ selectRevision }\n\t\t\t\t\t\t\tselectedRevisionId={ selectedRevisionId }\n\t\t\t\t\t\t\tuserRevisions={ revisions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ isLoadButtonEnabled && (\n\t\t\t\t\t\t\t<SidebarFixedBottom>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__button\"\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t! globalStylesRevision?.id ||\n\t\t\t\t\t\t\t\t\t\tglobalStylesRevision?.id === 'unsaved'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tif ( hasUnsavedChanges ) {\n\t\t\t\t\t\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges(\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\trestoreRevision(\n\t\t\t\t\t\t\t\t\t\t\t\tglobalStylesRevision\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ globalStylesRevision?.id === 'parent'\n\t\t\t\t\t\t\t\t\t\t? __( 'Reset to defaults' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Apply' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</SidebarFixedBottom>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t\t{ isLoadingRevisionWithUnsavedChanges && (\n\t\t\t\t\t\t<ConfirmDialog\n\t\t\t\t\t\t\tisOpen={ isLoadingRevisionWithUnsavedChanges }\n\t\t\t\t\t\t\tconfirmButtonText={ __( 'Apply' ) }\n\t\t\t\t\t\t\tonConfirm={ () =>\n\t\t\t\t\t\t\t\trestoreRevision( globalStylesRevision )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonCancel={ () =>\n\t\t\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges( false )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Any unsaved changes will be lost when you apply this revision.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ConfirmDialog>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<Spacer marginX={ 4 } data-testid=\"global-styles-no-revisions\">\n\t\t\t\t\t{\n\t\t\t\t\t\t// Adding an existing translation here in case these changes are shipped to WordPress 6.3.\n\t\t\t\t\t\t// Later we could update to something better, e.g., \"There are currently no style revisions.\".\n\t\t\t\t\t\t__( 'No results found.' )\n\t\t\t\t\t}\n\t\t\t\t</Spacer>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenRevisions;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SACCC,MAAM,EACNC,0BAA0B,IAAIC,YAAY,EAC1CC,2BAA2B,IAAIC,aAAa,EAC5CC,OAAO,EACPC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,UAAU,EAAEC,QAAQ,EAAEC,SAAS,QAAQ,oBAAoB;AACpE,SACCC,WAAW,IAAIC,sBAAsB,EACrCC,KAAK,IAAIC,gBAAgB,QACnB,yBAAyB;;AAEhC;AACA;AACA;AACA,OAAOC,YAAY,MAAM,WAAW;AACpC,SAASC,MAAM,QAAQ,sBAAsB;AAC7C,OAAOC,SAAS,MAAM,iBAAiB;AACvC,OAAOC,kBAAkB,MAAM,8CAA8C;AAC7E,SAASL,KAAK,IAAIM,aAAa,QAAQ,gBAAgB;AACvD,OAAOC,wBAAwB,MAAM,+BAA+B;AACpE,OAAOC,gBAAgB,MAAM,qBAAqB;AAElD,MAAM;EAAEC,mBAAmB;EAAEC;AAA2B,CAAC,GAAGP,MAAM,CACjEJ,sBACD,CAAC;AAED,SAASY,eAAeA,CAAA,EAAG;EAC1B,MAAM;IAAEC;EAAO,CAAC,GAAGzB,YAAY,CAAC,CAAC;EACjC,MAAM;IAAE0B,IAAI,EAAEC,UAAU;IAAEC;EAAc,CAAC,GACxCpB,UAAU,CAAEc,mBAAoB,CAAC;EAClC,MAAM;IAAEO,MAAM;IAAEC;EAA0B,CAAC,GAAGxB,SAAS,CAAIyB,MAAM,IAAM;IACtE,OAAO;MACND,yBAAyB,EAAEd,MAAM,CAChCe,MAAM,CAAEZ,aAAc,CACvB,CAAC,CAACa,4BAA4B,CAAC,CAAC;MAChCH,MAAM,EAAEE,MAAM,CAAEjB,gBAAiB,CAAC,CAACmB,SAAS,CAAC;IAC9C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEC,SAAS;IAAEC,SAAS;IAAEC;EAAkB,CAAC,GAChDhB,wBAAwB,CAAC,CAAC;EAC3B,MAAM,CAAEiB,kBAAkB,EAAEC,qBAAqB,CAAE,GAAG7B,QAAQ,CAAC,CAAC;EAChE,MAAM,CAAE8B,oBAAoB,EAAEC,uBAAuB,CAAE,GACtD/B,QAAQ,CAAEkB,UAAW,CAAC;EACvB,MAAM,CACLc,mCAAmC,EACnCC,sCAAsC,CACtC,GAAGjC,QAAQ,CAAE,KAAM,CAAC;EACrB,MAAM;IAAEkC;EAA6B,CAAC,GAAG3B,MAAM,CAC9CT,WAAW,CAAEY,aAAc,CAC5B,CAAC;EAEDT,SAAS,CAAE,MAAM;IAChB,IAAKoB,yBAAyB,KAAK,yBAAyB,EAAG;MAC9DL,MAAM,CAAC,CAAC;MACRkB,4BAA4B,CAAEb,yBAA0B,CAAC;IAC1D;EACD,CAAC,EAAE,CAAEA,yBAAyB,CAAG,CAAC;EAElC,MAAMc,gBAAgB,GAAGA,CAAA,KAAM;IAC9BnB,MAAM,CAAC,CAAC;EACT,CAAC;EAED,MAAMoB,eAAe,GAAKC,QAAQ,IAAM;IACvClB,aAAa,CAAE,OAAQ;MACtBmB,MAAM,EAAED,QAAQ,EAAEC,MAAM;MACxBC,QAAQ,EAAEF,QAAQ,EAAEE,QAAQ;MAC5BC,SAAS,EAAEH,QAAQ,EAAEG;IACtB,CAAC,CAAG,CAAC;IACLP,sCAAsC,CAAE,KAAM,CAAC;IAC/CE,gBAAgB,CAAC,CAAC;EACnB,CAAC;EAED,MAAMM,cAAc,GAAKJ,QAAQ,IAAM;IACtCN,uBAAuB,CAAE;MACxBO,MAAM,EAAED,QAAQ,EAAEC,MAAM,IAAI,CAAC,CAAC;MAC9BC,QAAQ,EAAEF,QAAQ,EAAEE,QAAQ,IAAI,CAAC,CAAC;MAClCC,SAAS,EAAEH,QAAQ,EAAEG,SAAS,IAAI,CAAC,CAAC;MACpCE,EAAE,EAAEL,QAAQ,EAAEK;IACf,CAAE,CAAC;IACHb,qBAAqB,CAAEQ,QAAQ,EAAEK,EAAG,CAAC;EACtC,CAAC;EAED,MAAMC,mBAAmB,GACxB,CAAC,CAAEb,oBAAoB,EAAEY,EAAE,IAC3B,CAAE5B,0BAA0B,CAAEgB,oBAAoB,EAAEZ,UAAW,CAAC;EACjE,MAAM0B,mBAAmB,GAAG,CAAElB,SAAS,IAAID,SAAS,CAACoB,MAAM;EAE3D,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACxC,YAAY;IACZ0C,KAAK,EAAG5D,EAAE,CAAE,WAAY,CAAG;IAC3B6D,WAAW,EAAG7D,EAAE,CACf,mEACD;EAAG,CACH,CAAC,EACAsC,SAAS,IACVoB,aAAA,CAACpD,OAAO;IAACwD,SAAS,EAAC;EAAmD,CAAE,CACxE,EACCN,mBAAmB,GACpBE,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACtC,SAAS;IACTY,MAAM,EAAGA,MAAQ;IACjBF,UAAU,EAAGY,oBAAsB;IACnCqB,OAAO,EAAGhB;EAAkB,CAC5B,CAAC,EACFW,aAAA;IAAKI,SAAS,EAAC;EAA0C,GACxDJ,aAAA,CAAClC,gBAAgB;IAChBwC,QAAQ,EAAGX,cAAgB;IAC3Bb,kBAAkB,EAAGA,kBAAoB;IACzCyB,aAAa,EAAG5B;EAAW,CAC3B,CAAC,EACAkB,mBAAmB,IACpBG,aAAA,CAACrC,kBAAkB,QAClBqC,aAAA,CAACzD,MAAM;IACNiE,OAAO,EAAC,SAAS;IACjBJ,SAAS,EAAC,kDAAkD;IAC5DK,QAAQ,EACP,CAAEzB,oBAAoB,EAAEY,EAAE,IAC1BZ,oBAAoB,EAAEY,EAAE,KAAK,SAC7B;IACDc,OAAO,EAAGA,CAAA,KAAM;MACf,IAAK7B,iBAAiB,EAAG;QACxBM,sCAAsC,CACrC,IACD,CAAC;MACF,CAAC,MAAM;QACNG,eAAe,CACdN,oBACD,CAAC;MACF;IACD;EAAG,GAEDA,oBAAoB,EAAEY,EAAE,KAAK,QAAQ,GACpCtD,EAAE,CAAE,mBAAoB,CAAC,GACzBA,EAAE,CAAE,OAAQ,CACR,CACW,CAEjB,CAAC,EACJ4C,mCAAmC,IACpCc,aAAA,CAACrD,aAAa;IACbgE,MAAM,EAAGzB,mCAAqC;IAC9C0B,iBAAiB,EAAGtE,EAAE,CAAE,OAAQ,CAAG;IACnCuE,SAAS,EAAGA,CAAA,KACXvB,eAAe,CAAEN,oBAAqB,CACtC;IACD8B,QAAQ,EAAGA,CAAA,KACV3B,sCAAsC,CAAE,KAAM;EAC9C,GAEC7C,EAAE,CACH,gEACD,CACc,CAEf,CAAC,GAEH0D,aAAA,CAAClD,MAAM;IAACiE,OAAO,EAAG,CAAG;IAAC,eAAY;EAA4B;EAE5D;EACA;EACAzE,EAAE,CAAE,mBAAoB,CAElB,CAER,CAAC;AAEL;AAEA,eAAe2B,eAAe"}
1
+ {"version":3,"names":["__","Button","__experimentalUseNavigator","useNavigator","__experimentalConfirmDialog","ConfirmDialog","Spinner","__experimentalSpacer","Spacer","useSelect","useDispatch","useContext","useState","useEffect","privateApis","blockEditorPrivateApis","store","blockEditorStore","ScreenHeader","unlock","Revisions","SidebarFixedBottom","editSiteStore","useGlobalStylesRevisions","RevisionsButtons","GlobalStylesContext","areGlobalStyleConfigsEqual","ScreenRevisions","goBack","user","userConfig","setUserConfig","blocks","editorCanvasContainerView","select","getEditorCanvasContainerView","getBlocks","revisions","isLoading","hasUnsavedChanges","selectedRevisionId","setSelectedRevisionId","globalStylesRevision","setGlobalStylesRevision","isLoadingRevisionWithUnsavedChanges","setIsLoadingRevisionWithUnsavedChanges","setEditorCanvasContainerView","onCloseRevisions","restoreRevision","revision","styles","settings","selectRevision","id","isLoadButtonEnabled","shouldShowRevisions","length","createElement","Fragment","title","description","className","onClose","onChange","userRevisions","variant","disabled","onClick","isOpen","confirmButtonText","onConfirm","onCancel","marginX"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tSpinner,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext, useState, useEffect } from '@wordpress/element';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from '../header';\nimport { unlock } from '../../../lock-unlock';\nimport Revisions from '../../revisions';\nimport SidebarFixedBottom from '../../sidebar-edit-mode/sidebar-fixed-bottom';\nimport { store as editSiteStore } from '../../../store';\nimport useGlobalStylesRevisions from './use-global-styles-revisions';\nimport RevisionsButtons from './revisions-buttons';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction ScreenRevisions() {\n\tconst { goBack } = useNavigator();\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\tconst { blocks, editorCanvasContainerView } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\teditorCanvasContainerView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tblocks: select( blockEditorStore ).getBlocks(),\n\t\t};\n\t}, [] );\n\tconst { revisions, isLoading, hasUnsavedChanges } =\n\t\tuseGlobalStylesRevisions();\n\tconst [ selectedRevisionId, setSelectedRevisionId ] = useState();\n\tconst [ globalStylesRevision, setGlobalStylesRevision ] =\n\t\tuseState( userConfig );\n\tconst [\n\t\tisLoadingRevisionWithUnsavedChanges,\n\t\tsetIsLoadingRevisionWithUnsavedChanges,\n\t] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\n\tuseEffect( () => {\n\t\tif ( editorCanvasContainerView !== 'global-styles-revisions' ) {\n\t\t\tgoBack();\n\t\t\tsetEditorCanvasContainerView( editorCanvasContainerView );\n\t\t}\n\t}, [ editorCanvasContainerView ] );\n\n\tconst onCloseRevisions = () => {\n\t\tgoBack();\n\t};\n\n\tconst restoreRevision = ( revision ) => {\n\t\tsetUserConfig( () => ( {\n\t\t\tstyles: revision?.styles,\n\t\t\tsettings: revision?.settings,\n\t\t} ) );\n\t\tsetIsLoadingRevisionWithUnsavedChanges( false );\n\t\tonCloseRevisions();\n\t};\n\n\tconst selectRevision = ( revision ) => {\n\t\tsetGlobalStylesRevision( {\n\t\t\tstyles: revision?.styles || {},\n\t\t\tsettings: revision?.settings || {},\n\t\t\tid: revision?.id,\n\t\t} );\n\t\tsetSelectedRevisionId( revision?.id );\n\t};\n\n\tconst isLoadButtonEnabled =\n\t\t!! globalStylesRevision?.id &&\n\t\t! areGlobalStyleConfigsEqual( globalStylesRevision, userConfig );\n\tconst shouldShowRevisions = ! isLoading && revisions.length;\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Revisions' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Revisions are added to the timeline when style changes are saved.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t{ isLoading && (\n\t\t\t\t<Spinner className=\"edit-site-global-styles-screen-revisions__loading\" />\n\t\t\t) }\n\t\t\t{ shouldShowRevisions ? (\n\t\t\t\t<>\n\t\t\t\t\t<Revisions\n\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\tuserConfig={ globalStylesRevision }\n\t\t\t\t\t\tonClose={ onCloseRevisions }\n\t\t\t\t\t/>\n\t\t\t\t\t<div className=\"edit-site-global-styles-screen-revisions\">\n\t\t\t\t\t\t<RevisionsButtons\n\t\t\t\t\t\t\tonChange={ selectRevision }\n\t\t\t\t\t\t\tselectedRevisionId={ selectedRevisionId }\n\t\t\t\t\t\t\tuserRevisions={ revisions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ isLoadButtonEnabled && (\n\t\t\t\t\t\t\t<SidebarFixedBottom>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__button\"\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t! globalStylesRevision?.id ||\n\t\t\t\t\t\t\t\t\t\tglobalStylesRevision?.id === 'unsaved'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tif ( hasUnsavedChanges ) {\n\t\t\t\t\t\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges(\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\trestoreRevision(\n\t\t\t\t\t\t\t\t\t\t\t\tglobalStylesRevision\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ globalStylesRevision?.id === 'parent'\n\t\t\t\t\t\t\t\t\t\t? __( 'Reset to defaults' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Apply' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</SidebarFixedBottom>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t\t{ isLoadingRevisionWithUnsavedChanges && (\n\t\t\t\t\t\t<ConfirmDialog\n\t\t\t\t\t\t\tisOpen={ isLoadingRevisionWithUnsavedChanges }\n\t\t\t\t\t\t\tconfirmButtonText={ __( 'Apply' ) }\n\t\t\t\t\t\t\tonConfirm={ () =>\n\t\t\t\t\t\t\t\trestoreRevision( globalStylesRevision )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonCancel={ () =>\n\t\t\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges( false )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Any unsaved changes will be lost when you apply this revision.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ConfirmDialog>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<Spacer marginX={ 4 } data-testid=\"global-styles-no-revisions\">\n\t\t\t\t\t{\n\t\t\t\t\t\t// Adding an existing translation here in case these changes are shipped to WordPress 6.3.\n\t\t\t\t\t\t// Later we could update to something better, e.g., \"There are currently no style revisions.\".\n\t\t\t\t\t\t__( 'No results found.' )\n\t\t\t\t\t}\n\t\t\t\t</Spacer>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenRevisions;\n"],"mappings":"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"}
@@ -80,7 +80,6 @@ export default function useGlobalStylesRevisions() {
80
80
  id: 'unsaved',
81
81
  styles: userConfig?.styles,
82
82
  settings: userConfig?.settings,
83
- behaviors: userConfig?.behaviors,
84
83
  author: {
85
84
  name: currentUser?.name,
86
85
  avatar_urls: currentUser?.avatar_urls
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","store","coreStore","useContext","useMemo","privateApis","blockEditorPrivateApis","unlock","SITE_EDITOR_AUTHORS_QUERY","per_page","_fields","context","capabilities","EMPTY_ARRAY","GlobalStylesContext","useGlobalStylesRevisions","user","userConfig","authors","currentUser","isDirty","revisions","isLoadingGlobalStylesRevisions","select","__experimentalGetDirtyEntityRecords","getCurrentUser","getUsers","getCurrentThemeGlobalStylesRevisions","isResolving","dirtyEntityRecords","_currentUser","_isDirty","length","globalStylesRevisions","_authors","_modifiedRevisions","hasUnsavedChanges","isLoading","map","revision","author","find","id","isLatest","Object","keys","unsavedRevision","styles","settings","behaviors","name","avatar_urls","modified","Date","unshift","push"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/use-global-styles-revisions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useContext, useMemo } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst SITE_EDITOR_AUTHORS_QUERY = {\n\tper_page: -1,\n\t_fields: 'id,name,avatar_urls',\n\tcontext: 'view',\n\tcapabilities: [ 'edit_theme_options' ],\n};\nconst EMPTY_ARRAY = [];\nconst { GlobalStylesContext } = unlock( blockEditorPrivateApis );\nexport default function useGlobalStylesRevisions() {\n\tconst { user: userConfig } = useContext( GlobalStylesContext );\n\tconst {\n\t\tauthors,\n\t\tcurrentUser,\n\t\tisDirty,\n\t\trevisions,\n\t\tisLoadingGlobalStylesRevisions,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\tgetCurrentUser,\n\t\t\tgetUsers,\n\t\t\tgetCurrentThemeGlobalStylesRevisions,\n\t\t\tisResolving,\n\t\t} = select( coreStore );\n\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\tconst _currentUser = getCurrentUser();\n\t\tconst _isDirty = dirtyEntityRecords.length > 0;\n\t\tconst globalStylesRevisions =\n\t\t\tgetCurrentThemeGlobalStylesRevisions() || EMPTY_ARRAY;\n\t\tconst _authors = getUsers( SITE_EDITOR_AUTHORS_QUERY ) || EMPTY_ARRAY;\n\n\t\treturn {\n\t\t\tauthors: _authors,\n\t\t\tcurrentUser: _currentUser,\n\t\t\tisDirty: _isDirty,\n\t\t\trevisions: globalStylesRevisions,\n\t\t\tisLoadingGlobalStylesRevisions: isResolving(\n\t\t\t\t'getCurrentThemeGlobalStylesRevisions'\n\t\t\t),\n\t\t};\n\t}, [] );\n\treturn useMemo( () => {\n\t\tlet _modifiedRevisions = [];\n\t\tif ( ! authors.length || isLoadingGlobalStylesRevisions ) {\n\t\t\treturn {\n\t\t\t\trevisions: _modifiedRevisions,\n\t\t\t\thasUnsavedChanges: isDirty,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\t}\n\n\t\t// Adds author details to each revision.\n\t\t_modifiedRevisions = revisions.map( ( revision ) => {\n\t\t\treturn {\n\t\t\t\t...revision,\n\t\t\t\tauthor: authors.find(\n\t\t\t\t\t( author ) => author.id === revision.author\n\t\t\t\t),\n\t\t\t};\n\t\t} );\n\n\t\tif ( _modifiedRevisions.length ) {\n\t\t\t// Flags the most current saved revision.\n\t\t\tif ( _modifiedRevisions[ 0 ].id !== 'unsaved' ) {\n\t\t\t\t_modifiedRevisions[ 0 ].isLatest = true;\n\t\t\t}\n\n\t\t\t// Adds an item for unsaved changes.\n\t\t\tif (\n\t\t\t\tisDirty &&\n\t\t\t\tuserConfig &&\n\t\t\t\tObject.keys( userConfig ).length > 0 &&\n\t\t\t\tcurrentUser\n\t\t\t) {\n\t\t\t\tconst unsavedRevision = {\n\t\t\t\t\tid: 'unsaved',\n\t\t\t\t\tstyles: userConfig?.styles,\n\t\t\t\t\tsettings: userConfig?.settings,\n\t\t\t\t\tbehaviors: userConfig?.behaviors,\n\t\t\t\t\tauthor: {\n\t\t\t\t\t\tname: currentUser?.name,\n\t\t\t\t\t\tavatar_urls: currentUser?.avatar_urls,\n\t\t\t\t\t},\n\t\t\t\t\tmodified: new Date(),\n\t\t\t\t};\n\n\t\t\t\t_modifiedRevisions.unshift( unsavedRevision );\n\t\t\t}\n\n\t\t\t_modifiedRevisions.push( {\n\t\t\t\tid: 'parent',\n\t\t\t\tstyles: {},\n\t\t\t\tsettings: {},\n\t\t\t} );\n\t\t}\n\n\t\treturn {\n\t\t\trevisions: _modifiedRevisions,\n\t\t\thasUnsavedChanges: isDirty,\n\t\t\tisLoading: false,\n\t\t};\n\t}, [\n\t\tisDirty,\n\t\trevisions,\n\t\tcurrentUser,\n\t\tauthors,\n\t\tuserConfig,\n\t\tisLoadingGlobalStylesRevisions,\n\t] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,UAAU,EAAEC,OAAO,QAAQ,oBAAoB;AACxD,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,MAAM,QAAQ,sBAAsB;AAE7C,MAAMC,yBAAyB,GAAG;EACjCC,QAAQ,EAAE,CAAC,CAAC;EACZC,OAAO,EAAE,qBAAqB;EAC9BC,OAAO,EAAE,MAAM;EACfC,YAAY,EAAE,CAAE,oBAAoB;AACrC,CAAC;AACD,MAAMC,WAAW,GAAG,EAAE;AACtB,MAAM;EAAEC;AAAoB,CAAC,GAAGP,MAAM,CAAED,sBAAuB,CAAC;AAChE,eAAe,SAASS,wBAAwBA,CAAA,EAAG;EAClD,MAAM;IAAEC,IAAI,EAAEC;EAAW,CAAC,GAAGd,UAAU,CAAEW,mBAAoB,CAAC;EAC9D,MAAM;IACLI,OAAO;IACPC,WAAW;IACXC,OAAO;IACPC,SAAS;IACTC;EACD,CAAC,GAAGtB,SAAS,CAAIuB,MAAM,IAAM;IAC5B,MAAM;MACLC,mCAAmC;MACnCC,cAAc;MACdC,QAAQ;MACRC,oCAAoC;MACpCC;IACD,CAAC,GAAGL,MAAM,CAAErB,SAAU,CAAC;IACvB,MAAM2B,kBAAkB,GAAGL,mCAAmC,CAAC,CAAC;IAChE,MAAMM,YAAY,GAAGL,cAAc,CAAC,CAAC;IACrC,MAAMM,QAAQ,GAAGF,kBAAkB,CAACG,MAAM,GAAG,CAAC;IAC9C,MAAMC,qBAAqB,GAC1BN,oCAAoC,CAAC,CAAC,IAAId,WAAW;IACtD,MAAMqB,QAAQ,GAAGR,QAAQ,CAAElB,yBAA0B,CAAC,IAAIK,WAAW;IAErE,OAAO;MACNK,OAAO,EAAEgB,QAAQ;MACjBf,WAAW,EAAEW,YAAY;MACzBV,OAAO,EAAEW,QAAQ;MACjBV,SAAS,EAAEY,qBAAqB;MAChCX,8BAA8B,EAAEM,WAAW,CAC1C,sCACD;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,OAAOxB,OAAO,CAAE,MAAM;IACrB,IAAI+B,kBAAkB,GAAG,EAAE;IAC3B,IAAK,CAAEjB,OAAO,CAACc,MAAM,IAAIV,8BAA8B,EAAG;MACzD,OAAO;QACND,SAAS,EAAEc,kBAAkB;QAC7BC,iBAAiB,EAAEhB,OAAO;QAC1BiB,SAAS,EAAE;MACZ,CAAC;IACF;;IAEA;IACAF,kBAAkB,GAAGd,SAAS,CAACiB,GAAG,CAAIC,QAAQ,IAAM;MACnD,OAAO;QACN,GAAGA,QAAQ;QACXC,MAAM,EAAEtB,OAAO,CAACuB,IAAI,CACjBD,MAAM,IAAMA,MAAM,CAACE,EAAE,KAAKH,QAAQ,CAACC,MACtC;MACD,CAAC;IACF,CAAE,CAAC;IAEH,IAAKL,kBAAkB,CAACH,MAAM,EAAG;MAChC;MACA,IAAKG,kBAAkB,CAAE,CAAC,CAAE,CAACO,EAAE,KAAK,SAAS,EAAG;QAC/CP,kBAAkB,CAAE,CAAC,CAAE,CAACQ,QAAQ,GAAG,IAAI;MACxC;;MAEA;MACA,IACCvB,OAAO,IACPH,UAAU,IACV2B,MAAM,CAACC,IAAI,CAAE5B,UAAW,CAAC,CAACe,MAAM,GAAG,CAAC,IACpCb,WAAW,EACV;QACD,MAAM2B,eAAe,GAAG;UACvBJ,EAAE,EAAE,SAAS;UACbK,MAAM,EAAE9B,UAAU,EAAE8B,MAAM;UAC1BC,QAAQ,EAAE/B,UAAU,EAAE+B,QAAQ;UAC9BC,SAAS,EAAEhC,UAAU,EAAEgC,SAAS;UAChCT,MAAM,EAAE;YACPU,IAAI,EAAE/B,WAAW,EAAE+B,IAAI;YACvBC,WAAW,EAAEhC,WAAW,EAAEgC;UAC3B,CAAC;UACDC,QAAQ,EAAE,IAAIC,IAAI,CAAC;QACpB,CAAC;QAEDlB,kBAAkB,CAACmB,OAAO,CAAER,eAAgB,CAAC;MAC9C;MAEAX,kBAAkB,CAACoB,IAAI,CAAE;QACxBb,EAAE,EAAE,QAAQ;QACZK,MAAM,EAAE,CAAC,CAAC;QACVC,QAAQ,EAAE,CAAC;MACZ,CAAE,CAAC;IACJ;IAEA,OAAO;MACN3B,SAAS,EAAEc,kBAAkB;MAC7BC,iBAAiB,EAAEhB,OAAO;MAC1BiB,SAAS,EAAE;IACZ,CAAC;EACF,CAAC,EAAE,CACFjB,OAAO,EACPC,SAAS,EACTF,WAAW,EACXD,OAAO,EACPD,UAAU,EACVK,8BAA8B,CAC7B,CAAC;AACJ"}
1
+ {"version":3,"names":["useSelect","store","coreStore","useContext","useMemo","privateApis","blockEditorPrivateApis","unlock","SITE_EDITOR_AUTHORS_QUERY","per_page","_fields","context","capabilities","EMPTY_ARRAY","GlobalStylesContext","useGlobalStylesRevisions","user","userConfig","authors","currentUser","isDirty","revisions","isLoadingGlobalStylesRevisions","select","__experimentalGetDirtyEntityRecords","getCurrentUser","getUsers","getCurrentThemeGlobalStylesRevisions","isResolving","dirtyEntityRecords","_currentUser","_isDirty","length","globalStylesRevisions","_authors","_modifiedRevisions","hasUnsavedChanges","isLoading","map","revision","author","find","id","isLatest","Object","keys","unsavedRevision","styles","settings","name","avatar_urls","modified","Date","unshift","push"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/use-global-styles-revisions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useContext, useMemo } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst SITE_EDITOR_AUTHORS_QUERY = {\n\tper_page: -1,\n\t_fields: 'id,name,avatar_urls',\n\tcontext: 'view',\n\tcapabilities: [ 'edit_theme_options' ],\n};\nconst EMPTY_ARRAY = [];\nconst { GlobalStylesContext } = unlock( blockEditorPrivateApis );\nexport default function useGlobalStylesRevisions() {\n\tconst { user: userConfig } = useContext( GlobalStylesContext );\n\tconst {\n\t\tauthors,\n\t\tcurrentUser,\n\t\tisDirty,\n\t\trevisions,\n\t\tisLoadingGlobalStylesRevisions,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\tgetCurrentUser,\n\t\t\tgetUsers,\n\t\t\tgetCurrentThemeGlobalStylesRevisions,\n\t\t\tisResolving,\n\t\t} = select( coreStore );\n\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\tconst _currentUser = getCurrentUser();\n\t\tconst _isDirty = dirtyEntityRecords.length > 0;\n\t\tconst globalStylesRevisions =\n\t\t\tgetCurrentThemeGlobalStylesRevisions() || EMPTY_ARRAY;\n\t\tconst _authors = getUsers( SITE_EDITOR_AUTHORS_QUERY ) || EMPTY_ARRAY;\n\n\t\treturn {\n\t\t\tauthors: _authors,\n\t\t\tcurrentUser: _currentUser,\n\t\t\tisDirty: _isDirty,\n\t\t\trevisions: globalStylesRevisions,\n\t\t\tisLoadingGlobalStylesRevisions: isResolving(\n\t\t\t\t'getCurrentThemeGlobalStylesRevisions'\n\t\t\t),\n\t\t};\n\t}, [] );\n\treturn useMemo( () => {\n\t\tlet _modifiedRevisions = [];\n\t\tif ( ! authors.length || isLoadingGlobalStylesRevisions ) {\n\t\t\treturn {\n\t\t\t\trevisions: _modifiedRevisions,\n\t\t\t\thasUnsavedChanges: isDirty,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\t}\n\n\t\t// Adds author details to each revision.\n\t\t_modifiedRevisions = revisions.map( ( revision ) => {\n\t\t\treturn {\n\t\t\t\t...revision,\n\t\t\t\tauthor: authors.find(\n\t\t\t\t\t( author ) => author.id === revision.author\n\t\t\t\t),\n\t\t\t};\n\t\t} );\n\n\t\tif ( _modifiedRevisions.length ) {\n\t\t\t// Flags the most current saved revision.\n\t\t\tif ( _modifiedRevisions[ 0 ].id !== 'unsaved' ) {\n\t\t\t\t_modifiedRevisions[ 0 ].isLatest = true;\n\t\t\t}\n\n\t\t\t// Adds an item for unsaved changes.\n\t\t\tif (\n\t\t\t\tisDirty &&\n\t\t\t\tuserConfig &&\n\t\t\t\tObject.keys( userConfig ).length > 0 &&\n\t\t\t\tcurrentUser\n\t\t\t) {\n\t\t\t\tconst unsavedRevision = {\n\t\t\t\t\tid: 'unsaved',\n\t\t\t\t\tstyles: userConfig?.styles,\n\t\t\t\t\tsettings: userConfig?.settings,\n\t\t\t\t\tauthor: {\n\t\t\t\t\t\tname: currentUser?.name,\n\t\t\t\t\t\tavatar_urls: currentUser?.avatar_urls,\n\t\t\t\t\t},\n\t\t\t\t\tmodified: new Date(),\n\t\t\t\t};\n\n\t\t\t\t_modifiedRevisions.unshift( unsavedRevision );\n\t\t\t}\n\n\t\t\t_modifiedRevisions.push( {\n\t\t\t\tid: 'parent',\n\t\t\t\tstyles: {},\n\t\t\t\tsettings: {},\n\t\t\t} );\n\t\t}\n\n\t\treturn {\n\t\t\trevisions: _modifiedRevisions,\n\t\t\thasUnsavedChanges: isDirty,\n\t\t\tisLoading: false,\n\t\t};\n\t}, [\n\t\tisDirty,\n\t\trevisions,\n\t\tcurrentUser,\n\t\tauthors,\n\t\tuserConfig,\n\t\tisLoadingGlobalStylesRevisions,\n\t] );\n}\n"],"mappings":"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"}
@@ -2,92 +2,24 @@ import { createElement, Fragment } from "@wordpress/element";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
5
- import { __, sprintf } from '@wordpress/i18n';
6
- import { __experimentalItemGroup as ItemGroup, __experimentalVStack as VStack, __experimentalHStack as HStack, FlexItem } from '@wordpress/components';
7
- import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
5
+ import { __ } from '@wordpress/i18n';
6
+ import { __experimentalVStack as VStack } from '@wordpress/components';
8
7
 
9
8
  /**
10
9
  * Internal dependencies
11
10
  */
11
+ import TypographyElements from './typogrphy-elements';
12
+ import FontFamilies from './font-families';
12
13
  import ScreenHeader from './header';
13
- import { NavigationButtonAsItem } from './navigation-button';
14
- import Subtitle from './subtitle';
15
- import { unlock } from '../../lock-unlock';
16
- const {
17
- useGlobalStyle
18
- } = unlock(blockEditorPrivateApis);
19
- function Item({
20
- parentMenu,
21
- element,
22
- label
23
- }) {
24
- const prefix = element === 'text' || !element ? '' : `elements.${element}.`;
25
- const extraStyles = element === 'link' ? {
26
- textDecoration: 'underline'
27
- } : {};
28
- const [fontFamily] = useGlobalStyle(prefix + 'typography.fontFamily');
29
- const [fontStyle] = useGlobalStyle(prefix + 'typography.fontStyle');
30
- const [fontWeight] = useGlobalStyle(prefix + 'typography.fontWeight');
31
- const [letterSpacing] = useGlobalStyle(prefix + 'typography.letterSpacing');
32
- const [backgroundColor] = useGlobalStyle(prefix + 'color.background');
33
- const [gradientValue] = useGlobalStyle(prefix + 'color.gradient');
34
- const [color] = useGlobalStyle(prefix + 'color.text');
35
- const navigationButtonLabel = sprintf(
36
- // translators: %s: is a subset of Typography, e.g., 'text' or 'links'.
37
- __('Typography %s styles'), label);
38
- return createElement(NavigationButtonAsItem, {
39
- path: parentMenu + '/typography/' + element,
40
- "aria-label": navigationButtonLabel
41
- }, createElement(HStack, {
42
- justify: "flex-start"
43
- }, createElement(FlexItem, {
44
- className: "edit-site-global-styles-screen-typography__indicator",
45
- style: {
46
- fontFamily: fontFamily !== null && fontFamily !== void 0 ? fontFamily : 'serif',
47
- background: gradientValue !== null && gradientValue !== void 0 ? gradientValue : backgroundColor,
48
- color,
49
- fontStyle,
50
- fontWeight,
51
- letterSpacing,
52
- ...extraStyles
53
- }
54
- }, __('Aa')), createElement(FlexItem, null, label)));
55
- }
56
14
  function ScreenTypography() {
57
- const parentMenu = '';
58
15
  return createElement(Fragment, null, createElement(ScreenHeader, {
59
16
  title: __('Typography'),
60
17
  description: __('Manage the typography settings for different elements.')
61
18
  }), createElement("div", {
62
19
  className: "edit-site-global-styles-screen-typography"
63
20
  }, createElement(VStack, {
64
- spacing: 3
65
- }, createElement(Subtitle, {
66
- level: 3
67
- }, __('Elements')), createElement(ItemGroup, {
68
- isBordered: true,
69
- isSeparated: true
70
- }, createElement(Item, {
71
- parentMenu: parentMenu,
72
- element: "text",
73
- label: __('Text')
74
- }), createElement(Item, {
75
- parentMenu: parentMenu,
76
- element: "link",
77
- label: __('Links')
78
- }), createElement(Item, {
79
- parentMenu: parentMenu,
80
- element: "heading",
81
- label: __('Headings')
82
- }), createElement(Item, {
83
- parentMenu: parentMenu,
84
- element: "caption",
85
- label: __('Captions')
86
- }), createElement(Item, {
87
- parentMenu: parentMenu,
88
- element: "button",
89
- label: __('Buttons')
90
- })))));
21
+ spacing: 6
22
+ }, window.__experimentalFontLibrary && createElement(FontFamilies, null), createElement(TypographyElements, null))));
91
23
  }
92
24
  export default ScreenTypography;
93
25
  //# sourceMappingURL=screen-typography.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__","sprintf","__experimentalItemGroup","ItemGroup","__experimentalVStack","VStack","__experimentalHStack","HStack","FlexItem","privateApis","blockEditorPrivateApis","ScreenHeader","NavigationButtonAsItem","Subtitle","unlock","useGlobalStyle","Item","parentMenu","element","label","prefix","extraStyles","textDecoration","fontFamily","fontStyle","fontWeight","letterSpacing","backgroundColor","gradientValue","color","navigationButtonLabel","createElement","path","justify","className","style","background","ScreenTypography","Fragment","title","description","spacing","level","isBordered","isSeparated"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-typography.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n\tFlexItem,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport { NavigationButtonAsItem } from './navigation-button';\nimport Subtitle from './subtitle';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\n\nfunction Item( { parentMenu, element, label } ) {\n\tconst prefix =\n\t\telement === 'text' || ! element ? '' : `elements.${ element }.`;\n\tconst extraStyles =\n\t\telement === 'link'\n\t\t\t? {\n\t\t\t\t\ttextDecoration: 'underline',\n\t\t\t }\n\t\t\t: {};\n\tconst [ fontFamily ] = useGlobalStyle( prefix + 'typography.fontFamily' );\n\tconst [ fontStyle ] = useGlobalStyle( prefix + 'typography.fontStyle' );\n\tconst [ fontWeight ] = useGlobalStyle( prefix + 'typography.fontWeight' );\n\tconst [ letterSpacing ] = useGlobalStyle(\n\t\tprefix + 'typography.letterSpacing'\n\t);\n\tconst [ backgroundColor ] = useGlobalStyle( prefix + 'color.background' );\n\tconst [ gradientValue ] = useGlobalStyle( prefix + 'color.gradient' );\n\tconst [ color ] = useGlobalStyle( prefix + 'color.text' );\n\n\tconst navigationButtonLabel = sprintf(\n\t\t// translators: %s: is a subset of Typography, e.g., 'text' or 'links'.\n\t\t__( 'Typography %s styles' ),\n\t\tlabel\n\t);\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/typography/' + element }\n\t\t\taria-label={ navigationButtonLabel }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<FlexItem\n\t\t\t\t\tclassName=\"edit-site-global-styles-screen-typography__indicator\"\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tfontFamily: fontFamily ?? 'serif',\n\t\t\t\t\t\tbackground: gradientValue ?? backgroundColor,\n\t\t\t\t\t\tcolor,\n\t\t\t\t\t\tfontStyle,\n\t\t\t\t\t\tfontWeight,\n\t\t\t\t\t\tletterSpacing,\n\t\t\t\t\t\t...extraStyles,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Aa' ) }\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem>{ label }</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction ScreenTypography() {\n\tconst parentMenu = '';\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Typography' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Manage the typography settings for different elements.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<div className=\"edit-site-global-styles-screen-typography\">\n\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Elements' ) }</Subtitle>\n\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\telement=\"text\"\n\t\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\telement=\"link\"\n\t\t\t\t\t\t\tlabel={ __( 'Links' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\telement=\"heading\"\n\t\t\t\t\t\t\tlabel={ __( 'Headings' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\telement=\"caption\"\n\t\t\t\t\t\t\tlabel={ __( 'Captions' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\telement=\"button\"\n\t\t\t\t\t\t\tlabel={ __( 'Buttons' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t</VStack>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ScreenTypography;\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","__experimentalVStack","VStack","TypographyElements","FontFamilies","ScreenHeader","ScreenTypography","createElement","Fragment","title","description","className","spacing","window","__experimentalFontLibrary"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-typography.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalVStack as VStack } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport TypographyElements from './typogrphy-elements';\nimport FontFamilies from './font-families';\nimport ScreenHeader from './header';\n\nfunction ScreenTypography() {\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Typography' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Manage the typography settings for different elements.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<div className=\"edit-site-global-styles-screen-typography\">\n\t\t\t\t<VStack spacing={ 6 }>\n\t\t\t\t\t{ window.__experimentalFontLibrary && <FontFamilies /> }\n\t\t\t\t\t<TypographyElements />\n\t\t\t\t</VStack>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ScreenTypography;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,oBAAoB,IAAIC,MAAM,QAAQ,uBAAuB;;AAEtE;AACA;AACA;AACA,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,OAAOC,YAAY,MAAM,iBAAiB;AAC1C,OAAOC,YAAY,MAAM,UAAU;AAEnC,SAASC,gBAAgBA,CAAA,EAAG;EAC3B,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACF,YAAY;IACZI,KAAK,EAAGT,EAAE,CAAE,YAAa,CAAG;IAC5BU,WAAW,EAAGV,EAAE,CACf,wDACD;EAAG,CACH,CAAC,EACFO,aAAA;IAAKI,SAAS,EAAC;EAA2C,GACzDJ,aAAA,CAACL,MAAM;IAACU,OAAO,EAAG;EAAG,GAClBC,MAAM,CAACC,yBAAyB,IAAIP,aAAA,CAACH,YAAY,MAAE,CAAC,EACtDG,aAAA,CAACJ,kBAAkB,MAAE,CACd,CACJ,CACJ,CAAC;AAEL;AAEA,eAAeG,gBAAgB"}
@@ -98,15 +98,13 @@ export default function StyleVariationsContainer() {
98
98
  return [{
99
99
  title: __('Default'),
100
100
  settings: {},
101
- styles: {},
102
- behaviors: {}
101
+ styles: {}
103
102
  }, ...(variations !== null && variations !== void 0 ? variations : []).map(variation => {
104
- var _variation$settings2, _variation$styles2, _variation$behaviors;
103
+ var _variation$settings2, _variation$styles2;
105
104
  return {
106
105
  ...variation,
107
106
  settings: (_variation$settings2 = variation.settings) !== null && _variation$settings2 !== void 0 ? _variation$settings2 : {},
108
- styles: (_variation$styles2 = variation.styles) !== null && _variation$styles2 !== void 0 ? _variation$styles2 : {},
109
- behaviors: (_variation$behaviors = variation.behaviors) !== null && _variation$behaviors !== void 0 ? _variation$behaviors : {}
107
+ styles: (_variation$styles2 = variation.styles) !== null && _variation$styles2 !== void 0 ? _variation$styles2 : {}
110
108
  };
111
109
  })];
112
110
  }, [variations]);
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","store","coreStore","useSelect","useMemo","useContext","useState","ENTER","__experimentalGrid","Grid","__","sprintf","privateApis","blockEditorPrivateApis","mergeBaseAndUserConfigs","StylesPreview","unlock","GlobalStylesContext","areGlobalStyleConfigsEqual","Variation","variation","isFocused","setIsFocused","base","user","setUserConfig","context","_variation$settings","_variation$styles","settings","styles","merged","selectVariation","selectOnEnter","event","keyCode","preventDefault","isActive","label","title","description","createElement","Provider","value","className","role","onClick","onKeyDown","tabIndex","onFocus","onBlur","withHoverView","StyleVariationsContainer","variations","select","__experimentalGetCurrentThemeGlobalStylesVariations","withEmptyVariation","behaviors","map","_variation$settings2","_variation$styles2","_variation$behaviors","columns","index","key"],"sources":["@wordpress/edit-site/src/components/global-styles/style-variations-container.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo, useContext, useState } from '@wordpress/element';\nimport { ENTER } from '@wordpress/keycodes';\nimport { __experimentalGrid as Grid } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { mergeBaseAndUserConfigs } from './global-styles-provider';\nimport StylesPreview from './preview';\nimport { unlock } from '../../lock-unlock';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction Variation( { variation } ) {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\tconst { base, user, setUserConfig } = useContext( GlobalStylesContext );\n\tconst context = useMemo( () => {\n\t\treturn {\n\t\t\tuser: {\n\t\t\t\tsettings: variation.settings ?? {},\n\t\t\t\tstyles: variation.styles ?? {},\n\t\t\t},\n\t\t\tbase,\n\t\t\tmerged: mergeBaseAndUserConfigs( base, variation ),\n\t\t\tsetUserConfig: () => {},\n\t\t};\n\t}, [ variation, base ] );\n\n\tconst selectVariation = () => {\n\t\tsetUserConfig( () => {\n\t\t\treturn {\n\t\t\t\tsettings: variation.settings,\n\t\t\t\tstyles: variation.styles,\n\t\t\t};\n\t\t} );\n\t};\n\n\tconst selectOnEnter = ( event ) => {\n\t\tif ( event.keyCode === ENTER ) {\n\t\t\tevent.preventDefault();\n\t\t\tselectVariation();\n\t\t}\n\t};\n\n\tconst isActive = useMemo( () => {\n\t\treturn areGlobalStyleConfigsEqual( user, variation );\n\t}, [ user, variation ] );\n\n\tlet label = variation?.title;\n\tif ( variation?.description ) {\n\t\tlabel = sprintf(\n\t\t\t/* translators: %1$s: variation title. %2$s variation description. */\n\t\t\t__( '%1$s (%2$s)' ),\n\t\t\tvariation?.title,\n\t\t\tvariation?.description\n\t\t);\n\t}\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ context }>\n\t\t\t<div\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'edit-site-global-styles-variations_item',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-active': isActive,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\trole=\"button\"\n\t\t\t\tonClick={ selectVariation }\n\t\t\t\tonKeyDown={ selectOnEnter }\n\t\t\t\ttabIndex=\"0\"\n\t\t\t\taria-label={ label }\n\t\t\t\taria-current={ isActive }\n\t\t\t\tonFocus={ () => setIsFocused( true ) }\n\t\t\t\tonBlur={ () => setIsFocused( false ) }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-global-styles-variations_item-preview\">\n\t\t\t\t\t<StylesPreview\n\t\t\t\t\t\tlabel={ variation?.title }\n\t\t\t\t\t\tisFocused={ isFocused }\n\t\t\t\t\t\twithHoverView\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n\nexport default function StyleVariationsContainer() {\n\tconst variations = useSelect( ( select ) => {\n\t\treturn select(\n\t\t\tcoreStore\n\t\t).__experimentalGetCurrentThemeGlobalStylesVariations();\n\t}, [] );\n\n\tconst withEmptyVariation = useMemo( () => {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttitle: __( 'Default' ),\n\t\t\t\tsettings: {},\n\t\t\t\tstyles: {},\n\t\t\t\tbehaviors: {},\n\t\t\t},\n\t\t\t...( variations ?? [] ).map( ( variation ) => ( {\n\t\t\t\t...variation,\n\t\t\t\tsettings: variation.settings ?? {},\n\t\t\t\tstyles: variation.styles ?? {},\n\t\t\t\tbehaviors: variation.behaviors ?? {},\n\t\t\t} ) ),\n\t\t];\n\t}, [ variations ] );\n\n\treturn (\n\t\t<Grid\n\t\t\tcolumns={ 2 }\n\t\t\tclassName=\"edit-site-global-styles-style-variations-container\"\n\t\t>\n\t\t\t{ withEmptyVariation.map( ( variation, index ) => (\n\t\t\t\t<Variation key={ index } variation={ variation } />\n\t\t\t) ) }\n\t\t</Grid>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","store","coreStore","useSelect","useMemo","useContext","useState","ENTER","__experimentalGrid","Grid","__","sprintf","privateApis","blockEditorPrivateApis","mergeBaseAndUserConfigs","StylesPreview","unlock","GlobalStylesContext","areGlobalStyleConfigsEqual","Variation","variation","isFocused","setIsFocused","base","user","setUserConfig","context","_variation$settings","_variation$styles","settings","styles","merged","selectVariation","selectOnEnter","event","keyCode","preventDefault","isActive","label","title","description","createElement","Provider","value","className","role","onClick","onKeyDown","tabIndex","onFocus","onBlur","withHoverView","StyleVariationsContainer","variations","select","__experimentalGetCurrentThemeGlobalStylesVariations","withEmptyVariation","map","_variation$settings2","_variation$styles2","columns","index","key"],"sources":["@wordpress/edit-site/src/components/global-styles/style-variations-container.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo, useContext, useState } from '@wordpress/element';\nimport { ENTER } from '@wordpress/keycodes';\nimport { __experimentalGrid as Grid } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { mergeBaseAndUserConfigs } from './global-styles-provider';\nimport StylesPreview from './preview';\nimport { unlock } from '../../lock-unlock';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction Variation( { variation } ) {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\tconst { base, user, setUserConfig } = useContext( GlobalStylesContext );\n\tconst context = useMemo( () => {\n\t\treturn {\n\t\t\tuser: {\n\t\t\t\tsettings: variation.settings ?? {},\n\t\t\t\tstyles: variation.styles ?? {},\n\t\t\t},\n\t\t\tbase,\n\t\t\tmerged: mergeBaseAndUserConfigs( base, variation ),\n\t\t\tsetUserConfig: () => {},\n\t\t};\n\t}, [ variation, base ] );\n\n\tconst selectVariation = () => {\n\t\tsetUserConfig( () => {\n\t\t\treturn {\n\t\t\t\tsettings: variation.settings,\n\t\t\t\tstyles: variation.styles,\n\t\t\t};\n\t\t} );\n\t};\n\n\tconst selectOnEnter = ( event ) => {\n\t\tif ( event.keyCode === ENTER ) {\n\t\t\tevent.preventDefault();\n\t\t\tselectVariation();\n\t\t}\n\t};\n\n\tconst isActive = useMemo( () => {\n\t\treturn areGlobalStyleConfigsEqual( user, variation );\n\t}, [ user, variation ] );\n\n\tlet label = variation?.title;\n\tif ( variation?.description ) {\n\t\tlabel = sprintf(\n\t\t\t/* translators: %1$s: variation title. %2$s variation description. */\n\t\t\t__( '%1$s (%2$s)' ),\n\t\t\tvariation?.title,\n\t\t\tvariation?.description\n\t\t);\n\t}\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ context }>\n\t\t\t<div\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'edit-site-global-styles-variations_item',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-active': isActive,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\trole=\"button\"\n\t\t\t\tonClick={ selectVariation }\n\t\t\t\tonKeyDown={ selectOnEnter }\n\t\t\t\ttabIndex=\"0\"\n\t\t\t\taria-label={ label }\n\t\t\t\taria-current={ isActive }\n\t\t\t\tonFocus={ () => setIsFocused( true ) }\n\t\t\t\tonBlur={ () => setIsFocused( false ) }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-global-styles-variations_item-preview\">\n\t\t\t\t\t<StylesPreview\n\t\t\t\t\t\tlabel={ variation?.title }\n\t\t\t\t\t\tisFocused={ isFocused }\n\t\t\t\t\t\twithHoverView\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n\nexport default function StyleVariationsContainer() {\n\tconst variations = useSelect( ( select ) => {\n\t\treturn select(\n\t\t\tcoreStore\n\t\t).__experimentalGetCurrentThemeGlobalStylesVariations();\n\t}, [] );\n\n\tconst withEmptyVariation = useMemo( () => {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttitle: __( 'Default' ),\n\t\t\t\tsettings: {},\n\t\t\t\tstyles: {},\n\t\t\t},\n\t\t\t...( variations ?? [] ).map( ( variation ) => ( {\n\t\t\t\t...variation,\n\t\t\t\tsettings: variation.settings ?? {},\n\t\t\t\tstyles: variation.styles ?? {},\n\t\t\t} ) ),\n\t\t];\n\t}, [ variations ] );\n\n\treturn (\n\t\t<Grid\n\t\t\tcolumns={ 2 }\n\t\t\tclassName=\"edit-site-global-styles-style-variations-container\"\n\t\t>\n\t\t\t{ withEmptyVariation.map( ( variation, index ) => (\n\t\t\t\t<Variation key={ index } variation={ variation } />\n\t\t\t) ) }\n\t\t</Grid>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,OAAO,EAAEC,UAAU,EAAEC,QAAQ,QAAQ,oBAAoB;AAClE,SAASC,KAAK,QAAQ,qBAAqB;AAC3C,SAASC,kBAAkB,IAAIC,IAAI,QAAQ,uBAAuB;AAClE,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,uBAAuB,QAAQ,0BAA0B;AAClE,OAAOC,aAAa,MAAM,WAAW;AACrC,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,MAAM;EAAEC,mBAAmB;EAAEC;AAA2B,CAAC,GAAGF,MAAM,CACjEH,sBACD,CAAC;AAED,SAASM,SAASA,CAAE;EAAEC;AAAU,CAAC,EAAG;EACnC,MAAM,CAAEC,SAAS,EAAEC,YAAY,CAAE,GAAGhB,QAAQ,CAAE,KAAM,CAAC;EACrD,MAAM;IAAEiB,IAAI;IAAEC,IAAI;IAAEC;EAAc,CAAC,GAAGpB,UAAU,CAAEY,mBAAoB,CAAC;EACvE,MAAMS,OAAO,GAAGtB,OAAO,CAAE,MAAM;IAAA,IAAAuB,mBAAA,EAAAC,iBAAA;IAC9B,OAAO;MACNJ,IAAI,EAAE;QACLK,QAAQ,GAAAF,mBAAA,GAAEP,SAAS,CAACS,QAAQ,cAAAF,mBAAA,cAAAA,mBAAA,GAAI,CAAC,CAAC;QAClCG,MAAM,GAAAF,iBAAA,GAAER,SAAS,CAACU,MAAM,cAAAF,iBAAA,cAAAA,iBAAA,GAAI,CAAC;MAC9B,CAAC;MACDL,IAAI;MACJQ,MAAM,EAAEjB,uBAAuB,CAAES,IAAI,EAAEH,SAAU,CAAC;MAClDK,aAAa,EAAEA,CAAA,KAAM,CAAC;IACvB,CAAC;EACF,CAAC,EAAE,CAAEL,SAAS,EAAEG,IAAI,CAAG,CAAC;EAExB,MAAMS,eAAe,GAAGA,CAAA,KAAM;IAC7BP,aAAa,CAAE,MAAM;MACpB,OAAO;QACNI,QAAQ,EAAET,SAAS,CAACS,QAAQ;QAC5BC,MAAM,EAAEV,SAAS,CAACU;MACnB,CAAC;IACF,CAAE,CAAC;EACJ,CAAC;EAED,MAAMG,aAAa,GAAKC,KAAK,IAAM;IAClC,IAAKA,KAAK,CAACC,OAAO,KAAK5B,KAAK,EAAG;MAC9B2B,KAAK,CAACE,cAAc,CAAC,CAAC;MACtBJ,eAAe,CAAC,CAAC;IAClB;EACD,CAAC;EAED,MAAMK,QAAQ,GAAGjC,OAAO,CAAE,MAAM;IAC/B,OAAOc,0BAA0B,CAAEM,IAAI,EAAEJ,SAAU,CAAC;EACrD,CAAC,EAAE,CAAEI,IAAI,EAAEJ,SAAS,CAAG,CAAC;EAExB,IAAIkB,KAAK,GAAGlB,SAAS,EAAEmB,KAAK;EAC5B,IAAKnB,SAAS,EAAEoB,WAAW,EAAG;IAC7BF,KAAK,GAAG3B,OAAO,EACd;IACAD,EAAE,CAAE,aAAc,CAAC,EACnBU,SAAS,EAAEmB,KAAK,EAChBnB,SAAS,EAAEoB,WACZ,CAAC;EACF;EAEA,OACCC,aAAA,CAACxB,mBAAmB,CAACyB,QAAQ;IAACC,KAAK,EAAGjB;EAAS,GAC9Ce,aAAA;IACCG,SAAS,EAAG5C,UAAU,CACrB,yCAAyC,EACzC;MACC,WAAW,EAAEqC;IACd,CACD,CAAG;IACHQ,IAAI,EAAC,QAAQ;IACbC,OAAO,EAAGd,eAAiB;IAC3Be,SAAS,EAAGd,aAAe;IAC3Be,QAAQ,EAAC,GAAG;IACZ,cAAaV,KAAO;IACpB,gBAAeD,QAAU;IACzBY,OAAO,EAAGA,CAAA,KAAM3B,YAAY,CAAE,IAAK,CAAG;IACtC4B,MAAM,EAAGA,CAAA,KAAM5B,YAAY,CAAE,KAAM;EAAG,GAEtCmB,aAAA;IAAKG,SAAS,EAAC;EAAiD,GAC/DH,aAAA,CAAC1B,aAAa;IACbuB,KAAK,EAAGlB,SAAS,EAAEmB,KAAO;IAC1BlB,SAAS,EAAGA,SAAW;IACvB8B,aAAa;EAAA,CACb,CACG,CACD,CACwB,CAAC;AAEjC;AAEA,eAAe,SAASC,wBAAwBA,CAAA,EAAG;EAClD,MAAMC,UAAU,GAAGlD,SAAS,CAAImD,MAAM,IAAM;IAC3C,OAAOA,MAAM,CACZpD,SACD,CAAC,CAACqD,mDAAmD,CAAC,CAAC;EACxD,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,kBAAkB,GAAGpD,OAAO,CAAE,MAAM;IACzC,OAAO,CACN;MACCmC,KAAK,EAAE7B,EAAE,CAAE,SAAU,CAAC;MACtBmB,QAAQ,EAAE,CAAC,CAAC;MACZC,MAAM,EAAE,CAAC;IACV,CAAC,EACD,GAAG,CAAEuB,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,EAAE,EAAGI,GAAG,CAAIrC,SAAS;MAAA,IAAAsC,oBAAA,EAAAC,kBAAA;MAAA,OAAQ;QAC/C,GAAGvC,SAAS;QACZS,QAAQ,GAAA6B,oBAAA,GAAEtC,SAAS,CAACS,QAAQ,cAAA6B,oBAAA,cAAAA,oBAAA,GAAI,CAAC,CAAC;QAClC5B,MAAM,GAAA6B,kBAAA,GAAEvC,SAAS,CAACU,MAAM,cAAA6B,kBAAA,cAAAA,kBAAA,GAAI,CAAC;MAC9B,CAAC;IAAA,CAAG,CAAC,CACL;EACF,CAAC,EAAE,CAAEN,UAAU,CAAG,CAAC;EAEnB,OACCZ,aAAA,CAAChC,IAAI;IACJmD,OAAO,EAAG,CAAG;IACbhB,SAAS,EAAC;EAAoD,GAE5DY,kBAAkB,CAACC,GAAG,CAAE,CAAErC,SAAS,EAAEyC,KAAK,KAC3CpB,aAAA,CAACtB,SAAS;IAAC2C,GAAG,EAAGD,KAAO;IAACzC,SAAS,EAAGA;EAAW,CAAE,CACjD,CACG,CAAC;AAET"}