@wordpress/block-editor 12.25.0 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1876) hide show
  1. package/CHANGELOG.md +15 -3
  2. package/README.md +7 -1
  3. package/build/autocompleters/block.js +7 -6
  4. package/build/autocompleters/block.js.map +1 -1
  5. package/build/autocompleters/link.js +10 -8
  6. package/build/autocompleters/link.js.map +1 -1
  7. package/build/components/alignment-control/index.js +3 -3
  8. package/build/components/alignment-control/index.js.map +1 -1
  9. package/build/components/alignment-control/ui.js +2 -2
  10. package/build/components/alignment-control/ui.js.map +1 -1
  11. package/build/components/audio-player/audio-url-parser.native.js +24 -0
  12. package/build/components/audio-player/audio-url-parser.native.js.map +1 -0
  13. package/build/components/audio-player/index.native.js +174 -0
  14. package/build/components/audio-player/index.native.js.map +1 -0
  15. package/build/components/autocomplete/index.js +3 -4
  16. package/build/components/autocomplete/index.js.map +1 -1
  17. package/build/components/block-actions/index.js +4 -2
  18. package/build/components/block-actions/index.js.map +1 -1
  19. package/build/components/block-alignment-control/index.js +3 -3
  20. package/build/components/block-alignment-control/index.js.map +1 -1
  21. package/build/components/block-alignment-control/ui.js +34 -31
  22. package/build/components/block-alignment-control/ui.js.map +1 -1
  23. package/build/components/block-alignment-control/ui.native.js +2 -2
  24. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  25. package/build/components/block-alignment-matrix-control/index.js +5 -5
  26. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  27. package/build/components/block-bindings-toolbar-indicator/index.js +92 -11
  28. package/build/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  29. package/build/components/block-breadcrumb/index.js +38 -34
  30. package/build/components/block-breadcrumb/index.js.map +1 -1
  31. package/build/components/block-canvas/index.js +36 -31
  32. package/build/components/block-canvas/index.js.map +1 -1
  33. package/build/components/block-caption/index.native.js +15 -14
  34. package/build/components/block-caption/index.native.js.map +1 -1
  35. package/build/components/block-card/index.js +33 -28
  36. package/build/components/block-card/index.js.map +1 -1
  37. package/build/components/block-compare/block-view.js +27 -18
  38. package/build/components/block-compare/block-view.js.map +1 -1
  39. package/build/components/block-compare/index.js +25 -24
  40. package/build/components/block-compare/index.js.map +1 -1
  41. package/build/components/block-context/index.js +3 -4
  42. package/build/components/block-context/index.js.map +1 -1
  43. package/build/components/block-controls/fill.js +22 -16
  44. package/build/components/block-controls/fill.js.map +1 -1
  45. package/build/components/block-controls/index.js +3 -3
  46. package/build/components/block-controls/index.js.map +1 -1
  47. package/build/components/block-controls/slot.js +6 -4
  48. package/build/components/block-controls/slot.js.map +1 -1
  49. package/build/components/block-controls/slot.native.js +12 -9
  50. package/build/components/block-controls/slot.native.js.map +1 -1
  51. package/build/components/block-controls/use-has-block-controls.js +1 -1
  52. package/build/components/block-controls/use-has-block-controls.js.map +1 -1
  53. package/build/components/block-draggable/draggable-chip.js +27 -19
  54. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  55. package/build/components/block-draggable/draggable-chip.native.js +9 -8
  56. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  57. package/build/components/block-draggable/dropping-insertion-point.native.js +3 -4
  58. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  59. package/build/components/block-draggable/index.js +14 -13
  60. package/build/components/block-draggable/index.js.map +1 -1
  61. package/build/components/block-draggable/index.native.js +37 -30
  62. package/build/components/block-draggable/index.native.js.map +1 -1
  63. package/build/components/block-edit/edit.js +7 -8
  64. package/build/components/block-edit/edit.js.map +1 -1
  65. package/build/components/block-edit/edit.native.js +3 -4
  66. package/build/components/block-edit/edit.native.js.map +1 -1
  67. package/build/components/block-edit/index.js +17 -9
  68. package/build/components/block-edit/index.js.map +1 -1
  69. package/build/components/block-edit/multiple-usage-warning.js +47 -0
  70. package/build/components/block-edit/multiple-usage-warning.js.map +1 -0
  71. package/build/components/block-edit-visually-button/index.js +9 -6
  72. package/build/components/block-edit-visually-button/index.js.map +1 -1
  73. package/build/components/block-full-height-alignment-control/index.js +2 -2
  74. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  75. package/build/components/block-heading-level-dropdown/heading-level-icon.js +3 -5
  76. package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  77. package/build/components/block-heading-level-dropdown/index.js +4 -4
  78. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  79. package/build/components/block-heading-level-dropdown/index.native.js +4 -4
  80. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  81. package/build/components/block-icon/index.js +8 -7
  82. package/build/components/block-icon/index.js.map +1 -1
  83. package/build/components/block-icon/index.native.js +6 -5
  84. package/build/components/block-icon/index.native.js.map +1 -1
  85. package/build/components/block-info-slot-fill/index.js +3 -3
  86. package/build/components/block-info-slot-fill/index.js.map +1 -1
  87. package/build/components/block-inspector/index.js +103 -89
  88. package/build/components/block-inspector/index.js.map +1 -1
  89. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  90. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  91. package/build/components/block-list/block-crash-warning.js +5 -4
  92. package/build/components/block-list/block-crash-warning.js.map +1 -1
  93. package/build/components/block-list/block-crash-warning.native.js +2 -2
  94. package/build/components/block-list/block-crash-warning.native.js.map +1 -1
  95. package/build/components/block-list/block-html.js +2 -2
  96. package/build/components/block-list/block-html.js.map +1 -1
  97. package/build/components/block-list/block-invalid-warning.js +25 -21
  98. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  99. package/build/components/block-list/block-invalid-warning.native.js +12 -11
  100. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  101. package/build/components/block-list/block-list-item-cell.native.js +5 -4
  102. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  103. package/build/components/block-list/block-list-item.native.js +29 -28
  104. package/build/components/block-list/block-list-item.native.js.map +1 -1
  105. package/build/components/block-list/block-outline.native.js +2 -2
  106. package/build/components/block-list/block-outline.native.js.map +1 -1
  107. package/build/components/block-list/block-selection-button.native.js +35 -33
  108. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  109. package/build/components/block-list/block.js +110 -65
  110. package/build/components/block-list/block.js.map +1 -1
  111. package/build/components/block-list/block.native.js +65 -56
  112. package/build/components/block-list/block.native.js.map +1 -1
  113. package/build/components/block-list/grid-item.native.js +5 -4
  114. package/build/components/block-list/grid-item.native.js.map +1 -1
  115. package/build/components/block-list/index.js +40 -36
  116. package/build/components/block-list/index.js.map +1 -1
  117. package/build/components/block-list/index.native.js +97 -85
  118. package/build/components/block-list/index.native.js.map +1 -1
  119. package/build/components/block-list/insertion-point.native.js +12 -10
  120. package/build/components/block-list/insertion-point.native.js.map +1 -1
  121. package/build/components/block-list/layout.js +7 -3
  122. package/build/components/block-list/layout.js.map +1 -1
  123. package/build/components/block-list/subdirectory-icon.js +8 -7
  124. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  125. package/build/components/block-list/use-block-props/index.js +6 -3
  126. package/build/components/block-list/use-block-props/index.js.map +1 -1
  127. package/build/components/block-list/use-block-props/use-scroll-into-view.js +44 -0
  128. package/build/components/block-list/use-block-props/use-scroll-into-view.js.map +1 -0
  129. package/build/components/block-list-appender/index.js +11 -10
  130. package/build/components/block-list-appender/index.js.map +1 -1
  131. package/build/components/block-list-appender/index.native.js +4 -4
  132. package/build/components/block-list-appender/index.native.js.map +1 -1
  133. package/build/components/block-lock/menu-item.js +13 -10
  134. package/build/components/block-lock/menu-item.js.map +1 -1
  135. package/build/components/block-lock/modal.js +107 -90
  136. package/build/components/block-lock/modal.js.map +1 -1
  137. package/build/components/block-lock/toolbar.js +18 -15
  138. package/build/components/block-lock/toolbar.js.map +1 -1
  139. package/build/components/block-media-update-progress/index.native.js +17 -15
  140. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  141. package/build/components/block-mover/button.js +20 -17
  142. package/build/components/block-mover/button.js.map +1 -1
  143. package/build/components/block-mover/index.js +36 -29
  144. package/build/components/block-mover/index.js.map +1 -1
  145. package/build/components/block-mover/index.native.js +29 -27
  146. package/build/components/block-mover/index.native.js.map +1 -1
  147. package/build/components/block-navigation/dropdown.js +11 -9
  148. package/build/components/block-navigation/dropdown.js.map +1 -1
  149. package/build/components/block-parent-selector/index.js +14 -15
  150. package/build/components/block-parent-selector/index.js.map +1 -1
  151. package/build/components/block-pattern-setup/index.js +88 -76
  152. package/build/components/block-pattern-setup/index.js.map +1 -1
  153. package/build/components/block-pattern-setup/setup-toolbar.js +50 -45
  154. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  155. package/build/components/block-patterns-list/index.js +119 -88
  156. package/build/components/block-patterns-list/index.js.map +1 -1
  157. package/build/components/block-patterns-paging/index.js +70 -52
  158. package/build/components/block-patterns-paging/index.js.map +1 -1
  159. package/build/components/block-popover/cover.js +19 -13
  160. package/build/components/block-popover/cover.js.map +1 -1
  161. package/build/components/block-popover/drop-zone.js +11 -10
  162. package/build/components/block-popover/drop-zone.js.map +1 -1
  163. package/build/components/block-popover/inbetween.js +10 -9
  164. package/build/components/block-popover/inbetween.js.map +1 -1
  165. package/build/components/block-popover/index.js +28 -8
  166. package/build/components/block-popover/index.js.map +1 -1
  167. package/build/components/block-preview/auto.js +53 -47
  168. package/build/components/block-preview/auto.js.map +1 -1
  169. package/build/components/block-preview/index.js +18 -16
  170. package/build/components/block-preview/index.js.map +1 -1
  171. package/build/components/block-quick-navigation/index.js +24 -16
  172. package/build/components/block-quick-navigation/index.js.map +1 -1
  173. package/build/components/block-removal-warning-modal/index.js +18 -12
  174. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  175. package/build/components/block-rename/modal.js +44 -37
  176. package/build/components/block-rename/modal.js.map +1 -1
  177. package/build/components/block-rename/rename-control.js +24 -21
  178. package/build/components/block-rename/rename-control.js.map +1 -1
  179. package/build/components/block-selection-clearer/index.js +2 -2
  180. package/build/components/block-selection-clearer/index.js.map +1 -1
  181. package/build/components/block-settings/button.native.js +13 -9
  182. package/build/components/block-settings/button.native.js.map +1 -1
  183. package/build/components/block-settings/container.native.js +40 -28
  184. package/build/components/block-settings/container.native.js.map +1 -1
  185. package/build/components/block-settings-menu/block-html-convert-button.js +5 -4
  186. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  187. package/build/components/block-settings-menu/block-mode-toggle.js +5 -4
  188. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  189. package/build/components/block-settings-menu/block-parent-selector-menu-item.js +7 -6
  190. package/build/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  191. package/build/components/block-settings-menu/block-settings-dropdown.js +99 -78
  192. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  193. package/build/components/block-settings-menu/index.js +10 -6
  194. package/build/components/block-settings-menu/index.js.map +1 -1
  195. package/build/components/block-settings-menu-controls/index.js +37 -29
  196. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  197. package/build/components/block-styles/index.js +44 -39
  198. package/build/components/block-styles/index.js.map +1 -1
  199. package/build/components/block-styles/index.native.js +7 -7
  200. package/build/components/block-styles/index.native.js.map +1 -1
  201. package/build/components/block-styles/menu-items.js +17 -14
  202. package/build/components/block-styles/menu-items.js.map +1 -1
  203. package/build/components/block-styles/preview-panel.js +2 -2
  204. package/build/components/block-styles/preview-panel.js.map +1 -1
  205. package/build/components/block-styles/preview.native.js +24 -21
  206. package/build/components/block-styles/preview.native.js.map +1 -1
  207. package/build/components/block-switcher/block-styles-menu.js +8 -7
  208. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  209. package/build/components/block-switcher/block-transformations-menu.js +32 -30
  210. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  211. package/build/components/block-switcher/block-transformations-menu.native.js +2 -2
  212. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  213. package/build/components/block-switcher/block-variation-transformations.js +19 -17
  214. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  215. package/build/components/block-switcher/index.js +85 -70
  216. package/build/components/block-switcher/index.js.map +1 -1
  217. package/build/components/block-switcher/pattern-transformations-menu.js +61 -51
  218. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  219. package/build/components/block-switcher/preview-block-popover.js +22 -17
  220. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  221. package/build/components/block-toolbar/block-toolbar-menu.native.js +38 -34
  222. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  223. package/build/components/block-toolbar/index.js +56 -46
  224. package/build/components/block-toolbar/index.js.map +1 -1
  225. package/build/components/block-toolbar/index.native.js +27 -21
  226. package/build/components/block-toolbar/index.native.js.map +1 -1
  227. package/build/components/block-toolbar/shuffle.js +7 -5
  228. package/build/components/block-toolbar/shuffle.js.map +1 -1
  229. package/build/components/block-tools/block-selection-button.js +63 -50
  230. package/build/components/block-tools/block-selection-button.js.map +1 -1
  231. package/build/components/block-tools/block-toolbar-breadcrumb.js +11 -10
  232. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  233. package/build/components/block-tools/block-toolbar-popover.js +17 -16
  234. package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
  235. package/build/components/block-tools/empty-block-inserter.js +15 -13
  236. package/build/components/block-tools/empty-block-inserter.js.map +1 -1
  237. package/build/components/block-tools/index.js +49 -27
  238. package/build/components/block-tools/index.js.map +1 -1
  239. package/build/components/block-tools/insertion-point.js +44 -42
  240. package/build/components/block-tools/insertion-point.js.map +1 -1
  241. package/build/components/block-tools/zoom-out-mode-inserters.js +70 -25
  242. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  243. package/build/components/block-types-list/index.js +15 -15
  244. package/build/components/block-types-list/index.js.map +1 -1
  245. package/build/components/block-types-list/index.native.js +30 -26
  246. package/build/components/block-types-list/index.native.js.map +1 -1
  247. package/build/components/block-variation-picker/index.js +32 -27
  248. package/build/components/block-variation-picker/index.js.map +1 -1
  249. package/build/components/block-variation-picker/index.native.js +32 -25
  250. package/build/components/block-variation-picker/index.native.js.map +1 -1
  251. package/build/components/block-variation-transforms/index.js +53 -47
  252. package/build/components/block-variation-transforms/index.js.map +1 -1
  253. package/build/components/block-vertical-alignment-control/icons.js +31 -26
  254. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  255. package/build/components/block-vertical-alignment-control/index.js +3 -3
  256. package/build/components/block-vertical-alignment-control/index.js.map +1 -1
  257. package/build/components/block-vertical-alignment-control/ui.js +2 -2
  258. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  259. package/build/components/border-radius-control/all-input-control.js +3 -3
  260. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  261. package/build/components/border-radius-control/index.js +43 -38
  262. package/build/components/border-radius-control/index.js.map +1 -1
  263. package/build/components/border-radius-control/input-controls.js +23 -21
  264. package/build/components/border-radius-control/input-controls.js.map +1 -1
  265. package/build/components/border-radius-control/linked-button.js +12 -11
  266. package/build/components/border-radius-control/linked-button.js.map +1 -1
  267. package/build/components/button-block-appender/index.js +17 -14
  268. package/build/components/button-block-appender/index.js.map +1 -1
  269. package/build/components/button-block-appender/index.native.js +28 -24
  270. package/build/components/button-block-appender/index.native.js.map +1 -1
  271. package/build/components/caption/index.native.js +22 -21
  272. package/build/components/caption/index.native.js.map +1 -1
  273. package/build/components/child-layout-control/index.js +137 -129
  274. package/build/components/child-layout-control/index.js.map +1 -1
  275. package/build/components/color-palette/control.js +2 -2
  276. package/build/components/color-palette/control.js.map +1 -1
  277. package/build/components/color-palette/with-color-context.js +2 -2
  278. package/build/components/color-palette/with-color-context.js.map +1 -1
  279. package/build/components/color-style-selector/index.js +29 -20
  280. package/build/components/color-style-selector/index.js.map +1 -1
  281. package/build/components/colors/utils.js +3 -3
  282. package/build/components/colors/utils.js.map +1 -1
  283. package/build/components/colors/with-colors.js +8 -7
  284. package/build/components/colors/with-colors.js.map +1 -1
  285. package/build/components/colors-gradients/control.js +54 -40
  286. package/build/components/colors-gradients/control.js.map +1 -1
  287. package/build/components/colors-gradients/dropdown.js +72 -63
  288. package/build/components/colors-gradients/dropdown.js.map +1 -1
  289. package/build/components/colors-gradients/panel-color-gradient-settings.js +23 -20
  290. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  291. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +11 -7
  292. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  293. package/build/components/contrast-checker/index.js +10 -8
  294. package/build/components/contrast-checker/index.js.map +1 -1
  295. package/build/components/contrast-checker/index.native.js +12 -10
  296. package/build/components/contrast-checker/index.native.js.map +1 -1
  297. package/build/components/convert-to-group-buttons/index.js +22 -12
  298. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  299. package/build/components/convert-to-group-buttons/toolbar.js +20 -18
  300. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  301. package/build/components/copy-handler/index.js +2 -2
  302. package/build/components/copy-handler/index.js.map +1 -1
  303. package/build/components/date-format-picker/index.js +44 -40
  304. package/build/components/date-format-picker/index.js.map +1 -1
  305. package/build/components/default-block-appender/index.js +34 -32
  306. package/build/components/default-block-appender/index.js.map +1 -1
  307. package/build/components/default-block-appender/index.native.js +14 -12
  308. package/build/components/default-block-appender/index.native.js.map +1 -1
  309. package/build/components/dimensions-tool/aspect-ratio-tool.js +42 -49
  310. package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  311. package/build/components/dimensions-tool/index.js +116 -115
  312. package/build/components/dimensions-tool/index.js.map +1 -1
  313. package/build/components/dimensions-tool/scale-tool.js +16 -16
  314. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  315. package/build/components/dimensions-tool/width-height-tool.js +37 -33
  316. package/build/components/dimensions-tool/width-height-tool.js.map +1 -1
  317. package/build/components/duotone-control/index.js +21 -18
  318. package/build/components/duotone-control/index.js.map +1 -1
  319. package/build/components/editable-text/index.js +6 -5
  320. package/build/components/editable-text/index.js.map +1 -1
  321. package/build/components/editor-styles/index.js +23 -21
  322. package/build/components/editor-styles/index.js.map +1 -1
  323. package/build/components/floating-toolbar/index.native.js +18 -16
  324. package/build/components/floating-toolbar/index.native.js.map +1 -1
  325. package/build/components/floating-toolbar/nav-up-icon.js +14 -13
  326. package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
  327. package/build/components/font-appearance-control/index.js +2 -2
  328. package/build/components/font-appearance-control/index.js.map +1 -1
  329. package/build/components/font-family/index.js +2 -2
  330. package/build/components/font-family/index.js.map +1 -1
  331. package/build/components/font-sizes/font-size-picker.js +2 -2
  332. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  333. package/build/components/font-sizes/utils.js +4 -3
  334. package/build/components/font-sizes/utils.js.map +1 -1
  335. package/build/components/font-sizes/with-font-sizes.js +3 -3
  336. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  337. package/build/components/global-styles/advanced-panel.js +17 -15
  338. package/build/components/global-styles/advanced-panel.js.map +1 -1
  339. package/build/components/global-styles/background-panel.js +189 -123
  340. package/build/components/global-styles/background-panel.js.map +1 -1
  341. package/build/components/global-styles/border-panel.js +62 -56
  342. package/build/components/global-styles/border-panel.js.map +1 -1
  343. package/build/components/global-styles/color-panel.js +113 -89
  344. package/build/components/global-styles/color-panel.js.map +1 -1
  345. package/build/components/global-styles/color-panel.native.js +14 -11
  346. package/build/components/global-styles/color-panel.native.js.map +1 -1
  347. package/build/components/global-styles/dimensions-panel.js +184 -172
  348. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  349. package/build/components/global-styles/filters-panel.js +79 -66
  350. package/build/components/global-styles/filters-panel.js.map +1 -1
  351. package/build/components/global-styles/hooks.js +14 -2
  352. package/build/components/global-styles/hooks.js.map +1 -1
  353. package/build/components/global-styles/image-settings-panel.js +26 -22
  354. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  355. package/build/components/global-styles/index.js +18 -0
  356. package/build/components/global-styles/index.js.map +1 -1
  357. package/build/components/global-styles/shadow-panel-components.js +78 -69
  358. package/build/components/global-styles/shadow-panel-components.js.map +1 -1
  359. package/build/components/global-styles/theme-file-uri-utils.js +80 -0
  360. package/build/components/global-styles/theme-file-uri-utils.js.map +1 -0
  361. package/build/components/global-styles/typography-panel.js +175 -134
  362. package/build/components/global-styles/typography-panel.js.map +1 -1
  363. package/build/components/global-styles/use-global-styles-context.native.js +450 -0
  364. package/build/components/global-styles/use-global-styles-context.native.js.map +1 -0
  365. package/build/components/global-styles/use-global-styles-output.js +114 -79
  366. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  367. package/build/components/gradients/with-gradient.js +2 -2
  368. package/build/components/gradients/with-gradient.js.map +1 -1
  369. package/build/components/grid-visualizer/grid-item-resizer.js +161 -43
  370. package/build/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  371. package/build/components/grid-visualizer/grid-visualizer.js +30 -19
  372. package/build/components/grid-visualizer/grid-visualizer.js.map +1 -1
  373. package/build/components/height-control/index.js +39 -32
  374. package/build/components/height-control/index.js.map +1 -1
  375. package/build/components/iframe/index.js +118 -71
  376. package/build/components/iframe/index.js.map +1 -1
  377. package/build/components/image-editor/aspect-ratio-dropdown.js +95 -74
  378. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  379. package/build/components/image-editor/context.js +5 -4
  380. package/build/components/image-editor/context.js.map +1 -1
  381. package/build/components/image-editor/cropper.js +26 -23
  382. package/build/components/image-editor/cropper.js.map +1 -1
  383. package/build/components/image-editor/form-controls.js +11 -7
  384. package/build/components/image-editor/form-controls.js.map +1 -1
  385. package/build/components/image-editor/index.js +23 -14
  386. package/build/components/image-editor/index.js.map +1 -1
  387. package/build/components/image-editor/rotation-button.js +2 -2
  388. package/build/components/image-editor/rotation-button.js.map +1 -1
  389. package/build/components/image-editor/zoom-dropdown.js +4 -4
  390. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  391. package/build/components/image-link-destinations/index.native.js +37 -27
  392. package/build/components/image-link-destinations/index.native.js.map +1 -1
  393. package/build/components/image-size-control/index.js +53 -45
  394. package/build/components/image-size-control/index.js.map +1 -1
  395. package/build/components/index.js +8 -0
  396. package/build/components/index.js.map +1 -1
  397. package/build/components/index.native.js +37 -0
  398. package/build/components/index.native.js.map +1 -1
  399. package/build/components/inner-blocks/button-block-appender.js +4 -4
  400. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  401. package/build/components/inner-blocks/default-block-appender.js +2 -2
  402. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  403. package/build/components/inner-blocks/index.js +41 -37
  404. package/build/components/inner-blocks/index.js.map +1 -1
  405. package/build/components/inner-blocks/index.native.js +31 -29
  406. package/build/components/inner-blocks/index.native.js.map +1 -1
  407. package/build/components/inner-blocks/use-nested-settings-update.js +10 -13
  408. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  409. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js +20 -17
  410. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  411. package/build/components/inner-blocks/with-client-id.js +2 -2
  412. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  413. package/build/components/inserter/block-patterns-explorer/index.js +22 -20
  414. package/build/components/inserter/block-patterns-explorer/index.js.map +1 -1
  415. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +39 -36
  416. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  417. package/build/components/inserter/block-patterns-explorer/pattern-list.js +26 -20
  418. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  419. package/build/components/inserter/block-patterns-tab/index.js +44 -28
  420. package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
  421. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +21 -4
  422. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  423. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +43 -32
  424. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  425. package/build/components/inserter/block-patterns-tab/patterns-filter.js +54 -42
  426. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  427. package/build/components/inserter/block-types-tab.js +108 -64
  428. package/build/components/inserter/block-types-tab.js.map +1 -1
  429. package/build/components/inserter/block-types-tab.native.js +2 -2
  430. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  431. package/build/components/inserter/category-tabs/index.js +26 -20
  432. package/build/components/inserter/category-tabs/index.js.map +1 -1
  433. package/build/components/inserter/hooks/use-block-types-state.js +9 -4
  434. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  435. package/build/components/inserter/hooks/use-insertion-point.js +44 -7
  436. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  437. package/build/components/inserter/hooks/use-patterns-state.js +12 -5
  438. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  439. package/build/components/inserter/index.js +8 -8
  440. package/build/components/inserter/index.js.map +1 -1
  441. package/build/components/inserter/index.native.js +21 -19
  442. package/build/components/inserter/index.native.js.map +1 -1
  443. package/build/components/inserter/library.js +22 -9
  444. package/build/components/inserter/library.js.map +1 -1
  445. package/build/components/inserter/media-tab/media-list.js +9 -9
  446. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  447. package/build/components/inserter/media-tab/media-panel.js +19 -17
  448. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  449. package/build/components/inserter/media-tab/media-preview.js +93 -67
  450. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  451. package/build/components/inserter/media-tab/media-tab.js +44 -36
  452. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  453. package/build/components/inserter/media-tab/utils.js +2 -2
  454. package/build/components/inserter/media-tab/utils.js.map +1 -1
  455. package/build/components/inserter/menu.js +138 -105
  456. package/build/components/inserter/menu.js.map +1 -1
  457. package/build/components/inserter/menu.native.js +34 -28
  458. package/build/components/inserter/menu.native.js.map +1 -1
  459. package/build/components/inserter/mobile-tab-navigation.js +56 -40
  460. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  461. package/build/components/inserter/no-results.js +10 -7
  462. package/build/components/inserter/no-results.js.map +1 -1
  463. package/build/components/inserter/no-results.native.js +13 -8
  464. package/build/components/inserter/no-results.native.js.map +1 -1
  465. package/build/components/inserter/panel.js +15 -10
  466. package/build/components/inserter/panel.js.map +1 -1
  467. package/build/components/inserter/preview-panel.js +24 -20
  468. package/build/components/inserter/preview-panel.js.map +1 -1
  469. package/build/components/inserter/quick-inserter.js +37 -33
  470. package/build/components/inserter/quick-inserter.js.map +1 -1
  471. package/build/components/inserter/reusable-block-rename-hint.js +20 -18
  472. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  473. package/build/components/inserter/reusable-blocks-tab.native.js +2 -2
  474. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  475. package/build/components/inserter/search-results.js +52 -41
  476. package/build/components/inserter/search-results.js.map +1 -1
  477. package/build/components/inserter/search-results.native.js +3 -3
  478. package/build/components/inserter/search-results.native.js.map +1 -1
  479. package/build/components/inserter/tabs.js +34 -18
  480. package/build/components/inserter/tabs.js.map +1 -1
  481. package/build/components/inserter/tabs.native.js +20 -18
  482. package/build/components/inserter/tabs.native.js.map +1 -1
  483. package/build/components/inserter/tips.js +7 -5
  484. package/build/components/inserter/tips.js.map +1 -1
  485. package/build/components/inserter-button/index.native.js +28 -23
  486. package/build/components/inserter-button/index.native.js.map +1 -1
  487. package/build/components/inserter-button/sparkles.js +8 -7
  488. package/build/components/inserter-button/sparkles.js.map +1 -1
  489. package/build/components/inserter-draggable-blocks/index.js +14 -13
  490. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  491. package/build/components/inserter-list-item/index.js +69 -63
  492. package/build/components/inserter-list-item/index.js.map +1 -1
  493. package/build/components/inserter-listbox/group.js +2 -2
  494. package/build/components/inserter-listbox/group.js.map +1 -1
  495. package/build/components/inserter-listbox/index.js +5 -4
  496. package/build/components/inserter-listbox/index.js.map +1 -1
  497. package/build/components/inserter-listbox/item.js +10 -8
  498. package/build/components/inserter-listbox/item.js.map +1 -1
  499. package/build/components/inserter-listbox/row.js +2 -2
  500. package/build/components/inserter-listbox/row.js.map +1 -1
  501. package/build/components/inspector-controls/block-support-slot-container.js +2 -2
  502. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  503. package/build/components/inspector-controls/block-support-tools-panel.js +5 -5
  504. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  505. package/build/components/inspector-controls/fill.js +22 -17
  506. package/build/components/inspector-controls/fill.js.map +1 -1
  507. package/build/components/inspector-controls/fill.native.js +12 -5
  508. package/build/components/inspector-controls/fill.native.js.map +1 -1
  509. package/build/components/inspector-controls/index.js +3 -3
  510. package/build/components/inspector-controls/index.js.map +1 -1
  511. package/build/components/inspector-controls/slot.js +11 -10
  512. package/build/components/inspector-controls/slot.js.map +1 -1
  513. package/build/components/inspector-controls/slot.native.js +3 -3
  514. package/build/components/inspector-controls/slot.native.js.map +1 -1
  515. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +7 -6
  516. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  517. package/build/components/inspector-controls-tabs/advanced-controls-panel.native.js +11 -9
  518. package/build/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  519. package/build/components/inspector-controls-tabs/index.js +44 -32
  520. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  521. package/build/components/inspector-controls-tabs/position-controls-panel.js +8 -7
  522. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  523. package/build/components/inspector-controls-tabs/settings-tab-hint.js +20 -18
  524. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  525. package/build/components/inspector-controls-tabs/settings-tab.js +6 -2
  526. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  527. package/build/components/inspector-controls-tabs/styles-tab.js +31 -26
  528. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  529. package/build/components/inspector-popover-header/index.js +31 -26
  530. package/build/components/inspector-popover-header/index.js.map +1 -1
  531. package/build/components/justify-content-control/index.js +3 -3
  532. package/build/components/justify-content-control/index.js.map +1 -1
  533. package/build/components/justify-content-control/ui.js +2 -2
  534. package/build/components/justify-content-control/ui.js.map +1 -1
  535. package/build/components/keyboard-shortcuts/index.js +9 -0
  536. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  537. package/build/components/letter-spacing-control/index.js +3 -4
  538. package/build/components/letter-spacing-control/index.js.map +1 -1
  539. package/build/components/line-height-control/index.js +17 -16
  540. package/build/components/line-height-control/index.js.map +1 -1
  541. package/build/components/line-height-control/index.native.js +2 -2
  542. package/build/components/line-height-control/index.native.js.map +1 -1
  543. package/build/components/link-control/index.js +102 -85
  544. package/build/components/link-control/index.js.map +1 -1
  545. package/build/components/link-control/link-preview.js +63 -51
  546. package/build/components/link-control/link-preview.js.map +1 -1
  547. package/build/components/link-control/search-create-button.js +6 -5
  548. package/build/components/link-control/search-create-button.js.map +1 -1
  549. package/build/components/link-control/search-input.js +32 -31
  550. package/build/components/link-control/search-input.js.map +1 -1
  551. package/build/components/link-control/search-item.js +12 -11
  552. package/build/components/link-control/search-item.js.map +1 -1
  553. package/build/components/link-control/search-results.js +52 -48
  554. package/build/components/link-control/search-results.js.map +1 -1
  555. package/build/components/link-control/settings-drawer.js +37 -30
  556. package/build/components/link-control/settings-drawer.js.map +1 -1
  557. package/build/components/link-control/settings.js +10 -9
  558. package/build/components/link-control/settings.js.map +1 -1
  559. package/build/components/list-view/appender.js +24 -22
  560. package/build/components/list-view/appender.js.map +1 -1
  561. package/build/components/list-view/aria-referenced-text.js +6 -6
  562. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  563. package/build/components/list-view/block-contents.js +34 -31
  564. package/build/components/list-view/block-contents.js.map +1 -1
  565. package/build/components/list-view/block-select-button.js +60 -44
  566. package/build/components/list-view/block-select-button.js.map +1 -1
  567. package/build/components/list-view/block.js +131 -96
  568. package/build/components/list-view/block.js.map +1 -1
  569. package/build/components/list-view/branch.js +101 -95
  570. package/build/components/list-view/branch.js.map +1 -1
  571. package/build/components/list-view/drop-indicator.js +39 -32
  572. package/build/components/list-view/drop-indicator.js.map +1 -1
  573. package/build/components/list-view/expander.js +8 -6
  574. package/build/components/list-view/expander.js.map +1 -1
  575. package/build/components/list-view/index.js +43 -39
  576. package/build/components/list-view/index.js.map +1 -1
  577. package/build/components/list-view/leaf.js +7 -6
  578. package/build/components/list-view/leaf.js.map +1 -1
  579. package/build/components/media-placeholder/index.js +101 -81
  580. package/build/components/media-placeholder/index.js.map +1 -1
  581. package/build/components/media-placeholder/index.native.js +63 -52
  582. package/build/components/media-placeholder/index.native.js.map +1 -1
  583. package/build/components/media-replace-flow/index.js +73 -61
  584. package/build/components/media-replace-flow/index.js.map +1 -1
  585. package/build/components/media-replace-flow/index.native.js +2 -2
  586. package/build/components/media-replace-flow/index.native.js.map +1 -1
  587. package/build/components/media-upload/index.native.js +44 -40
  588. package/build/components/media-upload/index.native.js.map +1 -1
  589. package/build/components/media-upload-progress/index.native.js +39 -15
  590. package/build/components/media-upload-progress/index.native.js.map +1 -1
  591. package/build/components/multi-selection-inspector/index.js +19 -15
  592. package/build/components/multi-selection-inspector/index.js.map +1 -1
  593. package/build/components/navigable-toolbar/index.js +9 -7
  594. package/build/components/navigable-toolbar/index.js.map +1 -1
  595. package/build/components/observe-typing/index.js +6 -6
  596. package/build/components/observe-typing/index.js.map +1 -1
  597. package/build/components/panel-color-settings/index.js +2 -2
  598. package/build/components/panel-color-settings/index.js.map +1 -1
  599. package/build/components/plain-text/index.js +6 -7
  600. package/build/components/plain-text/index.js.map +1 -1
  601. package/build/components/plain-text/index.native.js +3 -3
  602. package/build/components/plain-text/index.native.js.map +1 -1
  603. package/build/components/provider/block-refs-provider.js +5 -4
  604. package/build/components/provider/block-refs-provider.js.map +1 -1
  605. package/build/components/provider/index.js +11 -7
  606. package/build/components/provider/index.js.map +1 -1
  607. package/build/components/provider/index.native.js +5 -5
  608. package/build/components/provider/index.native.js.map +1 -1
  609. package/build/components/provider/use-block-sync.js +18 -0
  610. package/build/components/provider/use-block-sync.js.map +1 -1
  611. package/build/components/provider/with-registry-provider.js +30 -26
  612. package/build/components/provider/with-registry-provider.js.map +1 -1
  613. package/build/components/publish-date-time-picker/index.js +36 -15
  614. package/build/components/publish-date-time-picker/index.js.map +1 -1
  615. package/build/components/recursion-provider/index.js +6 -5
  616. package/build/components/recursion-provider/index.js.map +1 -1
  617. package/build/components/resizable-box-popover/index.js +7 -6
  618. package/build/components/resizable-box-popover/index.js.map +1 -1
  619. package/build/components/resolution-tool/index.js +12 -11
  620. package/build/components/resolution-tool/index.js.map +1 -1
  621. package/build/components/responsive-block-control/index.js +31 -27
  622. package/build/components/responsive-block-control/index.js.map +1 -1
  623. package/build/components/responsive-block-control/label.js +11 -7
  624. package/build/components/responsive-block-control/label.js.map +1 -1
  625. package/build/components/rich-text/content.js +8 -5
  626. package/build/components/rich-text/content.js.map +1 -1
  627. package/build/components/rich-text/embed-handler-picker.native.js +2 -2
  628. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  629. package/build/components/rich-text/event-listeners/enter.js +33 -42
  630. package/build/components/rich-text/event-listeners/enter.js.map +1 -1
  631. package/build/components/rich-text/event-listeners/paste-handler.js +22 -42
  632. package/build/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  633. package/build/components/rich-text/format-edit.js +5 -5
  634. package/build/components/rich-text/format-edit.js.map +1 -1
  635. package/build/components/rich-text/format-toolbar/index.js +38 -34
  636. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  637. package/build/components/rich-text/format-toolbar/index.native.js +8 -7
  638. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  639. package/build/components/rich-text/format-toolbar-container.js +17 -12
  640. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  641. package/build/components/rich-text/format-toolbar-container.native.js +5 -4
  642. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  643. package/build/components/rich-text/get-rich-text-values.js +4 -4
  644. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  645. package/build/components/rich-text/index.js +95 -77
  646. package/build/components/rich-text/index.js.map +1 -1
  647. package/build/components/rich-text/index.native.js +52 -48
  648. package/build/components/rich-text/index.native.js.map +1 -1
  649. package/build/components/rich-text/multiline.js +68 -40
  650. package/build/components/rich-text/multiline.js.map +1 -1
  651. package/build/components/rich-text/native/format-edit.js +3 -4
  652. package/build/components/rich-text/native/format-edit.js.map +1 -1
  653. package/build/components/rich-text/native/index.native.js +87 -80
  654. package/build/components/rich-text/native/index.native.js.map +1 -1
  655. package/build/components/rich-text/native/toolbar-button-with-options.native.js +19 -16
  656. package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  657. package/build/components/rich-text/toolbar-button.js +8 -7
  658. package/build/components/rich-text/toolbar-button.js.map +1 -1
  659. package/build/components/rich-text/utils.js +5 -4
  660. package/build/components/rich-text/utils.js.map +1 -1
  661. package/build/components/rich-text/with-deprecations.js +2 -2
  662. package/build/components/rich-text/with-deprecations.js.map +1 -1
  663. package/build/components/segmented-text-control/index.js +21 -20
  664. package/build/components/segmented-text-control/index.js.map +1 -1
  665. package/build/components/skip-to-selected-block/index.js +6 -6
  666. package/build/components/skip-to-selected-block/index.js.map +1 -1
  667. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +29 -14
  668. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  669. package/build/components/spacing-sizes-control/index.js +23 -19
  670. package/build/components/spacing-sizes-control/index.js.map +1 -1
  671. package/build/components/spacing-sizes-control/input-controls/axial.js +19 -18
  672. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  673. package/build/components/spacing-sizes-control/input-controls/separated.js +18 -17
  674. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  675. package/build/components/spacing-sizes-control/input-controls/single.js +2 -2
  676. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  677. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +103 -100
  678. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  679. package/build/components/spacing-sizes-control/sides-dropdown/index.js +42 -34
  680. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  681. package/build/components/spacing-sizes-control/utils.js +2 -1
  682. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  683. package/build/components/text-alignment-control/index.js +4 -4
  684. package/build/components/text-alignment-control/index.js.map +1 -1
  685. package/build/components/text-decoration-control/index.js +4 -4
  686. package/build/components/text-decoration-control/index.js.map +1 -1
  687. package/build/components/text-transform-control/index.js +4 -4
  688. package/build/components/text-transform-control/index.js.map +1 -1
  689. package/build/components/tool-selector/index.js +35 -26
  690. package/build/components/tool-selector/index.js.map +1 -1
  691. package/build/components/typewriter/index.js +5 -4
  692. package/build/components/typewriter/index.js.map +1 -1
  693. package/build/components/ungroup-button/index.native.js +8 -6
  694. package/build/components/ungroup-button/index.native.js.map +1 -1
  695. package/build/components/unit-control/index.js +2 -2
  696. package/build/components/unit-control/index.js.map +1 -1
  697. package/build/components/unsupported-block-details/index.native.js +31 -28
  698. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  699. package/build/components/url-input/button.js +31 -28
  700. package/build/components/url-input/button.js.map +1 -1
  701. package/build/components/url-input/index.js +29 -24
  702. package/build/components/url-input/index.js.map +1 -1
  703. package/build/components/url-input/index.native.js +2 -2
  704. package/build/components/url-input/index.native.js.map +1 -1
  705. package/build/components/url-popover/image-url-input-ui.js +104 -91
  706. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  707. package/build/components/url-popover/index.js +24 -19
  708. package/build/components/url-popover/index.js.map +1 -1
  709. package/build/components/url-popover/link-editor.js +17 -16
  710. package/build/components/url-popover/link-editor.js.map +1 -1
  711. package/build/components/url-popover/link-viewer-url.js +8 -7
  712. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  713. package/build/components/url-popover/link-viewer.js +16 -15
  714. package/build/components/url-popover/link-viewer.js.map +1 -1
  715. package/build/components/use-block-commands/index.js +2 -2
  716. package/build/components/use-block-commands/index.js.map +1 -1
  717. package/build/components/video-player/gridicon-play.native.js +8 -7
  718. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  719. package/build/components/video-player/index.native.js +43 -40
  720. package/build/components/video-player/index.native.js.map +1 -1
  721. package/build/components/warning/index.js +35 -27
  722. package/build/components/warning/index.js.map +1 -1
  723. package/build/components/warning/index.native.js +17 -13
  724. package/build/components/warning/index.native.js.map +1 -1
  725. package/build/components/writing-flow/index.js +10 -7
  726. package/build/components/writing-flow/index.js.map +1 -1
  727. package/build/components/writing-flow/use-clipboard-handler.js +64 -14
  728. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
  729. package/build/components/writing-flow/use-input.js +44 -2
  730. package/build/components/writing-flow/use-input.js.map +1 -1
  731. package/build/components/writing-flow/use-tab-nav.js +9 -4
  732. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  733. package/build/components/writing-mode-control/index.js +4 -4
  734. package/build/components/writing-mode-control/index.js.map +1 -1
  735. package/build/hooks/align.js +12 -12
  736. package/build/hooks/align.js.map +1 -1
  737. package/build/hooks/anchor.js +29 -24
  738. package/build/hooks/anchor.js.map +1 -1
  739. package/build/hooks/background.js +7 -6
  740. package/build/hooks/background.js.map +1 -1
  741. package/build/hooks/block-bindings.js +89 -0
  742. package/build/hooks/block-bindings.js.map +1 -0
  743. package/build/hooks/block-hooks.js +41 -33
  744. package/build/hooks/block-hooks.js.map +1 -1
  745. package/build/hooks/block-style-variation.js +142 -0
  746. package/build/hooks/block-style-variation.js.map +1 -0
  747. package/build/hooks/border.js +9 -8
  748. package/build/hooks/border.js.map +1 -1
  749. package/build/hooks/color.js +14 -12
  750. package/build/hooks/color.js.map +1 -1
  751. package/build/hooks/content-lock-ui.js +25 -40
  752. package/build/hooks/content-lock-ui.js.map +1 -1
  753. package/build/hooks/contrast-checker.js +2 -2
  754. package/build/hooks/contrast-checker.js.map +1 -1
  755. package/build/hooks/custom-class-name.js +19 -18
  756. package/build/hooks/custom-class-name.js.map +1 -1
  757. package/build/hooks/custom-class-name.native.js +2 -2
  758. package/build/hooks/custom-class-name.native.js.map +1 -1
  759. package/build/hooks/dimensions.js +26 -23
  760. package/build/hooks/dimensions.js.map +1 -1
  761. package/build/hooks/duotone.js +49 -45
  762. package/build/hooks/duotone.js.map +1 -1
  763. package/build/hooks/font-family.js +3 -3
  764. package/build/hooks/font-family.js.map +1 -1
  765. package/build/hooks/font-size.js +2 -2
  766. package/build/hooks/font-size.js.map +1 -1
  767. package/build/hooks/index.js +4 -2
  768. package/build/hooks/index.js.map +1 -1
  769. package/build/hooks/layout-child.js +35 -25
  770. package/build/hooks/layout-child.js.map +1 -1
  771. package/build/hooks/layout.js +63 -57
  772. package/build/hooks/layout.js.map +1 -1
  773. package/build/hooks/line-height.js +2 -2
  774. package/build/hooks/line-height.js.map +1 -1
  775. package/build/hooks/position.js +30 -28
  776. package/build/hooks/position.js.map +1 -1
  777. package/build/hooks/spacing-visualizer.js +10 -9
  778. package/build/hooks/spacing-visualizer.js.map +1 -1
  779. package/build/hooks/style.js +23 -13
  780. package/build/hooks/style.js.map +1 -1
  781. package/build/hooks/text-align.js +22 -21
  782. package/build/hooks/text-align.js.map +1 -1
  783. package/build/hooks/typography.js +6 -5
  784. package/build/hooks/typography.js.map +1 -1
  785. package/build/hooks/typography.native.js +11 -8
  786. package/build/hooks/typography.native.js.map +1 -1
  787. package/build/hooks/use-bindings-attributes.js +84 -26
  788. package/build/hooks/use-bindings-attributes.js.map +1 -1
  789. package/build/hooks/use-color-props.js +2 -2
  790. package/build/hooks/use-color-props.js.map +1 -1
  791. package/build/hooks/use-typography-props.js +6 -5
  792. package/build/hooks/use-typography-props.js.map +1 -1
  793. package/build/hooks/use-zoom-out.js +2 -2
  794. package/build/hooks/use-zoom-out.js.map +1 -1
  795. package/build/hooks/utils.js +20 -19
  796. package/build/hooks/utils.js.map +1 -1
  797. package/build/layouts/constrained.js +66 -58
  798. package/build/layouts/constrained.js.map +1 -1
  799. package/build/layouts/flex.js +75 -61
  800. package/build/layouts/flex.js.map +1 -1
  801. package/build/layouts/grid.js +152 -130
  802. package/build/layouts/grid.js.map +1 -1
  803. package/build/private-apis.js +10 -1
  804. package/build/private-apis.js.map +1 -1
  805. package/build/store/actions.js +170 -44
  806. package/build/store/actions.js.map +1 -1
  807. package/build/store/get-block-settings.js +2 -49
  808. package/build/store/get-block-settings.js.map +1 -1
  809. package/build/store/private-actions.js +26 -1
  810. package/build/store/private-actions.js.map +1 -1
  811. package/build/store/private-keys.js +2 -1
  812. package/build/store/private-keys.js.map +1 -1
  813. package/build/store/private-selectors.js +6 -0
  814. package/build/store/private-selectors.js.map +1 -1
  815. package/build/store/reducer.js +21 -14
  816. package/build/store/reducer.js.map +1 -1
  817. package/build/store/selectors.js +32 -2
  818. package/build/store/selectors.js.map +1 -1
  819. package/build/store/utils.js +2 -0
  820. package/build/store/utils.js.map +1 -1
  821. package/build/utils/selection.js +8 -0
  822. package/build/utils/selection.js.map +1 -1
  823. package/build/utils/transform-styles/index.js +12 -7
  824. package/build/utils/transform-styles/index.js.map +1 -1
  825. package/build-module/autocompleters/block.js +9 -6
  826. package/build-module/autocompleters/block.js.map +1 -1
  827. package/build-module/autocompleters/link.js +12 -8
  828. package/build-module/autocompleters/link.js.map +1 -1
  829. package/build-module/components/alignment-control/index.js +3 -3
  830. package/build-module/components/alignment-control/index.js.map +1 -1
  831. package/build-module/components/alignment-control/ui.js +2 -2
  832. package/build-module/components/alignment-control/ui.js.map +1 -1
  833. package/build-module/components/audio-player/audio-url-parser.native.js +16 -0
  834. package/build-module/components/audio-player/audio-url-parser.native.js.map +1 -0
  835. package/build-module/components/audio-player/index.native.js +167 -0
  836. package/build-module/components/audio-player/index.native.js.map +1 -0
  837. package/build-module/components/autocomplete/index.js +2 -2
  838. package/build-module/components/autocomplete/index.js.map +1 -1
  839. package/build-module/components/block-actions/index.js +4 -2
  840. package/build-module/components/block-actions/index.js.map +1 -1
  841. package/build-module/components/block-alignment-control/index.js +3 -3
  842. package/build-module/components/block-alignment-control/index.js.map +1 -1
  843. package/build-module/components/block-alignment-control/ui.js +35 -31
  844. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  845. package/build-module/components/block-alignment-control/ui.native.js +2 -2
  846. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  847. package/build-module/components/block-alignment-matrix-control/index.js +5 -5
  848. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  849. package/build-module/components/block-bindings-toolbar-indicator/index.js +94 -13
  850. package/build-module/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  851. package/build-module/components/block-breadcrumb/index.js +38 -32
  852. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  853. package/build-module/components/block-canvas/index.js +37 -31
  854. package/build-module/components/block-canvas/index.js.map +1 -1
  855. package/build-module/components/block-caption/index.native.js +15 -14
  856. package/build-module/components/block-caption/index.native.js.map +1 -1
  857. package/build-module/components/block-card/index.js +35 -29
  858. package/build-module/components/block-card/index.js.map +1 -1
  859. package/build-module/components/block-compare/block-view.js +28 -18
  860. package/build-module/components/block-compare/block-view.js.map +1 -1
  861. package/build-module/components/block-compare/index.js +26 -24
  862. package/build-module/components/block-compare/index.js.map +1 -1
  863. package/build-module/components/block-context/index.js +2 -2
  864. package/build-module/components/block-context/index.js.map +1 -1
  865. package/build-module/components/block-controls/fill.js +24 -16
  866. package/build-module/components/block-controls/fill.js.map +1 -1
  867. package/build-module/components/block-controls/index.js +3 -3
  868. package/build-module/components/block-controls/index.js.map +1 -1
  869. package/build-module/components/block-controls/slot.js +6 -4
  870. package/build-module/components/block-controls/slot.js.map +1 -1
  871. package/build-module/components/block-controls/slot.native.js +12 -9
  872. package/build-module/components/block-controls/slot.native.js.map +1 -1
  873. package/build-module/components/block-controls/use-has-block-controls.js +1 -1
  874. package/build-module/components/block-controls/use-has-block-controls.js.map +1 -1
  875. package/build-module/components/block-draggable/draggable-chip.js +28 -19
  876. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  877. package/build-module/components/block-draggable/draggable-chip.native.js +10 -8
  878. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  879. package/build-module/components/block-draggable/dropping-insertion-point.native.js +2 -2
  880. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  881. package/build-module/components/block-draggable/index.js +14 -13
  882. package/build-module/components/block-draggable/index.js.map +1 -1
  883. package/build-module/components/block-draggable/index.native.js +39 -30
  884. package/build-module/components/block-draggable/index.native.js.map +1 -1
  885. package/build-module/components/block-edit/edit.js +6 -6
  886. package/build-module/components/block-edit/edit.js.map +1 -1
  887. package/build-module/components/block-edit/edit.native.js +2 -2
  888. package/build-module/components/block-edit/edit.native.js.map +1 -1
  889. package/build-module/components/block-edit/index.js +19 -7
  890. package/build-module/components/block-edit/index.js.map +1 -1
  891. package/build-module/components/block-edit/multiple-usage-warning.js +40 -0
  892. package/build-module/components/block-edit/multiple-usage-warning.js.map +1 -0
  893. package/build-module/components/block-edit-visually-button/index.js +9 -6
  894. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  895. package/build-module/components/block-full-height-alignment-control/index.js +2 -2
  896. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  897. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js +2 -3
  898. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  899. package/build-module/components/block-heading-level-dropdown/index.js +4 -4
  900. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  901. package/build-module/components/block-heading-level-dropdown/index.native.js +4 -4
  902. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  903. package/build-module/components/block-icon/index.js +8 -7
  904. package/build-module/components/block-icon/index.js.map +1 -1
  905. package/build-module/components/block-icon/index.native.js +6 -5
  906. package/build-module/components/block-icon/index.native.js.map +1 -1
  907. package/build-module/components/block-info-slot-fill/index.js +3 -3
  908. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  909. package/build-module/components/block-inspector/index.js +105 -89
  910. package/build-module/components/block-inspector/index.js.map +1 -1
  911. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  912. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  913. package/build-module/components/block-list/block-crash-warning.js +5 -4
  914. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  915. package/build-module/components/block-list/block-crash-warning.native.js +2 -2
  916. package/build-module/components/block-list/block-crash-warning.native.js.map +1 -1
  917. package/build-module/components/block-list/block-html.js +2 -2
  918. package/build-module/components/block-list/block-html.js.map +1 -1
  919. package/build-module/components/block-list/block-invalid-warning.js +27 -21
  920. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  921. package/build-module/components/block-list/block-invalid-warning.native.js +12 -11
  922. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  923. package/build-module/components/block-list/block-list-item-cell.native.js +5 -4
  924. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  925. package/build-module/components/block-list/block-list-item.native.js +29 -26
  926. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  927. package/build-module/components/block-list/block-outline.native.js +2 -2
  928. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  929. package/build-module/components/block-list/block-selection-button.native.js +36 -33
  930. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  931. package/build-module/components/block-list/block.js +112 -64
  932. package/build-module/components/block-list/block.js.map +1 -1
  933. package/build-module/components/block-list/block.native.js +63 -53
  934. package/build-module/components/block-list/block.native.js.map +1 -1
  935. package/build-module/components/block-list/grid-item.native.js +5 -4
  936. package/build-module/components/block-list/grid-item.native.js.map +1 -1
  937. package/build-module/components/block-list/index.js +41 -36
  938. package/build-module/components/block-list/index.js.map +1 -1
  939. package/build-module/components/block-list/index.native.js +99 -85
  940. package/build-module/components/block-list/index.native.js.map +1 -1
  941. package/build-module/components/block-list/insertion-point.native.js +13 -10
  942. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  943. package/build-module/components/block-list/layout.js +7 -3
  944. package/build-module/components/block-list/layout.js.map +1 -1
  945. package/build-module/components/block-list/subdirectory-icon.js +8 -7
  946. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  947. package/build-module/components/block-list/use-block-props/index.js +6 -3
  948. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  949. package/build-module/components/block-list/use-block-props/use-scroll-into-view.js +37 -0
  950. package/build-module/components/block-list/use-block-props/use-scroll-into-view.js.map +1 -0
  951. package/build-module/components/block-list-appender/index.js +11 -10
  952. package/build-module/components/block-list-appender/index.js.map +1 -1
  953. package/build-module/components/block-list-appender/index.native.js +4 -4
  954. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  955. package/build-module/components/block-lock/menu-item.js +15 -10
  956. package/build-module/components/block-lock/menu-item.js.map +1 -1
  957. package/build-module/components/block-lock/modal.js +108 -90
  958. package/build-module/components/block-lock/modal.js.map +1 -1
  959. package/build-module/components/block-lock/toolbar.js +20 -15
  960. package/build-module/components/block-lock/toolbar.js.map +1 -1
  961. package/build-module/components/block-media-update-progress/index.native.js +18 -15
  962. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  963. package/build-module/components/block-mover/button.js +22 -17
  964. package/build-module/components/block-mover/button.js.map +1 -1
  965. package/build-module/components/block-mover/index.js +37 -29
  966. package/build-module/components/block-mover/index.js.map +1 -1
  967. package/build-module/components/block-mover/index.native.js +30 -27
  968. package/build-module/components/block-mover/index.native.js.map +1 -1
  969. package/build-module/components/block-navigation/dropdown.js +12 -9
  970. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  971. package/build-module/components/block-parent-selector/index.js +13 -13
  972. package/build-module/components/block-parent-selector/index.js.map +1 -1
  973. package/build-module/components/block-pattern-setup/index.js +90 -76
  974. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  975. package/build-module/components/block-pattern-setup/setup-toolbar.js +51 -45
  976. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  977. package/build-module/components/block-patterns-list/index.js +122 -89
  978. package/build-module/components/block-patterns-list/index.js.map +1 -1
  979. package/build-module/components/block-patterns-paging/index.js +71 -52
  980. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  981. package/build-module/components/block-popover/cover.js +19 -12
  982. package/build-module/components/block-popover/cover.js.map +1 -1
  983. package/build-module/components/block-popover/drop-zone.js +11 -10
  984. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  985. package/build-module/components/block-popover/inbetween.js +10 -9
  986. package/build-module/components/block-popover/inbetween.js.map +1 -1
  987. package/build-module/components/block-popover/index.js +27 -7
  988. package/build-module/components/block-popover/index.js.map +1 -1
  989. package/build-module/components/block-preview/auto.js +55 -47
  990. package/build-module/components/block-preview/auto.js.map +1 -1
  991. package/build-module/components/block-preview/index.js +19 -16
  992. package/build-module/components/block-preview/index.js.map +1 -1
  993. package/build-module/components/block-quick-navigation/index.js +25 -16
  994. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  995. package/build-module/components/block-removal-warning-modal/index.js +19 -12
  996. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  997. package/build-module/components/block-rename/modal.js +45 -37
  998. package/build-module/components/block-rename/modal.js.map +1 -1
  999. package/build-module/components/block-rename/rename-control.js +26 -21
  1000. package/build-module/components/block-rename/rename-control.js.map +1 -1
  1001. package/build-module/components/block-selection-clearer/index.js +2 -2
  1002. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  1003. package/build-module/components/block-settings/button.native.js +13 -9
  1004. package/build-module/components/block-settings/button.native.js.map +1 -1
  1005. package/build-module/components/block-settings/container.native.js +42 -28
  1006. package/build-module/components/block-settings/container.native.js.map +1 -1
  1007. package/build-module/components/block-settings-menu/block-html-convert-button.js +5 -4
  1008. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  1009. package/build-module/components/block-settings-menu/block-mode-toggle.js +5 -4
  1010. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  1011. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js +7 -6
  1012. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  1013. package/build-module/components/block-settings-menu/block-settings-dropdown.js +101 -78
  1014. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  1015. package/build-module/components/block-settings-menu/index.js +10 -6
  1016. package/build-module/components/block-settings-menu/index.js.map +1 -1
  1017. package/build-module/components/block-settings-menu-controls/index.js +38 -29
  1018. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  1019. package/build-module/components/block-styles/index.js +45 -39
  1020. package/build-module/components/block-styles/index.js.map +1 -1
  1021. package/build-module/components/block-styles/index.native.js +7 -7
  1022. package/build-module/components/block-styles/index.native.js.map +1 -1
  1023. package/build-module/components/block-styles/menu-items.js +18 -14
  1024. package/build-module/components/block-styles/menu-items.js.map +1 -1
  1025. package/build-module/components/block-styles/preview-panel.js +2 -2
  1026. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  1027. package/build-module/components/block-styles/preview.native.js +25 -21
  1028. package/build-module/components/block-styles/preview.native.js.map +1 -1
  1029. package/build-module/components/block-switcher/block-styles-menu.js +8 -7
  1030. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  1031. package/build-module/components/block-switcher/block-transformations-menu.js +33 -28
  1032. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  1033. package/build-module/components/block-switcher/block-transformations-menu.native.js +2 -2
  1034. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  1035. package/build-module/components/block-switcher/block-variation-transformations.js +21 -17
  1036. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  1037. package/build-module/components/block-switcher/index.js +87 -70
  1038. package/build-module/components/block-switcher/index.js.map +1 -1
  1039. package/build-module/components/block-switcher/pattern-transformations-menu.js +62 -51
  1040. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  1041. package/build-module/components/block-switcher/preview-block-popover.js +23 -17
  1042. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  1043. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +39 -34
  1044. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  1045. package/build-module/components/block-toolbar/index.js +58 -46
  1046. package/build-module/components/block-toolbar/index.js.map +1 -1
  1047. package/build-module/components/block-toolbar/index.native.js +29 -21
  1048. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  1049. package/build-module/components/block-toolbar/shuffle.js +7 -5
  1050. package/build-module/components/block-toolbar/shuffle.js.map +1 -1
  1051. package/build-module/components/block-tools/block-selection-button.js +63 -48
  1052. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  1053. package/build-module/components/block-tools/block-toolbar-breadcrumb.js +11 -10
  1054. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  1055. package/build-module/components/block-tools/block-toolbar-popover.js +17 -16
  1056. package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
  1057. package/build-module/components/block-tools/empty-block-inserter.js +15 -13
  1058. package/build-module/components/block-tools/empty-block-inserter.js.map +1 -1
  1059. package/build-module/components/block-tools/index.js +50 -27
  1060. package/build-module/components/block-tools/index.js.map +1 -1
  1061. package/build-module/components/block-tools/insertion-point.js +45 -42
  1062. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  1063. package/build-module/components/block-tools/zoom-out-mode-inserters.js +72 -26
  1064. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  1065. package/build-module/components/block-types-list/index.js +16 -15
  1066. package/build-module/components/block-types-list/index.js.map +1 -1
  1067. package/build-module/components/block-types-list/index.native.js +31 -26
  1068. package/build-module/components/block-types-list/index.native.js.map +1 -1
  1069. package/build-module/components/block-variation-picker/index.js +33 -27
  1070. package/build-module/components/block-variation-picker/index.js.map +1 -1
  1071. package/build-module/components/block-variation-picker/index.native.js +33 -25
  1072. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  1073. package/build-module/components/block-variation-transforms/index.js +54 -47
  1074. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  1075. package/build-module/components/block-vertical-alignment-control/icons.js +31 -26
  1076. package/build-module/components/block-vertical-alignment-control/icons.js.map +1 -1
  1077. package/build-module/components/block-vertical-alignment-control/index.js +3 -3
  1078. package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
  1079. package/build-module/components/block-vertical-alignment-control/ui.js +2 -2
  1080. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  1081. package/build-module/components/border-radius-control/all-input-control.js +3 -3
  1082. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  1083. package/build-module/components/border-radius-control/index.js +45 -38
  1084. package/build-module/components/border-radius-control/index.js.map +1 -1
  1085. package/build-module/components/border-radius-control/input-controls.js +23 -21
  1086. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  1087. package/build-module/components/border-radius-control/linked-button.js +12 -11
  1088. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  1089. package/build-module/components/button-block-appender/index.js +18 -14
  1090. package/build-module/components/button-block-appender/index.js.map +1 -1
  1091. package/build-module/components/button-block-appender/index.native.js +29 -24
  1092. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  1093. package/build-module/components/caption/index.native.js +22 -21
  1094. package/build-module/components/caption/index.native.js.map +1 -1
  1095. package/build-module/components/child-layout-control/index.js +139 -129
  1096. package/build-module/components/child-layout-control/index.js.map +1 -1
  1097. package/build-module/components/color-palette/control.js +2 -2
  1098. package/build-module/components/color-palette/control.js.map +1 -1
  1099. package/build-module/components/color-palette/with-color-context.js +2 -2
  1100. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  1101. package/build-module/components/color-style-selector/index.js +29 -20
  1102. package/build-module/components/color-style-selector/index.js.map +1 -1
  1103. package/build-module/components/colors/utils.js +3 -3
  1104. package/build-module/components/colors/utils.js.map +1 -1
  1105. package/build-module/components/colors/with-colors.js +7 -7
  1106. package/build-module/components/colors/with-colors.js.map +1 -1
  1107. package/build-module/components/colors-gradients/control.js +55 -40
  1108. package/build-module/components/colors-gradients/control.js.map +1 -1
  1109. package/build-module/components/colors-gradients/dropdown.js +74 -63
  1110. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  1111. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +25 -20
  1112. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  1113. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +13 -7
  1114. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  1115. package/build-module/components/contrast-checker/index.js +10 -8
  1116. package/build-module/components/contrast-checker/index.js.map +1 -1
  1117. package/build-module/components/contrast-checker/index.native.js +13 -10
  1118. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  1119. package/build-module/components/convert-to-group-buttons/index.js +25 -13
  1120. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  1121. package/build-module/components/convert-to-group-buttons/toolbar.js +21 -18
  1122. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  1123. package/build-module/components/copy-handler/index.js +2 -2
  1124. package/build-module/components/copy-handler/index.js.map +1 -1
  1125. package/build-module/components/date-format-picker/index.js +45 -40
  1126. package/build-module/components/date-format-picker/index.js.map +1 -1
  1127. package/build-module/components/default-block-appender/index.js +35 -32
  1128. package/build-module/components/default-block-appender/index.js.map +1 -1
  1129. package/build-module/components/default-block-appender/index.native.js +14 -12
  1130. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  1131. package/build-module/components/dimensions-tool/aspect-ratio-tool.js +41 -47
  1132. package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  1133. package/build-module/components/dimensions-tool/index.js +117 -113
  1134. package/build-module/components/dimensions-tool/index.js.map +1 -1
  1135. package/build-module/components/dimensions-tool/scale-tool.js +15 -14
  1136. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  1137. package/build-module/components/dimensions-tool/width-height-tool.js +39 -33
  1138. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  1139. package/build-module/components/duotone-control/index.js +22 -18
  1140. package/build-module/components/duotone-control/index.js.map +1 -1
  1141. package/build-module/components/editable-text/index.js +6 -5
  1142. package/build-module/components/editable-text/index.js.map +1 -1
  1143. package/build-module/components/editor-styles/index.js +25 -21
  1144. package/build-module/components/editor-styles/index.js.map +1 -1
  1145. package/build-module/components/floating-toolbar/index.native.js +19 -16
  1146. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  1147. package/build-module/components/floating-toolbar/nav-up-icon.js +15 -13
  1148. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  1149. package/build-module/components/font-appearance-control/index.js +2 -2
  1150. package/build-module/components/font-appearance-control/index.js.map +1 -1
  1151. package/build-module/components/font-family/index.js +2 -2
  1152. package/build-module/components/font-family/index.js.map +1 -1
  1153. package/build-module/components/font-sizes/font-size-picker.js +2 -2
  1154. package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
  1155. package/build-module/components/font-sizes/utils.js +3 -3
  1156. package/build-module/components/font-sizes/utils.js.map +1 -1
  1157. package/build-module/components/font-sizes/with-font-sizes.js +3 -3
  1158. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  1159. package/build-module/components/global-styles/advanced-panel.js +18 -15
  1160. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  1161. package/build-module/components/global-styles/background-panel.js +190 -123
  1162. package/build-module/components/global-styles/background-panel.js.map +1 -1
  1163. package/build-module/components/global-styles/border-panel.js +63 -56
  1164. package/build-module/components/global-styles/border-panel.js.map +1 -1
  1165. package/build-module/components/global-styles/color-panel.js +114 -89
  1166. package/build-module/components/global-styles/color-panel.js.map +1 -1
  1167. package/build-module/components/global-styles/color-panel.native.js +13 -10
  1168. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  1169. package/build-module/components/global-styles/dimensions-panel.js +185 -172
  1170. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  1171. package/build-module/components/global-styles/filters-panel.js +80 -66
  1172. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  1173. package/build-module/components/global-styles/hooks.js +13 -2
  1174. package/build-module/components/global-styles/hooks.js.map +1 -1
  1175. package/build-module/components/global-styles/image-settings-panel.js +27 -22
  1176. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  1177. package/build-module/components/global-styles/index.js +2 -2
  1178. package/build-module/components/global-styles/index.js.map +1 -1
  1179. package/build-module/components/global-styles/shadow-panel-components.js +78 -67
  1180. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  1181. package/build-module/components/global-styles/theme-file-uri-utils.js +73 -0
  1182. package/build-module/components/global-styles/theme-file-uri-utils.js.map +1 -0
  1183. package/build-module/components/global-styles/typography-panel.js +177 -135
  1184. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1185. package/build-module/components/global-styles/use-global-styles-context.native.js +431 -0
  1186. package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -0
  1187. package/build-module/components/global-styles/use-global-styles-output.js +115 -79
  1188. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1189. package/build-module/components/gradients/with-gradient.js +2 -2
  1190. package/build-module/components/gradients/with-gradient.js.map +1 -1
  1191. package/build-module/components/grid-visualizer/grid-item-resizer.js +161 -43
  1192. package/build-module/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  1193. package/build-module/components/grid-visualizer/grid-visualizer.js +31 -20
  1194. package/build-module/components/grid-visualizer/grid-visualizer.js.map +1 -1
  1195. package/build-module/components/height-control/index.js +40 -32
  1196. package/build-module/components/height-control/index.js.map +1 -1
  1197. package/build-module/components/iframe/index.js +121 -72
  1198. package/build-module/components/iframe/index.js.map +1 -1
  1199. package/build-module/components/image-editor/aspect-ratio-dropdown.js +96 -74
  1200. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1201. package/build-module/components/image-editor/context.js +5 -4
  1202. package/build-module/components/image-editor/context.js.map +1 -1
  1203. package/build-module/components/image-editor/cropper.js +28 -23
  1204. package/build-module/components/image-editor/cropper.js.map +1 -1
  1205. package/build-module/components/image-editor/form-controls.js +13 -7
  1206. package/build-module/components/image-editor/form-controls.js.map +1 -1
  1207. package/build-module/components/image-editor/index.js +24 -14
  1208. package/build-module/components/image-editor/index.js.map +1 -1
  1209. package/build-module/components/image-editor/rotation-button.js +2 -2
  1210. package/build-module/components/image-editor/rotation-button.js.map +1 -1
  1211. package/build-module/components/image-editor/zoom-dropdown.js +4 -4
  1212. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1213. package/build-module/components/image-link-destinations/index.native.js +39 -27
  1214. package/build-module/components/image-link-destinations/index.native.js.map +1 -1
  1215. package/build-module/components/image-size-control/index.js +55 -45
  1216. package/build-module/components/image-size-control/index.js.map +1 -1
  1217. package/build-module/components/index.js +1 -0
  1218. package/build-module/components/index.js.map +1 -1
  1219. package/build-module/components/index.native.js +2 -0
  1220. package/build-module/components/index.native.js.map +1 -1
  1221. package/build-module/components/inner-blocks/button-block-appender.js +4 -4
  1222. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1223. package/build-module/components/inner-blocks/default-block-appender.js +2 -2
  1224. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1225. package/build-module/components/inner-blocks/index.js +41 -37
  1226. package/build-module/components/inner-blocks/index.js.map +1 -1
  1227. package/build-module/components/inner-blocks/index.native.js +31 -29
  1228. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1229. package/build-module/components/inner-blocks/use-nested-settings-update.js +11 -14
  1230. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1231. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +21 -17
  1232. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  1233. package/build-module/components/inner-blocks/with-client-id.js +2 -2
  1234. package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
  1235. package/build-module/components/inserter/block-patterns-explorer/index.js +23 -20
  1236. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  1237. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +40 -36
  1238. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  1239. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +28 -20
  1240. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  1241. package/build-module/components/inserter/block-patterns-tab/index.js +47 -29
  1242. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  1243. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +21 -5
  1244. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  1245. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +45 -32
  1246. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  1247. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +56 -42
  1248. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  1249. package/build-module/components/inserter/block-types-tab.js +111 -66
  1250. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1251. package/build-module/components/inserter/block-types-tab.native.js +2 -2
  1252. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1253. package/build-module/components/inserter/category-tabs/index.js +27 -20
  1254. package/build-module/components/inserter/category-tabs/index.js.map +1 -1
  1255. package/build-module/components/inserter/hooks/use-block-types-state.js +9 -4
  1256. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1257. package/build-module/components/inserter/hooks/use-insertion-point.js +44 -8
  1258. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1259. package/build-module/components/inserter/hooks/use-patterns-state.js +12 -5
  1260. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  1261. package/build-module/components/inserter/index.js +8 -8
  1262. package/build-module/components/inserter/index.js.map +1 -1
  1263. package/build-module/components/inserter/index.native.js +23 -19
  1264. package/build-module/components/inserter/index.native.js.map +1 -1
  1265. package/build-module/components/inserter/library.js +21 -7
  1266. package/build-module/components/inserter/library.js.map +1 -1
  1267. package/build-module/components/inserter/media-tab/media-list.js +9 -9
  1268. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1269. package/build-module/components/inserter/media-tab/media-panel.js +20 -17
  1270. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1271. package/build-module/components/inserter/media-tab/media-preview.js +95 -67
  1272. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1273. package/build-module/components/inserter/media-tab/media-tab.js +46 -36
  1274. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1275. package/build-module/components/inserter/media-tab/utils.js +2 -2
  1276. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1277. package/build-module/components/inserter/menu.js +139 -104
  1278. package/build-module/components/inserter/menu.js.map +1 -1
  1279. package/build-module/components/inserter/menu.native.js +36 -28
  1280. package/build-module/components/inserter/menu.native.js.map +1 -1
  1281. package/build-module/components/inserter/mobile-tab-navigation.js +57 -40
  1282. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1283. package/build-module/components/inserter/no-results.js +11 -7
  1284. package/build-module/components/inserter/no-results.js.map +1 -1
  1285. package/build-module/components/inserter/no-results.native.js +14 -8
  1286. package/build-module/components/inserter/no-results.native.js.map +1 -1
  1287. package/build-module/components/inserter/panel.js +17 -10
  1288. package/build-module/components/inserter/panel.js.map +1 -1
  1289. package/build-module/components/inserter/preview-panel.js +25 -20
  1290. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1291. package/build-module/components/inserter/quick-inserter.js +38 -33
  1292. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1293. package/build-module/components/inserter/reusable-block-rename-hint.js +21 -18
  1294. package/build-module/components/inserter/reusable-block-rename-hint.js.map +1 -1
  1295. package/build-module/components/inserter/reusable-blocks-tab.native.js +2 -2
  1296. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1297. package/build-module/components/inserter/search-results.js +53 -41
  1298. package/build-module/components/inserter/search-results.js.map +1 -1
  1299. package/build-module/components/inserter/search-results.native.js +3 -3
  1300. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1301. package/build-module/components/inserter/tabs.js +36 -19
  1302. package/build-module/components/inserter/tabs.js.map +1 -1
  1303. package/build-module/components/inserter/tabs.native.js +20 -18
  1304. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1305. package/build-module/components/inserter/tips.js +7 -5
  1306. package/build-module/components/inserter/tips.js.map +1 -1
  1307. package/build-module/components/inserter-button/index.native.js +29 -23
  1308. package/build-module/components/inserter-button/index.native.js.map +1 -1
  1309. package/build-module/components/inserter-button/sparkles.js +8 -7
  1310. package/build-module/components/inserter-button/sparkles.js.map +1 -1
  1311. package/build-module/components/inserter-draggable-blocks/index.js +14 -13
  1312. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1313. package/build-module/components/inserter-list-item/index.js +70 -63
  1314. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1315. package/build-module/components/inserter-listbox/group.js +2 -2
  1316. package/build-module/components/inserter-listbox/group.js.map +1 -1
  1317. package/build-module/components/inserter-listbox/index.js +6 -4
  1318. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1319. package/build-module/components/inserter-listbox/item.js +10 -8
  1320. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1321. package/build-module/components/inserter-listbox/row.js +2 -2
  1322. package/build-module/components/inserter-listbox/row.js.map +1 -1
  1323. package/build-module/components/inspector-controls/block-support-slot-container.js +2 -2
  1324. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1325. package/build-module/components/inspector-controls/block-support-tools-panel.js +5 -5
  1326. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1327. package/build-module/components/inspector-controls/fill.js +22 -17
  1328. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1329. package/build-module/components/inspector-controls/fill.native.js +14 -5
  1330. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1331. package/build-module/components/inspector-controls/index.js +3 -3
  1332. package/build-module/components/inspector-controls/index.js.map +1 -1
  1333. package/build-module/components/inspector-controls/slot.js +11 -10
  1334. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1335. package/build-module/components/inspector-controls/slot.native.js +3 -3
  1336. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1337. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js +7 -6
  1338. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  1339. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.native.js +11 -9
  1340. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  1341. package/build-module/components/inspector-controls-tabs/index.js +45 -32
  1342. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1343. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +8 -7
  1344. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1345. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +21 -18
  1346. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1347. package/build-module/components/inspector-controls-tabs/settings-tab.js +8 -2
  1348. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1349. package/build-module/components/inspector-controls-tabs/styles-tab.js +33 -26
  1350. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1351. package/build-module/components/inspector-popover-header/index.js +32 -26
  1352. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1353. package/build-module/components/justify-content-control/index.js +3 -3
  1354. package/build-module/components/justify-content-control/index.js.map +1 -1
  1355. package/build-module/components/justify-content-control/ui.js +2 -2
  1356. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1357. package/build-module/components/keyboard-shortcuts/index.js +9 -0
  1358. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  1359. package/build-module/components/letter-spacing-control/index.js +2 -2
  1360. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1361. package/build-module/components/line-height-control/index.js +17 -16
  1362. package/build-module/components/line-height-control/index.js.map +1 -1
  1363. package/build-module/components/line-height-control/index.native.js +2 -2
  1364. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1365. package/build-module/components/link-control/index.js +103 -83
  1366. package/build-module/components/link-control/index.js.map +1 -1
  1367. package/build-module/components/link-control/link-preview.js +65 -51
  1368. package/build-module/components/link-control/link-preview.js.map +1 -1
  1369. package/build-module/components/link-control/search-create-button.js +6 -5
  1370. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1371. package/build-module/components/link-control/search-input.js +33 -31
  1372. package/build-module/components/link-control/search-input.js.map +1 -1
  1373. package/build-module/components/link-control/search-item.js +12 -11
  1374. package/build-module/components/link-control/search-item.js.map +1 -1
  1375. package/build-module/components/link-control/search-results.js +53 -48
  1376. package/build-module/components/link-control/search-results.js.map +1 -1
  1377. package/build-module/components/link-control/settings-drawer.js +39 -30
  1378. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1379. package/build-module/components/link-control/settings.js +11 -9
  1380. package/build-module/components/link-control/settings.js.map +1 -1
  1381. package/build-module/components/list-view/appender.js +25 -22
  1382. package/build-module/components/list-view/appender.js.map +1 -1
  1383. package/build-module/components/list-view/aria-referenced-text.js +5 -4
  1384. package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
  1385. package/build-module/components/list-view/block-contents.js +36 -31
  1386. package/build-module/components/list-view/block-contents.js.map +1 -1
  1387. package/build-module/components/list-view/block-select-button.js +61 -44
  1388. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1389. package/build-module/components/list-view/block.js +134 -97
  1390. package/build-module/components/list-view/block.js.map +1 -1
  1391. package/build-module/components/list-view/branch.js +102 -93
  1392. package/build-module/components/list-view/branch.js.map +1 -1
  1393. package/build-module/components/list-view/drop-indicator.js +40 -32
  1394. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1395. package/build-module/components/list-view/expander.js +8 -6
  1396. package/build-module/components/list-view/expander.js.map +1 -1
  1397. package/build-module/components/list-view/index.js +44 -39
  1398. package/build-module/components/list-view/index.js.map +1 -1
  1399. package/build-module/components/list-view/leaf.js +7 -6
  1400. package/build-module/components/list-view/leaf.js.map +1 -1
  1401. package/build-module/components/media-placeholder/index.js +103 -81
  1402. package/build-module/components/media-placeholder/index.js.map +1 -1
  1403. package/build-module/components/media-placeholder/index.native.js +65 -52
  1404. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1405. package/build-module/components/media-replace-flow/index.js +75 -61
  1406. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1407. package/build-module/components/media-replace-flow/index.native.js +2 -2
  1408. package/build-module/components/media-replace-flow/index.native.js.map +1 -1
  1409. package/build-module/components/media-upload/index.native.js +46 -40
  1410. package/build-module/components/media-upload/index.native.js.map +1 -1
  1411. package/build-module/components/media-upload-progress/index.native.js +41 -16
  1412. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  1413. package/build-module/components/multi-selection-inspector/index.js +20 -15
  1414. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1415. package/build-module/components/navigable-toolbar/index.js +9 -7
  1416. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1417. package/build-module/components/observe-typing/index.js +5 -4
  1418. package/build-module/components/observe-typing/index.js.map +1 -1
  1419. package/build-module/components/panel-color-settings/index.js +2 -2
  1420. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1421. package/build-module/components/plain-text/index.js +5 -5
  1422. package/build-module/components/plain-text/index.js.map +1 -1
  1423. package/build-module/components/plain-text/index.native.js +3 -3
  1424. package/build-module/components/plain-text/index.native.js.map +1 -1
  1425. package/build-module/components/provider/block-refs-provider.js +5 -4
  1426. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1427. package/build-module/components/provider/index.js +12 -8
  1428. package/build-module/components/provider/index.js.map +1 -1
  1429. package/build-module/components/provider/index.native.js +4 -3
  1430. package/build-module/components/provider/index.native.js.map +1 -1
  1431. package/build-module/components/provider/use-block-sync.js +19 -1
  1432. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1433. package/build-module/components/provider/with-registry-provider.js +32 -28
  1434. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1435. package/build-module/components/publish-date-time-picker/index.js +37 -17
  1436. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1437. package/build-module/components/recursion-provider/index.js +6 -5
  1438. package/build-module/components/recursion-provider/index.js.map +1 -1
  1439. package/build-module/components/resizable-box-popover/index.js +7 -6
  1440. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1441. package/build-module/components/resolution-tool/index.js +12 -11
  1442. package/build-module/components/resolution-tool/index.js.map +1 -1
  1443. package/build-module/components/responsive-block-control/index.js +32 -27
  1444. package/build-module/components/responsive-block-control/index.js.map +1 -1
  1445. package/build-module/components/responsive-block-control/label.js +13 -7
  1446. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1447. package/build-module/components/rich-text/content.js +8 -5
  1448. package/build-module/components/rich-text/content.js.map +1 -1
  1449. package/build-module/components/rich-text/embed-handler-picker.native.js +2 -2
  1450. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1451. package/build-module/components/rich-text/event-listeners/enter.js +33 -43
  1452. package/build-module/components/rich-text/event-listeners/enter.js.map +1 -1
  1453. package/build-module/components/rich-text/event-listeners/paste-handler.js +23 -43
  1454. package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  1455. package/build-module/components/rich-text/format-edit.js +5 -5
  1456. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1457. package/build-module/components/rich-text/format-toolbar/index.js +40 -34
  1458. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1459. package/build-module/components/rich-text/format-toolbar/index.native.js +10 -7
  1460. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  1461. package/build-module/components/rich-text/format-toolbar-container.js +17 -12
  1462. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1463. package/build-module/components/rich-text/format-toolbar-container.native.js +5 -4
  1464. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  1465. package/build-module/components/rich-text/get-rich-text-values.js +3 -2
  1466. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  1467. package/build-module/components/rich-text/index.js +98 -78
  1468. package/build-module/components/rich-text/index.js.map +1 -1
  1469. package/build-module/components/rich-text/index.native.js +54 -48
  1470. package/build-module/components/rich-text/index.native.js.map +1 -1
  1471. package/build-module/components/rich-text/multiline.js +69 -41
  1472. package/build-module/components/rich-text/multiline.js.map +1 -1
  1473. package/build-module/components/rich-text/native/format-edit.js +3 -4
  1474. package/build-module/components/rich-text/native/format-edit.js.map +1 -1
  1475. package/build-module/components/rich-text/native/index.native.js +89 -80
  1476. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  1477. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +20 -14
  1478. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  1479. package/build-module/components/rich-text/toolbar-button.js +8 -7
  1480. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1481. package/build-module/components/rich-text/utils.js +5 -4
  1482. package/build-module/components/rich-text/utils.js.map +1 -1
  1483. package/build-module/components/rich-text/with-deprecations.js +2 -2
  1484. package/build-module/components/rich-text/with-deprecations.js.map +1 -1
  1485. package/build-module/components/segmented-text-control/index.js +21 -18
  1486. package/build-module/components/segmented-text-control/index.js.map +1 -1
  1487. package/build-module/components/skip-to-selected-block/index.js +5 -4
  1488. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1489. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +29 -14
  1490. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  1491. package/build-module/components/spacing-sizes-control/index.js +24 -19
  1492. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1493. package/build-module/components/spacing-sizes-control/input-controls/axial.js +20 -18
  1494. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  1495. package/build-module/components/spacing-sizes-control/input-controls/separated.js +19 -17
  1496. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  1497. package/build-module/components/spacing-sizes-control/input-controls/single.js +2 -2
  1498. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  1499. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +106 -101
  1500. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  1501. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +44 -34
  1502. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  1503. package/build-module/components/spacing-sizes-control/utils.js +1 -0
  1504. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1505. package/build-module/components/text-alignment-control/index.js +4 -4
  1506. package/build-module/components/text-alignment-control/index.js.map +1 -1
  1507. package/build-module/components/text-decoration-control/index.js +4 -4
  1508. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1509. package/build-module/components/text-transform-control/index.js +4 -4
  1510. package/build-module/components/text-transform-control/index.js.map +1 -1
  1511. package/build-module/components/tool-selector/index.js +37 -26
  1512. package/build-module/components/tool-selector/index.js.map +1 -1
  1513. package/build-module/components/typewriter/index.js +5 -4
  1514. package/build-module/components/typewriter/index.js.map +1 -1
  1515. package/build-module/components/ungroup-button/index.native.js +8 -6
  1516. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1517. package/build-module/components/unit-control/index.js +2 -2
  1518. package/build-module/components/unit-control/index.js.map +1 -1
  1519. package/build-module/components/unsupported-block-details/index.native.js +32 -28
  1520. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  1521. package/build-module/components/url-input/button.js +32 -28
  1522. package/build-module/components/url-input/button.js.map +1 -1
  1523. package/build-module/components/url-input/index.js +30 -22
  1524. package/build-module/components/url-input/index.js.map +1 -1
  1525. package/build-module/components/url-input/index.native.js +2 -2
  1526. package/build-module/components/url-input/index.native.js.map +1 -1
  1527. package/build-module/components/url-popover/image-url-input-ui.js +106 -91
  1528. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1529. package/build-module/components/url-popover/index.js +25 -19
  1530. package/build-module/components/url-popover/index.js.map +1 -1
  1531. package/build-module/components/url-popover/link-editor.js +18 -16
  1532. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1533. package/build-module/components/url-popover/link-viewer-url.js +8 -7
  1534. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1535. package/build-module/components/url-popover/link-viewer.js +17 -15
  1536. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1537. package/build-module/components/use-block-commands/index.js +2 -2
  1538. package/build-module/components/use-block-commands/index.js.map +1 -1
  1539. package/build-module/components/video-player/gridicon-play.native.js +8 -7
  1540. package/build-module/components/video-player/gridicon-play.native.js.map +1 -1
  1541. package/build-module/components/video-player/index.native.js +44 -40
  1542. package/build-module/components/video-player/index.native.js.map +1 -1
  1543. package/build-module/components/warning/index.js +36 -27
  1544. package/build-module/components/warning/index.js.map +1 -1
  1545. package/build-module/components/warning/index.native.js +18 -13
  1546. package/build-module/components/warning/index.native.js.map +1 -1
  1547. package/build-module/components/writing-flow/index.js +12 -7
  1548. package/build-module/components/writing-flow/index.js.map +1 -1
  1549. package/build-module/components/writing-flow/use-clipboard-handler.js +65 -15
  1550. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
  1551. package/build-module/components/writing-flow/use-input.js +45 -3
  1552. package/build-module/components/writing-flow/use-input.js.map +1 -1
  1553. package/build-module/components/writing-flow/use-tab-nav.js +9 -4
  1554. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  1555. package/build-module/components/writing-mode-control/index.js +4 -4
  1556. package/build-module/components/writing-mode-control/index.js.map +1 -1
  1557. package/build-module/hooks/align.js +11 -10
  1558. package/build-module/hooks/align.js.map +1 -1
  1559. package/build-module/hooks/anchor.js +30 -22
  1560. package/build-module/hooks/anchor.js.map +1 -1
  1561. package/build-module/hooks/background.js +7 -6
  1562. package/build-module/hooks/background.js.map +1 -1
  1563. package/build-module/hooks/block-bindings.js +81 -0
  1564. package/build-module/hooks/block-bindings.js.map +1 -0
  1565. package/build-module/hooks/block-hooks.js +42 -33
  1566. package/build-module/hooks/block-hooks.js.map +1 -1
  1567. package/build-module/hooks/block-style-variation.js +136 -0
  1568. package/build-module/hooks/block-style-variation.js.map +1 -0
  1569. package/build-module/hooks/border.js +9 -8
  1570. package/build-module/hooks/border.js.map +1 -1
  1571. package/build-module/hooks/color.js +14 -12
  1572. package/build-module/hooks/color.js.map +1 -1
  1573. package/build-module/hooks/content-lock-ui.js +27 -40
  1574. package/build-module/hooks/content-lock-ui.js.map +1 -1
  1575. package/build-module/hooks/contrast-checker.js +2 -2
  1576. package/build-module/hooks/contrast-checker.js.map +1 -1
  1577. package/build-module/hooks/custom-class-name.js +19 -18
  1578. package/build-module/hooks/custom-class-name.js.map +1 -1
  1579. package/build-module/hooks/custom-class-name.native.js +2 -2
  1580. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  1581. package/build-module/hooks/dimensions.js +28 -23
  1582. package/build-module/hooks/dimensions.js.map +1 -1
  1583. package/build-module/hooks/duotone.js +51 -45
  1584. package/build-module/hooks/duotone.js.map +1 -1
  1585. package/build-module/hooks/font-family.js +3 -3
  1586. package/build-module/hooks/font-family.js.map +1 -1
  1587. package/build-module/hooks/font-size.js +2 -2
  1588. package/build-module/hooks/font-size.js.map +1 -1
  1589. package/build-module/hooks/index.js +4 -2
  1590. package/build-module/hooks/index.js.map +1 -1
  1591. package/build-module/hooks/layout-child.js +37 -25
  1592. package/build-module/hooks/layout-child.js.map +1 -1
  1593. package/build-module/hooks/layout.js +65 -57
  1594. package/build-module/hooks/layout.js.map +1 -1
  1595. package/build-module/hooks/line-height.js +2 -2
  1596. package/build-module/hooks/line-height.js.map +1 -1
  1597. package/build-module/hooks/position.js +30 -28
  1598. package/build-module/hooks/position.js.map +1 -1
  1599. package/build-module/hooks/spacing-visualizer.js +10 -9
  1600. package/build-module/hooks/spacing-visualizer.js.map +1 -1
  1601. package/build-module/hooks/style.js +25 -13
  1602. package/build-module/hooks/style.js.map +1 -1
  1603. package/build-module/hooks/text-align.js +23 -22
  1604. package/build-module/hooks/text-align.js.map +1 -1
  1605. package/build-module/hooks/typography.js +6 -5
  1606. package/build-module/hooks/typography.js.map +1 -1
  1607. package/build-module/hooks/typography.native.js +12 -8
  1608. package/build-module/hooks/typography.native.js.map +1 -1
  1609. package/build-module/hooks/use-bindings-attributes.js +85 -25
  1610. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  1611. package/build-module/hooks/use-color-props.js +2 -2
  1612. package/build-module/hooks/use-color-props.js.map +1 -1
  1613. package/build-module/hooks/use-typography-props.js +5 -5
  1614. package/build-module/hooks/use-typography-props.js.map +1 -1
  1615. package/build-module/hooks/use-zoom-out.js +2 -2
  1616. package/build-module/hooks/use-zoom-out.js.map +1 -1
  1617. package/build-module/hooks/utils.js +20 -19
  1618. package/build-module/hooks/utils.js.map +1 -1
  1619. package/build-module/layouts/constrained.js +68 -58
  1620. package/build-module/layouts/constrained.js.map +1 -1
  1621. package/build-module/layouts/flex.js +77 -61
  1622. package/build-module/layouts/flex.js.map +1 -1
  1623. package/build-module/layouts/grid.js +154 -130
  1624. package/build-module/layouts/grid.js.map +1 -1
  1625. package/build-module/private-apis.js +11 -2
  1626. package/build-module/private-apis.js.map +1 -1
  1627. package/build-module/store/actions.js +172 -46
  1628. package/build-module/store/actions.js.map +1 -1
  1629. package/build-module/store/get-block-settings.js +2 -46
  1630. package/build-module/store/get-block-settings.js.map +1 -1
  1631. package/build-module/store/private-actions.js +24 -0
  1632. package/build-module/store/private-actions.js.map +1 -1
  1633. package/build-module/store/private-keys.js +1 -0
  1634. package/build-module/store/private-keys.js.map +1 -1
  1635. package/build-module/store/private-selectors.js +5 -0
  1636. package/build-module/store/private-selectors.js.map +1 -1
  1637. package/build-module/store/reducer.js +21 -14
  1638. package/build-module/store/reducer.js.map +1 -1
  1639. package/build-module/store/selectors.js +33 -3
  1640. package/build-module/store/selectors.js.map +1 -1
  1641. package/build-module/store/utils.js +1 -0
  1642. package/build-module/store/utils.js.map +1 -1
  1643. package/build-module/utils/selection.js +7 -0
  1644. package/build-module/utils/selection.js.map +1 -1
  1645. package/build-module/utils/transform-styles/index.js +12 -7
  1646. package/build-module/utils/transform-styles/index.js.map +1 -1
  1647. package/build-style/content-rtl.css +93 -96
  1648. package/build-style/content.css +93 -96
  1649. package/build-style/style-rtl.css +105 -76
  1650. package/build-style/style.css +105 -76
  1651. package/build-types/components/block-context/index.d.ts +1 -1
  1652. package/build-types/components/block-context/index.d.ts.map +1 -1
  1653. package/package.json +34 -33
  1654. package/src/components/alignment-control/test/index.js +1 -1
  1655. package/src/components/audio-player/audio-url-parser.native.js +20 -0
  1656. package/src/components/audio-player/index.native.js +221 -0
  1657. package/src/components/audio-player/styles.native.scss +114 -0
  1658. package/src/components/audio-player/test/audio-url-parser.native.js +53 -0
  1659. package/src/components/block-actions/index.js +5 -1
  1660. package/src/components/block-alignment-control/ui.js +2 -2
  1661. package/src/components/block-bindings-toolbar-indicator/index.js +125 -10
  1662. package/src/components/block-bindings-toolbar-indicator/style.scss +7 -8
  1663. package/src/components/block-canvas/style.scss +1 -5
  1664. package/src/components/block-card/index.js +11 -7
  1665. package/src/components/block-card/style.scss +0 -11
  1666. package/src/components/block-compare/index.js +2 -2
  1667. package/src/components/block-content-overlay/content.scss +4 -37
  1668. package/src/components/block-draggable/test/helpers.native.js +8 -8
  1669. package/src/components/block-edit/edit.js +2 -2
  1670. package/src/components/block-edit/index.js +13 -2
  1671. package/src/components/block-edit/multiple-usage-warning.js +46 -0
  1672. package/src/components/block-icon/index.js +2 -2
  1673. package/src/components/block-inspector/index.js +4 -5
  1674. package/src/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -5
  1675. package/src/components/block-list/block-invalid-warning.native.js +1 -1
  1676. package/src/components/block-list/block.js +67 -21
  1677. package/src/components/block-list/block.native.js +19 -11
  1678. package/src/components/block-list/content.scss +46 -73
  1679. package/src/components/block-list/index.js +2 -2
  1680. package/src/components/block-list/use-block-props/index.js +4 -2
  1681. package/src/components/block-list/use-block-props/use-scroll-into-view.js +38 -0
  1682. package/src/components/block-list-appender/index.js +2 -2
  1683. package/src/components/block-mover/button.js +2 -2
  1684. package/src/components/block-mover/index.js +2 -2
  1685. package/src/components/block-patterns-list/index.js +33 -5
  1686. package/src/components/block-patterns-list/style.scss +23 -20
  1687. package/src/components/block-popover/README.md +1 -1
  1688. package/src/components/block-popover/cover.js +22 -7
  1689. package/src/components/block-popover/inbetween.js +2 -2
  1690. package/src/components/block-popover/index.js +24 -6
  1691. package/src/components/block-preview/index.js +2 -2
  1692. package/src/components/block-preview/style.scss +0 -26
  1693. package/src/components/block-settings/container.native.js +2 -0
  1694. package/src/components/block-settings-menu/block-settings-dropdown.js +14 -6
  1695. package/src/components/block-settings-menu-controls/index.js +25 -16
  1696. package/src/components/block-styles/index.js +2 -2
  1697. package/src/components/block-toolbar/index.js +4 -4
  1698. package/src/components/block-tools/block-selection-button.js +2 -2
  1699. package/src/components/block-tools/block-toolbar-breadcrumb.js +5 -5
  1700. package/src/components/block-tools/block-toolbar-popover.js +4 -7
  1701. package/src/components/block-tools/empty-block-inserter.js +2 -2
  1702. package/src/components/block-tools/index.js +30 -8
  1703. package/src/components/block-tools/insertion-point.js +4 -4
  1704. package/src/components/block-tools/style.scss +10 -2
  1705. package/src/components/block-tools/zoom-out-mode-inserters.js +75 -22
  1706. package/src/components/block-variation-picker/index.js +2 -2
  1707. package/src/components/border-radius-control/all-input-control.js +1 -1
  1708. package/src/components/border-radius-control/input-controls.js +1 -1
  1709. package/src/components/button-block-appender/index.js +2 -2
  1710. package/src/components/child-layout-control/index.js +26 -14
  1711. package/src/components/colors/utils.js +2 -2
  1712. package/src/components/colors/with-colors.js +2 -1
  1713. package/src/components/colors-gradients/control.js +6 -14
  1714. package/src/components/colors-gradients/dropdown.js +2 -2
  1715. package/src/components/colors-gradients/panel-color-gradient-settings.js +2 -2
  1716. package/src/components/colors-gradients/test/control.js +3 -3
  1717. package/src/components/contrast-checker/test/index.js +8 -8
  1718. package/src/components/convert-to-group-buttons/index.js +10 -1
  1719. package/src/components/default-block-appender/index.js +2 -2
  1720. package/src/components/dimensions-tool/aspect-ratio-tool.js +41 -68
  1721. package/src/components/dimensions-tool/scale-tool.js +1 -1
  1722. package/src/components/dimensions-tool/test/index.js +10 -0
  1723. package/src/components/dimensions-tool/width-height-tool.js +2 -2
  1724. package/src/components/editable-text/README.md +0 -4
  1725. package/src/components/font-sizes/utils.js +2 -1
  1726. package/src/components/global-styles/background-panel.js +119 -49
  1727. package/src/components/global-styles/border-panel.js +8 -5
  1728. package/src/components/global-styles/color-panel.js +30 -25
  1729. package/src/components/global-styles/color-panel.native.js +1 -1
  1730. package/src/components/global-styles/dimensions-panel.js +11 -12
  1731. package/src/components/global-styles/filters-panel.js +2 -2
  1732. package/src/components/global-styles/hooks.js +13 -1
  1733. package/src/components/global-styles/index.js +3 -0
  1734. package/src/components/global-styles/shadow-panel-components.js +17 -14
  1735. package/src/components/global-styles/test/get-global-styles-changes.js +0 -2
  1736. package/src/components/global-styles/test/theme-file-uri-utils.js +66 -0
  1737. package/src/components/global-styles/test/use-global-styles-context.native.js +434 -0
  1738. package/src/components/global-styles/test/use-global-styles-output.js +13 -12
  1739. package/src/components/global-styles/theme-file-uri-utils.js +77 -0
  1740. package/src/components/global-styles/typography-panel.js +50 -5
  1741. package/src/components/global-styles/use-global-styles-context.native.js +586 -0
  1742. package/src/components/global-styles/use-global-styles-output.js +200 -102
  1743. package/src/components/grid-visualizer/grid-item-resizer.js +169 -40
  1744. package/src/components/grid-visualizer/grid-visualizer.js +27 -7
  1745. package/src/components/grid-visualizer/style.scss +2 -1
  1746. package/src/components/height-control/index.js +1 -1
  1747. package/src/components/iframe/content.scss +67 -0
  1748. package/src/components/iframe/index.js +119 -39
  1749. package/src/components/image-editor/aspect-ratio-dropdown.js +91 -59
  1750. package/src/components/image-editor/cropper.js +2 -2
  1751. package/src/components/image-editor/index.js +1 -1
  1752. package/src/components/image-editor/test/index.js +22 -0
  1753. package/src/components/index.js +1 -0
  1754. package/src/components/index.native.js +7 -0
  1755. package/src/components/inner-blocks/button-block-appender.js +2 -2
  1756. package/src/components/inner-blocks/index.js +19 -17
  1757. package/src/components/inner-blocks/use-nested-settings-update.js +9 -16
  1758. package/src/components/inner-blocks/warning-max-depth-exceeded.native.js +1 -1
  1759. package/src/components/inserter/block-patterns-explorer/pattern-list.js +3 -2
  1760. package/src/components/inserter/block-patterns-tab/index.js +17 -1
  1761. package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +16 -2
  1762. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +8 -2
  1763. package/src/components/inserter/block-patterns-tab/patterns-filter.js +3 -2
  1764. package/src/components/inserter/block-types-tab.js +119 -79
  1765. package/src/components/inserter/category-tabs/index.js +1 -1
  1766. package/src/components/inserter/hooks/use-block-types-state.js +21 -5
  1767. package/src/components/inserter/hooks/use-insertion-point.js +68 -8
  1768. package/src/components/inserter/hooks/use-patterns-state.js +18 -5
  1769. package/src/components/inserter/index.js +4 -5
  1770. package/src/components/inserter/library.js +23 -7
  1771. package/src/components/inserter/media-tab/media-preview.js +2 -2
  1772. package/src/components/inserter/menu.js +135 -116
  1773. package/src/components/inserter/quick-inserter.js +5 -3
  1774. package/src/components/inserter/search-results.js +2 -1
  1775. package/src/components/inserter/style.scss +47 -26
  1776. package/src/components/inserter/tabs.js +29 -15
  1777. package/src/components/inserter-list-item/index.js +3 -3
  1778. package/src/components/inspector-controls/fill.native.js +3 -5
  1779. package/src/components/inspector-controls-tabs/index.js +15 -3
  1780. package/src/components/inspector-controls-tabs/style.scss +2 -10
  1781. package/src/components/keyboard-shortcuts/index.js +12 -0
  1782. package/src/components/line-height-control/test/index.js +16 -14
  1783. package/src/components/link-control/index.js +12 -3
  1784. package/src/components/link-control/link-preview.js +3 -3
  1785. package/src/components/link-control/search-results.js +2 -2
  1786. package/src/components/link-control/style.scss +9 -3
  1787. package/src/components/list-view/block-contents.js +3 -3
  1788. package/src/components/list-view/block-select-button.js +14 -3
  1789. package/src/components/list-view/block.js +54 -30
  1790. package/src/components/list-view/drop-indicator.js +3 -3
  1791. package/src/components/list-view/index.js +2 -2
  1792. package/src/components/list-view/leaf.js +2 -5
  1793. package/src/components/media-placeholder/index.js +5 -5
  1794. package/src/components/media-placeholder/index.native.js +2 -2
  1795. package/src/components/media-replace-flow/index.js +2 -2
  1796. package/src/components/media-upload-progress/index.native.js +22 -2
  1797. package/src/components/plain-text/index.js +2 -2
  1798. package/src/components/provider/use-block-sync.js +27 -1
  1799. package/src/components/provider/with-registry-provider.js +33 -38
  1800. package/src/components/publish-date-time-picker/index.js +43 -15
  1801. package/src/components/resolution-tool/index.js +1 -1
  1802. package/src/components/responsive-block-control/index.js +2 -2
  1803. package/src/components/rich-text/README.md +0 -8
  1804. package/src/components/rich-text/event-listeners/enter.js +28 -48
  1805. package/src/components/rich-text/event-listeners/paste-handler.js +21 -58
  1806. package/src/components/rich-text/format-toolbar/index.js +2 -2
  1807. package/src/components/rich-text/index.js +21 -8
  1808. package/src/components/rich-text/index.native.js +2 -2
  1809. package/src/components/rich-text/multiline.js +31 -3
  1810. package/src/components/rich-text/native/index.native.js +3 -2
  1811. package/src/components/rich-text/native/test/index.native.js +13 -13
  1812. package/src/components/segmented-text-control/index.js +2 -2
  1813. package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +48 -16
  1814. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +4 -3
  1815. package/src/components/spacing-sizes-control/utils.js +2 -0
  1816. package/src/components/text-alignment-control/index.js +2 -2
  1817. package/src/components/text-decoration-control/index.js +2 -2
  1818. package/src/components/text-transform-control/index.js +2 -2
  1819. package/src/components/url-input/index.js +4 -4
  1820. package/src/components/url-popover/link-editor.js +2 -2
  1821. package/src/components/url-popover/link-viewer-url.js +2 -2
  1822. package/src/components/url-popover/link-viewer.js +2 -2
  1823. package/src/components/video-player/index.native.js +1 -1
  1824. package/src/components/warning/index.js +2 -2
  1825. package/src/components/writing-flow/index.js +2 -2
  1826. package/src/components/writing-flow/use-clipboard-handler.js +96 -33
  1827. package/src/components/writing-flow/use-input.js +75 -1
  1828. package/src/components/writing-flow/use-tab-nav.js +10 -1
  1829. package/src/components/writing-mode-control/index.js +2 -5
  1830. package/src/content.scss +1 -0
  1831. package/src/hooks/align.js +2 -2
  1832. package/src/hooks/background.js +1 -1
  1833. package/src/hooks/block-bindings.js +92 -0
  1834. package/src/hooks/block-bindings.scss +3 -0
  1835. package/src/hooks/block-style-variation.js +156 -0
  1836. package/src/hooks/border.js +3 -3
  1837. package/src/hooks/color.js +12 -19
  1838. package/src/hooks/color.scss +1 -0
  1839. package/src/hooks/content-lock-ui.js +16 -33
  1840. package/src/hooks/custom-class-name.js +2 -2
  1841. package/src/hooks/custom-class-name.native.js +2 -2
  1842. package/src/hooks/dimensions.js +2 -2
  1843. package/src/hooks/font-family.js +1 -1
  1844. package/src/hooks/index.js +4 -0
  1845. package/src/hooks/layout-child.js +34 -20
  1846. package/src/hooks/layout.js +3 -4
  1847. package/src/hooks/position.js +3 -3
  1848. package/src/hooks/style.js +9 -1
  1849. package/src/hooks/text-align.js +20 -14
  1850. package/src/hooks/use-bindings-attributes.js +93 -18
  1851. package/src/hooks/use-color-props.js +2 -2
  1852. package/src/hooks/use-typography-props.js +4 -3
  1853. package/src/hooks/use-zoom-out.js +9 -2
  1854. package/src/hooks/utils.js +23 -6
  1855. package/src/layouts/flex.js +2 -2
  1856. package/src/layouts/grid.js +8 -12
  1857. package/src/private-apis.js +10 -0
  1858. package/src/store/actions.js +261 -73
  1859. package/src/store/get-block-settings.js +1 -46
  1860. package/src/store/private-actions.js +24 -0
  1861. package/src/store/private-keys.js +1 -0
  1862. package/src/store/private-selectors.js +15 -0
  1863. package/src/store/reducer.js +24 -11
  1864. package/src/store/selectors.js +65 -8
  1865. package/src/store/utils.js +2 -0
  1866. package/src/style.scss +1 -0
  1867. package/src/utils/selection.js +8 -0
  1868. package/src/utils/test/__snapshots__/transform-styles.js.snap +6 -0
  1869. package/src/utils/test/transform-styles.js +14 -0
  1870. package/src/utils/transform-styles/index.js +14 -9
  1871. package/tsconfig.tsbuildinfo +1 -1
  1872. package/build/components/rich-text/split-value.js +0 -81
  1873. package/build/components/rich-text/split-value.js.map +0 -1
  1874. package/build-module/components/rich-text/split-value.js +0 -75
  1875. package/build-module/components/rich-text/split-value.js.map +0 -1
  1876. package/src/components/rich-text/split-value.js +0 -64
@@ -1 +1 @@
1
- {"version":3,"names":["useRefEffect","useMergeRefs","useSelect","useDispatch","isTextField","UP","RIGHT","DOWN","LEFT","ENTER","BACKSPACE","ESCAPE","TAB","store","blockEditorStore","KEY_DOWN_ELIGIBLE_KEY_CODES","Set","isKeyDownEligibleForStartTyping","event","keyCode","shiftKey","has","useMouseMoveTypingReset","isTyping","select","stopTyping","node","ownerDocument","lastClientX","lastClientY","stopTypingOnMouseMove","clientX","clientY","addEventListener","removeEventListener","useTypingObserver","_isTyping","startTyping","ref1","ref2","defaultView","selection","getSelection","timerId","stopTypingOnNonTextField","target","setTimeout","stopTypingOnEscapeKey","stopTypingOnSelectionUncollapse","isCollapsed","clearTimeout","startTypingInTextField","type","contains","ObserveTyping","children","createElement","ref"],"sources":["@wordpress/block-editor/src/components/observe-typing/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect, useMergeRefs } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isTextField } from '@wordpress/dom';\nimport {\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n\tESCAPE,\n\tTAB,\n} from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Set of key codes upon which typing is to be initiated on a keydown event.\n *\n * @type {Set<number>}\n */\nconst KEY_DOWN_ELIGIBLE_KEY_CODES = new Set( [\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n] );\n\n/**\n * Returns true if a given keydown event can be inferred as intent to start\n * typing, or false otherwise. A keydown is considered eligible if it is a\n * text navigation without shift active.\n *\n * @param {KeyboardEvent} event Keydown event to test.\n *\n * @return {boolean} Whether event is eligible to start typing.\n */\nfunction isKeyDownEligibleForStartTyping( event ) {\n\tconst { keyCode, shiftKey } = event;\n\treturn ! shiftKey && KEY_DOWN_ELIGIBLE_KEY_CODES.has( keyCode );\n}\n\n/**\n * Removes the `isTyping` flag when the mouse moves in the document of the given\n * element.\n */\nexport function useMouseMoveTypingReset() {\n\tconst isTyping = useSelect(\n\t\t( select ) => select( blockEditorStore ).isTyping(),\n\t\t[]\n\t);\n\tconst { stopTyping } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isTyping ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { ownerDocument } = node;\n\t\t\tlet lastClientX;\n\t\t\tlet lastClientY;\n\n\t\t\t/**\n\t\t\t * On mouse move, unset typing flag if user has moved cursor.\n\t\t\t *\n\t\t\t * @param {MouseEvent} event Mousemove event.\n\t\t\t */\n\t\t\tfunction stopTypingOnMouseMove( event ) {\n\t\t\t\tconst { clientX, clientY } = event;\n\n\t\t\t\t// We need to check that the mouse really moved because Safari\n\t\t\t\t// triggers mousemove events when shift or ctrl are pressed.\n\t\t\t\tif (\n\t\t\t\t\tlastClientX &&\n\t\t\t\t\tlastClientY &&\n\t\t\t\t\t( lastClientX !== clientX || lastClientY !== clientY )\n\t\t\t\t) {\n\t\t\t\t\tstopTyping();\n\t\t\t\t}\n\n\t\t\t\tlastClientX = clientX;\n\t\t\t\tlastClientY = clientY;\n\t\t\t}\n\n\t\t\townerDocument.addEventListener(\n\t\t\t\t'mousemove',\n\t\t\t\tstopTypingOnMouseMove\n\t\t\t);\n\n\t\t\treturn () => {\n\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t'mousemove',\n\t\t\t\t\tstopTypingOnMouseMove\n\t\t\t\t);\n\t\t\t};\n\t\t},\n\t\t[ isTyping, stopTyping ]\n\t);\n}\n\n/**\n * Sets and removes the `isTyping` flag based on user actions:\n *\n * - Sets the flag if the user types within the given element.\n * - Removes the flag when the user selects some text, focusses a non-text\n * field, presses ESC or TAB, or moves the mouse in the document.\n */\nexport function useTypingObserver() {\n\tconst { isTyping } = useSelect( ( select ) => {\n\t\tconst { isTyping: _isTyping } = select( blockEditorStore );\n\t\treturn {\n\t\t\tisTyping: _isTyping(),\n\t\t};\n\t}, [] );\n\tconst { startTyping, stopTyping } = useDispatch( blockEditorStore );\n\n\tconst ref1 = useMouseMoveTypingReset();\n\tconst ref2 = useRefEffect(\n\t\t( node ) => {\n\t\t\tconst { ownerDocument } = node;\n\t\t\tconst { defaultView } = ownerDocument;\n\t\t\tconst selection = defaultView.getSelection();\n\n\t\t\t// Listeners to stop typing should only be added when typing.\n\t\t\t// Listeners to start typing should only be added when not typing.\n\t\t\tif ( isTyping ) {\n\t\t\t\tlet timerId;\n\n\t\t\t\t/**\n\t\t\t\t * Stops typing when focus transitions to a non-text field element.\n\t\t\t\t *\n\t\t\t\t * @param {FocusEvent} event Focus event.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnNonTextField( event ) {\n\t\t\t\t\tconst { target } = event;\n\n\t\t\t\t\t// Since focus to a non-text field via arrow key will trigger\n\t\t\t\t\t// before the keydown event, wait until after current stack\n\t\t\t\t\t// before evaluating whether typing is to be stopped. Otherwise,\n\t\t\t\t\t// typing will re-start.\n\t\t\t\t\ttimerId = defaultView.setTimeout( () => {\n\t\t\t\t\t\tif ( ! isTextField( target ) ) {\n\t\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Unsets typing flag if user presses Escape while typing flag is\n\t\t\t\t * active.\n\t\t\t\t *\n\t\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to\n\t\t\t\t * interpret.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnEscapeKey( event ) {\n\t\t\t\t\tconst { keyCode } = event;\n\n\t\t\t\t\tif ( keyCode === ESCAPE || keyCode === TAB ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * On selection change, unset typing flag if user has made an\n\t\t\t\t * uncollapsed (shift) selection.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnSelectionUncollapse() {\n\t\t\t\t\tif ( ! selection.isCollapsed ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener( 'focus', stopTypingOnNonTextField );\n\t\t\t\tnode.addEventListener( 'keydown', stopTypingOnEscapeKey );\n\n\t\t\t\townerDocument.addEventListener(\n\t\t\t\t\t'selectionchange',\n\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t);\n\n\t\t\t\treturn () => {\n\t\t\t\t\tdefaultView.clearTimeout( timerId );\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'focus',\n\t\t\t\t\t\tstopTypingOnNonTextField\n\t\t\t\t\t);\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'keydown',\n\t\t\t\t\t\tstopTypingOnEscapeKey\n\t\t\t\t\t);\n\t\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t\t'selectionchange',\n\t\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t\t);\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Handles a keypress or keydown event to infer intention to start\n\t\t\t * typing.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to interpret.\n\t\t\t */\n\t\t\tfunction startTypingInTextField( event ) {\n\t\t\t\tconst { type, target } = event;\n\n\t\t\t\t// Abort early if already typing, or key press is incurred outside a\n\t\t\t\t// text field (e.g. arrow-ing through toolbar buttons).\n\t\t\t\t// Ignore typing if outside the current DOM container\n\t\t\t\tif ( ! isTextField( target ) || ! node.contains( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Special-case keydown because certain keys do not emit a keypress\n\t\t\t\t// event. Conversely avoid keydown as the canonical event since\n\t\t\t\t// there are many keydown which are explicitly not targeted for\n\t\t\t\t// typing.\n\t\t\t\tif (\n\t\t\t\t\ttype === 'keydown' &&\n\t\t\t\t\t! isKeyDownEligibleForStartTyping( event )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tstartTyping();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keypress', startTypingInTextField );\n\t\t\tnode.addEventListener( 'keydown', startTypingInTextField );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keypress', startTypingInTextField );\n\t\t\t\tnode.removeEventListener( 'keydown', startTypingInTextField );\n\t\t\t};\n\t\t},\n\t\t[ isTyping, startTyping, stopTyping ]\n\t);\n\n\treturn useMergeRefs( [ ref1, ref2 ] );\n}\n\nfunction ObserveTyping( { children } ) {\n\treturn <div ref={ useTypingObserver() }>{ children }</div>;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/observe-typing/README.md\n */\nexport default ObserveTyping;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useRefEffect","useMergeRefs","useSelect","useDispatch","isTextField","UP","RIGHT","DOWN","LEFT","ENTER","BACKSPACE","ESCAPE","TAB","store","blockEditorStore","jsx","_jsx","KEY_DOWN_ELIGIBLE_KEY_CODES","Set","isKeyDownEligibleForStartTyping","event","keyCode","shiftKey","has","useMouseMoveTypingReset","isTyping","select","stopTyping","node","ownerDocument","lastClientX","lastClientY","stopTypingOnMouseMove","clientX","clientY","addEventListener","removeEventListener","useTypingObserver","_isTyping","startTyping","ref1","ref2","defaultView","selection","getSelection","timerId","stopTypingOnNonTextField","target","setTimeout","stopTypingOnEscapeKey","stopTypingOnSelectionUncollapse","isCollapsed","clearTimeout","startTypingInTextField","type","contains","ObserveTyping","children","ref"],"sources":["@wordpress/block-editor/src/components/observe-typing/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect, useMergeRefs } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isTextField } from '@wordpress/dom';\nimport {\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n\tESCAPE,\n\tTAB,\n} from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Set of key codes upon which typing is to be initiated on a keydown event.\n *\n * @type {Set<number>}\n */\nconst KEY_DOWN_ELIGIBLE_KEY_CODES = new Set( [\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n] );\n\n/**\n * Returns true if a given keydown event can be inferred as intent to start\n * typing, or false otherwise. A keydown is considered eligible if it is a\n * text navigation without shift active.\n *\n * @param {KeyboardEvent} event Keydown event to test.\n *\n * @return {boolean} Whether event is eligible to start typing.\n */\nfunction isKeyDownEligibleForStartTyping( event ) {\n\tconst { keyCode, shiftKey } = event;\n\treturn ! shiftKey && KEY_DOWN_ELIGIBLE_KEY_CODES.has( keyCode );\n}\n\n/**\n * Removes the `isTyping` flag when the mouse moves in the document of the given\n * element.\n */\nexport function useMouseMoveTypingReset() {\n\tconst isTyping = useSelect(\n\t\t( select ) => select( blockEditorStore ).isTyping(),\n\t\t[]\n\t);\n\tconst { stopTyping } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isTyping ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { ownerDocument } = node;\n\t\t\tlet lastClientX;\n\t\t\tlet lastClientY;\n\n\t\t\t/**\n\t\t\t * On mouse move, unset typing flag if user has moved cursor.\n\t\t\t *\n\t\t\t * @param {MouseEvent} event Mousemove event.\n\t\t\t */\n\t\t\tfunction stopTypingOnMouseMove( event ) {\n\t\t\t\tconst { clientX, clientY } = event;\n\n\t\t\t\t// We need to check that the mouse really moved because Safari\n\t\t\t\t// triggers mousemove events when shift or ctrl are pressed.\n\t\t\t\tif (\n\t\t\t\t\tlastClientX &&\n\t\t\t\t\tlastClientY &&\n\t\t\t\t\t( lastClientX !== clientX || lastClientY !== clientY )\n\t\t\t\t) {\n\t\t\t\t\tstopTyping();\n\t\t\t\t}\n\n\t\t\t\tlastClientX = clientX;\n\t\t\t\tlastClientY = clientY;\n\t\t\t}\n\n\t\t\townerDocument.addEventListener(\n\t\t\t\t'mousemove',\n\t\t\t\tstopTypingOnMouseMove\n\t\t\t);\n\n\t\t\treturn () => {\n\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t'mousemove',\n\t\t\t\t\tstopTypingOnMouseMove\n\t\t\t\t);\n\t\t\t};\n\t\t},\n\t\t[ isTyping, stopTyping ]\n\t);\n}\n\n/**\n * Sets and removes the `isTyping` flag based on user actions:\n *\n * - Sets the flag if the user types within the given element.\n * - Removes the flag when the user selects some text, focusses a non-text\n * field, presses ESC or TAB, or moves the mouse in the document.\n */\nexport function useTypingObserver() {\n\tconst { isTyping } = useSelect( ( select ) => {\n\t\tconst { isTyping: _isTyping } = select( blockEditorStore );\n\t\treturn {\n\t\t\tisTyping: _isTyping(),\n\t\t};\n\t}, [] );\n\tconst { startTyping, stopTyping } = useDispatch( blockEditorStore );\n\n\tconst ref1 = useMouseMoveTypingReset();\n\tconst ref2 = useRefEffect(\n\t\t( node ) => {\n\t\t\tconst { ownerDocument } = node;\n\t\t\tconst { defaultView } = ownerDocument;\n\t\t\tconst selection = defaultView.getSelection();\n\n\t\t\t// Listeners to stop typing should only be added when typing.\n\t\t\t// Listeners to start typing should only be added when not typing.\n\t\t\tif ( isTyping ) {\n\t\t\t\tlet timerId;\n\n\t\t\t\t/**\n\t\t\t\t * Stops typing when focus transitions to a non-text field element.\n\t\t\t\t *\n\t\t\t\t * @param {FocusEvent} event Focus event.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnNonTextField( event ) {\n\t\t\t\t\tconst { target } = event;\n\n\t\t\t\t\t// Since focus to a non-text field via arrow key will trigger\n\t\t\t\t\t// before the keydown event, wait until after current stack\n\t\t\t\t\t// before evaluating whether typing is to be stopped. Otherwise,\n\t\t\t\t\t// typing will re-start.\n\t\t\t\t\ttimerId = defaultView.setTimeout( () => {\n\t\t\t\t\t\tif ( ! isTextField( target ) ) {\n\t\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Unsets typing flag if user presses Escape while typing flag is\n\t\t\t\t * active.\n\t\t\t\t *\n\t\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to\n\t\t\t\t * interpret.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnEscapeKey( event ) {\n\t\t\t\t\tconst { keyCode } = event;\n\n\t\t\t\t\tif ( keyCode === ESCAPE || keyCode === TAB ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * On selection change, unset typing flag if user has made an\n\t\t\t\t * uncollapsed (shift) selection.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnSelectionUncollapse() {\n\t\t\t\t\tif ( ! selection.isCollapsed ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener( 'focus', stopTypingOnNonTextField );\n\t\t\t\tnode.addEventListener( 'keydown', stopTypingOnEscapeKey );\n\n\t\t\t\townerDocument.addEventListener(\n\t\t\t\t\t'selectionchange',\n\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t);\n\n\t\t\t\treturn () => {\n\t\t\t\t\tdefaultView.clearTimeout( timerId );\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'focus',\n\t\t\t\t\t\tstopTypingOnNonTextField\n\t\t\t\t\t);\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'keydown',\n\t\t\t\t\t\tstopTypingOnEscapeKey\n\t\t\t\t\t);\n\t\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t\t'selectionchange',\n\t\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t\t);\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Handles a keypress or keydown event to infer intention to start\n\t\t\t * typing.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to interpret.\n\t\t\t */\n\t\t\tfunction startTypingInTextField( event ) {\n\t\t\t\tconst { type, target } = event;\n\n\t\t\t\t// Abort early if already typing, or key press is incurred outside a\n\t\t\t\t// text field (e.g. arrow-ing through toolbar buttons).\n\t\t\t\t// Ignore typing if outside the current DOM container\n\t\t\t\tif ( ! isTextField( target ) || ! node.contains( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Special-case keydown because certain keys do not emit a keypress\n\t\t\t\t// event. Conversely avoid keydown as the canonical event since\n\t\t\t\t// there are many keydown which are explicitly not targeted for\n\t\t\t\t// typing.\n\t\t\t\tif (\n\t\t\t\t\ttype === 'keydown' &&\n\t\t\t\t\t! isKeyDownEligibleForStartTyping( event )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tstartTyping();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keypress', startTypingInTextField );\n\t\t\tnode.addEventListener( 'keydown', startTypingInTextField );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keypress', startTypingInTextField );\n\t\t\t\tnode.removeEventListener( 'keydown', startTypingInTextField );\n\t\t\t};\n\t\t},\n\t\t[ isTyping, startTyping, stopTyping ]\n\t);\n\n\treturn useMergeRefs( [ ref1, ref2 ] );\n}\n\nfunction ObserveTyping( { children } ) {\n\treturn <div ref={ useTypingObserver() }>{ children }</div>;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/observe-typing/README.md\n */\nexport default ObserveTyping;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,EAAEC,YAAY,QAAQ,oBAAoB;AAC/D,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SACCC,EAAE,EACFC,KAAK,EACLC,IAAI,EACJC,IAAI,EACJC,KAAK,EACLC,SAAS,EACTC,MAAM,EACNC,GAAG,QACG,qBAAqB;;AAE5B;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;;AAEvD;AACA;AACA;AACA;AACA;AAJA,SAAAC,GAAA,IAAAC,IAAA;AAKA,MAAMC,2BAA2B,GAAG,IAAIC,GAAG,CAAE,CAC5Cb,EAAE,EACFC,KAAK,EACLC,IAAI,EACJC,IAAI,EACJC,KAAK,EACLC,SAAS,CACR,CAAC;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASS,+BAA+BA,CAAEC,KAAK,EAAG;EACjD,MAAM;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGF,KAAK;EACnC,OAAO,CAAEE,QAAQ,IAAIL,2BAA2B,CAACM,GAAG,CAAEF,OAAQ,CAAC;AAChE;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASG,uBAAuBA,CAAA,EAAG;EACzC,MAAMC,QAAQ,GAAGvB,SAAS,CACvBwB,MAAM,IAAMA,MAAM,CAAEZ,gBAAiB,CAAC,CAACW,QAAQ,CAAC,CAAC,EACnD,EACD,CAAC;EACD,MAAM;IAAEE;EAAW,CAAC,GAAGxB,WAAW,CAAEW,gBAAiB,CAAC;EAEtD,OAAOd,YAAY,CAChB4B,IAAI,IAAM;IACX,IAAK,CAAEH,QAAQ,EAAG;MACjB;IACD;IAEA,MAAM;MAAEI;IAAc,CAAC,GAAGD,IAAI;IAC9B,IAAIE,WAAW;IACf,IAAIC,WAAW;;IAEf;AACH;AACA;AACA;AACA;IACG,SAASC,qBAAqBA,CAAEZ,KAAK,EAAG;MACvC,MAAM;QAAEa,OAAO;QAAEC;MAAQ,CAAC,GAAGd,KAAK;;MAElC;MACA;MACA,IACCU,WAAW,IACXC,WAAW,KACTD,WAAW,KAAKG,OAAO,IAAIF,WAAW,KAAKG,OAAO,CAAE,EACrD;QACDP,UAAU,CAAC,CAAC;MACb;MAEAG,WAAW,GAAGG,OAAO;MACrBF,WAAW,GAAGG,OAAO;IACtB;IAEAL,aAAa,CAACM,gBAAgB,CAC7B,WAAW,EACXH,qBACD,CAAC;IAED,OAAO,MAAM;MACZH,aAAa,CAACO,mBAAmB,CAChC,WAAW,EACXJ,qBACD,CAAC;IACF,CAAC;EACF,CAAC,EACD,CAAEP,QAAQ,EAAEE,UAAU,CACvB,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASU,iBAAiBA,CAAA,EAAG;EACnC,MAAM;IAAEZ;EAAS,CAAC,GAAGvB,SAAS,CAAIwB,MAAM,IAAM;IAC7C,MAAM;MAAED,QAAQ,EAAEa;IAAU,CAAC,GAAGZ,MAAM,CAAEZ,gBAAiB,CAAC;IAC1D,OAAO;MACNW,QAAQ,EAAEa,SAAS,CAAC;IACrB,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEC,WAAW;IAAEZ;EAAW,CAAC,GAAGxB,WAAW,CAAEW,gBAAiB,CAAC;EAEnE,MAAM0B,IAAI,GAAGhB,uBAAuB,CAAC,CAAC;EACtC,MAAMiB,IAAI,GAAGzC,YAAY,CACtB4B,IAAI,IAAM;IACX,MAAM;MAAEC;IAAc,CAAC,GAAGD,IAAI;IAC9B,MAAM;MAAEc;IAAY,CAAC,GAAGb,aAAa;IACrC,MAAMc,SAAS,GAAGD,WAAW,CAACE,YAAY,CAAC,CAAC;;IAE5C;IACA;IACA,IAAKnB,QAAQ,EAAG;MACf,IAAIoB,OAAO;;MAEX;AACJ;AACA;AACA;AACA;MACI,SAASC,wBAAwBA,CAAE1B,KAAK,EAAG;QAC1C,MAAM;UAAE2B;QAAO,CAAC,GAAG3B,KAAK;;QAExB;QACA;QACA;QACA;QACAyB,OAAO,GAAGH,WAAW,CAACM,UAAU,CAAE,MAAM;UACvC,IAAK,CAAE5C,WAAW,CAAE2C,MAAO,CAAC,EAAG;YAC9BpB,UAAU,CAAC,CAAC;UACb;QACD,CAAE,CAAC;MACJ;;MAEA;AACJ;AACA;AACA;AACA;AACA;AACA;MACI,SAASsB,qBAAqBA,CAAE7B,KAAK,EAAG;QACvC,MAAM;UAAEC;QAAQ,CAAC,GAAGD,KAAK;QAEzB,IAAKC,OAAO,KAAKV,MAAM,IAAIU,OAAO,KAAKT,GAAG,EAAG;UAC5Ce,UAAU,CAAC,CAAC;QACb;MACD;;MAEA;AACJ;AACA;AACA;MACI,SAASuB,+BAA+BA,CAAA,EAAG;QAC1C,IAAK,CAAEP,SAAS,CAACQ,WAAW,EAAG;UAC9BxB,UAAU,CAAC,CAAC;QACb;MACD;MAEAC,IAAI,CAACO,gBAAgB,CAAE,OAAO,EAAEW,wBAAyB,CAAC;MAC1DlB,IAAI,CAACO,gBAAgB,CAAE,SAAS,EAAEc,qBAAsB,CAAC;MAEzDpB,aAAa,CAACM,gBAAgB,CAC7B,iBAAiB,EACjBe,+BACD,CAAC;MAED,OAAO,MAAM;QACZR,WAAW,CAACU,YAAY,CAAEP,OAAQ,CAAC;QACnCjB,IAAI,CAACQ,mBAAmB,CACvB,OAAO,EACPU,wBACD,CAAC;QACDlB,IAAI,CAACQ,mBAAmB,CACvB,SAAS,EACTa,qBACD,CAAC;QACDpB,aAAa,CAACO,mBAAmB,CAChC,iBAAiB,EACjBc,+BACD,CAAC;MACF,CAAC;IACF;;IAEA;AACH;AACA;AACA;AACA;AACA;IACG,SAASG,sBAAsBA,CAAEjC,KAAK,EAAG;MACxC,MAAM;QAAEkC,IAAI;QAAEP;MAAO,CAAC,GAAG3B,KAAK;;MAE9B;MACA;MACA;MACA,IAAK,CAAEhB,WAAW,CAAE2C,MAAO,CAAC,IAAI,CAAEnB,IAAI,CAAC2B,QAAQ,CAAER,MAAO,CAAC,EAAG;QAC3D;MACD;;MAEA;MACA;MACA;MACA;MACA,IACCO,IAAI,KAAK,SAAS,IAClB,CAAEnC,+BAA+B,CAAEC,KAAM,CAAC,EACzC;QACD;MACD;MAEAmB,WAAW,CAAC,CAAC;IACd;IAEAX,IAAI,CAACO,gBAAgB,CAAE,UAAU,EAAEkB,sBAAuB,CAAC;IAC3DzB,IAAI,CAACO,gBAAgB,CAAE,SAAS,EAAEkB,sBAAuB,CAAC;IAE1D,OAAO,MAAM;MACZzB,IAAI,CAACQ,mBAAmB,CAAE,UAAU,EAAEiB,sBAAuB,CAAC;MAC9DzB,IAAI,CAACQ,mBAAmB,CAAE,SAAS,EAAEiB,sBAAuB,CAAC;IAC9D,CAAC;EACF,CAAC,EACD,CAAE5B,QAAQ,EAAEc,WAAW,EAAEZ,UAAU,CACpC,CAAC;EAED,OAAO1B,YAAY,CAAE,CAAEuC,IAAI,EAAEC,IAAI,CAAG,CAAC;AACtC;AAEA,SAASe,aAAaA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACtC,oBAAOzC,IAAA;IAAK0C,GAAG,EAAGrB,iBAAiB,CAAC,CAAG;IAAAoB,QAAA,EAAGA;EAAQ,CAAO,CAAC;AAC3D;;AAEA;AACA;AACA;AACA,eAAeD,aAAa","ignoreList":[]}
@@ -1,8 +1,8 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * Internal dependencies
4
3
  */
5
4
  import PanelColorGradientSettings from '../colors-gradients/panel-color-gradient-settings';
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
6
  const PanelColorSettings = ({
7
7
  colorSettings,
8
8
  ...props
@@ -22,7 +22,7 @@ const PanelColorSettings = ({
22
22
  onColorChange: onChange
23
23
  };
24
24
  });
25
- return createElement(PanelColorGradientSettings, {
25
+ return /*#__PURE__*/_jsx(PanelColorGradientSettings, {
26
26
  settings: settings,
27
27
  gradients: [],
28
28
  disableCustomGradients: true,
@@ -1 +1 @@
1
- {"version":3,"names":["PanelColorGradientSettings","PanelColorSettings","colorSettings","props","settings","map","setting","value","onChange","otherSettings","colorValue","onColorChange","createElement","gradients","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/panel-color-settings/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport PanelColorGradientSettings from '../colors-gradients/panel-color-gradient-settings';\n\nconst PanelColorSettings = ( { colorSettings, ...props } ) => {\n\tconst settings = colorSettings.map( ( setting ) => {\n\t\tif ( ! setting ) {\n\t\t\treturn setting;\n\t\t}\n\t\tconst { value, onChange, ...otherSettings } = setting;\n\t\treturn {\n\t\t\t...otherSettings,\n\t\t\tcolorValue: value,\n\t\t\tonColorChange: onChange,\n\t\t};\n\t} );\n\treturn (\n\t\t<PanelColorGradientSettings\n\t\t\tsettings={ settings }\n\t\t\tgradients={ [] }\n\t\t\tdisableCustomGradients\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\nexport default PanelColorSettings;\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,0BAA0B,MAAM,mDAAmD;AAE1F,MAAMC,kBAAkB,GAAGA,CAAE;EAAEC,aAAa;EAAE,GAAGC;AAAM,CAAC,KAAM;EAC7D,MAAMC,QAAQ,GAAGF,aAAa,CAACG,GAAG,CAAIC,OAAO,IAAM;IAClD,IAAK,CAAEA,OAAO,EAAG;MAChB,OAAOA,OAAO;IACf;IACA,MAAM;MAAEC,KAAK;MAAEC,QAAQ;MAAE,GAAGC;IAAc,CAAC,GAAGH,OAAO;IACrD,OAAO;MACN,GAAGG,aAAa;MAChBC,UAAU,EAAEH,KAAK;MACjBI,aAAa,EAAEH;IAChB,CAAC;EACF,CAAE,CAAC;EACH,OACCI,aAAA,CAACZ,0BAA0B;IAC1BI,QAAQ,EAAGA,QAAU;IACrBS,SAAS,EAAG,EAAI;IAChBC,sBAAsB;IAAA,GACjBX;EAAK,CACV,CAAC;AAEJ,CAAC;AACD,eAAeF,kBAAkB","ignoreList":[]}
1
+ {"version":3,"names":["PanelColorGradientSettings","jsx","_jsx","PanelColorSettings","colorSettings","props","settings","map","setting","value","onChange","otherSettings","colorValue","onColorChange","gradients","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/panel-color-settings/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport PanelColorGradientSettings from '../colors-gradients/panel-color-gradient-settings';\n\nconst PanelColorSettings = ( { colorSettings, ...props } ) => {\n\tconst settings = colorSettings.map( ( setting ) => {\n\t\tif ( ! setting ) {\n\t\t\treturn setting;\n\t\t}\n\t\tconst { value, onChange, ...otherSettings } = setting;\n\t\treturn {\n\t\t\t...otherSettings,\n\t\t\tcolorValue: value,\n\t\t\tonColorChange: onChange,\n\t\t};\n\t} );\n\treturn (\n\t\t<PanelColorGradientSettings\n\t\t\tsettings={ settings }\n\t\t\tgradients={ [] }\n\t\t\tdisableCustomGradients\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\nexport default PanelColorSettings;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,0BAA0B,MAAM,mDAAmD;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3F,MAAMC,kBAAkB,GAAGA,CAAE;EAAEC,aAAa;EAAE,GAAGC;AAAM,CAAC,KAAM;EAC7D,MAAMC,QAAQ,GAAGF,aAAa,CAACG,GAAG,CAAIC,OAAO,IAAM;IAClD,IAAK,CAAEA,OAAO,EAAG;MAChB,OAAOA,OAAO;IACf;IACA,MAAM;MAAEC,KAAK;MAAEC,QAAQ;MAAE,GAAGC;IAAc,CAAC,GAAGH,OAAO;IACrD,OAAO;MACN,GAAGG,aAAa;MAChBC,UAAU,EAAEH,KAAK;MACjBI,aAAa,EAAEH;IAChB,CAAC;EACF,CAAE,CAAC;EACH,oBACCR,IAAA,CAACF,0BAA0B;IAC1BM,QAAQ,EAAGA,QAAU;IACrBQ,SAAS,EAAG,EAAI;IAChBC,sBAAsB;IAAA,GACjBV;EAAK,CACV,CAAC;AAEJ,CAAC;AACD,eAAeF,kBAAkB","ignoreList":[]}
@@ -1,9 +1,8 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * External dependencies
4
3
  */
5
4
  import TextareaAutosize from 'react-autosize-textarea';
6
- import classnames from 'classnames';
5
+ import clsx from 'clsx';
7
6
 
8
7
  /**
9
8
  * WordPress dependencies
@@ -18,12 +17,13 @@ import EditableText from '../editable-text';
18
17
  /**
19
18
  * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/plain-text/README.md
20
19
  */
20
+ import { jsx as _jsx } from "react/jsx-runtime";
21
21
  const PlainText = forwardRef(({
22
22
  __experimentalVersion,
23
23
  ...props
24
24
  }, ref) => {
25
25
  if (__experimentalVersion === 2) {
26
- return createElement(EditableText, {
26
+ return /*#__PURE__*/_jsx(EditableText, {
27
27
  ref: ref,
28
28
  ...props
29
29
  });
@@ -33,9 +33,9 @@ const PlainText = forwardRef(({
33
33
  onChange,
34
34
  ...remainingProps
35
35
  } = props;
36
- return createElement(TextareaAutosize, {
36
+ return /*#__PURE__*/_jsx(TextareaAutosize, {
37
37
  ref: ref,
38
- className: classnames('block-editor-plain-text', className),
38
+ className: clsx('block-editor-plain-text', className),
39
39
  onChange: event => onChange(event.target.value),
40
40
  ...remainingProps
41
41
  });
@@ -1 +1 @@
1
- {"version":3,"names":["TextareaAutosize","classnames","forwardRef","EditableText","PlainText","__experimentalVersion","props","ref","createElement","className","onChange","remainingProps","event","target","value"],"sources":["@wordpress/block-editor/src/components/plain-text/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport TextareaAutosize from 'react-autosize-textarea';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport EditableText from '../editable-text';\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/plain-text/README.md\n */\nconst PlainText = forwardRef( ( { __experimentalVersion, ...props }, ref ) => {\n\tif ( __experimentalVersion === 2 ) {\n\t\treturn <EditableText ref={ ref } { ...props } />;\n\t}\n\n\tconst { className, onChange, ...remainingProps } = props;\n\n\treturn (\n\t\t<TextareaAutosize\n\t\t\tref={ ref }\n\t\t\tclassName={ classnames( 'block-editor-plain-text', className ) }\n\t\t\tonChange={ ( event ) => onChange( event.target.value ) }\n\t\t\t{ ...remainingProps }\n\t\t/>\n\t);\n} );\n\nexport default PlainText;\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,gBAAgB,MAAM,yBAAyB;AACtD,OAAOC,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,OAAOC,YAAY,MAAM,kBAAkB;;AAE3C;AACA;AACA;AACA,MAAMC,SAAS,GAAGF,UAAU,CAAE,CAAE;EAAEG,qBAAqB;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAM;EAC7E,IAAKF,qBAAqB,KAAK,CAAC,EAAG;IAClC,OAAOG,aAAA,CAACL,YAAY;MAACI,GAAG,EAAGA,GAAK;MAAA,GAAMD;IAAK,CAAI,CAAC;EACjD;EAEA,MAAM;IAAEG,SAAS;IAAEC,QAAQ;IAAE,GAAGC;EAAe,CAAC,GAAGL,KAAK;EAExD,OACCE,aAAA,CAACR,gBAAgB;IAChBO,GAAG,EAAGA,GAAK;IACXE,SAAS,EAAGR,UAAU,CAAE,yBAAyB,EAAEQ,SAAU,CAAG;IAChEC,QAAQ,EAAKE,KAAK,IAAMF,QAAQ,CAAEE,KAAK,CAACC,MAAM,CAACC,KAAM,CAAG;IAAA,GACnDH;EAAc,CACnB,CAAC;AAEJ,CAAE,CAAC;AAEH,eAAeP,SAAS","ignoreList":[]}
1
+ {"version":3,"names":["TextareaAutosize","clsx","forwardRef","EditableText","jsx","_jsx","PlainText","__experimentalVersion","props","ref","className","onChange","remainingProps","event","target","value"],"sources":["@wordpress/block-editor/src/components/plain-text/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport TextareaAutosize from 'react-autosize-textarea';\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport EditableText from '../editable-text';\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/plain-text/README.md\n */\nconst PlainText = forwardRef( ( { __experimentalVersion, ...props }, ref ) => {\n\tif ( __experimentalVersion === 2 ) {\n\t\treturn <EditableText ref={ ref } { ...props } />;\n\t}\n\n\tconst { className, onChange, ...remainingProps } = props;\n\n\treturn (\n\t\t<TextareaAutosize\n\t\t\tref={ ref }\n\t\t\tclassName={ clsx( 'block-editor-plain-text', className ) }\n\t\t\tonChange={ ( event ) => onChange( event.target.value ) }\n\t\t\t{ ...remainingProps }\n\t\t/>\n\t);\n} );\n\nexport default PlainText;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,gBAAgB,MAAM,yBAAyB;AACtD,OAAOC,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,OAAOC,YAAY,MAAM,kBAAkB;;AAE3C;AACA;AACA;AAFA,SAAAC,GAAA,IAAAC,IAAA;AAGA,MAAMC,SAAS,GAAGJ,UAAU,CAAE,CAAE;EAAEK,qBAAqB;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAM;EAC7E,IAAKF,qBAAqB,KAAK,CAAC,EAAG;IAClC,oBAAOF,IAAA,CAACF,YAAY;MAACM,GAAG,EAAGA,GAAK;MAAA,GAAMD;IAAK,CAAI,CAAC;EACjD;EAEA,MAAM;IAAEE,SAAS;IAAEC,QAAQ;IAAE,GAAGC;EAAe,CAAC,GAAGJ,KAAK;EAExD,oBACCH,IAAA,CAACL,gBAAgB;IAChBS,GAAG,EAAGA,GAAK;IACXC,SAAS,EAAGT,IAAI,CAAE,yBAAyB,EAAES,SAAU,CAAG;IAC1DC,QAAQ,EAAKE,KAAK,IAAMF,QAAQ,CAAEE,KAAK,CAACC,MAAM,CAACC,KAAM,CAAG;IAAA,GACnDH;EAAc,CACnB,CAAC;AAEJ,CAAE,CAAC;AAEH,eAAeN,SAAS","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * External dependencies
4
3
  */
@@ -19,6 +18,7 @@ import RichText from '../rich-text';
19
18
  * Internal dependencies
20
19
  */
21
20
  import styles from './style.scss';
21
+ import { jsx as _jsx } from "react/jsx-runtime";
22
22
  export default class PlainText extends Component {
23
23
  constructor() {
24
24
  super(...arguments);
@@ -120,7 +120,7 @@ export default class PlainText extends Component {
120
120
  fontSize: style?.fontSize,
121
121
  fontWeight: style?.fontWeight
122
122
  };
123
- return createElement(RichText, {
123
+ return /*#__PURE__*/_jsx(RichText, {
124
124
  ...otherProps,
125
125
  ...disableFormattingProps,
126
126
  ...forcePlainTextProps,
@@ -131,7 +131,7 @@ export default class PlainText extends Component {
131
131
  unstableOnFocus: onFocus
132
132
  });
133
133
  }
134
- return createElement(TextInput, {
134
+ return /*#__PURE__*/_jsx(TextInput, {
135
135
  ...this.props,
136
136
  ref: x => this._input = x,
137
137
  onChange: this.onChangeTextInput,
@@ -1 +1 @@
1
- {"version":3,"names":["TextInput","Platform","Dimensions","Component","getPxFromCssUnit","RichText","styles","PlainText","constructor","arguments","isAndroid","OS","onChangeTextInput","bind","onChangeRichText","componentDidMount","_input","isFocused","props","isSelected","timeoutID","setTimeout","focus","componentDidUpdate","prevProps","blur","componentWillUnmount","clearTimeout","getFontSize","style","fontSize","width","height","get","cssUnitOptions","parseFloat","replaceLineBreakTags","value","replace","RegExp","event","onChange","nativeEvent","text","render","__experimentalVersion","onFocus","otherProps","textStyles","disableFormattingProps","withoutInteractiveFormatting","disableEditingMenu","__unstableDisableFormats","disableSuggestions","forcePlainTextProps","preserveWhiteSpace","__unstablePastePlainText","multiline","fontProps","fontFamily","fontWeight","createElement","identifier","unstableOnFocus","ref","x","onBlur","scrollEnabled"],"sources":["@wordpress/block-editor/src/components/plain-text/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TextInput, Platform, Dimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { getPxFromCssUnit } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport RichText from '../rich-text';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\nexport default class PlainText extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.isAndroid = Platform.OS === 'android';\n\n\t\tthis.onChangeTextInput = this.onChangeTextInput.bind( this );\n\t\tthis.onChangeRichText = this.onChangeRichText.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\t// If isSelected is true, we should request the focus on this TextInput.\n\t\tif (\n\t\t\tthis._input &&\n\t\t\tthis._input.isFocused() === false &&\n\t\t\tthis.props.isSelected\n\t\t) {\n\t\t\tif ( this.isAndroid ) {\n\t\t\t\t/*\n\t\t\t\t * There seems to be an issue in React Native where the keyboard doesn't show if called shortly after rendering.\n\t\t\t\t * As a common work around this delay is used.\n\t\t\t\t * https://github.com/facebook/react-native/issues/19366#issuecomment-400603928\n\t\t\t\t */\n\t\t\t\tthis.timeoutID = setTimeout( () => {\n\t\t\t\t\tthis._input.focus();\n\t\t\t\t}, 100 );\n\t\t\t} else {\n\t\t\t\tthis._input.focus();\n\t\t\t}\n\t\t}\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tif ( ! this.props.isSelected && prevProps.isSelected ) {\n\t\t\tthis._input?.blur();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.isAndroid ) {\n\t\t\tclearTimeout( this.timeoutID );\n\t\t}\n\t}\n\n\tfocus() {\n\t\tthis._input?.focus();\n\t}\n\n\tblur() {\n\t\tthis._input?.blur();\n\t}\n\n\tgetFontSize() {\n\t\tconst { style } = this.props;\n\n\t\tif ( ! style?.fontSize ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { width, height } = Dimensions.get( 'window' );\n\t\tconst cssUnitOptions = { height, width };\n\n\t\treturn {\n\t\t\tfontSize: parseFloat(\n\t\t\t\tgetPxFromCssUnit( style.fontSize, cssUnitOptions )\n\t\t\t),\n\t\t};\n\t}\n\n\treplaceLineBreakTags( value ) {\n\t\treturn value?.replace( RegExp( '<br>', 'gim' ), '\\n' );\n\t}\n\n\tonChangeTextInput( event ) {\n\t\tconst { onChange } = this.props;\n\t\tonChange( event.nativeEvent.text );\n\t}\n\n\tonChangeRichText( value ) {\n\t\tconst { onChange } = this.props;\n\t\t// The <br> tags have to be replaced with new line characters\n\t\t// as the content of plain text shouldn't contain HTML tags.\n\t\tonChange( this.replaceLineBreakTags( value ) );\n\t}\n\n\trender() {\n\t\tconst { style, __experimentalVersion, onFocus, ...otherProps } =\n\t\t\tthis.props;\n\t\tconst textStyles = [\n\t\t\tstyle || styles[ 'block-editor-plain-text' ],\n\t\t\tthis.getFontSize(),\n\t\t];\n\n\t\tif ( __experimentalVersion === 2 ) {\n\t\t\tconst disableFormattingProps = {\n\t\t\t\twithoutInteractiveFormatting: true,\n\t\t\t\tdisableEditingMenu: true,\n\t\t\t\t__unstableDisableFormats: true,\n\t\t\t\tdisableSuggestions: true,\n\t\t\t};\n\n\t\t\tconst forcePlainTextProps = {\n\t\t\t\tpreserveWhiteSpace: true,\n\t\t\t\t__unstablePastePlainText: true,\n\t\t\t\tmultiline: false,\n\t\t\t};\n\n\t\t\tconst fontProps = {\n\t\t\t\tfontFamily: style?.fontFamily,\n\t\t\t\tfontSize: style?.fontSize,\n\t\t\t\tfontWeight: style?.fontWeight,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<RichText\n\t\t\t\t\t{ ...otherProps }\n\t\t\t\t\t{ ...disableFormattingProps }\n\t\t\t\t\t{ ...forcePlainTextProps }\n\t\t\t\t\t{ ...fontProps }\n\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\tstyle={ style }\n\t\t\t\t\tonChange={ this.onChangeRichText }\n\t\t\t\t\tunstableOnFocus={ onFocus }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<TextInput\n\t\t\t\t{ ...this.props }\n\t\t\t\tref={ ( x ) => ( this._input = x ) }\n\t\t\t\tonChange={ this.onChangeTextInput }\n\t\t\t\tonFocus={ this.props.onFocus } // Always assign onFocus as a props.\n\t\t\t\tonBlur={ this.props.onBlur } // Always assign onBlur as a props.\n\t\t\t\tfontFamily={\n\t\t\t\t\t( this.props.style && this.props.style.fontFamily ) ||\n\t\t\t\t\tstyles[ 'block-editor-plain-text' ].fontFamily\n\t\t\t\t}\n\t\t\t\tstyle={ textStyles }\n\t\t\t\tscrollEnabled={ false }\n\t\t\t/>\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["TextInput","Platform","Dimensions","Component","getPxFromCssUnit","RichText","styles","jsx","_jsx","PlainText","constructor","arguments","isAndroid","OS","onChangeTextInput","bind","onChangeRichText","componentDidMount","_input","isFocused","props","isSelected","timeoutID","setTimeout","focus","componentDidUpdate","prevProps","blur","componentWillUnmount","clearTimeout","getFontSize","style","fontSize","width","height","get","cssUnitOptions","parseFloat","replaceLineBreakTags","value","replace","RegExp","event","onChange","nativeEvent","text","render","__experimentalVersion","onFocus","otherProps","textStyles","disableFormattingProps","withoutInteractiveFormatting","disableEditingMenu","__unstableDisableFormats","disableSuggestions","forcePlainTextProps","preserveWhiteSpace","__unstablePastePlainText","multiline","fontProps","fontFamily","fontWeight","identifier","unstableOnFocus","ref","x","onBlur","scrollEnabled"],"sources":["@wordpress/block-editor/src/components/plain-text/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TextInput, Platform, Dimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { getPxFromCssUnit } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport RichText from '../rich-text';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\nexport default class PlainText extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.isAndroid = Platform.OS === 'android';\n\n\t\tthis.onChangeTextInput = this.onChangeTextInput.bind( this );\n\t\tthis.onChangeRichText = this.onChangeRichText.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\t// If isSelected is true, we should request the focus on this TextInput.\n\t\tif (\n\t\t\tthis._input &&\n\t\t\tthis._input.isFocused() === false &&\n\t\t\tthis.props.isSelected\n\t\t) {\n\t\t\tif ( this.isAndroid ) {\n\t\t\t\t/*\n\t\t\t\t * There seems to be an issue in React Native where the keyboard doesn't show if called shortly after rendering.\n\t\t\t\t * As a common work around this delay is used.\n\t\t\t\t * https://github.com/facebook/react-native/issues/19366#issuecomment-400603928\n\t\t\t\t */\n\t\t\t\tthis.timeoutID = setTimeout( () => {\n\t\t\t\t\tthis._input.focus();\n\t\t\t\t}, 100 );\n\t\t\t} else {\n\t\t\t\tthis._input.focus();\n\t\t\t}\n\t\t}\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tif ( ! this.props.isSelected && prevProps.isSelected ) {\n\t\t\tthis._input?.blur();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.isAndroid ) {\n\t\t\tclearTimeout( this.timeoutID );\n\t\t}\n\t}\n\n\tfocus() {\n\t\tthis._input?.focus();\n\t}\n\n\tblur() {\n\t\tthis._input?.blur();\n\t}\n\n\tgetFontSize() {\n\t\tconst { style } = this.props;\n\n\t\tif ( ! style?.fontSize ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { width, height } = Dimensions.get( 'window' );\n\t\tconst cssUnitOptions = { height, width };\n\n\t\treturn {\n\t\t\tfontSize: parseFloat(\n\t\t\t\tgetPxFromCssUnit( style.fontSize, cssUnitOptions )\n\t\t\t),\n\t\t};\n\t}\n\n\treplaceLineBreakTags( value ) {\n\t\treturn value?.replace( RegExp( '<br>', 'gim' ), '\\n' );\n\t}\n\n\tonChangeTextInput( event ) {\n\t\tconst { onChange } = this.props;\n\t\tonChange( event.nativeEvent.text );\n\t}\n\n\tonChangeRichText( value ) {\n\t\tconst { onChange } = this.props;\n\t\t// The <br> tags have to be replaced with new line characters\n\t\t// as the content of plain text shouldn't contain HTML tags.\n\t\tonChange( this.replaceLineBreakTags( value ) );\n\t}\n\n\trender() {\n\t\tconst { style, __experimentalVersion, onFocus, ...otherProps } =\n\t\t\tthis.props;\n\t\tconst textStyles = [\n\t\t\tstyle || styles[ 'block-editor-plain-text' ],\n\t\t\tthis.getFontSize(),\n\t\t];\n\n\t\tif ( __experimentalVersion === 2 ) {\n\t\t\tconst disableFormattingProps = {\n\t\t\t\twithoutInteractiveFormatting: true,\n\t\t\t\tdisableEditingMenu: true,\n\t\t\t\t__unstableDisableFormats: true,\n\t\t\t\tdisableSuggestions: true,\n\t\t\t};\n\n\t\t\tconst forcePlainTextProps = {\n\t\t\t\tpreserveWhiteSpace: true,\n\t\t\t\t__unstablePastePlainText: true,\n\t\t\t\tmultiline: false,\n\t\t\t};\n\n\t\t\tconst fontProps = {\n\t\t\t\tfontFamily: style?.fontFamily,\n\t\t\t\tfontSize: style?.fontSize,\n\t\t\t\tfontWeight: style?.fontWeight,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<RichText\n\t\t\t\t\t{ ...otherProps }\n\t\t\t\t\t{ ...disableFormattingProps }\n\t\t\t\t\t{ ...forcePlainTextProps }\n\t\t\t\t\t{ ...fontProps }\n\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\tstyle={ style }\n\t\t\t\t\tonChange={ this.onChangeRichText }\n\t\t\t\t\tunstableOnFocus={ onFocus }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<TextInput\n\t\t\t\t{ ...this.props }\n\t\t\t\tref={ ( x ) => ( this._input = x ) }\n\t\t\t\tonChange={ this.onChangeTextInput }\n\t\t\t\tonFocus={ this.props.onFocus } // Always assign onFocus as a props.\n\t\t\t\tonBlur={ this.props.onBlur } // Always assign onBlur as a props.\n\t\t\t\tfontFamily={\n\t\t\t\t\t( this.props.style && this.props.style.fontFamily ) ||\n\t\t\t\t\tstyles[ 'block-editor-plain-text' ].fontFamily\n\t\t\t\t}\n\t\t\t\tstyle={ textStyles }\n\t\t\t\tscrollEnabled={ false }\n\t\t\t/>\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,9 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
5
4
  import { createContext, useMemo } from '@wordpress/element';
6
5
  import { observableMap } from '@wordpress/compose';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
7
  export const BlockRefs = createContext({
8
8
  refsMap: observableMap()
9
9
  });
@@ -13,8 +13,9 @@ export function BlockRefsProvider({
13
13
  const value = useMemo(() => ({
14
14
  refsMap: observableMap()
15
15
  }), []);
16
- return createElement(BlockRefs.Provider, {
17
- value: value
18
- }, children);
16
+ return /*#__PURE__*/_jsx(BlockRefs.Provider, {
17
+ value: value,
18
+ children: children
19
+ });
19
20
  }
20
21
  //# sourceMappingURL=block-refs-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useMemo","observableMap","BlockRefs","refsMap","BlockRefsProvider","children","value","createElement","Provider"],"sources":["@wordpress/block-editor/src/components/provider/block-refs-provider.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext, useMemo } from '@wordpress/element';\nimport { observableMap } from '@wordpress/compose';\n\nexport const BlockRefs = createContext( { refsMap: observableMap() } );\n\nexport function BlockRefsProvider( { children } ) {\n\tconst value = useMemo( () => ( { refsMap: observableMap() } ), [] );\n\treturn (\n\t\t<BlockRefs.Provider value={ value }>{ children }</BlockRefs.Provider>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,aAAa,EAAEC,OAAO,QAAQ,oBAAoB;AAC3D,SAASC,aAAa,QAAQ,oBAAoB;AAElD,OAAO,MAAMC,SAAS,GAAGH,aAAa,CAAE;EAAEI,OAAO,EAAEF,aAAa,CAAC;AAAE,CAAE,CAAC;AAEtE,OAAO,SAASG,iBAAiBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACjD,MAAMC,KAAK,GAAGN,OAAO,CAAE,OAAQ;IAAEG,OAAO,EAAEF,aAAa,CAAC;EAAE,CAAC,CAAE,EAAE,EAAG,CAAC;EACnE,OACCM,aAAA,CAACL,SAAS,CAACM,QAAQ;IAACF,KAAK,EAAGA;EAAO,GAAGD,QAA8B,CAAC;AAEvE","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useMemo","observableMap","jsx","_jsx","BlockRefs","refsMap","BlockRefsProvider","children","value","Provider"],"sources":["@wordpress/block-editor/src/components/provider/block-refs-provider.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext, useMemo } from '@wordpress/element';\nimport { observableMap } from '@wordpress/compose';\n\nexport const BlockRefs = createContext( { refsMap: observableMap() } );\n\nexport function BlockRefsProvider( { children } ) {\n\tconst value = useMemo( () => ( { refsMap: observableMap() } ), [] );\n\treturn (\n\t\t<BlockRefs.Provider value={ value }>{ children }</BlockRefs.Provider>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,aAAa,EAAEC,OAAO,QAAQ,oBAAoB;AAC3D,SAASC,aAAa,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEnD,OAAO,MAAMC,SAAS,GAAGL,aAAa,CAAE;EAAEM,OAAO,EAAEJ,aAAa,CAAC;AAAE,CAAE,CAAC;AAEtE,OAAO,SAASK,iBAAiBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACjD,MAAMC,KAAK,GAAGR,OAAO,CAAE,OAAQ;IAAEK,OAAO,EAAEJ,aAAa,CAAC;EAAE,CAAC,CAAE,EAAE,EAAG,CAAC;EACnE,oBACCE,IAAA,CAACC,SAAS,CAACK,QAAQ;IAACD,KAAK,EAAGA,KAAO;IAAAD,QAAA,EAAGA;EAAQ,CAAsB,CAAC;AAEvE","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -17,7 +16,8 @@ import { unlock } from '../../lock-unlock';
17
16
  import KeyboardShortcuts from '../keyboard-shortcuts';
18
17
 
19
18
  /** @typedef {import('@wordpress/data').WPDataRegistry} WPDataRegistry */
20
-
19
+ import { jsx as _jsx } from "react/jsx-runtime";
20
+ import { jsxs as _jsxs } from "react/jsx-runtime";
21
21
  export const ExperimentalBlockEditorProvider = withRegistryProvider(props => {
22
22
  const {
23
23
  children,
@@ -39,15 +39,19 @@ export const ExperimentalBlockEditorProvider = withRegistryProvider(props => {
39
39
 
40
40
  // Syncs the entity provider with changes in the block-editor store.
41
41
  useBlockSync(props);
42
- return createElement(SlotFillProvider, {
43
- passthrough: true
44
- }, !settings?.__unstableIsPreviewMode && createElement(KeyboardShortcuts.Register, null), createElement(BlockRefsProvider, null, children));
42
+ return /*#__PURE__*/_jsxs(SlotFillProvider, {
43
+ passthrough: true,
44
+ children: [!settings?.__unstableIsPreviewMode && /*#__PURE__*/_jsx(KeyboardShortcuts.Register, {}), /*#__PURE__*/_jsx(BlockRefsProvider, {
45
+ children: children
46
+ })]
47
+ });
45
48
  });
46
49
  export const BlockEditorProvider = props => {
47
- return createElement(ExperimentalBlockEditorProvider, {
50
+ return /*#__PURE__*/_jsx(ExperimentalBlockEditorProvider, {
48
51
  ...props,
49
- stripExperimentalSettings: true
50
- }, props.children);
52
+ stripExperimentalSettings: true,
53
+ children: props.children
54
+ });
51
55
  };
52
56
  export default BlockEditorProvider;
53
57
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useDispatch","useEffect","SlotFillProvider","withRegistryProvider","useBlockSync","store","blockEditorStore","BlockRefsProvider","unlock","KeyboardShortcuts","ExperimentalBlockEditorProvider","props","children","settings","stripExperimentalSettings","__experimentalUpdateSettings","__internalIsInitialized","reset","createElement","passthrough","__unstableIsPreviewMode","Register","BlockEditorProvider"],"sources":["@wordpress/block-editor/src/components/provider/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport withRegistryProvider from './with-registry-provider';\nimport useBlockSync from './use-block-sync';\nimport { store as blockEditorStore } from '../../store';\nimport { BlockRefsProvider } from './block-refs-provider';\nimport { unlock } from '../../lock-unlock';\nimport KeyboardShortcuts from '../keyboard-shortcuts';\n\n/** @typedef {import('@wordpress/data').WPDataRegistry} WPDataRegistry */\n\nexport const ExperimentalBlockEditorProvider = withRegistryProvider(\n\t( props ) => {\n\t\tconst { children, settings, stripExperimentalSettings = false } = props;\n\n\t\tconst { __experimentalUpdateSettings } = unlock(\n\t\t\tuseDispatch( blockEditorStore )\n\t\t);\n\t\tuseEffect( () => {\n\t\t\t__experimentalUpdateSettings(\n\t\t\t\t{\n\t\t\t\t\t...settings,\n\t\t\t\t\t__internalIsInitialized: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tstripExperimentalSettings,\n\t\t\t\t\treset: true,\n\t\t\t\t}\n\t\t\t);\n\t\t}, [\n\t\t\tsettings,\n\t\t\tstripExperimentalSettings,\n\t\t\t__experimentalUpdateSettings,\n\t\t] );\n\n\t\t// Syncs the entity provider with changes in the block-editor store.\n\t\tuseBlockSync( props );\n\n\t\treturn (\n\t\t\t<SlotFillProvider passthrough>\n\t\t\t\t{ ! settings?.__unstableIsPreviewMode && (\n\t\t\t\t\t<KeyboardShortcuts.Register />\n\t\t\t\t) }\n\t\t\t\t<BlockRefsProvider>{ children }</BlockRefsProvider>\n\t\t\t</SlotFillProvider>\n\t\t);\n\t}\n);\n\nexport const BlockEditorProvider = ( props ) => {\n\treturn (\n\t\t<ExperimentalBlockEditorProvider { ...props } stripExperimentalSettings>\n\t\t\t{ props.children }\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n};\n\nexport default BlockEditorProvider;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,gBAAgB,QAAQ,uBAAuB;;AAExD;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,iBAAiB,QAAQ,uBAAuB;AACzD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,iBAAiB,MAAM,uBAAuB;;AAErD;;AAEA,OAAO,MAAMC,+BAA+B,GAAGP,oBAAoB,CAChEQ,KAAK,IAAM;EACZ,MAAM;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,yBAAyB,GAAG;EAAM,CAAC,GAAGH,KAAK;EAEvE,MAAM;IAAEI;EAA6B,CAAC,GAAGP,MAAM,CAC9CR,WAAW,CAAEM,gBAAiB,CAC/B,CAAC;EACDL,SAAS,CAAE,MAAM;IAChBc,4BAA4B,CAC3B;MACC,GAAGF,QAAQ;MACXG,uBAAuB,EAAE;IAC1B,CAAC,EACD;MACCF,yBAAyB;MACzBG,KAAK,EAAE;IACR,CACD,CAAC;EACF,CAAC,EAAE,CACFJ,QAAQ,EACRC,yBAAyB,EACzBC,4BAA4B,CAC3B,CAAC;;EAEH;EACAX,YAAY,CAAEO,KAAM,CAAC;EAErB,OACCO,aAAA,CAAChB,gBAAgB;IAACiB,WAAW;EAAA,GAC1B,CAAEN,QAAQ,EAAEO,uBAAuB,IACpCF,aAAA,CAACT,iBAAiB,CAACY,QAAQ,MAAE,CAC7B,EACDH,aAAA,CAACX,iBAAiB,QAAGK,QAA6B,CACjC,CAAC;AAErB,CACD,CAAC;AAED,OAAO,MAAMU,mBAAmB,GAAKX,KAAK,IAAM;EAC/C,OACCO,aAAA,CAACR,+BAA+B;IAAA,GAAMC,KAAK;IAAGG,yBAAyB;EAAA,GACpEH,KAAK,CAACC,QACwB,CAAC;AAEpC,CAAC;AAED,eAAeU,mBAAmB","ignoreList":[]}
1
+ {"version":3,"names":["useDispatch","useEffect","SlotFillProvider","withRegistryProvider","useBlockSync","store","blockEditorStore","BlockRefsProvider","unlock","KeyboardShortcuts","jsx","_jsx","jsxs","_jsxs","ExperimentalBlockEditorProvider","props","children","settings","stripExperimentalSettings","__experimentalUpdateSettings","__internalIsInitialized","reset","passthrough","__unstableIsPreviewMode","Register","BlockEditorProvider"],"sources":["@wordpress/block-editor/src/components/provider/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport withRegistryProvider from './with-registry-provider';\nimport useBlockSync from './use-block-sync';\nimport { store as blockEditorStore } from '../../store';\nimport { BlockRefsProvider } from './block-refs-provider';\nimport { unlock } from '../../lock-unlock';\nimport KeyboardShortcuts from '../keyboard-shortcuts';\n\n/** @typedef {import('@wordpress/data').WPDataRegistry} WPDataRegistry */\n\nexport const ExperimentalBlockEditorProvider = withRegistryProvider(\n\t( props ) => {\n\t\tconst { children, settings, stripExperimentalSettings = false } = props;\n\n\t\tconst { __experimentalUpdateSettings } = unlock(\n\t\t\tuseDispatch( blockEditorStore )\n\t\t);\n\t\tuseEffect( () => {\n\t\t\t__experimentalUpdateSettings(\n\t\t\t\t{\n\t\t\t\t\t...settings,\n\t\t\t\t\t__internalIsInitialized: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tstripExperimentalSettings,\n\t\t\t\t\treset: true,\n\t\t\t\t}\n\t\t\t);\n\t\t}, [\n\t\t\tsettings,\n\t\t\tstripExperimentalSettings,\n\t\t\t__experimentalUpdateSettings,\n\t\t] );\n\n\t\t// Syncs the entity provider with changes in the block-editor store.\n\t\tuseBlockSync( props );\n\n\t\treturn (\n\t\t\t<SlotFillProvider passthrough>\n\t\t\t\t{ ! settings?.__unstableIsPreviewMode && (\n\t\t\t\t\t<KeyboardShortcuts.Register />\n\t\t\t\t) }\n\t\t\t\t<BlockRefsProvider>{ children }</BlockRefsProvider>\n\t\t\t</SlotFillProvider>\n\t\t);\n\t}\n);\n\nexport const BlockEditorProvider = ( props ) => {\n\treturn (\n\t\t<ExperimentalBlockEditorProvider { ...props } stripExperimentalSettings>\n\t\t\t{ props.children }\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n};\n\nexport default BlockEditorProvider;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,gBAAgB,QAAQ,uBAAuB;;AAExD;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,iBAAiB,QAAQ,uBAAuB;AACzD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,iBAAiB,MAAM,uBAAuB;;AAErD;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEA,OAAO,MAAMC,+BAA+B,GAAGX,oBAAoB,CAChEY,KAAK,IAAM;EACZ,MAAM;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,yBAAyB,GAAG;EAAM,CAAC,GAAGH,KAAK;EAEvE,MAAM;IAAEI;EAA6B,CAAC,GAAGX,MAAM,CAC9CR,WAAW,CAAEM,gBAAiB,CAC/B,CAAC;EACDL,SAAS,CAAE,MAAM;IAChBkB,4BAA4B,CAC3B;MACC,GAAGF,QAAQ;MACXG,uBAAuB,EAAE;IAC1B,CAAC,EACD;MACCF,yBAAyB;MACzBG,KAAK,EAAE;IACR,CACD,CAAC;EACF,CAAC,EAAE,CACFJ,QAAQ,EACRC,yBAAyB,EACzBC,4BAA4B,CAC3B,CAAC;;EAEH;EACAf,YAAY,CAAEW,KAAM,CAAC;EAErB,oBACCF,KAAA,CAACX,gBAAgB;IAACoB,WAAW;IAAAN,QAAA,GAC1B,CAAEC,QAAQ,EAAEM,uBAAuB,iBACpCZ,IAAA,CAACF,iBAAiB,CAACe,QAAQ,IAAE,CAC7B,eACDb,IAAA,CAACJ,iBAAiB;MAAAS,QAAA,EAAGA;IAAQ,CAAqB,CAAC;EAAA,CAClC,CAAC;AAErB,CACD,CAAC;AAED,OAAO,MAAMS,mBAAmB,GAAKV,KAAK,IAAM;EAC/C,oBACCJ,IAAA,CAACG,+BAA+B;IAAA,GAAMC,KAAK;IAAGG,yBAAyB;IAAAF,QAAA,EACpED,KAAK,CAACC;EAAQ,CACgB,CAAC;AAEpC,CAAC;AAED,eAAeS,mBAAmB","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -14,7 +13,7 @@ import { store as blockEditorStore } from '../../store';
14
13
  import { BlockRefsProvider } from './block-refs-provider';
15
14
 
16
15
  /** @typedef {import('@wordpress/data').WPDataRegistry} WPDataRegistry */
17
-
16
+ import { jsx as _jsx } from "react/jsx-runtime";
18
17
  const BlockEditorProvider = withRegistryProvider(function (props) {
19
18
  const {
20
19
  children,
@@ -29,7 +28,9 @@ const BlockEditorProvider = withRegistryProvider(function (props) {
29
28
 
30
29
  // Syncs the entity provider with changes in the block-editor store.
31
30
  useBlockSync(props);
32
- return createElement(BlockRefsProvider, null, children);
31
+ return /*#__PURE__*/_jsx(BlockRefsProvider, {
32
+ children: children
33
+ });
33
34
  });
34
35
  export default BlockEditorProvider;
35
36
  export { BlockEditorProvider as ExperimentalBlockEditorProvider };
@@ -1 +1 @@
1
- {"version":3,"names":["useDispatch","useEffect","withRegistryProvider","useBlockSync","store","blockEditorStore","BlockRefsProvider","BlockEditorProvider","props","children","settings","updateSettings","createElement","ExperimentalBlockEditorProvider"],"sources":["@wordpress/block-editor/src/components/provider/index.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport withRegistryProvider from './with-registry-provider';\nimport useBlockSync from './use-block-sync';\nimport { store as blockEditorStore } from '../../store';\nimport { BlockRefsProvider } from './block-refs-provider';\n\n/** @typedef {import('@wordpress/data').WPDataRegistry} WPDataRegistry */\n\nconst BlockEditorProvider = withRegistryProvider( function ( props ) {\n\tconst { children, settings } = props;\n\n\tconst { updateSettings } = useDispatch( blockEditorStore );\n\tuseEffect( () => {\n\t\tupdateSettings( settings );\n\t}, [ settings ] );\n\n\t// Syncs the entity provider with changes in the block-editor store.\n\tuseBlockSync( props );\n\n\treturn <BlockRefsProvider>{ children }</BlockRefsProvider>;\n} );\n\nexport default BlockEditorProvider;\nexport { BlockEditorProvider as ExperimentalBlockEditorProvider };\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,QAAQ,oBAAoB;;AAE9C;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,iBAAiB,QAAQ,uBAAuB;;AAEzD;;AAEA,MAAMC,mBAAmB,GAAGL,oBAAoB,CAAE,UAAWM,KAAK,EAAG;EACpE,MAAM;IAAEC,QAAQ;IAAEC;EAAS,CAAC,GAAGF,KAAK;EAEpC,MAAM;IAAEG;EAAe,CAAC,GAAGX,WAAW,CAAEK,gBAAiB,CAAC;EAC1DJ,SAAS,CAAE,MAAM;IAChBU,cAAc,CAAED,QAAS,CAAC;EAC3B,CAAC,EAAE,CAAEA,QAAQ,CAAG,CAAC;;EAEjB;EACAP,YAAY,CAAEK,KAAM,CAAC;EAErB,OAAOI,aAAA,CAACN,iBAAiB,QAAGG,QAA6B,CAAC;AAC3D,CAAE,CAAC;AAEH,eAAeF,mBAAmB;AAClC,SAASA,mBAAmB,IAAIM,+BAA+B","ignoreList":[]}
1
+ {"version":3,"names":["useDispatch","useEffect","withRegistryProvider","useBlockSync","store","blockEditorStore","BlockRefsProvider","jsx","_jsx","BlockEditorProvider","props","children","settings","updateSettings","ExperimentalBlockEditorProvider"],"sources":["@wordpress/block-editor/src/components/provider/index.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport withRegistryProvider from './with-registry-provider';\nimport useBlockSync from './use-block-sync';\nimport { store as blockEditorStore } from '../../store';\nimport { BlockRefsProvider } from './block-refs-provider';\n\n/** @typedef {import('@wordpress/data').WPDataRegistry} WPDataRegistry */\n\nconst BlockEditorProvider = withRegistryProvider( function ( props ) {\n\tconst { children, settings } = props;\n\n\tconst { updateSettings } = useDispatch( blockEditorStore );\n\tuseEffect( () => {\n\t\tupdateSettings( settings );\n\t}, [ settings ] );\n\n\t// Syncs the entity provider with changes in the block-editor store.\n\tuseBlockSync( props );\n\n\treturn <BlockRefsProvider>{ children }</BlockRefsProvider>;\n} );\n\nexport default BlockEditorProvider;\nexport { BlockEditorProvider as ExperimentalBlockEditorProvider };\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,QAAQ,oBAAoB;;AAE9C;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,iBAAiB,QAAQ,uBAAuB;;AAEzD;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAEA,MAAMC,mBAAmB,GAAGP,oBAAoB,CAAE,UAAWQ,KAAK,EAAG;EACpE,MAAM;IAAEC,QAAQ;IAAEC;EAAS,CAAC,GAAGF,KAAK;EAEpC,MAAM;IAAEG;EAAe,CAAC,GAAGb,WAAW,CAAEK,gBAAiB,CAAC;EAC1DJ,SAAS,CAAE,MAAM;IAChBY,cAAc,CAAED,QAAS,CAAC;EAC3B,CAAC,EAAE,CAAEA,QAAQ,CAAG,CAAC;;EAEjB;EACAT,YAAY,CAAEO,KAAM,CAAC;EAErB,oBAAOF,IAAA,CAACF,iBAAiB;IAAAK,QAAA,EAAGA;EAAQ,CAAqB,CAAC;AAC3D,CAAE,CAAC;AAEH,eAAeF,mBAAmB;AAClC,SAASA,mBAAmB,IAAIK,+BAA+B","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { useEffect, useRef } from '@wordpress/element';
5
- import { useRegistry } from '@wordpress/data';
5
+ import { useRegistry, useSelect } from '@wordpress/data';
6
6
  import { cloneBlock } from '@wordpress/blocks';
7
7
 
8
8
  /**
@@ -84,6 +84,9 @@ export default function useBlockSync({
84
84
  getSelectionStart,
85
85
  getSelectionEnd
86
86
  } = registry.select(blockEditorStore);
87
+ const isControlled = useSelect(select => {
88
+ return !clientId || select(blockEditorStore).areInnerBlocksControlled(clientId);
89
+ }, [clientId]);
87
90
  const pendingChanges = useRef({
88
91
  incoming: null,
89
92
  outgoing: []
@@ -168,6 +171,21 @@ export default function useBlockSync({
168
171
  }
169
172
  }
170
173
  }, [controlledBlocks, clientId]);
174
+ const isMounted = useRef(false);
175
+ useEffect(() => {
176
+ // On mount, controlled blocks are already set in the effect above.
177
+ if (!isMounted.current) {
178
+ isMounted.current = true;
179
+ return;
180
+ }
181
+
182
+ // When the block becomes uncontrolled, it means its inner state has been reset
183
+ // we need to take the blocks again from the external value property.
184
+ if (!isControlled) {
185
+ pendingChanges.current.outgoing = [];
186
+ setControlledBlocks();
187
+ }
188
+ }, [isControlled]);
171
189
  useEffect(() => {
172
190
  const {
173
191
  getSelectedBlocksInitialCaretPosition,
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useRegistry","cloneBlock","store","blockEditorStore","undoIgnoreBlocks","noop","useBlockSync","clientId","value","controlledBlocks","selection","controlledSelection","onChange","onInput","registry","resetBlocks","resetSelection","replaceInnerBlocks","setHasControlledInnerBlocks","__unstableMarkNextChangeAsNotPersistent","dispatch","getBlockName","getBlocks","getSelectionStart","getSelectionEnd","select","pendingChanges","incoming","outgoing","subscribed","setControlledBlocks","batch","storeBlocks","map","block","current","unsetControlledBlocks","onInputRef","onChangeRef","includes","length","selectionStart","selectionEnd","initialPosition","getSelectedBlocksInitialCaretPosition","isLastBlockChangePersistent","__unstableIsLastBlockChangeIgnored","areInnerBlocksControlled","blocks","isPersistent","previousAreBlocksDifferent","unsubscribe","subscribe","isStillControlled","newIsPersistent","newBlocks","areBlocksDifferent","didPersistenceChange","push","updateParent","undoIgnore","has","delete"],"sources":["@wordpress/block-editor/src/components/provider/use-block-sync.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport { useRegistry } from '@wordpress/data';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { undoIgnoreBlocks } from '../../store/undo-ignore';\n\nconst noop = () => {};\n\n/**\n * A function to call when the block value has been updated in the block-editor\n * store.\n *\n * @callback onBlockUpdate\n * @param {Object[]} blocks The updated blocks.\n * @param {Object} options The updated block options, such as selectionStart\n * and selectionEnd.\n */\n\n/**\n * useBlockSync is a side effect which handles bidirectional sync between the\n * block-editor store and a controlling data source which provides blocks. This\n * is most commonly used by the BlockEditorProvider to synchronize the contents\n * of the block-editor store with the root entity, like a post.\n *\n * Another example would be the template part block, which provides blocks from\n * a separate entity data source than a root entity. This hook syncs edits to\n * the template part in the block editor back to the entity and vice-versa.\n *\n * Here are some of its basic functions:\n * - Initalizes the block-editor store for the given clientID to the blocks\n * given via props.\n * - Adds incoming changes (like undo) to the block-editor store.\n * - Adds outgoing changes (like editing content) to the controlling entity,\n * determining if a change should be considered persistent or not.\n * - Handles edge cases and race conditions which occur in those operations.\n * - Ignores changes which happen to other entities (like nested inner block\n * controllers.\n * - Passes selection state from the block-editor store to the controlling entity.\n *\n * @param {Object} props Props for the block sync hook\n * @param {string} props.clientId The client ID of the inner block controller.\n * If none is passed, then it is assumed to be a\n * root controller rather than an inner block\n * controller.\n * @param {Object[]} props.value The control value for the blocks. This value\n * is used to initalize the block-editor store\n * and for resetting the blocks to incoming\n * changes like undo.\n * @param {Object} props.selection The selection state responsible to restore the selection on undo/redo.\n * @param {onBlockUpdate} props.onChange Function to call when a persistent\n * change has been made in the block-editor blocks\n * for the given clientId. For example, after\n * this function is called, an entity is marked\n * dirty because it has changes to save.\n * @param {onBlockUpdate} props.onInput Function to call when a non-persistent\n * change has been made in the block-editor blocks\n * for the given clientId. When this is called,\n * controlling sources do not become dirty.\n */\nexport default function useBlockSync( {\n\tclientId = null,\n\tvalue: controlledBlocks,\n\tselection: controlledSelection,\n\tonChange = noop,\n\tonInput = noop,\n} ) {\n\tconst registry = useRegistry();\n\n\tconst {\n\t\tresetBlocks,\n\t\tresetSelection,\n\t\treplaceInnerBlocks,\n\t\tsetHasControlledInnerBlocks,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = registry.dispatch( blockEditorStore );\n\tconst { getBlockName, getBlocks, getSelectionStart, getSelectionEnd } =\n\t\tregistry.select( blockEditorStore );\n\n\tconst pendingChanges = useRef( { incoming: null, outgoing: [] } );\n\tconst subscribed = useRef( false );\n\n\tconst setControlledBlocks = () => {\n\t\tif ( ! controlledBlocks ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't need to persist this change because we only replace\n\t\t// controlled inner blocks when the change was caused by an entity,\n\t\t// and so it would already be persisted.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\t// It is important to batch here because otherwise,\n\t\t\t// as soon as `setHasControlledInnerBlocks` is called\n\t\t\t// the effect to restore might be triggered\n\t\t\t// before the actual blocks get set properly in state.\n\t\t\tregistry.batch( () => {\n\t\t\t\tsetHasControlledInnerBlocks( clientId, true );\n\t\t\t\tconst storeBlocks = controlledBlocks.map( ( block ) =>\n\t\t\t\t\tcloneBlock( block )\n\t\t\t\t);\n\t\t\t\tif ( subscribed.current ) {\n\t\t\t\t\tpendingChanges.current.incoming = storeBlocks;\n\t\t\t\t}\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\treplaceInnerBlocks( clientId, storeBlocks );\n\t\t\t} );\n\t\t} else {\n\t\t\tif ( subscribed.current ) {\n\t\t\t\tpendingChanges.current.incoming = controlledBlocks;\n\t\t\t}\n\t\t\tresetBlocks( controlledBlocks );\n\t\t}\n\t};\n\n\t// Clean up the changes made by setControlledBlocks() when the component\n\t// containing useBlockSync() unmounts.\n\tconst unsetControlledBlocks = () => {\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\tsetHasControlledInnerBlocks( clientId, false );\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t} else {\n\t\t\tresetBlocks( [] );\n\t\t}\n\t};\n\n\t// Add a subscription to the block-editor registry to detect when changes\n\t// have been made. This lets us inform the data source of changes. This\n\t// is an effect so that the subscriber can run synchronously without\n\t// waiting for React renders for changes.\n\tconst onInputRef = useRef( onInput );\n\tconst onChangeRef = useRef( onChange );\n\tuseEffect( () => {\n\t\tonInputRef.current = onInput;\n\t\tonChangeRef.current = onChange;\n\t}, [ onInput, onChange ] );\n\n\t// Determine if blocks need to be reset when they change.\n\tuseEffect( () => {\n\t\tif ( pendingChanges.current.outgoing.includes( controlledBlocks ) ) {\n\t\t\t// Skip block reset if the value matches expected outbound sync\n\t\t\t// triggered by this component by a preceding change detection.\n\t\t\t// Only skip if the value matches expectation, since a reset should\n\t\t\t// still occur if the value is modified (not equal by reference),\n\t\t\t// to allow that the consumer may apply modifications to reflect\n\t\t\t// back on the editor.\n\t\t\tif (\n\t\t\t\tpendingChanges.current.outgoing[\n\t\t\t\t\tpendingChanges.current.outgoing.length - 1\n\t\t\t\t] === controlledBlocks\n\t\t\t) {\n\t\t\t\tpendingChanges.current.outgoing = [];\n\t\t\t}\n\t\t} else if ( getBlocks( clientId ) !== controlledBlocks ) {\n\t\t\t// Reset changing value in all other cases than the sync described\n\t\t\t// above. Since this can be reached in an update following an out-\n\t\t\t// bound sync, unset the outbound value to avoid considering it in\n\t\t\t// subsequent renders.\n\t\t\tpendingChanges.current.outgoing = [];\n\t\t\tsetControlledBlocks();\n\n\t\t\tif ( controlledSelection ) {\n\t\t\t\tresetSelection(\n\t\t\t\t\tcontrolledSelection.selectionStart,\n\t\t\t\t\tcontrolledSelection.selectionEnd,\n\t\t\t\t\tcontrolledSelection.initialPosition\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [ controlledBlocks, clientId ] );\n\n\tuseEffect( () => {\n\t\tconst {\n\t\t\tgetSelectedBlocksInitialCaretPosition,\n\t\t\tisLastBlockChangePersistent,\n\t\t\t__unstableIsLastBlockChangeIgnored,\n\t\t\tareInnerBlocksControlled,\n\t\t} = registry.select( blockEditorStore );\n\n\t\tlet blocks = getBlocks( clientId );\n\t\tlet isPersistent = isLastBlockChangePersistent();\n\t\tlet previousAreBlocksDifferent = false;\n\n\t\tsubscribed.current = true;\n\t\tconst unsubscribe = registry.subscribe( () => {\n\t\t\t// Sometimes, when changing block lists, lingering subscriptions\n\t\t\t// might trigger before they are cleaned up. If the block for which\n\t\t\t// the subscription runs is no longer in the store, this would clear\n\t\t\t// its parent entity's block list. To avoid this, we bail out if\n\t\t\t// the subscription is triggering for a block (`clientId !== null`)\n\t\t\t// and its block name can't be found because it's not on the list.\n\t\t\t// (`getBlockName( clientId ) === null`).\n\t\t\tif ( clientId !== null && getBlockName( clientId ) === null ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// When RESET_BLOCKS on parent blocks get called, the controlled blocks\n\t\t\t// can reset to uncontrolled, in these situations, it means we need to populate\n\t\t\t// the blocks again from the external blocks (the value property here)\n\t\t\t// and we should stop triggering onChange\n\t\t\tconst isStillControlled =\n\t\t\t\t! clientId || areInnerBlocksControlled( clientId );\n\t\t\tif ( ! isStillControlled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst newIsPersistent = isLastBlockChangePersistent();\n\t\t\tconst newBlocks = getBlocks( clientId );\n\t\t\tconst areBlocksDifferent = newBlocks !== blocks;\n\t\t\tblocks = newBlocks;\n\t\t\tif (\n\t\t\t\tareBlocksDifferent &&\n\t\t\t\t( pendingChanges.current.incoming ||\n\t\t\t\t\t__unstableIsLastBlockChangeIgnored() )\n\t\t\t) {\n\t\t\t\tpendingChanges.current.incoming = null;\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Since we often dispatch an action to mark the previous action as\n\t\t\t// persistent, we need to make sure that the blocks changed on the\n\t\t\t// previous action before committing the change.\n\t\t\tconst didPersistenceChange =\n\t\t\t\tpreviousAreBlocksDifferent &&\n\t\t\t\t! areBlocksDifferent &&\n\t\t\t\tnewIsPersistent &&\n\t\t\t\t! isPersistent;\n\n\t\t\tif ( areBlocksDifferent || didPersistenceChange ) {\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\t// We know that onChange/onInput will update controlledBlocks.\n\t\t\t\t// We need to be aware that it was caused by an outgoing change\n\t\t\t\t// so that we do not treat it as an incoming change later on,\n\t\t\t\t// which would cause a block reset.\n\t\t\t\tpendingChanges.current.outgoing.push( blocks );\n\n\t\t\t\t// Inform the controlling entity that changes have been made to\n\t\t\t\t// the block-editor store they should be aware about.\n\t\t\t\tconst updateParent = isPersistent\n\t\t\t\t\t? onChangeRef.current\n\t\t\t\t\t: onInputRef.current;\n\t\t\t\tconst undoIgnore = undoIgnoreBlocks.has( blocks );\n\t\t\t\tif ( undoIgnore ) {\n\t\t\t\t\tundoIgnoreBlocks.delete( blocks );\n\t\t\t\t}\n\t\t\t\tupdateParent( blocks, {\n\t\t\t\t\tselection: {\n\t\t\t\t\t\tselectionStart: getSelectionStart(),\n\t\t\t\t\t\tselectionEnd: getSelectionEnd(),\n\t\t\t\t\t\tinitialPosition:\n\t\t\t\t\t\t\tgetSelectedBlocksInitialCaretPosition(),\n\t\t\t\t\t},\n\t\t\t\t\tundoIgnore,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tpreviousAreBlocksDifferent = areBlocksDifferent;\n\t\t}, blockEditorStore );\n\n\t\treturn () => {\n\t\t\tsubscribed.current = false;\n\t\t\tunsubscribe();\n\t\t};\n\t}, [ registry, clientId ] );\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\tunsetControlledBlocks();\n\t\t};\n\t}, [] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACtD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,UAAU,QAAQ,mBAAmB;;AAE9C;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,gBAAgB,QAAQ,yBAAyB;AAE1D,MAAMC,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,YAAYA,CAAE;EACrCC,QAAQ,GAAG,IAAI;EACfC,KAAK,EAAEC,gBAAgB;EACvBC,SAAS,EAAEC,mBAAmB;EAC9BC,QAAQ,GAAGP,IAAI;EACfQ,OAAO,GAAGR;AACX,CAAC,EAAG;EACH,MAAMS,QAAQ,GAAGd,WAAW,CAAC,CAAC;EAE9B,MAAM;IACLe,WAAW;IACXC,cAAc;IACdC,kBAAkB;IAClBC,2BAA2B;IAC3BC;EACD,CAAC,GAAGL,QAAQ,CAACM,QAAQ,CAAEjB,gBAAiB,CAAC;EACzC,MAAM;IAAEkB,YAAY;IAAEC,SAAS;IAAEC,iBAAiB;IAAEC;EAAgB,CAAC,GACpEV,QAAQ,CAACW,MAAM,CAAEtB,gBAAiB,CAAC;EAEpC,MAAMuB,cAAc,GAAG3B,MAAM,CAAE;IAAE4B,QAAQ,EAAE,IAAI;IAAEC,QAAQ,EAAE;EAAG,CAAE,CAAC;EACjE,MAAMC,UAAU,GAAG9B,MAAM,CAAE,KAAM,CAAC;EAElC,MAAM+B,mBAAmB,GAAGA,CAAA,KAAM;IACjC,IAAK,CAAErB,gBAAgB,EAAG;MACzB;IACD;;IAEA;IACA;IACA;IACAU,uCAAuC,CAAC,CAAC;IACzC,IAAKZ,QAAQ,EAAG;MACf;MACA;MACA;MACA;MACAO,QAAQ,CAACiB,KAAK,CAAE,MAAM;QACrBb,2BAA2B,CAAEX,QAAQ,EAAE,IAAK,CAAC;QAC7C,MAAMyB,WAAW,GAAGvB,gBAAgB,CAACwB,GAAG,CAAIC,KAAK,IAChDjC,UAAU,CAAEiC,KAAM,CACnB,CAAC;QACD,IAAKL,UAAU,CAACM,OAAO,EAAG;UACzBT,cAAc,CAACS,OAAO,CAACR,QAAQ,GAAGK,WAAW;QAC9C;QACAb,uCAAuC,CAAC,CAAC;QACzCF,kBAAkB,CAAEV,QAAQ,EAAEyB,WAAY,CAAC;MAC5C,CAAE,CAAC;IACJ,CAAC,MAAM;MACN,IAAKH,UAAU,CAACM,OAAO,EAAG;QACzBT,cAAc,CAACS,OAAO,CAACR,QAAQ,GAAGlB,gBAAgB;MACnD;MACAM,WAAW,CAAEN,gBAAiB,CAAC;IAChC;EACD,CAAC;;EAED;EACA;EACA,MAAM2B,qBAAqB,GAAGA,CAAA,KAAM;IACnCjB,uCAAuC,CAAC,CAAC;IACzC,IAAKZ,QAAQ,EAAG;MACfW,2BAA2B,CAAEX,QAAQ,EAAE,KAAM,CAAC;MAC9CY,uCAAuC,CAAC,CAAC;MACzCF,kBAAkB,CAAEV,QAAQ,EAAE,EAAG,CAAC;IACnC,CAAC,MAAM;MACNQ,WAAW,CAAE,EAAG,CAAC;IAClB;EACD,CAAC;;EAED;EACA;EACA;EACA;EACA,MAAMsB,UAAU,GAAGtC,MAAM,CAAEc,OAAQ,CAAC;EACpC,MAAMyB,WAAW,GAAGvC,MAAM,CAAEa,QAAS,CAAC;EACtCd,SAAS,CAAE,MAAM;IAChBuC,UAAU,CAACF,OAAO,GAAGtB,OAAO;IAC5ByB,WAAW,CAACH,OAAO,GAAGvB,QAAQ;EAC/B,CAAC,EAAE,CAAEC,OAAO,EAAED,QAAQ,CAAG,CAAC;;EAE1B;EACAd,SAAS,CAAE,MAAM;IAChB,IAAK4B,cAAc,CAACS,OAAO,CAACP,QAAQ,CAACW,QAAQ,CAAE9B,gBAAiB,CAAC,EAAG;MACnE;MACA;MACA;MACA;MACA;MACA;MACA,IACCiB,cAAc,CAACS,OAAO,CAACP,QAAQ,CAC9BF,cAAc,CAACS,OAAO,CAACP,QAAQ,CAACY,MAAM,GAAG,CAAC,CAC1C,KAAK/B,gBAAgB,EACrB;QACDiB,cAAc,CAACS,OAAO,CAACP,QAAQ,GAAG,EAAE;MACrC;IACD,CAAC,MAAM,IAAKN,SAAS,CAAEf,QAAS,CAAC,KAAKE,gBAAgB,EAAG;MACxD;MACA;MACA;MACA;MACAiB,cAAc,CAACS,OAAO,CAACP,QAAQ,GAAG,EAAE;MACpCE,mBAAmB,CAAC,CAAC;MAErB,IAAKnB,mBAAmB,EAAG;QAC1BK,cAAc,CACbL,mBAAmB,CAAC8B,cAAc,EAClC9B,mBAAmB,CAAC+B,YAAY,EAChC/B,mBAAmB,CAACgC,eACrB,CAAC;MACF;IACD;EACD,CAAC,EAAE,CAAElC,gBAAgB,EAAEF,QAAQ,CAAG,CAAC;EAEnCT,SAAS,CAAE,MAAM;IAChB,MAAM;MACL8C,qCAAqC;MACrCC,2BAA2B;MAC3BC,kCAAkC;MAClCC;IACD,CAAC,GAAGjC,QAAQ,CAACW,MAAM,CAAEtB,gBAAiB,CAAC;IAEvC,IAAI6C,MAAM,GAAG1B,SAAS,CAAEf,QAAS,CAAC;IAClC,IAAI0C,YAAY,GAAGJ,2BAA2B,CAAC,CAAC;IAChD,IAAIK,0BAA0B,GAAG,KAAK;IAEtCrB,UAAU,CAACM,OAAO,GAAG,IAAI;IACzB,MAAMgB,WAAW,GAAGrC,QAAQ,CAACsC,SAAS,CAAE,MAAM;MAC7C;MACA;MACA;MACA;MACA;MACA;MACA;MACA,IAAK7C,QAAQ,KAAK,IAAI,IAAIc,YAAY,CAAEd,QAAS,CAAC,KAAK,IAAI,EAAG;QAC7D;MACD;;MAEA;MACA;MACA;MACA;MACA,MAAM8C,iBAAiB,GACtB,CAAE9C,QAAQ,IAAIwC,wBAAwB,CAAExC,QAAS,CAAC;MACnD,IAAK,CAAE8C,iBAAiB,EAAG;QAC1B;MACD;MAEA,MAAMC,eAAe,GAAGT,2BAA2B,CAAC,CAAC;MACrD,MAAMU,SAAS,GAAGjC,SAAS,CAAEf,QAAS,CAAC;MACvC,MAAMiD,kBAAkB,GAAGD,SAAS,KAAKP,MAAM;MAC/CA,MAAM,GAAGO,SAAS;MAClB,IACCC,kBAAkB,KAChB9B,cAAc,CAACS,OAAO,CAACR,QAAQ,IAChCmB,kCAAkC,CAAC,CAAC,CAAE,EACtC;QACDpB,cAAc,CAACS,OAAO,CAACR,QAAQ,GAAG,IAAI;QACtCsB,YAAY,GAAGK,eAAe;QAC9B;MACD;;MAEA;MACA;MACA;MACA,MAAMG,oBAAoB,GACzBP,0BAA0B,IAC1B,CAAEM,kBAAkB,IACpBF,eAAe,IACf,CAAEL,YAAY;MAEf,IAAKO,kBAAkB,IAAIC,oBAAoB,EAAG;QACjDR,YAAY,GAAGK,eAAe;QAC9B;QACA;QACA;QACA;QACA5B,cAAc,CAACS,OAAO,CAACP,QAAQ,CAAC8B,IAAI,CAAEV,MAAO,CAAC;;QAE9C;QACA;QACA,MAAMW,YAAY,GAAGV,YAAY,GAC9BX,WAAW,CAACH,OAAO,GACnBE,UAAU,CAACF,OAAO;QACrB,MAAMyB,UAAU,GAAGxD,gBAAgB,CAACyD,GAAG,CAAEb,MAAO,CAAC;QACjD,IAAKY,UAAU,EAAG;UACjBxD,gBAAgB,CAAC0D,MAAM,CAAEd,MAAO,CAAC;QAClC;QACAW,YAAY,CAAEX,MAAM,EAAE;UACrBtC,SAAS,EAAE;YACV+B,cAAc,EAAElB,iBAAiB,CAAC,CAAC;YACnCmB,YAAY,EAAElB,eAAe,CAAC,CAAC;YAC/BmB,eAAe,EACdC,qCAAqC,CAAC;UACxC,CAAC;UACDgB;QACD,CAAE,CAAC;MACJ;MACAV,0BAA0B,GAAGM,kBAAkB;IAChD,CAAC,EAAErD,gBAAiB,CAAC;IAErB,OAAO,MAAM;MACZ0B,UAAU,CAACM,OAAO,GAAG,KAAK;MAC1BgB,WAAW,CAAC,CAAC;IACd,CAAC;EACF,CAAC,EAAE,CAAErC,QAAQ,EAAEP,QAAQ,CAAG,CAAC;EAE3BT,SAAS,CAAE,MAAM;IAChB,OAAO,MAAM;MACZsC,qBAAqB,CAAC,CAAC;IACxB,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;AACR","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useRef","useRegistry","useSelect","cloneBlock","store","blockEditorStore","undoIgnoreBlocks","noop","useBlockSync","clientId","value","controlledBlocks","selection","controlledSelection","onChange","onInput","registry","resetBlocks","resetSelection","replaceInnerBlocks","setHasControlledInnerBlocks","__unstableMarkNextChangeAsNotPersistent","dispatch","getBlockName","getBlocks","getSelectionStart","getSelectionEnd","select","isControlled","areInnerBlocksControlled","pendingChanges","incoming","outgoing","subscribed","setControlledBlocks","batch","storeBlocks","map","block","current","unsetControlledBlocks","onInputRef","onChangeRef","includes","length","selectionStart","selectionEnd","initialPosition","isMounted","getSelectedBlocksInitialCaretPosition","isLastBlockChangePersistent","__unstableIsLastBlockChangeIgnored","blocks","isPersistent","previousAreBlocksDifferent","unsubscribe","subscribe","isStillControlled","newIsPersistent","newBlocks","areBlocksDifferent","didPersistenceChange","push","updateParent","undoIgnore","has","delete"],"sources":["@wordpress/block-editor/src/components/provider/use-block-sync.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport { useRegistry, useSelect } from '@wordpress/data';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { undoIgnoreBlocks } from '../../store/undo-ignore';\n\nconst noop = () => {};\n\n/**\n * A function to call when the block value has been updated in the block-editor\n * store.\n *\n * @callback onBlockUpdate\n * @param {Object[]} blocks The updated blocks.\n * @param {Object} options The updated block options, such as selectionStart\n * and selectionEnd.\n */\n\n/**\n * useBlockSync is a side effect which handles bidirectional sync between the\n * block-editor store and a controlling data source which provides blocks. This\n * is most commonly used by the BlockEditorProvider to synchronize the contents\n * of the block-editor store with the root entity, like a post.\n *\n * Another example would be the template part block, which provides blocks from\n * a separate entity data source than a root entity. This hook syncs edits to\n * the template part in the block editor back to the entity and vice-versa.\n *\n * Here are some of its basic functions:\n * - Initalizes the block-editor store for the given clientID to the blocks\n * given via props.\n * - Adds incoming changes (like undo) to the block-editor store.\n * - Adds outgoing changes (like editing content) to the controlling entity,\n * determining if a change should be considered persistent or not.\n * - Handles edge cases and race conditions which occur in those operations.\n * - Ignores changes which happen to other entities (like nested inner block\n * controllers.\n * - Passes selection state from the block-editor store to the controlling entity.\n *\n * @param {Object} props Props for the block sync hook\n * @param {string} props.clientId The client ID of the inner block controller.\n * If none is passed, then it is assumed to be a\n * root controller rather than an inner block\n * controller.\n * @param {Object[]} props.value The control value for the blocks. This value\n * is used to initalize the block-editor store\n * and for resetting the blocks to incoming\n * changes like undo.\n * @param {Object} props.selection The selection state responsible to restore the selection on undo/redo.\n * @param {onBlockUpdate} props.onChange Function to call when a persistent\n * change has been made in the block-editor blocks\n * for the given clientId. For example, after\n * this function is called, an entity is marked\n * dirty because it has changes to save.\n * @param {onBlockUpdate} props.onInput Function to call when a non-persistent\n * change has been made in the block-editor blocks\n * for the given clientId. When this is called,\n * controlling sources do not become dirty.\n */\nexport default function useBlockSync( {\n\tclientId = null,\n\tvalue: controlledBlocks,\n\tselection: controlledSelection,\n\tonChange = noop,\n\tonInput = noop,\n} ) {\n\tconst registry = useRegistry();\n\n\tconst {\n\t\tresetBlocks,\n\t\tresetSelection,\n\t\treplaceInnerBlocks,\n\t\tsetHasControlledInnerBlocks,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = registry.dispatch( blockEditorStore );\n\tconst { getBlockName, getBlocks, getSelectionStart, getSelectionEnd } =\n\t\tregistry.select( blockEditorStore );\n\tconst isControlled = useSelect(\n\t\t( select ) => {\n\t\t\treturn (\n\t\t\t\t! clientId ||\n\t\t\t\tselect( blockEditorStore ).areInnerBlocksControlled( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst pendingChanges = useRef( { incoming: null, outgoing: [] } );\n\tconst subscribed = useRef( false );\n\n\tconst setControlledBlocks = () => {\n\t\tif ( ! controlledBlocks ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't need to persist this change because we only replace\n\t\t// controlled inner blocks when the change was caused by an entity,\n\t\t// and so it would already be persisted.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\t// It is important to batch here because otherwise,\n\t\t\t// as soon as `setHasControlledInnerBlocks` is called\n\t\t\t// the effect to restore might be triggered\n\t\t\t// before the actual blocks get set properly in state.\n\t\t\tregistry.batch( () => {\n\t\t\t\tsetHasControlledInnerBlocks( clientId, true );\n\t\t\t\tconst storeBlocks = controlledBlocks.map( ( block ) =>\n\t\t\t\t\tcloneBlock( block )\n\t\t\t\t);\n\t\t\t\tif ( subscribed.current ) {\n\t\t\t\t\tpendingChanges.current.incoming = storeBlocks;\n\t\t\t\t}\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\treplaceInnerBlocks( clientId, storeBlocks );\n\t\t\t} );\n\t\t} else {\n\t\t\tif ( subscribed.current ) {\n\t\t\t\tpendingChanges.current.incoming = controlledBlocks;\n\t\t\t}\n\t\t\tresetBlocks( controlledBlocks );\n\t\t}\n\t};\n\n\t// Clean up the changes made by setControlledBlocks() when the component\n\t// containing useBlockSync() unmounts.\n\tconst unsetControlledBlocks = () => {\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\tsetHasControlledInnerBlocks( clientId, false );\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t} else {\n\t\t\tresetBlocks( [] );\n\t\t}\n\t};\n\n\t// Add a subscription to the block-editor registry to detect when changes\n\t// have been made. This lets us inform the data source of changes. This\n\t// is an effect so that the subscriber can run synchronously without\n\t// waiting for React renders for changes.\n\tconst onInputRef = useRef( onInput );\n\tconst onChangeRef = useRef( onChange );\n\tuseEffect( () => {\n\t\tonInputRef.current = onInput;\n\t\tonChangeRef.current = onChange;\n\t}, [ onInput, onChange ] );\n\n\t// Determine if blocks need to be reset when they change.\n\tuseEffect( () => {\n\t\tif ( pendingChanges.current.outgoing.includes( controlledBlocks ) ) {\n\t\t\t// Skip block reset if the value matches expected outbound sync\n\t\t\t// triggered by this component by a preceding change detection.\n\t\t\t// Only skip if the value matches expectation, since a reset should\n\t\t\t// still occur if the value is modified (not equal by reference),\n\t\t\t// to allow that the consumer may apply modifications to reflect\n\t\t\t// back on the editor.\n\t\t\tif (\n\t\t\t\tpendingChanges.current.outgoing[\n\t\t\t\t\tpendingChanges.current.outgoing.length - 1\n\t\t\t\t] === controlledBlocks\n\t\t\t) {\n\t\t\t\tpendingChanges.current.outgoing = [];\n\t\t\t}\n\t\t} else if ( getBlocks( clientId ) !== controlledBlocks ) {\n\t\t\t// Reset changing value in all other cases than the sync described\n\t\t\t// above. Since this can be reached in an update following an out-\n\t\t\t// bound sync, unset the outbound value to avoid considering it in\n\t\t\t// subsequent renders.\n\t\t\tpendingChanges.current.outgoing = [];\n\t\t\tsetControlledBlocks();\n\n\t\t\tif ( controlledSelection ) {\n\t\t\t\tresetSelection(\n\t\t\t\t\tcontrolledSelection.selectionStart,\n\t\t\t\t\tcontrolledSelection.selectionEnd,\n\t\t\t\t\tcontrolledSelection.initialPosition\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [ controlledBlocks, clientId ] );\n\n\tconst isMounted = useRef( false );\n\n\tuseEffect( () => {\n\t\t// On mount, controlled blocks are already set in the effect above.\n\t\tif ( ! isMounted.current ) {\n\t\t\tisMounted.current = true;\n\t\t\treturn;\n\t\t}\n\n\t\t// When the block becomes uncontrolled, it means its inner state has been reset\n\t\t// we need to take the blocks again from the external value property.\n\t\tif ( ! isControlled ) {\n\t\t\tpendingChanges.current.outgoing = [];\n\t\t\tsetControlledBlocks();\n\t\t}\n\t}, [ isControlled ] );\n\n\tuseEffect( () => {\n\t\tconst {\n\t\t\tgetSelectedBlocksInitialCaretPosition,\n\t\t\tisLastBlockChangePersistent,\n\t\t\t__unstableIsLastBlockChangeIgnored,\n\t\t\tareInnerBlocksControlled,\n\t\t} = registry.select( blockEditorStore );\n\n\t\tlet blocks = getBlocks( clientId );\n\t\tlet isPersistent = isLastBlockChangePersistent();\n\t\tlet previousAreBlocksDifferent = false;\n\n\t\tsubscribed.current = true;\n\t\tconst unsubscribe = registry.subscribe( () => {\n\t\t\t// Sometimes, when changing block lists, lingering subscriptions\n\t\t\t// might trigger before they are cleaned up. If the block for which\n\t\t\t// the subscription runs is no longer in the store, this would clear\n\t\t\t// its parent entity's block list. To avoid this, we bail out if\n\t\t\t// the subscription is triggering for a block (`clientId !== null`)\n\t\t\t// and its block name can't be found because it's not on the list.\n\t\t\t// (`getBlockName( clientId ) === null`).\n\t\t\tif ( clientId !== null && getBlockName( clientId ) === null ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// When RESET_BLOCKS on parent blocks get called, the controlled blocks\n\t\t\t// can reset to uncontrolled, in these situations, it means we need to populate\n\t\t\t// the blocks again from the external blocks (the value property here)\n\t\t\t// and we should stop triggering onChange\n\t\t\tconst isStillControlled =\n\t\t\t\t! clientId || areInnerBlocksControlled( clientId );\n\t\t\tif ( ! isStillControlled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst newIsPersistent = isLastBlockChangePersistent();\n\t\t\tconst newBlocks = getBlocks( clientId );\n\t\t\tconst areBlocksDifferent = newBlocks !== blocks;\n\t\t\tblocks = newBlocks;\n\t\t\tif (\n\t\t\t\tareBlocksDifferent &&\n\t\t\t\t( pendingChanges.current.incoming ||\n\t\t\t\t\t__unstableIsLastBlockChangeIgnored() )\n\t\t\t) {\n\t\t\t\tpendingChanges.current.incoming = null;\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Since we often dispatch an action to mark the previous action as\n\t\t\t// persistent, we need to make sure that the blocks changed on the\n\t\t\t// previous action before committing the change.\n\t\t\tconst didPersistenceChange =\n\t\t\t\tpreviousAreBlocksDifferent &&\n\t\t\t\t! areBlocksDifferent &&\n\t\t\t\tnewIsPersistent &&\n\t\t\t\t! isPersistent;\n\n\t\t\tif ( areBlocksDifferent || didPersistenceChange ) {\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\t// We know that onChange/onInput will update controlledBlocks.\n\t\t\t\t// We need to be aware that it was caused by an outgoing change\n\t\t\t\t// so that we do not treat it as an incoming change later on,\n\t\t\t\t// which would cause a block reset.\n\t\t\t\tpendingChanges.current.outgoing.push( blocks );\n\n\t\t\t\t// Inform the controlling entity that changes have been made to\n\t\t\t\t// the block-editor store they should be aware about.\n\t\t\t\tconst updateParent = isPersistent\n\t\t\t\t\t? onChangeRef.current\n\t\t\t\t\t: onInputRef.current;\n\t\t\t\tconst undoIgnore = undoIgnoreBlocks.has( blocks );\n\t\t\t\tif ( undoIgnore ) {\n\t\t\t\t\tundoIgnoreBlocks.delete( blocks );\n\t\t\t\t}\n\t\t\t\tupdateParent( blocks, {\n\t\t\t\t\tselection: {\n\t\t\t\t\t\tselectionStart: getSelectionStart(),\n\t\t\t\t\t\tselectionEnd: getSelectionEnd(),\n\t\t\t\t\t\tinitialPosition:\n\t\t\t\t\t\t\tgetSelectedBlocksInitialCaretPosition(),\n\t\t\t\t\t},\n\t\t\t\t\tundoIgnore,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tpreviousAreBlocksDifferent = areBlocksDifferent;\n\t\t}, blockEditorStore );\n\n\t\treturn () => {\n\t\t\tsubscribed.current = false;\n\t\t\tunsubscribe();\n\t\t};\n\t}, [ registry, clientId ] );\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\tunsetControlledBlocks();\n\t\t};\n\t}, [] );\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,8 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
5
- import { useState, useEffect } from '@wordpress/element';
6
- import { withRegistry, createRegistry, RegistryProvider } from '@wordpress/data';
4
+ import { useState } from '@wordpress/element';
5
+ import { useRegistry, createRegistry, RegistryProvider } from '@wordpress/data';
7
6
  import { createHigherOrderComponent } from '@wordpress/compose';
8
7
 
9
8
  /**
@@ -11,33 +10,38 @@ import { createHigherOrderComponent } from '@wordpress/compose';
11
10
  */
12
11
  import { storeConfig } from '../../store';
13
12
  import { STORE_NAME as blockEditorStoreName } from '../../store/constants';
14
- const withRegistryProvider = createHigherOrderComponent(WrappedComponent => {
15
- return withRegistry(({
16
- useSubRegistry = true,
17
- registry,
18
- ...props
19
- }) => {
20
- if (!useSubRegistry) {
21
- return createElement(WrappedComponent, {
22
- registry: registry,
23
- ...props
24
- });
25
- }
26
- const [subRegistry, setSubRegistry] = useState(null);
27
- useEffect(() => {
28
- const newRegistry = createRegistry({}, registry);
29
- newRegistry.registerStore(blockEditorStoreName, storeConfig);
30
- setSubRegistry(newRegistry);
31
- }, [registry]);
32
- if (!subRegistry) {
33
- return null;
34
- }
35
- return createElement(RegistryProvider, {
36
- value: subRegistry
37
- }, createElement(WrappedComponent, {
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ function getSubRegistry(subRegistries, registry, useSubRegistry) {
15
+ if (!useSubRegistry) {
16
+ return registry;
17
+ }
18
+ let subRegistry = subRegistries.get(registry);
19
+ if (!subRegistry) {
20
+ subRegistry = createRegistry({}, registry);
21
+ subRegistry.registerStore(blockEditorStoreName, storeConfig);
22
+ subRegistries.set(registry, subRegistry);
23
+ }
24
+ return subRegistry;
25
+ }
26
+ const withRegistryProvider = createHigherOrderComponent(WrappedComponent => ({
27
+ useSubRegistry = true,
28
+ ...props
29
+ }) => {
30
+ const registry = useRegistry();
31
+ const [subRegistries] = useState(() => new WeakMap());
32
+ const subRegistry = getSubRegistry(subRegistries, registry, useSubRegistry);
33
+ if (subRegistry === registry) {
34
+ return /*#__PURE__*/_jsx(WrappedComponent, {
35
+ registry: registry,
36
+ ...props
37
+ });
38
+ }
39
+ return /*#__PURE__*/_jsx(RegistryProvider, {
40
+ value: subRegistry,
41
+ children: /*#__PURE__*/_jsx(WrappedComponent, {
38
42
  registry: subRegistry,
39
43
  ...props
40
- }));
44
+ })
41
45
  });
42
46
  }, 'withRegistryProvider');
43
47
  export default withRegistryProvider;
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useEffect","withRegistry","createRegistry","RegistryProvider","createHigherOrderComponent","storeConfig","STORE_NAME","blockEditorStoreName","withRegistryProvider","WrappedComponent","useSubRegistry","registry","props","createElement","subRegistry","setSubRegistry","newRegistry","registerStore","value"],"sources":["@wordpress/block-editor/src/components/provider/with-registry-provider.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useEffect } from '@wordpress/element';\nimport {\n\twithRegistry,\n\tcreateRegistry,\n\tRegistryProvider,\n} from '@wordpress/data';\nimport { createHigherOrderComponent } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { storeConfig } from '../../store';\nimport { STORE_NAME as blockEditorStoreName } from '../../store/constants';\n\nconst withRegistryProvider = createHigherOrderComponent(\n\t( WrappedComponent ) => {\n\t\treturn withRegistry(\n\t\t\t( { useSubRegistry = true, registry, ...props } ) => {\n\t\t\t\tif ( ! useSubRegistry ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<WrappedComponent registry={ registry } { ...props } />\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tconst [ subRegistry, setSubRegistry ] = useState( null );\n\t\t\t\tuseEffect( () => {\n\t\t\t\t\tconst newRegistry = createRegistry( {}, registry );\n\t\t\t\t\tnewRegistry.registerStore(\n\t\t\t\t\t\tblockEditorStoreName,\n\t\t\t\t\t\tstoreConfig\n\t\t\t\t\t);\n\t\t\t\t\tsetSubRegistry( newRegistry );\n\t\t\t\t}, [ registry ] );\n\n\t\t\t\tif ( ! subRegistry ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<RegistryProvider value={ subRegistry }>\n\t\t\t\t\t\t<WrappedComponent\n\t\t\t\t\t\t\tregistry={ subRegistry }\n\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</RegistryProvider>\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t},\n\t'withRegistryProvider'\n);\n\nexport default withRegistryProvider;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,EAAEC,SAAS,QAAQ,oBAAoB;AACxD,SACCC,YAAY,EACZC,cAAc,EACdC,gBAAgB,QACV,iBAAiB;AACxB,SAASC,0BAA0B,QAAQ,oBAAoB;;AAE/D;AACA;AACA;AACA,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,UAAU,IAAIC,oBAAoB,QAAQ,uBAAuB;AAE1E,MAAMC,oBAAoB,GAAGJ,0BAA0B,CACpDK,gBAAgB,IAAM;EACvB,OAAOR,YAAY,CAClB,CAAE;IAAES,cAAc,GAAG,IAAI;IAAEC,QAAQ;IAAE,GAAGC;EAAM,CAAC,KAAM;IACpD,IAAK,CAAEF,cAAc,EAAG;MACvB,OACCG,aAAA,CAACJ,gBAAgB;QAACE,QAAQ,EAAGA,QAAU;QAAA,GAAMC;MAAK,CAAI,CAAC;IAEzD;IAEA,MAAM,CAAEE,WAAW,EAAEC,cAAc,CAAE,GAAGhB,QAAQ,CAAE,IAAK,CAAC;IACxDC,SAAS,CAAE,MAAM;MAChB,MAAMgB,WAAW,GAAGd,cAAc,CAAE,CAAC,CAAC,EAAES,QAAS,CAAC;MAClDK,WAAW,CAACC,aAAa,CACxBV,oBAAoB,EACpBF,WACD,CAAC;MACDU,cAAc,CAAEC,WAAY,CAAC;IAC9B,CAAC,EAAE,CAAEL,QAAQ,CAAG,CAAC;IAEjB,IAAK,CAAEG,WAAW,EAAG;MACpB,OAAO,IAAI;IACZ;IAEA,OACCD,aAAA,CAACV,gBAAgB;MAACe,KAAK,EAAGJ;IAAa,GACtCD,aAAA,CAACJ,gBAAgB;MAChBE,QAAQ,EAAGG,WAAa;MAAA,GACnBF;IAAK,CACV,CACgB,CAAC;EAErB,CACD,CAAC;AACF,CAAC,EACD,sBACD,CAAC;AAED,eAAeJ,oBAAoB","ignoreList":[]}
1
+ {"version":3,"names":["useState","useRegistry","createRegistry","RegistryProvider","createHigherOrderComponent","storeConfig","STORE_NAME","blockEditorStoreName","jsx","_jsx","getSubRegistry","subRegistries","registry","useSubRegistry","subRegistry","get","registerStore","set","withRegistryProvider","WrappedComponent","props","WeakMap","value","children"],"sources":["@wordpress/block-editor/src/components/provider/with-registry-provider.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { useRegistry, createRegistry, RegistryProvider } from '@wordpress/data';\nimport { createHigherOrderComponent } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { storeConfig } from '../../store';\nimport { STORE_NAME as blockEditorStoreName } from '../../store/constants';\n\nfunction getSubRegistry( subRegistries, registry, useSubRegistry ) {\n\tif ( ! useSubRegistry ) {\n\t\treturn registry;\n\t}\n\tlet subRegistry = subRegistries.get( registry );\n\tif ( ! subRegistry ) {\n\t\tsubRegistry = createRegistry( {}, registry );\n\t\tsubRegistry.registerStore( blockEditorStoreName, storeConfig );\n\t\tsubRegistries.set( registry, subRegistry );\n\t}\n\treturn subRegistry;\n}\n\nconst withRegistryProvider = createHigherOrderComponent(\n\t( WrappedComponent ) =>\n\t\t( { useSubRegistry = true, ...props } ) => {\n\t\t\tconst registry = useRegistry();\n\t\t\tconst [ subRegistries ] = useState( () => new WeakMap() );\n\t\t\tconst subRegistry = getSubRegistry(\n\t\t\t\tsubRegistries,\n\t\t\t\tregistry,\n\t\t\t\tuseSubRegistry\n\t\t\t);\n\n\t\t\tif ( subRegistry === registry ) {\n\t\t\t\treturn <WrappedComponent registry={ registry } { ...props } />;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<RegistryProvider value={ subRegistry }>\n\t\t\t\t\t<WrappedComponent registry={ subRegistry } { ...props } />\n\t\t\t\t</RegistryProvider>\n\t\t\t);\n\t\t},\n\t'withRegistryProvider'\n);\n\nexport default withRegistryProvider;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,WAAW,EAAEC,cAAc,EAAEC,gBAAgB,QAAQ,iBAAiB;AAC/E,SAASC,0BAA0B,QAAQ,oBAAoB;;AAE/D;AACA;AACA;AACA,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,UAAU,IAAIC,oBAAoB,QAAQ,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3E,SAASC,cAAcA,CAAEC,aAAa,EAAEC,QAAQ,EAAEC,cAAc,EAAG;EAClE,IAAK,CAAEA,cAAc,EAAG;IACvB,OAAOD,QAAQ;EAChB;EACA,IAAIE,WAAW,GAAGH,aAAa,CAACI,GAAG,CAAEH,QAAS,CAAC;EAC/C,IAAK,CAAEE,WAAW,EAAG;IACpBA,WAAW,GAAGZ,cAAc,CAAE,CAAC,CAAC,EAAEU,QAAS,CAAC;IAC5CE,WAAW,CAACE,aAAa,CAAET,oBAAoB,EAAEF,WAAY,CAAC;IAC9DM,aAAa,CAACM,GAAG,CAAEL,QAAQ,EAAEE,WAAY,CAAC;EAC3C;EACA,OAAOA,WAAW;AACnB;AAEA,MAAMI,oBAAoB,GAAGd,0BAA0B,CACpDe,gBAAgB,IACjB,CAAE;EAAEN,cAAc,GAAG,IAAI;EAAE,GAAGO;AAAM,CAAC,KAAM;EAC1C,MAAMR,QAAQ,GAAGX,WAAW,CAAC,CAAC;EAC9B,MAAM,CAAEU,aAAa,CAAE,GAAGX,QAAQ,CAAE,MAAM,IAAIqB,OAAO,CAAC,CAAE,CAAC;EACzD,MAAMP,WAAW,GAAGJ,cAAc,CACjCC,aAAa,EACbC,QAAQ,EACRC,cACD,CAAC;EAED,IAAKC,WAAW,KAAKF,QAAQ,EAAG;IAC/B,oBAAOH,IAAA,CAACU,gBAAgB;MAACP,QAAQ,EAAGA,QAAU;MAAA,GAAMQ;IAAK,CAAI,CAAC;EAC/D;EAEA,oBACCX,IAAA,CAACN,gBAAgB;IAACmB,KAAK,EAAGR,WAAa;IAAAS,QAAA,eACtCd,IAAA,CAACU,gBAAgB;MAACP,QAAQ,EAAGE,WAAa;MAAA,GAAMM;IAAK,CAAI;EAAC,CACzC,CAAC;AAErB,CAAC,EACF,sBACD,CAAC;AAED,eAAeF,oBAAoB","ignoreList":[]}