@wordpress/edit-site 5.35.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (886) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/build/components/add-new-page/index.js +33 -27
  3. package/build/components/add-new-page/index.js.map +1 -1
  4. package/build/components/add-new-pattern/index.js +95 -78
  5. package/build/components/add-new-pattern/index.js.map +1 -1
  6. package/build/components/add-new-template/add-custom-generic-template-modal-content.js +35 -30
  7. package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  8. package/build/components/add-new-template/add-custom-template-modal-content.js +119 -95
  9. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  10. package/build/components/add-new-template/index.js +87 -71
  11. package/build/components/add-new-template/index.js.map +1 -1
  12. package/build/components/add-new-template/utils.js +36 -17
  13. package/build/components/add-new-template/utils.js.map +1 -1
  14. package/build/components/app/index.js +10 -4
  15. package/build/components/app/index.js.map +1 -1
  16. package/build/components/block-editor/block-inspector-button.js +5 -4
  17. package/build/components/block-editor/block-inspector-button.js.map +1 -1
  18. package/build/components/block-editor/use-editor-iframe-props.js +88 -0
  19. package/build/components/block-editor/use-editor-iframe-props.js.map +1 -0
  20. package/build/components/canvas-loader/index.js +13 -12
  21. package/build/components/canvas-loader/index.js.map +1 -1
  22. package/build/components/dataviews-actions/index.js +7 -4
  23. package/build/components/dataviews-actions/index.js.map +1 -1
  24. package/build/components/editor/index.js +59 -148
  25. package/build/components/editor/index.js.map +1 -1
  26. package/build/components/editor-canvas-container/index.js +27 -29
  27. package/build/components/editor-canvas-container/index.js.map +1 -1
  28. package/build/components/error-boundary/index.js +2 -2
  29. package/build/components/error-boundary/index.js.map +1 -1
  30. package/build/components/error-boundary/warning.js +13 -11
  31. package/build/components/error-boundary/warning.js.map +1 -1
  32. package/build/components/global-styles/background-panel.js +6 -5
  33. package/build/components/global-styles/background-panel.js.map +1 -1
  34. package/build/components/global-styles/block-preview-panel.js +19 -17
  35. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  36. package/build/components/global-styles/color-indicator-wrapper.js +2 -2
  37. package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
  38. package/build/components/global-styles/color-palette-panel.js +30 -29
  39. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  40. package/build/components/global-styles/dimensions-panel.js +2 -2
  41. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  42. package/build/components/global-styles/font-families.js +55 -39
  43. package/build/components/global-styles/font-families.js.map +1 -1
  44. package/build/components/global-styles/font-family-item.js +17 -13
  45. package/build/components/global-styles/font-family-item.js.map +1 -1
  46. package/build/components/global-styles/font-library-modal/collection-font-variant.js +25 -22
  47. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  48. package/build/components/global-styles/font-library-modal/context.js +7 -30
  49. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  50. package/build/components/global-styles/font-library-modal/font-card.js +24 -16
  51. package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
  52. package/build/components/global-styles/font-library-modal/font-collection.js +195 -152
  53. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  54. package/build/components/global-styles/font-library-modal/font-demo.js +14 -12
  55. package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -1
  56. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +29 -20
  57. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  58. package/build/components/global-styles/font-library-modal/index.js +41 -36
  59. package/build/components/global-styles/font-library-modal/index.js.map +1 -1
  60. package/build/components/global-styles/font-library-modal/installed-fonts.js +153 -109
  61. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  62. package/build/components/global-styles/font-library-modal/library-font-details.js +16 -14
  63. package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
  64. package/build/components/global-styles/font-library-modal/library-font-variant.js +25 -22
  65. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  66. package/build/components/global-styles/font-library-modal/upload-fonts.js +40 -34
  67. package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  68. package/build/components/global-styles/font-library-modal/utils/index.js +3 -3
  69. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  70. package/build/components/global-styles/gradients-palette-panel.js +41 -37
  71. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  72. package/build/components/global-styles/header.js +37 -28
  73. package/build/components/global-styles/header.js.map +1 -1
  74. package/build/components/global-styles/highlighted-colors.js +3 -4
  75. package/build/components/global-styles/highlighted-colors.js.map +1 -1
  76. package/build/components/global-styles/hooks.js +11 -23
  77. package/build/components/global-styles/hooks.js.map +1 -1
  78. package/build/components/global-styles/icon-with-current-color.js +2 -2
  79. package/build/components/global-styles/icon-with-current-color.js.map +1 -1
  80. package/build/components/global-styles/navigation-button.js +15 -11
  81. package/build/components/global-styles/navigation-button.js.map +1 -1
  82. package/build/components/global-styles/palette.js +39 -32
  83. package/build/components/global-styles/palette.js.map +1 -1
  84. package/build/components/global-styles/preset-colors.js +3 -4
  85. package/build/components/global-styles/preset-colors.js.map +1 -1
  86. package/build/components/global-styles/preview-colors.js +22 -20
  87. package/build/components/global-styles/preview-colors.js.map +1 -1
  88. package/build/components/global-styles/preview-iframe.js +34 -29
  89. package/build/components/global-styles/preview-iframe.js.map +1 -1
  90. package/build/components/global-styles/preview-styles.js +95 -90
  91. package/build/components/global-styles/preview-styles.js.map +1 -1
  92. package/build/components/global-styles/root-menu.js +28 -21
  93. package/build/components/global-styles/root-menu.js.map +1 -1
  94. package/build/components/global-styles/screen-background.js +6 -4
  95. package/build/components/global-styles/screen-background.js.map +1 -1
  96. package/build/components/global-styles/screen-block-list.js +33 -27
  97. package/build/components/global-styles/screen-block-list.js.map +1 -1
  98. package/build/components/global-styles/screen-block.js +62 -53
  99. package/build/components/global-styles/screen-block.js.map +1 -1
  100. package/build/components/global-styles/screen-color-palette.js +29 -19
  101. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  102. package/build/components/global-styles/screen-colors.js +18 -14
  103. package/build/components/global-styles/screen-colors.js.map +1 -1
  104. package/build/components/global-styles/screen-css.js +20 -14
  105. package/build/components/global-styles/screen-css.js.map +1 -1
  106. package/build/components/global-styles/screen-layout.js +9 -4
  107. package/build/components/global-styles/screen-layout.js.map +1 -1
  108. package/build/components/global-styles/screen-revisions/index.js +52 -42
  109. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  110. package/build/components/global-styles/screen-revisions/revisions-buttons.js +81 -70
  111. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  112. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +1 -0
  113. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  114. package/build/components/global-styles/screen-root.js +76 -42
  115. package/build/components/global-styles/screen-root.js.map +1 -1
  116. package/build/components/global-styles/screen-shadows.js +22 -0
  117. package/build/components/global-styles/screen-shadows.js.map +1 -0
  118. package/build/components/global-styles/screen-style-variations.js +14 -9
  119. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  120. package/build/components/global-styles/screen-typography-element.js +50 -45
  121. package/build/components/global-styles/screen-typography-element.js.map +1 -1
  122. package/build/components/global-styles/screen-typography.js +15 -11
  123. package/build/components/global-styles/screen-typography.js.map +1 -1
  124. package/build/components/global-styles/shadow-utils.js +230 -0
  125. package/build/components/global-styles/shadow-utils.js.map +1 -0
  126. package/build/components/global-styles/shadows-edit-panel.js +458 -0
  127. package/build/components/global-styles/shadows-edit-panel.js.map +1 -0
  128. package/build/components/global-styles/shadows-panel.js +128 -0
  129. package/build/components/global-styles/shadows-panel.js.map +1 -0
  130. package/build/components/global-styles/style-variations-container.js +67 -18
  131. package/build/components/global-styles/style-variations-container.js.map +1 -1
  132. package/build/components/global-styles/subtitle.js +5 -4
  133. package/build/components/global-styles/subtitle.js.map +1 -1
  134. package/build/components/global-styles/typography-elements.js +53 -45
  135. package/build/components/global-styles/typography-elements.js.map +1 -1
  136. package/build/components/global-styles/typography-example.js +11 -8
  137. package/build/components/global-styles/typography-example.js.map +1 -1
  138. package/build/components/global-styles/typography-panel.js +2 -2
  139. package/build/components/global-styles/typography-panel.js.map +1 -1
  140. package/build/components/global-styles/typography-preview.js +5 -4
  141. package/build/components/global-styles/typography-preview.js.map +1 -1
  142. package/build/components/global-styles/ui.js +124 -92
  143. package/build/components/global-styles/ui.js.map +1 -1
  144. package/build/components/global-styles/utils.js +28 -0
  145. package/build/components/global-styles/utils.js.map +1 -1
  146. package/build/components/global-styles/variations/variation.js +27 -22
  147. package/build/components/global-styles/variations/variation.js.map +1 -1
  148. package/build/components/global-styles/variations/variations-color.js +18 -13
  149. package/build/components/global-styles/variations/variations-color.js.map +1 -1
  150. package/build/components/global-styles/variations/variations-panel.js +27 -17
  151. package/build/components/global-styles/variations/variations-panel.js.map +1 -1
  152. package/build/components/global-styles/variations/variations-typography.js +37 -31
  153. package/build/components/global-styles/variations/variations-typography.js.map +1 -1
  154. package/build/components/global-styles-renderer/index.js +5 -1
  155. package/build/components/global-styles-renderer/index.js.map +1 -1
  156. package/build/components/global-styles-sidebar/default-sidebar.js +22 -18
  157. package/build/components/global-styles-sidebar/default-sidebar.js.map +1 -1
  158. package/build/components/global-styles-sidebar/index.js +34 -26
  159. package/build/components/global-styles-sidebar/index.js.map +1 -1
  160. package/build/components/layout/index.js +112 -95
  161. package/build/components/layout/index.js.map +1 -1
  162. package/build/components/layout/router.js +83 -103
  163. package/build/components/layout/router.js.map +1 -1
  164. package/build/components/media/index.js +2 -2
  165. package/build/components/media/index.js.map +1 -1
  166. package/build/components/{header-edit-mode/more-menu → more-menu}/index.js +7 -3
  167. package/build/components/more-menu/index.js.map +1 -0
  168. package/build/components/{header-edit-mode/more-menu → more-menu}/site-export.js +5 -4
  169. package/build/components/more-menu/site-export.js.map +1 -0
  170. package/build/components/{header-edit-mode/more-menu → more-menu}/welcome-guide-menu-item.js +5 -4
  171. package/build/components/more-menu/welcome-guide-menu-item.js.map +1 -0
  172. package/build/components/page/header.js +24 -20
  173. package/build/components/page/header.js.map +1 -1
  174. package/build/components/page/index.js +12 -10
  175. package/build/components/page/index.js.map +1 -1
  176. package/build/components/page-pages/index.js +133 -52
  177. package/build/components/page-pages/index.js.map +1 -1
  178. package/build/components/page-patterns/delete-category-menu-item.js +23 -20
  179. package/build/components/page-patterns/delete-category-menu-item.js.map +1 -1
  180. package/build/components/page-patterns/header.js +47 -32
  181. package/build/components/page-patterns/header.js.map +1 -1
  182. package/build/components/page-patterns/index.js +114 -108
  183. package/build/components/page-patterns/index.js.map +1 -1
  184. package/build/components/page-patterns/rename-category-menu-item.js +14 -11
  185. package/build/components/page-patterns/rename-category-menu-item.js.map +1 -1
  186. package/build/components/page-patterns/use-patterns.js +7 -6
  187. package/build/components/page-patterns/use-patterns.js.map +1 -1
  188. package/build/components/page-templates/index.js +78 -59
  189. package/build/components/page-templates/index.js.map +1 -1
  190. package/build/components/pagination/index.js +50 -41
  191. package/build/components/pagination/index.js.map +1 -1
  192. package/build/components/plugin-template-setting-panel/index.js +4 -2
  193. package/build/components/plugin-template-setting-panel/index.js.map +1 -1
  194. package/build/components/resizable-frame/index.js +38 -32
  195. package/build/components/resizable-frame/index.js.map +1 -1
  196. package/build/components/revisions/index.js +26 -20
  197. package/build/components/revisions/index.js.map +1 -1
  198. package/build/components/routes/link.js +5 -4
  199. package/build/components/routes/link.js.map +1 -1
  200. package/build/components/save-button/index.js +5 -4
  201. package/build/components/save-button/index.js.map +1 -1
  202. package/build/components/save-hub/index.js +12 -11
  203. package/build/components/save-hub/index.js.map +1 -1
  204. package/build/components/save-panel/index.js +34 -28
  205. package/build/components/save-panel/index.js.map +1 -1
  206. package/build/components/sidebar/index.js +14 -11
  207. package/build/components/sidebar/index.js.map +1 -1
  208. package/build/components/sidebar-button/index.js +2 -2
  209. package/build/components/sidebar-button/index.js.map +1 -1
  210. package/build/components/sidebar-dataviews/add-new-view.js +56 -48
  211. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
  212. package/build/components/sidebar-dataviews/custom-dataviews-list.js +106 -89
  213. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  214. package/build/components/sidebar-dataviews/dataview-item.js +12 -10
  215. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  216. package/build/components/sidebar-dataviews/default-views.js +48 -0
  217. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  218. package/build/components/sidebar-dataviews/index.js +21 -22
  219. package/build/components/sidebar-dataviews/index.js.map +1 -1
  220. package/build/components/sidebar-navigation-item/index.js +27 -25
  221. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  222. package/build/components/sidebar-navigation-screen/index.js +51 -39
  223. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  224. package/build/components/sidebar-navigation-screen-details-footer/index.js +24 -17
  225. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  226. package/build/components/sidebar-navigation-screen-details-panel/index.js +9 -7
  227. package/build/components/sidebar-navigation-screen-details-panel/index.js.map +1 -1
  228. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +5 -4
  229. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -1
  230. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +5 -5
  231. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  232. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +5 -4
  233. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -1
  234. package/build/components/sidebar-navigation-screen-global-styles/index.js +54 -45
  235. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  236. package/build/components/sidebar-navigation-screen-main/index.js +45 -22
  237. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  238. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +5 -4
  239. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
  240. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +11 -10
  241. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  242. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +53 -42
  243. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  244. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +10 -8
  245. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  246. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +42 -36
  247. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  248. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +16 -13
  249. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  250. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
  251. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  252. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +27 -23
  253. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  254. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +50 -35
  255. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  256. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +12 -9
  257. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  258. package/build/components/sidebar-navigation-screen-patterns/category-item.js +12 -10
  259. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  260. package/build/components/sidebar-navigation-screen-patterns/index.js +58 -63
  261. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  262. package/build/components/sidebar-navigation-screen-templates-browse/content.js +17 -17
  263. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  264. package/build/components/sidebar-navigation-screen-templates-browse/index.js +4 -4
  265. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  266. package/build/components/site-hub/index.js +81 -72
  267. package/build/components/site-hub/index.js.map +1 -1
  268. package/build/components/site-icon/index.js +8 -7
  269. package/build/components/site-icon/index.js.map +1 -1
  270. package/build/components/style-book/index.js +115 -99
  271. package/build/components/style-book/index.js.map +1 -1
  272. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +10 -30
  273. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  274. package/build/components/table/index.js +23 -15
  275. package/build/components/table/index.js.map +1 -1
  276. package/build/components/template-part-converter/convert-to-regular.js +5 -4
  277. package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
  278. package/build/components/template-part-converter/convert-to-template-part.js +23 -17
  279. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  280. package/build/components/template-part-converter/index.js +12 -10
  281. package/build/components/template-part-converter/index.js.map +1 -1
  282. package/build/components/welcome-guide/editor.js +20 -15
  283. package/build/components/welcome-guide/editor.js.map +1 -1
  284. package/build/components/welcome-guide/image.js +13 -12
  285. package/build/components/welcome-guide/image.js.map +1 -1
  286. package/build/components/welcome-guide/index.js +4 -2
  287. package/build/components/welcome-guide/index.js.map +1 -1
  288. package/build/components/welcome-guide/page.js +18 -13
  289. package/build/components/welcome-guide/page.js.map +1 -1
  290. package/build/components/welcome-guide/styles.js +45 -28
  291. package/build/components/welcome-guide/styles.js.map +1 -1
  292. package/build/components/welcome-guide/template.js +18 -13
  293. package/build/components/welcome-guide/template.js.map +1 -1
  294. package/build/deprecated.js +4 -4
  295. package/build/deprecated.js.map +1 -1
  296. package/build/hooks/commands/use-common-commands.js +12 -24
  297. package/build/hooks/commands/use-common-commands.js.map +1 -1
  298. package/build/hooks/commands/use-edit-mode-commands.js +2 -116
  299. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  300. package/build/hooks/index.js +0 -1
  301. package/build/hooks/index.js.map +1 -1
  302. package/build/hooks/push-changes-to-global-styles/index.js +25 -16
  303. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  304. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -1
  305. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  306. package/build/index.js +3 -3
  307. package/build/index.js.map +1 -1
  308. package/build/store/private-actions.js +7 -1
  309. package/build/store/private-actions.js.map +1 -1
  310. package/build/store/selectors.js +2 -2
  311. package/build/store/selectors.js.map +1 -1
  312. package/build/utils/template-part-create.js +0 -62
  313. package/build/utils/template-part-create.js.map +1 -1
  314. package/build/utils/use-activate-theme.js +4 -5
  315. package/build/utils/use-activate-theme.js.map +1 -1
  316. package/build-module/components/add-new-page/index.js +34 -27
  317. package/build-module/components/add-new-page/index.js.map +1 -1
  318. package/build-module/components/add-new-pattern/index.js +98 -78
  319. package/build-module/components/add-new-pattern/index.js.map +1 -1
  320. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js +36 -30
  321. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  322. package/build-module/components/add-new-template/add-custom-template-modal-content.js +121 -95
  323. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  324. package/build-module/components/add-new-template/index.js +89 -71
  325. package/build-module/components/add-new-template/index.js.map +1 -1
  326. package/build-module/components/add-new-template/utils.js +36 -17
  327. package/build-module/components/add-new-template/utils.js.map +1 -1
  328. package/build-module/components/app/index.js +11 -4
  329. package/build-module/components/app/index.js.map +1 -1
  330. package/build-module/components/block-editor/block-inspector-button.js +5 -4
  331. package/build-module/components/block-editor/block-inspector-button.js.map +1 -1
  332. package/build-module/components/block-editor/use-editor-iframe-props.js +80 -0
  333. package/build-module/components/block-editor/use-editor-iframe-props.js.map +1 -0
  334. package/build-module/components/canvas-loader/index.js +14 -13
  335. package/build-module/components/canvas-loader/index.js.map +1 -1
  336. package/build-module/components/dataviews-actions/index.js +7 -4
  337. package/build-module/components/dataviews-actions/index.js.map +1 -1
  338. package/build-module/components/editor/index.js +65 -152
  339. package/build-module/components/editor/index.js.map +1 -1
  340. package/build-module/components/editor-canvas-container/index.js +29 -30
  341. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  342. package/build-module/components/error-boundary/index.js +2 -2
  343. package/build-module/components/error-boundary/index.js.map +1 -1
  344. package/build-module/components/error-boundary/warning.js +13 -11
  345. package/build-module/components/error-boundary/warning.js.map +1 -1
  346. package/build-module/components/global-styles/background-panel.js +6 -5
  347. package/build-module/components/global-styles/background-panel.js.map +1 -1
  348. package/build-module/components/global-styles/block-preview-panel.js +19 -17
  349. package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
  350. package/build-module/components/global-styles/color-indicator-wrapper.js +2 -2
  351. package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
  352. package/build-module/components/global-styles/color-palette-panel.js +31 -29
  353. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  354. package/build-module/components/global-styles/dimensions-panel.js +2 -2
  355. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  356. package/build-module/components/global-styles/font-families.js +58 -40
  357. package/build-module/components/global-styles/font-families.js.map +1 -1
  358. package/build-module/components/global-styles/font-family-item.js +18 -13
  359. package/build-module/components/global-styles/font-family-item.js.map +1 -1
  360. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +26 -22
  361. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  362. package/build-module/components/global-styles/font-library-modal/context.js +7 -30
  363. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  364. package/build-module/components/global-styles/font-library-modal/font-card.js +25 -16
  365. package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
  366. package/build-module/components/global-styles/font-library-modal/font-collection.js +198 -153
  367. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  368. package/build-module/components/global-styles/font-library-modal/font-demo.js +14 -12
  369. package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -1
  370. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +30 -20
  371. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  372. package/build-module/components/global-styles/font-library-modal/index.js +42 -36
  373. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
  374. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +157 -111
  375. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  376. package/build-module/components/global-styles/font-library-modal/library-font-details.js +18 -14
  377. package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
  378. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +26 -22
  379. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  380. package/build-module/components/global-styles/font-library-modal/upload-fonts.js +42 -35
  381. package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  382. package/build-module/components/global-styles/font-library-modal/utils/index.js +3 -3
  383. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  384. package/build-module/components/global-styles/gradients-palette-panel.js +42 -37
  385. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  386. package/build-module/components/global-styles/header.js +38 -28
  387. package/build-module/components/global-styles/header.js.map +1 -1
  388. package/build-module/components/global-styles/highlighted-colors.js +3 -4
  389. package/build-module/components/global-styles/highlighted-colors.js.map +1 -1
  390. package/build-module/components/global-styles/hooks.js +11 -23
  391. package/build-module/components/global-styles/hooks.js.map +1 -1
  392. package/build-module/components/global-styles/icon-with-current-color.js +2 -2
  393. package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
  394. package/build-module/components/global-styles/navigation-button.js +16 -11
  395. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  396. package/build-module/components/global-styles/palette.js +42 -34
  397. package/build-module/components/global-styles/palette.js.map +1 -1
  398. package/build-module/components/global-styles/preset-colors.js +3 -4
  399. package/build-module/components/global-styles/preset-colors.js.map +1 -1
  400. package/build-module/components/global-styles/preview-colors.js +22 -20
  401. package/build-module/components/global-styles/preview-colors.js.map +1 -1
  402. package/build-module/components/global-styles/preview-iframe.js +36 -29
  403. package/build-module/components/global-styles/preview-iframe.js.map +1 -1
  404. package/build-module/components/global-styles/preview-styles.js +96 -90
  405. package/build-module/components/global-styles/preview-styles.js.map +1 -1
  406. package/build-module/components/global-styles/root-menu.js +31 -22
  407. package/build-module/components/global-styles/root-menu.js.map +1 -1
  408. package/build-module/components/global-styles/screen-background.js +8 -4
  409. package/build-module/components/global-styles/screen-background.js.map +1 -1
  410. package/build-module/components/global-styles/screen-block-list.js +35 -27
  411. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  412. package/build-module/components/global-styles/screen-block.js +64 -53
  413. package/build-module/components/global-styles/screen-block.js.map +1 -1
  414. package/build-module/components/global-styles/screen-color-palette.js +31 -19
  415. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  416. package/build-module/components/global-styles/screen-colors.js +20 -14
  417. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  418. package/build-module/components/global-styles/screen-css.js +22 -14
  419. package/build-module/components/global-styles/screen-css.js.map +1 -1
  420. package/build-module/components/global-styles/screen-layout.js +11 -4
  421. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  422. package/build-module/components/global-styles/screen-revisions/index.js +54 -42
  423. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  424. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +82 -70
  425. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  426. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +1 -0
  427. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  428. package/build-module/components/global-styles/screen-root.js +78 -42
  429. package/build-module/components/global-styles/screen-root.js.map +1 -1
  430. package/build-module/components/global-styles/screen-shadows.js +13 -0
  431. package/build-module/components/global-styles/screen-shadows.js.map +1 -0
  432. package/build-module/components/global-styles/screen-style-variations.js +16 -9
  433. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  434. package/build-module/components/global-styles/screen-typography-element.js +52 -45
  435. package/build-module/components/global-styles/screen-typography-element.js.map +1 -1
  436. package/build-module/components/global-styles/screen-typography.js +17 -11
  437. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  438. package/build-module/components/global-styles/shadow-utils.js +221 -0
  439. package/build-module/components/global-styles/shadow-utils.js.map +1 -0
  440. package/build-module/components/global-styles/shadows-edit-panel.js +452 -0
  441. package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -0
  442. package/build-module/components/global-styles/shadows-panel.js +121 -0
  443. package/build-module/components/global-styles/shadows-panel.js.map +1 -0
  444. package/build-module/components/global-styles/style-variations-container.js +68 -19
  445. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  446. package/build-module/components/global-styles/subtitle.js +5 -4
  447. package/build-module/components/global-styles/subtitle.js.map +1 -1
  448. package/build-module/components/global-styles/typography-elements.js +54 -45
  449. package/build-module/components/global-styles/typography-elements.js.map +1 -1
  450. package/build-module/components/global-styles/typography-example.js +12 -8
  451. package/build-module/components/global-styles/typography-example.js.map +1 -1
  452. package/build-module/components/global-styles/typography-panel.js +2 -2
  453. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  454. package/build-module/components/global-styles/typography-preview.js +5 -4
  455. package/build-module/components/global-styles/typography-preview.js.map +1 -1
  456. package/build-module/components/global-styles/ui.js +126 -92
  457. package/build-module/components/global-styles/ui.js.map +1 -1
  458. package/build-module/components/global-styles/utils.js +27 -0
  459. package/build-module/components/global-styles/utils.js.map +1 -1
  460. package/build-module/components/global-styles/variations/variation.js +27 -22
  461. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  462. package/build-module/components/global-styles/variations/variations-color.js +19 -13
  463. package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
  464. package/build-module/components/global-styles/variations/variations-panel.js +28 -18
  465. package/build-module/components/global-styles/variations/variations-panel.js.map +1 -1
  466. package/build-module/components/global-styles/variations/variations-typography.js +38 -31
  467. package/build-module/components/global-styles/variations/variations-typography.js.map +1 -1
  468. package/build-module/components/global-styles-renderer/index.js +5 -1
  469. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  470. package/build-module/components/global-styles-sidebar/default-sidebar.js +24 -18
  471. package/build-module/components/global-styles-sidebar/default-sidebar.js.map +1 -1
  472. package/build-module/components/global-styles-sidebar/index.js +35 -26
  473. package/build-module/components/global-styles-sidebar/index.js.map +1 -1
  474. package/build-module/components/layout/index.js +115 -96
  475. package/build-module/components/layout/index.js.map +1 -1
  476. package/build-module/components/layout/router.js +83 -103
  477. package/build-module/components/layout/router.js.map +1 -1
  478. package/build-module/components/media/index.js +2 -2
  479. package/build-module/components/media/index.js.map +1 -1
  480. package/build-module/components/{header-edit-mode/more-menu → more-menu}/index.js +9 -3
  481. package/build-module/components/more-menu/index.js.map +1 -0
  482. package/build-module/components/{header-edit-mode/more-menu → more-menu}/site-export.js +5 -4
  483. package/build-module/components/more-menu/site-export.js.map +1 -0
  484. package/build-module/components/{header-edit-mode/more-menu → more-menu}/welcome-guide-menu-item.js +5 -4
  485. package/build-module/components/more-menu/welcome-guide-menu-item.js.map +1 -0
  486. package/build-module/components/page/header.js +25 -19
  487. package/build-module/components/page/header.js.map +1 -1
  488. package/build-module/components/page/index.js +14 -11
  489. package/build-module/components/page/index.js.map +1 -1
  490. package/build-module/components/page-pages/index.js +138 -55
  491. package/build-module/components/page-pages/index.js.map +1 -1
  492. package/build-module/components/page-patterns/delete-category-menu-item.js +25 -20
  493. package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -1
  494. package/build-module/components/page-patterns/header.js +48 -32
  495. package/build-module/components/page-patterns/header.js.map +1 -1
  496. package/build-module/components/page-patterns/index.js +115 -108
  497. package/build-module/components/page-patterns/index.js.map +1 -1
  498. package/build-module/components/page-patterns/rename-category-menu-item.js +16 -11
  499. package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -1
  500. package/build-module/components/page-patterns/use-patterns.js +7 -6
  501. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  502. package/build-module/components/page-templates/index.js +80 -59
  503. package/build-module/components/page-templates/index.js.map +1 -1
  504. package/build-module/components/pagination/index.js +51 -41
  505. package/build-module/components/pagination/index.js.map +1 -1
  506. package/build-module/components/plugin-template-setting-panel/index.js +4 -2
  507. package/build-module/components/plugin-template-setting-panel/index.js.map +1 -1
  508. package/build-module/components/resizable-frame/index.js +40 -32
  509. package/build-module/components/resizable-frame/index.js.map +1 -1
  510. package/build-module/components/revisions/index.js +27 -20
  511. package/build-module/components/revisions/index.js.map +1 -1
  512. package/build-module/components/routes/link.js +5 -4
  513. package/build-module/components/routes/link.js.map +1 -1
  514. package/build-module/components/save-button/index.js +5 -4
  515. package/build-module/components/save-button/index.js.map +1 -1
  516. package/build-module/components/save-hub/index.js +12 -11
  517. package/build-module/components/save-hub/index.js.map +1 -1
  518. package/build-module/components/save-panel/index.js +35 -28
  519. package/build-module/components/save-panel/index.js.map +1 -1
  520. package/build-module/components/sidebar/index.js +14 -11
  521. package/build-module/components/sidebar/index.js.map +1 -1
  522. package/build-module/components/sidebar-button/index.js +2 -2
  523. package/build-module/components/sidebar-button/index.js.map +1 -1
  524. package/build-module/components/sidebar-dataviews/add-new-view.js +58 -48
  525. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
  526. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +108 -89
  527. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  528. package/build-module/components/sidebar-dataviews/dataview-item.js +13 -10
  529. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  530. package/build-module/components/sidebar-dataviews/default-views.js +49 -1
  531. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  532. package/build-module/components/sidebar-dataviews/index.js +23 -22
  533. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  534. package/build-module/components/sidebar-navigation-item/index.js +28 -25
  535. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  536. package/build-module/components/sidebar-navigation-screen/index.js +53 -39
  537. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  538. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +25 -17
  539. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  540. package/build-module/components/sidebar-navigation-screen-details-panel/index.js +10 -7
  541. package/build-module/components/sidebar-navigation-screen-details-panel/index.js.map +1 -1
  542. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +5 -4
  543. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -1
  544. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +5 -5
  545. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  546. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +5 -4
  547. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -1
  548. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +56 -45
  549. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  550. package/build-module/components/sidebar-navigation-screen-main/index.js +47 -22
  551. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  552. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +5 -4
  553. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
  554. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +11 -10
  555. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  556. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +55 -42
  557. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  558. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +10 -8
  559. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  560. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +43 -36
  561. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  562. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +17 -13
  563. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  564. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
  565. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  566. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +27 -23
  567. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  568. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +52 -35
  569. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  570. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +14 -9
  571. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  572. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +12 -10
  573. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  574. package/build-module/components/sidebar-navigation-screen-patterns/index.js +60 -63
  575. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  576. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +18 -17
  577. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  578. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +4 -4
  579. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  580. package/build-module/components/site-hub/index.js +83 -73
  581. package/build-module/components/site-hub/index.js.map +1 -1
  582. package/build-module/components/site-icon/index.js +8 -7
  583. package/build-module/components/site-icon/index.js.map +1 -1
  584. package/build-module/components/style-book/index.js +116 -99
  585. package/build-module/components/style-book/index.js.map +1 -1
  586. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +10 -30
  587. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  588. package/build-module/components/table/index.js +24 -15
  589. package/build-module/components/table/index.js.map +1 -1
  590. package/build-module/components/template-part-converter/convert-to-regular.js +5 -4
  591. package/build-module/components/template-part-converter/convert-to-regular.js.map +1 -1
  592. package/build-module/components/template-part-converter/convert-to-template-part.js +25 -16
  593. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  594. package/build-module/components/template-part-converter/index.js +12 -10
  595. package/build-module/components/template-part-converter/index.js.map +1 -1
  596. package/build-module/components/welcome-guide/editor.js +22 -15
  597. package/build-module/components/welcome-guide/editor.js.map +1 -1
  598. package/build-module/components/welcome-guide/image.js +14 -12
  599. package/build-module/components/welcome-guide/image.js.map +1 -1
  600. package/build-module/components/welcome-guide/index.js +6 -2
  601. package/build-module/components/welcome-guide/index.js.map +1 -1
  602. package/build-module/components/welcome-guide/page.js +20 -13
  603. package/build-module/components/welcome-guide/page.js.map +1 -1
  604. package/build-module/components/welcome-guide/styles.js +47 -28
  605. package/build-module/components/welcome-guide/styles.js.map +1 -1
  606. package/build-module/components/welcome-guide/template.js +20 -13
  607. package/build-module/components/welcome-guide/template.js.map +1 -1
  608. package/build-module/deprecated.js +4 -4
  609. package/build-module/deprecated.js.map +1 -1
  610. package/build-module/hooks/commands/use-common-commands.js +12 -23
  611. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  612. package/build-module/hooks/commands/use-edit-mode-commands.js +4 -118
  613. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  614. package/build-module/hooks/index.js +0 -1
  615. package/build-module/hooks/index.js.map +1 -1
  616. package/build-module/hooks/push-changes-to-global-styles/index.js +27 -16
  617. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  618. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -1
  619. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  620. package/build-module/index.js +3 -3
  621. package/build-module/index.js.map +1 -1
  622. package/build-module/store/private-actions.js +7 -1
  623. package/build-module/store/private-actions.js.map +1 -1
  624. package/build-module/store/selectors.js +2 -2
  625. package/build-module/store/selectors.js.map +1 -1
  626. package/build-module/utils/template-part-create.js +0 -52
  627. package/build-module/utils/template-part-create.js.map +1 -1
  628. package/build-module/utils/use-activate-theme.js +4 -5
  629. package/build-module/utils/use-activate-theme.js.map +1 -1
  630. package/build-style/style-rtl.css +289 -554
  631. package/build-style/style.css +289 -554
  632. package/package.json +43 -44
  633. package/src/components/add-new-pattern/index.js +46 -37
  634. package/src/components/add-new-template/index.js +2 -0
  635. package/src/components/add-new-template/utils.js +77 -39
  636. package/src/components/block-editor/style.scss +4 -139
  637. package/src/components/block-editor/use-editor-iframe-props.js +79 -0
  638. package/src/components/canvas-loader/index.js +5 -2
  639. package/src/components/dataviews-actions/index.js +7 -2
  640. package/src/components/editor/index.js +65 -211
  641. package/src/components/editor/style.scss +2 -13
  642. package/src/components/editor-canvas-container/index.js +30 -35
  643. package/src/components/editor-canvas-container/style.scss +16 -0
  644. package/src/components/global-styles/background-panel.js +3 -2
  645. package/src/components/global-styles/color-palette-panel.js +1 -1
  646. package/src/components/global-styles/font-families.js +25 -18
  647. package/src/components/global-styles/font-family-item.js +2 -2
  648. package/src/components/global-styles/font-library-modal/collection-font-variant.js +2 -1
  649. package/src/components/global-styles/font-library-modal/context.js +6 -44
  650. package/src/components/global-styles/font-library-modal/font-collection.js +3 -5
  651. package/src/components/global-styles/font-library-modal/installed-fonts.js +42 -12
  652. package/src/components/global-styles/font-library-modal/library-font-variant.js +2 -1
  653. package/src/components/global-styles/font-library-modal/upload-fonts.js +1 -4
  654. package/src/components/global-styles/font-library-modal/utils/index.js +1 -1
  655. package/src/components/global-styles/hooks.js +10 -37
  656. package/src/components/global-styles/palette.js +9 -18
  657. package/src/components/global-styles/root-menu.js +16 -12
  658. package/src/components/global-styles/screen-block.js +1 -1
  659. package/src/components/global-styles/screen-layout.js +9 -2
  660. package/src/components/global-styles/screen-revisions/index.js +6 -0
  661. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +1 -0
  662. package/src/components/global-styles/screen-shadows.js +13 -0
  663. package/src/components/global-styles/screen-typography.js +1 -1
  664. package/src/components/global-styles/shadow-utils.js +158 -0
  665. package/src/components/global-styles/shadows-edit-panel.js +555 -0
  666. package/src/components/global-styles/shadows-panel.js +147 -0
  667. package/src/components/global-styles/style-variations-container.js +73 -10
  668. package/src/components/global-styles/style.scss +54 -5
  669. package/src/components/global-styles/test/shadow-utils.spec.js +251 -0
  670. package/src/components/global-styles/test/utils.spec.js +59 -0
  671. package/src/components/global-styles/ui.js +10 -6
  672. package/src/components/global-styles/utils.js +27 -0
  673. package/src/components/global-styles/variations/style.scss +7 -4
  674. package/src/components/global-styles/variations/variation.js +2 -0
  675. package/src/components/global-styles/variations/variations-color.js +2 -1
  676. package/src/components/global-styles/variations/variations-panel.js +16 -5
  677. package/src/components/global-styles/variations/variations-typography.js +2 -1
  678. package/src/components/global-styles-renderer/index.js +7 -1
  679. package/src/components/layout/index.js +7 -2
  680. package/src/components/layout/router.js +64 -79
  681. package/src/components/layout/style.scss +11 -8
  682. package/src/components/{header-edit-mode/more-menu → more-menu}/index.js +1 -1
  683. package/src/components/page/header.js +17 -13
  684. package/src/components/page/index.js +1 -5
  685. package/src/components/page/style.scss +21 -7
  686. package/src/components/page-pages/index.js +154 -30
  687. package/src/components/page-pages/style.scss +15 -0
  688. package/src/components/page-patterns/delete-category-menu-item.js +1 -2
  689. package/src/components/page-patterns/header.js +45 -33
  690. package/src/components/page-patterns/index.js +14 -51
  691. package/src/components/page-patterns/style.scss +21 -14
  692. package/src/components/page-patterns/use-patterns.js +13 -6
  693. package/src/components/resizable-frame/index.js +1 -1
  694. package/src/components/save-panel/index.js +2 -4
  695. package/src/components/sidebar-dataviews/add-new-view.js +5 -5
  696. package/src/components/sidebar-dataviews/custom-dataviews-list.js +5 -7
  697. package/src/components/sidebar-dataviews/dataview-item.js +2 -2
  698. package/src/components/sidebar-dataviews/default-views.js +61 -1
  699. package/src/components/sidebar-dataviews/index.js +4 -9
  700. package/src/components/sidebar-navigation-item/index.js +7 -7
  701. package/src/components/sidebar-navigation-screen-global-styles/index.js +8 -2
  702. package/src/components/sidebar-navigation-screen-main/index.js +14 -4
  703. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
  704. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +1 -1
  705. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +6 -3
  706. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +0 -61
  707. package/src/components/sidebar-navigation-screen-patterns/category-item.js +5 -3
  708. package/src/components/sidebar-navigation-screen-patterns/index.js +6 -16
  709. package/src/components/sidebar-navigation-screen-templates-browse/content.js +1 -1
  710. package/src/components/sidebar-navigation-screen-templates-browse/index.js +1 -1
  711. package/src/components/site-hub/index.js +11 -12
  712. package/src/components/site-hub/style.scss +46 -9
  713. package/src/components/style-book/index.js +1 -1
  714. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +18 -23
  715. package/src/components/template-part-converter/convert-to-template-part.js +4 -1
  716. package/src/hooks/commands/use-common-commands.js +12 -23
  717. package/src/hooks/commands/use-edit-mode-commands.js +4 -118
  718. package/src/hooks/index.js +0 -1
  719. package/src/hooks/push-changes-to-global-styles/index.js +2 -1
  720. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +5 -1
  721. package/src/index.js +1 -1
  722. package/src/store/private-actions.js +9 -1
  723. package/src/store/selectors.js +2 -2
  724. package/src/style.scss +0 -6
  725. package/src/utils/template-part-create.js +0 -67
  726. package/src/utils/use-activate-theme.js +2 -2
  727. package/build/components/block-editor/editor-canvas.js +0 -139
  728. package/build/components/block-editor/editor-canvas.js.map +0 -1
  729. package/build/components/block-editor/resizable-editor.js +0 -86
  730. package/build/components/block-editor/resizable-editor.js.map +0 -1
  731. package/build/components/block-editor/resize-handle.js +0 -57
  732. package/build/components/block-editor/resize-handle.js.map +0 -1
  733. package/build/components/block-editor/site-editor-canvas.js +0 -95
  734. package/build/components/block-editor/site-editor-canvas.js.map +0 -1
  735. package/build/components/code-editor/index.js +0 -111
  736. package/build/components/code-editor/index.js.map +0 -1
  737. package/build/components/create-template-part-modal/index.js +0 -151
  738. package/build/components/create-template-part-modal/index.js.map +0 -1
  739. package/build/components/header-edit-mode/index.js +0 -50
  740. package/build/components/header-edit-mode/index.js.map +0 -1
  741. package/build/components/header-edit-mode/more-menu/index.js.map +0 -1
  742. package/build/components/header-edit-mode/more-menu/site-export.js.map +0 -1
  743. package/build/components/header-edit-mode/more-menu/welcome-guide-menu-item.js.map +0 -1
  744. package/build/components/page-patterns/dataviews-pattern-actions.js +0 -311
  745. package/build/components/page-patterns/dataviews-pattern-actions.js.map +0 -1
  746. package/build/components/pattern-modal/duplicate.js +0 -70
  747. package/build/components/pattern-modal/duplicate.js.map +0 -1
  748. package/build/components/pattern-modal/index.js +0 -23
  749. package/build/components/pattern-modal/index.js.map +0 -1
  750. package/build/components/pattern-modal/rename.js +0 -45
  751. package/build/components/pattern-modal/rename.js.map +0 -1
  752. package/build/components/rename-post-menu-item/index.js +0 -109
  753. package/build/components/rename-post-menu-item/index.js.map +0 -1
  754. package/build/components/sidebar-navigation-screen-page/index.js +0 -163
  755. package/build/components/sidebar-navigation-screen-page/index.js.map +0 -1
  756. package/build/components/sidebar-navigation-screen-page/page-details.js +0 -127
  757. package/build/components/sidebar-navigation-screen-page/page-details.js.map +0 -1
  758. package/build/components/sidebar-navigation-screen-page/status-label.js +0 -65
  759. package/build/components/sidebar-navigation-screen-page/status-label.js.map +0 -1
  760. package/build/components/sidebar-navigation-screen-pattern/index.js +0 -67
  761. package/build/components/sidebar-navigation-screen-pattern/index.js.map +0 -1
  762. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +0 -38
  763. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +0 -1
  764. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +0 -29
  765. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +0 -1
  766. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +0 -37
  767. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +0 -1
  768. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +0 -45
  769. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +0 -1
  770. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +0 -88
  771. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +0 -1
  772. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +0 -29
  773. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +0 -1
  774. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +0 -138
  775. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +0 -1
  776. package/build/components/sidebar-navigation-screen-template/home-template-details.js +0 -110
  777. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +0 -1
  778. package/build/components/sidebar-navigation-screen-template/index.js +0 -121
  779. package/build/components/sidebar-navigation-screen-template/index.js.map +0 -1
  780. package/build/components/sidebar-navigation-screen-template/template-areas.js +0 -117
  781. package/build/components/sidebar-navigation-screen-template/template-areas.js.map +0 -1
  782. package/build/components/template-actions/index.js +0 -131
  783. package/build/components/template-actions/index.js.map +0 -1
  784. package/build/hooks/components.js +0 -10
  785. package/build/hooks/components.js.map +0 -1
  786. package/build/utils/get-is-list-page.js +0 -28
  787. package/build/utils/get-is-list-page.js.map +0 -1
  788. package/build-module/components/block-editor/editor-canvas.js +0 -131
  789. package/build-module/components/block-editor/editor-canvas.js.map +0 -1
  790. package/build-module/components/block-editor/resizable-editor.js +0 -79
  791. package/build-module/components/block-editor/resizable-editor.js.map +0 -1
  792. package/build-module/components/block-editor/resize-handle.js +0 -50
  793. package/build-module/components/block-editor/resize-handle.js.map +0 -1
  794. package/build-module/components/block-editor/site-editor-canvas.js +0 -86
  795. package/build-module/components/block-editor/site-editor-canvas.js.map +0 -1
  796. package/build-module/components/code-editor/index.js +0 -103
  797. package/build-module/components/code-editor/index.js.map +0 -1
  798. package/build-module/components/create-template-part-modal/index.js +0 -143
  799. package/build-module/components/create-template-part-modal/index.js.map +0 -1
  800. package/build-module/components/header-edit-mode/index.js +0 -42
  801. package/build-module/components/header-edit-mode/index.js.map +0 -1
  802. package/build-module/components/header-edit-mode/more-menu/index.js.map +0 -1
  803. package/build-module/components/header-edit-mode/more-menu/site-export.js.map +0 -1
  804. package/build-module/components/header-edit-mode/more-menu/welcome-guide-menu-item.js.map +0 -1
  805. package/build-module/components/page-patterns/dataviews-pattern-actions.js +0 -304
  806. package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +0 -1
  807. package/build-module/components/pattern-modal/duplicate.js +0 -62
  808. package/build-module/components/pattern-modal/duplicate.js.map +0 -1
  809. package/build-module/components/pattern-modal/index.js +0 -14
  810. package/build-module/components/pattern-modal/index.js.map +0 -1
  811. package/build-module/components/pattern-modal/rename.js +0 -37
  812. package/build-module/components/pattern-modal/rename.js.map +0 -1
  813. package/build-module/components/rename-post-menu-item/index.js +0 -102
  814. package/build-module/components/rename-post-menu-item/index.js.map +0 -1
  815. package/build-module/components/sidebar-navigation-screen-page/index.js +0 -155
  816. package/build-module/components/sidebar-navigation-screen-page/index.js.map +0 -1
  817. package/build-module/components/sidebar-navigation-screen-page/page-details.js +0 -120
  818. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +0 -1
  819. package/build-module/components/sidebar-navigation-screen-page/status-label.js +0 -57
  820. package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +0 -1
  821. package/build-module/components/sidebar-navigation-screen-pattern/index.js +0 -59
  822. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +0 -1
  823. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +0 -30
  824. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +0 -1
  825. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +0 -20
  826. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +0 -1
  827. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +0 -29
  828. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +0 -1
  829. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +0 -36
  830. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +0 -1
  831. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +0 -80
  832. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +0 -1
  833. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +0 -22
  834. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +0 -1
  835. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +0 -130
  836. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +0 -1
  837. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +0 -103
  838. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +0 -1
  839. package/build-module/components/sidebar-navigation-screen-template/index.js +0 -113
  840. package/build-module/components/sidebar-navigation-screen-template/index.js.map +0 -1
  841. package/build-module/components/sidebar-navigation-screen-template/template-areas.js +0 -109
  842. package/build-module/components/sidebar-navigation-screen-template/template-areas.js.map +0 -1
  843. package/build-module/components/template-actions/index.js +0 -123
  844. package/build-module/components/template-actions/index.js.map +0 -1
  845. package/build-module/hooks/components.js +0 -7
  846. package/build-module/hooks/components.js.map +0 -1
  847. package/build-module/utils/get-is-list-page.js +0 -22
  848. package/build-module/utils/get-is-list-page.js.map +0 -1
  849. package/src/components/block-editor/editor-canvas.js +0 -158
  850. package/src/components/block-editor/resizable-editor.js +0 -82
  851. package/src/components/block-editor/resize-handle.js +0 -66
  852. package/src/components/block-editor/site-editor-canvas.js +0 -107
  853. package/src/components/code-editor/index.js +0 -94
  854. package/src/components/code-editor/style.scss +0 -95
  855. package/src/components/create-template-part-modal/index.js +0 -199
  856. package/src/components/create-template-part-modal/style.scss +0 -69
  857. package/src/components/header-edit-mode/index.js +0 -51
  858. package/src/components/header-edit-mode/style.scss +0 -3
  859. package/src/components/page-patterns/dataviews-pattern-actions.js +0 -350
  860. package/src/components/pattern-modal/duplicate.js +0 -55
  861. package/src/components/pattern-modal/index.js +0 -19
  862. package/src/components/pattern-modal/rename.js +0 -30
  863. package/src/components/rename-post-menu-item/index.js +0 -138
  864. package/src/components/sidebar-navigation-screen-page/index.js +0 -204
  865. package/src/components/sidebar-navigation-screen-page/page-details.js +0 -161
  866. package/src/components/sidebar-navigation-screen-page/status-label.js +0 -71
  867. package/src/components/sidebar-navigation-screen-page/style.scss +0 -69
  868. package/src/components/sidebar-navigation-screen-pattern/index.js +0 -57
  869. package/src/components/sidebar-navigation-screen-pattern/style.scss +0 -26
  870. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +0 -31
  871. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +0 -21
  872. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +0 -33
  873. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +0 -36
  874. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +0 -98
  875. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +0 -32
  876. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +0 -205
  877. package/src/components/sidebar-navigation-screen-template/home-template-details.js +0 -144
  878. package/src/components/sidebar-navigation-screen-template/index.js +0 -134
  879. package/src/components/sidebar-navigation-screen-template/style.scss +0 -53
  880. package/src/components/sidebar-navigation-screen-template/template-areas.js +0 -135
  881. package/src/components/template-actions/index.js +0 -165
  882. package/src/hooks/components.js +0 -11
  883. package/src/utils/get-is-list-page.js +0 -23
  884. package/src/utils/test/template-part-create.js +0 -63
  885. /package/src/components/{header-edit-mode/more-menu → more-menu}/site-export.js +0 -0
  886. /package/src/components/{header-edit-mode/more-menu → more-menu}/welcome-guide-menu-item.js +0 -0
@@ -8,20 +8,27 @@ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
8
8
  * Internal dependencies
9
9
  */
10
10
  import DimensionsPanel from './dimensions-panel';
11
+ import BackgroundPanel from './background-panel';
11
12
  import ScreenHeader from './header';
12
13
  import { unlock } from '../../lock-unlock';
13
14
 
14
- const { useHasDimensionsPanel, useGlobalSetting, useSettingsForBlockElement } =
15
- unlock( blockEditorPrivateApis );
15
+ const {
16
+ useHasBackgroundPanel,
17
+ useHasDimensionsPanel,
18
+ useGlobalSetting,
19
+ useSettingsForBlockElement,
20
+ } = unlock( blockEditorPrivateApis );
16
21
 
17
22
  function ScreenLayout() {
18
23
  const [ rawSettings ] = useGlobalSetting( '' );
19
24
  const settings = useSettingsForBlockElement( rawSettings );
20
25
  const hasDimensionsPanel = useHasDimensionsPanel( settings );
26
+ const hasBackgroundPanel = useHasBackgroundPanel( settings );
21
27
  return (
22
28
  <>
23
29
  <ScreenHeader title={ __( 'Layout' ) } />
24
30
  { hasDimensionsPanel && <DimensionsPanel /> }
31
+ { hasBackgroundPanel && <BackgroundPanel /> }
25
32
  </>
26
33
  );
27
34
  }
@@ -84,6 +84,7 @@ function ScreenRevisions() {
84
84
  setUserConfig( () => ( {
85
85
  styles: revision?.styles,
86
86
  settings: revision?.settings,
87
+ _links: revision?._links,
87
88
  } ) );
88
89
  setIsLoadingRevisionWithUnsavedChanges( false );
89
90
  onCloseRevisions();
@@ -91,8 +92,13 @@ function ScreenRevisions() {
91
92
 
92
93
  const selectRevision = ( revision ) => {
93
94
  setCurrentlySelectedRevision( {
95
+ /*
96
+ * The default must be an empty object so that
97
+ * `mergeBaseAndUserConfigs()` can merge them correctly.
98
+ */
94
99
  styles: revision?.styles || {},
95
100
  settings: revision?.settings || {},
101
+ _links: revision?._links || {},
96
102
  id: revision?.id,
97
103
  } );
98
104
  };
@@ -119,6 +119,7 @@ export default function useGlobalStylesRevisions( { query } = {} ) {
119
119
  id: 'unsaved',
120
120
  styles: userConfig?.styles,
121
121
  settings: userConfig?.settings,
122
+ _links: userConfig?._links,
122
123
  author: {
123
124
  name: currentUser?.name,
124
125
  avatar_urls: currentUser?.avatar_urls,
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import ShadowsPanel from './shadows-panel';
5
+ import ShadowsEditPanel from './shadows-edit-panel';
6
+
7
+ export function ScreenShadows() {
8
+ return <ShadowsPanel />;
9
+ }
10
+
11
+ export function ScreenShadowsEdit() {
12
+ return <ShadowsEditPanel />;
13
+ }
@@ -31,10 +31,10 @@ function ScreenTypography() {
31
31
  />
32
32
  <div className="edit-site-global-styles-screen">
33
33
  <VStack spacing={ 7 }>
34
- <TypographyVariations title={ __( 'Presets' ) } />
35
34
  { ! window.__experimentalDisableFontLibrary &&
36
35
  fontLibraryEnabled && <FontFamilies /> }
37
36
  <TypographyElements />
37
+ <TypographyVariations title={ __( 'Presets' ) } />
38
38
  </VStack>
39
39
  </div>
40
40
  </>
@@ -0,0 +1,158 @@
1
+ export const CUSTOM_VALUE_SETTINGS = {
2
+ px: { max: 20, step: 1 },
3
+ '%': { max: 100, step: 1 },
4
+ vw: { max: 100, step: 1 },
5
+ vh: { max: 100, step: 1 },
6
+ em: { max: 10, step: 0.1 },
7
+ rm: { max: 10, step: 0.1 },
8
+ svw: { max: 100, step: 1 },
9
+ lvw: { max: 100, step: 1 },
10
+ dvw: { max: 100, step: 1 },
11
+ svh: { max: 100, step: 1 },
12
+ lvh: { max: 100, step: 1 },
13
+ dvh: { max: 100, step: 1 },
14
+ vi: { max: 100, step: 1 },
15
+ svi: { max: 100, step: 1 },
16
+ lvi: { max: 100, step: 1 },
17
+ dvi: { max: 100, step: 1 },
18
+ vb: { max: 100, step: 1 },
19
+ svb: { max: 100, step: 1 },
20
+ lvb: { max: 100, step: 1 },
21
+ dvb: { max: 100, step: 1 },
22
+ vmin: { max: 100, step: 1 },
23
+ svmin: { max: 100, step: 1 },
24
+ lvmin: { max: 100, step: 1 },
25
+ dvmin: { max: 100, step: 1 },
26
+ vmax: { max: 100, step: 1 },
27
+ svmax: { max: 100, step: 1 },
28
+ lvmax: { max: 100, step: 1 },
29
+ dvmax: { max: 100, step: 1 },
30
+ };
31
+
32
+ export function getShadowParts( shadow ) {
33
+ const shadowValues = shadow.match( /(?:[^,(]|\([^)]*\))+/g ) || [];
34
+ return shadowValues.map( ( value ) => value.trim() );
35
+ }
36
+
37
+ export function shadowStringToObject( shadowValue ) {
38
+ /*
39
+ * Shadow spec: https://developer.mozilla.org/en-US/docs/Web/CSS/box-shadow
40
+ * Shadow string format: <offset-x> <offset-y> <blur-radius> <spread-radius> <color> [inset]
41
+ *
42
+ * A shadow to be valid it must satisfy the following.
43
+ *
44
+ * 1. Should not contain "none" keyword.
45
+ * 2. Values x, y, blur, spread should be in the order. Color and inset can be anywhere in the string except in between x, y, blur, spread values.
46
+ * 3. Should not contain more than one set of x, y, blur, spread values.
47
+ * 4. Should contain at least x and y values. Others are optional.
48
+ * 5. Should not contain more than one "inset" (case insensitive) keyword.
49
+ * 6. Should not contain more than one color value.
50
+ */
51
+
52
+ const defaultShadow = {
53
+ x: '0',
54
+ y: '0',
55
+ blur: '0',
56
+ spread: '0',
57
+ color: '#000',
58
+ inset: false,
59
+ };
60
+
61
+ if ( ! shadowValue ) {
62
+ return defaultShadow;
63
+ }
64
+
65
+ // Rule 1: Should not contain "none" keyword.
66
+ // if the shadow has "none" keyword, it is not a valid shadow string
67
+ if ( shadowValue.includes( 'none' ) ) {
68
+ return defaultShadow;
69
+ }
70
+
71
+ // Rule 2: Values x, y, blur, spread should be in the order.
72
+ // Color and inset can be anywhere in the string except in between x, y, blur, spread values.
73
+ // Extract length values (x, y, blur, spread) from shadow string
74
+ // Regex match groups of 1 to 4 length values.
75
+ const lengthsRegex =
76
+ /((?:^|\s+)(-?\d*\.?\d+(?:px|%|in|cm|mm|em|rem|ex|pt|pc|vh|vw|vmin|vmax|ch|lh)?)(?=\s|$)(?![^(]*\))){1,4}/g;
77
+ const matches = shadowValue.match( lengthsRegex ) || [];
78
+
79
+ // Rule 3: Should not contain more than one set of x, y, blur, spread values.
80
+ // if the string doesn't contain exactly 1 set of x, y, blur, spread values,
81
+ // it is not a valid shadow string
82
+ if ( matches.length !== 1 ) {
83
+ return defaultShadow;
84
+ }
85
+
86
+ // Extract length values (x, y, blur, spread) from shadow string
87
+ const lengths = matches[ 0 ]
88
+ .split( ' ' )
89
+ .map( ( value ) => value.trim() )
90
+ .filter( ( value ) => value );
91
+
92
+ // Rule 4: Should contain at least x and y values. Others are optional.
93
+ if ( lengths.length < 2 ) {
94
+ return defaultShadow;
95
+ }
96
+
97
+ // Rule 5: Should not contain more than one "inset" (case insensitive) keyword.
98
+ // check if the shadow string contains "inset" keyword
99
+ const insets = shadowValue.match( /inset/gi ) || [];
100
+ if ( insets.length > 1 ) {
101
+ return defaultShadow;
102
+ }
103
+
104
+ // Strip lengths and inset from shadow string, leaving just color.
105
+ const hasInset = insets.length === 1;
106
+ let colorString = shadowValue.replace( lengthsRegex, '' ).trim();
107
+ if ( hasInset ) {
108
+ colorString = colorString
109
+ .replace( 'inset', '' )
110
+ .replace( 'INSET', '' )
111
+ .trim();
112
+ }
113
+
114
+ // Rule 6: Should not contain more than one color value.
115
+ // validate color string with regular expression
116
+ // check if color has matching hex, rgb or hsl values
117
+ const colorRegex =
118
+ /^#([0-9a-f]{3}){1,2}$|^#([0-9a-f]{4}){1,2}$|^(?:rgb|hsl)a?\(?[\d*\.?\d+%?,?\/?\s]*\)$/gi;
119
+ let colorMatches = ( colorString.match( colorRegex ) || [] )
120
+ .map( ( value ) => value?.trim() )
121
+ .filter( ( value ) => value );
122
+
123
+ // If color string has more than one color values, it is not a valid
124
+ if ( colorMatches.length > 1 ) {
125
+ return defaultShadow;
126
+ } else if ( colorMatches.length === 0 ) {
127
+ // check if color string has multiple named color values separated by space
128
+ colorMatches = colorString
129
+ .trim()
130
+ .split( ' ' )
131
+ .filter( ( value ) => value );
132
+ // If color string has more than one color values, it is not a valid
133
+ if ( colorMatches.length > 1 ) {
134
+ return defaultShadow;
135
+ }
136
+ }
137
+
138
+ // Return parsed shadow object.
139
+ const [ x, y, blur, spread ] = lengths;
140
+ return {
141
+ x,
142
+ y,
143
+ blur: blur || defaultShadow.blur,
144
+ spread: spread || defaultShadow.spread,
145
+ inset: hasInset,
146
+ color: colorString || defaultShadow.color,
147
+ };
148
+ }
149
+
150
+ export function shadowObjectToString( shadowObj ) {
151
+ const shadowString = `${ shadowObj.x || '0px' } ${ shadowObj.y || '0px' } ${
152
+ shadowObj.blur || '0px'
153
+ } ${ shadowObj.spread || '0px' }`;
154
+
155
+ return `${ shadowObj.inset ? 'inset' : '' } ${ shadowString } ${
156
+ shadowObj.color || ''
157
+ }`.trim();
158
+ }