@wordpress/edit-site 3.0.7 → 3.0.11

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 (380) hide show
  1. package/build/components/add-new-template/index.js +49 -0
  2. package/build/components/add-new-template/index.js.map +1 -0
  3. package/build/components/add-new-template/new-template-part.js +78 -0
  4. package/build/components/add-new-template/new-template-part.js.map +1 -0
  5. package/build/components/add-new-template/new-template.js +114 -0
  6. package/build/components/add-new-template/new-template.js.map +1 -0
  7. package/build/components/block-editor/block-inspector-button.js +4 -3
  8. package/build/components/block-editor/block-inspector-button.js.map +1 -1
  9. package/build/components/block-editor/index.js +12 -8
  10. package/build/components/block-editor/index.js.map +1 -1
  11. package/build/components/block-editor/resizable-editor.js +6 -5
  12. package/build/components/block-editor/resizable-editor.js.map +1 -1
  13. package/build/components/block-editor/resize-handle.js +6 -4
  14. package/build/components/block-editor/resize-handle.js.map +1 -1
  15. package/build/components/create-template-part-modal/index.js +115 -0
  16. package/build/components/create-template-part-modal/index.js.map +1 -0
  17. package/build/components/edit-template-part-menu-button/index.js +15 -11
  18. package/build/components/edit-template-part-menu-button/index.js.map +1 -1
  19. package/build/components/editor/index.js +25 -20
  20. package/build/components/editor/index.js.map +1 -1
  21. package/build/components/error-boundary/index.js +5 -4
  22. package/build/components/error-boundary/index.js.map +1 -1
  23. package/build/components/global-styles/border-panel.js +5 -4
  24. package/build/components/global-styles/border-panel.js.map +1 -1
  25. package/build/components/global-styles/color-palette-panel.js +33 -9
  26. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  27. package/build/components/global-styles/context-menu.js +5 -4
  28. package/build/components/global-styles/context-menu.js.map +1 -1
  29. package/build/components/global-styles/dimensions-panel.js +5 -4
  30. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  31. package/build/components/global-styles/global-styles-provider.js +11 -46
  32. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  33. package/build/components/global-styles/header.js +6 -5
  34. package/build/components/global-styles/header.js.map +1 -1
  35. package/build/components/global-styles/hooks.js +34 -30
  36. package/build/components/global-styles/hooks.js.map +1 -1
  37. package/build/components/global-styles/index.js +6 -6
  38. package/build/components/global-styles/navigation-button.js +8 -7
  39. package/build/components/global-styles/navigation-button.js.map +1 -1
  40. package/build/components/global-styles/palette.js +13 -9
  41. package/build/components/global-styles/palette.js.map +1 -1
  42. package/build/components/global-styles/screen-background-color.js +4 -3
  43. package/build/components/global-styles/screen-background-color.js.map +1 -1
  44. package/build/components/global-styles/screen-block-list.js +13 -4
  45. package/build/components/global-styles/screen-block-list.js.map +1 -1
  46. package/build/components/global-styles/screen-block.js +4 -3
  47. package/build/components/global-styles/screen-block.js.map +1 -1
  48. package/build/components/global-styles/screen-color-palette.js +4 -3
  49. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  50. package/build/components/global-styles/screen-colors.js +19 -15
  51. package/build/components/global-styles/screen-colors.js.map +1 -1
  52. package/build/components/global-styles/screen-layout.js +8 -5
  53. package/build/components/global-styles/screen-layout.js.map +1 -1
  54. package/build/components/global-styles/screen-link-color.js +4 -3
  55. package/build/components/global-styles/screen-link-color.js.map +1 -1
  56. package/build/components/global-styles/screen-text-color.js +4 -3
  57. package/build/components/global-styles/screen-text-color.js.map +1 -1
  58. package/build/components/global-styles/screen-typography.js +4 -3
  59. package/build/components/global-styles/screen-typography.js.map +1 -1
  60. package/build/components/global-styles/subtitle.js +4 -3
  61. package/build/components/global-styles/subtitle.js.map +1 -1
  62. package/build/components/global-styles/typography-panel.js +10 -8
  63. package/build/components/global-styles/typography-panel.js.map +1 -1
  64. package/build/components/global-styles/ui.js +4 -3
  65. package/build/components/global-styles/ui.js.map +1 -1
  66. package/build/components/global-styles/use-global-styles-output.js +61 -44
  67. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  68. package/build/components/global-styles/utils.js +4 -3
  69. package/build/components/global-styles/utils.js.map +1 -1
  70. package/build/components/header/document-actions/index.js +23 -19
  71. package/build/components/header/document-actions/index.js.map +1 -1
  72. package/build/components/header/feature-toggle/index.js +9 -7
  73. package/build/components/header/feature-toggle/index.js.map +1 -1
  74. package/build/components/header/index.js +15 -15
  75. package/build/components/header/index.js.map +1 -1
  76. package/build/components/header/more-menu/index.js +30 -27
  77. package/build/components/header/more-menu/index.js.map +1 -1
  78. package/build/components/header/tools-more-menu-group/index.js +10 -7
  79. package/build/components/header/tools-more-menu-group/index.js.map +1 -1
  80. package/build/components/keyboard-shortcuts/index.js +30 -3
  81. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  82. package/build/components/list/header.js +50 -0
  83. package/build/components/list/header.js.map +1 -0
  84. package/build/components/list/index.js +87 -0
  85. package/build/components/list/index.js.map +1 -0
  86. package/build/components/list/table.js +127 -0
  87. package/build/components/list/table.js.map +1 -0
  88. package/build/components/list/use-register-shortcuts.js +52 -0
  89. package/build/components/list/use-register-shortcuts.js.map +1 -0
  90. package/build/components/main-dashboard-button/index.js +4 -3
  91. package/build/components/main-dashboard-button/index.js.map +1 -1
  92. package/build/components/navigate-to-link/index.js +7 -6
  93. package/build/components/navigate-to-link/index.js.map +1 -1
  94. package/build/components/navigation-sidebar/index.js +25 -10
  95. package/build/components/navigation-sidebar/index.js.map +1 -1
  96. package/build/components/navigation-sidebar/navigation-panel/constants.js +1 -1
  97. package/build/components/navigation-sidebar/navigation-panel/content-navigation-item.js +4 -3
  98. package/build/components/navigation-sidebar/navigation-panel/content-navigation-item.js.map +1 -1
  99. package/build/components/navigation-sidebar/navigation-panel/index.js +37 -55
  100. package/build/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
  101. package/build/components/navigation-sidebar/navigation-panel/menus/template-parts-sub.js +6 -5
  102. package/build/components/navigation-sidebar/navigation-panel/menus/template-parts-sub.js.map +1 -1
  103. package/build/components/navigation-sidebar/navigation-panel/menus/template-parts.js +26 -20
  104. package/build/components/navigation-sidebar/navigation-panel/menus/template-parts.js.map +1 -1
  105. package/build/components/navigation-sidebar/navigation-panel/menus/templates-sub.js +17 -10
  106. package/build/components/navigation-sidebar/navigation-panel/menus/templates-sub.js.map +1 -1
  107. package/build/components/navigation-sidebar/navigation-panel/menus/templates.js +11 -5
  108. package/build/components/navigation-sidebar/navigation-panel/menus/templates.js.map +1 -1
  109. package/build/components/navigation-sidebar/navigation-panel/navigation-entity-items.js +13 -11
  110. package/build/components/navigation-sidebar/navigation-panel/navigation-entity-items.js.map +1 -1
  111. package/build/components/navigation-sidebar/navigation-panel/new-template-dropdown.js +24 -18
  112. package/build/components/navigation-sidebar/navigation-panel/new-template-dropdown.js.map +1 -1
  113. package/build/components/navigation-sidebar/navigation-panel/search-results.js +14 -11
  114. package/build/components/navigation-sidebar/navigation-panel/search-results.js.map +1 -1
  115. package/build/components/navigation-sidebar/navigation-panel/template-hierarchy.js +8 -5
  116. package/build/components/navigation-sidebar/navigation-panel/template-hierarchy.js.map +1 -1
  117. package/build/components/navigation-sidebar/navigation-panel/template-navigation-item.js +4 -3
  118. package/build/components/navigation-sidebar/navigation-panel/template-navigation-item.js.map +1 -1
  119. package/build/components/navigation-sidebar/navigation-panel/template-preview.js +5 -4
  120. package/build/components/navigation-sidebar/navigation-panel/template-preview.js.map +1 -1
  121. package/build/components/navigation-sidebar/navigation-toggle/index.js +7 -27
  122. package/build/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
  123. package/build/components/save-button/index.js +5 -4
  124. package/build/components/save-button/index.js.map +1 -1
  125. package/build/components/sidebar/constants.js +1 -1
  126. package/build/components/sidebar/default-sidebar.js +11 -10
  127. package/build/components/sidebar/default-sidebar.js.map +1 -1
  128. package/build/components/sidebar/plugin-sidebar/index.js +5 -4
  129. package/build/components/sidebar/plugin-sidebar/index.js.map +1 -1
  130. package/build/components/sidebar/settings-header/index.js +4 -3
  131. package/build/components/sidebar/settings-header/index.js.map +1 -1
  132. package/build/components/sidebar/template-card/template-areas.js +17 -13
  133. package/build/components/sidebar/template-card/template-areas.js.map +1 -1
  134. package/build/components/template-details/index.js +14 -9
  135. package/build/components/template-details/index.js.map +1 -1
  136. package/build/components/template-details/template-areas.js +38 -29
  137. package/build/components/template-details/template-areas.js.map +1 -1
  138. package/build/components/template-part-converter/convert-to-regular.js +15 -11
  139. package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
  140. package/build/components/template-part-converter/convert-to-template-part.js +29 -86
  141. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  142. package/build/components/welcome-guide/editor.js +58 -0
  143. package/build/components/welcome-guide/editor.js.map +1 -0
  144. package/build/components/welcome-guide/image.js +27 -0
  145. package/build/components/welcome-guide/image.js.map +1 -0
  146. package/build/components/welcome-guide/index.js +49 -0
  147. package/build/components/welcome-guide/index.js.map +1 -0
  148. package/build/components/welcome-guide/styles.js +83 -0
  149. package/build/components/welcome-guide/styles.js.map +1 -0
  150. package/build/index.js +40 -16
  151. package/build/index.js.map +1 -1
  152. package/build/plugins/index.js +4 -2
  153. package/build/plugins/index.js.map +1 -1
  154. package/build/plugins/welcome-guide-menu-item.js +39 -0
  155. package/build/plugins/welcome-guide-menu-item.js.map +1 -0
  156. package/build/store/actions.js +24 -24
  157. package/build/store/actions.js.map +1 -1
  158. package/build/store/constants.js +1 -1
  159. package/build/store/defaults.js +4 -1
  160. package/build/store/defaults.js.map +1 -1
  161. package/build/store/index.js +5 -3
  162. package/build/store/index.js.map +1 -1
  163. package/build/store/reducer.js +36 -14
  164. package/build/store/reducer.js.map +1 -1
  165. package/build/store/selectors.js +27 -19
  166. package/build/store/selectors.js.map +1 -1
  167. package/build/utils/is-template-removable.js +21 -0
  168. package/build/utils/is-template-removable.js.map +1 -0
  169. package/build-module/components/add-new-template/index.js +36 -0
  170. package/build-module/components/add-new-template/index.js.map +1 -0
  171. package/build-module/components/add-new-template/new-template-part.js +65 -0
  172. package/build-module/components/add-new-template/new-template-part.js.map +1 -0
  173. package/build-module/components/add-new-template/new-template.js +97 -0
  174. package/build-module/components/add-new-template/new-template.js.map +1 -0
  175. package/build-module/components/block-editor/block-inspector-button.js +4 -3
  176. package/build-module/components/block-editor/block-inspector-button.js.map +1 -1
  177. package/build-module/components/block-editor/index.js +12 -8
  178. package/build-module/components/block-editor/index.js.map +1 -1
  179. package/build-module/components/block-editor/resizable-editor.js +6 -5
  180. package/build-module/components/block-editor/resizable-editor.js.map +1 -1
  181. package/build-module/components/block-editor/resize-handle.js +6 -4
  182. package/build-module/components/block-editor/resize-handle.js.map +1 -1
  183. package/build-module/components/create-template-part-modal/index.js +102 -0
  184. package/build-module/components/create-template-part-modal/index.js.map +1 -0
  185. package/build-module/components/edit-template-part-menu-button/index.js +15 -11
  186. package/build-module/components/edit-template-part-menu-button/index.js.map +1 -1
  187. package/build-module/components/editor/index.js +24 -21
  188. package/build-module/components/editor/index.js.map +1 -1
  189. package/build-module/components/error-boundary/index.js +5 -4
  190. package/build-module/components/error-boundary/index.js.map +1 -1
  191. package/build-module/components/global-styles/border-panel.js +4 -3
  192. package/build-module/components/global-styles/border-panel.js.map +1 -1
  193. package/build-module/components/global-styles/color-palette-panel.js +33 -10
  194. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  195. package/build-module/components/global-styles/context-menu.js +5 -4
  196. package/build-module/components/global-styles/context-menu.js.map +1 -1
  197. package/build-module/components/global-styles/dimensions-panel.js +4 -3
  198. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  199. package/build-module/components/global-styles/global-styles-provider.js +12 -42
  200. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  201. package/build-module/components/global-styles/header.js +6 -5
  202. package/build-module/components/global-styles/header.js.map +1 -1
  203. package/build-module/components/global-styles/hooks.js +32 -28
  204. package/build-module/components/global-styles/hooks.js.map +1 -1
  205. package/build-module/components/global-styles/navigation-button.js +8 -7
  206. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  207. package/build-module/components/global-styles/palette.js +13 -9
  208. package/build-module/components/global-styles/palette.js.map +1 -1
  209. package/build-module/components/global-styles/screen-background-color.js +4 -3
  210. package/build-module/components/global-styles/screen-background-color.js.map +1 -1
  211. package/build-module/components/global-styles/screen-block-list.js +11 -4
  212. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  213. package/build-module/components/global-styles/screen-block.js +4 -3
  214. package/build-module/components/global-styles/screen-block.js.map +1 -1
  215. package/build-module/components/global-styles/screen-color-palette.js +4 -3
  216. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  217. package/build-module/components/global-styles/screen-colors.js +19 -15
  218. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  219. package/build-module/components/global-styles/screen-layout.js +4 -3
  220. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  221. package/build-module/components/global-styles/screen-link-color.js +4 -3
  222. package/build-module/components/global-styles/screen-link-color.js.map +1 -1
  223. package/build-module/components/global-styles/screen-text-color.js +4 -3
  224. package/build-module/components/global-styles/screen-text-color.js.map +1 -1
  225. package/build-module/components/global-styles/screen-typography.js +4 -3
  226. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  227. package/build-module/components/global-styles/subtitle.js +4 -3
  228. package/build-module/components/global-styles/subtitle.js.map +1 -1
  229. package/build-module/components/global-styles/typography-panel.js +9 -7
  230. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  231. package/build-module/components/global-styles/ui.js +4 -3
  232. package/build-module/components/global-styles/ui.js.map +1 -1
  233. package/build-module/components/global-styles/use-global-styles-output.js +60 -43
  234. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  235. package/build-module/components/global-styles/utils.js +3 -2
  236. package/build-module/components/global-styles/utils.js.map +1 -1
  237. package/build-module/components/header/document-actions/index.js +23 -19
  238. package/build-module/components/header/document-actions/index.js.map +1 -1
  239. package/build-module/components/header/feature-toggle/index.js +9 -7
  240. package/build-module/components/header/feature-toggle/index.js.map +1 -1
  241. package/build-module/components/header/index.js +15 -13
  242. package/build-module/components/header/index.js.map +1 -1
  243. package/build-module/components/header/more-menu/index.js +30 -27
  244. package/build-module/components/header/more-menu/index.js.map +1 -1
  245. package/build-module/components/header/tools-more-menu-group/index.js +10 -7
  246. package/build-module/components/header/tools-more-menu-group/index.js.map +1 -1
  247. package/build-module/components/keyboard-shortcuts/index.js +30 -3
  248. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  249. package/build-module/components/list/header.js +37 -0
  250. package/build-module/components/list/header.js.map +1 -0
  251. package/build-module/components/list/index.js +69 -0
  252. package/build-module/components/list/index.js.map +1 -0
  253. package/build-module/components/list/table.js +111 -0
  254. package/build-module/components/list/table.js.map +1 -0
  255. package/build-module/components/list/use-register-shortcuts.js +41 -0
  256. package/build-module/components/list/use-register-shortcuts.js.map +1 -0
  257. package/build-module/components/main-dashboard-button/index.js +4 -3
  258. package/build-module/components/main-dashboard-button/index.js.map +1 -1
  259. package/build-module/components/navigate-to-link/index.js +7 -6
  260. package/build-module/components/navigate-to-link/index.js.map +1 -1
  261. package/build-module/components/navigation-sidebar/index.js +25 -8
  262. package/build-module/components/navigation-sidebar/index.js.map +1 -1
  263. package/build-module/components/navigation-sidebar/navigation-panel/content-navigation-item.js +4 -3
  264. package/build-module/components/navigation-sidebar/navigation-panel/content-navigation-item.js.map +1 -1
  265. package/build-module/components/navigation-sidebar/navigation-panel/index.js +39 -55
  266. package/build-module/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
  267. package/build-module/components/navigation-sidebar/navigation-panel/menus/template-parts-sub.js +6 -5
  268. package/build-module/components/navigation-sidebar/navigation-panel/menus/template-parts-sub.js.map +1 -1
  269. package/build-module/components/navigation-sidebar/navigation-panel/menus/template-parts.js +26 -20
  270. package/build-module/components/navigation-sidebar/navigation-panel/menus/template-parts.js.map +1 -1
  271. package/build-module/components/navigation-sidebar/navigation-panel/menus/templates-sub.js +17 -10
  272. package/build-module/components/navigation-sidebar/navigation-panel/menus/templates-sub.js.map +1 -1
  273. package/build-module/components/navigation-sidebar/navigation-panel/menus/templates.js +11 -5
  274. package/build-module/components/navigation-sidebar/navigation-panel/menus/templates.js.map +1 -1
  275. package/build-module/components/navigation-sidebar/navigation-panel/navigation-entity-items.js +13 -11
  276. package/build-module/components/navigation-sidebar/navigation-panel/navigation-entity-items.js.map +1 -1
  277. package/build-module/components/navigation-sidebar/navigation-panel/new-template-dropdown.js +24 -18
  278. package/build-module/components/navigation-sidebar/navigation-panel/new-template-dropdown.js.map +1 -1
  279. package/build-module/components/navigation-sidebar/navigation-panel/search-results.js +14 -11
  280. package/build-module/components/navigation-sidebar/navigation-panel/search-results.js.map +1 -1
  281. package/build-module/components/navigation-sidebar/navigation-panel/template-hierarchy.js +6 -3
  282. package/build-module/components/navigation-sidebar/navigation-panel/template-hierarchy.js.map +1 -1
  283. package/build-module/components/navigation-sidebar/navigation-panel/template-navigation-item.js +4 -3
  284. package/build-module/components/navigation-sidebar/navigation-panel/template-navigation-item.js.map +1 -1
  285. package/build-module/components/navigation-sidebar/navigation-panel/template-preview.js +5 -4
  286. package/build-module/components/navigation-sidebar/navigation-panel/template-preview.js.map +1 -1
  287. package/build-module/components/navigation-sidebar/navigation-toggle/index.js +8 -27
  288. package/build-module/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
  289. package/build-module/components/save-button/index.js +5 -4
  290. package/build-module/components/save-button/index.js.map +1 -1
  291. package/build-module/components/sidebar/default-sidebar.js +11 -10
  292. package/build-module/components/sidebar/default-sidebar.js.map +1 -1
  293. package/build-module/components/sidebar/plugin-sidebar/index.js +5 -4
  294. package/build-module/components/sidebar/plugin-sidebar/index.js.map +1 -1
  295. package/build-module/components/sidebar/settings-header/index.js +4 -3
  296. package/build-module/components/sidebar/settings-header/index.js.map +1 -1
  297. package/build-module/components/sidebar/template-card/template-areas.js +17 -13
  298. package/build-module/components/sidebar/template-card/template-areas.js.map +1 -1
  299. package/build-module/components/template-details/index.js +14 -9
  300. package/build-module/components/template-details/index.js.map +1 -1
  301. package/build-module/components/template-details/template-areas.js +38 -29
  302. package/build-module/components/template-details/template-areas.js.map +1 -1
  303. package/build-module/components/template-part-converter/convert-to-regular.js +15 -11
  304. package/build-module/components/template-part-converter/convert-to-regular.js.map +1 -1
  305. package/build-module/components/template-part-converter/convert-to-template-part.js +29 -86
  306. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  307. package/build-module/components/welcome-guide/editor.js +45 -0
  308. package/build-module/components/welcome-guide/editor.js.map +1 -0
  309. package/build-module/components/welcome-guide/image.js +19 -0
  310. package/build-module/components/welcome-guide/image.js.map +1 -0
  311. package/build-module/components/welcome-guide/index.js +35 -0
  312. package/build-module/components/welcome-guide/index.js.map +1 -0
  313. package/build-module/components/welcome-guide/styles.js +69 -0
  314. package/build-module/components/welcome-guide/styles.js.map +1 -0
  315. package/build-module/index.js +21 -1
  316. package/build-module/index.js.map +1 -1
  317. package/build-module/plugins/index.js +3 -2
  318. package/build-module/plugins/index.js.map +1 -1
  319. package/build-module/plugins/welcome-guide-menu-item.js +27 -0
  320. package/build-module/plugins/welcome-guide-menu-item.js.map +1 -0
  321. package/build-module/store/actions.js +11 -11
  322. package/build-module/store/actions.js.map +1 -1
  323. package/build-module/store/defaults.js +4 -1
  324. package/build-module/store/defaults.js.map +1 -1
  325. package/build-module/store/reducer.js +31 -10
  326. package/build-module/store/reducer.js.map +1 -1
  327. package/build-module/store/selectors.js +17 -10
  328. package/build-module/store/selectors.js.map +1 -1
  329. package/build-module/utils/is-template-removable.js +14 -0
  330. package/build-module/utils/is-template-removable.js.map +1 -0
  331. package/build-style/style-rtl.css +348 -32
  332. package/build-style/style.css +348 -32
  333. package/package.json +27 -27
  334. package/src/components/add-new-template/index.js +30 -0
  335. package/src/components/add-new-template/new-template-part.js +66 -0
  336. package/src/components/add-new-template/new-template.js +116 -0
  337. package/src/components/add-new-template/style.scss +11 -0
  338. package/src/components/create-template-part-modal/index.js +132 -0
  339. package/src/components/{template-part-converter → create-template-part-modal}/style.scss +9 -9
  340. package/src/components/editor/index.js +22 -15
  341. package/src/components/editor/style.scss +8 -0
  342. package/src/components/global-styles/color-palette-panel.js +64 -7
  343. package/src/components/global-styles/global-styles-provider.js +7 -36
  344. package/src/components/global-styles/hooks.js +58 -26
  345. package/src/components/global-styles/screen-block-list.js +11 -1
  346. package/src/components/global-styles/test/use-global-styles-output.js +2 -2
  347. package/src/components/global-styles/use-global-styles-output.js +2 -2
  348. package/src/components/global-styles/utils.js +1 -1
  349. package/src/components/header/index.js +0 -6
  350. package/src/components/keyboard-shortcuts/index.js +32 -0
  351. package/src/components/list/header.js +34 -0
  352. package/src/components/list/index.js +80 -0
  353. package/src/components/list/style.scss +113 -0
  354. package/src/components/list/table.js +132 -0
  355. package/src/components/list/use-register-shortcuts.js +45 -0
  356. package/src/components/navigation-sidebar/index.js +31 -8
  357. package/src/components/navigation-sidebar/navigation-panel/index.js +45 -55
  358. package/src/components/navigation-sidebar/navigation-panel/style.scss +4 -2
  359. package/src/components/navigation-sidebar/navigation-toggle/index.js +4 -28
  360. package/src/components/template-details/index.js +3 -2
  361. package/src/components/template-part-converter/convert-to-template-part.js +20 -140
  362. package/src/components/welcome-guide/editor.js +63 -0
  363. package/src/components/welcome-guide/image.js +11 -0
  364. package/src/components/welcome-guide/index.js +33 -0
  365. package/src/components/welcome-guide/style.scss +37 -0
  366. package/src/components/welcome-guide/styles.js +116 -0
  367. package/src/index.js +21 -1
  368. package/src/plugins/index.js +3 -1
  369. package/src/plugins/welcome-guide-menu-item.js +35 -0
  370. package/src/store/actions.js +11 -9
  371. package/src/store/defaults.js +4 -1
  372. package/src/store/test/actions.js +14 -20
  373. package/src/style.scss +9 -6
  374. package/src/utils/is-template-removable.js +13 -0
  375. package/build/components/header/navigation-link/index.js +0 -86
  376. package/build/components/header/navigation-link/index.js.map +0 -1
  377. package/build-module/components/header/navigation-link/index.js +0 -73
  378. package/build-module/components/header/navigation-link/index.js.map +0 -1
  379. package/src/components/header/navigation-link/index.js +0 -71
  380. package/src/components/header/navigation-link/style.scss +0 -69
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/color-palette-panel.js"],"names":["__experimentalColorEdit","ColorEdit","useSetting","ColorPalettePanel","name","userColors","setColors"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,uBAAuB,IAAIC,SAApC,QAAqD,uBAArD;AAEA;AACA;AACA;;AACA,SAASC,UAAT,QAA2B,SAA3B;AAEA,eAAe,SAASC,iBAAT,CAA4B;AAAEC,EAAAA;AAAF,CAA5B,EAAuC;AACrD,QAAM,CAAEC,UAAF,EAAcC,SAAd,IAA4BJ,UAAU,CAC3C,eAD2C,EAE3CE,IAF2C,EAG3C,MAH2C,CAA5C;AAKA,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,SAAD;AAAW,IAAA,MAAM,EAAGC,UAApB;AAAiC,IAAA,QAAQ,EAAGC;AAA5C,IADD,CADD;AAKA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalColorEdit as ColorEdit } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useSetting } from './hooks';\n\nexport default function ColorPalettePanel( { name } ) {\n\tconst [ userColors, setColors ] = useSetting(\n\t\t'color.palette',\n\t\tname,\n\t\t'user'\n\t);\n\treturn (\n\t\t<div className=\"edit-site-global-styles-color-palette-panel\">\n\t\t\t<ColorEdit colors={ userColors } onChange={ setColors } />\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/color-palette-panel.js"],"names":["__experimentalColorEdit","ColorEdit","__experimentalVStack","VStack","__","useSetting","ColorPalettePanel","name","themeColors","setThemeColors","baseThemeColors","defaultColors","setDefaultColors","baseDefaultColors","customColors","setCustomColors","defaultPaletteEnabled","length"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,uBAAuB,IAAIC,SAD5B,EAECC,oBAAoB,IAAIC,MAFzB,QAGO,uBAHP;AAIA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SAASC,UAAT,QAA2B,SAA3B;AAEA,eAAe,SAASC,iBAAT,OAAuC;AAAA,MAAX;AAAEC,IAAAA;AAAF,GAAW;AACrD,QAAM,CAAEC,WAAF,EAAeC,cAAf,IAAkCJ,UAAU,CACjD,qBADiD,EAEjDE,IAFiD,CAAlD;AAIA,QAAM,CAAEG,eAAF,IAAsBL,UAAU,CACrC,qBADqC,EAErCE,IAFqC,EAGrC,MAHqC,CAAtC;AAKA,QAAM,CAAEI,aAAF,EAAiBC,gBAAjB,IAAsCP,UAAU,CACrD,uBADqD,EAErDE,IAFqD,CAAtD;AAIA,QAAM,CAAEM,iBAAF,IAAwBR,UAAU,CACvC,uBADuC,EAEvCE,IAFuC,EAGvC,MAHuC,CAAxC;AAKA,QAAM,CAAEO,YAAF,EAAgBC,eAAhB,IAAoCV,UAAU,CACnD,oBADmD,EAEnDE,IAFmD,CAApD;AAKA,QAAM,CAAES,qBAAF,IAA4BX,UAAU,CAC3C,sBAD2C,EAE3CE,IAF2C,CAA5C;AAIA,SACC,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,OAAO,EAAG;AAFX,KAIG,CAAC,CAAEC,WAAH,IAAkB,CAAC,CAAEA,WAAW,CAACS,MAAjC,IACD,cAAC,SAAD;AACC,IAAA,QAAQ,EAAGT,WAAW,KAAKE,eAD5B;AAEC,IAAA,mBAAmB,MAFpB;AAGC,IAAA,MAAM,EAAGF,WAHV;AAIC,IAAA,QAAQ,EAAGC,cAJZ;AAKC,IAAA,YAAY,EAAGL,EAAE,CAAE,OAAF;AALlB,IALF,EAaG,CAAC,CAAEO,aAAH,IACD,CAAC,CAAEA,aAAa,CAACM,MADhB,IAED,CAAC,CAAED,qBAFF,IAGA,cAAC,SAAD;AACC,IAAA,QAAQ,EAAGL,aAAa,KAAKE,iBAD9B;AAEC,IAAA,mBAAmB,MAFpB;AAGC,IAAA,MAAM,EAAGF,aAHV;AAIC,IAAA,QAAQ,EAAGC,gBAJZ;AAKC,IAAA,YAAY,EAAGR,EAAE,CAAE,SAAF;AALlB,IAhBH,EAwBC,cAAC,SAAD;AACC,IAAA,MAAM,EAAGU,YADV;AAEC,IAAA,QAAQ,EAAGC,eAFZ;AAGC,IAAA,YAAY,EAAGX,EAAE,CAAE,QAAF,CAHlB;AAIC,IAAA,YAAY,EAAGA,EAAE,CAChB,4EADgB,CAJlB;AAOC,IAAA,UAAU,EAAC;AAPZ,IAxBD,CADD;AAoCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalColorEdit as ColorEdit,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useSetting } from './hooks';\n\nexport default function ColorPalettePanel( { name } ) {\n\tconst [ themeColors, setThemeColors ] = useSetting(\n\t\t'color.palette.theme',\n\t\tname\n\t);\n\tconst [ baseThemeColors ] = useSetting(\n\t\t'color.palette.theme',\n\t\tname,\n\t\t'base'\n\t);\n\tconst [ defaultColors, setDefaultColors ] = useSetting(\n\t\t'color.palette.default',\n\t\tname\n\t);\n\tconst [ baseDefaultColors ] = useSetting(\n\t\t'color.palette.default',\n\t\tname,\n\t\t'base'\n\t);\n\tconst [ customColors, setCustomColors ] = useSetting(\n\t\t'color.palette.user',\n\t\tname\n\t);\n\n\tconst [ defaultPaletteEnabled ] = useSetting(\n\t\t'color.defaultPalette',\n\t\tname\n\t);\n\treturn (\n\t\t<VStack\n\t\t\tclassName=\"edit-site-global-styles-color-palette-panel\"\n\t\t\tspacing={ 10 }\n\t\t>\n\t\t\t{ !! themeColors && !! themeColors.length && (\n\t\t\t\t<ColorEdit\n\t\t\t\t\tcanReset={ themeColors !== baseThemeColors }\n\t\t\t\t\tcanOnlyChangeValues\n\t\t\t\t\tcolors={ themeColors }\n\t\t\t\t\tonChange={ setThemeColors }\n\t\t\t\t\tpaletteLabel={ __( 'Theme' ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ !! defaultColors &&\n\t\t\t\t!! defaultColors.length &&\n\t\t\t\t!! defaultPaletteEnabled && (\n\t\t\t\t\t<ColorEdit\n\t\t\t\t\t\tcanReset={ defaultColors !== baseDefaultColors }\n\t\t\t\t\t\tcanOnlyChangeValues\n\t\t\t\t\t\tcolors={ defaultColors }\n\t\t\t\t\t\tonChange={ setDefaultColors }\n\t\t\t\t\t\tpaletteLabel={ __( 'Default' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t<ColorEdit\n\t\t\t\tcolors={ customColors }\n\t\t\t\tonChange={ setCustomColors }\n\t\t\t\tpaletteLabel={ __( 'Custom' ) }\n\t\t\t\temptyMessage={ __(\n\t\t\t\t\t'Custom colors are empty! Add some colors to create your own color palette.'\n\t\t\t\t) }\n\t\t\t\tslugPrefix=\"custom-\"\n\t\t\t/>\n\t\t</VStack>\n\t);\n}\n"]}
@@ -16,10 +16,11 @@ import { useHasDimensionsPanel } from './dimensions-panel';
16
16
  import { useHasTypographyPanel } from './typography-panel';
17
17
  import NavigationButton from './navigation-button';
18
18
 
19
- function ContextMenu({
20
- name,
21
- parentMenu = ''
22
- }) {
19
+ function ContextMenu(_ref) {
20
+ let {
21
+ name,
22
+ parentMenu = ''
23
+ } = _ref;
23
24
  const hasTypographyPanel = useHasTypographyPanel(name);
24
25
  const hasColorPanel = useHasColorPanel(name);
25
26
  const hasBorderPanel = useHasBorderPanel(name);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/context-menu.js"],"names":["__experimentalItemGroup","ItemGroup","typography","color","layout","__","useHasBorderPanel","useHasColorPanel","useHasDimensionsPanel","useHasTypographyPanel","NavigationButton","ContextMenu","name","parentMenu","hasTypographyPanel","hasColorPanel","hasBorderPanel","hasDimensionsPanel","hasLayoutPanel"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,uBAAuB,IAAIC,SAApC,QAAqD,uBAArD;AACA,SAASC,UAAT,EAAqBC,KAArB,EAA4BC,MAA5B,QAA0C,kBAA1C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SAASC,iBAAT,QAAkC,gBAAlC;AACA,SAASC,gBAAT,QAAiC,eAAjC;AACA,SAASC,qBAAT,QAAsC,oBAAtC;AACA,SAASC,qBAAT,QAAsC,oBAAtC;AACA,OAAOC,gBAAP,MAA6B,qBAA7B;;AAEA,SAASC,WAAT,CAAsB;AAAEC,EAAAA,IAAF;AAAQC,EAAAA,UAAU,GAAG;AAArB,CAAtB,EAAkD;AACjD,QAAMC,kBAAkB,GAAGL,qBAAqB,CAAEG,IAAF,CAAhD;AACA,QAAMG,aAAa,GAAGR,gBAAgB,CAAEK,IAAF,CAAtC;AACA,QAAMI,cAAc,GAAGV,iBAAiB,CAAEM,IAAF,CAAxC;AACA,QAAMK,kBAAkB,GAAGT,qBAAqB,CAAEI,IAAF,CAAhD;AACA,QAAMM,cAAc,GAAGF,cAAc,IAAIC,kBAAzC;AAEA,SACC,cAAC,SAAD,QACGH,kBAAkB,IACnB,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGZ,UADR;AAEC,IAAA,IAAI,EAAGW,UAAU,GAAG;AAFrB,KAIGR,EAAE,CAAE,YAAF,CAJL,CAFF,EASGU,aAAa,IACd,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGZ,KADR;AAEC,IAAA,IAAI,EAAGU,UAAU,GAAG;AAFrB,KAIGR,EAAE,CAAE,QAAF,CAJL,CAVF,EAiBGa,cAAc,IACf,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGd,MADR;AAEC,IAAA,IAAI,EAAGS,UAAU,GAAG;AAFrB,KAIGR,EAAE,CAAE,QAAF,CAJL,CAlBF,CADD;AA4BA;;AAED,eAAeM,WAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalItemGroup as ItemGroup } from '@wordpress/components';\nimport { typography, color, layout } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useHasBorderPanel } from './border-panel';\nimport { useHasColorPanel } from './color-utils';\nimport { useHasDimensionsPanel } from './dimensions-panel';\nimport { useHasTypographyPanel } from './typography-panel';\nimport NavigationButton from './navigation-button';\n\nfunction ContextMenu( { name, parentMenu = '' } ) {\n\tconst hasTypographyPanel = useHasTypographyPanel( name );\n\tconst hasColorPanel = useHasColorPanel( name );\n\tconst hasBorderPanel = useHasBorderPanel( name );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( name );\n\tconst hasLayoutPanel = hasBorderPanel || hasDimensionsPanel;\n\n\treturn (\n\t\t<ItemGroup>\n\t\t\t{ hasTypographyPanel && (\n\t\t\t\t<NavigationButton\n\t\t\t\t\ticon={ typography }\n\t\t\t\t\tpath={ parentMenu + '/typography' }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Typography' ) }\n\t\t\t\t</NavigationButton>\n\t\t\t) }\n\t\t\t{ hasColorPanel && (\n\t\t\t\t<NavigationButton\n\t\t\t\t\ticon={ color }\n\t\t\t\t\tpath={ parentMenu + '/colors' }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Colors' ) }\n\t\t\t\t</NavigationButton>\n\t\t\t) }\n\t\t\t{ hasLayoutPanel && (\n\t\t\t\t<NavigationButton\n\t\t\t\t\ticon={ layout }\n\t\t\t\t\tpath={ parentMenu + '/layout' }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Layout' ) }\n\t\t\t\t</NavigationButton>\n\t\t\t) }\n\t\t</ItemGroup>\n\t);\n}\n\nexport default ContextMenu;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/context-menu.js"],"names":["__experimentalItemGroup","ItemGroup","typography","color","layout","__","useHasBorderPanel","useHasColorPanel","useHasDimensionsPanel","useHasTypographyPanel","NavigationButton","ContextMenu","name","parentMenu","hasTypographyPanel","hasColorPanel","hasBorderPanel","hasDimensionsPanel","hasLayoutPanel"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,uBAAuB,IAAIC,SAApC,QAAqD,uBAArD;AACA,SAASC,UAAT,EAAqBC,KAArB,EAA4BC,MAA5B,QAA0C,kBAA1C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SAASC,iBAAT,QAAkC,gBAAlC;AACA,SAASC,gBAAT,QAAiC,eAAjC;AACA,SAASC,qBAAT,QAAsC,oBAAtC;AACA,SAASC,qBAAT,QAAsC,oBAAtC;AACA,OAAOC,gBAAP,MAA6B,qBAA7B;;AAEA,SAASC,WAAT,OAAkD;AAAA,MAA5B;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,UAAU,GAAG;AAArB,GAA4B;AACjD,QAAMC,kBAAkB,GAAGL,qBAAqB,CAAEG,IAAF,CAAhD;AACA,QAAMG,aAAa,GAAGR,gBAAgB,CAAEK,IAAF,CAAtC;AACA,QAAMI,cAAc,GAAGV,iBAAiB,CAAEM,IAAF,CAAxC;AACA,QAAMK,kBAAkB,GAAGT,qBAAqB,CAAEI,IAAF,CAAhD;AACA,QAAMM,cAAc,GAAGF,cAAc,IAAIC,kBAAzC;AAEA,SACC,cAAC,SAAD,QACGH,kBAAkB,IACnB,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGZ,UADR;AAEC,IAAA,IAAI,EAAGW,UAAU,GAAG;AAFrB,KAIGR,EAAE,CAAE,YAAF,CAJL,CAFF,EASGU,aAAa,IACd,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGZ,KADR;AAEC,IAAA,IAAI,EAAGU,UAAU,GAAG;AAFrB,KAIGR,EAAE,CAAE,QAAF,CAJL,CAVF,EAiBGa,cAAc,IACf,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGd,MADR;AAEC,IAAA,IAAI,EAAGS,UAAU,GAAG;AAFrB,KAIGR,EAAE,CAAE,QAAF,CAJL,CAlBF,CADD;AA4BA;;AAED,eAAeM,WAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalItemGroup as ItemGroup } from '@wordpress/components';\nimport { typography, color, layout } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useHasBorderPanel } from './border-panel';\nimport { useHasColorPanel } from './color-utils';\nimport { useHasDimensionsPanel } from './dimensions-panel';\nimport { useHasTypographyPanel } from './typography-panel';\nimport NavigationButton from './navigation-button';\n\nfunction ContextMenu( { name, parentMenu = '' } ) {\n\tconst hasTypographyPanel = useHasTypographyPanel( name );\n\tconst hasColorPanel = useHasColorPanel( name );\n\tconst hasBorderPanel = useHasBorderPanel( name );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( name );\n\tconst hasLayoutPanel = hasBorderPanel || hasDimensionsPanel;\n\n\treturn (\n\t\t<ItemGroup>\n\t\t\t{ hasTypographyPanel && (\n\t\t\t\t<NavigationButton\n\t\t\t\t\ticon={ typography }\n\t\t\t\t\tpath={ parentMenu + '/typography' }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Typography' ) }\n\t\t\t\t</NavigationButton>\n\t\t\t) }\n\t\t\t{ hasColorPanel && (\n\t\t\t\t<NavigationButton\n\t\t\t\t\ticon={ color }\n\t\t\t\t\tpath={ parentMenu + '/colors' }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Colors' ) }\n\t\t\t\t</NavigationButton>\n\t\t\t) }\n\t\t\t{ hasLayoutPanel && (\n\t\t\t\t<NavigationButton\n\t\t\t\t\ticon={ layout }\n\t\t\t\t\tpath={ parentMenu + '/layout' }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Layout' ) }\n\t\t\t\t</NavigationButton>\n\t\t\t) }\n\t\t</ItemGroup>\n\t);\n}\n\nexport default ContextMenu;\n"]}
@@ -76,9 +76,10 @@ function splitStyleValue(value) {
76
76
  return value;
77
77
  }
78
78
 
79
- export default function DimensionsPanel({
80
- name
81
- }) {
79
+ export default function DimensionsPanel(_ref) {
80
+ let {
81
+ name
82
+ } = _ref;
82
83
  const showPaddingControl = useHasPadding(name);
83
84
  const showMarginControl = useHasMargin(name);
84
85
  const showGapControl = useHasGap(name);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/dimensions-panel.js"],"names":["__","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalBoxControl","BoxControl","__experimentalUnitControl","UnitControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalUseCustomSides","useCustomSides","getSupportedGlobalStylesPanels","useSetting","useStyle","AXIAL_SIDES","useHasDimensionsPanel","name","hasPadding","useHasPadding","hasMargin","useHasMargin","hasGap","useHasGap","supports","settings","includes","filterValuesBySides","values","sides","filteredValues","forEach","side","top","bottom","left","right","splitStyleValue","value","DimensionsPanel","showPaddingControl","showMarginControl","showGapControl","units","availableUnits","rawPadding","setRawPadding","paddingValues","paddingSides","isAxialPadding","some","setPaddingValues","newPaddingValues","padding","resetPaddingValue","hasPaddingValue","Object","keys","length","rawMargin","setRawMargin","marginValues","marginSides","isAxialMargin","setMarginValues","newMarginValues","margin","resetMarginValue","hasMarginValue","gapValue","setGapValue","resetGapValue","undefined","hasGapValue","resetAll"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { __experimentalUseCustomSides as useCustomSides } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { getSupportedGlobalStylesPanels, useSetting, useStyle } from './hooks';\n\nconst AXIAL_SIDES = [ 'horizontal', 'vertical' ];\n\nexport function useHasDimensionsPanel( name ) {\n\tconst hasPadding = useHasPadding( name );\n\tconst hasMargin = useHasMargin( name );\n\tconst hasGap = useHasGap( name );\n\n\treturn hasPadding || hasMargin || hasGap;\n}\n\nfunction useHasPadding( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.padding', name );\n\n\treturn settings && supports.includes( 'padding' );\n}\n\nfunction useHasMargin( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.margin', name );\n\n\treturn settings && supports.includes( 'margin' );\n}\n\nfunction useHasGap( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.blockGap', name );\n\n\treturn settings && supports.includes( '--wp--style--block-gap' );\n}\n\nfunction filterValuesBySides( values, sides ) {\n\tif ( ! sides ) {\n\t\t// If no custom side configuration all sides are opted into by default.\n\t\treturn values;\n\t}\n\n\t// Only include sides opted into within filtered values.\n\tconst filteredValues = {};\n\tsides.forEach( ( side ) => {\n\t\tif ( side === 'vertical' ) {\n\t\t\tfilteredValues.top = values.top;\n\t\t\tfilteredValues.bottom = values.bottom;\n\t\t}\n\t\tif ( side === 'horizontal' ) {\n\t\t\tfilteredValues.left = values.left;\n\t\t\tfilteredValues.right = values.right;\n\t\t}\n\t\tfilteredValues[ side ] = values[ side ];\n\t} );\n\n\treturn filteredValues;\n}\n\nfunction splitStyleValue( value ) {\n\t// Check for shorthand value ( a string value ).\n\tif ( value && typeof value === 'string' ) {\n\t\t// Convert to value for individual sides for BoxControl.\n\t\treturn {\n\t\t\ttop: value,\n\t\t\tright: value,\n\t\t\tbottom: value,\n\t\t\tleft: value,\n\t\t};\n\t}\n\n\treturn value;\n}\n\nexport default function DimensionsPanel( { name } ) {\n\tconst showPaddingControl = useHasPadding( name );\n\tconst showMarginControl = useHasMargin( name );\n\tconst showGapControl = useHasGap( name );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units', name )[ 0 ] || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tconst [ rawPadding, setRawPadding ] = useStyle( 'spacing.padding', name );\n\tconst paddingValues = splitStyleValue( rawPadding );\n\tconst paddingSides = useCustomSides( name, 'padding' );\n\tconst isAxialPadding =\n\t\tpaddingSides &&\n\t\tpaddingSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setPaddingValues = ( newPaddingValues ) => {\n\t\tconst padding = filterValuesBySides( newPaddingValues, paddingSides );\n\t\tsetRawPadding( padding );\n\t};\n\tconst resetPaddingValue = () => setPaddingValues( {} );\n\tconst hasPaddingValue = () =>\n\t\t!! paddingValues && Object.keys( paddingValues ).length;\n\n\tconst [ rawMargin, setRawMargin ] = useStyle( 'spacing.margin', name );\n\tconst marginValues = splitStyleValue( rawMargin );\n\tconst marginSides = useCustomSides( name, 'margin' );\n\tconst isAxialMargin =\n\t\tmarginSides &&\n\t\tmarginSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setMarginValues = ( newMarginValues ) => {\n\t\tconst margin = filterValuesBySides( newMarginValues, marginSides );\n\t\tsetRawMargin( margin );\n\t};\n\tconst resetMarginValue = () => setMarginValues( {} );\n\tconst hasMarginValue = () =>\n\t\t!! marginValues && Object.keys( marginValues ).length;\n\n\tconst [ gapValue, setGapValue ] = useStyle( 'spacing.blockGap', name );\n\tconst resetGapValue = () => setGapValue( undefined );\n\tconst hasGapValue = () => !! gapValue;\n\n\tconst resetAll = () => {\n\t\tresetPaddingValue();\n\t\tresetMarginValue();\n\t\tresetGapValue();\n\t};\n\n\treturn (\n\t\t<ToolsPanel label={ __( 'Dimensions' ) } resetAll={ resetAll }>\n\t\t\t{ showPaddingControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasPaddingValue }\n\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\tonDeselect={ resetPaddingValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<BoxControl\n\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ isAxialPadding }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showMarginControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasMarginValue }\n\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\tonDeselect={ resetMarginValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<BoxControl\n\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ isAxialMargin }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showGapControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasGapValue }\n\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\tonDeselect={ resetGapValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ setGapValue }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tvalue={ gapValue }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</ToolsPanel>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/dimensions-panel.js"],"names":["__","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalBoxControl","BoxControl","__experimentalUnitControl","UnitControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalUseCustomSides","useCustomSides","getSupportedGlobalStylesPanels","useSetting","useStyle","AXIAL_SIDES","useHasDimensionsPanel","name","hasPadding","useHasPadding","hasMargin","useHasMargin","hasGap","useHasGap","supports","settings","includes","filterValuesBySides","values","sides","filteredValues","forEach","side","top","bottom","left","right","splitStyleValue","value","DimensionsPanel","showPaddingControl","showMarginControl","showGapControl","units","availableUnits","rawPadding","setRawPadding","paddingValues","paddingSides","isAxialPadding","some","setPaddingValues","newPaddingValues","padding","resetPaddingValue","hasPaddingValue","Object","keys","length","rawMargin","setRawMargin","marginValues","marginSides","isAxialMargin","setMarginValues","newMarginValues","margin","resetMarginValue","hasMarginValue","gapValue","setGapValue","resetGapValue","undefined","hasGapValue","resetAll"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { __experimentalUseCustomSides as useCustomSides } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { getSupportedGlobalStylesPanels, useSetting, useStyle } from './hooks';\n\nconst AXIAL_SIDES = [ 'horizontal', 'vertical' ];\n\nexport function useHasDimensionsPanel( name ) {\n\tconst hasPadding = useHasPadding( name );\n\tconst hasMargin = useHasMargin( name );\n\tconst hasGap = useHasGap( name );\n\n\treturn hasPadding || hasMargin || hasGap;\n}\n\nfunction useHasPadding( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.padding', name );\n\n\treturn settings && supports.includes( 'padding' );\n}\n\nfunction useHasMargin( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.margin', name );\n\n\treturn settings && supports.includes( 'margin' );\n}\n\nfunction useHasGap( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.blockGap', name );\n\n\treturn settings && supports.includes( '--wp--style--block-gap' );\n}\n\nfunction filterValuesBySides( values, sides ) {\n\tif ( ! sides ) {\n\t\t// If no custom side configuration all sides are opted into by default.\n\t\treturn values;\n\t}\n\n\t// Only include sides opted into within filtered values.\n\tconst filteredValues = {};\n\tsides.forEach( ( side ) => {\n\t\tif ( side === 'vertical' ) {\n\t\t\tfilteredValues.top = values.top;\n\t\t\tfilteredValues.bottom = values.bottom;\n\t\t}\n\t\tif ( side === 'horizontal' ) {\n\t\t\tfilteredValues.left = values.left;\n\t\t\tfilteredValues.right = values.right;\n\t\t}\n\t\tfilteredValues[ side ] = values[ side ];\n\t} );\n\n\treturn filteredValues;\n}\n\nfunction splitStyleValue( value ) {\n\t// Check for shorthand value ( a string value ).\n\tif ( value && typeof value === 'string' ) {\n\t\t// Convert to value for individual sides for BoxControl.\n\t\treturn {\n\t\t\ttop: value,\n\t\t\tright: value,\n\t\t\tbottom: value,\n\t\t\tleft: value,\n\t\t};\n\t}\n\n\treturn value;\n}\n\nexport default function DimensionsPanel( { name } ) {\n\tconst showPaddingControl = useHasPadding( name );\n\tconst showMarginControl = useHasMargin( name );\n\tconst showGapControl = useHasGap( name );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units', name )[ 0 ] || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tconst [ rawPadding, setRawPadding ] = useStyle( 'spacing.padding', name );\n\tconst paddingValues = splitStyleValue( rawPadding );\n\tconst paddingSides = useCustomSides( name, 'padding' );\n\tconst isAxialPadding =\n\t\tpaddingSides &&\n\t\tpaddingSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setPaddingValues = ( newPaddingValues ) => {\n\t\tconst padding = filterValuesBySides( newPaddingValues, paddingSides );\n\t\tsetRawPadding( padding );\n\t};\n\tconst resetPaddingValue = () => setPaddingValues( {} );\n\tconst hasPaddingValue = () =>\n\t\t!! paddingValues && Object.keys( paddingValues ).length;\n\n\tconst [ rawMargin, setRawMargin ] = useStyle( 'spacing.margin', name );\n\tconst marginValues = splitStyleValue( rawMargin );\n\tconst marginSides = useCustomSides( name, 'margin' );\n\tconst isAxialMargin =\n\t\tmarginSides &&\n\t\tmarginSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setMarginValues = ( newMarginValues ) => {\n\t\tconst margin = filterValuesBySides( newMarginValues, marginSides );\n\t\tsetRawMargin( margin );\n\t};\n\tconst resetMarginValue = () => setMarginValues( {} );\n\tconst hasMarginValue = () =>\n\t\t!! marginValues && Object.keys( marginValues ).length;\n\n\tconst [ gapValue, setGapValue ] = useStyle( 'spacing.blockGap', name );\n\tconst resetGapValue = () => setGapValue( undefined );\n\tconst hasGapValue = () => !! gapValue;\n\n\tconst resetAll = () => {\n\t\tresetPaddingValue();\n\t\tresetMarginValue();\n\t\tresetGapValue();\n\t};\n\n\treturn (\n\t\t<ToolsPanel label={ __( 'Dimensions' ) } resetAll={ resetAll }>\n\t\t\t{ showPaddingControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasPaddingValue }\n\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\tonDeselect={ resetPaddingValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<BoxControl\n\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ isAxialPadding }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showMarginControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasMarginValue }\n\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\tonDeselect={ resetMarginValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<BoxControl\n\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ isAxialMargin }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showGapControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasGapValue }\n\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\tonDeselect={ resetGapValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ setGapValue }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tvalue={ gapValue }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</ToolsPanel>\n\t);\n}\n"]}
@@ -3,7 +3,7 @@ import { createElement } from "@wordpress/element";
3
3
  /**
4
4
  * External dependencies
5
5
  */
6
- import { get, cloneDeep, set, mergeWith, pickBy, isEmpty, isObject, identity, mapValues } from 'lodash';
6
+ import { mergeWith, pickBy, isEmpty, isObject, identity, mapValues } from 'lodash';
7
7
  /**
8
8
  * WordPress dependencies
9
9
  */
@@ -15,7 +15,6 @@ import { store as coreStore } from '@wordpress/core-data';
15
15
  * Internal dependencies
16
16
  */
17
17
 
18
- import { PRESET_METADATA } from './utils';
19
18
  import { GlobalStylesContext } from './context';
20
19
 
21
20
  function mergeTreesCustomizer(_, srcValue) {
@@ -31,36 +30,6 @@ function mergeBaseAndUserConfigs(base, user) {
31
30
  return mergeWith({}, base, user, mergeTreesCustomizer);
32
31
  }
33
32
 
34
- function addUserOriginToSettings(settingsToAdd) {
35
- const newSettings = cloneDeep(settingsToAdd);
36
- PRESET_METADATA.forEach(({
37
- path
38
- }) => {
39
- const presetData = get(newSettings, path);
40
-
41
- if (presetData) {
42
- set(newSettings, path, {
43
- user: presetData
44
- });
45
- }
46
- });
47
- return newSettings;
48
- }
49
-
50
- function removeUserOriginFromSettings(settingsToRemove) {
51
- const newSettings = cloneDeep(settingsToRemove);
52
- PRESET_METADATA.forEach(({
53
- path
54
- }) => {
55
- const presetData = get(newSettings, path);
56
-
57
- if (presetData) {
58
- set(newSettings, path, (presetData !== null && presetData !== void 0 ? presetData : {}).user);
59
- }
60
- });
61
- return newSettings;
62
- }
63
-
64
33
  const cleanEmptyObject = object => {
65
34
  if (!isObject(object) || Array.isArray(object)) {
66
35
  return object;
@@ -93,7 +62,7 @@ function useGlobalStylesUserConfig() {
93
62
  } = useDispatch(coreStore);
94
63
  const config = useMemo(() => {
95
64
  return {
96
- settings: addUserOriginToSettings(settings !== null && settings !== void 0 ? settings : {}),
65
+ settings: settings !== null && settings !== void 0 ? settings : {},
97
66
  styles: styles !== null && styles !== void 0 ? styles : {}
98
67
  };
99
68
  }, [settings, styles]);
@@ -103,12 +72,12 @@ function useGlobalStylesUserConfig() {
103
72
  const record = getEditedEntityRecord('root', 'globalStyles', globalStylesId);
104
73
  const currentConfig = {
105
74
  styles: (_record$styles = record === null || record === void 0 ? void 0 : record.styles) !== null && _record$styles !== void 0 ? _record$styles : {},
106
- settings: addUserOriginToSettings((_record$settings = record === null || record === void 0 ? void 0 : record.settings) !== null && _record$settings !== void 0 ? _record$settings : {})
75
+ settings: (_record$settings = record === null || record === void 0 ? void 0 : record.settings) !== null && _record$settings !== void 0 ? _record$settings : {}
107
76
  };
108
77
  const updatedConfig = callback(currentConfig);
109
78
  editEntityRecord('root', 'globalStyles', globalStylesId, {
110
79
  styles: cleanEmptyObject(updatedConfig.styles) || {},
111
- settings: cleanEmptyObject(removeUserOriginFromSettings(updatedConfig.settings)) || {}
80
+ settings: cleanEmptyObject(updatedConfig.settings) || {}
112
81
  });
113
82
  }, [globalStylesId]);
114
83
  return [!!settings || !!styles, config, setConfig];
@@ -118,12 +87,12 @@ function useGlobalStylesBaseConfig() {
118
87
  const baseConfig = useSelect(select => {
119
88
  return select(coreStore).__experimentalGetCurrentThemeBaseGlobalStyles();
120
89
  }, []);
121
- return baseConfig;
90
+ return [!!baseConfig, baseConfig];
122
91
  }
123
92
 
124
93
  function useGlobalStylesContext() {
125
94
  const [isUserConfigReady, userConfig, setUserConfig] = useGlobalStylesUserConfig();
126
- const baseConfig = useGlobalStylesBaseConfig();
95
+ const [isBaseConfigReady, baseConfig] = useGlobalStylesBaseConfig();
127
96
  const mergedConfig = useMemo(() => {
128
97
  if (!baseConfig || !userConfig) {
129
98
  return {};
@@ -133,19 +102,20 @@ function useGlobalStylesContext() {
133
102
  }, [userConfig, baseConfig]);
134
103
  const context = useMemo(() => {
135
104
  return {
136
- isReady: isUserConfigReady,
105
+ isReady: isUserConfigReady && isBaseConfigReady,
137
106
  user: userConfig,
138
107
  base: baseConfig,
139
108
  merged: mergedConfig,
140
109
  setUserConfig
141
110
  };
142
- }, [mergedConfig, userConfig, baseConfig, setUserConfig, isUserConfigReady]);
111
+ }, [mergedConfig, userConfig, baseConfig, setUserConfig, isUserConfigReady, isBaseConfigReady]);
143
112
  return context;
144
113
  }
145
114
 
146
- export function GlobalStylesProvider({
147
- children
148
- }) {
115
+ export function GlobalStylesProvider(_ref) {
116
+ let {
117
+ children
118
+ } = _ref;
149
119
  const context = useGlobalStylesContext();
150
120
 
151
121
  if (!context.isReady) {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/global-styles-provider.js"],"names":["get","cloneDeep","set","mergeWith","pickBy","isEmpty","isObject","identity","mapValues","useMemo","useCallback","useSelect","useDispatch","store","coreStore","PRESET_METADATA","GlobalStylesContext","mergeTreesCustomizer","_","srcValue","Array","isArray","mergeBaseAndUserConfigs","base","user","addUserOriginToSettings","settingsToAdd","newSettings","forEach","path","presetData","removeUserOriginFromSettings","settingsToRemove","cleanEmptyObject","object","cleanedNestedObjects","undefined","useGlobalStylesUserConfig","globalStylesId","settings","styles","select","_globalStylesId","__experimentalGetCurrentGlobalStylesId","record","getEditedEntityRecord","editEntityRecord","config","setConfig","callback","currentConfig","updatedConfig","useGlobalStylesBaseConfig","baseConfig","__experimentalGetCurrentThemeBaseGlobalStyles","useGlobalStylesContext","isUserConfigReady","userConfig","setUserConfig","mergedConfig","context","isReady","merged","GlobalStylesProvider","children"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tget,\n\tcloneDeep,\n\tset,\n\tmergeWith,\n\tpickBy,\n\tisEmpty,\n\tisObject,\n\tidentity,\n\tmapValues,\n} from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { PRESET_METADATA } from './utils';\nimport { GlobalStylesContext } from './context';\n\nfunction mergeTreesCustomizer( _, srcValue ) {\n\t// We only pass as arrays the presets,\n\t// in which case we want the new array of values\n\t// to override the old array (no merging).\n\tif ( Array.isArray( srcValue ) ) {\n\t\treturn srcValue;\n\t}\n}\n\nfunction mergeBaseAndUserConfigs( base, user ) {\n\treturn mergeWith( {}, base, user, mergeTreesCustomizer );\n}\n\nfunction addUserOriginToSettings( settingsToAdd ) {\n\tconst newSettings = cloneDeep( settingsToAdd );\n\tPRESET_METADATA.forEach( ( { path } ) => {\n\t\tconst presetData = get( newSettings, path );\n\t\tif ( presetData ) {\n\t\t\tset( newSettings, path, {\n\t\t\t\tuser: presetData,\n\t\t\t} );\n\t\t}\n\t} );\n\treturn newSettings;\n}\n\nfunction removeUserOriginFromSettings( settingsToRemove ) {\n\tconst newSettings = cloneDeep( settingsToRemove );\n\tPRESET_METADATA.forEach( ( { path } ) => {\n\t\tconst presetData = get( newSettings, path );\n\t\tif ( presetData ) {\n\t\t\tset( newSettings, path, ( presetData ?? {} ).user );\n\t\t}\n\t} );\n\treturn newSettings;\n}\nconst cleanEmptyObject = ( object ) => {\n\tif ( ! isObject( object ) || Array.isArray( object ) ) {\n\t\treturn object;\n\t}\n\tconst cleanedNestedObjects = pickBy(\n\t\tmapValues( object, cleanEmptyObject ),\n\t\tidentity\n\t);\n\treturn isEmpty( cleanedNestedObjects ) ? undefined : cleanedNestedObjects;\n};\n\nfunction useGlobalStylesUserConfig() {\n\tconst { globalStylesId, settings, styles } = useSelect( ( select ) => {\n\t\tconst _globalStylesId = select(\n\t\t\tcoreStore\n\t\t).__experimentalGetCurrentGlobalStylesId();\n\t\tconst record = _globalStylesId\n\t\t\t? select( coreStore ).getEditedEntityRecord(\n\t\t\t\t\t'root',\n\t\t\t\t\t'globalStyles',\n\t\t\t\t\t_globalStylesId\n\t\t\t )\n\t\t\t: undefined;\n\t\treturn {\n\t\t\tglobalStylesId: _globalStylesId,\n\t\t\tsettings: record?.settings,\n\t\t\tstyles: record?.styles,\n\t\t};\n\t}, [] );\n\n\tconst { getEditedEntityRecord } = useSelect( coreStore );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst config = useMemo( () => {\n\t\treturn {\n\t\t\tsettings: addUserOriginToSettings( settings ?? {} ),\n\t\t\tstyles: styles ?? {},\n\t\t};\n\t}, [ settings, styles ] );\n\n\tconst setConfig = useCallback(\n\t\t( callback ) => {\n\t\t\tconst record = getEditedEntityRecord(\n\t\t\t\t'root',\n\t\t\t\t'globalStyles',\n\t\t\t\tglobalStylesId\n\t\t\t);\n\t\t\tconst currentConfig = {\n\t\t\t\tstyles: record?.styles ?? {},\n\t\t\t\tsettings: addUserOriginToSettings( record?.settings ?? {} ),\n\t\t\t};\n\t\t\tconst updatedConfig = callback( currentConfig );\n\t\t\teditEntityRecord( 'root', 'globalStyles', globalStylesId, {\n\t\t\t\tstyles: cleanEmptyObject( updatedConfig.styles ) || {},\n\t\t\t\tsettings:\n\t\t\t\t\tcleanEmptyObject(\n\t\t\t\t\t\tremoveUserOriginFromSettings( updatedConfig.settings )\n\t\t\t\t\t) || {},\n\t\t\t} );\n\t\t},\n\t\t[ globalStylesId ]\n\t);\n\n\treturn [ !! settings || !! styles, config, setConfig ];\n}\n\nfunction useGlobalStylesBaseConfig() {\n\tconst baseConfig = useSelect( ( select ) => {\n\t\treturn select(\n\t\t\tcoreStore\n\t\t).__experimentalGetCurrentThemeBaseGlobalStyles();\n\t}, [] );\n\n\treturn baseConfig;\n}\n\nfunction useGlobalStylesContext() {\n\tconst [\n\t\tisUserConfigReady,\n\t\tuserConfig,\n\t\tsetUserConfig,\n\t] = useGlobalStylesUserConfig();\n\tconst baseConfig = useGlobalStylesBaseConfig();\n\tconst mergedConfig = useMemo( () => {\n\t\tif ( ! baseConfig || ! userConfig ) {\n\t\t\treturn {};\n\t\t}\n\t\treturn mergeBaseAndUserConfigs( baseConfig, userConfig );\n\t}, [ userConfig, baseConfig ] );\n\tconst context = useMemo( () => {\n\t\treturn {\n\t\t\tisReady: isUserConfigReady,\n\t\t\tuser: userConfig,\n\t\t\tbase: baseConfig,\n\t\t\tmerged: mergedConfig,\n\t\t\tsetUserConfig,\n\t\t};\n\t}, [\n\t\tmergedConfig,\n\t\tuserConfig,\n\t\tbaseConfig,\n\t\tsetUserConfig,\n\t\tisUserConfigReady,\n\t] );\n\n\treturn context;\n}\n\nexport function GlobalStylesProvider( { children } ) {\n\tconst context = useGlobalStylesContext();\n\tif ( ! context.isReady ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ context }>\n\t\t\t{ children }\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/global-styles-provider.js"],"names":["mergeWith","pickBy","isEmpty","isObject","identity","mapValues","useMemo","useCallback","useSelect","useDispatch","store","coreStore","GlobalStylesContext","mergeTreesCustomizer","_","srcValue","Array","isArray","mergeBaseAndUserConfigs","base","user","cleanEmptyObject","object","cleanedNestedObjects","undefined","useGlobalStylesUserConfig","globalStylesId","settings","styles","select","_globalStylesId","__experimentalGetCurrentGlobalStylesId","record","getEditedEntityRecord","editEntityRecord","config","setConfig","callback","currentConfig","updatedConfig","useGlobalStylesBaseConfig","baseConfig","__experimentalGetCurrentThemeBaseGlobalStyles","useGlobalStylesContext","isUserConfigReady","userConfig","setUserConfig","isBaseConfigReady","mergedConfig","context","isReady","merged","GlobalStylesProvider","children"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tmergeWith,\n\tpickBy,\n\tisEmpty,\n\tisObject,\n\tidentity,\n\tmapValues,\n} from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { GlobalStylesContext } from './context';\n\nfunction mergeTreesCustomizer( _, srcValue ) {\n\t// We only pass as arrays the presets,\n\t// in which case we want the new array of values\n\t// to override the old array (no merging).\n\tif ( Array.isArray( srcValue ) ) {\n\t\treturn srcValue;\n\t}\n}\n\nfunction mergeBaseAndUserConfigs( base, user ) {\n\treturn mergeWith( {}, base, user, mergeTreesCustomizer );\n}\n\nconst cleanEmptyObject = ( object ) => {\n\tif ( ! isObject( object ) || Array.isArray( object ) ) {\n\t\treturn object;\n\t}\n\tconst cleanedNestedObjects = pickBy(\n\t\tmapValues( object, cleanEmptyObject ),\n\t\tidentity\n\t);\n\treturn isEmpty( cleanedNestedObjects ) ? undefined : cleanedNestedObjects;\n};\n\nfunction useGlobalStylesUserConfig() {\n\tconst { globalStylesId, settings, styles } = useSelect( ( select ) => {\n\t\tconst _globalStylesId = select(\n\t\t\tcoreStore\n\t\t).__experimentalGetCurrentGlobalStylesId();\n\t\tconst record = _globalStylesId\n\t\t\t? select( coreStore ).getEditedEntityRecord(\n\t\t\t\t\t'root',\n\t\t\t\t\t'globalStyles',\n\t\t\t\t\t_globalStylesId\n\t\t\t )\n\t\t\t: undefined;\n\t\treturn {\n\t\t\tglobalStylesId: _globalStylesId,\n\t\t\tsettings: record?.settings,\n\t\t\tstyles: record?.styles,\n\t\t};\n\t}, [] );\n\n\tconst { getEditedEntityRecord } = useSelect( coreStore );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst config = useMemo( () => {\n\t\treturn {\n\t\t\tsettings: settings ?? {},\n\t\t\tstyles: styles ?? {},\n\t\t};\n\t}, [ settings, styles ] );\n\n\tconst setConfig = useCallback(\n\t\t( callback ) => {\n\t\t\tconst record = getEditedEntityRecord(\n\t\t\t\t'root',\n\t\t\t\t'globalStyles',\n\t\t\t\tglobalStylesId\n\t\t\t);\n\t\t\tconst currentConfig = {\n\t\t\t\tstyles: record?.styles ?? {},\n\t\t\t\tsettings: record?.settings ?? {},\n\t\t\t};\n\t\t\tconst updatedConfig = callback( currentConfig );\n\t\t\teditEntityRecord( 'root', 'globalStyles', globalStylesId, {\n\t\t\t\tstyles: cleanEmptyObject( updatedConfig.styles ) || {},\n\t\t\t\tsettings: cleanEmptyObject( updatedConfig.settings ) || {},\n\t\t\t} );\n\t\t},\n\t\t[ globalStylesId ]\n\t);\n\n\treturn [ !! settings || !! styles, config, setConfig ];\n}\n\nfunction useGlobalStylesBaseConfig() {\n\tconst baseConfig = useSelect( ( select ) => {\n\t\treturn select(\n\t\t\tcoreStore\n\t\t).__experimentalGetCurrentThemeBaseGlobalStyles();\n\t}, [] );\n\n\treturn [ !! baseConfig, baseConfig ];\n}\n\nfunction useGlobalStylesContext() {\n\tconst [\n\t\tisUserConfigReady,\n\t\tuserConfig,\n\t\tsetUserConfig,\n\t] = useGlobalStylesUserConfig();\n\tconst [ isBaseConfigReady, baseConfig ] = useGlobalStylesBaseConfig();\n\tconst mergedConfig = useMemo( () => {\n\t\tif ( ! baseConfig || ! userConfig ) {\n\t\t\treturn {};\n\t\t}\n\t\treturn mergeBaseAndUserConfigs( baseConfig, userConfig );\n\t}, [ userConfig, baseConfig ] );\n\tconst context = useMemo( () => {\n\t\treturn {\n\t\t\tisReady: isUserConfigReady && isBaseConfigReady,\n\t\t\tuser: userConfig,\n\t\t\tbase: baseConfig,\n\t\t\tmerged: mergedConfig,\n\t\t\tsetUserConfig,\n\t\t};\n\t}, [\n\t\tmergedConfig,\n\t\tuserConfig,\n\t\tbaseConfig,\n\t\tsetUserConfig,\n\t\tisUserConfigReady,\n\t\tisBaseConfigReady,\n\t] );\n\n\treturn context;\n}\n\nexport function GlobalStylesProvider( { children } ) {\n\tconst context = useGlobalStylesContext();\n\tif ( ! context.isReady ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ context }>\n\t\t\t{ children }\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n"]}
@@ -12,11 +12,12 @@ import { chevronRight, chevronLeft, Icon } from '@wordpress/icons';
12
12
 
13
13
  import NavigationButton from './navigation-button';
14
14
 
15
- function ScreenHeader({
16
- back,
17
- title,
18
- description
19
- }) {
15
+ function ScreenHeader(_ref) {
16
+ let {
17
+ back,
18
+ title,
19
+ description
20
+ } = _ref;
20
21
  return createElement(VStack, {
21
22
  spacing: 2
22
23
  }, createElement(HStack, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/header.js"],"names":["__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalHeading","Heading","__experimentalView","View","isRTL","__","chevronRight","chevronLeft","Icon","NavigationButton","ScreenHeader","back","title","description"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MADzB,EAECC,oBAAoB,IAAIC,MAFzB,EAGCC,oBAAoB,IAAIC,MAHzB,EAICC,qBAAqB,IAAIC,OAJ1B,EAKCC,kBAAkB,IAAIC,IALvB,QAMO,uBANP;AAOA,SAASC,KAAT,EAAgBC,EAAhB,QAA0B,iBAA1B;AACA,SAASC,YAAT,EAAuBC,WAAvB,EAAoCC,IAApC,QAAgD,kBAAhD;AAEA;AACA;AACA;;AACA,OAAOC,gBAAP,MAA6B,qBAA7B;;AAEA,SAASC,YAAT,CAAuB;AAAEC,EAAAA,IAAF;AAAQC,EAAAA,KAAR;AAAeC,EAAAA;AAAf,CAAvB,EAAsD;AACrD,SACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAG;AAAlB,KACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAG;AAAlB,KACC,cAAC,IAAD,QACC,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGF,IADR;AAEC,IAAA,IAAI,EACH,cAAC,IAAD;AACC,MAAA,IAAI,EAAGP,KAAK,KAAKE,YAAL,GAAoBC,WADjC;AAEC,MAAA,OAAO,EAAC;AAFT,MAHF;AAQC,IAAA,IAAI,EAAC,OARN;AASC,IAAA,MAAM,MATP;AAUC,kBAAaF,EAAE,CAAE,+BAAF;AAVhB,IADD,CADD,EAeC,cAAC,MAAD,QACC,cAAC,OAAD;AAAS,IAAA,KAAK,EAAG;AAAjB,KAAuBO,KAAvB,CADD,CAfD,CADD,EAoBGC,WAAW,IACZ;AAAG,IAAA,SAAS,EAAC;AAAb,KACGA,WADH,CArBF,CADD;AA4BA;;AAED,eAAeH,YAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHeading as Heading,\n\t__experimentalView as View,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { chevronRight, chevronLeft, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport NavigationButton from './navigation-button';\n\nfunction ScreenHeader( { back, title, description } ) {\n\treturn (\n\t\t<VStack spacing={ 2 }>\n\t\t\t<HStack spacing={ 2 }>\n\t\t\t\t<View>\n\t\t\t\t\t<NavigationButton\n\t\t\t\t\t\tpath={ back }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\t\tvariant=\"muted\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\tisBack\n\t\t\t\t\t\taria-label={ __( 'Navigate to the previous view' ) }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<Spacer>\n\t\t\t\t\t<Heading level={ 5 }>{ title }</Heading>\n\t\t\t\t</Spacer>\n\t\t\t</HStack>\n\t\t\t{ description && (\n\t\t\t\t<p className=\"edit-site-global-styles-header__description\">\n\t\t\t\t\t{ description }\n\t\t\t\t</p>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n\nexport default ScreenHeader;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/header.js"],"names":["__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalHeading","Heading","__experimentalView","View","isRTL","__","chevronRight","chevronLeft","Icon","NavigationButton","ScreenHeader","back","title","description"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MADzB,EAECC,oBAAoB,IAAIC,MAFzB,EAGCC,oBAAoB,IAAIC,MAHzB,EAICC,qBAAqB,IAAIC,OAJ1B,EAKCC,kBAAkB,IAAIC,IALvB,QAMO,uBANP;AAOA,SAASC,KAAT,EAAgBC,EAAhB,QAA0B,iBAA1B;AACA,SAASC,YAAT,EAAuBC,WAAvB,EAAoCC,IAApC,QAAgD,kBAAhD;AAEA;AACA;AACA;;AACA,OAAOC,gBAAP,MAA6B,qBAA7B;;AAEA,SAASC,YAAT,OAAsD;AAAA,MAA/B;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,KAAR;AAAeC,IAAAA;AAAf,GAA+B;AACrD,SACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAG;AAAlB,KACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAG;AAAlB,KACC,cAAC,IAAD,QACC,cAAC,gBAAD;AACC,IAAA,IAAI,EAAGF,IADR;AAEC,IAAA,IAAI,EACH,cAAC,IAAD;AACC,MAAA,IAAI,EAAGP,KAAK,KAAKE,YAAL,GAAoBC,WADjC;AAEC,MAAA,OAAO,EAAC;AAFT,MAHF;AAQC,IAAA,IAAI,EAAC,OARN;AASC,IAAA,MAAM,MATP;AAUC,kBAAaF,EAAE,CAAE,+BAAF;AAVhB,IADD,CADD,EAeC,cAAC,MAAD,QACC,cAAC,OAAD;AAAS,IAAA,KAAK,EAAG;AAAjB,KAAuBO,KAAvB,CADD,CAfD,CADD,EAoBGC,WAAW,IACZ;AAAG,IAAA,SAAS,EAAC;AAAb,KACGA,WADH,CArBF,CADD;AA4BA;;AAED,eAAeH,YAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHeading as Heading,\n\t__experimentalView as View,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { chevronRight, chevronLeft, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport NavigationButton from './navigation-button';\n\nfunction ScreenHeader( { back, title, description } ) {\n\treturn (\n\t\t<VStack spacing={ 2 }>\n\t\t\t<HStack spacing={ 2 }>\n\t\t\t\t<View>\n\t\t\t\t\t<NavigationButton\n\t\t\t\t\t\tpath={ back }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\t\tvariant=\"muted\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\tisBack\n\t\t\t\t\t\taria-label={ __( 'Navigate to the previous view' ) }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<Spacer>\n\t\t\t\t\t<Heading level={ 5 }>{ title }</Heading>\n\t\t\t\t</Spacer>\n\t\t\t</HStack>\n\t\t\t{ description && (\n\t\t\t\t<p className=\"edit-site-global-styles-header__description\">\n\t\t\t\t\t{ description }\n\t\t\t\t</p>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n\nexport default ScreenHeader;\n"]}
@@ -6,7 +6,7 @@ import { get, cloneDeep, set, isEqual, has } from 'lodash';
6
6
  * WordPress dependencies
7
7
  */
8
8
 
9
- import { __ } from '@wordpress/i18n';
9
+ import { _x } from '@wordpress/i18n';
10
10
  import { useContext, useCallback, useMemo } from '@wordpress/element';
11
11
  import { getBlockType, __EXPERIMENTAL_PATHS_WITH_MERGE as PATHS_WITH_MERGE, __EXPERIMENTAL_STYLE_PROPERTY as STYLE_PROPERTY } from '@wordpress/blocks';
12
12
  /**
@@ -27,9 +27,10 @@ export const useGlobalStylesReset = () => {
27
27
  const canReset = !!config && !isEqual(config, EMPTY_CONFIG);
28
28
  return [canReset, useCallback(() => setUserConfig(() => EMPTY_CONFIG), [setUserConfig])];
29
29
  };
30
- export function useSetting(path, blockName, source = 'all') {
30
+ export function useSetting(path, blockName) {
31
31
  var _getSettingValueForCo;
32
32
 
33
+ let source = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'all';
33
34
  const {
34
35
  merged: mergedConfig,
35
36
  base: baseConfig,
@@ -56,7 +57,7 @@ export function useSetting(path, blockName, source = 'all') {
56
57
  if (PATHS_WITH_MERGE[path]) {
57
58
  var _ref, _result$user;
58
59
 
59
- return (_ref = (_result$user = result === null || result === void 0 ? void 0 : result.user) !== null && _result$user !== void 0 ? _result$user : result === null || result === void 0 ? void 0 : result.theme) !== null && _ref !== void 0 ? _ref : result === null || result === void 0 ? void 0 : result.core;
60
+ return (_ref = (_result$user = result === null || result === void 0 ? void 0 : result.user) !== null && _result$user !== void 0 ? _result$user : result === null || result === void 0 ? void 0 : result.theme) !== null && _ref !== void 0 ? _ref : result === null || result === void 0 ? void 0 : result.default;
60
61
  }
61
62
 
62
63
  return result;
@@ -88,9 +89,10 @@ export function useSetting(path, blockName, source = 'all') {
88
89
  const resultWithFallback = (_getSettingValueForCo = getSettingValueForContext(blockName)) !== null && _getSettingValueForCo !== void 0 ? _getSettingValueForCo : getSettingValueForContext();
89
90
  return [resultWithFallback, setSetting];
90
91
  }
91
- export function useStyle(path, blockName, source = 'all') {
92
+ export function useStyle(path, blockName) {
92
93
  var _get;
93
94
 
95
+ let source = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'all';
94
96
  const {
95
97
  merged: mergedConfig,
96
98
  base: baseConfig,
@@ -162,65 +164,67 @@ export function getSupportedGlobalStylesPanels(name) {
162
164
  return supportKeys;
163
165
  }
164
166
  export function useColorsPerOrigin(name) {
165
- const [userColors] = useSetting('color.palette.user', name);
167
+ const [customColors] = useSetting('color.palette.user', name);
166
168
  const [themeColors] = useSetting('color.palette.theme', name);
167
- const [coreColors] = useSetting('color.palette.core', name);
169
+ const [defaultColors] = useSetting('color.palette.default', name);
170
+ const [shouldDisplayDefaultColors] = useSetting('color.defaultPalette');
168
171
  return useMemo(() => {
169
172
  const result = [];
170
173
 
171
- if (coreColors && coreColors.length) {
174
+ if (themeColors && themeColors.length) {
172
175
  result.push({
173
- name: __('Core'),
174
- colors: coreColors
176
+ name: _x('Theme', 'Indicates this palette comes from the theme.'),
177
+ colors: themeColors
175
178
  });
176
179
  }
177
180
 
178
- if (themeColors && themeColors.length) {
181
+ if (shouldDisplayDefaultColors && defaultColors && defaultColors.length) {
179
182
  result.push({
180
- name: __('Theme'),
181
- colors: themeColors
183
+ name: _x('Default', 'Indicates this palette comes from WordPress.'),
184
+ colors: defaultColors
182
185
  });
183
186
  }
184
187
 
185
- if (userColors && userColors.length) {
188
+ if (customColors && customColors.length) {
186
189
  result.push({
187
- name: __('User'),
188
- colors: userColors
190
+ name: _x('Custom', 'Indicates this palette is created by the user.'),
191
+ colors: customColors
189
192
  });
190
193
  }
191
194
 
192
195
  return result;
193
- }, [userColors, themeColors, coreColors]);
196
+ }, [customColors, themeColors, defaultColors]);
194
197
  }
195
198
  export function useGradientsPerOrigin(name) {
196
- const [userGradients] = useSetting('color.gradients.user', name);
199
+ const [customGradients] = useSetting('color.gradients.user', name);
197
200
  const [themeGradients] = useSetting('color.gradients.theme', name);
198
- const [coreGradients] = useSetting('color.gradients.core', name);
201
+ const [defaultGradients] = useSetting('color.gradients.default', name);
202
+ const [shouldDisplayDefaultGradients] = useSetting('color.defaultGradients');
199
203
  return useMemo(() => {
200
204
  const result = [];
201
205
 
202
- if (coreGradients && coreGradients.length) {
206
+ if (themeGradients && themeGradients.length) {
203
207
  result.push({
204
- name: __('Core'),
205
- gradients: coreGradients
208
+ name: _x('Theme', 'Indicates this palette comes from the theme.'),
209
+ gradients: themeGradients
206
210
  });
207
211
  }
208
212
 
209
- if (themeGradients && themeGradients.length) {
213
+ if (shouldDisplayDefaultGradients && defaultGradients && defaultGradients.length) {
210
214
  result.push({
211
- name: __('Theme'),
212
- gradients: themeGradients
215
+ name: _x('Default', 'Indicates this palette comes from WordPress.'),
216
+ gradients: defaultGradients
213
217
  });
214
218
  }
215
219
 
216
- if (userGradients && userGradients.length) {
220
+ if (customGradients && customGradients.length) {
217
221
  result.push({
218
- name: __('User'),
219
- gradients: userGradients
222
+ name: _x('Custom', 'Indicates this palette is created by the user.'),
223
+ gradients: customGradients
220
224
  });
221
225
  }
222
226
 
223
227
  return result;
224
- }, [userGradients, themeGradients, coreGradients]);
228
+ }, [customGradients, themeGradients, defaultGradients]);
225
229
  }
226
230
  //# sourceMappingURL=hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/hooks.js"],"names":["get","cloneDeep","set","isEqual","has","__","useContext","useCallback","useMemo","getBlockType","__EXPERIMENTAL_PATHS_WITH_MERGE","PATHS_WITH_MERGE","__EXPERIMENTAL_STYLE_PROPERTY","STYLE_PROPERTY","getValueFromVariable","getPresetVariableFromValue","GlobalStylesContext","EMPTY_CONFIG","isGlobalStylesUserThemeJSON","version","useGlobalStylesReset","user","config","setUserConfig","canReset","useSetting","path","blockName","source","merged","mergedConfig","base","baseConfig","userConfig","fullPath","setSetting","newValue","currentConfig","newUserConfig","pathToSet","getSettingValueForContext","name","currentPath","getSettingValue","configToUse","result","theme","core","resultWithFallback","useStyle","finalPath","setStyle","settings","ROOT_BLOCK_SUPPORTS","getSupportedGlobalStylesPanels","blockType","supportKeys","Object","keys","forEach","styleName","support","requiresOptOut","supports","push","useColorsPerOrigin","userColors","themeColors","coreColors","length","colors","useGradientsPerOrigin","userGradients","themeGradients","coreGradients","gradients"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, cloneDeep, set, isEqual, has } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useContext, useCallback, useMemo } from '@wordpress/element';\nimport {\n\tgetBlockType,\n\t__EXPERIMENTAL_PATHS_WITH_MERGE as PATHS_WITH_MERGE,\n\t__EXPERIMENTAL_STYLE_PROPERTY as STYLE_PROPERTY,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, getPresetVariableFromValue } from './utils';\nimport { GlobalStylesContext } from './context';\n\nconst EMPTY_CONFIG = { isGlobalStylesUserThemeJSON: true, version: 1 };\n\nexport const useGlobalStylesReset = () => {\n\tconst { user: config, setUserConfig } = useContext( GlobalStylesContext );\n\tconst canReset = !! config && ! isEqual( config, EMPTY_CONFIG );\n\treturn [\n\t\tcanReset,\n\t\tuseCallback( () => setUserConfig( () => EMPTY_CONFIG ), [\n\t\t\tsetUserConfig,\n\t\t] ),\n\t];\n};\n\nexport function useSetting( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\n\tconst fullPath = ! blockName\n\t\t? `settings.${ path }`\n\t\t: `settings.blocks.${ blockName }.${ path }`;\n\n\tconst setSetting = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tconst pathToSet = PATHS_WITH_MERGE[ path ]\n\t\t\t\t? fullPath + '.user'\n\t\t\t\t: fullPath;\n\t\t\tset( newUserConfig, pathToSet, newValue );\n\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tconst getSettingValueForContext = ( name ) => {\n\t\tconst currentPath = ! name\n\t\t\t? `settings.${ path }`\n\t\t\t: `settings.blocks.${ name }.${ path }`;\n\n\t\tconst getSettingValue = ( configToUse ) => {\n\t\t\tconst result = get( configToUse, currentPath );\n\t\t\tif ( PATHS_WITH_MERGE[ path ] ) {\n\t\t\t\treturn result?.user ?? result?.theme ?? result?.core;\n\t\t\t}\n\t\t\treturn result;\n\t\t};\n\n\t\tlet result;\n\t\tswitch ( source ) {\n\t\t\tcase 'all':\n\t\t\t\tresult = getSettingValue( mergedConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'user':\n\t\t\t\tresult = getSettingValue( userConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'base':\n\t\t\t\tresult = getSettingValue( baseConfig );\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthrow 'Unsupported source';\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Unlike styles settings get inherited from top level settings.\n\tconst resultWithFallback =\n\t\tgetSettingValueForContext( blockName ) ?? getSettingValueForContext();\n\n\treturn [ resultWithFallback, setSetting ];\n}\n\nexport function useStyle( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\tconst finalPath = ! blockName\n\t\t? `styles.${ path }`\n\t\t: `styles.blocks.${ blockName }.${ path }`;\n\n\tconst setStyle = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tset(\n\t\t\t\tnewUserConfig,\n\t\t\t\tfinalPath,\n\t\t\t\tgetPresetVariableFromValue(\n\t\t\t\t\tmergedConfig.settings,\n\t\t\t\t\tblockName,\n\t\t\t\t\tpath,\n\t\t\t\t\tnewValue\n\t\t\t\t)\n\t\t\t);\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tlet result;\n\tswitch ( source ) {\n\t\tcase 'all':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath ) ?? get( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'user':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'base':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tbaseConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow 'Unsupported source';\n\t}\n\n\treturn [ result, setStyle ];\n}\n\nconst ROOT_BLOCK_SUPPORTS = [\n\t'background',\n\t'backgroundColor',\n\t'color',\n\t'linkColor',\n\t'fontFamily',\n\t'fontSize',\n\t'fontStyle',\n\t'fontWeight',\n\t'lineHeight',\n\t'textDecoration',\n\t'textTransform',\n\t'padding',\n];\n\nexport function getSupportedGlobalStylesPanels( name ) {\n\tif ( ! name ) {\n\t\treturn ROOT_BLOCK_SUPPORTS;\n\t}\n\n\tconst blockType = getBlockType( name );\n\n\tif ( ! blockType ) {\n\t\treturn [];\n\t}\n\n\tconst supportKeys = [];\n\tObject.keys( STYLE_PROPERTY ).forEach( ( styleName ) => {\n\t\tif ( ! STYLE_PROPERTY[ styleName ].support ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Opting out means that, for certain support keys like background color,\n\t\t// blocks have to explicitly set the support value false. If the key is\n\t\t// unset, we still enable it.\n\t\tif ( STYLE_PROPERTY[ styleName ].requiresOptOut ) {\n\t\t\tif (\n\t\t\t\thas(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support[ 0 ]\n\t\t\t\t) &&\n\t\t\t\tget(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support\n\t\t\t\t) !== false\n\t\t\t) {\n\t\t\t\treturn supportKeys.push( styleName );\n\t\t\t}\n\t\t}\n\n\t\tif (\n\t\t\tget(\n\t\t\t\tblockType.supports,\n\t\t\t\tSTYLE_PROPERTY[ styleName ].support,\n\t\t\t\tfalse\n\t\t\t)\n\t\t) {\n\t\t\treturn supportKeys.push( styleName );\n\t\t}\n\t} );\n\n\treturn supportKeys;\n}\n\nexport function useColorsPerOrigin( name ) {\n\tconst [ userColors ] = useSetting( 'color.palette.user', name );\n\tconst [ themeColors ] = useSetting( 'color.palette.theme', name );\n\tconst [ coreColors ] = useSetting( 'color.palette.core', name );\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( coreColors && coreColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: __( 'Core' ),\n\t\t\t\tcolors: coreColors,\n\t\t\t} );\n\t\t}\n\t\tif ( themeColors && themeColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: __( 'Theme' ),\n\t\t\t\tcolors: themeColors,\n\t\t\t} );\n\t\t}\n\t\tif ( userColors && userColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: __( 'User' ),\n\t\t\t\tcolors: userColors,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ userColors, themeColors, coreColors ] );\n}\n\nexport function useGradientsPerOrigin( name ) {\n\tconst [ userGradients ] = useSetting( 'color.gradients.user', name );\n\tconst [ themeGradients ] = useSetting( 'color.gradients.theme', name );\n\tconst [ coreGradients ] = useSetting( 'color.gradients.core', name );\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( coreGradients && coreGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: __( 'Core' ),\n\t\t\t\tgradients: coreGradients,\n\t\t\t} );\n\t\t}\n\t\tif ( themeGradients && themeGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: __( 'Theme' ),\n\t\t\t\tgradients: themeGradients,\n\t\t\t} );\n\t\t}\n\t\tif ( userGradients && userGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: __( 'User' ),\n\t\t\t\tgradients: userGradients,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ userGradients, themeGradients, coreGradients ] );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/hooks.js"],"names":["get","cloneDeep","set","isEqual","has","_x","useContext","useCallback","useMemo","getBlockType","__EXPERIMENTAL_PATHS_WITH_MERGE","PATHS_WITH_MERGE","__EXPERIMENTAL_STYLE_PROPERTY","STYLE_PROPERTY","getValueFromVariable","getPresetVariableFromValue","GlobalStylesContext","EMPTY_CONFIG","isGlobalStylesUserThemeJSON","version","useGlobalStylesReset","user","config","setUserConfig","canReset","useSetting","path","blockName","source","merged","mergedConfig","base","baseConfig","userConfig","fullPath","setSetting","newValue","currentConfig","newUserConfig","pathToSet","getSettingValueForContext","name","currentPath","getSettingValue","configToUse","result","theme","default","resultWithFallback","useStyle","finalPath","setStyle","settings","ROOT_BLOCK_SUPPORTS","getSupportedGlobalStylesPanels","blockType","supportKeys","Object","keys","forEach","styleName","support","requiresOptOut","supports","push","useColorsPerOrigin","customColors","themeColors","defaultColors","shouldDisplayDefaultColors","length","colors","useGradientsPerOrigin","customGradients","themeGradients","defaultGradients","shouldDisplayDefaultGradients","gradients"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, cloneDeep, set, isEqual, has } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\nimport { useContext, useCallback, useMemo } from '@wordpress/element';\nimport {\n\tgetBlockType,\n\t__EXPERIMENTAL_PATHS_WITH_MERGE as PATHS_WITH_MERGE,\n\t__EXPERIMENTAL_STYLE_PROPERTY as STYLE_PROPERTY,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, getPresetVariableFromValue } from './utils';\nimport { GlobalStylesContext } from './context';\n\nconst EMPTY_CONFIG = { isGlobalStylesUserThemeJSON: true, version: 1 };\n\nexport const useGlobalStylesReset = () => {\n\tconst { user: config, setUserConfig } = useContext( GlobalStylesContext );\n\tconst canReset = !! config && ! isEqual( config, EMPTY_CONFIG );\n\treturn [\n\t\tcanReset,\n\t\tuseCallback( () => setUserConfig( () => EMPTY_CONFIG ), [\n\t\t\tsetUserConfig,\n\t\t] ),\n\t];\n};\n\nexport function useSetting( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\n\tconst fullPath = ! blockName\n\t\t? `settings.${ path }`\n\t\t: `settings.blocks.${ blockName }.${ path }`;\n\n\tconst setSetting = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tconst pathToSet = PATHS_WITH_MERGE[ path ]\n\t\t\t\t? fullPath + '.user'\n\t\t\t\t: fullPath;\n\t\t\tset( newUserConfig, pathToSet, newValue );\n\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tconst getSettingValueForContext = ( name ) => {\n\t\tconst currentPath = ! name\n\t\t\t? `settings.${ path }`\n\t\t\t: `settings.blocks.${ name }.${ path }`;\n\n\t\tconst getSettingValue = ( configToUse ) => {\n\t\t\tconst result = get( configToUse, currentPath );\n\t\t\tif ( PATHS_WITH_MERGE[ path ] ) {\n\t\t\t\treturn result?.user ?? result?.theme ?? result?.default;\n\t\t\t}\n\t\t\treturn result;\n\t\t};\n\n\t\tlet result;\n\t\tswitch ( source ) {\n\t\t\tcase 'all':\n\t\t\t\tresult = getSettingValue( mergedConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'user':\n\t\t\t\tresult = getSettingValue( userConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'base':\n\t\t\t\tresult = getSettingValue( baseConfig );\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthrow 'Unsupported source';\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Unlike styles settings get inherited from top level settings.\n\tconst resultWithFallback =\n\t\tgetSettingValueForContext( blockName ) ?? getSettingValueForContext();\n\n\treturn [ resultWithFallback, setSetting ];\n}\n\nexport function useStyle( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\tconst finalPath = ! blockName\n\t\t? `styles.${ path }`\n\t\t: `styles.blocks.${ blockName }.${ path }`;\n\n\tconst setStyle = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tset(\n\t\t\t\tnewUserConfig,\n\t\t\t\tfinalPath,\n\t\t\t\tgetPresetVariableFromValue(\n\t\t\t\t\tmergedConfig.settings,\n\t\t\t\t\tblockName,\n\t\t\t\t\tpath,\n\t\t\t\t\tnewValue\n\t\t\t\t)\n\t\t\t);\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tlet result;\n\tswitch ( source ) {\n\t\tcase 'all':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath ) ?? get( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'user':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'base':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tbaseConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow 'Unsupported source';\n\t}\n\n\treturn [ result, setStyle ];\n}\n\nconst ROOT_BLOCK_SUPPORTS = [\n\t'background',\n\t'backgroundColor',\n\t'color',\n\t'linkColor',\n\t'fontFamily',\n\t'fontSize',\n\t'fontStyle',\n\t'fontWeight',\n\t'lineHeight',\n\t'textDecoration',\n\t'textTransform',\n\t'padding',\n];\n\nexport function getSupportedGlobalStylesPanels( name ) {\n\tif ( ! name ) {\n\t\treturn ROOT_BLOCK_SUPPORTS;\n\t}\n\n\tconst blockType = getBlockType( name );\n\n\tif ( ! blockType ) {\n\t\treturn [];\n\t}\n\n\tconst supportKeys = [];\n\tObject.keys( STYLE_PROPERTY ).forEach( ( styleName ) => {\n\t\tif ( ! STYLE_PROPERTY[ styleName ].support ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Opting out means that, for certain support keys like background color,\n\t\t// blocks have to explicitly set the support value false. If the key is\n\t\t// unset, we still enable it.\n\t\tif ( STYLE_PROPERTY[ styleName ].requiresOptOut ) {\n\t\t\tif (\n\t\t\t\thas(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support[ 0 ]\n\t\t\t\t) &&\n\t\t\t\tget(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support\n\t\t\t\t) !== false\n\t\t\t) {\n\t\t\t\treturn supportKeys.push( styleName );\n\t\t\t}\n\t\t}\n\n\t\tif (\n\t\t\tget(\n\t\t\t\tblockType.supports,\n\t\t\t\tSTYLE_PROPERTY[ styleName ].support,\n\t\t\t\tfalse\n\t\t\t)\n\t\t) {\n\t\t\treturn supportKeys.push( styleName );\n\t\t}\n\t} );\n\n\treturn supportKeys;\n}\n\nexport function useColorsPerOrigin( name ) {\n\tconst [ customColors ] = useSetting( 'color.palette.user', name );\n\tconst [ themeColors ] = useSetting( 'color.palette.theme', name );\n\tconst [ defaultColors ] = useSetting( 'color.palette.default', name );\n\tconst [ shouldDisplayDefaultColors ] = useSetting( 'color.defaultPalette' );\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeColors && themeColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tcolors: themeColors,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultColors &&\n\t\t\tdefaultColors &&\n\t\t\tdefaultColors.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tcolors: defaultColors,\n\t\t\t} );\n\t\t}\n\t\tif ( customColors && customColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tcolors: customColors,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ customColors, themeColors, defaultColors ] );\n}\n\nexport function useGradientsPerOrigin( name ) {\n\tconst [ customGradients ] = useSetting( 'color.gradients.user', name );\n\tconst [ themeGradients ] = useSetting( 'color.gradients.theme', name );\n\tconst [ defaultGradients ] = useSetting( 'color.gradients.default', name );\n\tconst [ shouldDisplayDefaultGradients ] = useSetting(\n\t\t'color.defaultGradients'\n\t);\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeGradients && themeGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tgradients: themeGradients,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultGradients &&\n\t\t\tdefaultGradients &&\n\t\t\tdefaultGradients.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tgradients: defaultGradients,\n\t\t\t} );\n\t\t}\n\t\tif ( customGradients && customGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tgradients: customGradients,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ customGradients, themeGradients, defaultGradients ] );\n}\n"]}
@@ -7,13 +7,14 @@ import { createElement } from "@wordpress/element";
7
7
  import { __experimentalUseNavigator as useNavigator, __experimentalItem as Item, FlexItem, __experimentalHStack as HStack } from '@wordpress/components';
8
8
  import { Icon } from '@wordpress/icons';
9
9
 
10
- function NavigationButton({
11
- path,
12
- icon,
13
- children,
14
- isBack = false,
15
- ...props
16
- }) {
10
+ function NavigationButton(_ref) {
11
+ let {
12
+ path,
13
+ icon,
14
+ children,
15
+ isBack = false,
16
+ ...props
17
+ } = _ref;
17
18
  const navigator = useNavigator();
18
19
  return createElement(Item, _extends({
19
20
  onClick: () => navigator.push(path, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/navigation-button.js"],"names":["__experimentalUseNavigator","useNavigator","__experimentalItem","Item","FlexItem","__experimentalHStack","HStack","Icon","NavigationButton","path","icon","children","isBack","props","navigator","push"],"mappings":";;;AAAA;AACA;AACA;AACA,SACCA,0BAA0B,IAAIC,YAD/B,EAECC,kBAAkB,IAAIC,IAFvB,EAGCC,QAHD,EAICC,oBAAoB,IAAIC,MAJzB,QAKO,uBALP;AAMA,SAASC,IAAT,QAAqB,kBAArB;;AAEA,SAASC,gBAAT,CAA2B;AAC1BC,EAAAA,IAD0B;AAE1BC,EAAAA,IAF0B;AAG1BC,EAAAA,QAH0B;AAI1BC,EAAAA,MAAM,GAAG,KAJiB;AAK1B,KAAGC;AALuB,CAA3B,EAMI;AACH,QAAMC,SAAS,GAAGb,YAAY,EAA9B;AACA,SACC,cAAC,IAAD;AAAM,IAAA,OAAO,EAAG,MAAMa,SAAS,CAACC,IAAV,CAAgBN,IAAhB,EAAsB;AAAEG,MAAAA;AAAF,KAAtB;AAAtB,KAAgEC,KAAhE,GACGH,IAAI,IACL,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC;AAAhB,KACC,cAAC,QAAD,QACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGA,IAAb;AAAoB,IAAA,IAAI,EAAG;AAA3B,IADD,CADD,EAIC,cAAC,QAAD,QAAYC,QAAZ,CAJD,CAFF,EASG,CAAED,IAAF,IAAUC,QATb,CADD;AAaA;;AAED,eAAeH,gBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalItem as Item,\n\tFlexItem,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { Icon } from '@wordpress/icons';\n\nfunction NavigationButton( {\n\tpath,\n\ticon,\n\tchildren,\n\tisBack = false,\n\t...props\n} ) {\n\tconst navigator = useNavigator();\n\treturn (\n\t\t<Item onClick={ () => navigator.push( path, { isBack } ) } { ...props }>\n\t\t\t{ icon && (\n\t\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Icon icon={ icon } size={ 24 } />\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>{ children }</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t) }\n\t\t\t{ ! icon && children }\n\t\t</Item>\n\t);\n}\n\nexport default NavigationButton;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/navigation-button.js"],"names":["__experimentalUseNavigator","useNavigator","__experimentalItem","Item","FlexItem","__experimentalHStack","HStack","Icon","NavigationButton","path","icon","children","isBack","props","navigator","push"],"mappings":";;;AAAA;AACA;AACA;AACA,SACCA,0BAA0B,IAAIC,YAD/B,EAECC,kBAAkB,IAAIC,IAFvB,EAGCC,QAHD,EAICC,oBAAoB,IAAIC,MAJzB,QAKO,uBALP;AAMA,SAASC,IAAT,QAAqB,kBAArB;;AAEA,SAASC,gBAAT,OAMI;AAAA,MANuB;AAC1BC,IAAAA,IAD0B;AAE1BC,IAAAA,IAF0B;AAG1BC,IAAAA,QAH0B;AAI1BC,IAAAA,MAAM,GAAG,KAJiB;AAK1B,OAAGC;AALuB,GAMvB;AACH,QAAMC,SAAS,GAAGb,YAAY,EAA9B;AACA,SACC,cAAC,IAAD;AAAM,IAAA,OAAO,EAAG,MAAMa,SAAS,CAACC,IAAV,CAAgBN,IAAhB,EAAsB;AAAEG,MAAAA;AAAF,KAAtB;AAAtB,KAAgEC,KAAhE,GACGH,IAAI,IACL,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC;AAAhB,KACC,cAAC,QAAD,QACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGA,IAAb;AAAoB,IAAA,IAAI,EAAG;AAA3B,IADD,CADD,EAIC,cAAC,QAAD,QAAYC,QAAZ,CAJD,CAFF,EASG,CAAED,IAAF,IAAUC,QATb,CADD;AAaA;;AAED,eAAeH,gBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalItem as Item,\n\tFlexItem,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { Icon } from '@wordpress/icons';\n\nfunction NavigationButton( {\n\tpath,\n\ticon,\n\tchildren,\n\tisBack = false,\n\t...props\n} ) {\n\tconst navigator = useNavigator();\n\treturn (\n\t\t<Item onClick={ () => navigator.push( path, { isBack } ) } { ...props }>\n\t\t\t{ icon && (\n\t\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Icon icon={ icon } size={ 24 } />\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>{ children }</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t) }\n\t\t\t{ ! icon && children }\n\t\t</Item>\n\t);\n}\n\nexport default NavigationButton;\n"]}