@wordpress/block-editor 14.3.3 → 14.4.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 (418) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +46 -0
  3. package/build/autocompleters/link.js +2 -1
  4. package/build/autocompleters/link.js.map +1 -1
  5. package/build/components/block-actions/index.js +1 -13
  6. package/build/components/block-actions/index.js.map +1 -1
  7. package/build/components/block-inspector/index.js +56 -75
  8. package/build/components/block-inspector/index.js.map +1 -1
  9. package/build/components/block-list/block.js +5 -19
  10. package/build/components/block-list/block.js.map +1 -1
  11. package/build/components/block-list/index.js +5 -8
  12. package/build/components/block-list/index.js.map +1 -1
  13. package/build/components/block-list/use-block-props/index.js +3 -11
  14. package/build/components/block-list/use-block-props/index.js.map +1 -1
  15. package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js +9 -12
  16. package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +1 -1
  17. package/build/components/block-list/use-in-between-inserter.js +5 -3
  18. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  19. package/build/components/block-list/zoom-out-separator.js +14 -6
  20. package/build/components/block-list/zoom-out-separator.js.map +1 -1
  21. package/build/components/block-navigation/dropdown.js +2 -4
  22. package/build/components/block-navigation/dropdown.js.map +1 -1
  23. package/build/components/block-parent-selector/index.js +13 -10
  24. package/build/components/block-parent-selector/index.js.map +1 -1
  25. package/build/components/block-pattern-setup/setup-toolbar.js +10 -20
  26. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  27. package/build/components/block-patterns-paging/index.js +11 -13
  28. package/build/components/block-patterns-paging/index.js.map +1 -1
  29. package/build/components/block-quick-navigation/index.js +2 -4
  30. package/build/components/block-quick-navigation/index.js.map +1 -1
  31. package/build/components/block-settings-menu/block-settings-dropdown.js +79 -76
  32. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  33. package/build/components/block-settings-menu-controls/index.js +1 -6
  34. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  35. package/build/components/block-switcher/index.js +17 -14
  36. package/build/components/block-switcher/index.js.map +1 -1
  37. package/build/components/block-toolbar/index.js +16 -19
  38. package/build/components/block-toolbar/index.js.map +1 -1
  39. package/build/components/block-toolbar/use-has-block-toolbar.js +3 -5
  40. package/build/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  41. package/build/components/block-tools/index.js +8 -11
  42. package/build/components/block-tools/index.js.map +1 -1
  43. package/build/components/block-tools/insertion-point.js +1 -4
  44. package/build/components/block-tools/insertion-point.js.map +1 -1
  45. package/build/components/block-tools/use-show-block-tools.js +2 -5
  46. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  47. package/build/components/block-tools/zoom-out-mode-inserter-button.js +1 -12
  48. package/build/components/block-tools/zoom-out-mode-inserter-button.js.map +1 -1
  49. package/build/components/block-tools/zoom-out-mode-inserters.js +14 -17
  50. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  51. package/build/components/block-tools/zoom-out-toolbar.js +2 -12
  52. package/build/components/block-tools/zoom-out-toolbar.js.map +1 -1
  53. package/build/components/block-variation-picker/index.js +2 -4
  54. package/build/components/block-variation-picker/index.js.map +1 -1
  55. package/build/components/block-variation-transforms/index.js +3 -4
  56. package/build/components/block-variation-transforms/index.js.map +1 -1
  57. package/build/components/button-block-appender/index.js +2 -4
  58. package/build/components/button-block-appender/index.js.map +1 -1
  59. package/build/components/colors-gradients/dropdown.js +2 -4
  60. package/build/components/colors-gradients/dropdown.js.map +1 -1
  61. package/build/components/global-styles/border-panel.js +1 -1
  62. package/build/components/global-styles/border-panel.js.map +1 -1
  63. package/build/components/global-styles/color-panel.js +2 -4
  64. package/build/components/global-styles/color-panel.js.map +1 -1
  65. package/build/components/global-styles/dimensions-panel.js +3 -3
  66. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  67. package/build/components/global-styles/filters-panel.js +2 -4
  68. package/build/components/global-styles/filters-panel.js.map +1 -1
  69. package/build/components/global-styles/shadow-panel-components.js +24 -29
  70. package/build/components/global-styles/shadow-panel-components.js.map +1 -1
  71. package/build/components/inner-blocks/index.js +1 -9
  72. package/build/components/inner-blocks/index.js.map +1 -1
  73. package/build/components/inserter/block-types-tab.js +1 -1
  74. package/build/components/inserter/block-types-tab.js.map +1 -1
  75. package/build/components/inserter/hooks/use-block-types-state.js +24 -5
  76. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  77. package/build/components/inserter/hooks/use-insertion-point.js +22 -12
  78. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  79. package/build/components/inserter/hooks/use-patterns-state.js +23 -10
  80. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  81. package/build/components/inserter/media-tab/media-preview.js +35 -13
  82. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  83. package/build/components/inserter/menu.js +2 -2
  84. package/build/components/inserter/menu.js.map +1 -1
  85. package/build/components/inserter/mobile-tab-navigation.js +5 -5
  86. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  87. package/build/components/inserter/quick-inserter.js +4 -4
  88. package/build/components/inserter/quick-inserter.js.map +1 -1
  89. package/build/components/inspector-controls-tabs/index.js +11 -8
  90. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  91. package/build/components/inspector-popover-header/index.js +4 -8
  92. package/build/components/inspector-popover-header/index.js.map +1 -1
  93. package/build/components/link-control/index.js +5 -10
  94. package/build/components/link-control/index.js.map +1 -1
  95. package/build/components/link-control/settings-drawer.js +2 -4
  96. package/build/components/link-control/settings-drawer.js.map +1 -1
  97. package/build/components/list-view/block-contents.js +1 -25
  98. package/build/components/list-view/block-contents.js.map +1 -1
  99. package/build/components/list-view/block-select-button.js +1 -4
  100. package/build/components/list-view/block-select-button.js.map +1 -1
  101. package/build/components/media-placeholder/index.js +29 -43
  102. package/build/components/media-placeholder/index.js.map +1 -1
  103. package/build/components/rich-text/index.js +4 -8
  104. package/build/components/rich-text/index.js.map +1 -1
  105. package/build/components/skip-to-selected-block/index.js +2 -4
  106. package/build/components/skip-to-selected-block/index.js.map +1 -1
  107. package/build/components/tool-selector/index.js +13 -12
  108. package/build/components/tool-selector/index.js.map +1 -1
  109. package/build/components/url-input/button.js +14 -16
  110. package/build/components/url-input/button.js.map +1 -1
  111. package/build/components/url-input/index.js +2 -4
  112. package/build/components/url-input/index.js.map +1 -1
  113. package/build/components/use-block-commands/index.js +0 -61
  114. package/build/components/use-block-commands/index.js.map +1 -1
  115. package/build/components/writing-flow/use-tab-nav.js +2 -25
  116. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  117. package/build/hooks/block-bindings.js +6 -13
  118. package/build/hooks/block-bindings.js.map +1 -1
  119. package/build/hooks/duotone.js +4 -1
  120. package/build/hooks/duotone.js.map +1 -1
  121. package/build/hooks/layout-child.js +3 -1
  122. package/build/hooks/layout-child.js.map +1 -1
  123. package/build/hooks/position.js +3 -2
  124. package/build/hooks/position.js.map +1 -1
  125. package/build/hooks/use-bindings-attributes.js +5 -4
  126. package/build/hooks/use-bindings-attributes.js.map +1 -1
  127. package/build/layouts/flex.js +6 -38
  128. package/build/layouts/flex.js.map +1 -1
  129. package/build/private-apis.js +0 -2
  130. package/build/private-apis.js.map +1 -1
  131. package/build/store/actions.js +13 -14
  132. package/build/store/actions.js.map +1 -1
  133. package/build/store/private-actions.js +15 -0
  134. package/build/store/private-actions.js.map +1 -1
  135. package/build/store/private-selectors.js +104 -7
  136. package/build/store/private-selectors.js.map +1 -1
  137. package/build/store/reducer.js +22 -26
  138. package/build/store/reducer.js.map +1 -1
  139. package/build/store/selectors.js +127 -56
  140. package/build/store/selectors.js.map +1 -1
  141. package/build/store/utils.js +4 -3
  142. package/build/store/utils.js.map +1 -1
  143. package/build/utils/block-bindings.js +50 -0
  144. package/build/utils/block-bindings.js.map +1 -1
  145. package/build/utils/index.js +7 -0
  146. package/build/utils/index.js.map +1 -1
  147. package/build-module/autocompleters/link.js +2 -1
  148. package/build-module/autocompleters/link.js.map +1 -1
  149. package/build-module/components/block-actions/index.js +1 -13
  150. package/build-module/components/block-actions/index.js.map +1 -1
  151. package/build-module/components/block-inspector/index.js +57 -76
  152. package/build-module/components/block-inspector/index.js.map +1 -1
  153. package/build-module/components/block-list/block.js +5 -19
  154. package/build-module/components/block-list/block.js.map +1 -1
  155. package/build-module/components/block-list/index.js +5 -8
  156. package/build-module/components/block-list/index.js.map +1 -1
  157. package/build-module/components/block-list/use-block-props/index.js +3 -11
  158. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  159. package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js +9 -12
  160. package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +1 -1
  161. package/build-module/components/block-list/use-in-between-inserter.js +5 -3
  162. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  163. package/build-module/components/block-list/zoom-out-separator.js +14 -6
  164. package/build-module/components/block-list/zoom-out-separator.js.map +1 -1
  165. package/build-module/components/block-navigation/dropdown.js +2 -4
  166. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  167. package/build-module/components/block-parent-selector/index.js +13 -10
  168. package/build-module/components/block-parent-selector/index.js.map +1 -1
  169. package/build-module/components/block-pattern-setup/setup-toolbar.js +10 -20
  170. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  171. package/build-module/components/block-patterns-paging/index.js +11 -13
  172. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  173. package/build-module/components/block-quick-navigation/index.js +2 -4
  174. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  175. package/build-module/components/block-settings-menu/block-settings-dropdown.js +79 -76
  176. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  177. package/build-module/components/block-settings-menu-controls/index.js +2 -7
  178. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  179. package/build-module/components/block-switcher/index.js +17 -14
  180. package/build-module/components/block-switcher/index.js.map +1 -1
  181. package/build-module/components/block-toolbar/index.js +17 -20
  182. package/build-module/components/block-toolbar/index.js.map +1 -1
  183. package/build-module/components/block-toolbar/use-has-block-toolbar.js +3 -5
  184. package/build-module/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  185. package/build-module/components/block-tools/index.js +8 -11
  186. package/build-module/components/block-tools/index.js.map +1 -1
  187. package/build-module/components/block-tools/insertion-point.js +1 -4
  188. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  189. package/build-module/components/block-tools/use-show-block-tools.js +2 -5
  190. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  191. package/build-module/components/block-tools/zoom-out-mode-inserter-button.js +1 -12
  192. package/build-module/components/block-tools/zoom-out-mode-inserter-button.js.map +1 -1
  193. package/build-module/components/block-tools/zoom-out-mode-inserters.js +14 -17
  194. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  195. package/build-module/components/block-tools/zoom-out-toolbar.js +2 -12
  196. package/build-module/components/block-tools/zoom-out-toolbar.js.map +1 -1
  197. package/build-module/components/block-variation-picker/index.js +2 -4
  198. package/build-module/components/block-variation-picker/index.js.map +1 -1
  199. package/build-module/components/block-variation-transforms/index.js +3 -4
  200. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  201. package/build-module/components/button-block-appender/index.js +2 -4
  202. package/build-module/components/button-block-appender/index.js.map +1 -1
  203. package/build-module/components/colors-gradients/dropdown.js +2 -4
  204. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  205. package/build-module/components/global-styles/border-panel.js +1 -1
  206. package/build-module/components/global-styles/border-panel.js.map +1 -1
  207. package/build-module/components/global-styles/color-panel.js +2 -4
  208. package/build-module/components/global-styles/color-panel.js.map +1 -1
  209. package/build-module/components/global-styles/dimensions-panel.js +1 -1
  210. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  211. package/build-module/components/global-styles/filters-panel.js +2 -4
  212. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  213. package/build-module/components/global-styles/shadow-panel-components.js +25 -30
  214. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  215. package/build-module/components/inner-blocks/index.js +1 -9
  216. package/build-module/components/inner-blocks/index.js.map +1 -1
  217. package/build-module/components/inserter/block-types-tab.js +1 -1
  218. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  219. package/build-module/components/inserter/hooks/use-block-types-state.js +27 -8
  220. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  221. package/build-module/components/inserter/hooks/use-insertion-point.js +22 -12
  222. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  223. package/build-module/components/inserter/hooks/use-patterns-state.js +23 -10
  224. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  225. package/build-module/components/inserter/media-tab/media-preview.js +35 -13
  226. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  227. package/build-module/components/inserter/menu.js +2 -2
  228. package/build-module/components/inserter/menu.js.map +1 -1
  229. package/build-module/components/inserter/mobile-tab-navigation.js +6 -6
  230. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  231. package/build-module/components/inserter/quick-inserter.js +4 -4
  232. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  233. package/build-module/components/inspector-controls-tabs/index.js +12 -9
  234. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  235. package/build-module/components/inspector-popover-header/index.js +4 -8
  236. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  237. package/build-module/components/link-control/index.js +5 -10
  238. package/build-module/components/link-control/index.js.map +1 -1
  239. package/build-module/components/link-control/settings-drawer.js +2 -4
  240. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  241. package/build-module/components/list-view/block-contents.js +1 -25
  242. package/build-module/components/list-view/block-contents.js.map +1 -1
  243. package/build-module/components/list-view/block-select-button.js +2 -5
  244. package/build-module/components/list-view/block-select-button.js.map +1 -1
  245. package/build-module/components/media-placeholder/index.js +30 -44
  246. package/build-module/components/media-placeholder/index.js.map +1 -1
  247. package/build-module/components/rich-text/index.js +4 -8
  248. package/build-module/components/rich-text/index.js.map +1 -1
  249. package/build-module/components/skip-to-selected-block/index.js +2 -4
  250. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  251. package/build-module/components/tool-selector/index.js +13 -12
  252. package/build-module/components/tool-selector/index.js.map +1 -1
  253. package/build-module/components/url-input/button.js +15 -17
  254. package/build-module/components/url-input/button.js.map +1 -1
  255. package/build-module/components/url-input/index.js +2 -4
  256. package/build-module/components/url-input/index.js.map +1 -1
  257. package/build-module/components/use-block-commands/index.js +1 -62
  258. package/build-module/components/use-block-commands/index.js.map +1 -1
  259. package/build-module/components/writing-flow/use-tab-nav.js +3 -26
  260. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  261. package/build-module/hooks/block-bindings.js +6 -13
  262. package/build-module/hooks/block-bindings.js.map +1 -1
  263. package/build-module/hooks/duotone.js +4 -1
  264. package/build-module/hooks/duotone.js.map +1 -1
  265. package/build-module/hooks/layout-child.js +4 -1
  266. package/build-module/hooks/layout-child.js.map +1 -1
  267. package/build-module/hooks/position.js +4 -1
  268. package/build-module/hooks/position.js.map +1 -1
  269. package/build-module/hooks/use-bindings-attributes.js +5 -4
  270. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  271. package/build-module/layouts/flex.js +7 -39
  272. package/build-module/layouts/flex.js.map +1 -1
  273. package/build-module/private-apis.js +0 -2
  274. package/build-module/private-apis.js.map +1 -1
  275. package/build-module/store/actions.js +12 -12
  276. package/build-module/store/actions.js.map +1 -1
  277. package/build-module/store/private-actions.js +14 -0
  278. package/build-module/store/private-actions.js.map +1 -1
  279. package/build-module/store/private-selectors.js +98 -7
  280. package/build-module/store/private-selectors.js.map +1 -1
  281. package/build-module/store/reducer.js +21 -25
  282. package/build-module/store/reducer.js.map +1 -1
  283. package/build-module/store/selectors.js +129 -58
  284. package/build-module/store/selectors.js.map +1 -1
  285. package/build-module/store/utils.js +3 -2
  286. package/build-module/store/utils.js.map +1 -1
  287. package/build-module/utils/block-bindings.js +50 -0
  288. package/build-module/utils/block-bindings.js.map +1 -1
  289. package/build-module/utils/index.js +1 -0
  290. package/build-module/utils/index.js.map +1 -1
  291. package/build-style/content-rtl.css +16 -70
  292. package/build-style/content.css +16 -70
  293. package/build-style/default-editor-styles-rtl.css +10 -1
  294. package/build-style/default-editor-styles.css +10 -1
  295. package/build-style/style-rtl.css +51 -149
  296. package/build-style/style.css +51 -149
  297. package/package.json +32 -32
  298. package/src/autocompleters/link.js +2 -1
  299. package/src/components/block-actions/index.js +1 -13
  300. package/src/components/block-draggable/style.scss +2 -2
  301. package/src/components/block-inspector/index.js +79 -95
  302. package/src/components/block-inspector/style.scss +2 -0
  303. package/src/components/block-list/block.js +7 -28
  304. package/src/components/block-list/content.scss +1 -61
  305. package/src/components/block-list/index.js +21 -29
  306. package/src/components/block-list/use-block-props/index.js +3 -10
  307. package/src/components/block-list/use-block-props/use-zoom-out-mode-exit.js +19 -11
  308. package/src/components/block-list/use-in-between-inserter.js +5 -2
  309. package/src/components/block-list/zoom-out-separator.js +24 -8
  310. package/src/components/block-navigation/dropdown.js +1 -2
  311. package/src/components/block-parent-selector/index.js +13 -10
  312. package/src/components/block-pattern-setup/setup-toolbar.js +5 -10
  313. package/src/components/block-patterns-paging/index.js +8 -7
  314. package/src/components/block-patterns-paging/style.scss +10 -27
  315. package/src/components/block-quick-navigation/index.js +1 -2
  316. package/src/components/block-settings-menu/block-settings-dropdown.js +120 -106
  317. package/src/components/block-settings-menu-controls/index.js +0 -15
  318. package/src/components/block-switcher/index.js +37 -30
  319. package/src/components/block-toolbar/index.js +22 -34
  320. package/src/components/block-toolbar/style.scss +10 -1
  321. package/src/components/block-toolbar/use-has-block-toolbar.js +19 -31
  322. package/src/components/block-tools/index.js +7 -16
  323. package/src/components/block-tools/insertion-point.js +1 -4
  324. package/src/components/block-tools/style.scss +3 -88
  325. package/src/components/block-tools/use-show-block-tools.js +2 -12
  326. package/src/components/block-tools/zoom-out-mode-inserter-button.js +2 -17
  327. package/src/components/block-tools/zoom-out-mode-inserters.js +11 -19
  328. package/src/components/block-tools/zoom-out-toolbar.js +2 -13
  329. package/src/components/block-variation-picker/index.js +1 -2
  330. package/src/components/block-variation-transforms/index.js +2 -2
  331. package/src/components/button-block-appender/content.scss +0 -5
  332. package/src/components/button-block-appender/index.js +1 -2
  333. package/src/components/colors-gradients/dropdown.js +1 -5
  334. package/src/components/font-family/README.md +5 -1
  335. package/src/components/global-styles/border-panel.js +1 -1
  336. package/src/components/global-styles/color-panel.js +1 -5
  337. package/src/components/global-styles/dimensions-panel.js +1 -1
  338. package/src/components/global-styles/filters-panel.js +1 -2
  339. package/src/components/global-styles/shadow-panel-components.js +28 -33
  340. package/src/components/global-styles/style.scss +5 -0
  341. package/src/components/inner-blocks/index.js +1 -16
  342. package/src/components/inserter/block-types-tab.js +1 -1
  343. package/src/components/inserter/hooks/use-block-types-state.js +34 -14
  344. package/src/components/inserter/hooks/use-insertion-point.js +35 -13
  345. package/src/components/inserter/hooks/use-patterns-state.js +46 -9
  346. package/src/components/inserter/media-tab/media-preview.js +38 -12
  347. package/src/components/inserter/menu.js +2 -2
  348. package/src/components/inserter/mobile-tab-navigation.js +10 -13
  349. package/src/components/inserter/quick-inserter.js +5 -4
  350. package/src/components/inserter/style.scss +0 -28
  351. package/src/components/inspector-controls-tabs/index.js +21 -20
  352. package/src/components/inspector-controls-tabs/style.scss +2 -6
  353. package/src/components/inspector-popover-header/index.js +2 -4
  354. package/src/components/inspector-popover-header/style.scss +0 -13
  355. package/src/components/link-control/index.js +2 -5
  356. package/src/components/link-control/settings-drawer.js +1 -2
  357. package/src/components/list-view/block-contents.js +1 -28
  358. package/src/components/list-view/block-select-button.js +2 -5
  359. package/src/components/list-view/style.scss +18 -14
  360. package/src/components/media-placeholder/content.scss +3 -19
  361. package/src/components/media-placeholder/index.js +23 -29
  362. package/src/components/rich-text/index.js +4 -13
  363. package/src/components/skip-to-selected-block/index.js +1 -2
  364. package/src/components/skip-to-selected-block/style.scss +0 -9
  365. package/src/components/tool-selector/index.js +14 -9
  366. package/src/components/tool-selector/style.scss +5 -0
  367. package/src/components/url-input/button.js +16 -12
  368. package/src/components/url-input/index.js +1 -2
  369. package/src/components/url-input/style.scss +0 -6
  370. package/src/components/use-block-commands/index.js +0 -58
  371. package/src/components/writing-flow/use-tab-nav.js +4 -36
  372. package/src/content.scss +0 -1
  373. package/src/hooks/block-bindings.js +9 -10
  374. package/src/hooks/duotone.js +4 -1
  375. package/src/hooks/layout-child.js +4 -1
  376. package/src/hooks/position.js +4 -1
  377. package/src/hooks/use-bindings-attributes.js +66 -63
  378. package/src/layouts/flex.js +10 -53
  379. package/src/private-apis.js +0 -2
  380. package/src/store/actions.js +14 -13
  381. package/src/store/private-actions.js +14 -0
  382. package/src/store/private-selectors.js +120 -16
  383. package/src/store/reducer.js +22 -28
  384. package/src/store/selectors.js +203 -114
  385. package/src/store/test/private-actions.js +15 -0
  386. package/src/store/test/private-selectors.js +34 -0
  387. package/src/store/test/reducer.js +40 -4
  388. package/src/store/test/selectors.js +183 -20
  389. package/src/store/utils.js +4 -2
  390. package/src/utils/block-bindings.js +49 -0
  391. package/src/utils/index.js +1 -0
  392. package/build/components/block-controls/use-has-block-controls.js +0 -43
  393. package/build/components/block-controls/use-has-block-controls.js.map +0 -1
  394. package/build/components/block-list/use-block-props/use-nav-mode-exit.js +0 -54
  395. package/build/components/block-list/use-block-props/use-nav-mode-exit.js.map +0 -1
  396. package/build/components/block-tools/block-selection-button.js +0 -259
  397. package/build/components/block-tools/block-selection-button.js.map +0 -1
  398. package/build/components/block-tools/block-toolbar-breadcrumb.js +0 -57
  399. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +0 -1
  400. package/build/components/inserter/tabs.js +0 -78
  401. package/build/components/inserter/tabs.js.map +0 -1
  402. package/build-module/components/block-controls/use-has-block-controls.js +0 -34
  403. package/build-module/components/block-controls/use-has-block-controls.js.map +0 -1
  404. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js +0 -48
  405. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js.map +0 -1
  406. package/build-module/components/block-tools/block-selection-button.js +0 -254
  407. package/build-module/components/block-tools/block-selection-button.js.map +0 -1
  408. package/build-module/components/block-tools/block-toolbar-breadcrumb.js +0 -49
  409. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +0 -1
  410. package/build-module/components/inserter/tabs.js +0 -72
  411. package/build-module/components/inserter/tabs.js.map +0 -1
  412. package/src/components/block-controls/use-has-block-controls.js +0 -35
  413. package/src/components/block-list/use-block-props/use-nav-mode-exit.js +0 -46
  414. package/src/components/block-tools/block-selection-button.js +0 -302
  415. package/src/components/block-tools/block-toolbar-breadcrumb.js +0 -51
  416. package/src/components/inner-blocks/content.scss +0 -13
  417. package/src/components/inserter/tabs.js +0 -78
  418. package/src/components/inserter/test/block-types-tab.native.js +0 -67
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_element","_i18n","_borderRadiusControl","_interopRequireDefault","_hooks","_utils","_object","_border","_shadowPanelComponents","_jsxRuntime","useHasBorderPanel","settings","controls","Object","values","useHasBorderPanelControls","some","Boolean","hasBorderColor","useHasBorderColorControl","hasBorderRadius","useHasBorderRadiusControl","hasBorderStyle","useHasBorderStyleControl","hasBorderWidth","useHasBorderWidthControl","hasShadow","useHasShadowControl","border","color","radius","style","width","shadows","useShadowPresets","shadow","length","BorderToolsPanel","resetAllFilter","onChange","value","panelId","children","label","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","DEFAULT_CONTROLS","BorderPanel","as","Wrapper","inheritedValue","name","defaultControls","_settings$shadow$pres","_ref","_ref2","_shadowPresets$custom","colors","useColorsPerOrigin","decodeValue","useCallback","rawValue","getValueFromVariable","encodeColorValue","colorValue","allColors","flatMap","originColors","colorObject","find","slug","useMemo","hasSplitBorders","borderValue","forEach","side","undefined","setBorder","newBorder","showBorderColor","showBorderStyle","showBorderWidth","showBorderRadius","borderRadiusValues","setBorderRadius","newBorderRadius","borderValues","entries","hasShadowControl","shadowPresets","presets","mergedShadowPresets","custom","theme","default","setShadow","newValue","shadowName","setImmutably","resetShadow","resetBorder","onBorderChange","updatedBorder","previousValue","showBorderByDefault","hasBorderControl","useBorderPanelLabel","blockName","jsxs","__experimentalToolsPanelItem","hasValue","isDefinedBorder","__","onDeselect","isShownByDefault","__experimentalBorderBoxControl","enableAlpha","enableStyle","popoverOffset","popoverPlacement","__experimentalIsRenderedInSidebar","size","hideLabelFromVision","BaseControl","VisualLabel","__experimentalItemGroup","isBordered","isSeparated","ShadowPopover","onShadowChange"],"sources":["@wordpress/block-editor/src/components/global-styles/border-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalBorderBoxControl as BorderBoxControl,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n\t__experimentalIsDefinedBorder as isDefinedBorder,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\tBaseControl,\n} from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BorderRadiusControl from '../border-radius-control';\nimport { useColorsPerOrigin } from './hooks';\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport { useBorderPanelLabel } from '../../hooks/border';\nimport { ShadowPopover, useShadowPresets } from './shadow-panel-components';\n\nexport function useHasBorderPanel( settings ) {\n\tconst controls = Object.values( useHasBorderPanelControls( settings ) );\n\treturn controls.some( Boolean );\n}\n\nexport function useHasBorderPanelControls( settings ) {\n\tconst controls = {\n\t\thasBorderColor: useHasBorderColorControl( settings ),\n\t\thasBorderRadius: useHasBorderRadiusControl( settings ),\n\t\thasBorderStyle: useHasBorderStyleControl( settings ),\n\t\thasBorderWidth: useHasBorderWidthControl( settings ),\n\t\thasShadow: useHasShadowControl( settings ),\n\t};\n\n\treturn controls;\n}\n\nfunction useHasBorderColorControl( settings ) {\n\treturn settings?.border?.color;\n}\n\nfunction useHasBorderRadiusControl( settings ) {\n\treturn settings?.border?.radius;\n}\n\nfunction useHasBorderStyleControl( settings ) {\n\treturn settings?.border?.style;\n}\n\nfunction useHasBorderWidthControl( settings ) {\n\treturn settings?.border?.width;\n}\n\nfunction useHasShadowControl( settings ) {\n\tconst shadows = useShadowPresets( settings );\n\treturn !! settings?.shadow && shadows.length > 0;\n}\n\nfunction BorderToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n\tlabel,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ label }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tradius: true,\n\tcolor: true,\n\twidth: true,\n\tshadow: true,\n};\n\nexport default function BorderPanel( {\n\tas: Wrapper = BorderToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tname,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst decodeValue = useCallback(\n\t\t( rawValue ) => getValueFromVariable( { settings }, '', rawValue ),\n\t\t[ settings ]\n\t);\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst border = useMemo( () => {\n\t\tif ( hasSplitBorders( inheritedValue?.border ) ) {\n\t\t\tconst borderValue = { ...inheritedValue?.border };\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tborderValue[ side ] = {\n\t\t\t\t\t...borderValue[ side ],\n\t\t\t\t\tcolor: decodeValue( borderValue[ side ]?.color ),\n\t\t\t\t};\n\t\t\t} );\n\t\t\treturn borderValue;\n\t\t}\n\t\treturn {\n\t\t\t...inheritedValue?.border,\n\t\t\tcolor: inheritedValue?.border?.color\n\t\t\t\t? decodeValue( inheritedValue?.border?.color )\n\t\t\t\t: undefined,\n\t\t};\n\t}, [ inheritedValue?.border, decodeValue ] );\n\tconst setBorder = ( newBorder ) =>\n\t\tonChange( { ...value, border: newBorder } );\n\tconst showBorderColor = useHasBorderColorControl( settings );\n\tconst showBorderStyle = useHasBorderStyleControl( settings );\n\tconst showBorderWidth = useHasBorderWidthControl( settings );\n\n\t// Border radius.\n\tconst showBorderRadius = useHasBorderRadiusControl( settings );\n\tconst borderRadiusValues = decodeValue( border?.radius );\n\tconst setBorderRadius = ( newBorderRadius ) =>\n\t\tsetBorder( { ...border, radius: newBorderRadius } );\n\tconst hasBorderRadius = () => {\n\t\tconst borderValues = value?.border?.radius;\n\t\tif ( typeof borderValues === 'object' ) {\n\t\t\treturn Object.entries( borderValues ).some( Boolean );\n\t\t}\n\t\treturn !! borderValues;\n\t};\n\tconst hasShadowControl = useHasShadowControl( settings );\n\n\t// Shadow\n\tconst shadow = decodeValue( inheritedValue?.shadow );\n\tconst shadowPresets = settings?.shadow?.presets ?? {};\n\tconst mergedShadowPresets =\n\t\tshadowPresets.custom ??\n\t\tshadowPresets.theme ??\n\t\tshadowPresets.default ??\n\t\t[];\n\tconst setShadow = ( newValue ) => {\n\t\tconst slug = mergedShadowPresets?.find(\n\t\t\t( { shadow: shadowName } ) => shadowName === newValue\n\t\t)?.slug;\n\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'shadow' ],\n\t\t\t\tslug ? `var:preset|shadow|${ slug }` : newValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasShadow = () => !! value?.shadow;\n\tconst resetShadow = () => setShadow( undefined );\n\n\tconst resetBorder = () => {\n\t\tif ( hasBorderRadius() ) {\n\t\t\treturn setBorder( { radius: value?.border?.radius } );\n\t\t}\n\n\t\tsetBorder( undefined );\n\t};\n\n\tconst onBorderChange = ( newBorder ) => {\n\t\t// Ensure we have a visible border style when a border width or\n\t\t// color is being selected.\n\t\tconst updatedBorder = { ...newBorder };\n\n\t\tif ( hasSplitBorders( updatedBorder ) ) {\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tif ( updatedBorder[ side ] ) {\n\t\t\t\t\tupdatedBorder[ side ] = {\n\t\t\t\t\t\t...updatedBorder[ side ],\n\t\t\t\t\t\tcolor: encodeColorValue( updatedBorder[ side ]?.color ),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t} else if ( updatedBorder ) {\n\t\t\tupdatedBorder.color = encodeColorValue( updatedBorder.color );\n\t\t}\n\n\t\t// As radius is maintained separately to color, style, and width\n\t\t// maintain its value. Undefined values here will be cleaned when\n\t\t// global styles are saved.\n\t\tsetBorder( { radius: border?.radius, ...updatedBorder } );\n\t};\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tborder: undefined,\n\t\t\tshadow: undefined,\n\t\t};\n\t}, [] );\n\n\tconst showBorderByDefault =\n\t\tdefaultControls?.color || defaultControls?.width;\n\n\tconst hasBorderControl =\n\t\tshowBorderColor ||\n\t\tshowBorderStyle ||\n\t\tshowBorderWidth ||\n\t\tshowBorderRadius;\n\n\tconst label = useBorderPanelLabel( {\n\t\tblockName: name,\n\t\thasShadowControl,\n\t\thasBorderControl,\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t\tlabel={ label }\n\t\t>\n\t\t\t{ ( showBorderWidth || showBorderColor ) && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => isDefinedBorder( value?.border ) }\n\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\tonDeselect={ () => resetBorder() }\n\t\t\t\t\tisShownByDefault={ showBorderByDefault }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderBoxControl\n\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\tenableStyle={ showBorderStyle }\n\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\tpopoverOffset={ 40 }\n\t\t\t\t\t\tpopoverPlacement=\"left-start\"\n\t\t\t\t\t\tvalue={ border }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\thideLabelFromVision={ ! hasShadowControl }\n\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showBorderRadius && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasBorderRadius }\n\t\t\t\t\tlabel={ __( 'Radius' ) }\n\t\t\t\t\tonDeselect={ () => setBorderRadius( undefined ) }\n\t\t\t\t\tisShownByDefault={ defaultControls.radius }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderRadiusControl\n\t\t\t\t\t\tvalues={ borderRadiusValues }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tsetBorderRadius( newValue || undefined );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasShadowControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Shadow' ) }\n\t\t\t\t\thasValue={ hasShadow }\n\t\t\t\t\tonDeselect={ resetShadow }\n\t\t\t\t\tisShownByDefault={ defaultControls.shadow }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ hasBorderControl ? (\n\t\t\t\t\t\t<BaseControl.VisualLabel as=\"legend\">\n\t\t\t\t\t\t\t{ __( 'Shadow' ) }\n\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t) : null }\n\n\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadow={ shadow }\n\t\t\t\t\t\t\tonShadowChange={ setShadow }\n\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_element","_i18n","_borderRadiusControl","_interopRequireDefault","_hooks","_utils","_object","_border","_shadowPanelComponents","_jsxRuntime","useHasBorderPanel","settings","controls","Object","values","useHasBorderPanelControls","some","Boolean","hasBorderColor","useHasBorderColorControl","hasBorderRadius","useHasBorderRadiusControl","hasBorderStyle","useHasBorderStyleControl","hasBorderWidth","useHasBorderWidthControl","hasShadow","useHasShadowControl","border","color","radius","style","width","shadows","useShadowPresets","shadow","length","BorderToolsPanel","resetAllFilter","onChange","value","panelId","children","label","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","DEFAULT_CONTROLS","BorderPanel","as","Wrapper","inheritedValue","name","defaultControls","_settings$shadow$pres","_ref","_ref2","_shadowPresets$custom","colors","useColorsPerOrigin","decodeValue","useCallback","rawValue","getValueFromVariable","encodeColorValue","colorValue","allColors","flatMap","originColors","colorObject","find","slug","useMemo","hasSplitBorders","borderValue","forEach","side","undefined","setBorder","newBorder","showBorderColor","showBorderStyle","showBorderWidth","showBorderRadius","borderRadiusValues","setBorderRadius","newBorderRadius","borderValues","entries","hasShadowControl","shadowPresets","presets","mergedShadowPresets","custom","theme","default","setShadow","newValue","shadowName","setImmutably","resetShadow","resetBorder","onBorderChange","updatedBorder","previousValue","showBorderByDefault","hasBorderControl","useBorderPanelLabel","blockName","jsxs","__experimentalToolsPanelItem","hasValue","isDefinedBorder","__","onDeselect","isShownByDefault","BorderBoxControl","enableAlpha","enableStyle","popoverOffset","popoverPlacement","__experimentalIsRenderedInSidebar","size","hideLabelFromVision","BaseControl","VisualLabel","__experimentalItemGroup","isBordered","isSeparated","ShadowPopover","onShadowChange"],"sources":["@wordpress/block-editor/src/components/global-styles/border-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBorderBoxControl,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n\t__experimentalIsDefinedBorder as isDefinedBorder,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\tBaseControl,\n} from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BorderRadiusControl from '../border-radius-control';\nimport { useColorsPerOrigin } from './hooks';\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport { useBorderPanelLabel } from '../../hooks/border';\nimport { ShadowPopover, useShadowPresets } from './shadow-panel-components';\n\nexport function useHasBorderPanel( settings ) {\n\tconst controls = Object.values( useHasBorderPanelControls( settings ) );\n\treturn controls.some( Boolean );\n}\n\nexport function useHasBorderPanelControls( settings ) {\n\tconst controls = {\n\t\thasBorderColor: useHasBorderColorControl( settings ),\n\t\thasBorderRadius: useHasBorderRadiusControl( settings ),\n\t\thasBorderStyle: useHasBorderStyleControl( settings ),\n\t\thasBorderWidth: useHasBorderWidthControl( settings ),\n\t\thasShadow: useHasShadowControl( settings ),\n\t};\n\n\treturn controls;\n}\n\nfunction useHasBorderColorControl( settings ) {\n\treturn settings?.border?.color;\n}\n\nfunction useHasBorderRadiusControl( settings ) {\n\treturn settings?.border?.radius;\n}\n\nfunction useHasBorderStyleControl( settings ) {\n\treturn settings?.border?.style;\n}\n\nfunction useHasBorderWidthControl( settings ) {\n\treturn settings?.border?.width;\n}\n\nfunction useHasShadowControl( settings ) {\n\tconst shadows = useShadowPresets( settings );\n\treturn !! settings?.shadow && shadows.length > 0;\n}\n\nfunction BorderToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n\tlabel,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ label }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tradius: true,\n\tcolor: true,\n\twidth: true,\n\tshadow: true,\n};\n\nexport default function BorderPanel( {\n\tas: Wrapper = BorderToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tname,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst decodeValue = useCallback(\n\t\t( rawValue ) => getValueFromVariable( { settings }, '', rawValue ),\n\t\t[ settings ]\n\t);\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst border = useMemo( () => {\n\t\tif ( hasSplitBorders( inheritedValue?.border ) ) {\n\t\t\tconst borderValue = { ...inheritedValue?.border };\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tborderValue[ side ] = {\n\t\t\t\t\t...borderValue[ side ],\n\t\t\t\t\tcolor: decodeValue( borderValue[ side ]?.color ),\n\t\t\t\t};\n\t\t\t} );\n\t\t\treturn borderValue;\n\t\t}\n\t\treturn {\n\t\t\t...inheritedValue?.border,\n\t\t\tcolor: inheritedValue?.border?.color\n\t\t\t\t? decodeValue( inheritedValue?.border?.color )\n\t\t\t\t: undefined,\n\t\t};\n\t}, [ inheritedValue?.border, decodeValue ] );\n\tconst setBorder = ( newBorder ) =>\n\t\tonChange( { ...value, border: newBorder } );\n\tconst showBorderColor = useHasBorderColorControl( settings );\n\tconst showBorderStyle = useHasBorderStyleControl( settings );\n\tconst showBorderWidth = useHasBorderWidthControl( settings );\n\n\t// Border radius.\n\tconst showBorderRadius = useHasBorderRadiusControl( settings );\n\tconst borderRadiusValues = decodeValue( border?.radius );\n\tconst setBorderRadius = ( newBorderRadius ) =>\n\t\tsetBorder( { ...border, radius: newBorderRadius } );\n\tconst hasBorderRadius = () => {\n\t\tconst borderValues = value?.border?.radius;\n\t\tif ( typeof borderValues === 'object' ) {\n\t\t\treturn Object.entries( borderValues ).some( Boolean );\n\t\t}\n\t\treturn !! borderValues;\n\t};\n\tconst hasShadowControl = useHasShadowControl( settings );\n\n\t// Shadow\n\tconst shadow = decodeValue( inheritedValue?.shadow );\n\tconst shadowPresets = settings?.shadow?.presets ?? {};\n\tconst mergedShadowPresets =\n\t\tshadowPresets.custom ??\n\t\tshadowPresets.theme ??\n\t\tshadowPresets.default ??\n\t\t[];\n\tconst setShadow = ( newValue ) => {\n\t\tconst slug = mergedShadowPresets?.find(\n\t\t\t( { shadow: shadowName } ) => shadowName === newValue\n\t\t)?.slug;\n\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'shadow' ],\n\t\t\t\tslug ? `var:preset|shadow|${ slug }` : newValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasShadow = () => !! value?.shadow;\n\tconst resetShadow = () => setShadow( undefined );\n\n\tconst resetBorder = () => {\n\t\tif ( hasBorderRadius() ) {\n\t\t\treturn setBorder( { radius: value?.border?.radius } );\n\t\t}\n\n\t\tsetBorder( undefined );\n\t};\n\n\tconst onBorderChange = ( newBorder ) => {\n\t\t// Ensure we have a visible border style when a border width or\n\t\t// color is being selected.\n\t\tconst updatedBorder = { ...newBorder };\n\n\t\tif ( hasSplitBorders( updatedBorder ) ) {\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tif ( updatedBorder[ side ] ) {\n\t\t\t\t\tupdatedBorder[ side ] = {\n\t\t\t\t\t\t...updatedBorder[ side ],\n\t\t\t\t\t\tcolor: encodeColorValue( updatedBorder[ side ]?.color ),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t} else if ( updatedBorder ) {\n\t\t\tupdatedBorder.color = encodeColorValue( updatedBorder.color );\n\t\t}\n\n\t\t// As radius is maintained separately to color, style, and width\n\t\t// maintain its value. Undefined values here will be cleaned when\n\t\t// global styles are saved.\n\t\tsetBorder( { radius: border?.radius, ...updatedBorder } );\n\t};\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tborder: undefined,\n\t\t\tshadow: undefined,\n\t\t};\n\t}, [] );\n\n\tconst showBorderByDefault =\n\t\tdefaultControls?.color || defaultControls?.width;\n\n\tconst hasBorderControl =\n\t\tshowBorderColor ||\n\t\tshowBorderStyle ||\n\t\tshowBorderWidth ||\n\t\tshowBorderRadius;\n\n\tconst label = useBorderPanelLabel( {\n\t\tblockName: name,\n\t\thasShadowControl,\n\t\thasBorderControl,\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t\tlabel={ label }\n\t\t>\n\t\t\t{ ( showBorderWidth || showBorderColor ) && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => isDefinedBorder( value?.border ) }\n\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\tonDeselect={ () => resetBorder() }\n\t\t\t\t\tisShownByDefault={ showBorderByDefault }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderBoxControl\n\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\tenableStyle={ showBorderStyle }\n\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\tpopoverOffset={ 40 }\n\t\t\t\t\t\tpopoverPlacement=\"left-start\"\n\t\t\t\t\t\tvalue={ border }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\thideLabelFromVision={ ! hasShadowControl }\n\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showBorderRadius && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasBorderRadius }\n\t\t\t\t\tlabel={ __( 'Radius' ) }\n\t\t\t\t\tonDeselect={ () => setBorderRadius( undefined ) }\n\t\t\t\t\tisShownByDefault={ defaultControls.radius }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderRadiusControl\n\t\t\t\t\t\tvalues={ borderRadiusValues }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tsetBorderRadius( newValue || undefined );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasShadowControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Shadow' ) }\n\t\t\t\t\thasValue={ hasShadow }\n\t\t\t\t\tonDeselect={ resetShadow }\n\t\t\t\t\tisShownByDefault={ defaultControls.shadow }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ hasBorderControl ? (\n\t\t\t\t\t\t<BaseControl.VisualLabel as=\"legend\">\n\t\t\t\t\t\t\t{ __( 'Shadow' ) }\n\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t) : null }\n\n\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadow={ shadow }\n\t\t\t\t\t\t\tonShadowChange={ setShadow }\n\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -193,10 +193,8 @@ function ColorPanelDropdown({
193
193
  'aria-label': (0, _i18n.sprintf)( /* translators: %s is the type of color property, e.g., "background" */
194
194
  (0, _i18n.__)('Color %s styles'), label)
195
195
  };
196
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
197
- // TODO: Switch to `true` (40px size) if possible
198
- , {
199
- __next40pxDefaultSize: false,
196
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
197
+ __next40pxDefaultSize: true,
200
198
  ...toggleProps,
201
199
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LabeledColorIndicators, {
202
200
  indicators: indicators,
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_element","_i18n","_control","_hooks","_utils","_object","_lockUnlock","_jsxRuntime","useHasColorPanel","settings","hasTextPanel","useHasTextPanel","hasBackgroundPanel","useHasBackgroundColorPanel","hasLinkPanel","useHasLinkPanel","hasHeadingPanel","useHasHeadingPanel","hasButtonPanel","useHasButtonPanel","hasCaptionPanel","useHasCaptionPanel","colors","useColorsPerOrigin","color","text","length","custom","link","caption","gradients","useGradientsPerOrigin","heading","customGradient","button","background","ColorToolsPanel","resetAllFilter","onChange","value","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","__","hasInnerWrapper","headingLevel","className","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","Tabs","unlock","componentsPrivateApis","LabeledColorIndicators","indicators","jsxs","__experimentalHStack","justify","__experimentalZStack","isLayered","map","indicator","index","Flex","expanded","ColorIndicator","colorValue","FlexItem","title","ColorPanelTab","isGradient","inheritedValue","userValue","setValue","colorGradientControlSettings","default","showTitle","enableAlpha","__experimentalIsRenderedInSidebar","undefined","gradientValue","onColorChange","onGradientChange","clearable","ColorPanelDropdown","hasValue","resetValue","isShownByDefault","tabs","_tabs$","currentTab","find","tab","key","firstTabKey","firstTab","__experimentalToolsPanelItem","onDeselect","Dropdown","renderToggle","onToggle","isOpen","toggleProps","onClick","clsx","sprintf","Button","__next40pxDefaultSize","renderContent","__experimentalDropdownContentWrapper","paddingSize","defaultTabId","TabList","Tab","tabId","tabKey","restTabProps","TabPanel","focusable","ColorPanel","as","Wrapper","defaultControls","areCustomSolidsEnabled","areCustomGradientsEnabled","hasSolidColors","hasGradientColors","decodeValue","rawValue","getValueFromVariable","encodeColorValue","allColors","flatMap","originColors","colorObject","slug","encodeGradientValue","allGradients","originGradients","gradientObject","gradient","showBackgroundPanel","backgroundColor","userBackgroundColor","userGradient","hasBackground","setBackgroundColor","newColor","newValue","setImmutably","setGradient","newGradient","resetBackground","showLinkPanel","linkColor","elements","userLinkColor","setLinkColor","hoverLinkColor","userHoverLinkColor","setHoverLinkColor","hasLink","resetLink","showTextPanel","textColor","userTextColor","hasTextColor","setTextColor","changedObject","resetTextColor","name","showPanel","useCallback","previousValue","reduce","acc","element","items","filter","Boolean","forEach","elementBackgroundColor","elementGradient","elementTextColor","elementBackgroundUserColor","elementGradientUserColor","elementTextUserColor","hasElement","resetElement","setElementTextColor","newTextColor","setElementBackgroundColor","newBackgroundColor","setElementGradient","supportsTextColor","supportsBackground","push","item","restItem","disableCustomColors","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/global-styles/color-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tColorIndicator,\n\tFlex,\n\tFlexItem,\n\tDropdown,\n\tButton,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from '../colors-gradients/control';\nimport { useColorsPerOrigin, useGradientsPerOrigin } from './hooks';\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport { unlock } from '../../lock-unlock';\n\nexport function useHasColorPanel( settings ) {\n\tconst hasTextPanel = useHasTextPanel( settings );\n\tconst hasBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst hasLinkPanel = useHasLinkPanel( settings );\n\tconst hasHeadingPanel = useHasHeadingPanel( settings );\n\tconst hasButtonPanel = useHasButtonPanel( settings );\n\tconst hasCaptionPanel = useHasCaptionPanel( settings );\n\n\treturn (\n\t\thasTextPanel ||\n\t\thasBackgroundPanel ||\n\t\thasLinkPanel ||\n\t\thasHeadingPanel ||\n\t\thasButtonPanel ||\n\t\thasCaptionPanel\n\t);\n}\n\nexport function useHasTextPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.text &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasLinkPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.link &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasCaptionPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.caption &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasHeadingPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.heading &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasButtonPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.button &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasBackgroundColorPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.background &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nfunction ColorToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Elements' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\thasInnerWrapper\n\t\t\theadingLevel={ 3 }\n\t\t\tclassName=\"color-block-support-panel\"\n\t\t\t__experimentalFirstVisibleItemClass=\"first\"\n\t\t\t__experimentalLastVisibleItemClass=\"last\"\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t<div className=\"color-block-support-panel__inner-wrapper\">\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\ttext: true,\n\tbackground: true,\n\tlink: true,\n\theading: true,\n\tbutton: true,\n\tcaption: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n};\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst LabeledColorIndicators = ( { indicators, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t{ indicators.map( ( indicator, index ) => (\n\t\t\t\t<Flex key={ index } expanded={ false }>\n\t\t\t\t\t<ColorIndicator colorValue={ indicator } />\n\t\t\t\t</Flex>\n\t\t\t) ) }\n\t\t</ZStack>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\nfunction ColorPanelTab( {\n\tisGradient,\n\tinheritedValue,\n\tuserValue,\n\tsetValue,\n\tcolorGradientControlSettings,\n} ) {\n\treturn (\n\t\t<ColorGradientControl\n\t\t\t{ ...colorGradientControlSettings }\n\t\t\tshowTitle={ false }\n\t\t\tenableAlpha\n\t\t\t__experimentalIsRenderedInSidebar\n\t\t\tcolorValue={ isGradient ? undefined : inheritedValue }\n\t\t\tgradientValue={ isGradient ? inheritedValue : undefined }\n\t\t\tonColorChange={ isGradient ? undefined : setValue }\n\t\t\tonGradientChange={ isGradient ? setValue : undefined }\n\t\t\tclearable={ inheritedValue === userValue }\n\t\t\theadingLevel={ 3 }\n\t\t/>\n\t);\n}\n\nfunction ColorPanelDropdown( {\n\tlabel,\n\thasValue,\n\tresetValue,\n\tisShownByDefault,\n\tindicators,\n\ttabs,\n\tcolorGradientControlSettings,\n\tpanelId,\n} ) {\n\tconst currentTab = tabs.find( ( tab ) => tab.userValue !== undefined );\n\tconst { key: firstTabKey, ...firstTab } = tabs[ 0 ] ?? {};\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\thasValue={ hasValue }\n\t\t\tlabel={ label }\n\t\t\tonDeselect={ resetValue }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__dropdown\"\n\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-label': sprintf(\n\t\t\t\t\t\t\t/* translators: %s is the type of color property, e.g., \"background\" */\n\t\t\t\t\t\t\t__( 'Color %s styles' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t{ ...toggleProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<LabeledColorIndicators\n\t\t\t\t\t\t\t\tindicators={ indicators }\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\trenderContent={ () => (\n\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t<div className=\"block-editor-panel-color-gradient-settings__dropdown-content\">\n\t\t\t\t\t\t\t{ tabs.length === 1 && (\n\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\tkey={ firstTabKey }\n\t\t\t\t\t\t\t\t\t{ ...firstTab }\n\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ tabs.length > 1 && (\n\t\t\t\t\t\t\t\t<Tabs defaultTabId={ currentTab?.key }>\n\t\t\t\t\t\t\t\t\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ tab.label }\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t</Tabs.TabList>\n\n\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\t\t\t\tconst { key: tabKey, ...restTabProps } =\n\t\t\t\t\t\t\t\t\t\t\ttab;\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ ...restTabProps }\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t</Tabs>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nexport default function ColorPanel( {\n\tas: Wrapper = ColorToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tchildren,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\tconst areCustomSolidsEnabled = settings?.color?.custom;\n\tconst areCustomGradientsEnabled = settings?.color?.customGradient;\n\tconst hasSolidColors = colors.length > 0 || areCustomSolidsEnabled;\n\tconst hasGradientColors = gradients.length > 0 || areCustomGradientsEnabled;\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst encodeGradientValue = ( gradientValue ) => {\n\t\tconst allGradients = gradients.flatMap(\n\t\t\t( { gradients: originGradients } ) => originGradients\n\t\t);\n\t\tconst gradientObject = allGradients.find(\n\t\t\t( { gradient } ) => gradient === gradientValue\n\t\t);\n\t\treturn gradientObject\n\t\t\t? 'var:preset|gradient|' + gradientObject.slug\n\t\t\t: gradientValue;\n\t};\n\n\t// BackgroundColor\n\tconst showBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst backgroundColor = decodeValue( inheritedValue?.color?.background );\n\tconst userBackgroundColor = decodeValue( value?.color?.background );\n\tconst gradient = decodeValue( inheritedValue?.color?.gradient );\n\tconst userGradient = decodeValue( value?.color?.gradient );\n\tconst hasBackground = () => !! userBackgroundColor || !! userGradient;\n\tconst setBackgroundColor = ( newColor ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst setGradient = ( newGradient ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'gradient' ],\n\t\t\tencodeGradientValue( newGradient )\n\t\t);\n\t\tnewValue.color.background = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst resetBackground = () => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\n\t// Links\n\tconst showLinkPanel = useHasLinkPanel( settings );\n\tconst linkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.color?.text\n\t);\n\tconst userLinkColor = decodeValue( value?.elements?.link?.color?.text );\n\tconst setLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hoverLinkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst userHoverLinkColor = decodeValue(\n\t\tvalue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst setHoverLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLink = () => !! userLinkColor || !! userHoverLinkColor;\n\tconst resetLink = () => {\n\t\tlet newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue = setImmutably(\n\t\t\tnewValue,\n\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tonChange( newValue );\n\t};\n\n\t// Text Color\n\tconst showTextPanel = useHasTextPanel( settings );\n\tconst textColor = decodeValue( inheritedValue?.color?.text );\n\tconst userTextColor = decodeValue( value?.color?.text );\n\tconst hasTextColor = () => !! userTextColor;\n\tconst setTextColor = ( newColor ) => {\n\t\tlet changedObject = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'text' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tif ( textColor === linkColor ) {\n\t\t\tchangedObject = setImmutably(\n\t\t\t\tchangedObject,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t);\n\t\t}\n\n\t\tonChange( changedObject );\n\t};\n\tconst resetTextColor = () => setTextColor( undefined );\n\n\t// Elements\n\tconst elements = [\n\t\t{\n\t\t\tname: 'caption',\n\t\t\tlabel: __( 'Captions' ),\n\t\t\tshowPanel: useHasCaptionPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'button',\n\t\t\tlabel: __( 'Button' ),\n\t\t\tshowPanel: useHasButtonPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'heading',\n\t\t\tlabel: __( 'Heading' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h1',\n\t\t\tlabel: __( 'H1' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h2',\n\t\t\tlabel: __( 'H2' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h3',\n\t\t\tlabel: __( 'H3' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h4',\n\t\t\tlabel: __( 'H4' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h5',\n\t\t\tlabel: __( 'H5' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h6',\n\t\t\tlabel: __( 'H6' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t];\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tcolor: undefined,\n\t\t\telements: {\n\t\t\t\t...previousValue?.elements,\n\t\t\t\tlink: {\n\t\t\t\t\t...previousValue?.elements?.link,\n\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t':hover': {\n\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t...elements.reduce( ( acc, element ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ element.name ]: {\n\t\t\t\t\t\t\t...previousValue?.elements?.[ element.name ],\n\t\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}, {} ),\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst items = [\n\t\tshowTextPanel && {\n\t\t\tkey: 'text',\n\t\t\tlabel: __( 'Text' ),\n\t\t\thasValue: hasTextColor,\n\t\t\tresetValue: resetTextColor,\n\t\t\tisShownByDefault: defaultControls.text,\n\t\t\tindicators: [ textColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'text',\n\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\tinheritedValue: textColor,\n\t\t\t\t\tsetValue: setTextColor,\n\t\t\t\t\tuserValue: userTextColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tshowBackgroundPanel && {\n\t\t\tkey: 'background',\n\t\t\tlabel: __( 'Background' ),\n\t\t\thasValue: hasBackground,\n\t\t\tresetValue: resetBackground,\n\t\t\tisShownByDefault: defaultControls.background,\n\t\t\tindicators: [ gradient ?? backgroundColor ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors && {\n\t\t\t\t\tkey: 'background',\n\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\tinheritedValue: backgroundColor,\n\t\t\t\t\tsetValue: setBackgroundColor,\n\t\t\t\t\tuserValue: userBackgroundColor,\n\t\t\t\t},\n\t\t\t\thasGradientColors && {\n\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\tinheritedValue: gradient,\n\t\t\t\t\tsetValue: setGradient,\n\t\t\t\t\tuserValue: userGradient,\n\t\t\t\t\tisGradient: true,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t},\n\t\tshowLinkPanel && {\n\t\t\tkey: 'link',\n\t\t\tlabel: __( 'Link' ),\n\t\t\thasValue: hasLink,\n\t\t\tresetValue: resetLink,\n\t\t\tisShownByDefault: defaultControls.link,\n\t\t\tindicators: [ linkColor, hoverLinkColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'link',\n\t\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\t\tinheritedValue: linkColor,\n\t\t\t\t\tsetValue: setLinkColor,\n\t\t\t\t\tuserValue: userLinkColor,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: 'hover',\n\t\t\t\t\tlabel: __( 'Hover' ),\n\t\t\t\t\tinheritedValue: hoverLinkColor,\n\t\t\t\t\tsetValue: setHoverLinkColor,\n\t\t\t\t\tuserValue: userHoverLinkColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t].filter( Boolean );\n\n\telements.forEach( ( { name, label, showPanel } ) => {\n\t\tif ( ! showPanel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elementBackgroundColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradient = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst elementBackgroundUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradientUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst hasElement = () =>\n\t\t\t!! (\n\t\t\t\telementTextUserColor ||\n\t\t\t\telementBackgroundUserColor ||\n\t\t\t\telementGradientUserColor\n\t\t\t);\n\t\tconst resetElement = () => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tundefined\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tnewValue.elements[ name ].color.text = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\n\t\tconst setElementTextColor = ( newTextColor ) => {\n\t\t\tonChange(\n\t\t\t\tsetImmutably(\n\t\t\t\t\tvalue,\n\t\t\t\t\t[ 'elements', name, 'color', 'text' ],\n\t\t\t\t\tencodeColorValue( newTextColor )\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tconst setElementBackgroundColor = ( newBackgroundColor ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tencodeColorValue( newBackgroundColor )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst setElementGradient = ( newGradient ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'gradient' ],\n\t\t\t\tencodeGradientValue( newGradient )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.background = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst supportsTextColor = true;\n\t\t// Background color is not supported for `caption`\n\t\t// as there isn't yet a way to set padding for the element.\n\t\tconst supportsBackground = name !== 'caption';\n\n\t\titems.push( {\n\t\t\tkey: name,\n\t\t\tlabel,\n\t\t\thasValue: hasElement,\n\t\t\tresetValue: resetElement,\n\t\t\tisShownByDefault: defaultControls[ name ],\n\t\t\tindicators:\n\t\t\t\tsupportsTextColor && supportsBackground\n\t\t\t\t\t? [\n\t\t\t\t\t\t\telementTextColor,\n\t\t\t\t\t\t\telementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ]\n\t\t\t\t\t: [\n\t\t\t\t\t\t\tsupportsTextColor\n\t\t\t\t\t\t\t\t? elementTextColor\n\t\t\t\t\t\t\t\t: elementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsTextColor && {\n\t\t\t\t\t\tkey: 'text',\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tinheritedValue: elementTextColor,\n\t\t\t\t\t\tsetValue: setElementTextColor,\n\t\t\t\t\t\tuserValue: elementTextUserColor,\n\t\t\t\t\t},\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'background',\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tinheritedValue: elementBackgroundColor,\n\t\t\t\t\t\tsetValue: setElementBackgroundColor,\n\t\t\t\t\t\tuserValue: elementBackgroundUserColor,\n\t\t\t\t\t},\n\t\t\t\thasGradientColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\t\tinheritedValue: elementGradient,\n\t\t\t\t\t\tsetValue: setElementGradient,\n\t\t\t\t\t\tuserValue: elementGradientUserColor,\n\t\t\t\t\t\tisGradient: true,\n\t\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ items.map( ( item ) => {\n\t\t\t\tconst { key, ...restItem } = item;\n\t\t\t\treturn (\n\t\t\t\t\t<ColorPanelDropdown\n\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t{ ...restItem }\n\t\t\t\t\t\tcolorGradientControlSettings={ {\n\t\t\t\t\t\t\tcolors,\n\t\t\t\t\t\t\tdisableCustomColors: ! areCustomSolidsEnabled,\n\t\t\t\t\t\t\tgradients,\n\t\t\t\t\t\t\tdisableCustomGradients: ! areCustomGradientsEnabled,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ children }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_element","_i18n","_control","_hooks","_utils","_object","_lockUnlock","_jsxRuntime","useHasColorPanel","settings","hasTextPanel","useHasTextPanel","hasBackgroundPanel","useHasBackgroundColorPanel","hasLinkPanel","useHasLinkPanel","hasHeadingPanel","useHasHeadingPanel","hasButtonPanel","useHasButtonPanel","hasCaptionPanel","useHasCaptionPanel","colors","useColorsPerOrigin","color","text","length","custom","link","caption","gradients","useGradientsPerOrigin","heading","customGradient","button","background","ColorToolsPanel","resetAllFilter","onChange","value","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","__","hasInnerWrapper","headingLevel","className","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","Tabs","unlock","componentsPrivateApis","LabeledColorIndicators","indicators","jsxs","__experimentalHStack","justify","__experimentalZStack","isLayered","map","indicator","index","Flex","expanded","ColorIndicator","colorValue","FlexItem","title","ColorPanelTab","isGradient","inheritedValue","userValue","setValue","colorGradientControlSettings","default","showTitle","enableAlpha","__experimentalIsRenderedInSidebar","undefined","gradientValue","onColorChange","onGradientChange","clearable","ColorPanelDropdown","hasValue","resetValue","isShownByDefault","tabs","_tabs$","currentTab","find","tab","key","firstTabKey","firstTab","__experimentalToolsPanelItem","onDeselect","Dropdown","renderToggle","onToggle","isOpen","toggleProps","onClick","clsx","sprintf","Button","__next40pxDefaultSize","renderContent","__experimentalDropdownContentWrapper","paddingSize","defaultTabId","TabList","Tab","tabId","tabKey","restTabProps","TabPanel","focusable","ColorPanel","as","Wrapper","defaultControls","areCustomSolidsEnabled","areCustomGradientsEnabled","hasSolidColors","hasGradientColors","decodeValue","rawValue","getValueFromVariable","encodeColorValue","allColors","flatMap","originColors","colorObject","slug","encodeGradientValue","allGradients","originGradients","gradientObject","gradient","showBackgroundPanel","backgroundColor","userBackgroundColor","userGradient","hasBackground","setBackgroundColor","newColor","newValue","setImmutably","setGradient","newGradient","resetBackground","showLinkPanel","linkColor","elements","userLinkColor","setLinkColor","hoverLinkColor","userHoverLinkColor","setHoverLinkColor","hasLink","resetLink","showTextPanel","textColor","userTextColor","hasTextColor","setTextColor","changedObject","resetTextColor","name","showPanel","useCallback","previousValue","reduce","acc","element","items","filter","Boolean","forEach","elementBackgroundColor","elementGradient","elementTextColor","elementBackgroundUserColor","elementGradientUserColor","elementTextUserColor","hasElement","resetElement","setElementTextColor","newTextColor","setElementBackgroundColor","newBackgroundColor","setElementGradient","supportsTextColor","supportsBackground","push","item","restItem","disableCustomColors","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/global-styles/color-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tColorIndicator,\n\tFlex,\n\tFlexItem,\n\tDropdown,\n\tButton,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from '../colors-gradients/control';\nimport { useColorsPerOrigin, useGradientsPerOrigin } from './hooks';\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport { unlock } from '../../lock-unlock';\n\nexport function useHasColorPanel( settings ) {\n\tconst hasTextPanel = useHasTextPanel( settings );\n\tconst hasBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst hasLinkPanel = useHasLinkPanel( settings );\n\tconst hasHeadingPanel = useHasHeadingPanel( settings );\n\tconst hasButtonPanel = useHasButtonPanel( settings );\n\tconst hasCaptionPanel = useHasCaptionPanel( settings );\n\n\treturn (\n\t\thasTextPanel ||\n\t\thasBackgroundPanel ||\n\t\thasLinkPanel ||\n\t\thasHeadingPanel ||\n\t\thasButtonPanel ||\n\t\thasCaptionPanel\n\t);\n}\n\nexport function useHasTextPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.text &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasLinkPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.link &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasCaptionPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.caption &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasHeadingPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.heading &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasButtonPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.button &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasBackgroundColorPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.background &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nfunction ColorToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Elements' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\thasInnerWrapper\n\t\t\theadingLevel={ 3 }\n\t\t\tclassName=\"color-block-support-panel\"\n\t\t\t__experimentalFirstVisibleItemClass=\"first\"\n\t\t\t__experimentalLastVisibleItemClass=\"last\"\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t<div className=\"color-block-support-panel__inner-wrapper\">\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\ttext: true,\n\tbackground: true,\n\tlink: true,\n\theading: true,\n\tbutton: true,\n\tcaption: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n};\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst LabeledColorIndicators = ( { indicators, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t{ indicators.map( ( indicator, index ) => (\n\t\t\t\t<Flex key={ index } expanded={ false }>\n\t\t\t\t\t<ColorIndicator colorValue={ indicator } />\n\t\t\t\t</Flex>\n\t\t\t) ) }\n\t\t</ZStack>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\nfunction ColorPanelTab( {\n\tisGradient,\n\tinheritedValue,\n\tuserValue,\n\tsetValue,\n\tcolorGradientControlSettings,\n} ) {\n\treturn (\n\t\t<ColorGradientControl\n\t\t\t{ ...colorGradientControlSettings }\n\t\t\tshowTitle={ false }\n\t\t\tenableAlpha\n\t\t\t__experimentalIsRenderedInSidebar\n\t\t\tcolorValue={ isGradient ? undefined : inheritedValue }\n\t\t\tgradientValue={ isGradient ? inheritedValue : undefined }\n\t\t\tonColorChange={ isGradient ? undefined : setValue }\n\t\t\tonGradientChange={ isGradient ? setValue : undefined }\n\t\t\tclearable={ inheritedValue === userValue }\n\t\t\theadingLevel={ 3 }\n\t\t/>\n\t);\n}\n\nfunction ColorPanelDropdown( {\n\tlabel,\n\thasValue,\n\tresetValue,\n\tisShownByDefault,\n\tindicators,\n\ttabs,\n\tcolorGradientControlSettings,\n\tpanelId,\n} ) {\n\tconst currentTab = tabs.find( ( tab ) => tab.userValue !== undefined );\n\tconst { key: firstTabKey, ...firstTab } = tabs[ 0 ] ?? {};\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\thasValue={ hasValue }\n\t\t\tlabel={ label }\n\t\t\tonDeselect={ resetValue }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__dropdown\"\n\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-label': sprintf(\n\t\t\t\t\t\t\t/* translators: %s is the type of color property, e.g., \"background\" */\n\t\t\t\t\t\t\t__( 'Color %s styles' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button __next40pxDefaultSize { ...toggleProps }>\n\t\t\t\t\t\t\t<LabeledColorIndicators\n\t\t\t\t\t\t\t\tindicators={ indicators }\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\trenderContent={ () => (\n\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t<div className=\"block-editor-panel-color-gradient-settings__dropdown-content\">\n\t\t\t\t\t\t\t{ tabs.length === 1 && (\n\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\tkey={ firstTabKey }\n\t\t\t\t\t\t\t\t\t{ ...firstTab }\n\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ tabs.length > 1 && (\n\t\t\t\t\t\t\t\t<Tabs defaultTabId={ currentTab?.key }>\n\t\t\t\t\t\t\t\t\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ tab.label }\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t</Tabs.TabList>\n\n\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\t\t\t\tconst { key: tabKey, ...restTabProps } =\n\t\t\t\t\t\t\t\t\t\t\ttab;\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ ...restTabProps }\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t</Tabs>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nexport default function ColorPanel( {\n\tas: Wrapper = ColorToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tchildren,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\tconst areCustomSolidsEnabled = settings?.color?.custom;\n\tconst areCustomGradientsEnabled = settings?.color?.customGradient;\n\tconst hasSolidColors = colors.length > 0 || areCustomSolidsEnabled;\n\tconst hasGradientColors = gradients.length > 0 || areCustomGradientsEnabled;\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst encodeGradientValue = ( gradientValue ) => {\n\t\tconst allGradients = gradients.flatMap(\n\t\t\t( { gradients: originGradients } ) => originGradients\n\t\t);\n\t\tconst gradientObject = allGradients.find(\n\t\t\t( { gradient } ) => gradient === gradientValue\n\t\t);\n\t\treturn gradientObject\n\t\t\t? 'var:preset|gradient|' + gradientObject.slug\n\t\t\t: gradientValue;\n\t};\n\n\t// BackgroundColor\n\tconst showBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst backgroundColor = decodeValue( inheritedValue?.color?.background );\n\tconst userBackgroundColor = decodeValue( value?.color?.background );\n\tconst gradient = decodeValue( inheritedValue?.color?.gradient );\n\tconst userGradient = decodeValue( value?.color?.gradient );\n\tconst hasBackground = () => !! userBackgroundColor || !! userGradient;\n\tconst setBackgroundColor = ( newColor ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst setGradient = ( newGradient ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'gradient' ],\n\t\t\tencodeGradientValue( newGradient )\n\t\t);\n\t\tnewValue.color.background = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst resetBackground = () => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\n\t// Links\n\tconst showLinkPanel = useHasLinkPanel( settings );\n\tconst linkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.color?.text\n\t);\n\tconst userLinkColor = decodeValue( value?.elements?.link?.color?.text );\n\tconst setLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hoverLinkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst userHoverLinkColor = decodeValue(\n\t\tvalue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst setHoverLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLink = () => !! userLinkColor || !! userHoverLinkColor;\n\tconst resetLink = () => {\n\t\tlet newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue = setImmutably(\n\t\t\tnewValue,\n\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tonChange( newValue );\n\t};\n\n\t// Text Color\n\tconst showTextPanel = useHasTextPanel( settings );\n\tconst textColor = decodeValue( inheritedValue?.color?.text );\n\tconst userTextColor = decodeValue( value?.color?.text );\n\tconst hasTextColor = () => !! userTextColor;\n\tconst setTextColor = ( newColor ) => {\n\t\tlet changedObject = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'text' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tif ( textColor === linkColor ) {\n\t\t\tchangedObject = setImmutably(\n\t\t\t\tchangedObject,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t);\n\t\t}\n\n\t\tonChange( changedObject );\n\t};\n\tconst resetTextColor = () => setTextColor( undefined );\n\n\t// Elements\n\tconst elements = [\n\t\t{\n\t\t\tname: 'caption',\n\t\t\tlabel: __( 'Captions' ),\n\t\t\tshowPanel: useHasCaptionPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'button',\n\t\t\tlabel: __( 'Button' ),\n\t\t\tshowPanel: useHasButtonPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'heading',\n\t\t\tlabel: __( 'Heading' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h1',\n\t\t\tlabel: __( 'H1' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h2',\n\t\t\tlabel: __( 'H2' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h3',\n\t\t\tlabel: __( 'H3' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h4',\n\t\t\tlabel: __( 'H4' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h5',\n\t\t\tlabel: __( 'H5' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h6',\n\t\t\tlabel: __( 'H6' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t];\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tcolor: undefined,\n\t\t\telements: {\n\t\t\t\t...previousValue?.elements,\n\t\t\t\tlink: {\n\t\t\t\t\t...previousValue?.elements?.link,\n\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t':hover': {\n\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t...elements.reduce( ( acc, element ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ element.name ]: {\n\t\t\t\t\t\t\t...previousValue?.elements?.[ element.name ],\n\t\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}, {} ),\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst items = [\n\t\tshowTextPanel && {\n\t\t\tkey: 'text',\n\t\t\tlabel: __( 'Text' ),\n\t\t\thasValue: hasTextColor,\n\t\t\tresetValue: resetTextColor,\n\t\t\tisShownByDefault: defaultControls.text,\n\t\t\tindicators: [ textColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'text',\n\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\tinheritedValue: textColor,\n\t\t\t\t\tsetValue: setTextColor,\n\t\t\t\t\tuserValue: userTextColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tshowBackgroundPanel && {\n\t\t\tkey: 'background',\n\t\t\tlabel: __( 'Background' ),\n\t\t\thasValue: hasBackground,\n\t\t\tresetValue: resetBackground,\n\t\t\tisShownByDefault: defaultControls.background,\n\t\t\tindicators: [ gradient ?? backgroundColor ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors && {\n\t\t\t\t\tkey: 'background',\n\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\tinheritedValue: backgroundColor,\n\t\t\t\t\tsetValue: setBackgroundColor,\n\t\t\t\t\tuserValue: userBackgroundColor,\n\t\t\t\t},\n\t\t\t\thasGradientColors && {\n\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\tinheritedValue: gradient,\n\t\t\t\t\tsetValue: setGradient,\n\t\t\t\t\tuserValue: userGradient,\n\t\t\t\t\tisGradient: true,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t},\n\t\tshowLinkPanel && {\n\t\t\tkey: 'link',\n\t\t\tlabel: __( 'Link' ),\n\t\t\thasValue: hasLink,\n\t\t\tresetValue: resetLink,\n\t\t\tisShownByDefault: defaultControls.link,\n\t\t\tindicators: [ linkColor, hoverLinkColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'link',\n\t\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\t\tinheritedValue: linkColor,\n\t\t\t\t\tsetValue: setLinkColor,\n\t\t\t\t\tuserValue: userLinkColor,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: 'hover',\n\t\t\t\t\tlabel: __( 'Hover' ),\n\t\t\t\t\tinheritedValue: hoverLinkColor,\n\t\t\t\t\tsetValue: setHoverLinkColor,\n\t\t\t\t\tuserValue: userHoverLinkColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t].filter( Boolean );\n\n\telements.forEach( ( { name, label, showPanel } ) => {\n\t\tif ( ! showPanel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elementBackgroundColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradient = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst elementBackgroundUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradientUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst hasElement = () =>\n\t\t\t!! (\n\t\t\t\telementTextUserColor ||\n\t\t\t\telementBackgroundUserColor ||\n\t\t\t\telementGradientUserColor\n\t\t\t);\n\t\tconst resetElement = () => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tundefined\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tnewValue.elements[ name ].color.text = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\n\t\tconst setElementTextColor = ( newTextColor ) => {\n\t\t\tonChange(\n\t\t\t\tsetImmutably(\n\t\t\t\t\tvalue,\n\t\t\t\t\t[ 'elements', name, 'color', 'text' ],\n\t\t\t\t\tencodeColorValue( newTextColor )\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tconst setElementBackgroundColor = ( newBackgroundColor ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tencodeColorValue( newBackgroundColor )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst setElementGradient = ( newGradient ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'gradient' ],\n\t\t\t\tencodeGradientValue( newGradient )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.background = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst supportsTextColor = true;\n\t\t// Background color is not supported for `caption`\n\t\t// as there isn't yet a way to set padding for the element.\n\t\tconst supportsBackground = name !== 'caption';\n\n\t\titems.push( {\n\t\t\tkey: name,\n\t\t\tlabel,\n\t\t\thasValue: hasElement,\n\t\t\tresetValue: resetElement,\n\t\t\tisShownByDefault: defaultControls[ name ],\n\t\t\tindicators:\n\t\t\t\tsupportsTextColor && supportsBackground\n\t\t\t\t\t? [\n\t\t\t\t\t\t\telementTextColor,\n\t\t\t\t\t\t\telementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ]\n\t\t\t\t\t: [\n\t\t\t\t\t\t\tsupportsTextColor\n\t\t\t\t\t\t\t\t? elementTextColor\n\t\t\t\t\t\t\t\t: elementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsTextColor && {\n\t\t\t\t\t\tkey: 'text',\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tinheritedValue: elementTextColor,\n\t\t\t\t\t\tsetValue: setElementTextColor,\n\t\t\t\t\t\tuserValue: elementTextUserColor,\n\t\t\t\t\t},\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'background',\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tinheritedValue: elementBackgroundColor,\n\t\t\t\t\t\tsetValue: setElementBackgroundColor,\n\t\t\t\t\t\tuserValue: elementBackgroundUserColor,\n\t\t\t\t\t},\n\t\t\t\thasGradientColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\t\tinheritedValue: elementGradient,\n\t\t\t\t\t\tsetValue: setElementGradient,\n\t\t\t\t\t\tuserValue: elementGradientUserColor,\n\t\t\t\t\t\tisGradient: true,\n\t\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ items.map( ( item ) => {\n\t\t\t\tconst { key, ...restItem } = item;\n\t\t\t\treturn (\n\t\t\t\t\t<ColorPanelDropdown\n\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t{ ...restItem }\n\t\t\t\t\t\tcolorGradientControlSettings={ {\n\t\t\t\t\t\t\tcolors,\n\t\t\t\t\t\t\tdisableCustomColors: ! areCustomSolidsEnabled,\n\t\t\t\t\t\t\tgradients,\n\t\t\t\t\t\t\tdisableCustomGradients: ! areCustomGradientsEnabled,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ children }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -416,7 +416,7 @@ function DimensionsPanel({
416
416
  'tools-panel-item-spacing': showSpacingPresetsControl
417
417
  }),
418
418
  panelId: panelId,
419
- children: [!showSpacingPresetsControl && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalBoxControl, {
419
+ children: [!showSpacingPresetsControl && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.BoxControl, {
420
420
  __next40pxDefaultSize: true,
421
421
  values: paddingValues,
422
422
  onChange: setPaddingValues,
@@ -446,7 +446,7 @@ function DimensionsPanel({
446
446
  'tools-panel-item-spacing': showSpacingPresetsControl
447
447
  }),
448
448
  panelId: panelId,
449
- children: [!showSpacingPresetsControl && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalBoxControl, {
449
+ children: [!showSpacingPresetsControl && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.BoxControl, {
450
450
  __next40pxDefaultSize: true,
451
451
  values: marginValues,
452
452
  onChange: setMarginValues,
@@ -481,7 +481,7 @@ function DimensionsPanel({
481
481
  !showSpacingPresetsControl && !isAxialGap
482
482
  }),
483
483
  panelId: panelId,
484
- children: [!showSpacingPresetsControl && (isAxialGap ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalBoxControl, {
484
+ children: [!showSpacingPresetsControl && (isAxialGap ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.BoxControl, {
485
485
  __next40pxDefaultSize: true,
486
486
  label: (0, _i18n.__)('Block spacing'),
487
487
  min: 0,
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_components","_icons","_element","_utils","_spacingSizesControl","_heightControl","_childLayoutControl","_aspectRatioTool","_utils2","_object","_jsxRuntime","AXIAL_SIDES","useHasDimensionsPanel","settings","hasContentSize","useHasContentSize","hasWideSize","useHasWideSize","hasPadding","useHasPadding","hasMargin","useHasMargin","hasGap","useHasGap","hasMinHeight","useHasMinHeight","hasAspectRatio","useHasAspectRatio","hasChildLayout","useHasChildLayout","Platform","OS","layout","contentSize","wideSize","spacing","padding","margin","blockGap","dimensions","minHeight","aspectRatio","_settings$parentLayou","type","parentLayoutType","default","defaultParentLayoutType","allowSizingOnChildren","parentLayout","support","useHasSpacingPresets","defaultSpacingSizes","spacingSizes","length","theme","custom","filterValuesBySides","values","sides","filteredValues","forEach","side","top","bottom","left","right","splitStyleValue","value","splitGapValue","DimensionsToolsPanel","resetAllFilter","onChange","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","__","DEFAULT_CONTROLS","childLayout","DimensionsPanel","as","Wrapper","inheritedValue","defaultControls","onVisualize","includeLayoutControls","_defaultControls$cont","_defaultControls$wide","_defaultControls$padd","_defaultControls$marg","_defaultControls$bloc","_defaultControls$chil","_defaultControls$minH","_defaultControls$aspe","decodeValue","rawValue","Object","keys","reduce","acc","key","getValueFromVariable","showSpacingPresetsControl","units","useCustomUnits","availableUnits","minimumMargin","Infinity","minMarginValue","setMinMarginValue","useState","showContentSizeControl","contentSizeValue","setContentSizeValue","newValue","setImmutably","undefined","hasUserSetContentSizeValue","resetContentSizeValue","showWideSizeControl","wideSizeValue","setWideSizeValue","hasUserSetWideSizeValue","resetWideSizeValue","showPaddingControl","rawPadding","paddingValues","paddingSides","Array","isArray","isAxialPadding","some","includes","setPaddingValues","newPaddingValues","hasPaddingValue","resetPaddingValue","onMouseOverPadding","showMarginControl","rawMargin","marginValues","marginSides","isAxialMargin","setMarginValues","newMarginValues","hasMarginValue","resetMarginValue","onMouseOverMargin","showGapControl","gapValue","gapValues","gapSides","isAxialGap","setGapValue","newGapValue","setGapValues","nextBoxGapValue","hasOwnProperty","resetGapValue","hasGapValue","showMinHeightControl","minHeightValue","setMinHeightValue","tempValue","resetMinHeightValue","hasMinHeightValue","showAspectRatioControl","aspectRatioValue","setAspectRatioValue","hasAspectRatioValue","showChildLayoutControl","setChildLayout","newChildLayout","useCallback","previousValue","cleanEmptyObject","selfStretch","flexSize","columnStart","rowStart","columnSpan","rowSpan","onMouseLeaveControls","inputProps","min","onDragStart","onDragEnd","jsxs","className","__experimentalToolsPanelItem","hasValue","onDeselect","isShownByDefault","__experimentalUnitControl","__next40pxDefaultSize","labelPosition","nextContentSize","prefix","__experimentalInputControlPrefixWrapper","variant","Icon","icon","alignNone","nextWideSize","stretchWide","clsx","__experimentalBoxControl","allowReset","splitOnAxis","onMouseOver","onMouseOut","minimumCustomValue","showSideInLabel"],"sources":["@wordpress/block-editor/src/components/global-styles/dimensions-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\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\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n} from '@wordpress/components';\nimport { Icon, alignNone, stretchWide } from '@wordpress/icons';\nimport { useCallback, useState, Platform } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport SpacingSizesControl from '../spacing-sizes-control';\nimport HeightControl from '../height-control';\nimport ChildLayoutControl from '../child-layout-control';\nimport AspectRatioTool from '../dimensions-tool/aspect-ratio-tool';\nimport { cleanEmptyObject } from '../../hooks/utils';\nimport { setImmutably } from '../../utils/object';\n\nconst AXIAL_SIDES = [ 'horizontal', 'vertical' ];\n\nexport function useHasDimensionsPanel( settings ) {\n\tconst hasContentSize = useHasContentSize( settings );\n\tconst hasWideSize = useHasWideSize( settings );\n\tconst hasPadding = useHasPadding( settings );\n\tconst hasMargin = useHasMargin( settings );\n\tconst hasGap = useHasGap( settings );\n\tconst hasMinHeight = useHasMinHeight( settings );\n\tconst hasAspectRatio = useHasAspectRatio( settings );\n\tconst hasChildLayout = useHasChildLayout( settings );\n\n\treturn (\n\t\tPlatform.OS === 'web' &&\n\t\t( hasContentSize ||\n\t\t\thasWideSize ||\n\t\t\thasPadding ||\n\t\t\thasMargin ||\n\t\t\thasGap ||\n\t\t\thasMinHeight ||\n\t\t\thasAspectRatio ||\n\t\t\thasChildLayout )\n\t);\n}\n\nfunction useHasContentSize( settings ) {\n\treturn settings?.layout?.contentSize;\n}\n\nfunction useHasWideSize( settings ) {\n\treturn settings?.layout?.wideSize;\n}\n\nfunction useHasPadding( settings ) {\n\treturn settings?.spacing?.padding;\n}\n\nfunction useHasMargin( settings ) {\n\treturn settings?.spacing?.margin;\n}\n\nfunction useHasGap( settings ) {\n\treturn settings?.spacing?.blockGap;\n}\n\nfunction useHasMinHeight( settings ) {\n\treturn settings?.dimensions?.minHeight;\n}\n\nfunction useHasAspectRatio( settings ) {\n\treturn settings?.dimensions?.aspectRatio;\n}\n\nfunction useHasChildLayout( settings ) {\n\tconst {\n\t\ttype: parentLayoutType = 'default',\n\t\tdefault: { type: defaultParentLayoutType = 'default' } = {},\n\t\tallowSizingOnChildren = false,\n\t} = settings?.parentLayout ?? {};\n\n\tconst support =\n\t\t( defaultParentLayoutType === 'flex' ||\n\t\t\tparentLayoutType === 'flex' ||\n\t\t\tdefaultParentLayoutType === 'grid' ||\n\t\t\tparentLayoutType === 'grid' ) &&\n\t\tallowSizingOnChildren;\n\treturn !! settings?.layout && support;\n}\n\nfunction useHasSpacingPresets( settings ) {\n\tconst { defaultSpacingSizes, spacingSizes } = settings?.spacing || {};\n\treturn (\n\t\t( defaultSpacingSizes !== false &&\n\t\t\tspacingSizes?.default?.length > 0 ) ||\n\t\tspacingSizes?.theme?.length > 0 ||\n\t\tspacingSizes?.custom?.length > 0\n\t);\n}\n\nfunction filterValuesBySides( values, sides ) {\n\t// If no custom side configuration, all sides are opted into by default.\n\t// Without any values, we have nothing to filter either.\n\tif ( ! sides || ! values ) {\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\nfunction splitGapValue( value ) {\n\t// Check for shorthand value (a string value).\n\tif ( value && typeof value === 'string' ) {\n\t\t// If the value is a string, treat it as a single side (top) for the spacing controls.\n\t\treturn {\n\t\t\ttop: value,\n\t\t};\n\t}\n\n\tif ( value ) {\n\t\treturn {\n\t\t\t...value,\n\t\t\tright: value?.left,\n\t\t\tbottom: value?.top,\n\t\t};\n\t}\n\n\treturn value;\n}\n\nfunction DimensionsToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tcontentSize: true,\n\twideSize: true,\n\tpadding: true,\n\tmargin: true,\n\tblockGap: true,\n\tminHeight: true,\n\taspectRatio: true,\n\tchildLayout: true,\n};\n\nexport default function DimensionsPanel( {\n\tas: Wrapper = DimensionsToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tonVisualize = () => {},\n\t// Special case because the layout controls are not part of the dimensions panel\n\t// in global styles but not in block inspector.\n\tincludeLayoutControls = false,\n} ) {\n\tconst { dimensions, spacing } = settings;\n\n\tconst decodeValue = ( rawValue ) => {\n\t\tif ( rawValue && typeof rawValue === 'object' ) {\n\t\t\treturn Object.keys( rawValue ).reduce( ( acc, key ) => {\n\t\t\t\tacc[ key ] = getValueFromVariable(\n\t\t\t\t\t{ settings: { dimensions, spacing } },\n\t\t\t\t\t'',\n\t\t\t\t\trawValue[ key ]\n\t\t\t\t);\n\t\t\t\treturn acc;\n\t\t\t}, {} );\n\t\t}\n\t\treturn getValueFromVariable(\n\t\t\t{ settings: { dimensions, spacing } },\n\t\t\t'',\n\t\t\trawValue\n\t\t);\n\t};\n\n\tconst showSpacingPresetsControl = useHasSpacingPresets( settings );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: settings?.spacing?.units || [\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\t//Minimum Margin Value\n\tconst minimumMargin = -Infinity;\n\tconst [ minMarginValue, setMinMarginValue ] = useState( minimumMargin );\n\n\t// Content Width\n\tconst showContentSizeControl =\n\t\tuseHasContentSize( settings ) && includeLayoutControls;\n\tconst contentSizeValue = decodeValue( inheritedValue?.layout?.contentSize );\n\tconst setContentSizeValue = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'layout', 'contentSize' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasUserSetContentSizeValue = () => !! value?.layout?.contentSize;\n\tconst resetContentSizeValue = () => setContentSizeValue( undefined );\n\n\t// Wide Width\n\tconst showWideSizeControl =\n\t\tuseHasWideSize( settings ) && includeLayoutControls;\n\tconst wideSizeValue = decodeValue( inheritedValue?.layout?.wideSize );\n\tconst setWideSizeValue = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'layout', 'wideSize' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasUserSetWideSizeValue = () => !! value?.layout?.wideSize;\n\tconst resetWideSizeValue = () => setWideSizeValue( undefined );\n\n\t// Padding\n\tconst showPaddingControl = useHasPadding( settings );\n\tconst rawPadding = decodeValue( inheritedValue?.spacing?.padding );\n\tconst paddingValues = splitStyleValue( rawPadding );\n\tconst paddingSides = Array.isArray( settings?.spacing?.padding )\n\t\t? settings?.spacing?.padding\n\t\t: settings?.spacing?.padding?.sides;\n\tconst isAxialPadding =\n\t\tpaddingSides &&\n\t\tpaddingSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\tconst setPaddingValues = ( newPaddingValues ) => {\n\t\tconst padding = filterValuesBySides( newPaddingValues, paddingSides );\n\t\tonChange( setImmutably( value, [ 'spacing', 'padding' ], padding ) );\n\t};\n\tconst hasPaddingValue = () =>\n\t\t!! value?.spacing?.padding &&\n\t\tObject.keys( value?.spacing?.padding ).length;\n\tconst resetPaddingValue = () => setPaddingValues( undefined );\n\tconst onMouseOverPadding = () => onVisualize( 'padding' );\n\n\t// Margin\n\tconst showMarginControl = useHasMargin( settings );\n\tconst rawMargin = decodeValue( inheritedValue?.spacing?.margin );\n\tconst marginValues = splitStyleValue( rawMargin );\n\tconst marginSides = Array.isArray( settings?.spacing?.margin )\n\t\t? settings?.spacing?.margin\n\t\t: settings?.spacing?.margin?.sides;\n\tconst isAxialMargin =\n\t\tmarginSides &&\n\t\tmarginSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\tconst setMarginValues = ( newMarginValues ) => {\n\t\tconst margin = filterValuesBySides( newMarginValues, marginSides );\n\t\tonChange( setImmutably( value, [ 'spacing', 'margin' ], margin ) );\n\t};\n\tconst hasMarginValue = () =>\n\t\t!! value?.spacing?.margin &&\n\t\tObject.keys( value?.spacing?.margin ).length;\n\tconst resetMarginValue = () => setMarginValues( undefined );\n\tconst onMouseOverMargin = () => onVisualize( 'margin' );\n\n\t// Block Gap\n\tconst showGapControl = useHasGap( settings );\n\tconst gapValue = decodeValue( inheritedValue?.spacing?.blockGap );\n\tconst gapValues = splitGapValue( gapValue );\n\tconst gapSides = Array.isArray( settings?.spacing?.blockGap )\n\t\t? settings?.spacing?.blockGap\n\t\t: settings?.spacing?.blockGap?.sides;\n\tconst isAxialGap =\n\t\tgapSides && gapSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\tconst setGapValue = ( newGapValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably( value, [ 'spacing', 'blockGap' ], newGapValue )\n\t\t);\n\t};\n\tconst setGapValues = ( nextBoxGapValue ) => {\n\t\tif ( ! nextBoxGapValue ) {\n\t\t\tsetGapValue( null );\n\t\t}\n\t\t// If axial gap is not enabled, treat the 'top' value as the shorthand gap value.\n\t\tif ( ! isAxialGap && nextBoxGapValue?.hasOwnProperty( 'top' ) ) {\n\t\t\tsetGapValue( nextBoxGapValue.top );\n\t\t} else {\n\t\t\tsetGapValue( {\n\t\t\t\ttop: nextBoxGapValue?.top,\n\t\t\t\tleft: nextBoxGapValue?.left,\n\t\t\t} );\n\t\t}\n\t};\n\tconst resetGapValue = () => setGapValue( undefined );\n\tconst hasGapValue = () => !! value?.spacing?.blockGap;\n\n\t// Min Height\n\tconst showMinHeightControl = useHasMinHeight( settings );\n\tconst minHeightValue = decodeValue( inheritedValue?.dimensions?.minHeight );\n\tconst setMinHeightValue = ( newValue ) => {\n\t\tconst tempValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'dimensions', 'minHeight' ],\n\t\t\tnewValue\n\t\t);\n\t\t// Apply min-height, while removing any applied aspect ratio.\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\ttempValue,\n\t\t\t\t[ 'dimensions', 'aspectRatio' ],\n\t\t\t\tundefined\n\t\t\t)\n\t\t);\n\t};\n\tconst resetMinHeightValue = () => {\n\t\tsetMinHeightValue( undefined );\n\t};\n\tconst hasMinHeightValue = () => !! value?.dimensions?.minHeight;\n\n\t// Aspect Ratio\n\tconst showAspectRatioControl = useHasAspectRatio( settings );\n\tconst aspectRatioValue = decodeValue(\n\t\tinheritedValue?.dimensions?.aspectRatio\n\t);\n\tconst setAspectRatioValue = ( newValue ) => {\n\t\tconst tempValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'dimensions', 'aspectRatio' ],\n\t\t\tnewValue\n\t\t);\n\t\t// Apply aspect-ratio, while removing any applied min-height.\n\t\tonChange(\n\t\t\tsetImmutably( tempValue, [ 'dimensions', 'minHeight' ], undefined )\n\t\t);\n\t};\n\tconst hasAspectRatioValue = () => !! value?.dimensions?.aspectRatio;\n\n\t// Child Layout\n\tconst showChildLayoutControl = useHasChildLayout( settings );\n\tconst childLayout = inheritedValue?.layout;\n\n\tconst setChildLayout = ( newChildLayout ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\tlayout: {\n\t\t\t\t...newChildLayout,\n\t\t\t},\n\t\t} );\n\t};\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tlayout: cleanEmptyObject( {\n\t\t\t\t...previousValue?.layout,\n\t\t\t\tcontentSize: undefined,\n\t\t\t\twideSize: undefined,\n\t\t\t\tselfStretch: undefined,\n\t\t\t\tflexSize: undefined,\n\t\t\t\tcolumnStart: undefined,\n\t\t\t\trowStart: undefined,\n\t\t\t\tcolumnSpan: undefined,\n\t\t\t\trowSpan: undefined,\n\t\t\t} ),\n\t\t\tspacing: {\n\t\t\t\t...previousValue?.spacing,\n\t\t\t\tpadding: undefined,\n\t\t\t\tmargin: undefined,\n\t\t\t\tblockGap: undefined,\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\t...previousValue?.dimensions,\n\t\t\t\tminHeight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst onMouseLeaveControls = () => onVisualize( false );\n\n\tconst inputProps = {\n\t\tmin: minMarginValue,\n\t\tonDragStart: () => {\n\t\t\t//Reset to 0 in case the value was negative.\n\t\t\tsetMinMarginValue( 0 );\n\t\t},\n\t\tonDragEnd: () => {\n\t\t\tsetMinMarginValue( minimumMargin );\n\t\t},\n\t};\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ ( showContentSizeControl || showWideSizeControl ) && (\n\t\t\t\t<span className=\"span-columns\">\n\t\t\t\t\t{ __( 'Set the width of the main content area.' ) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t\t{ showContentSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Content width' ) }\n\t\t\t\t\thasValue={ hasUserSetContentSizeValue }\n\t\t\t\t\tonDeselect={ resetContentSizeValue }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.contentSize ??\n\t\t\t\t\t\tDEFAULT_CONTROLS.contentSize\n\t\t\t\t\t}\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Content width' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\tvalue={ contentSizeValue || '' }\n\t\t\t\t\t\tonChange={ ( nextContentSize ) => {\n\t\t\t\t\t\t\tsetContentSizeValue( nextContentSize );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tprefix={\n\t\t\t\t\t\t\t<InputControlPrefixWrapper variant=\"icon\">\n\t\t\t\t\t\t\t\t<Icon icon={ alignNone } />\n\t\t\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showWideSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Wide width' ) }\n\t\t\t\t\thasValue={ hasUserSetWideSizeValue }\n\t\t\t\t\tonDeselect={ resetWideSizeValue }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.wideSize ?? DEFAULT_CONTROLS.wideSize\n\t\t\t\t\t}\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Wide width' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\tvalue={ wideSizeValue || '' }\n\t\t\t\t\t\tonChange={ ( nextWideSize ) => {\n\t\t\t\t\t\t\tsetWideSizeValue( nextWideSize );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tprefix={\n\t\t\t\t\t\t\t<InputControlPrefixWrapper variant=\"icon\">\n\t\t\t\t\t\t\t\t<Icon icon={ stretchWide } />\n\t\t\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\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={\n\t\t\t\t\t\tdefaultControls.padding ?? DEFAULT_CONTROLS.padding\n\t\t\t\t\t}\n\t\t\t\t\tclassName={ clsx( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t} ) }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl && (\n\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialPadding }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverPadding }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverPadding }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\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={\n\t\t\t\t\t\tdefaultControls.margin ?? DEFAULT_CONTROLS.margin\n\t\t\t\t\t}\n\t\t\t\t\tclassName={ clsx( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t} ) }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl && (\n\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\t\tinputProps={ inputProps }\n\t\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialMargin }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverMargin }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\t\tminimumCustomValue={ -Infinity }\n\t\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverMargin }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\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={\n\t\t\t\t\t\tdefaultControls.blockGap ?? DEFAULT_CONTROLS.blockGap\n\t\t\t\t\t}\n\t\t\t\t\tclassName={ clsx( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t\t'single-column':\n\t\t\t\t\t\t\t// If UnitControl is used, should be single-column.\n\t\t\t\t\t\t\t! showSpacingPresetsControl && ! isAxialGap,\n\t\t\t\t\t} ) }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl &&\n\t\t\t\t\t\t( isAxialGap ? (\n\t\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\tonChange={ setGapValues }\n\t\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\t\tsides={ gapSides }\n\t\t\t\t\t\t\t\tvalues={ gapValues }\n\t\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\t\tsplitOnAxis={ isAxialGap }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\tonChange={ setGapValue }\n\t\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\t\tvalue={ gapValue }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tonChange={ setGapValues }\n\t\t\t\t\t\t\tshowSideInLabel={ false }\n\t\t\t\t\t\t\tsides={ isAxialGap ? gapSides : [ 'top' ] } // Use 'top' as the shorthand property in non-axial configurations.\n\t\t\t\t\t\t\tvalues={ gapValues }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showChildLayoutControl && (\n\t\t\t\t<ChildLayoutControl\n\t\t\t\t\tvalue={ childLayout }\n\t\t\t\t\tonChange={ setChildLayout }\n\t\t\t\t\tparentLayout={ settings?.parentLayout }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.childLayout ??\n\t\t\t\t\t\tDEFAULT_CONTROLS.childLayout\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showMinHeightControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasMinHeightValue }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ resetMinHeightValue }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.minHeight ?? DEFAULT_CONTROLS.minHeight\n\t\t\t\t\t}\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<HeightControl\n\t\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\t\tvalue={ minHeightValue }\n\t\t\t\t\t\tonChange={ setMinHeightValue }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showAspectRatioControl && (\n\t\t\t\t<AspectRatioTool\n\t\t\t\t\thasValue={ hasAspectRatioValue }\n\t\t\t\t\tvalue={ aspectRatioValue }\n\t\t\t\t\tonChange={ setAspectRatioValue }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.aspectRatio ??\n\t\t\t\t\t\tDEFAULT_CONTROLS.aspectRatio\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_components","_icons","_element","_utils","_spacingSizesControl","_heightControl","_childLayoutControl","_aspectRatioTool","_utils2","_object","_jsxRuntime","AXIAL_SIDES","useHasDimensionsPanel","settings","hasContentSize","useHasContentSize","hasWideSize","useHasWideSize","hasPadding","useHasPadding","hasMargin","useHasMargin","hasGap","useHasGap","hasMinHeight","useHasMinHeight","hasAspectRatio","useHasAspectRatio","hasChildLayout","useHasChildLayout","Platform","OS","layout","contentSize","wideSize","spacing","padding","margin","blockGap","dimensions","minHeight","aspectRatio","_settings$parentLayou","type","parentLayoutType","default","defaultParentLayoutType","allowSizingOnChildren","parentLayout","support","useHasSpacingPresets","defaultSpacingSizes","spacingSizes","length","theme","custom","filterValuesBySides","values","sides","filteredValues","forEach","side","top","bottom","left","right","splitStyleValue","value","splitGapValue","DimensionsToolsPanel","resetAllFilter","onChange","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","__","DEFAULT_CONTROLS","childLayout","DimensionsPanel","as","Wrapper","inheritedValue","defaultControls","onVisualize","includeLayoutControls","_defaultControls$cont","_defaultControls$wide","_defaultControls$padd","_defaultControls$marg","_defaultControls$bloc","_defaultControls$chil","_defaultControls$minH","_defaultControls$aspe","decodeValue","rawValue","Object","keys","reduce","acc","key","getValueFromVariable","showSpacingPresetsControl","units","useCustomUnits","availableUnits","minimumMargin","Infinity","minMarginValue","setMinMarginValue","useState","showContentSizeControl","contentSizeValue","setContentSizeValue","newValue","setImmutably","undefined","hasUserSetContentSizeValue","resetContentSizeValue","showWideSizeControl","wideSizeValue","setWideSizeValue","hasUserSetWideSizeValue","resetWideSizeValue","showPaddingControl","rawPadding","paddingValues","paddingSides","Array","isArray","isAxialPadding","some","includes","setPaddingValues","newPaddingValues","hasPaddingValue","resetPaddingValue","onMouseOverPadding","showMarginControl","rawMargin","marginValues","marginSides","isAxialMargin","setMarginValues","newMarginValues","hasMarginValue","resetMarginValue","onMouseOverMargin","showGapControl","gapValue","gapValues","gapSides","isAxialGap","setGapValue","newGapValue","setGapValues","nextBoxGapValue","hasOwnProperty","resetGapValue","hasGapValue","showMinHeightControl","minHeightValue","setMinHeightValue","tempValue","resetMinHeightValue","hasMinHeightValue","showAspectRatioControl","aspectRatioValue","setAspectRatioValue","hasAspectRatioValue","showChildLayoutControl","setChildLayout","newChildLayout","useCallback","previousValue","cleanEmptyObject","selfStretch","flexSize","columnStart","rowStart","columnSpan","rowSpan","onMouseLeaveControls","inputProps","min","onDragStart","onDragEnd","jsxs","className","__experimentalToolsPanelItem","hasValue","onDeselect","isShownByDefault","__experimentalUnitControl","__next40pxDefaultSize","labelPosition","nextContentSize","prefix","__experimentalInputControlPrefixWrapper","variant","Icon","icon","alignNone","nextWideSize","stretchWide","clsx","BoxControl","allowReset","splitOnAxis","onMouseOver","onMouseOut","minimumCustomValue","showSideInLabel"],"sources":["@wordpress/block-editor/src/components/global-styles/dimensions-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tBoxControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n} from '@wordpress/components';\nimport { Icon, alignNone, stretchWide } from '@wordpress/icons';\nimport { useCallback, useState, Platform } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport SpacingSizesControl from '../spacing-sizes-control';\nimport HeightControl from '../height-control';\nimport ChildLayoutControl from '../child-layout-control';\nimport AspectRatioTool from '../dimensions-tool/aspect-ratio-tool';\nimport { cleanEmptyObject } from '../../hooks/utils';\nimport { setImmutably } from '../../utils/object';\n\nconst AXIAL_SIDES = [ 'horizontal', 'vertical' ];\n\nexport function useHasDimensionsPanel( settings ) {\n\tconst hasContentSize = useHasContentSize( settings );\n\tconst hasWideSize = useHasWideSize( settings );\n\tconst hasPadding = useHasPadding( settings );\n\tconst hasMargin = useHasMargin( settings );\n\tconst hasGap = useHasGap( settings );\n\tconst hasMinHeight = useHasMinHeight( settings );\n\tconst hasAspectRatio = useHasAspectRatio( settings );\n\tconst hasChildLayout = useHasChildLayout( settings );\n\n\treturn (\n\t\tPlatform.OS === 'web' &&\n\t\t( hasContentSize ||\n\t\t\thasWideSize ||\n\t\t\thasPadding ||\n\t\t\thasMargin ||\n\t\t\thasGap ||\n\t\t\thasMinHeight ||\n\t\t\thasAspectRatio ||\n\t\t\thasChildLayout )\n\t);\n}\n\nfunction useHasContentSize( settings ) {\n\treturn settings?.layout?.contentSize;\n}\n\nfunction useHasWideSize( settings ) {\n\treturn settings?.layout?.wideSize;\n}\n\nfunction useHasPadding( settings ) {\n\treturn settings?.spacing?.padding;\n}\n\nfunction useHasMargin( settings ) {\n\treturn settings?.spacing?.margin;\n}\n\nfunction useHasGap( settings ) {\n\treturn settings?.spacing?.blockGap;\n}\n\nfunction useHasMinHeight( settings ) {\n\treturn settings?.dimensions?.minHeight;\n}\n\nfunction useHasAspectRatio( settings ) {\n\treturn settings?.dimensions?.aspectRatio;\n}\n\nfunction useHasChildLayout( settings ) {\n\tconst {\n\t\ttype: parentLayoutType = 'default',\n\t\tdefault: { type: defaultParentLayoutType = 'default' } = {},\n\t\tallowSizingOnChildren = false,\n\t} = settings?.parentLayout ?? {};\n\n\tconst support =\n\t\t( defaultParentLayoutType === 'flex' ||\n\t\t\tparentLayoutType === 'flex' ||\n\t\t\tdefaultParentLayoutType === 'grid' ||\n\t\t\tparentLayoutType === 'grid' ) &&\n\t\tallowSizingOnChildren;\n\treturn !! settings?.layout && support;\n}\n\nfunction useHasSpacingPresets( settings ) {\n\tconst { defaultSpacingSizes, spacingSizes } = settings?.spacing || {};\n\treturn (\n\t\t( defaultSpacingSizes !== false &&\n\t\t\tspacingSizes?.default?.length > 0 ) ||\n\t\tspacingSizes?.theme?.length > 0 ||\n\t\tspacingSizes?.custom?.length > 0\n\t);\n}\n\nfunction filterValuesBySides( values, sides ) {\n\t// If no custom side configuration, all sides are opted into by default.\n\t// Without any values, we have nothing to filter either.\n\tif ( ! sides || ! values ) {\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\nfunction splitGapValue( value ) {\n\t// Check for shorthand value (a string value).\n\tif ( value && typeof value === 'string' ) {\n\t\t// If the value is a string, treat it as a single side (top) for the spacing controls.\n\t\treturn {\n\t\t\ttop: value,\n\t\t};\n\t}\n\n\tif ( value ) {\n\t\treturn {\n\t\t\t...value,\n\t\t\tright: value?.left,\n\t\t\tbottom: value?.top,\n\t\t};\n\t}\n\n\treturn value;\n}\n\nfunction DimensionsToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tcontentSize: true,\n\twideSize: true,\n\tpadding: true,\n\tmargin: true,\n\tblockGap: true,\n\tminHeight: true,\n\taspectRatio: true,\n\tchildLayout: true,\n};\n\nexport default function DimensionsPanel( {\n\tas: Wrapper = DimensionsToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tonVisualize = () => {},\n\t// Special case because the layout controls are not part of the dimensions panel\n\t// in global styles but not in block inspector.\n\tincludeLayoutControls = false,\n} ) {\n\tconst { dimensions, spacing } = settings;\n\n\tconst decodeValue = ( rawValue ) => {\n\t\tif ( rawValue && typeof rawValue === 'object' ) {\n\t\t\treturn Object.keys( rawValue ).reduce( ( acc, key ) => {\n\t\t\t\tacc[ key ] = getValueFromVariable(\n\t\t\t\t\t{ settings: { dimensions, spacing } },\n\t\t\t\t\t'',\n\t\t\t\t\trawValue[ key ]\n\t\t\t\t);\n\t\t\t\treturn acc;\n\t\t\t}, {} );\n\t\t}\n\t\treturn getValueFromVariable(\n\t\t\t{ settings: { dimensions, spacing } },\n\t\t\t'',\n\t\t\trawValue\n\t\t);\n\t};\n\n\tconst showSpacingPresetsControl = useHasSpacingPresets( settings );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: settings?.spacing?.units || [\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\t//Minimum Margin Value\n\tconst minimumMargin = -Infinity;\n\tconst [ minMarginValue, setMinMarginValue ] = useState( minimumMargin );\n\n\t// Content Width\n\tconst showContentSizeControl =\n\t\tuseHasContentSize( settings ) && includeLayoutControls;\n\tconst contentSizeValue = decodeValue( inheritedValue?.layout?.contentSize );\n\tconst setContentSizeValue = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'layout', 'contentSize' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasUserSetContentSizeValue = () => !! value?.layout?.contentSize;\n\tconst resetContentSizeValue = () => setContentSizeValue( undefined );\n\n\t// Wide Width\n\tconst showWideSizeControl =\n\t\tuseHasWideSize( settings ) && includeLayoutControls;\n\tconst wideSizeValue = decodeValue( inheritedValue?.layout?.wideSize );\n\tconst setWideSizeValue = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'layout', 'wideSize' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasUserSetWideSizeValue = () => !! value?.layout?.wideSize;\n\tconst resetWideSizeValue = () => setWideSizeValue( undefined );\n\n\t// Padding\n\tconst showPaddingControl = useHasPadding( settings );\n\tconst rawPadding = decodeValue( inheritedValue?.spacing?.padding );\n\tconst paddingValues = splitStyleValue( rawPadding );\n\tconst paddingSides = Array.isArray( settings?.spacing?.padding )\n\t\t? settings?.spacing?.padding\n\t\t: settings?.spacing?.padding?.sides;\n\tconst isAxialPadding =\n\t\tpaddingSides &&\n\t\tpaddingSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\tconst setPaddingValues = ( newPaddingValues ) => {\n\t\tconst padding = filterValuesBySides( newPaddingValues, paddingSides );\n\t\tonChange( setImmutably( value, [ 'spacing', 'padding' ], padding ) );\n\t};\n\tconst hasPaddingValue = () =>\n\t\t!! value?.spacing?.padding &&\n\t\tObject.keys( value?.spacing?.padding ).length;\n\tconst resetPaddingValue = () => setPaddingValues( undefined );\n\tconst onMouseOverPadding = () => onVisualize( 'padding' );\n\n\t// Margin\n\tconst showMarginControl = useHasMargin( settings );\n\tconst rawMargin = decodeValue( inheritedValue?.spacing?.margin );\n\tconst marginValues = splitStyleValue( rawMargin );\n\tconst marginSides = Array.isArray( settings?.spacing?.margin )\n\t\t? settings?.spacing?.margin\n\t\t: settings?.spacing?.margin?.sides;\n\tconst isAxialMargin =\n\t\tmarginSides &&\n\t\tmarginSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\tconst setMarginValues = ( newMarginValues ) => {\n\t\tconst margin = filterValuesBySides( newMarginValues, marginSides );\n\t\tonChange( setImmutably( value, [ 'spacing', 'margin' ], margin ) );\n\t};\n\tconst hasMarginValue = () =>\n\t\t!! value?.spacing?.margin &&\n\t\tObject.keys( value?.spacing?.margin ).length;\n\tconst resetMarginValue = () => setMarginValues( undefined );\n\tconst onMouseOverMargin = () => onVisualize( 'margin' );\n\n\t// Block Gap\n\tconst showGapControl = useHasGap( settings );\n\tconst gapValue = decodeValue( inheritedValue?.spacing?.blockGap );\n\tconst gapValues = splitGapValue( gapValue );\n\tconst gapSides = Array.isArray( settings?.spacing?.blockGap )\n\t\t? settings?.spacing?.blockGap\n\t\t: settings?.spacing?.blockGap?.sides;\n\tconst isAxialGap =\n\t\tgapSides && gapSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\tconst setGapValue = ( newGapValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably( value, [ 'spacing', 'blockGap' ], newGapValue )\n\t\t);\n\t};\n\tconst setGapValues = ( nextBoxGapValue ) => {\n\t\tif ( ! nextBoxGapValue ) {\n\t\t\tsetGapValue( null );\n\t\t}\n\t\t// If axial gap is not enabled, treat the 'top' value as the shorthand gap value.\n\t\tif ( ! isAxialGap && nextBoxGapValue?.hasOwnProperty( 'top' ) ) {\n\t\t\tsetGapValue( nextBoxGapValue.top );\n\t\t} else {\n\t\t\tsetGapValue( {\n\t\t\t\ttop: nextBoxGapValue?.top,\n\t\t\t\tleft: nextBoxGapValue?.left,\n\t\t\t} );\n\t\t}\n\t};\n\tconst resetGapValue = () => setGapValue( undefined );\n\tconst hasGapValue = () => !! value?.spacing?.blockGap;\n\n\t// Min Height\n\tconst showMinHeightControl = useHasMinHeight( settings );\n\tconst minHeightValue = decodeValue( inheritedValue?.dimensions?.minHeight );\n\tconst setMinHeightValue = ( newValue ) => {\n\t\tconst tempValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'dimensions', 'minHeight' ],\n\t\t\tnewValue\n\t\t);\n\t\t// Apply min-height, while removing any applied aspect ratio.\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\ttempValue,\n\t\t\t\t[ 'dimensions', 'aspectRatio' ],\n\t\t\t\tundefined\n\t\t\t)\n\t\t);\n\t};\n\tconst resetMinHeightValue = () => {\n\t\tsetMinHeightValue( undefined );\n\t};\n\tconst hasMinHeightValue = () => !! value?.dimensions?.minHeight;\n\n\t// Aspect Ratio\n\tconst showAspectRatioControl = useHasAspectRatio( settings );\n\tconst aspectRatioValue = decodeValue(\n\t\tinheritedValue?.dimensions?.aspectRatio\n\t);\n\tconst setAspectRatioValue = ( newValue ) => {\n\t\tconst tempValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'dimensions', 'aspectRatio' ],\n\t\t\tnewValue\n\t\t);\n\t\t// Apply aspect-ratio, while removing any applied min-height.\n\t\tonChange(\n\t\t\tsetImmutably( tempValue, [ 'dimensions', 'minHeight' ], undefined )\n\t\t);\n\t};\n\tconst hasAspectRatioValue = () => !! value?.dimensions?.aspectRatio;\n\n\t// Child Layout\n\tconst showChildLayoutControl = useHasChildLayout( settings );\n\tconst childLayout = inheritedValue?.layout;\n\n\tconst setChildLayout = ( newChildLayout ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\tlayout: {\n\t\t\t\t...newChildLayout,\n\t\t\t},\n\t\t} );\n\t};\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tlayout: cleanEmptyObject( {\n\t\t\t\t...previousValue?.layout,\n\t\t\t\tcontentSize: undefined,\n\t\t\t\twideSize: undefined,\n\t\t\t\tselfStretch: undefined,\n\t\t\t\tflexSize: undefined,\n\t\t\t\tcolumnStart: undefined,\n\t\t\t\trowStart: undefined,\n\t\t\t\tcolumnSpan: undefined,\n\t\t\t\trowSpan: undefined,\n\t\t\t} ),\n\t\t\tspacing: {\n\t\t\t\t...previousValue?.spacing,\n\t\t\t\tpadding: undefined,\n\t\t\t\tmargin: undefined,\n\t\t\t\tblockGap: undefined,\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\t...previousValue?.dimensions,\n\t\t\t\tminHeight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst onMouseLeaveControls = () => onVisualize( false );\n\n\tconst inputProps = {\n\t\tmin: minMarginValue,\n\t\tonDragStart: () => {\n\t\t\t//Reset to 0 in case the value was negative.\n\t\t\tsetMinMarginValue( 0 );\n\t\t},\n\t\tonDragEnd: () => {\n\t\t\tsetMinMarginValue( minimumMargin );\n\t\t},\n\t};\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ ( showContentSizeControl || showWideSizeControl ) && (\n\t\t\t\t<span className=\"span-columns\">\n\t\t\t\t\t{ __( 'Set the width of the main content area.' ) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t\t{ showContentSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Content width' ) }\n\t\t\t\t\thasValue={ hasUserSetContentSizeValue }\n\t\t\t\t\tonDeselect={ resetContentSizeValue }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.contentSize ??\n\t\t\t\t\t\tDEFAULT_CONTROLS.contentSize\n\t\t\t\t\t}\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Content width' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\tvalue={ contentSizeValue || '' }\n\t\t\t\t\t\tonChange={ ( nextContentSize ) => {\n\t\t\t\t\t\t\tsetContentSizeValue( nextContentSize );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tprefix={\n\t\t\t\t\t\t\t<InputControlPrefixWrapper variant=\"icon\">\n\t\t\t\t\t\t\t\t<Icon icon={ alignNone } />\n\t\t\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showWideSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Wide width' ) }\n\t\t\t\t\thasValue={ hasUserSetWideSizeValue }\n\t\t\t\t\tonDeselect={ resetWideSizeValue }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.wideSize ?? DEFAULT_CONTROLS.wideSize\n\t\t\t\t\t}\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Wide width' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\tvalue={ wideSizeValue || '' }\n\t\t\t\t\t\tonChange={ ( nextWideSize ) => {\n\t\t\t\t\t\t\tsetWideSizeValue( nextWideSize );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tprefix={\n\t\t\t\t\t\t\t<InputControlPrefixWrapper variant=\"icon\">\n\t\t\t\t\t\t\t\t<Icon icon={ stretchWide } />\n\t\t\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\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={\n\t\t\t\t\t\tdefaultControls.padding ?? DEFAULT_CONTROLS.padding\n\t\t\t\t\t}\n\t\t\t\t\tclassName={ clsx( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t} ) }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl && (\n\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialPadding }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverPadding }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverPadding }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\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={\n\t\t\t\t\t\tdefaultControls.margin ?? DEFAULT_CONTROLS.margin\n\t\t\t\t\t}\n\t\t\t\t\tclassName={ clsx( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t} ) }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl && (\n\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\t\tinputProps={ inputProps }\n\t\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialMargin }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverMargin }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\t\tminimumCustomValue={ -Infinity }\n\t\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tonMouseOver={ onMouseOverMargin }\n\t\t\t\t\t\t\tonMouseOut={ onMouseLeaveControls }\n\t\t\t\t\t\t/>\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={\n\t\t\t\t\t\tdefaultControls.blockGap ?? DEFAULT_CONTROLS.blockGap\n\t\t\t\t\t}\n\t\t\t\t\tclassName={ clsx( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t\t'single-column':\n\t\t\t\t\t\t\t// If UnitControl is used, should be single-column.\n\t\t\t\t\t\t\t! showSpacingPresetsControl && ! isAxialGap,\n\t\t\t\t\t} ) }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl &&\n\t\t\t\t\t\t( isAxialGap ? (\n\t\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\tonChange={ setGapValues }\n\t\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\t\tsides={ gapSides }\n\t\t\t\t\t\t\t\tvalues={ gapValues }\n\t\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\t\tsplitOnAxis={ isAxialGap }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\tonChange={ setGapValue }\n\t\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\t\tvalue={ gapValue }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tonChange={ setGapValues }\n\t\t\t\t\t\t\tshowSideInLabel={ false }\n\t\t\t\t\t\t\tsides={ isAxialGap ? gapSides : [ 'top' ] } // Use 'top' as the shorthand property in non-axial configurations.\n\t\t\t\t\t\t\tvalues={ gapValues }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showChildLayoutControl && (\n\t\t\t\t<ChildLayoutControl\n\t\t\t\t\tvalue={ childLayout }\n\t\t\t\t\tonChange={ setChildLayout }\n\t\t\t\t\tparentLayout={ settings?.parentLayout }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.childLayout ??\n\t\t\t\t\t\tDEFAULT_CONTROLS.childLayout\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showMinHeightControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasMinHeightValue }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ resetMinHeightValue }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.minHeight ?? DEFAULT_CONTROLS.minHeight\n\t\t\t\t\t}\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<HeightControl\n\t\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\t\tvalue={ minHeightValue }\n\t\t\t\t\t\tonChange={ setMinHeightValue }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showAspectRatioControl && (\n\t\t\t\t<AspectRatioTool\n\t\t\t\t\thasValue={ hasAspectRatioValue }\n\t\t\t\t\tvalue={ aspectRatioValue }\n\t\t\t\t\tonChange={ setAspectRatioValue }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\tisShownByDefault={\n\t\t\t\t\t\tdefaultControls.aspectRatio ??\n\t\t\t\t\t\tDEFAULT_CONTROLS.aspectRatio\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -165,10 +165,8 @@ function FiltersPanel({
165
165
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalItemGroup, {
166
166
  isBordered: true,
167
167
  isSeparated: true,
168
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
169
- // TODO: Switch to `true` (40px size) if possible
170
- , {
171
- __next40pxDefaultSize: false,
168
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
169
+ __next40pxDefaultSize: true,
172
170
  ...toggleProps,
173
171
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LabeledColorIndicator, {
174
172
  indicator: duotone,