@wordpress/block-editor 12.1.0 → 12.3.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 (1853) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/autocompleters/block.js +11 -5
  3. package/build/autocompleters/block.js.map +1 -1
  4. package/build/components/alignment-control/ui.js +9 -11
  5. package/build/components/alignment-control/ui.js.map +1 -1
  6. package/build/components/autocomplete/index.js +3 -4
  7. package/build/components/autocomplete/index.js.map +1 -1
  8. package/build/components/block-actions/index.js +8 -12
  9. package/build/components/block-actions/index.js.map +1 -1
  10. package/build/components/block-alignment-control/ui.js +17 -21
  11. package/build/components/block-alignment-control/ui.js.map +1 -1
  12. package/build/components/block-alignment-control/ui.native.js +14 -17
  13. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  14. package/build/components/block-alignment-control/use-available-alignments.js +5 -10
  15. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  16. package/build/components/block-alignment-matrix-control/index.js +4 -6
  17. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  18. package/build/components/block-breadcrumb/index.js +9 -7
  19. package/build/components/block-breadcrumb/index.js.map +1 -1
  20. package/build/components/block-caption/index.native.js +30 -35
  21. package/build/components/block-caption/index.native.js.map +1 -1
  22. package/build/components/block-card/index.js +7 -9
  23. package/build/components/block-card/index.js.map +1 -1
  24. package/build/components/block-compare/block-view.js +8 -9
  25. package/build/components/block-compare/block-view.js.map +1 -1
  26. package/build/components/block-compare/index.js +7 -9
  27. package/build/components/block-compare/index.js.map +1 -1
  28. package/build/components/block-context/index.js +4 -5
  29. package/build/components/block-context/index.js.map +1 -1
  30. package/build/components/block-controls/fill.js +15 -22
  31. package/build/components/block-controls/fill.js.map +1 -1
  32. package/build/components/block-controls/hook.js +1 -3
  33. package/build/components/block-controls/hook.js.map +1 -1
  34. package/build/components/block-controls/slot.js +28 -18
  35. package/build/components/block-controls/slot.js.map +1 -1
  36. package/build/components/block-controls/slot.native.js +7 -17
  37. package/build/components/block-controls/slot.native.js.map +1 -1
  38. package/build/components/block-draggable/draggable-chip.js +5 -6
  39. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  40. package/build/components/block-draggable/draggable-chip.native.js +3 -4
  41. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  42. package/build/components/block-draggable/dropping-insertion-point.native.js +6 -7
  43. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  44. package/build/components/block-draggable/index.js +15 -16
  45. package/build/components/block-draggable/index.js.map +1 -1
  46. package/build/components/block-draggable/index.native.js +43 -58
  47. package/build/components/block-draggable/index.native.js.map +1 -1
  48. package/build/components/block-edit/edit.js +1 -4
  49. package/build/components/block-edit/edit.js.map +1 -1
  50. package/build/components/block-edit/edit.native.js +1 -4
  51. package/build/components/block-edit/edit.native.js.map +1 -1
  52. package/build/components/block-edit-visually-button/index.js +3 -4
  53. package/build/components/block-edit-visually-button/index.js.map +1 -1
  54. package/build/components/block-editing-mode/index.js +84 -0
  55. package/build/components/block-editing-mode/index.js.map +1 -0
  56. package/build/components/block-full-height-alignment-control/index.js +6 -7
  57. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  58. package/build/components/block-icon/index.js +7 -11
  59. package/build/components/block-icon/index.js.map +1 -1
  60. package/build/components/block-icon/index.native.js +9 -13
  61. package/build/components/block-icon/index.native.js.map +1 -1
  62. package/build/components/block-inspector/index.js +36 -46
  63. package/build/components/block-inspector/index.js.map +1 -1
  64. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  65. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  66. package/build/components/block-list/block-html.js +3 -4
  67. package/build/components/block-list/block-html.js.map +1 -1
  68. package/build/components/block-list/block-invalid-warning.js +3 -4
  69. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  70. package/build/components/block-list/block-invalid-warning.native.js +10 -15
  71. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  72. package/build/components/block-list/block-list-block-context.js +15 -0
  73. package/build/components/block-list/block-list-block-context.js.map +1 -0
  74. package/build/components/block-list/block-list-context.native.js +5 -11
  75. package/build/components/block-list/block-list-context.native.js.map +1 -1
  76. package/build/components/block-list/block-list-item-cell.native.js +5 -6
  77. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  78. package/build/components/block-list/block-list-item.native.js +17 -18
  79. package/build/components/block-list/block-list-item.native.js.map +1 -1
  80. package/build/components/block-list/block-outline.native.js +8 -9
  81. package/build/components/block-list/block-outline.native.js.map +1 -1
  82. package/build/components/block-list/block-selection-button.native.js +10 -12
  83. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  84. package/build/components/block-list/block.js +68 -83
  85. package/build/components/block-list/block.js.map +1 -1
  86. package/build/components/block-list/block.native.js +69 -90
  87. package/build/components/block-list/block.native.js.map +1 -1
  88. package/build/components/block-list/index.js +12 -15
  89. package/build/components/block-list/index.js.map +1 -1
  90. package/build/components/block-list/index.native.js +143 -153
  91. package/build/components/block-list/index.native.js.map +1 -1
  92. package/build/components/block-list/insertion-point.native.js +4 -5
  93. package/build/components/block-list/insertion-point.native.js.map +1 -1
  94. package/build/components/block-list/layout.js +6 -9
  95. package/build/components/block-list/layout.js.map +1 -1
  96. package/build/components/block-list/subdirectory-icon.js +10 -13
  97. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  98. package/build/components/block-list/use-block-props/index.js +17 -13
  99. package/build/components/block-list/use-block-props/index.js.map +1 -1
  100. package/build/components/block-list/use-block-props/index.native.js +1 -2
  101. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  102. package/build/components/block-list/use-block-props/use-block-custom-class-name.js +2 -2
  103. package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  104. package/build/components/block-list/use-block-props/use-block-default-class-name.js +1 -1
  105. package/build/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  106. package/build/components/block-list/use-in-between-inserter.js +8 -8
  107. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  108. package/build/components/block-list-appender/index.js +30 -15
  109. package/build/components/block-list-appender/index.js.map +1 -1
  110. package/build/components/block-list-appender/index.native.js +9 -11
  111. package/build/components/block-list-appender/index.native.js.map +1 -1
  112. package/build/components/block-lock/menu-item.js +3 -4
  113. package/build/components/block-lock/menu-item.js.map +1 -1
  114. package/build/components/block-lock/modal.js +6 -9
  115. package/build/components/block-lock/modal.js.map +1 -1
  116. package/build/components/block-lock/toolbar.js +4 -10
  117. package/build/components/block-lock/toolbar.js.map +1 -1
  118. package/build/components/block-mobile-toolbar/block-actions-menu.native.js +67 -70
  119. package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  120. package/build/components/block-mobile-toolbar/index.native.js +26 -34
  121. package/build/components/block-mobile-toolbar/index.native.js.map +1 -1
  122. package/build/components/block-mover/button.js +6 -7
  123. package/build/components/block-mover/button.js.map +1 -1
  124. package/build/components/block-mover/index.js +5 -8
  125. package/build/components/block-mover/index.js.map +1 -1
  126. package/build/components/block-mover/index.native.js +23 -46
  127. package/build/components/block-mover/index.native.js.map +1 -1
  128. package/build/components/block-mover/mover-description.native.js +7 -10
  129. package/build/components/block-mover/mover-description.native.js.map +1 -1
  130. package/build/components/block-navigation/dropdown.js +20 -25
  131. package/build/components/block-navigation/dropdown.js.map +1 -1
  132. package/build/components/block-parent-selector/index.js +2 -2
  133. package/build/components/block-parent-selector/index.js.map +1 -1
  134. package/build/components/block-pattern-setup/index.js +27 -31
  135. package/build/components/block-pattern-setup/index.js.map +1 -1
  136. package/build/components/block-pattern-setup/setup-toolbar.js +35 -42
  137. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  138. package/build/components/block-patterns-list/index.js +74 -81
  139. package/build/components/block-patterns-list/index.js.map +1 -1
  140. package/build/components/block-popover/drop-zone.js +4 -5
  141. package/build/components/block-popover/drop-zone.js.map +1 -1
  142. package/build/components/block-popover/inbetween.js +10 -15
  143. package/build/components/block-popover/inbetween.js.map +1 -1
  144. package/build/components/block-popover/index.js +14 -15
  145. package/build/components/block-popover/index.js.map +1 -1
  146. package/build/components/block-preview/auto.js +6 -8
  147. package/build/components/block-preview/auto.js.map +1 -1
  148. package/build/components/block-preview/index.js +15 -18
  149. package/build/components/block-preview/index.js.map +1 -1
  150. package/build/components/block-settings/button.native.js +7 -10
  151. package/build/components/block-settings/button.native.js.map +1 -1
  152. package/build/components/block-settings-menu/block-convert-button.js +5 -7
  153. package/build/components/block-settings-menu/block-convert-button.js.map +1 -1
  154. package/build/components/block-settings-menu/block-html-convert-button.js +10 -14
  155. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  156. package/build/components/block-settings-menu/block-mode-toggle.js +19 -25
  157. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  158. package/build/components/block-settings-menu/block-settings-dropdown.js +132 -111
  159. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  160. package/build/components/block-settings-menu/index.js +4 -5
  161. package/build/components/block-settings-menu/index.js.map +1 -1
  162. package/build/components/block-settings-menu-controls/index.js +14 -16
  163. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  164. package/build/components/block-styles/index.js +6 -7
  165. package/build/components/block-styles/index.js.map +1 -1
  166. package/build/components/block-styles/index.native.js +5 -7
  167. package/build/components/block-styles/index.native.js.map +1 -1
  168. package/build/components/block-styles/menu-items.js +4 -5
  169. package/build/components/block-styles/menu-items.js.map +1 -1
  170. package/build/components/block-styles/preview-panel.js +8 -12
  171. package/build/components/block-styles/preview-panel.js.map +1 -1
  172. package/build/components/block-styles/preview.native.js +6 -7
  173. package/build/components/block-styles/preview.native.js.map +1 -1
  174. package/build/components/block-styles/use-styles-for-block.js +7 -9
  175. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  176. package/build/components/block-styles/utils.js +4 -7
  177. package/build/components/block-styles/utils.js.map +1 -1
  178. package/build/components/block-switcher/block-styles-menu.js +4 -5
  179. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  180. package/build/components/block-switcher/block-transformations-menu.js +29 -26
  181. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  182. package/build/components/block-switcher/block-transformations-menu.native.js +9 -10
  183. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  184. package/build/components/block-switcher/block-variation-transformations.js +116 -0
  185. package/build/components/block-switcher/block-variation-transformations.js.map +1 -0
  186. package/build/components/block-switcher/index.js +64 -55
  187. package/build/components/block-switcher/index.js.map +1 -1
  188. package/build/components/block-switcher/pattern-transformations-menu.js +21 -25
  189. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  190. package/build/components/block-switcher/preview-block-popover.js +3 -4
  191. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  192. package/build/components/block-switcher/utils.js +2 -3
  193. package/build/components/block-switcher/utils.js.map +1 -1
  194. package/build/components/block-title/index.js +5 -6
  195. package/build/components/block-title/index.js.map +1 -1
  196. package/build/components/block-title/use-block-display-title.js +5 -6
  197. package/build/components/block-title/use-block-display-title.js.map +1 -1
  198. package/build/components/block-toolbar/index.js +13 -12
  199. package/build/components/block-toolbar/index.js.map +1 -1
  200. package/build/components/block-toolbar/utils.js +14 -16
  201. package/build/components/block-toolbar/utils.js.map +1 -1
  202. package/build/components/block-tools/back-compat.js +3 -4
  203. package/build/components/block-tools/back-compat.js.map +1 -1
  204. package/build/components/block-tools/block-contextual-toolbar.js +10 -9
  205. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  206. package/build/components/block-tools/block-selection-button.js +6 -9
  207. package/build/components/block-tools/block-selection-button.js.map +1 -1
  208. package/build/components/block-tools/index.js +6 -7
  209. package/build/components/block-tools/index.js.map +1 -1
  210. package/build/components/block-tools/insertion-point.js +17 -14
  211. package/build/components/block-tools/insertion-point.js.map +1 -1
  212. package/build/components/block-tools/selected-block-popover.js +19 -20
  213. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  214. package/build/components/block-tools/use-block-toolbar-popover-props.js +9 -14
  215. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  216. package/build/components/block-tools/zoom-out-mode-inserters.js +3 -4
  217. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  218. package/build/components/block-types-list/index.js +8 -9
  219. package/build/components/block-types-list/index.js.map +1 -1
  220. package/build/components/block-types-list/index.native.js +22 -27
  221. package/build/components/block-types-list/index.native.js.map +1 -1
  222. package/build/components/block-variation-picker/index.js +8 -9
  223. package/build/components/block-variation-picker/index.js.map +1 -1
  224. package/build/components/block-variation-picker/index.native.js +7 -9
  225. package/build/components/block-variation-picker/index.native.js.map +1 -1
  226. package/build/components/block-variation-transforms/index.js +30 -41
  227. package/build/components/block-variation-transforms/index.js.map +1 -1
  228. package/build/components/block-vertical-alignment-control/ui.js +7 -9
  229. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  230. package/build/components/border-radius-control/all-input-control.js +7 -8
  231. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  232. package/build/components/border-radius-control/index.js +9 -10
  233. package/build/components/border-radius-control/index.js.map +1 -1
  234. package/build/components/border-radius-control/input-controls.js +8 -11
  235. package/build/components/border-radius-control/input-controls.js.map +1 -1
  236. package/build/components/border-radius-control/linked-button.js +4 -5
  237. package/build/components/border-radius-control/linked-button.js.map +1 -1
  238. package/build/components/border-radius-control/utils.js +3 -7
  239. package/build/components/border-radius-control/utils.js.map +1 -1
  240. package/build/components/button-block-appender/index.js +13 -15
  241. package/build/components/button-block-appender/index.js.map +1 -1
  242. package/build/components/button-block-appender/index.native.js +25 -29
  243. package/build/components/button-block-appender/index.native.js.map +1 -1
  244. package/build/components/caption/index.native.js +40 -43
  245. package/build/components/caption/index.native.js.map +1 -1
  246. package/build/components/child-layout-control/index.js +5 -6
  247. package/build/components/child-layout-control/index.js.map +1 -1
  248. package/build/components/color-palette/control.js +5 -6
  249. package/build/components/color-palette/control.js.map +1 -1
  250. package/build/components/color-palette/with-color-context.js +1 -7
  251. package/build/components/color-palette/with-color-context.js.map +1 -1
  252. package/build/components/color-style-selector/index.js +28 -35
  253. package/build/components/color-style-selector/index.js.map +1 -1
  254. package/build/components/colors/utils.js +5 -8
  255. package/build/components/colors/utils.js.map +1 -1
  256. package/build/components/colors/with-colors.js +9 -24
  257. package/build/components/colors/with-colors.js.map +1 -1
  258. package/build/components/colors-gradients/control.js +19 -22
  259. package/build/components/colors-gradients/control.js.map +1 -1
  260. package/build/components/colors-gradients/dropdown.js +32 -39
  261. package/build/components/colors-gradients/dropdown.js.map +1 -1
  262. package/build/components/colors-gradients/panel-color-gradient-settings.js +20 -25
  263. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  264. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +27 -31
  265. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  266. package/build/components/contrast-checker/index.js +12 -13
  267. package/build/components/contrast-checker/index.js.map +1 -1
  268. package/build/components/contrast-checker/index.native.js +16 -18
  269. package/build/components/contrast-checker/index.native.js.map +1 -1
  270. package/build/components/convert-to-group-buttons/index.js +15 -11
  271. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  272. package/build/components/convert-to-group-buttons/index.native.js +86 -3
  273. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  274. package/build/components/convert-to-group-buttons/toolbar.js +6 -12
  275. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  276. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +22 -38
  277. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  278. package/build/components/copy-handler/index.js +4 -7
  279. package/build/components/copy-handler/index.js.map +1 -1
  280. package/build/components/date-format-picker/index.js +12 -16
  281. package/build/components/date-format-picker/index.js.map +1 -1
  282. package/build/components/default-block-appender/index.js +7 -9
  283. package/build/components/default-block-appender/index.js.map +1 -1
  284. package/build/components/default-block-appender/index.native.js +8 -10
  285. package/build/components/default-block-appender/index.native.js.map +1 -1
  286. package/build/components/default-style-picker/index.js +14 -22
  287. package/build/components/default-style-picker/index.js.map +1 -1
  288. package/build/components/duotone/components.js +14 -18
  289. package/build/components/duotone/components.js.map +1 -1
  290. package/build/components/duotone/utils.js +1 -2
  291. package/build/components/duotone/utils.js.map +1 -1
  292. package/build/components/duotone-control/index.js +12 -15
  293. package/build/components/duotone-control/index.js.map +1 -1
  294. package/build/components/editable-text/index.js +5 -6
  295. package/build/components/editable-text/index.js.map +1 -1
  296. package/build/components/editor-styles/index.js +4 -5
  297. package/build/components/editor-styles/index.js.map +1 -1
  298. package/build/components/floating-toolbar/index.native.js +7 -8
  299. package/build/components/floating-toolbar/index.native.js.map +1 -1
  300. package/build/components/font-appearance-control/index.js +19 -26
  301. package/build/components/font-appearance-control/index.js.map +1 -1
  302. package/build/components/font-family/index.js +10 -12
  303. package/build/components/font-family/index.js.map +1 -1
  304. package/build/components/font-sizes/fluid-utils.js +17 -21
  305. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  306. package/build/components/font-sizes/utils.js +6 -12
  307. package/build/components/font-sizes/utils.js.map +1 -1
  308. package/build/components/font-sizes/with-font-sizes.js +11 -30
  309. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  310. package/build/components/global-styles/advanced-panel.js +7 -10
  311. package/build/components/global-styles/advanced-panel.js.map +1 -1
  312. package/build/components/global-styles/border-panel.js +45 -78
  313. package/build/components/global-styles/border-panel.js.map +1 -1
  314. package/build/components/global-styles/color-panel.js +104 -147
  315. package/build/components/global-styles/color-panel.js.map +1 -1
  316. package/build/components/global-styles/color-panel.native.js +25 -42
  317. package/build/components/global-styles/color-panel.native.js.map +1 -1
  318. package/build/components/global-styles/dimensions-panel.js +81 -111
  319. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  320. package/build/components/global-styles/effects-panel.js +58 -72
  321. package/build/components/global-styles/effects-panel.js.map +1 -1
  322. package/build/components/global-styles/filters-panel.js +53 -71
  323. package/build/components/global-styles/filters-panel.js.map +1 -1
  324. package/build/components/global-styles/get-block-css-selector.js +4 -7
  325. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  326. package/build/components/global-styles/hooks.js +22 -37
  327. package/build/components/global-styles/hooks.js.map +1 -1
  328. package/build/components/global-styles/typography-panel.js +69 -125
  329. package/build/components/global-styles/typography-panel.js.map +1 -1
  330. package/build/components/global-styles/typography-utils.js +49 -26
  331. package/build/components/global-styles/typography-utils.js.map +1 -1
  332. package/build/components/global-styles/use-global-styles-output.js +140 -235
  333. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  334. package/build/components/global-styles/utils.js +11 -27
  335. package/build/components/global-styles/utils.js.map +1 -1
  336. package/build/components/gradients/use-gradient.js +6 -7
  337. package/build/components/gradients/use-gradient.js.map +1 -1
  338. package/build/components/height-control/index.js +9 -10
  339. package/build/components/height-control/index.js.map +1 -1
  340. package/build/components/iframe/index.js +52 -80
  341. package/build/components/iframe/index.js.map +1 -1
  342. package/build/components/iframe/use-compatibility-styles.js +29 -20
  343. package/build/components/iframe/use-compatibility-styles.js.map +1 -1
  344. package/build/components/image-editor/aspect-ratio-dropdown.js +83 -91
  345. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  346. package/build/components/image-editor/context.js +9 -10
  347. package/build/components/image-editor/context.js.map +1 -1
  348. package/build/components/image-editor/cropper.js +11 -12
  349. package/build/components/image-editor/cropper.js.map +1 -1
  350. package/build/components/image-editor/index.js +12 -13
  351. package/build/components/image-editor/index.js.map +1 -1
  352. package/build/components/image-editor/use-save-image.js +11 -12
  353. package/build/components/image-editor/use-save-image.js.map +1 -1
  354. package/build/components/image-editor/use-transform-image.js +5 -6
  355. package/build/components/image-editor/use-transform-image.js.map +1 -1
  356. package/build/components/image-editor/zoom-dropdown.js +10 -13
  357. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  358. package/build/components/image-size-control/index.js +12 -13
  359. package/build/components/image-size-control/index.js.map +1 -1
  360. package/build/components/inner-blocks/button-block-appender.js +7 -8
  361. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  362. package/build/components/inner-blocks/default-block-appender.js +6 -8
  363. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  364. package/build/components/inner-blocks/index.js +4 -7
  365. package/build/components/inner-blocks/index.js.map +1 -1
  366. package/build/components/inner-blocks/index.native.js +8 -10
  367. package/build/components/inner-blocks/index.native.js.map +1 -1
  368. package/build/components/inner-blocks/use-block-context.js +1 -4
  369. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  370. package/build/components/inner-blocks/use-nested-settings-update.js +15 -9
  371. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  372. package/build/components/inserter/block-patterns-explorer/explorer.js +9 -11
  373. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  374. package/build/components/inserter/block-patterns-explorer/patterns-list.js +11 -18
  375. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  376. package/build/components/inserter/block-patterns-explorer/sidebar.js +20 -24
  377. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  378. package/build/components/inserter/block-patterns-tab.js +29 -40
  379. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  380. package/build/components/inserter/block-types-tab.js +7 -9
  381. package/build/components/inserter/block-types-tab.js.map +1 -1
  382. package/build/components/inserter/block-types-tab.native.js +8 -9
  383. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  384. package/build/components/inserter/hooks/use-block-type-impressions.native.js +3 -5
  385. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  386. package/build/components/inserter/hooks/use-block-types-state.js +5 -6
  387. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  388. package/build/components/inserter/hooks/use-clipboard-block.native.js +2 -2
  389. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  390. package/build/components/inserter/hooks/use-debounced-input.js +1 -2
  391. package/build/components/inserter/hooks/use-debounced-input.js.map +1 -1
  392. package/build/components/inserter/hooks/use-insertion-point.js +10 -12
  393. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  394. package/build/components/inserter/index.js +40 -58
  395. package/build/components/inserter/index.js.map +1 -1
  396. package/build/components/inserter/index.native.js +24 -31
  397. package/build/components/inserter/index.native.js.map +1 -1
  398. package/build/components/inserter/library.js +11 -12
  399. package/build/components/inserter/library.js.map +1 -1
  400. package/build/components/inserter/media-tab/hooks.js +2 -5
  401. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  402. package/build/components/inserter/media-tab/media-list.js +6 -7
  403. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  404. package/build/components/inserter/media-tab/media-panel.js +12 -14
  405. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  406. package/build/components/inserter/media-tab/media-preview.js +47 -58
  407. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  408. package/build/components/inserter/media-tab/media-tab.js +24 -28
  409. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  410. package/build/components/inserter/media-tab/utils.js +3 -5
  411. package/build/components/inserter/media-tab/utils.js.map +1 -1
  412. package/build/components/inserter/menu.js +15 -19
  413. package/build/components/inserter/menu.js.map +1 -1
  414. package/build/components/inserter/menu.native.js +27 -31
  415. package/build/components/inserter/menu.native.js.map +1 -1
  416. package/build/components/inserter/mobile-tab-navigation.js +7 -9
  417. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  418. package/build/components/inserter/panel.js +5 -6
  419. package/build/components/inserter/panel.js.map +1 -1
  420. package/build/components/inserter/preview-panel.js +4 -5
  421. package/build/components/inserter/preview-panel.js.map +1 -1
  422. package/build/components/inserter/quick-inserter.js +9 -12
  423. package/build/components/inserter/quick-inserter.js.map +1 -1
  424. package/build/components/inserter/reusable-blocks-tab.js +13 -18
  425. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  426. package/build/components/inserter/reusable-blocks-tab.native.js +5 -6
  427. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  428. package/build/components/inserter/search-items.js +12 -40
  429. package/build/components/inserter/search-items.js.map +1 -1
  430. package/build/components/inserter/search-results.js +34 -22
  431. package/build/components/inserter/search-results.js.map +1 -1
  432. package/build/components/inserter/search-results.native.js +11 -12
  433. package/build/components/inserter/search-results.native.js.map +1 -1
  434. package/build/components/inserter/tabs.js +8 -9
  435. package/build/components/inserter/tabs.js.map +1 -1
  436. package/build/components/inserter/tabs.native.js +37 -55
  437. package/build/components/inserter/tabs.native.js.map +1 -1
  438. package/build/components/inserter/utils.native.js +13 -17
  439. package/build/components/inserter/utils.native.js.map +1 -1
  440. package/build/components/inserter-draggable-blocks/index.js +11 -13
  441. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  442. package/build/components/inserter-list-item/index.js +68 -72
  443. package/build/components/inserter-list-item/index.js.map +1 -1
  444. package/build/components/inserter-listbox/index.js +3 -4
  445. package/build/components/inserter-listbox/index.js.map +1 -1
  446. package/build/components/inserter-listbox/item.js +6 -7
  447. package/build/components/inserter-listbox/item.js.map +1 -1
  448. package/build/components/inspector-controls/block-support-slot-container.js +4 -5
  449. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  450. package/build/components/inspector-controls/block-support-tools-panel.js +6 -8
  451. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  452. package/build/components/inspector-controls/fill.js +13 -24
  453. package/build/components/inspector-controls/fill.js.map +1 -1
  454. package/build/components/inspector-controls/fill.native.js +7 -11
  455. package/build/components/inspector-controls/fill.native.js.map +1 -1
  456. package/build/components/inspector-controls/slot.js +9 -13
  457. package/build/components/inspector-controls/slot.js.map +1 -1
  458. package/build/components/inspector-controls/slot.native.js +6 -10
  459. package/build/components/inspector-controls/slot.native.js.map +1 -1
  460. package/build/components/inspector-controls-tabs/index.js +6 -7
  461. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  462. package/build/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  463. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  464. package/build/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  465. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  466. package/build/components/inspector-controls-tabs/settings-tab.js +3 -6
  467. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  468. package/build/components/inspector-controls-tabs/styles-tab.js +5 -6
  469. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  470. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +1 -3
  471. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  472. package/build/components/inspector-popover-header/index.js +18 -22
  473. package/build/components/inspector-popover-header/index.js.map +1 -1
  474. package/build/components/justify-content-control/ui.js +8 -10
  475. package/build/components/justify-content-control/ui.js.map +1 -1
  476. package/build/components/letter-spacing-control/index.js +6 -7
  477. package/build/components/letter-spacing-control/index.js.map +1 -1
  478. package/build/components/line-height-control/index.js +13 -18
  479. package/build/components/line-height-control/index.js.map +1 -1
  480. package/build/components/line-height-control/index.native.js +4 -5
  481. package/build/components/line-height-control/index.native.js.map +1 -1
  482. package/build/components/link-control/index.js +84 -63
  483. package/build/components/link-control/index.js.map +1 -1
  484. package/build/components/link-control/is-url-like.js +32 -2
  485. package/build/components/link-control/is-url-like.js.map +1 -1
  486. package/build/components/link-control/link-preview.js +24 -27
  487. package/build/components/link-control/link-preview.js.map +1 -1
  488. package/build/components/link-control/search-create-button.js +7 -9
  489. package/build/components/link-control/search-create-button.js.map +1 -1
  490. package/build/components/link-control/search-input.js +22 -27
  491. package/build/components/link-control/search-input.js.map +1 -1
  492. package/build/components/link-control/search-item.js +13 -15
  493. package/build/components/link-control/search-item.js.map +1 -1
  494. package/build/components/link-control/search-results.js +22 -28
  495. package/build/components/link-control/search-results.js.map +1 -1
  496. package/build/components/link-control/settings-drawer.js +6 -35
  497. package/build/components/link-control/settings-drawer.js.map +1 -1
  498. package/build/components/link-control/settings.js +6 -8
  499. package/build/components/link-control/settings.js.map +1 -1
  500. package/build/components/link-control/use-internal-value.js +54 -0
  501. package/build/components/link-control/use-internal-value.js.map +1 -0
  502. package/build/components/link-control/use-rich-url-data.js +1 -1
  503. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  504. package/build/components/link-control/use-search-handler.js +10 -23
  505. package/build/components/link-control/use-search-handler.js.map +1 -1
  506. package/build/components/list-view/appender.js +18 -13
  507. package/build/components/list-view/appender.js.map +1 -1
  508. package/build/components/list-view/aria-referenced-text.js +44 -0
  509. package/build/components/list-view/aria-referenced-text.js.map +1 -0
  510. package/build/components/list-view/block-contents.js +40 -38
  511. package/build/components/list-view/block-contents.js.map +1 -1
  512. package/build/components/list-view/block-select-button.js +67 -21
  513. package/build/components/list-view/block-select-button.js.map +1 -1
  514. package/build/components/list-view/block.js +134 -120
  515. package/build/components/list-view/block.js.map +1 -1
  516. package/build/components/list-view/branch.js +6 -8
  517. package/build/components/list-view/branch.js.map +1 -1
  518. package/build/components/list-view/drop-indicator.js +4 -5
  519. package/build/components/list-view/drop-indicator.js.map +1 -1
  520. package/build/components/list-view/expander.js +3 -4
  521. package/build/components/list-view/expander.js.map +1 -1
  522. package/build/components/list-view/index.js +56 -46
  523. package/build/components/list-view/index.js.map +1 -1
  524. package/build/components/list-view/leaf.js +10 -11
  525. package/build/components/list-view/leaf.js.map +1 -1
  526. package/build/components/list-view/use-block-selection.js +4 -6
  527. package/build/components/list-view/use-block-selection.js.map +1 -1
  528. package/build/components/list-view/use-list-view-client-ids.js +29 -8
  529. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  530. package/build/components/list-view/use-list-view-drop-zone.js +25 -13
  531. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  532. package/build/components/list-view/use-list-view-expand-selected-item.js +4 -5
  533. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  534. package/build/components/list-view/use-list-view-scroll-into-view.js +5 -6
  535. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  536. package/build/components/media-placeholder/index.js +71 -92
  537. package/build/components/media-placeholder/index.js.map +1 -1
  538. package/build/components/media-placeholder/index.native.js +5 -6
  539. package/build/components/media-placeholder/index.native.js.map +1 -1
  540. package/build/components/media-replace-flow/index.js +94 -107
  541. package/build/components/media-replace-flow/index.js.map +1 -1
  542. package/build/components/media-upload/check.js +4 -5
  543. package/build/components/media-upload/check.js.map +1 -1
  544. package/build/components/media-upload/index.native.js +1 -1
  545. package/build/components/media-upload/index.native.js.map +1 -1
  546. package/build/components/multi-selection-inspector/index.js +3 -4
  547. package/build/components/multi-selection-inspector/index.js.map +1 -1
  548. package/build/components/navigable-toolbar/index.js +16 -15
  549. package/build/components/navigable-toolbar/index.js.map +1 -1
  550. package/build/components/observe-typing/index.js +3 -4
  551. package/build/components/observe-typing/index.js.map +1 -1
  552. package/build/components/panel-color-settings/index.js +4 -5
  553. package/build/components/panel-color-settings/index.js.map +1 -1
  554. package/build/components/plain-text/index.js +4 -6
  555. package/build/components/plain-text/index.js.map +1 -1
  556. package/build/components/plain-text/index.native.js +8 -14
  557. package/build/components/plain-text/index.native.js.map +1 -1
  558. package/build/components/preview-options/index.js +8 -9
  559. package/build/components/preview-options/index.js.map +1 -1
  560. package/build/components/provider/block-refs-provider.js +3 -4
  561. package/build/components/provider/block-refs-provider.js.map +1 -1
  562. package/build/components/provider/use-block-sync.js +7 -8
  563. package/build/components/provider/use-block-sync.js.map +1 -1
  564. package/build/components/provider/with-registry-provider.js +5 -7
  565. package/build/components/provider/with-registry-provider.js.map +1 -1
  566. package/build/components/publish-date-time-picker/index.js +6 -9
  567. package/build/components/publish-date-time-picker/index.js.map +1 -1
  568. package/build/components/recursion-provider/index.js +7 -11
  569. package/build/components/recursion-provider/index.js.map +1 -1
  570. package/build/components/resizable-box-popover/index.js +5 -6
  571. package/build/components/resizable-box-popover/index.js.map +1 -1
  572. package/build/components/responsive-block-control/label.js +5 -6
  573. package/build/components/responsive-block-control/label.js.map +1 -1
  574. package/build/components/rich-text/embed-handler-picker.native.js +6 -10
  575. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  576. package/build/components/rich-text/format-edit.js +7 -8
  577. package/build/components/rich-text/format-edit.js.map +1 -1
  578. package/build/components/rich-text/format-toolbar/index.js +9 -18
  579. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  580. package/build/components/rich-text/format-toolbar-container.js +13 -16
  581. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  582. package/build/components/rich-text/index.js +43 -47
  583. package/build/components/rich-text/index.js.map +1 -1
  584. package/build/components/rich-text/index.native.js +130 -157
  585. package/build/components/rich-text/index.native.js.map +1 -1
  586. package/build/components/rich-text/input-event.js +4 -5
  587. package/build/components/rich-text/input-event.js.map +1 -1
  588. package/build/components/rich-text/shortcut.js +5 -6
  589. package/build/components/rich-text/shortcut.js.map +1 -1
  590. package/build/components/rich-text/split-value.js +8 -10
  591. package/build/components/rich-text/split-value.js.map +1 -1
  592. package/build/components/rich-text/toolbar-button.js +6 -7
  593. package/build/components/rich-text/toolbar-button.js.map +1 -1
  594. package/build/components/rich-text/use-before-input-rules.js +1 -4
  595. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  596. package/build/components/rich-text/use-enter.js +3 -6
  597. package/build/components/rich-text/use-enter.js.map +1 -1
  598. package/build/components/rich-text/use-firefox-compat.js +32 -1
  599. package/build/components/rich-text/use-firefox-compat.js.map +1 -1
  600. package/build/components/rich-text/use-format-types.js +11 -17
  601. package/build/components/rich-text/use-format-types.js.map +1 -1
  602. package/build/components/rich-text/use-input-rules.js +9 -15
  603. package/build/components/rich-text/use-input-rules.js.map +1 -1
  604. package/build/components/rich-text/use-mark-persistent.js +4 -5
  605. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  606. package/build/components/rich-text/use-paste-handler.js +5 -7
  607. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  608. package/build/components/rich-text/utils.js +5 -7
  609. package/build/components/rich-text/utils.js.map +1 -1
  610. package/build/components/skip-to-selected-block/index.js +3 -4
  611. package/build/components/skip-to-selected-block/index.js.map +1 -1
  612. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +38 -0
  613. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -0
  614. package/build/components/spacing-sizes-control/index.js +60 -62
  615. package/build/components/spacing-sizes-control/index.js.map +1 -1
  616. package/build/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +21 -22
  617. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -0
  618. package/build/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +22 -22
  619. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -0
  620. package/build/components/spacing-sizes-control/input-controls/single.js +51 -0
  621. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -0
  622. package/build/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +51 -69
  623. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -0
  624. package/build/components/spacing-sizes-control/sides-dropdown/index.js +84 -0
  625. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -0
  626. package/build/components/spacing-sizes-control/utils.js +213 -31
  627. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  628. package/build/components/text-decoration-control/index.js +5 -6
  629. package/build/components/text-decoration-control/index.js.map +1 -1
  630. package/build/components/text-transform-control/index.js +5 -6
  631. package/build/components/text-transform-control/index.js.map +1 -1
  632. package/build/components/tool-selector/index.js +13 -16
  633. package/build/components/tool-selector/index.js.map +1 -1
  634. package/build/components/typewriter/index.js +6 -9
  635. package/build/components/typewriter/index.js.map +1 -1
  636. package/build/components/ungroup-button/index.native.js +11 -16
  637. package/build/components/ungroup-button/index.native.js.map +1 -1
  638. package/build/components/unit-control/index.js +4 -5
  639. package/build/components/unit-control/index.js.map +1 -1
  640. package/build/components/url-input/index.js +15 -23
  641. package/build/components/url-input/index.js.map +1 -1
  642. package/build/components/url-input/index.native.js +6 -8
  643. package/build/components/url-input/index.native.js.map +1 -1
  644. package/build/components/url-popover/image-url-input-ui.js +12 -15
  645. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  646. package/build/components/url-popover/index.js +12 -14
  647. package/build/components/url-popover/index.js.map +1 -1
  648. package/build/components/url-popover/link-editor.js +7 -8
  649. package/build/components/url-popover/link-editor.js.map +1 -1
  650. package/build/components/url-popover/link-viewer-url.js +5 -6
  651. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  652. package/build/components/url-popover/link-viewer.js +8 -9
  653. package/build/components/url-popover/link-viewer.js.map +1 -1
  654. package/build/components/use-block-display-information/index.js +2 -2
  655. package/build/components/use-block-display-information/index.js.map +1 -1
  656. package/build/components/use-block-drop-zone/index.js +41 -38
  657. package/build/components/use-block-drop-zone/index.js.map +1 -1
  658. package/build/components/use-block-drop-zone/index.native.js +8 -11
  659. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  660. package/build/components/use-moving-animation/index.js +9 -12
  661. package/build/components/use-moving-animation/index.js.map +1 -1
  662. package/build/components/use-on-block-drop/index.js +2 -6
  663. package/build/components/use-on-block-drop/index.js.map +1 -1
  664. package/build/components/use-on-block-drop/index.native.js +8 -10
  665. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  666. package/build/components/use-paste-styles/index.js +2 -6
  667. package/build/components/use-paste-styles/index.js.map +1 -1
  668. package/build/components/use-resize-canvas/index.js +8 -1
  669. package/build/components/use-resize-canvas/index.js.map +1 -1
  670. package/build/components/warning/index.js +6 -7
  671. package/build/components/warning/index.js.map +1 -1
  672. package/build/components/warning/index.native.js +9 -10
  673. package/build/components/warning/index.native.js.map +1 -1
  674. package/build/components/writing-flow/index.js +4 -5
  675. package/build/components/writing-flow/index.js.map +1 -1
  676. package/build/components/writing-flow/use-arrow-nav.js +13 -7
  677. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  678. package/build/components/writing-flow/use-drag-selection.js +4 -6
  679. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  680. package/build/components/writing-flow/use-tab-nav.js +9 -6
  681. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  682. package/build/hooks/align.js +11 -22
  683. package/build/hooks/align.js.map +1 -1
  684. package/build/hooks/anchor.js +6 -3
  685. package/build/hooks/anchor.js.map +1 -1
  686. package/build/hooks/aria-label.js +1 -3
  687. package/build/hooks/aria-label.js.map +1 -1
  688. package/build/hooks/behaviors.js +148 -0
  689. package/build/hooks/behaviors.js.map +1 -0
  690. package/build/hooks/border.js +25 -38
  691. package/build/hooks/border.js.map +1 -1
  692. package/build/hooks/color.js +22 -37
  693. package/build/hooks/color.js.map +1 -1
  694. package/build/hooks/content-lock-ui.js +26 -30
  695. package/build/hooks/content-lock-ui.js.map +1 -1
  696. package/build/hooks/contrast-checker.js +4 -7
  697. package/build/hooks/contrast-checker.js.map +1 -1
  698. package/build/hooks/custom-class-name.js +5 -4
  699. package/build/hooks/custom-class-name.js.map +1 -1
  700. package/build/hooks/dimensions.js +6 -39
  701. package/build/hooks/dimensions.js.map +1 -1
  702. package/build/hooks/duotone.js +36 -52
  703. package/build/hooks/duotone.js.map +1 -1
  704. package/build/hooks/font-family.js +5 -6
  705. package/build/hooks/font-family.js.map +1 -1
  706. package/build/hooks/font-size.js +14 -21
  707. package/build/hooks/font-size.js.map +1 -1
  708. package/build/hooks/gap.js +5 -6
  709. package/build/hooks/gap.js.map +1 -1
  710. package/build/hooks/index.js +2 -0
  711. package/build/hooks/index.js.map +1 -1
  712. package/build/hooks/layout.js +50 -68
  713. package/build/hooks/layout.js.map +1 -1
  714. package/build/hooks/line-height.js +5 -8
  715. package/build/hooks/line-height.js.map +1 -1
  716. package/build/hooks/lock.js +2 -2
  717. package/build/hooks/lock.js.map +1 -1
  718. package/build/hooks/margin.js +6 -9
  719. package/build/hooks/margin.js.map +1 -1
  720. package/build/hooks/metadata-name.js +4 -5
  721. package/build/hooks/metadata-name.js.map +1 -1
  722. package/build/hooks/metadata.js +3 -7
  723. package/build/hooks/metadata.js.map +1 -1
  724. package/build/hooks/padding.js +6 -9
  725. package/build/hooks/padding.js.map +1 -1
  726. package/build/hooks/position.js +26 -40
  727. package/build/hooks/position.js.map +1 -1
  728. package/build/hooks/settings.js +1 -3
  729. package/build/hooks/settings.js.map +1 -1
  730. package/build/hooks/style.js +12 -19
  731. package/build/hooks/style.js.map +1 -1
  732. package/build/hooks/supports.js +3 -5
  733. package/build/hooks/supports.js.map +1 -1
  734. package/build/hooks/typography.js +18 -27
  735. package/build/hooks/typography.js.map +1 -1
  736. package/build/hooks/typography.native.js +1 -2
  737. package/build/hooks/typography.native.js.map +1 -1
  738. package/build/hooks/use-border-props.js +1 -3
  739. package/build/hooks/use-border-props.js.map +1 -1
  740. package/build/hooks/use-color-props.js +6 -8
  741. package/build/hooks/use-color-props.js.map +1 -1
  742. package/build/hooks/use-editor-wrapper-styles.native.js +34 -39
  743. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  744. package/build/hooks/use-spacing-props.js +1 -1
  745. package/build/hooks/use-spacing-props.js.map +1 -1
  746. package/build/hooks/use-typography-props.js +8 -12
  747. package/build/hooks/use-typography-props.js.map +1 -1
  748. package/build/hooks/utils.js +6 -18
  749. package/build/hooks/utils.js.map +1 -1
  750. package/build/layouts/constrained.js +22 -27
  751. package/build/layouts/constrained.js.map +1 -1
  752. package/build/layouts/flex.js +43 -54
  753. package/build/layouts/flex.js.map +1 -1
  754. package/build/layouts/flow.js +10 -13
  755. package/build/layouts/flow.js.map +1 -1
  756. package/build/layouts/grid.js +45 -25
  757. package/build/layouts/grid.js.map +1 -1
  758. package/build/layouts/index.js +1 -2
  759. package/build/layouts/index.js.map +1 -1
  760. package/build/layouts/utils.js +3 -9
  761. package/build/layouts/utils.js.map +1 -1
  762. package/build/private-apis.js +4 -7
  763. package/build/private-apis.js.map +1 -1
  764. package/build/store/actions.js +251 -334
  765. package/build/store/actions.js.map +1 -1
  766. package/build/store/array.js +1 -2
  767. package/build/store/array.js.map +1 -1
  768. package/build/store/private-actions.js +44 -2
  769. package/build/store/private-actions.js.map +1 -1
  770. package/build/store/private-selectors.js +108 -3
  771. package/build/store/private-selectors.js.map +1 -1
  772. package/build/store/reducer.js +99 -166
  773. package/build/store/reducer.js.map +1 -1
  774. package/build/store/selectors.js +171 -231
  775. package/build/store/selectors.js.map +1 -1
  776. package/build/utils/block-variation-transforms.js +4 -7
  777. package/build/utils/block-variation-transforms.js.map +1 -1
  778. package/build/utils/math.js +1 -2
  779. package/build/utils/math.js.map +1 -1
  780. package/build/utils/object.js +1 -4
  781. package/build/utils/object.js.map +1 -1
  782. package/build/utils/order-inserter-block-items.js +39 -0
  783. package/build/utils/order-inserter-block-items.js.map +1 -0
  784. package/build/utils/parse-css-unit-to-px.js +3 -6
  785. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  786. package/build/utils/pasting.js +5 -8
  787. package/build/utils/pasting.js.map +1 -1
  788. package/build/utils/pre-parse-patterns.js +1 -1
  789. package/build/utils/pre-parse-patterns.js.map +1 -1
  790. package/build/utils/sorting.js +1 -2
  791. package/build/utils/sorting.js.map +1 -1
  792. package/build/utils/transform-styles/index.js +5 -7
  793. package/build/utils/transform-styles/index.js.map +1 -1
  794. package/build/utils/transform-styles/transforms/wrap.js +28 -31
  795. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  796. package/build-module/autocompleters/block.js +10 -5
  797. package/build-module/autocompleters/block.js.map +1 -1
  798. package/build-module/components/alignment-control/ui.js +9 -11
  799. package/build-module/components/alignment-control/ui.js.map +1 -1
  800. package/build-module/components/autocomplete/index.js +3 -4
  801. package/build-module/components/autocomplete/index.js.map +1 -1
  802. package/build-module/components/block-actions/index.js +8 -12
  803. package/build-module/components/block-actions/index.js.map +1 -1
  804. package/build-module/components/block-alignment-control/ui.js +17 -21
  805. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  806. package/build-module/components/block-alignment-control/ui.native.js +14 -17
  807. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  808. package/build-module/components/block-alignment-control/use-available-alignments.js +5 -10
  809. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  810. package/build-module/components/block-alignment-matrix-control/index.js +4 -6
  811. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  812. package/build-module/components/block-breadcrumb/index.js +8 -7
  813. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  814. package/build-module/components/block-caption/index.native.js +29 -34
  815. package/build-module/components/block-caption/index.native.js.map +1 -1
  816. package/build-module/components/block-card/index.js +7 -9
  817. package/build-module/components/block-card/index.js.map +1 -1
  818. package/build-module/components/block-compare/block-view.js +8 -9
  819. package/build-module/components/block-compare/block-view.js.map +1 -1
  820. package/build-module/components/block-compare/index.js +7 -9
  821. package/build-module/components/block-compare/index.js.map +1 -1
  822. package/build-module/components/block-context/index.js +4 -5
  823. package/build-module/components/block-context/index.js.map +1 -1
  824. package/build-module/components/block-controls/fill.js +17 -23
  825. package/build-module/components/block-controls/fill.js.map +1 -1
  826. package/build-module/components/block-controls/hook.js +1 -3
  827. package/build-module/components/block-controls/hook.js.map +1 -1
  828. package/build-module/components/block-controls/slot.js +29 -21
  829. package/build-module/components/block-controls/slot.js.map +1 -1
  830. package/build-module/components/block-controls/slot.native.js +8 -18
  831. package/build-module/components/block-controls/slot.native.js.map +1 -1
  832. package/build-module/components/block-draggable/draggable-chip.js +5 -7
  833. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  834. package/build-module/components/block-draggable/draggable-chip.native.js +3 -4
  835. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  836. package/build-module/components/block-draggable/dropping-insertion-point.native.js +6 -7
  837. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  838. package/build-module/components/block-draggable/index.js +16 -17
  839. package/build-module/components/block-draggable/index.js.map +1 -1
  840. package/build-module/components/block-draggable/index.native.js +43 -58
  841. package/build-module/components/block-draggable/index.native.js.map +1 -1
  842. package/build-module/components/block-edit/edit.js +1 -4
  843. package/build-module/components/block-edit/edit.js.map +1 -1
  844. package/build-module/components/block-edit/edit.native.js +1 -4
  845. package/build-module/components/block-edit/edit.native.js.map +1 -1
  846. package/build-module/components/block-edit-visually-button/index.js +3 -4
  847. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  848. package/build-module/components/block-editing-mode/index.js +72 -0
  849. package/build-module/components/block-editing-mode/index.js.map +1 -0
  850. package/build-module/components/block-full-height-alignment-control/index.js +6 -7
  851. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  852. package/build-module/components/block-icon/index.js +7 -11
  853. package/build-module/components/block-icon/index.js.map +1 -1
  854. package/build-module/components/block-icon/index.native.js +9 -13
  855. package/build-module/components/block-icon/index.native.js.map +1 -1
  856. package/build-module/components/block-inspector/index.js +36 -46
  857. package/build-module/components/block-inspector/index.js.map +1 -1
  858. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  859. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  860. package/build-module/components/block-list/block-html.js +3 -4
  861. package/build-module/components/block-list/block-html.js.map +1 -1
  862. package/build-module/components/block-list/block-invalid-warning.js +3 -4
  863. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  864. package/build-module/components/block-list/block-invalid-warning.native.js +10 -15
  865. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  866. package/build-module/components/block-list/block-list-block-context.js +6 -0
  867. package/build-module/components/block-list/block-list-block-context.js.map +1 -0
  868. package/build-module/components/block-list/block-list-context.native.js +5 -11
  869. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  870. package/build-module/components/block-list/block-list-item-cell.native.js +5 -6
  871. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  872. package/build-module/components/block-list/block-list-item.native.js +17 -18
  873. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  874. package/build-module/components/block-list/block-outline.native.js +8 -9
  875. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  876. package/build-module/components/block-list/block-selection-button.native.js +10 -12
  877. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  878. package/build-module/components/block-list/block.js +65 -80
  879. package/build-module/components/block-list/block.js.map +1 -1
  880. package/build-module/components/block-list/block.native.js +69 -90
  881. package/build-module/components/block-list/block.native.js.map +1 -1
  882. package/build-module/components/block-list/index.js +12 -15
  883. package/build-module/components/block-list/index.js.map +1 -1
  884. package/build-module/components/block-list/index.native.js +144 -155
  885. package/build-module/components/block-list/index.native.js.map +1 -1
  886. package/build-module/components/block-list/insertion-point.native.js +4 -5
  887. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  888. package/build-module/components/block-list/layout.js +6 -9
  889. package/build-module/components/block-list/layout.js.map +1 -1
  890. package/build-module/components/block-list/subdirectory-icon.js +10 -13
  891. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  892. package/build-module/components/block-list/use-block-props/index.js +15 -12
  893. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  894. package/build-module/components/block-list/use-block-props/index.native.js +1 -2
  895. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  896. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js +2 -2
  897. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  898. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js +1 -1
  899. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  900. package/build-module/components/block-list/use-in-between-inserter.js +7 -8
  901. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  902. package/build-module/components/block-list-appender/index.js +29 -15
  903. package/build-module/components/block-list-appender/index.js.map +1 -1
  904. package/build-module/components/block-list-appender/index.native.js +9 -11
  905. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  906. package/build-module/components/block-lock/menu-item.js +3 -4
  907. package/build-module/components/block-lock/menu-item.js.map +1 -1
  908. package/build-module/components/block-lock/modal.js +6 -9
  909. package/build-module/components/block-lock/modal.js.map +1 -1
  910. package/build-module/components/block-lock/toolbar.js +5 -10
  911. package/build-module/components/block-lock/toolbar.js.map +1 -1
  912. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +66 -70
  913. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  914. package/build-module/components/block-mobile-toolbar/index.native.js +26 -34
  915. package/build-module/components/block-mobile-toolbar/index.native.js.map +1 -1
  916. package/build-module/components/block-mover/button.js +6 -7
  917. package/build-module/components/block-mover/button.js.map +1 -1
  918. package/build-module/components/block-mover/index.js +5 -8
  919. package/build-module/components/block-mover/index.js.map +1 -1
  920. package/build-module/components/block-mover/index.native.js +23 -46
  921. package/build-module/components/block-mover/index.native.js.map +1 -1
  922. package/build-module/components/block-mover/mover-description.native.js +7 -10
  923. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  924. package/build-module/components/block-navigation/dropdown.js +20 -25
  925. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  926. package/build-module/components/block-parent-selector/index.js +2 -2
  927. package/build-module/components/block-parent-selector/index.js.map +1 -1
  928. package/build-module/components/block-pattern-setup/index.js +27 -31
  929. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  930. package/build-module/components/block-pattern-setup/setup-toolbar.js +35 -42
  931. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  932. package/build-module/components/block-patterns-list/index.js +71 -78
  933. package/build-module/components/block-patterns-list/index.js.map +1 -1
  934. package/build-module/components/block-popover/drop-zone.js +4 -5
  935. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  936. package/build-module/components/block-popover/inbetween.js +10 -15
  937. package/build-module/components/block-popover/inbetween.js.map +1 -1
  938. package/build-module/components/block-popover/index.js +14 -15
  939. package/build-module/components/block-popover/index.js.map +1 -1
  940. package/build-module/components/block-preview/auto.js +6 -8
  941. package/build-module/components/block-preview/auto.js.map +1 -1
  942. package/build-module/components/block-preview/index.js +15 -18
  943. package/build-module/components/block-preview/index.js.map +1 -1
  944. package/build-module/components/block-settings/button.native.js +7 -10
  945. package/build-module/components/block-settings/button.native.js.map +1 -1
  946. package/build-module/components/block-settings-menu/block-convert-button.js +5 -7
  947. package/build-module/components/block-settings-menu/block-convert-button.js.map +1 -1
  948. package/build-module/components/block-settings-menu/block-html-convert-button.js +10 -14
  949. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  950. package/build-module/components/block-settings-menu/block-mode-toggle.js +19 -25
  951. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  952. package/build-module/components/block-settings-menu/block-settings-dropdown.js +135 -113
  953. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  954. package/build-module/components/block-settings-menu/index.js +4 -5
  955. package/build-module/components/block-settings-menu/index.js.map +1 -1
  956. package/build-module/components/block-settings-menu-controls/index.js +14 -16
  957. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  958. package/build-module/components/block-styles/index.js +6 -7
  959. package/build-module/components/block-styles/index.js.map +1 -1
  960. package/build-module/components/block-styles/index.native.js +5 -7
  961. package/build-module/components/block-styles/index.native.js.map +1 -1
  962. package/build-module/components/block-styles/menu-items.js +4 -5
  963. package/build-module/components/block-styles/menu-items.js.map +1 -1
  964. package/build-module/components/block-styles/preview-panel.js +8 -12
  965. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  966. package/build-module/components/block-styles/preview.native.js +6 -7
  967. package/build-module/components/block-styles/preview.native.js.map +1 -1
  968. package/build-module/components/block-styles/use-styles-for-block.js +7 -9
  969. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  970. package/build-module/components/block-styles/utils.js +4 -7
  971. package/build-module/components/block-styles/utils.js.map +1 -1
  972. package/build-module/components/block-switcher/block-styles-menu.js +4 -5
  973. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  974. package/build-module/components/block-switcher/block-transformations-menu.js +28 -26
  975. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  976. package/build-module/components/block-switcher/block-transformations-menu.native.js +9 -10
  977. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  978. package/build-module/components/block-switcher/block-variation-transformations.js +99 -0
  979. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -0
  980. package/build-module/components/block-switcher/index.js +63 -55
  981. package/build-module/components/block-switcher/index.js.map +1 -1
  982. package/build-module/components/block-switcher/pattern-transformations-menu.js +21 -25
  983. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  984. package/build-module/components/block-switcher/preview-block-popover.js +3 -4
  985. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  986. package/build-module/components/block-switcher/utils.js +2 -3
  987. package/build-module/components/block-switcher/utils.js.map +1 -1
  988. package/build-module/components/block-title/index.js +5 -6
  989. package/build-module/components/block-title/index.js.map +1 -1
  990. package/build-module/components/block-title/use-block-display-title.js +5 -6
  991. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  992. package/build-module/components/block-toolbar/index.js +12 -12
  993. package/build-module/components/block-toolbar/index.js.map +1 -1
  994. package/build-module/components/block-toolbar/utils.js +14 -16
  995. package/build-module/components/block-toolbar/utils.js.map +1 -1
  996. package/build-module/components/block-tools/back-compat.js +3 -4
  997. package/build-module/components/block-tools/back-compat.js.map +1 -1
  998. package/build-module/components/block-tools/block-contextual-toolbar.js +9 -9
  999. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  1000. package/build-module/components/block-tools/block-selection-button.js +6 -9
  1001. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  1002. package/build-module/components/block-tools/index.js +6 -7
  1003. package/build-module/components/block-tools/index.js.map +1 -1
  1004. package/build-module/components/block-tools/insertion-point.js +17 -14
  1005. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  1006. package/build-module/components/block-tools/selected-block-popover.js +19 -20
  1007. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  1008. package/build-module/components/block-tools/use-block-toolbar-popover-props.js +9 -14
  1009. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  1010. package/build-module/components/block-tools/zoom-out-mode-inserters.js +3 -4
  1011. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  1012. package/build-module/components/block-types-list/index.js +8 -9
  1013. package/build-module/components/block-types-list/index.js.map +1 -1
  1014. package/build-module/components/block-types-list/index.native.js +22 -27
  1015. package/build-module/components/block-types-list/index.native.js.map +1 -1
  1016. package/build-module/components/block-variation-picker/index.js +8 -9
  1017. package/build-module/components/block-variation-picker/index.js.map +1 -1
  1018. package/build-module/components/block-variation-picker/index.native.js +7 -9
  1019. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  1020. package/build-module/components/block-variation-transforms/index.js +30 -41
  1021. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  1022. package/build-module/components/block-vertical-alignment-control/ui.js +7 -9
  1023. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  1024. package/build-module/components/border-radius-control/all-input-control.js +7 -8
  1025. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  1026. package/build-module/components/border-radius-control/index.js +9 -10
  1027. package/build-module/components/border-radius-control/index.js.map +1 -1
  1028. package/build-module/components/border-radius-control/input-controls.js +8 -11
  1029. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  1030. package/build-module/components/border-radius-control/linked-button.js +4 -5
  1031. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  1032. package/build-module/components/border-radius-control/utils.js +3 -7
  1033. package/build-module/components/border-radius-control/utils.js.map +1 -1
  1034. package/build-module/components/button-block-appender/index.js +13 -15
  1035. package/build-module/components/button-block-appender/index.js.map +1 -1
  1036. package/build-module/components/button-block-appender/index.native.js +25 -29
  1037. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  1038. package/build-module/components/caption/index.native.js +40 -43
  1039. package/build-module/components/caption/index.native.js.map +1 -1
  1040. package/build-module/components/child-layout-control/index.js +5 -6
  1041. package/build-module/components/child-layout-control/index.js.map +1 -1
  1042. package/build-module/components/color-palette/control.js +5 -6
  1043. package/build-module/components/color-palette/control.js.map +1 -1
  1044. package/build-module/components/color-palette/with-color-context.js +1 -6
  1045. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  1046. package/build-module/components/color-style-selector/index.js +28 -35
  1047. package/build-module/components/color-style-selector/index.js.map +1 -1
  1048. package/build-module/components/colors/utils.js +5 -8
  1049. package/build-module/components/colors/utils.js.map +1 -1
  1050. package/build-module/components/colors/with-colors.js +9 -24
  1051. package/build-module/components/colors/with-colors.js.map +1 -1
  1052. package/build-module/components/colors-gradients/control.js +19 -21
  1053. package/build-module/components/colors-gradients/control.js.map +1 -1
  1054. package/build-module/components/colors-gradients/dropdown.js +32 -39
  1055. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  1056. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +20 -24
  1057. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  1058. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +27 -31
  1059. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  1060. package/build-module/components/contrast-checker/index.js +12 -13
  1061. package/build-module/components/contrast-checker/index.js.map +1 -1
  1062. package/build-module/components/contrast-checker/index.native.js +16 -18
  1063. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  1064. package/build-module/components/convert-to-group-buttons/index.js +15 -11
  1065. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  1066. package/build-module/components/convert-to-group-buttons/index.native.js +75 -1
  1067. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  1068. package/build-module/components/convert-to-group-buttons/toolbar.js +6 -12
  1069. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  1070. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +21 -37
  1071. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  1072. package/build-module/components/copy-handler/index.js +4 -7
  1073. package/build-module/components/copy-handler/index.js.map +1 -1
  1074. package/build-module/components/date-format-picker/index.js +12 -16
  1075. package/build-module/components/date-format-picker/index.js.map +1 -1
  1076. package/build-module/components/default-block-appender/index.js +7 -9
  1077. package/build-module/components/default-block-appender/index.js.map +1 -1
  1078. package/build-module/components/default-block-appender/index.native.js +8 -10
  1079. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  1080. package/build-module/components/default-style-picker/index.js +14 -22
  1081. package/build-module/components/default-style-picker/index.js.map +1 -1
  1082. package/build-module/components/duotone/components.js +14 -18
  1083. package/build-module/components/duotone/components.js.map +1 -1
  1084. package/build-module/components/duotone/utils.js +1 -2
  1085. package/build-module/components/duotone/utils.js.map +1 -1
  1086. package/build-module/components/duotone-control/index.js +12 -15
  1087. package/build-module/components/duotone-control/index.js.map +1 -1
  1088. package/build-module/components/editable-text/index.js +5 -6
  1089. package/build-module/components/editable-text/index.js.map +1 -1
  1090. package/build-module/components/editor-styles/index.js +4 -5
  1091. package/build-module/components/editor-styles/index.js.map +1 -1
  1092. package/build-module/components/floating-toolbar/index.native.js +7 -8
  1093. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  1094. package/build-module/components/font-appearance-control/index.js +19 -26
  1095. package/build-module/components/font-appearance-control/index.js.map +1 -1
  1096. package/build-module/components/font-family/index.js +10 -12
  1097. package/build-module/components/font-family/index.js.map +1 -1
  1098. package/build-module/components/font-sizes/fluid-utils.js +17 -21
  1099. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  1100. package/build-module/components/font-sizes/utils.js +6 -12
  1101. package/build-module/components/font-sizes/utils.js.map +1 -1
  1102. package/build-module/components/font-sizes/with-font-sizes.js +11 -30
  1103. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  1104. package/build-module/components/global-styles/advanced-panel.js +7 -10
  1105. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  1106. package/build-module/components/global-styles/border-panel.js +45 -78
  1107. package/build-module/components/global-styles/border-panel.js.map +1 -1
  1108. package/build-module/components/global-styles/color-panel.js +104 -147
  1109. package/build-module/components/global-styles/color-panel.js.map +1 -1
  1110. package/build-module/components/global-styles/color-panel.native.js +25 -42
  1111. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  1112. package/build-module/components/global-styles/dimensions-panel.js +81 -111
  1113. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  1114. package/build-module/components/global-styles/effects-panel.js +58 -72
  1115. package/build-module/components/global-styles/effects-panel.js.map +1 -1
  1116. package/build-module/components/global-styles/filters-panel.js +53 -71
  1117. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  1118. package/build-module/components/global-styles/get-block-css-selector.js +5 -8
  1119. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  1120. package/build-module/components/global-styles/hooks.js +22 -37
  1121. package/build-module/components/global-styles/hooks.js.map +1 -1
  1122. package/build-module/components/global-styles/typography-panel.js +69 -125
  1123. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1124. package/build-module/components/global-styles/typography-utils.js +48 -26
  1125. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  1126. package/build-module/components/global-styles/use-global-styles-output.js +142 -237
  1127. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1128. package/build-module/components/global-styles/utils.js +12 -28
  1129. package/build-module/components/global-styles/utils.js.map +1 -1
  1130. package/build-module/components/gradients/use-gradient.js +6 -7
  1131. package/build-module/components/gradients/use-gradient.js.map +1 -1
  1132. package/build-module/components/height-control/index.js +9 -10
  1133. package/build-module/components/height-control/index.js.map +1 -1
  1134. package/build-module/components/iframe/index.js +53 -81
  1135. package/build-module/components/iframe/index.js.map +1 -1
  1136. package/build-module/components/iframe/use-compatibility-styles.js +29 -20
  1137. package/build-module/components/iframe/use-compatibility-styles.js.map +1 -1
  1138. package/build-module/components/image-editor/aspect-ratio-dropdown.js +83 -91
  1139. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1140. package/build-module/components/image-editor/context.js +9 -10
  1141. package/build-module/components/image-editor/context.js.map +1 -1
  1142. package/build-module/components/image-editor/cropper.js +11 -12
  1143. package/build-module/components/image-editor/cropper.js.map +1 -1
  1144. package/build-module/components/image-editor/index.js +12 -13
  1145. package/build-module/components/image-editor/index.js.map +1 -1
  1146. package/build-module/components/image-editor/use-save-image.js +11 -12
  1147. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  1148. package/build-module/components/image-editor/use-transform-image.js +5 -6
  1149. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  1150. package/build-module/components/image-editor/zoom-dropdown.js +10 -13
  1151. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1152. package/build-module/components/image-size-control/index.js +12 -13
  1153. package/build-module/components/image-size-control/index.js.map +1 -1
  1154. package/build-module/components/inner-blocks/button-block-appender.js +7 -8
  1155. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1156. package/build-module/components/inner-blocks/default-block-appender.js +6 -8
  1157. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1158. package/build-module/components/inner-blocks/index.js +4 -7
  1159. package/build-module/components/inner-blocks/index.js.map +1 -1
  1160. package/build-module/components/inner-blocks/index.native.js +8 -9
  1161. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1162. package/build-module/components/inner-blocks/use-block-context.js +1 -4
  1163. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1164. package/build-module/components/inner-blocks/use-nested-settings-update.js +15 -9
  1165. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1166. package/build-module/components/inserter/block-patterns-explorer/explorer.js +9 -11
  1167. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  1168. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +11 -18
  1169. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  1170. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +20 -24
  1171. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  1172. package/build-module/components/inserter/block-patterns-tab.js +29 -40
  1173. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  1174. package/build-module/components/inserter/block-types-tab.js +7 -9
  1175. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1176. package/build-module/components/inserter/block-types-tab.native.js +8 -9
  1177. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1178. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +3 -5
  1179. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1180. package/build-module/components/inserter/hooks/use-block-types-state.js +5 -6
  1181. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1182. package/build-module/components/inserter/hooks/use-clipboard-block.native.js +2 -2
  1183. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1184. package/build-module/components/inserter/hooks/use-debounced-input.js +1 -2
  1185. package/build-module/components/inserter/hooks/use-debounced-input.js.map +1 -1
  1186. package/build-module/components/inserter/hooks/use-insertion-point.js +10 -12
  1187. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1188. package/build-module/components/inserter/index.js +40 -58
  1189. package/build-module/components/inserter/index.js.map +1 -1
  1190. package/build-module/components/inserter/index.native.js +24 -31
  1191. package/build-module/components/inserter/index.native.js.map +1 -1
  1192. package/build-module/components/inserter/library.js +11 -12
  1193. package/build-module/components/inserter/library.js.map +1 -1
  1194. package/build-module/components/inserter/media-tab/hooks.js +2 -5
  1195. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1196. package/build-module/components/inserter/media-tab/media-list.js +6 -7
  1197. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1198. package/build-module/components/inserter/media-tab/media-panel.js +12 -14
  1199. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1200. package/build-module/components/inserter/media-tab/media-preview.js +47 -58
  1201. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1202. package/build-module/components/inserter/media-tab/media-tab.js +24 -28
  1203. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1204. package/build-module/components/inserter/media-tab/utils.js +3 -5
  1205. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1206. package/build-module/components/inserter/menu.js +15 -19
  1207. package/build-module/components/inserter/menu.js.map +1 -1
  1208. package/build-module/components/inserter/menu.native.js +27 -31
  1209. package/build-module/components/inserter/menu.native.js.map +1 -1
  1210. package/build-module/components/inserter/mobile-tab-navigation.js +7 -9
  1211. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1212. package/build-module/components/inserter/panel.js +5 -6
  1213. package/build-module/components/inserter/panel.js.map +1 -1
  1214. package/build-module/components/inserter/preview-panel.js +4 -5
  1215. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1216. package/build-module/components/inserter/quick-inserter.js +9 -12
  1217. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1218. package/build-module/components/inserter/reusable-blocks-tab.js +13 -18
  1219. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  1220. package/build-module/components/inserter/reusable-blocks-tab.native.js +5 -6
  1221. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1222. package/build-module/components/inserter/search-items.js +12 -40
  1223. package/build-module/components/inserter/search-items.js.map +1 -1
  1224. package/build-module/components/inserter/search-results.js +31 -22
  1225. package/build-module/components/inserter/search-results.js.map +1 -1
  1226. package/build-module/components/inserter/search-results.native.js +11 -12
  1227. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1228. package/build-module/components/inserter/tabs.js +8 -9
  1229. package/build-module/components/inserter/tabs.js.map +1 -1
  1230. package/build-module/components/inserter/tabs.native.js +37 -55
  1231. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1232. package/build-module/components/inserter/utils.native.js +13 -17
  1233. package/build-module/components/inserter/utils.native.js.map +1 -1
  1234. package/build-module/components/inserter-draggable-blocks/index.js +11 -13
  1235. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1236. package/build-module/components/inserter-list-item/index.js +65 -69
  1237. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1238. package/build-module/components/inserter-listbox/index.js +3 -4
  1239. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1240. package/build-module/components/inserter-listbox/item.js +6 -7
  1241. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1242. package/build-module/components/inspector-controls/block-support-slot-container.js +4 -5
  1243. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1244. package/build-module/components/inspector-controls/block-support-tools-panel.js +6 -8
  1245. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1246. package/build-module/components/inspector-controls/fill.js +13 -23
  1247. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1248. package/build-module/components/inspector-controls/fill.native.js +7 -11
  1249. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1250. package/build-module/components/inspector-controls/slot.js +9 -13
  1251. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1252. package/build-module/components/inspector-controls/slot.native.js +6 -10
  1253. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1254. package/build-module/components/inspector-controls-tabs/index.js +6 -7
  1255. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1256. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  1257. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1258. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  1259. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1260. package/build-module/components/inspector-controls-tabs/settings-tab.js +3 -6
  1261. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1262. package/build-module/components/inspector-controls-tabs/styles-tab.js +5 -6
  1263. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1264. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +1 -3
  1265. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1266. package/build-module/components/inspector-popover-header/index.js +18 -22
  1267. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1268. package/build-module/components/justify-content-control/ui.js +8 -10
  1269. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1270. package/build-module/components/letter-spacing-control/index.js +6 -7
  1271. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1272. package/build-module/components/line-height-control/index.js +13 -18
  1273. package/build-module/components/line-height-control/index.js.map +1 -1
  1274. package/build-module/components/line-height-control/index.native.js +4 -5
  1275. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1276. package/build-module/components/link-control/index.js +83 -64
  1277. package/build-module/components/link-control/index.js.map +1 -1
  1278. package/build-module/components/link-control/is-url-like.js +32 -3
  1279. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1280. package/build-module/components/link-control/link-preview.js +24 -27
  1281. package/build-module/components/link-control/link-preview.js.map +1 -1
  1282. package/build-module/components/link-control/search-create-button.js +7 -9
  1283. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1284. package/build-module/components/link-control/search-input.js +22 -27
  1285. package/build-module/components/link-control/search-input.js.map +1 -1
  1286. package/build-module/components/link-control/search-item.js +13 -15
  1287. package/build-module/components/link-control/search-item.js.map +1 -1
  1288. package/build-module/components/link-control/search-results.js +21 -27
  1289. package/build-module/components/link-control/search-results.js.map +1 -1
  1290. package/build-module/components/link-control/settings-drawer.js +7 -33
  1291. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1292. package/build-module/components/link-control/settings.js +7 -9
  1293. package/build-module/components/link-control/settings.js.map +1 -1
  1294. package/build-module/components/link-control/use-internal-value.js +46 -0
  1295. package/build-module/components/link-control/use-internal-value.js.map +1 -0
  1296. package/build-module/components/link-control/use-rich-url-data.js +1 -1
  1297. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1298. package/build-module/components/link-control/use-search-handler.js +10 -23
  1299. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1300. package/build-module/components/list-view/appender.js +17 -14
  1301. package/build-module/components/list-view/appender.js.map +1 -1
  1302. package/build-module/components/list-view/aria-referenced-text.js +35 -0
  1303. package/build-module/components/list-view/aria-referenced-text.js.map +1 -0
  1304. package/build-module/components/list-view/block-contents.js +40 -38
  1305. package/build-module/components/list-view/block-contents.js.map +1 -1
  1306. package/build-module/components/list-view/block-select-button.js +65 -22
  1307. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1308. package/build-module/components/list-view/block.js +131 -120
  1309. package/build-module/components/list-view/block.js.map +1 -1
  1310. package/build-module/components/list-view/branch.js +6 -8
  1311. package/build-module/components/list-view/branch.js.map +1 -1
  1312. package/build-module/components/list-view/drop-indicator.js +4 -5
  1313. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1314. package/build-module/components/list-view/expander.js +3 -4
  1315. package/build-module/components/list-view/expander.js.map +1 -1
  1316. package/build-module/components/list-view/index.js +57 -47
  1317. package/build-module/components/list-view/index.js.map +1 -1
  1318. package/build-module/components/list-view/leaf.js +10 -11
  1319. package/build-module/components/list-view/leaf.js.map +1 -1
  1320. package/build-module/components/list-view/use-block-selection.js +4 -6
  1321. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1322. package/build-module/components/list-view/use-list-view-client-ids.js +28 -8
  1323. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1324. package/build-module/components/list-view/use-list-view-drop-zone.js +25 -13
  1325. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1326. package/build-module/components/list-view/use-list-view-expand-selected-item.js +4 -5
  1327. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1328. package/build-module/components/list-view/use-list-view-scroll-into-view.js +5 -6
  1329. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1330. package/build-module/components/media-placeholder/index.js +71 -92
  1331. package/build-module/components/media-placeholder/index.js.map +1 -1
  1332. package/build-module/components/media-placeholder/index.native.js +5 -6
  1333. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1334. package/build-module/components/media-replace-flow/index.js +94 -107
  1335. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1336. package/build-module/components/media-upload/check.js +4 -5
  1337. package/build-module/components/media-upload/check.js.map +1 -1
  1338. package/build-module/components/media-upload/index.native.js +1 -1
  1339. package/build-module/components/media-upload/index.native.js.map +1 -1
  1340. package/build-module/components/multi-selection-inspector/index.js +3 -4
  1341. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1342. package/build-module/components/navigable-toolbar/index.js +16 -15
  1343. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1344. package/build-module/components/observe-typing/index.js +3 -4
  1345. package/build-module/components/observe-typing/index.js.map +1 -1
  1346. package/build-module/components/panel-color-settings/index.js +4 -5
  1347. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1348. package/build-module/components/plain-text/index.js +4 -6
  1349. package/build-module/components/plain-text/index.js.map +1 -1
  1350. package/build-module/components/plain-text/index.native.js +8 -14
  1351. package/build-module/components/plain-text/index.native.js.map +1 -1
  1352. package/build-module/components/preview-options/index.js +8 -9
  1353. package/build-module/components/preview-options/index.js.map +1 -1
  1354. package/build-module/components/provider/block-refs-provider.js +3 -4
  1355. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1356. package/build-module/components/provider/use-block-sync.js +7 -8
  1357. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1358. package/build-module/components/provider/with-registry-provider.js +5 -7
  1359. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1360. package/build-module/components/publish-date-time-picker/index.js +6 -9
  1361. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1362. package/build-module/components/recursion-provider/index.js +7 -11
  1363. package/build-module/components/recursion-provider/index.js.map +1 -1
  1364. package/build-module/components/resizable-box-popover/index.js +5 -6
  1365. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1366. package/build-module/components/responsive-block-control/label.js +5 -6
  1367. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1368. package/build-module/components/rich-text/embed-handler-picker.native.js +6 -10
  1369. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1370. package/build-module/components/rich-text/format-edit.js +7 -8
  1371. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1372. package/build-module/components/rich-text/format-toolbar/index.js +9 -18
  1373. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1374. package/build-module/components/rich-text/format-toolbar-container.js +13 -16
  1375. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1376. package/build-module/components/rich-text/index.js +43 -47
  1377. package/build-module/components/rich-text/index.js.map +1 -1
  1378. package/build-module/components/rich-text/index.native.js +130 -157
  1379. package/build-module/components/rich-text/index.native.js.map +1 -1
  1380. package/build-module/components/rich-text/input-event.js +4 -5
  1381. package/build-module/components/rich-text/input-event.js.map +1 -1
  1382. package/build-module/components/rich-text/shortcut.js +5 -6
  1383. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1384. package/build-module/components/rich-text/split-value.js +8 -10
  1385. package/build-module/components/rich-text/split-value.js.map +1 -1
  1386. package/build-module/components/rich-text/toolbar-button.js +6 -7
  1387. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1388. package/build-module/components/rich-text/use-before-input-rules.js +1 -4
  1389. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1390. package/build-module/components/rich-text/use-enter.js +3 -6
  1391. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1392. package/build-module/components/rich-text/use-firefox-compat.js +29 -1
  1393. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1394. package/build-module/components/rich-text/use-format-types.js +11 -17
  1395. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1396. package/build-module/components/rich-text/use-input-rules.js +9 -15
  1397. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1398. package/build-module/components/rich-text/use-mark-persistent.js +4 -5
  1399. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1400. package/build-module/components/rich-text/use-paste-handler.js +5 -7
  1401. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1402. package/build-module/components/rich-text/utils.js +5 -7
  1403. package/build-module/components/rich-text/utils.js.map +1 -1
  1404. package/build-module/components/skip-to-selected-block/index.js +3 -4
  1405. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1406. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +27 -0
  1407. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -0
  1408. package/build-module/components/spacing-sizes-control/index.js +62 -63
  1409. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1410. package/build-module/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +21 -22
  1411. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -0
  1412. package/build-module/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +21 -21
  1413. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -0
  1414. package/build-module/components/spacing-sizes-control/input-controls/single.js +40 -0
  1415. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -0
  1416. package/build-module/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +53 -70
  1417. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -0
  1418. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +73 -0
  1419. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -0
  1420. package/build-module/components/spacing-sizes-control/utils.js +196 -25
  1421. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1422. package/build-module/components/text-decoration-control/index.js +5 -6
  1423. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1424. package/build-module/components/text-transform-control/index.js +5 -6
  1425. package/build-module/components/text-transform-control/index.js.map +1 -1
  1426. package/build-module/components/tool-selector/index.js +13 -16
  1427. package/build-module/components/tool-selector/index.js.map +1 -1
  1428. package/build-module/components/typewriter/index.js +6 -9
  1429. package/build-module/components/typewriter/index.js.map +1 -1
  1430. package/build-module/components/ungroup-button/index.native.js +11 -14
  1431. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1432. package/build-module/components/unit-control/index.js +4 -5
  1433. package/build-module/components/unit-control/index.js.map +1 -1
  1434. package/build-module/components/url-input/index.js +15 -23
  1435. package/build-module/components/url-input/index.js.map +1 -1
  1436. package/build-module/components/url-input/index.native.js +6 -8
  1437. package/build-module/components/url-input/index.native.js.map +1 -1
  1438. package/build-module/components/url-popover/image-url-input-ui.js +12 -15
  1439. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1440. package/build-module/components/url-popover/index.js +12 -14
  1441. package/build-module/components/url-popover/index.js.map +1 -1
  1442. package/build-module/components/url-popover/link-editor.js +7 -8
  1443. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1444. package/build-module/components/url-popover/link-viewer-url.js +5 -6
  1445. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1446. package/build-module/components/url-popover/link-viewer.js +8 -9
  1447. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1448. package/build-module/components/use-block-display-information/index.js +2 -2
  1449. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1450. package/build-module/components/use-block-drop-zone/index.js +41 -39
  1451. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1452. package/build-module/components/use-block-drop-zone/index.native.js +8 -11
  1453. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1454. package/build-module/components/use-moving-animation/index.js +9 -12
  1455. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1456. package/build-module/components/use-on-block-drop/index.js +2 -6
  1457. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1458. package/build-module/components/use-on-block-drop/index.native.js +8 -10
  1459. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  1460. package/build-module/components/use-paste-styles/index.js +2 -6
  1461. package/build-module/components/use-paste-styles/index.js.map +1 -1
  1462. package/build-module/components/use-resize-canvas/index.js +8 -1
  1463. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  1464. package/build-module/components/warning/index.js +6 -7
  1465. package/build-module/components/warning/index.js.map +1 -1
  1466. package/build-module/components/warning/index.native.js +9 -10
  1467. package/build-module/components/warning/index.native.js.map +1 -1
  1468. package/build-module/components/writing-flow/index.js +4 -5
  1469. package/build-module/components/writing-flow/index.js.map +1 -1
  1470. package/build-module/components/writing-flow/use-arrow-nav.js +13 -7
  1471. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  1472. package/build-module/components/writing-flow/use-drag-selection.js +4 -6
  1473. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  1474. package/build-module/components/writing-flow/use-tab-nav.js +9 -6
  1475. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  1476. package/build-module/hooks/align.js +11 -21
  1477. package/build-module/hooks/align.js.map +1 -1
  1478. package/build-module/hooks/anchor.js +5 -3
  1479. package/build-module/hooks/anchor.js.map +1 -1
  1480. package/build-module/hooks/aria-label.js +1 -3
  1481. package/build-module/hooks/aria-label.js.map +1 -1
  1482. package/build-module/hooks/behaviors.js +129 -0
  1483. package/build-module/hooks/behaviors.js.map +1 -0
  1484. package/build-module/hooks/border.js +25 -38
  1485. package/build-module/hooks/border.js.map +1 -1
  1486. package/build-module/hooks/color.js +22 -37
  1487. package/build-module/hooks/color.js.map +1 -1
  1488. package/build-module/hooks/content-lock-ui.js +23 -27
  1489. package/build-module/hooks/content-lock-ui.js.map +1 -1
  1490. package/build-module/hooks/contrast-checker.js +4 -7
  1491. package/build-module/hooks/contrast-checker.js.map +1 -1
  1492. package/build-module/hooks/custom-class-name.js +4 -4
  1493. package/build-module/hooks/custom-class-name.js.map +1 -1
  1494. package/build-module/hooks/dimensions.js +6 -37
  1495. package/build-module/hooks/dimensions.js.map +1 -1
  1496. package/build-module/hooks/duotone.js +35 -50
  1497. package/build-module/hooks/duotone.js.map +1 -1
  1498. package/build-module/hooks/font-family.js +5 -6
  1499. package/build-module/hooks/font-family.js.map +1 -1
  1500. package/build-module/hooks/font-size.js +14 -21
  1501. package/build-module/hooks/font-size.js.map +1 -1
  1502. package/build-module/hooks/gap.js +5 -6
  1503. package/build-module/hooks/gap.js.map +1 -1
  1504. package/build-module/hooks/index.js +1 -0
  1505. package/build-module/hooks/index.js.map +1 -1
  1506. package/build-module/hooks/layout.js +49 -68
  1507. package/build-module/hooks/layout.js.map +1 -1
  1508. package/build-module/hooks/line-height.js +5 -8
  1509. package/build-module/hooks/line-height.js.map +1 -1
  1510. package/build-module/hooks/lock.js +2 -2
  1511. package/build-module/hooks/lock.js.map +1 -1
  1512. package/build-module/hooks/margin.js +6 -9
  1513. package/build-module/hooks/margin.js.map +1 -1
  1514. package/build-module/hooks/metadata-name.js +4 -5
  1515. package/build-module/hooks/metadata-name.js.map +1 -1
  1516. package/build-module/hooks/metadata.js +3 -7
  1517. package/build-module/hooks/metadata.js.map +1 -1
  1518. package/build-module/hooks/padding.js +6 -9
  1519. package/build-module/hooks/padding.js.map +1 -1
  1520. package/build-module/hooks/position.js +26 -40
  1521. package/build-module/hooks/position.js.map +1 -1
  1522. package/build-module/hooks/settings.js +1 -3
  1523. package/build-module/hooks/settings.js.map +1 -1
  1524. package/build-module/hooks/style.js +11 -19
  1525. package/build-module/hooks/style.js.map +1 -1
  1526. package/build-module/hooks/supports.js +3 -5
  1527. package/build-module/hooks/supports.js.map +1 -1
  1528. package/build-module/hooks/typography.js +18 -27
  1529. package/build-module/hooks/typography.js.map +1 -1
  1530. package/build-module/hooks/typography.native.js +1 -2
  1531. package/build-module/hooks/typography.native.js.map +1 -1
  1532. package/build-module/hooks/use-border-props.js +1 -3
  1533. package/build-module/hooks/use-border-props.js.map +1 -1
  1534. package/build-module/hooks/use-color-props.js +6 -8
  1535. package/build-module/hooks/use-color-props.js.map +1 -1
  1536. package/build-module/hooks/use-editor-wrapper-styles.native.js +34 -39
  1537. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1538. package/build-module/hooks/use-spacing-props.js +1 -1
  1539. package/build-module/hooks/use-spacing-props.js.map +1 -1
  1540. package/build-module/hooks/use-typography-props.js +8 -12
  1541. package/build-module/hooks/use-typography-props.js.map +1 -1
  1542. package/build-module/hooks/utils.js +7 -19
  1543. package/build-module/hooks/utils.js.map +1 -1
  1544. package/build-module/layouts/constrained.js +22 -27
  1545. package/build-module/layouts/constrained.js.map +1 -1
  1546. package/build-module/layouts/flex.js +43 -54
  1547. package/build-module/layouts/flex.js.map +1 -1
  1548. package/build-module/layouts/flow.js +10 -13
  1549. package/build-module/layouts/flow.js.map +1 -1
  1550. package/build-module/layouts/grid.js +45 -25
  1551. package/build-module/layouts/grid.js.map +1 -1
  1552. package/build-module/layouts/index.js +1 -2
  1553. package/build-module/layouts/index.js.map +1 -1
  1554. package/build-module/layouts/utils.js +3 -9
  1555. package/build-module/layouts/utils.js.map +1 -1
  1556. package/build-module/private-apis.js +3 -5
  1557. package/build-module/private-apis.js.map +1 -1
  1558. package/build-module/store/actions.js +253 -336
  1559. package/build-module/store/actions.js.map +1 -1
  1560. package/build-module/store/array.js +1 -2
  1561. package/build-module/store/array.js.map +1 -1
  1562. package/build-module/store/private-actions.js +40 -2
  1563. package/build-module/store/private-actions.js.map +1 -1
  1564. package/build-module/store/private-selectors.js +97 -3
  1565. package/build-module/store/private-selectors.js.map +1 -1
  1566. package/build-module/store/reducer.js +97 -166
  1567. package/build-module/store/reducer.js.map +1 -1
  1568. package/build-module/store/selectors.js +168 -230
  1569. package/build-module/store/selectors.js.map +1 -1
  1570. package/build-module/utils/block-variation-transforms.js +4 -7
  1571. package/build-module/utils/block-variation-transforms.js.map +1 -1
  1572. package/build-module/utils/math.js +1 -2
  1573. package/build-module/utils/math.js.map +1 -1
  1574. package/build-module/utils/object.js +1 -4
  1575. package/build-module/utils/object.js.map +1 -1
  1576. package/build-module/utils/order-inserter-block-items.js +30 -0
  1577. package/build-module/utils/order-inserter-block-items.js.map +1 -0
  1578. package/build-module/utils/parse-css-unit-to-px.js +3 -6
  1579. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  1580. package/build-module/utils/pasting.js +5 -8
  1581. package/build-module/utils/pasting.js.map +1 -1
  1582. package/build-module/utils/pre-parse-patterns.js +1 -1
  1583. package/build-module/utils/pre-parse-patterns.js.map +1 -1
  1584. package/build-module/utils/sorting.js +1 -2
  1585. package/build-module/utils/sorting.js.map +1 -1
  1586. package/build-module/utils/transform-styles/index.js +5 -7
  1587. package/build-module/utils/transform-styles/index.js.map +1 -1
  1588. package/build-module/utils/transform-styles/transforms/wrap.js +25 -28
  1589. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  1590. package/build-style/content-rtl.css +33 -17
  1591. package/build-style/content.css +33 -17
  1592. package/build-style/default-editor-styles-rtl.css +1 -1
  1593. package/build-style/default-editor-styles.css +1 -1
  1594. package/build-style/style-rtl.css +46 -157
  1595. package/build-style/style.css +47 -157
  1596. package/package.json +32 -31
  1597. package/src/autocompleters/block.js +15 -7
  1598. package/src/components/block-breadcrumb/index.js +11 -3
  1599. package/src/components/block-controls/fill.js +15 -17
  1600. package/src/components/block-controls/slot.js +21 -18
  1601. package/src/components/block-controls/slot.native.js +3 -8
  1602. package/src/components/block-draggable/index.js +2 -1
  1603. package/src/components/block-edit/test/edit.js +1 -1
  1604. package/src/components/block-editing-mode/index.js +71 -0
  1605. package/src/components/block-inspector/index.js +1 -0
  1606. package/src/components/block-list/block-list-block-context.js +6 -0
  1607. package/src/components/block-list/block.js +38 -56
  1608. package/src/components/block-list/block.native.js +30 -41
  1609. package/src/components/block-list/content.scss +8 -12
  1610. package/src/components/block-list/index.native.js +164 -153
  1611. package/src/components/block-list/test/index.native.js +2 -2
  1612. package/src/components/block-list/use-block-props/index.js +7 -2
  1613. package/src/components/block-list/use-in-between-inserter.js +7 -3
  1614. package/src/components/block-list-appender/index.js +26 -5
  1615. package/src/components/block-lock/toolbar.js +2 -8
  1616. package/src/components/block-mobile-toolbar/block-actions-menu.native.js +23 -0
  1617. package/src/components/block-mover/style.scss +1 -0
  1618. package/src/components/block-settings-menu/block-settings-dropdown.js +81 -41
  1619. package/src/components/block-styles/preview-panel.js +1 -3
  1620. package/src/components/block-switcher/block-transformations-menu.js +12 -0
  1621. package/src/components/block-switcher/block-variation-transformations.js +115 -0
  1622. package/src/components/block-switcher/index.js +38 -5
  1623. package/src/components/block-switcher/pattern-transformations-menu.js +5 -5
  1624. package/src/components/block-switcher/style.scss +6 -5
  1625. package/src/components/block-toolbar/index.js +10 -11
  1626. package/src/components/block-tools/block-contextual-toolbar.js +4 -5
  1627. package/src/components/block-tools/insertion-point.js +23 -9
  1628. package/src/components/block-tools/selected-block-popover.js +6 -0
  1629. package/src/components/button-block-appender/content.scss +22 -0
  1630. package/src/components/color-palette/test/__snapshots__/control.js.snap +66 -50
  1631. package/src/components/color-palette/with-color-context.js +2 -6
  1632. package/src/components/colors-gradients/control.js +3 -3
  1633. package/src/components/colors-gradients/panel-color-gradient-settings.js +4 -5
  1634. package/src/components/convert-to-group-buttons/index.js +9 -2
  1635. package/src/components/convert-to-group-buttons/index.native.js +79 -1
  1636. package/src/components/convert-to-group-buttons/use-convert-to-group-button-props.js +32 -38
  1637. package/src/components/global-styles/dimensions-panel.js +17 -7
  1638. package/src/components/global-styles/get-block-css-selector.js +2 -2
  1639. package/src/components/global-styles/style.scss +3 -0
  1640. package/src/components/global-styles/test/typography-utils.js +139 -1
  1641. package/src/components/global-styles/typography-utils.js +53 -28
  1642. package/src/components/global-styles/use-global-styles-output.js +18 -8
  1643. package/src/components/global-styles/utils.js +9 -3
  1644. package/src/components/iframe/index.js +61 -73
  1645. package/src/components/iframe/use-compatibility-styles.js +34 -18
  1646. package/src/components/inner-blocks/README.md +5 -0
  1647. package/src/components/inner-blocks/index.js +2 -0
  1648. package/src/components/inner-blocks/index.native.js +16 -6
  1649. package/src/components/inner-blocks/use-nested-settings-update.js +20 -3
  1650. package/src/components/inserter/index.js +1 -9
  1651. package/src/components/inserter/quick-inserter.js +0 -2
  1652. package/src/components/inserter/search-results.js +32 -6
  1653. package/src/components/inspector-controls/README.md +1 -1
  1654. package/src/components/inspector-controls/fill.js +2 -6
  1655. package/src/components/inspector-controls-tabs/index.js +0 -1
  1656. package/src/components/inspector-controls-tabs/use-inspector-controls-tabs.js +0 -1
  1657. package/src/components/link-control/index.js +71 -33
  1658. package/src/components/link-control/is-url-like.js +40 -3
  1659. package/src/components/link-control/search-results.js +4 -14
  1660. package/src/components/link-control/settings-drawer.js +2 -37
  1661. package/src/components/link-control/settings.js +2 -2
  1662. package/src/components/link-control/style.scss +5 -6
  1663. package/src/components/link-control/test/index.js +169 -61
  1664. package/src/components/link-control/test/is-url-like.js +66 -0
  1665. package/src/components/link-control/use-internal-value.js +60 -0
  1666. package/src/components/link-control/use-search-handler.js +10 -27
  1667. package/src/components/list-view/appender.js +6 -7
  1668. package/src/components/list-view/aria-referenced-text.js +30 -0
  1669. package/src/components/list-view/block-contents.js +10 -3
  1670. package/src/components/list-view/block-select-button.js +59 -1
  1671. package/src/components/list-view/block.js +69 -45
  1672. package/src/components/list-view/branch.js +1 -7
  1673. package/src/components/list-view/index.js +45 -22
  1674. package/src/components/list-view/style.scss +2 -10
  1675. package/src/components/list-view/test/use-list-view-drop-zone.js +38 -1
  1676. package/src/components/list-view/use-block-selection.js +2 -2
  1677. package/src/components/list-view/use-list-view-client-ids.js +21 -4
  1678. package/src/components/list-view/use-list-view-drop-zone.js +22 -4
  1679. package/src/components/media-replace-flow/test/index.js +1 -1
  1680. package/src/components/navigable-toolbar/index.js +7 -5
  1681. package/src/components/publish-date-time-picker/index.js +0 -2
  1682. package/src/components/rich-text/index.js +1 -1
  1683. package/src/components/rich-text/use-firefox-compat.js +27 -1
  1684. package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +26 -0
  1685. package/src/components/spacing-sizes-control/index.js +85 -71
  1686. package/src/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +14 -13
  1687. package/src/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +15 -14
  1688. package/src/components/spacing-sizes-control/input-controls/single.js +40 -0
  1689. package/src/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +55 -80
  1690. package/src/components/spacing-sizes-control/sides-dropdown/index.js +91 -0
  1691. package/src/components/spacing-sizes-control/style.scss +28 -100
  1692. package/src/components/spacing-sizes-control/test/utils.js +233 -4
  1693. package/src/components/spacing-sizes-control/utils.js +203 -20
  1694. package/src/components/ungroup-button/index.native.js +2 -2
  1695. package/src/components/url-input/README.md +6 -0
  1696. package/src/components/url-input/index.js +1 -0
  1697. package/src/components/use-block-drop-zone/index.js +31 -17
  1698. package/src/components/use-resize-canvas/index.js +9 -1
  1699. package/src/components/writing-flow/test/index.js +15 -0
  1700. package/src/components/writing-flow/use-arrow-nav.js +17 -4
  1701. package/src/components/writing-flow/use-tab-nav.js +14 -3
  1702. package/src/hooks/align.js +3 -11
  1703. package/src/hooks/anchor.js +3 -1
  1704. package/src/hooks/behaviors.js +160 -0
  1705. package/src/hooks/custom-class-name.js +23 -19
  1706. package/src/hooks/dimensions.js +0 -40
  1707. package/src/hooks/duotone.js +3 -11
  1708. package/src/hooks/index.js +1 -0
  1709. package/src/hooks/layout.js +14 -19
  1710. package/src/hooks/style.js +3 -1
  1711. package/src/hooks/utils.js +8 -7
  1712. package/src/layouts/grid.js +29 -3
  1713. package/src/private-apis.js +2 -4
  1714. package/src/store/private-actions.js +39 -0
  1715. package/src/store/private-selectors.js +117 -0
  1716. package/src/store/reducer.js +33 -8
  1717. package/src/store/selectors.js +56 -35
  1718. package/src/store/test/private-actions.js +32 -1
  1719. package/src/store/test/private-selectors.js +333 -0
  1720. package/src/store/test/reducer.js +48 -7
  1721. package/src/store/test/selectors.js +99 -0
  1722. package/src/style.scss +0 -3
  1723. package/src/utils/order-inserter-block-items.js +26 -0
  1724. package/build/components/block-list/block-list-compact.native.js +0 -75
  1725. package/build/components/block-list/block-list-compact.native.js.map +0 -1
  1726. package/build/components/link-control/use-internal-input-value.js +0 -27
  1727. package/build/components/link-control/use-internal-input-value.js.map +0 -1
  1728. package/build/components/off-canvas-editor/appender.js +0 -125
  1729. package/build/components/off-canvas-editor/appender.js.map +0 -1
  1730. package/build/components/off-canvas-editor/block-contents.js +0 -141
  1731. package/build/components/off-canvas-editor/block-contents.js.map +0 -1
  1732. package/build/components/off-canvas-editor/block-select-button.js +0 -126
  1733. package/build/components/off-canvas-editor/block-select-button.js.map +0 -1
  1734. package/build/components/off-canvas-editor/block.js +0 -297
  1735. package/build/components/off-canvas-editor/block.js.map +0 -1
  1736. package/build/components/off-canvas-editor/branch.js +0 -197
  1737. package/build/components/off-canvas-editor/branch.js.map +0 -1
  1738. package/build/components/off-canvas-editor/context.js +0 -19
  1739. package/build/components/off-canvas-editor/context.js.map +0 -1
  1740. package/build/components/off-canvas-editor/drop-indicator.js +0 -118
  1741. package/build/components/off-canvas-editor/drop-indicator.js.map +0 -1
  1742. package/build/components/off-canvas-editor/expander.js +0 -41
  1743. package/build/components/off-canvas-editor/expander.js.map +0 -1
  1744. package/build/components/off-canvas-editor/index.js +0 -236
  1745. package/build/components/off-canvas-editor/index.js.map +0 -1
  1746. package/build/components/off-canvas-editor/leaf-more-menu.js +0 -148
  1747. package/build/components/off-canvas-editor/leaf-more-menu.js.map +0 -1
  1748. package/build/components/off-canvas-editor/leaf.js +0 -60
  1749. package/build/components/off-canvas-editor/leaf.js.map +0 -1
  1750. package/build/components/off-canvas-editor/link-ui.js +0 -186
  1751. package/build/components/off-canvas-editor/link-ui.js.map +0 -1
  1752. package/build/components/off-canvas-editor/update-attributes.js +0 -108
  1753. package/build/components/off-canvas-editor/update-attributes.js.map +0 -1
  1754. package/build/components/off-canvas-editor/use-block-selection.js +0 -139
  1755. package/build/components/off-canvas-editor/use-block-selection.js.map +0 -1
  1756. package/build/components/off-canvas-editor/use-inserted-block.js +0 -58
  1757. package/build/components/off-canvas-editor/use-inserted-block.js.map +0 -1
  1758. package/build/components/off-canvas-editor/use-list-view-client-ids.js +0 -33
  1759. package/build/components/off-canvas-editor/use-list-view-client-ids.js.map +0 -1
  1760. package/build/components/off-canvas-editor/use-list-view-drop-zone.js +0 -235
  1761. package/build/components/off-canvas-editor/use-list-view-drop-zone.js.map +0 -1
  1762. package/build/components/off-canvas-editor/use-list-view-expand-selected-item.js +0 -60
  1763. package/build/components/off-canvas-editor/use-list-view-expand-selected-item.js.map +0 -1
  1764. package/build/components/off-canvas-editor/utils.js +0 -60
  1765. package/build/components/off-canvas-editor/utils.js.map +0 -1
  1766. package/build/components/spacing-sizes-control/all-input-control.js +0 -57
  1767. package/build/components/spacing-sizes-control/all-input-control.js.map +0 -1
  1768. package/build/components/spacing-sizes-control/axial-input-controls.js.map +0 -1
  1769. package/build/components/spacing-sizes-control/input-controls.js.map +0 -1
  1770. package/build/components/spacing-sizes-control/linked-button.js +0 -37
  1771. package/build/components/spacing-sizes-control/linked-button.js.map +0 -1
  1772. package/build/components/spacing-sizes-control/spacing-input-control.js.map +0 -1
  1773. package/build/components/ungroup-button/icon.js +0 -31
  1774. package/build/components/ungroup-button/icon.js.map +0 -1
  1775. package/build-module/components/block-list/block-list-compact.native.js +0 -60
  1776. package/build-module/components/block-list/block-list-compact.native.js.map +0 -1
  1777. package/build-module/components/link-control/use-internal-input-value.js +0 -19
  1778. package/build-module/components/link-control/use-internal-input-value.js.map +0 -1
  1779. package/build-module/components/off-canvas-editor/appender.js +0 -108
  1780. package/build-module/components/off-canvas-editor/appender.js.map +0 -1
  1781. package/build-module/components/off-canvas-editor/block-contents.js +0 -121
  1782. package/build-module/components/off-canvas-editor/block-contents.js.map +0 -1
  1783. package/build-module/components/off-canvas-editor/block-select-button.js +0 -107
  1784. package/build-module/components/off-canvas-editor/block-select-button.js.map +0 -1
  1785. package/build-module/components/off-canvas-editor/block.js +0 -273
  1786. package/build-module/components/off-canvas-editor/block.js.map +0 -1
  1787. package/build-module/components/off-canvas-editor/branch.js +0 -179
  1788. package/build-module/components/off-canvas-editor/branch.js.map +0 -1
  1789. package/build-module/components/off-canvas-editor/context.js +0 -7
  1790. package/build-module/components/off-canvas-editor/context.js.map +0 -1
  1791. package/build-module/components/off-canvas-editor/drop-indicator.js +0 -111
  1792. package/build-module/components/off-canvas-editor/drop-indicator.js.map +0 -1
  1793. package/build-module/components/off-canvas-editor/expander.js +0 -32
  1794. package/build-module/components/off-canvas-editor/expander.js.map +0 -1
  1795. package/build-module/components/off-canvas-editor/index.js +0 -213
  1796. package/build-module/components/off-canvas-editor/index.js.map +0 -1
  1797. package/build-module/components/off-canvas-editor/leaf-more-menu.js +0 -130
  1798. package/build-module/components/off-canvas-editor/leaf-more-menu.js.map +0 -1
  1799. package/build-module/components/off-canvas-editor/leaf.js +0 -45
  1800. package/build-module/components/off-canvas-editor/leaf.js.map +0 -1
  1801. package/build-module/components/off-canvas-editor/link-ui.js +0 -166
  1802. package/build-module/components/off-canvas-editor/link-ui.js.map +0 -1
  1803. package/build-module/components/off-canvas-editor/update-attributes.js +0 -97
  1804. package/build-module/components/off-canvas-editor/update-attributes.js.map +0 -1
  1805. package/build-module/components/off-canvas-editor/use-block-selection.js +0 -124
  1806. package/build-module/components/off-canvas-editor/use-block-selection.js.map +0 -1
  1807. package/build-module/components/off-canvas-editor/use-inserted-block.js +0 -47
  1808. package/build-module/components/off-canvas-editor/use-inserted-block.js.map +0 -1
  1809. package/build-module/components/off-canvas-editor/use-list-view-client-ids.js +0 -24
  1810. package/build-module/components/off-canvas-editor/use-list-view-client-ids.js.map +0 -1
  1811. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js +0 -220
  1812. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js.map +0 -1
  1813. package/build-module/components/off-canvas-editor/use-list-view-expand-selected-item.js +0 -50
  1814. package/build-module/components/off-canvas-editor/use-list-view-expand-selected-item.js.map +0 -1
  1815. package/build-module/components/off-canvas-editor/utils.js +0 -44
  1816. package/build-module/components/off-canvas-editor/utils.js.map +0 -1
  1817. package/build-module/components/spacing-sizes-control/all-input-control.js +0 -45
  1818. package/build-module/components/spacing-sizes-control/all-input-control.js.map +0 -1
  1819. package/build-module/components/spacing-sizes-control/axial-input-controls.js.map +0 -1
  1820. package/build-module/components/spacing-sizes-control/input-controls.js.map +0 -1
  1821. package/build-module/components/spacing-sizes-control/linked-button.js +0 -27
  1822. package/build-module/components/spacing-sizes-control/linked-button.js.map +0 -1
  1823. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +0 -1
  1824. package/build-module/components/ungroup-button/icon.js +0 -22
  1825. package/build-module/components/ungroup-button/icon.js.map +0 -1
  1826. package/src/components/block-list/block-list-compact.native.js +0 -63
  1827. package/src/components/link-control/use-internal-input-value.js +0 -23
  1828. package/src/components/off-canvas-editor/README.md +0 -5
  1829. package/src/components/off-canvas-editor/appender.js +0 -124
  1830. package/src/components/off-canvas-editor/block-contents.js +0 -156
  1831. package/src/components/off-canvas-editor/block-select-button.js +0 -128
  1832. package/src/components/off-canvas-editor/block.js +0 -347
  1833. package/src/components/off-canvas-editor/branch.js +0 -238
  1834. package/src/components/off-canvas-editor/context.js +0 -8
  1835. package/src/components/off-canvas-editor/drop-indicator.js +0 -126
  1836. package/src/components/off-canvas-editor/expander.js +0 -26
  1837. package/src/components/off-canvas-editor/index.js +0 -271
  1838. package/src/components/off-canvas-editor/leaf-more-menu.js +0 -158
  1839. package/src/components/off-canvas-editor/leaf.js +0 -52
  1840. package/src/components/off-canvas-editor/link-ui.js +0 -167
  1841. package/src/components/off-canvas-editor/style.scss +0 -34
  1842. package/src/components/off-canvas-editor/test/use-inserted-block.js +0 -108
  1843. package/src/components/off-canvas-editor/test/utils.js +0 -50
  1844. package/src/components/off-canvas-editor/update-attributes.js +0 -99
  1845. package/src/components/off-canvas-editor/use-block-selection.js +0 -169
  1846. package/src/components/off-canvas-editor/use-inserted-block.js +0 -47
  1847. package/src/components/off-canvas-editor/use-list-view-client-ids.js +0 -29
  1848. package/src/components/off-canvas-editor/use-list-view-drop-zone.js +0 -260
  1849. package/src/components/off-canvas-editor/use-list-view-expand-selected-item.js +0 -58
  1850. package/src/components/off-canvas-editor/utils.js +0 -58
  1851. package/src/components/spacing-sizes-control/all-input-control.js +0 -44
  1852. package/src/components/spacing-sizes-control/linked-button.js +0 -24
  1853. package/src/components/ungroup-button/icon.js +0 -26
@@ -38,13 +38,11 @@ const getColorByProperty = (colors, property, value) => {
38
38
  return matchedColor;
39
39
  };
40
40
 
41
- export const getMultiOriginColor = _ref => {
42
- let {
43
- colors,
44
- namedColor,
45
- customColor
46
- } = _ref;
47
-
41
+ export const getMultiOriginColor = ({
42
+ colors,
43
+ namedColor,
44
+ customColor
45
+ }) => {
48
46
  // Search each origin (default, theme, or user) for matching color by name.
49
47
  if (namedColor) {
50
48
  const colorObject = getColorByProperty(colors, 'slug', namedColor);
@@ -79,17 +77,15 @@ function getColorSlugFromVariable(value) {
79
77
  }
80
78
 
81
79
  function styleToAttributes(style) {
82
- var _style$border;
83
-
84
- if (hasSplitBorders(style === null || style === void 0 ? void 0 : style.border)) {
80
+ if (hasSplitBorders(style?.border)) {
85
81
  return {
86
82
  style,
87
83
  borderColor: undefined
88
84
  };
89
85
  }
90
86
 
91
- const borderColorValue = style === null || style === void 0 ? void 0 : (_style$border = style.border) === null || _style$border === void 0 ? void 0 : _style$border.color;
92
- const borderColorSlug = borderColorValue !== null && borderColorValue !== void 0 && borderColorValue.startsWith('var:preset|color|') ? borderColorValue.substring('var:preset|color|'.length) : undefined;
87
+ const borderColorValue = style?.border?.color;
88
+ const borderColorSlug = borderColorValue?.startsWith('var:preset|color|') ? borderColorValue.substring('var:preset|color|'.length) : undefined;
93
89
  const updatedStyle = { ...style
94
90
  };
95
91
  updatedStyle.border = { ...updatedStyle.border,
@@ -102,24 +98,21 @@ function styleToAttributes(style) {
102
98
  }
103
99
 
104
100
  function attributesToStyle(attributes) {
105
- var _attributes$style, _attributes$style2, _attributes$style3, _attributes$style3$bo;
106
-
107
- if (hasSplitBorders((_attributes$style = attributes.style) === null || _attributes$style === void 0 ? void 0 : _attributes$style.border)) {
101
+ if (hasSplitBorders(attributes.style?.border)) {
108
102
  return attributes.style;
109
103
  }
110
104
 
111
105
  return { ...attributes.style,
112
- border: { ...((_attributes$style2 = attributes.style) === null || _attributes$style2 === void 0 ? void 0 : _attributes$style2.border),
113
- color: attributes.borderColor ? 'var:preset|color|' + attributes.borderColor : (_attributes$style3 = attributes.style) === null || _attributes$style3 === void 0 ? void 0 : (_attributes$style3$bo = _attributes$style3.border) === null || _attributes$style3$bo === void 0 ? void 0 : _attributes$style3$bo.color
106
+ border: { ...attributes.style?.border,
107
+ color: attributes.borderColor ? 'var:preset|color|' + attributes.borderColor : attributes.style?.border?.color
114
108
  }
115
109
  };
116
110
  }
117
111
 
118
- function BordersInspectorControl(_ref2) {
119
- let {
120
- children,
121
- resetAllFilter
122
- } = _ref2;
112
+ function BordersInspectorControl({
113
+ children,
114
+ resetAllFilter
115
+ }) {
123
116
  const attributesResetAllFilter = useCallback(attributes => {
124
117
  const existingStyle = attributesToStyle(attributes);
125
118
  const updatedStyle = resetAllFilter(existingStyle);
@@ -176,9 +169,7 @@ export function BorderPanel(props) {
176
169
  * @return {boolean} Whether there is support.
177
170
  */
178
171
 
179
- export function hasBorderSupport(blockName) {
180
- let feature = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'any';
181
-
172
+ export function hasBorderSupport(blockName, feature = 'any') {
182
173
  if (Platform.OS !== 'web') {
183
174
  return false;
184
175
  }
@@ -190,10 +181,10 @@ export function hasBorderSupport(blockName) {
190
181
  }
191
182
 
192
183
  if (feature === 'any') {
193
- return !!(support !== null && support !== void 0 && support.color || support !== null && support !== void 0 && support.radius || support !== null && support !== void 0 && support.width || support !== null && support !== void 0 && support.style);
184
+ return !!(support?.color || support?.radius || support?.width || support?.style);
194
185
  }
195
186
 
196
- return !!(support !== null && support !== void 0 && support[feature]);
187
+ return !!support?.[feature];
197
188
  }
198
189
  /**
199
190
  * Returns a new style object where the specified border attribute has been
@@ -207,7 +198,7 @@ export function hasBorderSupport(blockName) {
207
198
 
208
199
  export function removeBorderAttribute(style, attribute) {
209
200
  return cleanEmptyObject({ ...style,
210
- border: { ...(style === null || style === void 0 ? void 0 : style.border),
201
+ border: { ...style?.border,
211
202
  [attribute]: undefined
212
203
  }
213
204
  });
@@ -274,15 +265,13 @@ function addSaveProps(props, blockType, attributes) {
274
265
 
275
266
 
276
267
  export function getBorderClasses(attributes) {
277
- var _style$border2;
278
-
279
268
  const {
280
269
  borderColor,
281
270
  style
282
271
  } = attributes;
283
272
  const borderColorClass = getColorClassName('border-color', borderColor);
284
273
  return classnames({
285
- 'has-border-color': borderColor || (style === null || style === void 0 ? void 0 : (_style$border2 = style.border) === null || _style$border2 === void 0 ? void 0 : _style$border2.color),
274
+ 'has-border-color': borderColor || style?.border?.color,
286
275
  [borderColorClass]: !!borderColorClass
287
276
  });
288
277
  }
@@ -325,8 +314,6 @@ function addEditProps(settings) {
325
314
 
326
315
 
327
316
  export const withBorderColorPaletteStyles = createHigherOrderComponent(BlockListBlock => props => {
328
- var _style$border3, _style$border3$top, _style$border4, _style$border4$right, _style$border5, _style$border5$bottom, _style$border6, _style$border6$left, _props$wrapperProps;
329
-
330
317
  const {
331
318
  name,
332
319
  attributes
@@ -353,25 +340,25 @@ export const withBorderColorPaletteStyles = createHigherOrderComponent(BlockList
353
340
  color: borderTopColor
354
341
  } = getMultiOriginColor({
355
342
  colors,
356
- namedColor: getColorSlugFromVariable(style === null || style === void 0 ? void 0 : (_style$border3 = style.border) === null || _style$border3 === void 0 ? void 0 : (_style$border3$top = _style$border3.top) === null || _style$border3$top === void 0 ? void 0 : _style$border3$top.color)
343
+ namedColor: getColorSlugFromVariable(style?.border?.top?.color)
357
344
  });
358
345
  const {
359
346
  color: borderRightColor
360
347
  } = getMultiOriginColor({
361
348
  colors,
362
- namedColor: getColorSlugFromVariable(style === null || style === void 0 ? void 0 : (_style$border4 = style.border) === null || _style$border4 === void 0 ? void 0 : (_style$border4$right = _style$border4.right) === null || _style$border4$right === void 0 ? void 0 : _style$border4$right.color)
349
+ namedColor: getColorSlugFromVariable(style?.border?.right?.color)
363
350
  });
364
351
  const {
365
352
  color: borderBottomColor
366
353
  } = getMultiOriginColor({
367
354
  colors,
368
- namedColor: getColorSlugFromVariable(style === null || style === void 0 ? void 0 : (_style$border5 = style.border) === null || _style$border5 === void 0 ? void 0 : (_style$border5$bottom = _style$border5.bottom) === null || _style$border5$bottom === void 0 ? void 0 : _style$border5$bottom.color)
355
+ namedColor: getColorSlugFromVariable(style?.border?.bottom?.color)
369
356
  });
370
357
  const {
371
358
  color: borderLeftColor
372
359
  } = getMultiOriginColor({
373
360
  colors,
374
- namedColor: getColorSlugFromVariable(style === null || style === void 0 ? void 0 : (_style$border6 = style.border) === null || _style$border6 === void 0 ? void 0 : (_style$border6$left = _style$border6.left) === null || _style$border6$left === void 0 ? void 0 : _style$border6$left.color)
361
+ namedColor: getColorSlugFromVariable(style?.border?.left?.color)
375
362
  });
376
363
  const extraStyles = {
377
364
  borderTopColor: borderTopColor || borderColorValue,
@@ -381,7 +368,7 @@ export const withBorderColorPaletteStyles = createHigherOrderComponent(BlockList
381
368
  };
382
369
  let wrapperProps = props.wrapperProps;
383
370
  wrapperProps = { ...props.wrapperProps,
384
- style: { ...((_props$wrapperProps = props.wrapperProps) === null || _props$wrapperProps === void 0 ? void 0 : _props$wrapperProps.style),
371
+ style: { ...props.wrapperProps?.style,
385
372
  ...extraStyles
386
373
  }
387
374
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/hooks/border.js"],"names":["classnames","getBlockSupport","__experimentalHasSplitBorders","hasSplitBorders","createHigherOrderComponent","Platform","useCallback","useMemo","addFilter","getColorClassName","InspectorControls","useMultipleOriginColorsAndGradients","cleanEmptyObject","shouldSkipSerialization","useBlockSettings","useHasBorderPanel","BorderPanel","StylesBorderPanel","BORDER_SUPPORT_KEY","getColorByProperty","colors","property","value","matchedColor","some","origin","color","getMultiOriginColor","namedColor","customColor","colorObject","undefined","getColorSlugFromVariable","exec","styleToAttributes","style","border","borderColor","borderColorValue","borderColorSlug","startsWith","substring","length","updatedStyle","attributesToStyle","attributes","BordersInspectorControl","children","resetAllFilter","attributesResetAllFilter","existingStyle","props","clientId","name","setAttributes","settings","isEnabled","onChange","newStyle","defaultControls","hasBorderSupport","blockName","feature","OS","support","radius","width","removeBorderAttribute","attribute","addAttributes","type","addSaveProps","blockType","borderClasses","getBorderClasses","newClassName","className","borderColorClass","addEditProps","existingGetEditWrapperProps","getEditWrapperProps","withBorderColorPaletteStyles","BlockListBlock","borderTopColor","top","borderRightColor","right","borderBottomColor","bottom","borderLeftColor","left","extraStyles","wrapperProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { __experimentalHasSplitBorders as hasSplitBorders } from '@wordpress/components';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { Platform, useCallback, useMemo } from '@wordpress/element';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport { getColorClassName } from '../components/colors';\nimport InspectorControls from '../components/inspector-controls';\nimport useMultipleOriginColorsAndGradients from '../components/colors-gradients/use-multiple-origin-colors-and-gradients';\nimport {\n\tcleanEmptyObject,\n\tshouldSkipSerialization,\n\tuseBlockSettings,\n} from './utils';\nimport {\n\tuseHasBorderPanel,\n\tBorderPanel as StylesBorderPanel,\n} from '../components/global-styles';\n\nexport const BORDER_SUPPORT_KEY = '__experimentalBorder';\n\nconst getColorByProperty = ( colors, property, value ) => {\n\tlet matchedColor;\n\n\tcolors.some( ( origin ) =>\n\t\torigin.colors.some( ( color ) => {\n\t\t\tif ( color[ property ] === value ) {\n\t\t\t\tmatchedColor = color;\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t} )\n\t);\n\n\treturn matchedColor;\n};\n\nexport const getMultiOriginColor = ( { colors, namedColor, customColor } ) => {\n\t// Search each origin (default, theme, or user) for matching color by name.\n\tif ( namedColor ) {\n\t\tconst colorObject = getColorByProperty( colors, 'slug', namedColor );\n\t\tif ( colorObject ) {\n\t\t\treturn colorObject;\n\t\t}\n\t}\n\n\t// Skip if no custom color or matching named color.\n\tif ( ! customColor ) {\n\t\treturn { color: undefined };\n\t}\n\n\t// Attempt to find color via custom color value or build new object.\n\tconst colorObject = getColorByProperty( colors, 'color', customColor );\n\treturn colorObject ? colorObject : { color: customColor };\n};\n\nfunction getColorSlugFromVariable( value ) {\n\tconst namedColor = /var:preset\\|color\\|(.+)/.exec( value );\n\tif ( namedColor && namedColor[ 1 ] ) {\n\t\treturn namedColor[ 1 ];\n\t}\n\treturn null;\n}\n\nfunction styleToAttributes( style ) {\n\tif ( hasSplitBorders( style?.border ) ) {\n\t\treturn {\n\t\t\tstyle,\n\t\t\tborderColor: undefined,\n\t\t};\n\t}\n\n\tconst borderColorValue = style?.border?.color;\n\tconst borderColorSlug = borderColorValue?.startsWith( 'var:preset|color|' )\n\t\t? borderColorValue.substring( 'var:preset|color|'.length )\n\t\t: undefined;\n\tconst updatedStyle = { ...style };\n\tupdatedStyle.border = {\n\t\t...updatedStyle.border,\n\t\tcolor: borderColorSlug ? undefined : borderColorValue,\n\t};\n\treturn {\n\t\tstyle: cleanEmptyObject( updatedStyle ),\n\t\tborderColor: borderColorSlug,\n\t};\n}\n\nfunction attributesToStyle( attributes ) {\n\tif ( hasSplitBorders( attributes.style?.border ) ) {\n\t\treturn attributes.style;\n\t}\n\treturn {\n\t\t...attributes.style,\n\t\tborder: {\n\t\t\t...attributes.style?.border,\n\t\t\tcolor: attributes.borderColor\n\t\t\t\t? 'var:preset|color|' + attributes.borderColor\n\t\t\t\t: attributes.style?.border?.color,\n\t\t},\n\t};\n}\n\nfunction BordersInspectorControl( { children, resetAllFilter } ) {\n\tconst attributesResetAllFilter = useCallback(\n\t\t( attributes ) => {\n\t\t\tconst existingStyle = attributesToStyle( attributes );\n\t\t\tconst updatedStyle = resetAllFilter( existingStyle );\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\t...styleToAttributes( updatedStyle ),\n\t\t\t};\n\t\t},\n\t\t[ resetAllFilter ]\n\t);\n\n\treturn (\n\t\t<InspectorControls\n\t\t\tgroup=\"border\"\n\t\t\tresetAllFilter={ attributesResetAllFilter }\n\t\t>\n\t\t\t{ children }\n\t\t</InspectorControls>\n\t);\n}\n\nexport function BorderPanel( props ) {\n\tconst { clientId, name, attributes, setAttributes } = props;\n\tconst settings = useBlockSettings( name );\n\tconst isEnabled = useHasBorderPanel( settings );\n\tconst value = useMemo( () => {\n\t\treturn attributesToStyle( {\n\t\t\tstyle: attributes.style,\n\t\t\tborderColor: attributes.borderColor,\n\t\t} );\n\t}, [ attributes.style, attributes.borderColor ] );\n\n\tconst onChange = ( newStyle ) => {\n\t\tsetAttributes( styleToAttributes( newStyle ) );\n\t};\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst defaultControls = getBlockSupport( props.name, [\n\t\tBORDER_SUPPORT_KEY,\n\t\t'__experimentalDefaultControls',\n\t] );\n\n\treturn (\n\t\t<StylesBorderPanel\n\t\t\tas={ BordersInspectorControl }\n\t\t\tpanelId={ clientId }\n\t\t\tsettings={ settings }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tdefaultControls={ defaultControls }\n\t\t/>\n\t);\n}\n\n/**\n * Determine whether there is block support for border properties.\n *\n * @param {string} blockName Block name.\n * @param {string} feature Border feature to check support for.\n *\n * @return {boolean} Whether there is support.\n */\nexport function hasBorderSupport( blockName, feature = 'any' ) {\n\tif ( Platform.OS !== 'web' ) {\n\t\treturn false;\n\t}\n\n\tconst support = getBlockSupport( blockName, BORDER_SUPPORT_KEY );\n\n\tif ( support === true ) {\n\t\treturn true;\n\t}\n\n\tif ( feature === 'any' ) {\n\t\treturn !! (\n\t\t\tsupport?.color ||\n\t\t\tsupport?.radius ||\n\t\t\tsupport?.width ||\n\t\t\tsupport?.style\n\t\t);\n\t}\n\n\treturn !! support?.[ feature ];\n}\n\n/**\n * Returns a new style object where the specified border attribute has been\n * removed.\n *\n * @param {Object} style Styles from block attributes.\n * @param {string} attribute The border style attribute to clear.\n *\n * @return {Object} Style object with the specified attribute removed.\n */\nexport function removeBorderAttribute( style, attribute ) {\n\treturn cleanEmptyObject( {\n\t\t...style,\n\t\tborder: {\n\t\t\t...style?.border,\n\t\t\t[ attribute ]: undefined,\n\t\t},\n\t} );\n}\n\n/**\n * Filters registered block settings, extending attributes to include\n * `borderColor` if needed.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Updated block settings.\n */\nfunction addAttributes( settings ) {\n\tif ( ! hasBorderSupport( settings, 'color' ) ) {\n\t\treturn settings;\n\t}\n\n\t// Allow blocks to specify default value if needed.\n\tif ( settings.attributes.borderColor ) {\n\t\treturn settings;\n\t}\n\n\t// Add new borderColor attribute to block settings.\n\treturn {\n\t\t...settings,\n\t\tattributes: {\n\t\t\t...settings.attributes,\n\t\t\tborderColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t};\n}\n\n/**\n * Override props assigned to save component to inject border color.\n *\n * @param {Object} props Additional props applied to save element.\n * @param {Object} blockType Block type definition.\n * @param {Object} attributes Block's attributes.\n *\n * @return {Object} Filtered props to apply to save element.\n */\nfunction addSaveProps( props, blockType, attributes ) {\n\tif (\n\t\t! hasBorderSupport( blockType, 'color' ) ||\n\t\tshouldSkipSerialization( blockType, BORDER_SUPPORT_KEY, 'color' )\n\t) {\n\t\treturn props;\n\t}\n\n\tconst borderClasses = getBorderClasses( attributes );\n\tconst newClassName = classnames( props.className, borderClasses );\n\n\t// If we are clearing the last of the previous classes in `className`\n\t// set it to `undefined` to avoid rendering empty DOM attributes.\n\tprops.className = newClassName ? newClassName : undefined;\n\n\treturn props;\n}\n\n/**\n * Generates a CSS class name consisting of all the applicable border color\n * classes given the current block attributes.\n *\n * @param {Object} attributes Block's attributes.\n *\n * @return {string} CSS class name.\n */\nexport function getBorderClasses( attributes ) {\n\tconst { borderColor, style } = attributes;\n\tconst borderColorClass = getColorClassName( 'border-color', borderColor );\n\n\treturn classnames( {\n\t\t'has-border-color': borderColor || style?.border?.color,\n\t\t[ borderColorClass ]: !! borderColorClass,\n\t} );\n}\n\n/**\n * Filters the registered block settings to apply border color styles and\n * classnames to the block edit wrapper.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Filtered block settings.\n */\nfunction addEditProps( settings ) {\n\tif (\n\t\t! hasBorderSupport( settings, 'color' ) ||\n\t\tshouldSkipSerialization( settings, BORDER_SUPPORT_KEY, 'color' )\n\t) {\n\t\treturn settings;\n\t}\n\n\tconst existingGetEditWrapperProps = settings.getEditWrapperProps;\n\tsettings.getEditWrapperProps = ( attributes ) => {\n\t\tlet props = {};\n\n\t\tif ( existingGetEditWrapperProps ) {\n\t\t\tprops = existingGetEditWrapperProps( attributes );\n\t\t}\n\n\t\treturn addSaveProps( props, settings, attributes );\n\t};\n\n\treturn settings;\n}\n\n/**\n * This adds inline styles for color palette colors.\n * Ideally, this is not needed and themes should load their palettes on the editor.\n *\n * @param {Function} BlockListBlock Original component.\n *\n * @return {Function} Wrapped component.\n */\nexport const withBorderColorPaletteStyles = createHigherOrderComponent(\n\t( BlockListBlock ) => ( props ) => {\n\t\tconst { name, attributes } = props;\n\t\tconst { borderColor, style } = attributes;\n\t\tconst { colors } = useMultipleOriginColorsAndGradients();\n\n\t\tif (\n\t\t\t! hasBorderSupport( name, 'color' ) ||\n\t\t\tshouldSkipSerialization( name, BORDER_SUPPORT_KEY, 'color' )\n\t\t) {\n\t\t\treturn <BlockListBlock { ...props } />;\n\t\t}\n\n\t\tconst { color: borderColorValue } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: borderColor,\n\t\t} );\n\t\tconst { color: borderTopColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable( style?.border?.top?.color ),\n\t\t} );\n\t\tconst { color: borderRightColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable( style?.border?.right?.color ),\n\t\t} );\n\n\t\tconst { color: borderBottomColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable(\n\t\t\t\tstyle?.border?.bottom?.color\n\t\t\t),\n\t\t} );\n\t\tconst { color: borderLeftColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable( style?.border?.left?.color ),\n\t\t} );\n\n\t\tconst extraStyles = {\n\t\t\tborderTopColor: borderTopColor || borderColorValue,\n\t\t\tborderRightColor: borderRightColor || borderColorValue,\n\t\t\tborderBottomColor: borderBottomColor || borderColorValue,\n\t\t\tborderLeftColor: borderLeftColor || borderColorValue,\n\t\t};\n\n\t\tlet wrapperProps = props.wrapperProps;\n\t\twrapperProps = {\n\t\t\t...props.wrapperProps,\n\t\t\tstyle: {\n\t\t\t\t...props.wrapperProps?.style,\n\t\t\t\t...extraStyles,\n\t\t\t},\n\t\t};\n\n\t\treturn <BlockListBlock { ...props } wrapperProps={ wrapperProps } />;\n\t},\n\t'withBorderColorPaletteStyles'\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/border/addAttributes',\n\taddAttributes\n);\n\naddFilter(\n\t'blocks.getSaveContent.extraProps',\n\t'core/border/addSaveProps',\n\taddSaveProps\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/border/addEditProps',\n\taddEditProps\n);\n\naddFilter(\n\t'editor.BlockListBlock',\n\t'core/border/with-border-color-palette-styles',\n\twithBorderColorPaletteStyles\n);\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/hooks/border.js"],"names":["classnames","getBlockSupport","__experimentalHasSplitBorders","hasSplitBorders","createHigherOrderComponent","Platform","useCallback","useMemo","addFilter","getColorClassName","InspectorControls","useMultipleOriginColorsAndGradients","cleanEmptyObject","shouldSkipSerialization","useBlockSettings","useHasBorderPanel","BorderPanel","StylesBorderPanel","BORDER_SUPPORT_KEY","getColorByProperty","colors","property","value","matchedColor","some","origin","color","getMultiOriginColor","namedColor","customColor","colorObject","undefined","getColorSlugFromVariable","exec","styleToAttributes","style","border","borderColor","borderColorValue","borderColorSlug","startsWith","substring","length","updatedStyle","attributesToStyle","attributes","BordersInspectorControl","children","resetAllFilter","attributesResetAllFilter","existingStyle","props","clientId","name","setAttributes","settings","isEnabled","onChange","newStyle","defaultControls","hasBorderSupport","blockName","feature","OS","support","radius","width","removeBorderAttribute","attribute","addAttributes","type","addSaveProps","blockType","borderClasses","getBorderClasses","newClassName","className","borderColorClass","addEditProps","existingGetEditWrapperProps","getEditWrapperProps","withBorderColorPaletteStyles","BlockListBlock","borderTopColor","top","borderRightColor","right","borderBottomColor","bottom","borderLeftColor","left","extraStyles","wrapperProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { __experimentalHasSplitBorders as hasSplitBorders } from '@wordpress/components';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { Platform, useCallback, useMemo } from '@wordpress/element';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport { getColorClassName } from '../components/colors';\nimport InspectorControls from '../components/inspector-controls';\nimport useMultipleOriginColorsAndGradients from '../components/colors-gradients/use-multiple-origin-colors-and-gradients';\nimport {\n\tcleanEmptyObject,\n\tshouldSkipSerialization,\n\tuseBlockSettings,\n} from './utils';\nimport {\n\tuseHasBorderPanel,\n\tBorderPanel as StylesBorderPanel,\n} from '../components/global-styles';\n\nexport const BORDER_SUPPORT_KEY = '__experimentalBorder';\n\nconst getColorByProperty = ( colors, property, value ) => {\n\tlet matchedColor;\n\n\tcolors.some( ( origin ) =>\n\t\torigin.colors.some( ( color ) => {\n\t\t\tif ( color[ property ] === value ) {\n\t\t\t\tmatchedColor = color;\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t} )\n\t);\n\n\treturn matchedColor;\n};\n\nexport const getMultiOriginColor = ( { colors, namedColor, customColor } ) => {\n\t// Search each origin (default, theme, or user) for matching color by name.\n\tif ( namedColor ) {\n\t\tconst colorObject = getColorByProperty( colors, 'slug', namedColor );\n\t\tif ( colorObject ) {\n\t\t\treturn colorObject;\n\t\t}\n\t}\n\n\t// Skip if no custom color or matching named color.\n\tif ( ! customColor ) {\n\t\treturn { color: undefined };\n\t}\n\n\t// Attempt to find color via custom color value or build new object.\n\tconst colorObject = getColorByProperty( colors, 'color', customColor );\n\treturn colorObject ? colorObject : { color: customColor };\n};\n\nfunction getColorSlugFromVariable( value ) {\n\tconst namedColor = /var:preset\\|color\\|(.+)/.exec( value );\n\tif ( namedColor && namedColor[ 1 ] ) {\n\t\treturn namedColor[ 1 ];\n\t}\n\treturn null;\n}\n\nfunction styleToAttributes( style ) {\n\tif ( hasSplitBorders( style?.border ) ) {\n\t\treturn {\n\t\t\tstyle,\n\t\t\tborderColor: undefined,\n\t\t};\n\t}\n\n\tconst borderColorValue = style?.border?.color;\n\tconst borderColorSlug = borderColorValue?.startsWith( 'var:preset|color|' )\n\t\t? borderColorValue.substring( 'var:preset|color|'.length )\n\t\t: undefined;\n\tconst updatedStyle = { ...style };\n\tupdatedStyle.border = {\n\t\t...updatedStyle.border,\n\t\tcolor: borderColorSlug ? undefined : borderColorValue,\n\t};\n\treturn {\n\t\tstyle: cleanEmptyObject( updatedStyle ),\n\t\tborderColor: borderColorSlug,\n\t};\n}\n\nfunction attributesToStyle( attributes ) {\n\tif ( hasSplitBorders( attributes.style?.border ) ) {\n\t\treturn attributes.style;\n\t}\n\treturn {\n\t\t...attributes.style,\n\t\tborder: {\n\t\t\t...attributes.style?.border,\n\t\t\tcolor: attributes.borderColor\n\t\t\t\t? 'var:preset|color|' + attributes.borderColor\n\t\t\t\t: attributes.style?.border?.color,\n\t\t},\n\t};\n}\n\nfunction BordersInspectorControl( { children, resetAllFilter } ) {\n\tconst attributesResetAllFilter = useCallback(\n\t\t( attributes ) => {\n\t\t\tconst existingStyle = attributesToStyle( attributes );\n\t\t\tconst updatedStyle = resetAllFilter( existingStyle );\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\t...styleToAttributes( updatedStyle ),\n\t\t\t};\n\t\t},\n\t\t[ resetAllFilter ]\n\t);\n\n\treturn (\n\t\t<InspectorControls\n\t\t\tgroup=\"border\"\n\t\t\tresetAllFilter={ attributesResetAllFilter }\n\t\t>\n\t\t\t{ children }\n\t\t</InspectorControls>\n\t);\n}\n\nexport function BorderPanel( props ) {\n\tconst { clientId, name, attributes, setAttributes } = props;\n\tconst settings = useBlockSettings( name );\n\tconst isEnabled = useHasBorderPanel( settings );\n\tconst value = useMemo( () => {\n\t\treturn attributesToStyle( {\n\t\t\tstyle: attributes.style,\n\t\t\tborderColor: attributes.borderColor,\n\t\t} );\n\t}, [ attributes.style, attributes.borderColor ] );\n\n\tconst onChange = ( newStyle ) => {\n\t\tsetAttributes( styleToAttributes( newStyle ) );\n\t};\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst defaultControls = getBlockSupport( props.name, [\n\t\tBORDER_SUPPORT_KEY,\n\t\t'__experimentalDefaultControls',\n\t] );\n\n\treturn (\n\t\t<StylesBorderPanel\n\t\t\tas={ BordersInspectorControl }\n\t\t\tpanelId={ clientId }\n\t\t\tsettings={ settings }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tdefaultControls={ defaultControls }\n\t\t/>\n\t);\n}\n\n/**\n * Determine whether there is block support for border properties.\n *\n * @param {string} blockName Block name.\n * @param {string} feature Border feature to check support for.\n *\n * @return {boolean} Whether there is support.\n */\nexport function hasBorderSupport( blockName, feature = 'any' ) {\n\tif ( Platform.OS !== 'web' ) {\n\t\treturn false;\n\t}\n\n\tconst support = getBlockSupport( blockName, BORDER_SUPPORT_KEY );\n\n\tif ( support === true ) {\n\t\treturn true;\n\t}\n\n\tif ( feature === 'any' ) {\n\t\treturn !! (\n\t\t\tsupport?.color ||\n\t\t\tsupport?.radius ||\n\t\t\tsupport?.width ||\n\t\t\tsupport?.style\n\t\t);\n\t}\n\n\treturn !! support?.[ feature ];\n}\n\n/**\n * Returns a new style object where the specified border attribute has been\n * removed.\n *\n * @param {Object} style Styles from block attributes.\n * @param {string} attribute The border style attribute to clear.\n *\n * @return {Object} Style object with the specified attribute removed.\n */\nexport function removeBorderAttribute( style, attribute ) {\n\treturn cleanEmptyObject( {\n\t\t...style,\n\t\tborder: {\n\t\t\t...style?.border,\n\t\t\t[ attribute ]: undefined,\n\t\t},\n\t} );\n}\n\n/**\n * Filters registered block settings, extending attributes to include\n * `borderColor` if needed.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Updated block settings.\n */\nfunction addAttributes( settings ) {\n\tif ( ! hasBorderSupport( settings, 'color' ) ) {\n\t\treturn settings;\n\t}\n\n\t// Allow blocks to specify default value if needed.\n\tif ( settings.attributes.borderColor ) {\n\t\treturn settings;\n\t}\n\n\t// Add new borderColor attribute to block settings.\n\treturn {\n\t\t...settings,\n\t\tattributes: {\n\t\t\t...settings.attributes,\n\t\t\tborderColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t};\n}\n\n/**\n * Override props assigned to save component to inject border color.\n *\n * @param {Object} props Additional props applied to save element.\n * @param {Object} blockType Block type definition.\n * @param {Object} attributes Block's attributes.\n *\n * @return {Object} Filtered props to apply to save element.\n */\nfunction addSaveProps( props, blockType, attributes ) {\n\tif (\n\t\t! hasBorderSupport( blockType, 'color' ) ||\n\t\tshouldSkipSerialization( blockType, BORDER_SUPPORT_KEY, 'color' )\n\t) {\n\t\treturn props;\n\t}\n\n\tconst borderClasses = getBorderClasses( attributes );\n\tconst newClassName = classnames( props.className, borderClasses );\n\n\t// If we are clearing the last of the previous classes in `className`\n\t// set it to `undefined` to avoid rendering empty DOM attributes.\n\tprops.className = newClassName ? newClassName : undefined;\n\n\treturn props;\n}\n\n/**\n * Generates a CSS class name consisting of all the applicable border color\n * classes given the current block attributes.\n *\n * @param {Object} attributes Block's attributes.\n *\n * @return {string} CSS class name.\n */\nexport function getBorderClasses( attributes ) {\n\tconst { borderColor, style } = attributes;\n\tconst borderColorClass = getColorClassName( 'border-color', borderColor );\n\n\treturn classnames( {\n\t\t'has-border-color': borderColor || style?.border?.color,\n\t\t[ borderColorClass ]: !! borderColorClass,\n\t} );\n}\n\n/**\n * Filters the registered block settings to apply border color styles and\n * classnames to the block edit wrapper.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Filtered block settings.\n */\nfunction addEditProps( settings ) {\n\tif (\n\t\t! hasBorderSupport( settings, 'color' ) ||\n\t\tshouldSkipSerialization( settings, BORDER_SUPPORT_KEY, 'color' )\n\t) {\n\t\treturn settings;\n\t}\n\n\tconst existingGetEditWrapperProps = settings.getEditWrapperProps;\n\tsettings.getEditWrapperProps = ( attributes ) => {\n\t\tlet props = {};\n\n\t\tif ( existingGetEditWrapperProps ) {\n\t\t\tprops = existingGetEditWrapperProps( attributes );\n\t\t}\n\n\t\treturn addSaveProps( props, settings, attributes );\n\t};\n\n\treturn settings;\n}\n\n/**\n * This adds inline styles for color palette colors.\n * Ideally, this is not needed and themes should load their palettes on the editor.\n *\n * @param {Function} BlockListBlock Original component.\n *\n * @return {Function} Wrapped component.\n */\nexport const withBorderColorPaletteStyles = createHigherOrderComponent(\n\t( BlockListBlock ) => ( props ) => {\n\t\tconst { name, attributes } = props;\n\t\tconst { borderColor, style } = attributes;\n\t\tconst { colors } = useMultipleOriginColorsAndGradients();\n\n\t\tif (\n\t\t\t! hasBorderSupport( name, 'color' ) ||\n\t\t\tshouldSkipSerialization( name, BORDER_SUPPORT_KEY, 'color' )\n\t\t) {\n\t\t\treturn <BlockListBlock { ...props } />;\n\t\t}\n\n\t\tconst { color: borderColorValue } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: borderColor,\n\t\t} );\n\t\tconst { color: borderTopColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable( style?.border?.top?.color ),\n\t\t} );\n\t\tconst { color: borderRightColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable( style?.border?.right?.color ),\n\t\t} );\n\n\t\tconst { color: borderBottomColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable(\n\t\t\t\tstyle?.border?.bottom?.color\n\t\t\t),\n\t\t} );\n\t\tconst { color: borderLeftColor } = getMultiOriginColor( {\n\t\t\tcolors,\n\t\t\tnamedColor: getColorSlugFromVariable( style?.border?.left?.color ),\n\t\t} );\n\n\t\tconst extraStyles = {\n\t\t\tborderTopColor: borderTopColor || borderColorValue,\n\t\t\tborderRightColor: borderRightColor || borderColorValue,\n\t\t\tborderBottomColor: borderBottomColor || borderColorValue,\n\t\t\tborderLeftColor: borderLeftColor || borderColorValue,\n\t\t};\n\n\t\tlet wrapperProps = props.wrapperProps;\n\t\twrapperProps = {\n\t\t\t...props.wrapperProps,\n\t\t\tstyle: {\n\t\t\t\t...props.wrapperProps?.style,\n\t\t\t\t...extraStyles,\n\t\t\t},\n\t\t};\n\n\t\treturn <BlockListBlock { ...props } wrapperProps={ wrapperProps } />;\n\t},\n\t'withBorderColorPaletteStyles'\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/border/addAttributes',\n\taddAttributes\n);\n\naddFilter(\n\t'blocks.getSaveContent.extraProps',\n\t'core/border/addSaveProps',\n\taddSaveProps\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/border/addEditProps',\n\taddEditProps\n);\n\naddFilter(\n\t'editor.BlockListBlock',\n\t'core/border/with-border-color-palette-styles',\n\twithBorderColorPaletteStyles\n);\n"]}
@@ -108,8 +108,6 @@ function addAttributes(settings) {
108
108
 
109
109
 
110
110
  export function addSaveProps(props, blockType, attributes) {
111
- var _style$color, _style$color2, _style$color3, _style$color4, _style$elements, _style$elements$link;
112
-
113
111
  if (!hasColorSupport(blockType) || shouldSkipSerialization(blockType, COLOR_SUPPORT_KEY)) {
114
112
  return props;
115
113
  }
@@ -132,13 +130,13 @@ export function addSaveProps(props, blockType, attributes) {
132
130
  const gradientClass = shouldSerialize('gradients') ? __experimentalGetGradientClass(gradient) : undefined;
133
131
  const backgroundClass = shouldSerialize('background') ? getColorClassName('background-color', backgroundColor) : undefined;
134
132
  const serializeHasBackground = shouldSerialize('background') || shouldSerialize('gradients');
135
- const hasBackground = backgroundColor || (style === null || style === void 0 ? void 0 : (_style$color = style.color) === null || _style$color === void 0 ? void 0 : _style$color.background) || hasGradient && (gradient || (style === null || style === void 0 ? void 0 : (_style$color2 = style.color) === null || _style$color2 === void 0 ? void 0 : _style$color2.gradient));
133
+ const hasBackground = backgroundColor || style?.color?.background || hasGradient && (gradient || style?.color?.gradient);
136
134
  const newClassName = classnames(props.className, textClass, gradientClass, {
137
135
  // Don't apply the background class if there's a custom gradient.
138
- [backgroundClass]: (!hasGradient || !(style !== null && style !== void 0 && (_style$color3 = style.color) !== null && _style$color3 !== void 0 && _style$color3.gradient)) && !!backgroundClass,
139
- 'has-text-color': shouldSerialize('text') && (textColor || (style === null || style === void 0 ? void 0 : (_style$color4 = style.color) === null || _style$color4 === void 0 ? void 0 : _style$color4.text)),
136
+ [backgroundClass]: (!hasGradient || !style?.color?.gradient) && !!backgroundClass,
137
+ 'has-text-color': shouldSerialize('text') && (textColor || style?.color?.text),
140
138
  'has-background': serializeHasBackground && hasBackground,
141
- 'has-link-color': shouldSerialize('link') && (style === null || style === void 0 ? void 0 : (_style$elements = style.elements) === null || _style$elements === void 0 ? void 0 : (_style$elements$link = _style$elements.link) === null || _style$elements$link === void 0 ? void 0 : _style$elements$link.color)
139
+ 'has-link-color': shouldSerialize('link') && style?.elements?.link?.color
142
140
  });
143
141
  props.className = newClassName ? newClassName : undefined;
144
142
  return props;
@@ -173,14 +171,12 @@ export function addEditProps(settings) {
173
171
  }
174
172
 
175
173
  function styleToAttributes(style) {
176
- var _style$color5, _style$color6, _style$color7;
177
-
178
- const textColorValue = style === null || style === void 0 ? void 0 : (_style$color5 = style.color) === null || _style$color5 === void 0 ? void 0 : _style$color5.text;
179
- const textColorSlug = textColorValue !== null && textColorValue !== void 0 && textColorValue.startsWith('var:preset|color|') ? textColorValue.substring('var:preset|color|'.length) : undefined;
180
- const backgroundColorValue = style === null || style === void 0 ? void 0 : (_style$color6 = style.color) === null || _style$color6 === void 0 ? void 0 : _style$color6.background;
181
- const backgroundColorSlug = backgroundColorValue !== null && backgroundColorValue !== void 0 && backgroundColorValue.startsWith('var:preset|color|') ? backgroundColorValue.substring('var:preset|color|'.length) : undefined;
182
- const gradientValue = style === null || style === void 0 ? void 0 : (_style$color7 = style.color) === null || _style$color7 === void 0 ? void 0 : _style$color7.gradient;
183
- const gradientSlug = gradientValue !== null && gradientValue !== void 0 && gradientValue.startsWith('var:preset|gradient|') ? gradientValue.substring('var:preset|gradient|'.length) : undefined;
174
+ const textColorValue = style?.color?.text;
175
+ const textColorSlug = textColorValue?.startsWith('var:preset|color|') ? textColorValue.substring('var:preset|color|'.length) : undefined;
176
+ const backgroundColorValue = style?.color?.background;
177
+ const backgroundColorSlug = backgroundColorValue?.startsWith('var:preset|color|') ? backgroundColorValue.substring('var:preset|color|'.length) : undefined;
178
+ const gradientValue = style?.color?.gradient;
179
+ const gradientSlug = gradientValue?.startsWith('var:preset|gradient|') ? gradientValue.substring('var:preset|gradient|'.length) : undefined;
184
180
  const updatedStyle = { ...style
185
181
  };
186
182
  updatedStyle.color = { ...updatedStyle.color,
@@ -197,22 +193,19 @@ function styleToAttributes(style) {
197
193
  }
198
194
 
199
195
  function attributesToStyle(attributes) {
200
- var _attributes$style, _attributes$style2, _attributes$style2$co, _attributes$style3, _attributes$style3$co, _attributes$style4, _attributes$style4$co;
201
-
202
196
  return { ...attributes.style,
203
- color: { ...((_attributes$style = attributes.style) === null || _attributes$style === void 0 ? void 0 : _attributes$style.color),
204
- text: attributes.textColor ? 'var:preset|color|' + attributes.textColor : (_attributes$style2 = attributes.style) === null || _attributes$style2 === void 0 ? void 0 : (_attributes$style2$co = _attributes$style2.color) === null || _attributes$style2$co === void 0 ? void 0 : _attributes$style2$co.text,
205
- background: attributes.backgroundColor ? 'var:preset|color|' + attributes.backgroundColor : (_attributes$style3 = attributes.style) === null || _attributes$style3 === void 0 ? void 0 : (_attributes$style3$co = _attributes$style3.color) === null || _attributes$style3$co === void 0 ? void 0 : _attributes$style3$co.background,
206
- gradient: attributes.gradient ? 'var:preset|gradient|' + attributes.gradient : (_attributes$style4 = attributes.style) === null || _attributes$style4 === void 0 ? void 0 : (_attributes$style4$co = _attributes$style4.color) === null || _attributes$style4$co === void 0 ? void 0 : _attributes$style4$co.gradient
197
+ color: { ...attributes.style?.color,
198
+ text: attributes.textColor ? 'var:preset|color|' + attributes.textColor : attributes.style?.color?.text,
199
+ background: attributes.backgroundColor ? 'var:preset|color|' + attributes.backgroundColor : attributes.style?.color?.background,
200
+ gradient: attributes.gradient ? 'var:preset|gradient|' + attributes.gradient : attributes.style?.color?.gradient
207
201
  }
208
202
  };
209
203
  }
210
204
 
211
- function ColorInspectorControl(_ref) {
212
- let {
213
- children,
214
- resetAllFilter
215
- } = _ref;
205
+ function ColorInspectorControl({
206
+ children,
207
+ resetAllFilter
208
+ }) {
216
209
  const attributesResetAllFilter = useCallback(attributes => {
217
210
  const existingStyle = attributesToStyle(attributes);
218
211
  const updatedStyle = resetAllFilter(existingStyle);
@@ -227,8 +220,6 @@ function ColorInspectorControl(_ref) {
227
220
  }
228
221
 
229
222
  export function ColorEdit(props) {
230
- var _value$color, _settings$color, _settings$color2;
231
-
232
223
  const {
233
224
  clientId,
234
225
  name,
@@ -255,7 +246,7 @@ export function ColorEdit(props) {
255
246
  }
256
247
 
257
248
  const defaultControls = getBlockSupport(props.name, [COLOR_SUPPORT_KEY, '__experimentalDefaultControls']);
258
- const enableContrastChecking = Platform.OS === 'web' && !(value !== null && value !== void 0 && (_value$color = value.color) !== null && _value$color !== void 0 && _value$color.gradient) && ((settings === null || settings === void 0 ? void 0 : (_settings$color = settings.color) === null || _settings$color === void 0 ? void 0 : _settings$color.text) || (settings === null || settings === void 0 ? void 0 : (_settings$color2 = settings.color) === null || _settings$color2 === void 0 ? void 0 : _settings$color2.link)) && // Contrast checking is enabled by default.
249
+ const enableContrastChecking = Platform.OS === 'web' && !value?.color?.gradient && (settings?.color?.text || settings?.color?.link) && // Contrast checking is enabled by default.
259
250
  // Deactivating it requires `enableContrastChecker` to have
260
251
  // an explicit value of `false`.
261
252
  false !== getBlockSupport(props.name, [COLOR_SUPPORT_KEY, 'enableContrastChecker']);
@@ -281,8 +272,6 @@ export function ColorEdit(props) {
281
272
  */
282
273
 
283
274
  export const withColorPaletteStyles = createHigherOrderComponent(BlockListBlock => props => {
284
- var _props$wrapperProps;
285
-
286
275
  const {
287
276
  name,
288
277
  attributes
@@ -303,21 +292,17 @@ export const withColorPaletteStyles = createHigherOrderComponent(BlockListBlock
303
292
  const extraStyles = {};
304
293
 
305
294
  if (textColor && !shouldSkipSerialization(name, COLOR_SUPPORT_KEY, 'text')) {
306
- var _getColorObjectByAttr;
307
-
308
- extraStyles.color = (_getColorObjectByAttr = getColorObjectByAttributeValues(colors, textColor)) === null || _getColorObjectByAttr === void 0 ? void 0 : _getColorObjectByAttr.color;
295
+ extraStyles.color = getColorObjectByAttributeValues(colors, textColor)?.color;
309
296
  }
310
297
 
311
298
  if (backgroundColor && !shouldSkipSerialization(name, COLOR_SUPPORT_KEY, 'background')) {
312
- var _getColorObjectByAttr2;
313
-
314
- extraStyles.backgroundColor = (_getColorObjectByAttr2 = getColorObjectByAttributeValues(colors, backgroundColor)) === null || _getColorObjectByAttr2 === void 0 ? void 0 : _getColorObjectByAttr2.color;
299
+ extraStyles.backgroundColor = getColorObjectByAttributeValues(colors, backgroundColor)?.color;
315
300
  }
316
301
 
317
302
  let wrapperProps = props.wrapperProps;
318
303
  wrapperProps = { ...props.wrapperProps,
319
304
  style: { ...extraStyles,
320
- ...((_props$wrapperProps = props.wrapperProps) === null || _props$wrapperProps === void 0 ? void 0 : _props$wrapperProps.style)
305
+ ...props.wrapperProps?.style
321
306
  }
322
307
  };
323
308
  return createElement(BlockListBlock, _extends({}, props, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/hooks/color.js"],"names":["classnames","addFilter","getBlockSupport","useMemo","Platform","useCallback","createHigherOrderComponent","getColorClassName","getColorObjectByAttributeValues","__experimentalGetGradientClass","cleanEmptyObject","transformStyles","shouldSkipSerialization","useBlockSettings","useSetting","InspectorControls","useHasColorPanel","default","StylesColorPanel","BlockColorContrastChecker","COLOR_SUPPORT_KEY","hasColorSupport","blockType","colorSupport","link","gradient","background","text","hasLinkColorSupport","OS","hasGradientSupport","gradients","hasBackgroundColorSupport","hasTextColorSupport","addAttributes","settings","attributes","backgroundColor","Object","assign","type","textColor","addSaveProps","props","hasGradient","style","shouldSerialize","feature","textClass","undefined","gradientClass","backgroundClass","serializeHasBackground","hasBackground","color","newClassName","className","elements","addEditProps","existingGetEditWrapperProps","getEditWrapperProps","styleToAttributes","textColorValue","textColorSlug","startsWith","substring","length","backgroundColorValue","backgroundColorSlug","gradientValue","gradientSlug","updatedStyle","attributesToStyle","ColorInspectorControl","children","resetAllFilter","attributesResetAllFilter","existingStyle","ColorEdit","clientId","name","setAttributes","isEnabled","value","onChange","newStyle","defaultControls","enableContrastChecking","withColorPaletteStyles","BlockListBlock","userPalette","themePalette","defaultPalette","colors","extraStyles","wrapperProps","MIGRATION_PATHS","linkColor","addTransforms","result","source","index","results","destinationBlockType","activeSupports"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { useMemo, Platform, useCallback } from '@wordpress/element';\nimport { createHigherOrderComponent } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tgetColorClassName,\n\tgetColorObjectByAttributeValues,\n} from '../components/colors';\nimport { __experimentalGetGradientClass } from '../components/gradients';\nimport {\n\tcleanEmptyObject,\n\ttransformStyles,\n\tshouldSkipSerialization,\n\tuseBlockSettings,\n} from './utils';\nimport useSetting from '../components/use-setting';\nimport InspectorControls from '../components/inspector-controls';\nimport {\n\tuseHasColorPanel,\n\tdefault as StylesColorPanel,\n} from '../components/global-styles/color-panel';\nimport BlockColorContrastChecker from './contrast-checker';\n\nexport const COLOR_SUPPORT_KEY = 'color';\n\nconst hasColorSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\treturn (\n\t\tcolorSupport &&\n\t\t( colorSupport.link === true ||\n\t\t\tcolorSupport.gradient === true ||\n\t\t\tcolorSupport.background !== false ||\n\t\t\tcolorSupport.text !== false )\n\t);\n};\n\nconst hasLinkColorSupport = ( blockType ) => {\n\tif ( Platform.OS !== 'web' ) {\n\t\treturn false;\n\t}\n\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn (\n\t\tcolorSupport !== null &&\n\t\ttypeof colorSupport === 'object' &&\n\t\t!! colorSupport.link\n\t);\n};\n\nconst hasGradientSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn (\n\t\tcolorSupport !== null &&\n\t\ttypeof colorSupport === 'object' &&\n\t\t!! colorSupport.gradients\n\t);\n};\n\nconst hasBackgroundColorSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn colorSupport && colorSupport.background !== false;\n};\n\nconst hasTextColorSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn colorSupport && colorSupport.text !== false;\n};\n\n/**\n * Filters registered block settings, extending attributes to include\n * `backgroundColor` and `textColor` attribute.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Filtered block settings.\n */\nfunction addAttributes( settings ) {\n\tif ( ! hasColorSupport( settings ) ) {\n\t\treturn settings;\n\t}\n\n\t// Allow blocks to specify their own attribute definition with default values if needed.\n\tif ( ! settings.attributes.backgroundColor ) {\n\t\tObject.assign( settings.attributes, {\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t} );\n\t}\n\tif ( ! settings.attributes.textColor ) {\n\t\tObject.assign( settings.attributes, {\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( hasGradientSupport( settings ) && ! settings.attributes.gradient ) {\n\t\tObject.assign( settings.attributes, {\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn settings;\n}\n\n/**\n * Override props assigned to save component to inject colors classnames.\n *\n * @param {Object} props Additional props applied to save element.\n * @param {Object} blockType Block type.\n * @param {Object} attributes Block attributes.\n *\n * @return {Object} Filtered props applied to save element.\n */\nexport function addSaveProps( props, blockType, attributes ) {\n\tif (\n\t\t! hasColorSupport( blockType ) ||\n\t\tshouldSkipSerialization( blockType, COLOR_SUPPORT_KEY )\n\t) {\n\t\treturn props;\n\t}\n\n\tconst hasGradient = hasGradientSupport( blockType );\n\n\t// I'd have preferred to avoid the \"style\" attribute usage here\n\tconst { backgroundColor, textColor, gradient, style } = attributes;\n\n\tconst shouldSerialize = ( feature ) =>\n\t\t! shouldSkipSerialization( blockType, COLOR_SUPPORT_KEY, feature );\n\n\t// Primary color classes must come before the `has-text-color`,\n\t// `has-background` and `has-link-color` classes to maintain backwards\n\t// compatibility and avoid block invalidations.\n\tconst textClass = shouldSerialize( 'text' )\n\t\t? getColorClassName( 'color', textColor )\n\t\t: undefined;\n\n\tconst gradientClass = shouldSerialize( 'gradients' )\n\t\t? __experimentalGetGradientClass( gradient )\n\t\t: undefined;\n\n\tconst backgroundClass = shouldSerialize( 'background' )\n\t\t? getColorClassName( 'background-color', backgroundColor )\n\t\t: undefined;\n\n\tconst serializeHasBackground =\n\t\tshouldSerialize( 'background' ) || shouldSerialize( 'gradients' );\n\tconst hasBackground =\n\t\tbackgroundColor ||\n\t\tstyle?.color?.background ||\n\t\t( hasGradient && ( gradient || style?.color?.gradient ) );\n\n\tconst newClassName = classnames(\n\t\tprops.className,\n\t\ttextClass,\n\t\tgradientClass,\n\t\t{\n\t\t\t// Don't apply the background class if there's a custom gradient.\n\t\t\t[ backgroundClass ]:\n\t\t\t\t( ! hasGradient || ! style?.color?.gradient ) &&\n\t\t\t\t!! backgroundClass,\n\t\t\t'has-text-color':\n\t\t\t\tshouldSerialize( 'text' ) &&\n\t\t\t\t( textColor || style?.color?.text ),\n\t\t\t'has-background': serializeHasBackground && hasBackground,\n\t\t\t'has-link-color':\n\t\t\t\tshouldSerialize( 'link' ) && style?.elements?.link?.color,\n\t\t}\n\t);\n\tprops.className = newClassName ? newClassName : undefined;\n\n\treturn props;\n}\n\n/**\n * Filters registered block settings to extend the block edit wrapper\n * to apply the desired styles and classnames properly.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Filtered block settings.\n */\nexport function addEditProps( settings ) {\n\tif (\n\t\t! hasColorSupport( settings ) ||\n\t\tshouldSkipSerialization( settings, COLOR_SUPPORT_KEY )\n\t) {\n\t\treturn settings;\n\t}\n\tconst existingGetEditWrapperProps = settings.getEditWrapperProps;\n\tsettings.getEditWrapperProps = ( attributes ) => {\n\t\tlet props = {};\n\t\tif ( existingGetEditWrapperProps ) {\n\t\t\tprops = existingGetEditWrapperProps( attributes );\n\t\t}\n\t\treturn addSaveProps( props, settings, attributes );\n\t};\n\n\treturn settings;\n}\n\nfunction styleToAttributes( style ) {\n\tconst textColorValue = style?.color?.text;\n\tconst textColorSlug = textColorValue?.startsWith( 'var:preset|color|' )\n\t\t? textColorValue.substring( 'var:preset|color|'.length )\n\t\t: undefined;\n\tconst backgroundColorValue = style?.color?.background;\n\tconst backgroundColorSlug = backgroundColorValue?.startsWith(\n\t\t'var:preset|color|'\n\t)\n\t\t? backgroundColorValue.substring( 'var:preset|color|'.length )\n\t\t: undefined;\n\tconst gradientValue = style?.color?.gradient;\n\tconst gradientSlug = gradientValue?.startsWith( 'var:preset|gradient|' )\n\t\t? gradientValue.substring( 'var:preset|gradient|'.length )\n\t\t: undefined;\n\tconst updatedStyle = { ...style };\n\tupdatedStyle.color = {\n\t\t...updatedStyle.color,\n\t\ttext: textColorSlug ? undefined : textColorValue,\n\t\tbackground: backgroundColorSlug ? undefined : backgroundColorValue,\n\t\tgradient: gradientSlug ? undefined : gradientValue,\n\t};\n\treturn {\n\t\tstyle: cleanEmptyObject( updatedStyle ),\n\t\ttextColor: textColorSlug,\n\t\tbackgroundColor: backgroundColorSlug,\n\t\tgradient: gradientSlug,\n\t};\n}\n\nfunction attributesToStyle( attributes ) {\n\treturn {\n\t\t...attributes.style,\n\t\tcolor: {\n\t\t\t...attributes.style?.color,\n\t\t\ttext: attributes.textColor\n\t\t\t\t? 'var:preset|color|' + attributes.textColor\n\t\t\t\t: attributes.style?.color?.text,\n\t\t\tbackground: attributes.backgroundColor\n\t\t\t\t? 'var:preset|color|' + attributes.backgroundColor\n\t\t\t\t: attributes.style?.color?.background,\n\t\t\tgradient: attributes.gradient\n\t\t\t\t? 'var:preset|gradient|' + attributes.gradient\n\t\t\t\t: attributes.style?.color?.gradient,\n\t\t},\n\t};\n}\n\nfunction ColorInspectorControl( { children, resetAllFilter } ) {\n\tconst attributesResetAllFilter = useCallback(\n\t\t( attributes ) => {\n\t\t\tconst existingStyle = attributesToStyle( attributes );\n\t\t\tconst updatedStyle = resetAllFilter( existingStyle );\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\t...styleToAttributes( updatedStyle ),\n\t\t\t};\n\t\t},\n\t\t[ resetAllFilter ]\n\t);\n\n\treturn (\n\t\t<InspectorControls\n\t\t\tgroup=\"color\"\n\t\t\tresetAllFilter={ attributesResetAllFilter }\n\t\t>\n\t\t\t{ children }\n\t\t</InspectorControls>\n\t);\n}\n\nexport function ColorEdit( props ) {\n\tconst { clientId, name, attributes, setAttributes } = props;\n\tconst settings = useBlockSettings( name );\n\tconst isEnabled = useHasColorPanel( settings );\n\tconst value = useMemo( () => {\n\t\treturn attributesToStyle( {\n\t\t\tstyle: attributes.style,\n\t\t\ttextColor: attributes.textColor,\n\t\t\tbackgroundColor: attributes.backgroundColor,\n\t\t\tgradient: attributes.gradient,\n\t\t} );\n\t}, [\n\t\tattributes.style,\n\t\tattributes.textColor,\n\t\tattributes.backgroundColor,\n\t\tattributes.gradient,\n\t] );\n\n\tconst onChange = ( newStyle ) => {\n\t\tsetAttributes( styleToAttributes( newStyle ) );\n\t};\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst defaultControls = getBlockSupport( props.name, [\n\t\tCOLOR_SUPPORT_KEY,\n\t\t'__experimentalDefaultControls',\n\t] );\n\n\tconst enableContrastChecking =\n\t\tPlatform.OS === 'web' &&\n\t\t! value?.color?.gradient &&\n\t\t( settings?.color?.text || settings?.color?.link ) &&\n\t\t// Contrast checking is enabled by default.\n\t\t// Deactivating it requires `enableContrastChecker` to have\n\t\t// an explicit value of `false`.\n\t\tfalse !==\n\t\t\tgetBlockSupport( props.name, [\n\t\t\t\tCOLOR_SUPPORT_KEY,\n\t\t\t\t'enableContrastChecker',\n\t\t\t] );\n\n\treturn (\n\t\t<StylesColorPanel\n\t\t\tas={ ColorInspectorControl }\n\t\t\tpanelId={ clientId }\n\t\t\tsettings={ settings }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tdefaultControls={ defaultControls }\n\t\t\tenableContrastChecker={\n\t\t\t\tfalse !==\n\t\t\t\tgetBlockSupport( props.name, [\n\t\t\t\t\tCOLOR_SUPPORT_KEY,\n\t\t\t\t\t'enableContrastChecker',\n\t\t\t\t] )\n\t\t\t}\n\t\t>\n\t\t\t{ enableContrastChecking && (\n\t\t\t\t<BlockColorContrastChecker clientId={ clientId } />\n\t\t\t) }\n\t\t</StylesColorPanel>\n\t);\n}\n\n/**\n * This adds inline styles for color palette colors.\n * Ideally, this is not needed and themes should load their palettes on the editor.\n *\n * @param {Function} BlockListBlock Original component.\n *\n * @return {Function} Wrapped component.\n */\nexport const withColorPaletteStyles = createHigherOrderComponent(\n\t( BlockListBlock ) => ( props ) => {\n\t\tconst { name, attributes } = props;\n\t\tconst { backgroundColor, textColor } = attributes;\n\t\tconst userPalette = useSetting( 'color.palette.custom' );\n\t\tconst themePalette = useSetting( 'color.palette.theme' );\n\t\tconst defaultPalette = useSetting( 'color.palette.default' );\n\t\tconst colors = useMemo(\n\t\t\t() => [\n\t\t\t\t...( userPalette || [] ),\n\t\t\t\t...( themePalette || [] ),\n\t\t\t\t...( defaultPalette || [] ),\n\t\t\t],\n\t\t\t[ userPalette, themePalette, defaultPalette ]\n\t\t);\n\t\tif (\n\t\t\t! hasColorSupport( name ) ||\n\t\t\tshouldSkipSerialization( name, COLOR_SUPPORT_KEY )\n\t\t) {\n\t\t\treturn <BlockListBlock { ...props } />;\n\t\t}\n\t\tconst extraStyles = {};\n\n\t\tif (\n\t\t\ttextColor &&\n\t\t\t! shouldSkipSerialization( name, COLOR_SUPPORT_KEY, 'text' )\n\t\t) {\n\t\t\textraStyles.color = getColorObjectByAttributeValues(\n\t\t\t\tcolors,\n\t\t\t\ttextColor\n\t\t\t)?.color;\n\t\t}\n\t\tif (\n\t\t\tbackgroundColor &&\n\t\t\t! shouldSkipSerialization( name, COLOR_SUPPORT_KEY, 'background' )\n\t\t) {\n\t\t\textraStyles.backgroundColor = getColorObjectByAttributeValues(\n\t\t\t\tcolors,\n\t\t\t\tbackgroundColor\n\t\t\t)?.color;\n\t\t}\n\n\t\tlet wrapperProps = props.wrapperProps;\n\t\twrapperProps = {\n\t\t\t...props.wrapperProps,\n\t\t\tstyle: {\n\t\t\t\t...extraStyles,\n\t\t\t\t...props.wrapperProps?.style,\n\t\t\t},\n\t\t};\n\n\t\treturn <BlockListBlock { ...props } wrapperProps={ wrapperProps } />;\n\t},\n\t'withColorPaletteStyles'\n);\n\nconst MIGRATION_PATHS = {\n\tlinkColor: [ [ 'style', 'elements', 'link', 'color', 'text' ] ],\n\ttextColor: [ [ 'textColor' ], [ 'style', 'color', 'text' ] ],\n\tbackgroundColor: [\n\t\t[ 'backgroundColor' ],\n\t\t[ 'style', 'color', 'background' ],\n\t],\n\tgradient: [ [ 'gradient' ], [ 'style', 'color', 'gradient' ] ],\n};\n\nexport function addTransforms( result, source, index, results ) {\n\tconst destinationBlockType = result.name;\n\tconst activeSupports = {\n\t\tlinkColor: hasLinkColorSupport( destinationBlockType ),\n\t\ttextColor: hasTextColorSupport( destinationBlockType ),\n\t\tbackgroundColor: hasBackgroundColorSupport( destinationBlockType ),\n\t\tgradient: hasGradientSupport( destinationBlockType ),\n\t};\n\treturn transformStyles(\n\t\tactiveSupports,\n\t\tMIGRATION_PATHS,\n\t\tresult,\n\t\tsource,\n\t\tindex,\n\t\tresults\n\t);\n}\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/color/addAttribute',\n\taddAttributes\n);\n\naddFilter(\n\t'blocks.getSaveContent.extraProps',\n\t'core/color/addSaveProps',\n\taddSaveProps\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/color/addEditProps',\n\taddEditProps\n);\n\naddFilter(\n\t'editor.BlockListBlock',\n\t'core/color/with-color-palette-styles',\n\twithColorPaletteStyles\n);\n\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/color/addTransforms',\n\taddTransforms\n);\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/hooks/color.js"],"names":["classnames","addFilter","getBlockSupport","useMemo","Platform","useCallback","createHigherOrderComponent","getColorClassName","getColorObjectByAttributeValues","__experimentalGetGradientClass","cleanEmptyObject","transformStyles","shouldSkipSerialization","useBlockSettings","useSetting","InspectorControls","useHasColorPanel","default","StylesColorPanel","BlockColorContrastChecker","COLOR_SUPPORT_KEY","hasColorSupport","blockType","colorSupport","link","gradient","background","text","hasLinkColorSupport","OS","hasGradientSupport","gradients","hasBackgroundColorSupport","hasTextColorSupport","addAttributes","settings","attributes","backgroundColor","Object","assign","type","textColor","addSaveProps","props","hasGradient","style","shouldSerialize","feature","textClass","undefined","gradientClass","backgroundClass","serializeHasBackground","hasBackground","color","newClassName","className","elements","addEditProps","existingGetEditWrapperProps","getEditWrapperProps","styleToAttributes","textColorValue","textColorSlug","startsWith","substring","length","backgroundColorValue","backgroundColorSlug","gradientValue","gradientSlug","updatedStyle","attributesToStyle","ColorInspectorControl","children","resetAllFilter","attributesResetAllFilter","existingStyle","ColorEdit","clientId","name","setAttributes","isEnabled","value","onChange","newStyle","defaultControls","enableContrastChecking","withColorPaletteStyles","BlockListBlock","userPalette","themePalette","defaultPalette","colors","extraStyles","wrapperProps","MIGRATION_PATHS","linkColor","addTransforms","result","source","index","results","destinationBlockType","activeSupports"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { useMemo, Platform, useCallback } from '@wordpress/element';\nimport { createHigherOrderComponent } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tgetColorClassName,\n\tgetColorObjectByAttributeValues,\n} from '../components/colors';\nimport { __experimentalGetGradientClass } from '../components/gradients';\nimport {\n\tcleanEmptyObject,\n\ttransformStyles,\n\tshouldSkipSerialization,\n\tuseBlockSettings,\n} from './utils';\nimport useSetting from '../components/use-setting';\nimport InspectorControls from '../components/inspector-controls';\nimport {\n\tuseHasColorPanel,\n\tdefault as StylesColorPanel,\n} from '../components/global-styles/color-panel';\nimport BlockColorContrastChecker from './contrast-checker';\n\nexport const COLOR_SUPPORT_KEY = 'color';\n\nconst hasColorSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\treturn (\n\t\tcolorSupport &&\n\t\t( colorSupport.link === true ||\n\t\t\tcolorSupport.gradient === true ||\n\t\t\tcolorSupport.background !== false ||\n\t\t\tcolorSupport.text !== false )\n\t);\n};\n\nconst hasLinkColorSupport = ( blockType ) => {\n\tif ( Platform.OS !== 'web' ) {\n\t\treturn false;\n\t}\n\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn (\n\t\tcolorSupport !== null &&\n\t\ttypeof colorSupport === 'object' &&\n\t\t!! colorSupport.link\n\t);\n};\n\nconst hasGradientSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn (\n\t\tcolorSupport !== null &&\n\t\ttypeof colorSupport === 'object' &&\n\t\t!! colorSupport.gradients\n\t);\n};\n\nconst hasBackgroundColorSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn colorSupport && colorSupport.background !== false;\n};\n\nconst hasTextColorSupport = ( blockType ) => {\n\tconst colorSupport = getBlockSupport( blockType, COLOR_SUPPORT_KEY );\n\n\treturn colorSupport && colorSupport.text !== false;\n};\n\n/**\n * Filters registered block settings, extending attributes to include\n * `backgroundColor` and `textColor` attribute.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Filtered block settings.\n */\nfunction addAttributes( settings ) {\n\tif ( ! hasColorSupport( settings ) ) {\n\t\treturn settings;\n\t}\n\n\t// Allow blocks to specify their own attribute definition with default values if needed.\n\tif ( ! settings.attributes.backgroundColor ) {\n\t\tObject.assign( settings.attributes, {\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t} );\n\t}\n\tif ( ! settings.attributes.textColor ) {\n\t\tObject.assign( settings.attributes, {\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( hasGradientSupport( settings ) && ! settings.attributes.gradient ) {\n\t\tObject.assign( settings.attributes, {\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn settings;\n}\n\n/**\n * Override props assigned to save component to inject colors classnames.\n *\n * @param {Object} props Additional props applied to save element.\n * @param {Object} blockType Block type.\n * @param {Object} attributes Block attributes.\n *\n * @return {Object} Filtered props applied to save element.\n */\nexport function addSaveProps( props, blockType, attributes ) {\n\tif (\n\t\t! hasColorSupport( blockType ) ||\n\t\tshouldSkipSerialization( blockType, COLOR_SUPPORT_KEY )\n\t) {\n\t\treturn props;\n\t}\n\n\tconst hasGradient = hasGradientSupport( blockType );\n\n\t// I'd have preferred to avoid the \"style\" attribute usage here\n\tconst { backgroundColor, textColor, gradient, style } = attributes;\n\n\tconst shouldSerialize = ( feature ) =>\n\t\t! shouldSkipSerialization( blockType, COLOR_SUPPORT_KEY, feature );\n\n\t// Primary color classes must come before the `has-text-color`,\n\t// `has-background` and `has-link-color` classes to maintain backwards\n\t// compatibility and avoid block invalidations.\n\tconst textClass = shouldSerialize( 'text' )\n\t\t? getColorClassName( 'color', textColor )\n\t\t: undefined;\n\n\tconst gradientClass = shouldSerialize( 'gradients' )\n\t\t? __experimentalGetGradientClass( gradient )\n\t\t: undefined;\n\n\tconst backgroundClass = shouldSerialize( 'background' )\n\t\t? getColorClassName( 'background-color', backgroundColor )\n\t\t: undefined;\n\n\tconst serializeHasBackground =\n\t\tshouldSerialize( 'background' ) || shouldSerialize( 'gradients' );\n\tconst hasBackground =\n\t\tbackgroundColor ||\n\t\tstyle?.color?.background ||\n\t\t( hasGradient && ( gradient || style?.color?.gradient ) );\n\n\tconst newClassName = classnames(\n\t\tprops.className,\n\t\ttextClass,\n\t\tgradientClass,\n\t\t{\n\t\t\t// Don't apply the background class if there's a custom gradient.\n\t\t\t[ backgroundClass ]:\n\t\t\t\t( ! hasGradient || ! style?.color?.gradient ) &&\n\t\t\t\t!! backgroundClass,\n\t\t\t'has-text-color':\n\t\t\t\tshouldSerialize( 'text' ) &&\n\t\t\t\t( textColor || style?.color?.text ),\n\t\t\t'has-background': serializeHasBackground && hasBackground,\n\t\t\t'has-link-color':\n\t\t\t\tshouldSerialize( 'link' ) && style?.elements?.link?.color,\n\t\t}\n\t);\n\tprops.className = newClassName ? newClassName : undefined;\n\n\treturn props;\n}\n\n/**\n * Filters registered block settings to extend the block edit wrapper\n * to apply the desired styles and classnames properly.\n *\n * @param {Object} settings Original block settings.\n *\n * @return {Object} Filtered block settings.\n */\nexport function addEditProps( settings ) {\n\tif (\n\t\t! hasColorSupport( settings ) ||\n\t\tshouldSkipSerialization( settings, COLOR_SUPPORT_KEY )\n\t) {\n\t\treturn settings;\n\t}\n\tconst existingGetEditWrapperProps = settings.getEditWrapperProps;\n\tsettings.getEditWrapperProps = ( attributes ) => {\n\t\tlet props = {};\n\t\tif ( existingGetEditWrapperProps ) {\n\t\t\tprops = existingGetEditWrapperProps( attributes );\n\t\t}\n\t\treturn addSaveProps( props, settings, attributes );\n\t};\n\n\treturn settings;\n}\n\nfunction styleToAttributes( style ) {\n\tconst textColorValue = style?.color?.text;\n\tconst textColorSlug = textColorValue?.startsWith( 'var:preset|color|' )\n\t\t? textColorValue.substring( 'var:preset|color|'.length )\n\t\t: undefined;\n\tconst backgroundColorValue = style?.color?.background;\n\tconst backgroundColorSlug = backgroundColorValue?.startsWith(\n\t\t'var:preset|color|'\n\t)\n\t\t? backgroundColorValue.substring( 'var:preset|color|'.length )\n\t\t: undefined;\n\tconst gradientValue = style?.color?.gradient;\n\tconst gradientSlug = gradientValue?.startsWith( 'var:preset|gradient|' )\n\t\t? gradientValue.substring( 'var:preset|gradient|'.length )\n\t\t: undefined;\n\tconst updatedStyle = { ...style };\n\tupdatedStyle.color = {\n\t\t...updatedStyle.color,\n\t\ttext: textColorSlug ? undefined : textColorValue,\n\t\tbackground: backgroundColorSlug ? undefined : backgroundColorValue,\n\t\tgradient: gradientSlug ? undefined : gradientValue,\n\t};\n\treturn {\n\t\tstyle: cleanEmptyObject( updatedStyle ),\n\t\ttextColor: textColorSlug,\n\t\tbackgroundColor: backgroundColorSlug,\n\t\tgradient: gradientSlug,\n\t};\n}\n\nfunction attributesToStyle( attributes ) {\n\treturn {\n\t\t...attributes.style,\n\t\tcolor: {\n\t\t\t...attributes.style?.color,\n\t\t\ttext: attributes.textColor\n\t\t\t\t? 'var:preset|color|' + attributes.textColor\n\t\t\t\t: attributes.style?.color?.text,\n\t\t\tbackground: attributes.backgroundColor\n\t\t\t\t? 'var:preset|color|' + attributes.backgroundColor\n\t\t\t\t: attributes.style?.color?.background,\n\t\t\tgradient: attributes.gradient\n\t\t\t\t? 'var:preset|gradient|' + attributes.gradient\n\t\t\t\t: attributes.style?.color?.gradient,\n\t\t},\n\t};\n}\n\nfunction ColorInspectorControl( { children, resetAllFilter } ) {\n\tconst attributesResetAllFilter = useCallback(\n\t\t( attributes ) => {\n\t\t\tconst existingStyle = attributesToStyle( attributes );\n\t\t\tconst updatedStyle = resetAllFilter( existingStyle );\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\t...styleToAttributes( updatedStyle ),\n\t\t\t};\n\t\t},\n\t\t[ resetAllFilter ]\n\t);\n\n\treturn (\n\t\t<InspectorControls\n\t\t\tgroup=\"color\"\n\t\t\tresetAllFilter={ attributesResetAllFilter }\n\t\t>\n\t\t\t{ children }\n\t\t</InspectorControls>\n\t);\n}\n\nexport function ColorEdit( props ) {\n\tconst { clientId, name, attributes, setAttributes } = props;\n\tconst settings = useBlockSettings( name );\n\tconst isEnabled = useHasColorPanel( settings );\n\tconst value = useMemo( () => {\n\t\treturn attributesToStyle( {\n\t\t\tstyle: attributes.style,\n\t\t\ttextColor: attributes.textColor,\n\t\t\tbackgroundColor: attributes.backgroundColor,\n\t\t\tgradient: attributes.gradient,\n\t\t} );\n\t}, [\n\t\tattributes.style,\n\t\tattributes.textColor,\n\t\tattributes.backgroundColor,\n\t\tattributes.gradient,\n\t] );\n\n\tconst onChange = ( newStyle ) => {\n\t\tsetAttributes( styleToAttributes( newStyle ) );\n\t};\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst defaultControls = getBlockSupport( props.name, [\n\t\tCOLOR_SUPPORT_KEY,\n\t\t'__experimentalDefaultControls',\n\t] );\n\n\tconst enableContrastChecking =\n\t\tPlatform.OS === 'web' &&\n\t\t! value?.color?.gradient &&\n\t\t( settings?.color?.text || settings?.color?.link ) &&\n\t\t// Contrast checking is enabled by default.\n\t\t// Deactivating it requires `enableContrastChecker` to have\n\t\t// an explicit value of `false`.\n\t\tfalse !==\n\t\t\tgetBlockSupport( props.name, [\n\t\t\t\tCOLOR_SUPPORT_KEY,\n\t\t\t\t'enableContrastChecker',\n\t\t\t] );\n\n\treturn (\n\t\t<StylesColorPanel\n\t\t\tas={ ColorInspectorControl }\n\t\t\tpanelId={ clientId }\n\t\t\tsettings={ settings }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tdefaultControls={ defaultControls }\n\t\t\tenableContrastChecker={\n\t\t\t\tfalse !==\n\t\t\t\tgetBlockSupport( props.name, [\n\t\t\t\t\tCOLOR_SUPPORT_KEY,\n\t\t\t\t\t'enableContrastChecker',\n\t\t\t\t] )\n\t\t\t}\n\t\t>\n\t\t\t{ enableContrastChecking && (\n\t\t\t\t<BlockColorContrastChecker clientId={ clientId } />\n\t\t\t) }\n\t\t</StylesColorPanel>\n\t);\n}\n\n/**\n * This adds inline styles for color palette colors.\n * Ideally, this is not needed and themes should load their palettes on the editor.\n *\n * @param {Function} BlockListBlock Original component.\n *\n * @return {Function} Wrapped component.\n */\nexport const withColorPaletteStyles = createHigherOrderComponent(\n\t( BlockListBlock ) => ( props ) => {\n\t\tconst { name, attributes } = props;\n\t\tconst { backgroundColor, textColor } = attributes;\n\t\tconst userPalette = useSetting( 'color.palette.custom' );\n\t\tconst themePalette = useSetting( 'color.palette.theme' );\n\t\tconst defaultPalette = useSetting( 'color.palette.default' );\n\t\tconst colors = useMemo(\n\t\t\t() => [\n\t\t\t\t...( userPalette || [] ),\n\t\t\t\t...( themePalette || [] ),\n\t\t\t\t...( defaultPalette || [] ),\n\t\t\t],\n\t\t\t[ userPalette, themePalette, defaultPalette ]\n\t\t);\n\t\tif (\n\t\t\t! hasColorSupport( name ) ||\n\t\t\tshouldSkipSerialization( name, COLOR_SUPPORT_KEY )\n\t\t) {\n\t\t\treturn <BlockListBlock { ...props } />;\n\t\t}\n\t\tconst extraStyles = {};\n\n\t\tif (\n\t\t\ttextColor &&\n\t\t\t! shouldSkipSerialization( name, COLOR_SUPPORT_KEY, 'text' )\n\t\t) {\n\t\t\textraStyles.color = getColorObjectByAttributeValues(\n\t\t\t\tcolors,\n\t\t\t\ttextColor\n\t\t\t)?.color;\n\t\t}\n\t\tif (\n\t\t\tbackgroundColor &&\n\t\t\t! shouldSkipSerialization( name, COLOR_SUPPORT_KEY, 'background' )\n\t\t) {\n\t\t\textraStyles.backgroundColor = getColorObjectByAttributeValues(\n\t\t\t\tcolors,\n\t\t\t\tbackgroundColor\n\t\t\t)?.color;\n\t\t}\n\n\t\tlet wrapperProps = props.wrapperProps;\n\t\twrapperProps = {\n\t\t\t...props.wrapperProps,\n\t\t\tstyle: {\n\t\t\t\t...extraStyles,\n\t\t\t\t...props.wrapperProps?.style,\n\t\t\t},\n\t\t};\n\n\t\treturn <BlockListBlock { ...props } wrapperProps={ wrapperProps } />;\n\t},\n\t'withColorPaletteStyles'\n);\n\nconst MIGRATION_PATHS = {\n\tlinkColor: [ [ 'style', 'elements', 'link', 'color', 'text' ] ],\n\ttextColor: [ [ 'textColor' ], [ 'style', 'color', 'text' ] ],\n\tbackgroundColor: [\n\t\t[ 'backgroundColor' ],\n\t\t[ 'style', 'color', 'background' ],\n\t],\n\tgradient: [ [ 'gradient' ], [ 'style', 'color', 'gradient' ] ],\n};\n\nexport function addTransforms( result, source, index, results ) {\n\tconst destinationBlockType = result.name;\n\tconst activeSupports = {\n\t\tlinkColor: hasLinkColorSupport( destinationBlockType ),\n\t\ttextColor: hasTextColorSupport( destinationBlockType ),\n\t\tbackgroundColor: hasBackgroundColorSupport( destinationBlockType ),\n\t\tgradient: hasGradientSupport( destinationBlockType ),\n\t};\n\treturn transformStyles(\n\t\tactiveSupports,\n\t\tMIGRATION_PATHS,\n\t\tresult,\n\t\tsource,\n\t\tindex,\n\t\tresults\n\t);\n}\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/color/addAttribute',\n\taddAttributes\n);\n\naddFilter(\n\t'blocks.getSaveContent.extraProps',\n\t'core/color/addSaveProps',\n\taddSaveProps\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/color/addEditProps',\n\taddEditProps\n);\n\naddFilter(\n\t'editor.BlockListBlock',\n\t'core/color/with-color-palette-styles',\n\twithColorPaletteStyles\n);\n\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/color/addTransforms',\n\taddTransforms\n);\n"]}
@@ -17,11 +17,10 @@ import { useEffect, useRef, useCallback } from '@wordpress/element';
17
17
  import { store as blockEditorStore } from '../store';
18
18
  import { BlockControls, BlockSettingsMenuControls } from '../components';
19
19
 
20
- function StopEditingAsBlocksOnOutsideSelect(_ref) {
21
- let {
22
- clientId,
23
- stopEditingAsBlock
24
- } = _ref;
20
+ function StopEditingAsBlocksOnOutsideSelect({
21
+ clientId,
22
+ stopEditingAsBlock
23
+ }) {
25
24
  const isBlockOrDescendantSelected = useSelect(select => {
26
25
  const {
27
26
  isBlockSelected,
@@ -102,31 +101,28 @@ export const withBlockControls = createHigherOrderComponent(BlockEdit => props =
102
101
  onClick: () => {
103
102
  stopEditingAsBlock();
104
103
  }
105
- }, __('Done')))), showStartEditingAsBlocks && createElement(BlockSettingsMenuControls, null, _ref2 => {
106
- let {
107
- onClose
108
- } = _ref2;
109
- return createElement(MenuItem, {
110
- onClick: () => {
111
- __unstableMarkNextChangeAsNotPersistent();
104
+ }, __('Done')))), showStartEditingAsBlocks && createElement(BlockSettingsMenuControls, null, ({
105
+ onClose
106
+ }) => createElement(MenuItem, {
107
+ onClick: () => {
108
+ __unstableMarkNextChangeAsNotPersistent();
112
109
 
113
- updateBlockAttributes(props.clientId, {
114
- templateLock: undefined
115
- });
116
- updateBlockListSettings(props.clientId, { ...getBlockListSettings(props.clientId),
117
- templateLock: false
118
- });
119
- focusModeToRevert.current = getSettings().focusMode;
120
- updateSettings({
121
- focusMode: true
122
- });
110
+ updateBlockAttributes(props.clientId, {
111
+ templateLock: undefined
112
+ });
113
+ updateBlockListSettings(props.clientId, { ...getBlockListSettings(props.clientId),
114
+ templateLock: false
115
+ });
116
+ focusModeToRevert.current = getSettings().focusMode;
117
+ updateSettings({
118
+ focusMode: true
119
+ });
123
120
 
124
- __unstableSetTemporarilyEditingAsBlocks(props.clientId);
121
+ __unstableSetTemporarilyEditingAsBlocks(props.clientId);
125
122
 
126
- onClose();
127
- }
128
- }, __('Modify'));
129
- }), createElement(BlockEdit, _extends({
123
+ onClose();
124
+ }
125
+ }, __('Modify'))), createElement(BlockEdit, _extends({
130
126
  key: "edit"
131
127
  }, props)));
132
128
  }, 'withToolbarControls');