@wordpress/block-editor 10.2.0 → 10.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +41 -0
  3. package/build/components/block-draggable/draggable-chip.js +4 -2
  4. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  5. package/build/components/block-inspector/index.js +4 -4
  6. package/build/components/block-inspector/index.js.map +1 -1
  7. package/build/components/block-list/block-list-compact.native.js +1 -0
  8. package/build/components/block-list/block-list-compact.native.js.map +1 -1
  9. package/build/components/block-list/block.js +72 -14
  10. package/build/components/block-list/block.js.map +1 -1
  11. package/build/components/block-list/block.native.js +79 -12
  12. package/build/components/block-list/block.native.js.map +1 -1
  13. package/build/components/block-list/use-in-between-inserter.js +7 -23
  14. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  15. package/build/components/block-lock/modal.js +9 -6
  16. package/build/components/block-lock/modal.js.map +1 -1
  17. package/build/components/block-parent-selector/index.js +3 -3
  18. package/build/components/block-parent-selector/index.js.map +1 -1
  19. package/build/components/block-patterns-list/index.js +5 -4
  20. package/build/components/block-patterns-list/index.js.map +1 -1
  21. package/build/components/block-popover/drop-zone.js +85 -0
  22. package/build/components/block-popover/drop-zone.js.map +1 -0
  23. package/build/components/block-popover/index.js +2 -1
  24. package/build/components/block-popover/index.js.map +1 -1
  25. package/build/components/block-preview/auto.js +2 -2
  26. package/build/components/block-preview/auto.js.map +1 -1
  27. package/build/components/block-preview/index.js +6 -9
  28. package/build/components/block-preview/index.js.map +1 -1
  29. package/build/components/block-preview/live.js +3 -7
  30. package/build/components/block-preview/live.js.map +1 -1
  31. package/build/components/block-selection-clearer/index.js +9 -1
  32. package/build/components/block-selection-clearer/index.js.map +1 -1
  33. package/build/components/block-settings-menu/block-settings-dropdown.js +17 -11
  34. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  35. package/build/components/block-styles/index.js +18 -42
  36. package/build/components/block-styles/index.js.map +1 -1
  37. package/build/components/block-toolbar/index.js +4 -4
  38. package/build/components/block-toolbar/index.js.map +1 -1
  39. package/build/components/block-tools/back-compat.js +2 -1
  40. package/build/components/block-tools/back-compat.js.map +1 -1
  41. package/build/components/block-tools/insertion-point.js +50 -20
  42. package/build/components/block-tools/insertion-point.js.map +1 -1
  43. package/build/components/block-tools/selected-block-popover.js +15 -3
  44. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  45. package/build/components/colors-gradients/control.js +1 -1
  46. package/build/components/colors-gradients/control.js.map +1 -1
  47. package/build/components/colors-gradients/panel-color-gradient-settings.js +2 -2
  48. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  49. package/build/components/font-sizes/fluid-utils.js +256 -0
  50. package/build/components/font-sizes/fluid-utils.js.map +1 -0
  51. package/build/components/font-sizes/index.js +8 -0
  52. package/build/components/font-sizes/index.js.map +1 -1
  53. package/build/components/index.js +0 -9
  54. package/build/components/index.js.map +1 -1
  55. package/build/components/inner-blocks/use-inner-block-template-sync.js +3 -2
  56. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  57. package/build/components/inserter/block-patterns-tab.js +151 -78
  58. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  59. package/build/components/inserter/menu.js +14 -3
  60. package/build/components/inserter/menu.js.map +1 -1
  61. package/build/components/inserter-draggable-blocks/index.js +4 -2
  62. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  63. package/build/components/list-view/use-list-view-drop-zone.js +1 -14
  64. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  65. package/build/components/preview-options/index.js +2 -3
  66. package/build/components/preview-options/index.js.map +1 -1
  67. package/build/components/spacing-sizes-control/spacing-input-control.js +35 -5
  68. package/build/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  69. package/build/components/use-block-drop-zone/index.js +98 -57
  70. package/build/components/use-block-drop-zone/index.js.map +1 -1
  71. package/build/components/use-on-block-drop/index.js +12 -12
  72. package/build/components/use-on-block-drop/index.js.map +1 -1
  73. package/build/components/use-on-block-drop/types.js +6 -0
  74. package/build/components/use-on-block-drop/types.js.map +1 -0
  75. package/build/hooks/align.js +1 -3
  76. package/build/hooks/align.js.map +1 -1
  77. package/build/hooks/align.native.js +1 -7
  78. package/build/hooks/align.native.js.map +1 -1
  79. package/build/hooks/font-size.js +60 -0
  80. package/build/hooks/font-size.js.map +1 -1
  81. package/build/hooks/margin.js +6 -5
  82. package/build/hooks/margin.js.map +1 -1
  83. package/build/hooks/padding.js +2 -1
  84. package/build/hooks/padding.js.map +1 -1
  85. package/build/hooks/style.js +126 -4
  86. package/build/hooks/style.js.map +1 -1
  87. package/build/hooks/use-typography-props.js +17 -3
  88. package/build/hooks/use-typography-props.js.map +1 -1
  89. package/build/hooks/utils.js +1 -1
  90. package/build/hooks/utils.js.map +1 -1
  91. package/build/store/actions.js +59 -45
  92. package/build/store/actions.js.map +1 -1
  93. package/build/store/defaults.js +3 -0
  94. package/build/store/defaults.js.map +1 -1
  95. package/build/store/reducer.js +31 -15
  96. package/build/store/reducer.js.map +1 -1
  97. package/build/utils/math.js +14 -0
  98. package/build/utils/math.js.map +1 -1
  99. package/build/utils/pre-parse-patterns.js +19 -2
  100. package/build/utils/pre-parse-patterns.js.map +1 -1
  101. package/build-module/components/block-draggable/draggable-chip.js +7 -3
  102. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  103. package/build-module/components/block-inspector/index.js +4 -4
  104. package/build-module/components/block-inspector/index.js.map +1 -1
  105. package/build-module/components/block-list/block-list-compact.native.js +1 -0
  106. package/build-module/components/block-list/block-list-compact.native.js.map +1 -1
  107. package/build-module/components/block-list/block.js +72 -14
  108. package/build-module/components/block-list/block.js.map +1 -1
  109. package/build-module/components/block-list/block.native.js +80 -13
  110. package/build-module/components/block-list/block.native.js.map +1 -1
  111. package/build-module/components/block-list/use-in-between-inserter.js +8 -24
  112. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  113. package/build-module/components/block-lock/modal.js +10 -8
  114. package/build-module/components/block-lock/modal.js.map +1 -1
  115. package/build-module/components/block-parent-selector/index.js +3 -3
  116. package/build-module/components/block-parent-selector/index.js.map +1 -1
  117. package/build-module/components/block-patterns-list/index.js +5 -4
  118. package/build-module/components/block-patterns-list/index.js.map +1 -1
  119. package/build-module/components/block-popover/drop-zone.js +70 -0
  120. package/build-module/components/block-popover/drop-zone.js.map +1 -0
  121. package/build-module/components/block-popover/index.js +2 -1
  122. package/build-module/components/block-popover/index.js.map +1 -1
  123. package/build-module/components/block-preview/auto.js +1 -1
  124. package/build-module/components/block-preview/auto.js.map +1 -1
  125. package/build-module/components/block-preview/index.js +6 -9
  126. package/build-module/components/block-preview/index.js.map +1 -1
  127. package/build-module/components/block-preview/live.js +3 -6
  128. package/build-module/components/block-preview/live.js.map +1 -1
  129. package/build-module/components/block-selection-clearer/index.js +9 -1
  130. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  131. package/build-module/components/block-settings-menu/block-settings-dropdown.js +18 -12
  132. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  133. package/build-module/components/block-styles/index.js +19 -44
  134. package/build-module/components/block-styles/index.js.map +1 -1
  135. package/build-module/components/block-toolbar/index.js +4 -4
  136. package/build-module/components/block-toolbar/index.js.map +1 -1
  137. package/build-module/components/block-tools/back-compat.js +2 -1
  138. package/build-module/components/block-tools/back-compat.js.map +1 -1
  139. package/build-module/components/block-tools/insertion-point.js +48 -20
  140. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  141. package/build-module/components/block-tools/selected-block-popover.js +15 -3
  142. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  143. package/build-module/components/colors-gradients/control.js +2 -2
  144. package/build-module/components/colors-gradients/control.js.map +1 -1
  145. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +3 -3
  146. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  147. package/build-module/components/font-sizes/fluid-utils.js +245 -0
  148. package/build-module/components/font-sizes/fluid-utils.js.map +1 -0
  149. package/build-module/components/font-sizes/index.js +1 -0
  150. package/build-module/components/font-sizes/index.js.map +1 -1
  151. package/build-module/components/index.js +0 -1
  152. package/build-module/components/index.js.map +1 -1
  153. package/build-module/components/inner-blocks/use-inner-block-template-sync.js +3 -2
  154. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  155. package/build-module/components/inserter/block-patterns-tab.js +148 -81
  156. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  157. package/build-module/components/inserter/menu.js +10 -3
  158. package/build-module/components/inserter/menu.js.map +1 -1
  159. package/build-module/components/inserter-draggable-blocks/index.js +4 -2
  160. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  161. package/build-module/components/list-view/use-list-view-drop-zone.js +1 -14
  162. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  163. package/build-module/components/preview-options/index.js +2 -3
  164. package/build-module/components/preview-options/index.js.map +1 -1
  165. package/build-module/components/spacing-sizes-control/spacing-input-control.js +34 -5
  166. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  167. package/build-module/components/use-block-drop-zone/index.js +98 -58
  168. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  169. package/build-module/components/use-on-block-drop/index.js +12 -12
  170. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  171. package/build-module/components/use-on-block-drop/types.js +2 -0
  172. package/build-module/components/use-on-block-drop/types.js.map +1 -0
  173. package/build-module/hooks/align.js +1 -2
  174. package/build-module/hooks/align.js.map +1 -1
  175. package/build-module/hooks/align.native.js +1 -6
  176. package/build-module/hooks/align.native.js.map +1 -1
  177. package/build-module/hooks/font-size.js +59 -1
  178. package/build-module/hooks/font-size.js.map +1 -1
  179. package/build-module/hooks/margin.js +6 -5
  180. package/build-module/hooks/margin.js.map +1 -1
  181. package/build-module/hooks/padding.js +2 -1
  182. package/build-module/hooks/padding.js.map +1 -1
  183. package/build-module/hooks/style.js +124 -3
  184. package/build-module/hooks/style.js.map +1 -1
  185. package/build-module/hooks/use-typography-props.js +17 -4
  186. package/build-module/hooks/use-typography-props.js.map +1 -1
  187. package/build-module/hooks/utils.js +2 -2
  188. package/build-module/hooks/utils.js.map +1 -1
  189. package/build-module/store/actions.js +55 -42
  190. package/build-module/store/actions.js.map +1 -1
  191. package/build-module/store/defaults.js +3 -0
  192. package/build-module/store/defaults.js.map +1 -1
  193. package/build-module/store/reducer.js +32 -16
  194. package/build-module/store/reducer.js.map +1 -1
  195. package/build-module/utils/math.js +12 -0
  196. package/build-module/utils/math.js.map +1 -1
  197. package/build-module/utils/pre-parse-patterns.js +19 -2
  198. package/build-module/utils/pre-parse-patterns.js.map +1 -1
  199. package/build-style/style-rtl.css +243 -144
  200. package/build-style/style.css +243 -144
  201. package/package.json +28 -28
  202. package/src/components/block-breadcrumb/test/index.js +1 -1
  203. package/src/components/block-draggable/draggable-chip.js +4 -2
  204. package/src/components/block-inspector/index.js +8 -7
  205. package/src/components/block-list/block-list-compact.native.js +1 -0
  206. package/src/components/block-list/block.js +111 -7
  207. package/src/components/block-list/block.native.js +123 -9
  208. package/src/components/block-list/style.scss +93 -126
  209. package/src/components/block-list/use-in-between-inserter.js +8 -19
  210. package/src/components/block-lock/modal.js +12 -7
  211. package/src/components/block-mover/style.scss +0 -1
  212. package/src/components/block-parent-selector/index.js +3 -3
  213. package/src/components/block-patterns-list/index.js +9 -5
  214. package/src/components/block-patterns-list/style.scss +7 -3
  215. package/src/components/block-popover/README.md +8 -0
  216. package/src/components/block-popover/drop-zone.js +63 -0
  217. package/src/components/block-popover/index.js +2 -1
  218. package/src/components/block-popover/style.scss +17 -1
  219. package/src/components/block-preview/auto.js +1 -1
  220. package/src/components/block-preview/index.js +7 -8
  221. package/src/components/block-preview/live.js +2 -7
  222. package/src/components/block-preview/test/index.js +1 -7
  223. package/src/components/block-selection-clearer/index.js +7 -2
  224. package/src/components/block-selection-clearer/test/index.js +118 -0
  225. package/src/components/block-settings-menu/block-settings-dropdown.js +25 -11
  226. package/src/components/block-settings-menu/test/block-mode-toggle.js +17 -17
  227. package/src/components/block-styles/index.js +26 -49
  228. package/src/components/block-switcher/test/index.js +2 -2
  229. package/src/components/block-toolbar/index.js +4 -6
  230. package/src/components/block-toolbar/style.scss +38 -14
  231. package/src/components/block-tools/back-compat.js +1 -0
  232. package/src/components/block-tools/insertion-point.js +42 -17
  233. package/src/components/block-tools/selected-block-popover.js +14 -1
  234. package/src/components/button-block-appender/style.scss +4 -2
  235. package/src/components/color-palette/test/__snapshots__/control.js.snap +32 -52
  236. package/src/components/color-palette/test/control.js +11 -15
  237. package/src/components/colors-gradients/control.js +2 -2
  238. package/src/components/colors-gradients/panel-color-gradient-settings.js +3 -4
  239. package/src/components/colors-gradients/test/control.js +49 -77
  240. package/src/components/font-sizes/fluid-utils.js +296 -0
  241. package/src/components/font-sizes/index.js +1 -0
  242. package/src/components/font-sizes/test/fluid-utils.js +168 -0
  243. package/src/components/image-size-control/test/index.js +47 -60
  244. package/src/components/index.js +0 -1
  245. package/src/components/inner-blocks/use-inner-block-template-sync.js +3 -2
  246. package/src/components/inserter/block-patterns-tab.js +232 -98
  247. package/src/components/inserter/menu.js +15 -2
  248. package/src/components/inserter/style.scss +94 -9
  249. package/src/components/inserter/test/reusable-blocks-tab.js +6 -6
  250. package/src/components/inserter-draggable-blocks/index.js +12 -2
  251. package/src/components/inserter-list-item/style.scss +20 -1
  252. package/src/components/link-control/test/index.js +1 -1
  253. package/src/components/list-view/use-list-view-drop-zone.js +4 -18
  254. package/src/components/panel-color-settings/test/index.js +4 -4
  255. package/src/components/preview-options/index.js +2 -2
  256. package/src/components/preview-options/style.scss +1 -1
  257. package/src/components/provider/test/use-block-sync.js +131 -165
  258. package/src/components/responsive-block-control/test/index.js +4 -4
  259. package/src/components/spacing-sizes-control/spacing-input-control.js +16 -2
  260. package/src/components/spacing-sizes-control/style.scss +26 -19
  261. package/src/components/use-block-drop-zone/index.js +136 -79
  262. package/src/components/use-block-drop-zone/test/index.js +333 -81
  263. package/src/components/use-on-block-drop/index.js +11 -12
  264. package/src/components/use-on-block-drop/types.ts +1 -0
  265. package/src/hooks/align.js +3 -2
  266. package/src/hooks/align.native.js +5 -8
  267. package/src/hooks/font-size.js +75 -0
  268. package/src/hooks/margin.js +5 -4
  269. package/src/hooks/padding.js +1 -0
  270. package/src/hooks/style.js +122 -3
  271. package/src/hooks/test/style.js +206 -1
  272. package/src/hooks/test/use-typography-props.js +22 -0
  273. package/src/hooks/use-typography-props.js +18 -3
  274. package/src/hooks/utils.js +6 -2
  275. package/src/store/actions.js +20 -12
  276. package/src/store/defaults.js +3 -0
  277. package/src/store/reducer.js +31 -24
  278. package/src/store/test/actions.js +0 -9
  279. package/src/utils/math.js +17 -0
  280. package/src/utils/pre-parse-patterns.js +12 -7
  281. package/build/components/inserter/pattern-panel.js +0 -87
  282. package/build/components/inserter/pattern-panel.js.map +0 -1
  283. package/build-module/components/inserter/pattern-panel.js +0 -74
  284. package/build-module/components/inserter/pattern-panel.js.map +0 -1
  285. package/src/components/inserter/pattern-panel.js +0 -93
@@ -16,9 +16,7 @@ exports.clearSelectedBlock = clearSelectedBlock;
16
16
  exports.duplicateBlocks = void 0;
17
17
  exports.enterFormattedText = enterFormattedText;
18
18
  exports.exitFormattedText = exitFormattedText;
19
- exports.flashBlock = void 0;
20
- exports.hideInsertionPoint = hideInsertionPoint;
21
- exports.insertBeforeBlock = exports.insertAfterBlock = void 0;
19
+ exports.insertBeforeBlock = exports.insertAfterBlock = exports.hideInsertionPoint = exports.flashBlock = void 0;
22
20
  exports.insertBlock = insertBlock;
23
21
  exports.mergeBlocks = exports.insertDefaultBlock = exports.insertBlocks = void 0;
24
22
  exports.moveBlockToPosition = moveBlockToPosition;
@@ -77,6 +75,8 @@ var _selection = require("../utils/selection");
77
75
  /**
78
76
  * Internal dependencies
79
77
  */
78
+
79
+ /** @typedef {import('../components/use-on-block-drop/types').WPDropOperation} WPDropOperation */
80
80
  const castArray = maybeArray => Array.isArray(maybeArray) ? maybeArray : [maybeArray];
81
81
  /**
82
82
  * Action which will insert a default block insert action if there
@@ -704,10 +704,13 @@ const insertBlocks = function (blocks, index, rootClientId) {
704
704
  /**
705
705
  * Action that shows the insertion point.
706
706
  *
707
- * @param {?string} rootClientId Optional root client ID of block list on
708
- * which to insert.
709
- * @param {?number} index Index at which block should be inserted.
710
- * @param {Object} __unstableOptions Whether or not to show an inserter button.
707
+ * @param {?string} rootClientId Optional root client ID of block list on
708
+ * which to insert.
709
+ * @param {?number} index Index at which block should be inserted.
710
+ * @param {?Object} __unstableOptions Additional options.
711
+ * @property {boolean} __unstableWithInserter Whether or not to show an inserter button.
712
+ * @property {WPDropOperation} operation The operation to perform when applied,
713
+ * either 'insert' or 'replace' for now.
711
714
  *
712
715
  * @return {Object} Action object.
713
716
  */
@@ -719,27 +722,36 @@ function showInsertionPoint(rootClientId, index) {
719
722
  let __unstableOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
720
723
 
721
724
  const {
722
- __unstableWithInserter
725
+ __unstableWithInserter,
726
+ operation
723
727
  } = __unstableOptions;
724
728
  return {
725
729
  type: 'SHOW_INSERTION_POINT',
726
730
  rootClientId,
727
731
  index,
728
- __unstableWithInserter
732
+ __unstableWithInserter,
733
+ operation
729
734
  };
730
735
  }
731
736
  /**
732
737
  * Action that hides the insertion point.
733
- *
734
- * @return {Object} Action object.
735
738
  */
736
739
 
737
740
 
738
- function hideInsertionPoint() {
739
- return {
741
+ const hideInsertionPoint = () => _ref11 => {
742
+ let {
743
+ select,
744
+ dispatch
745
+ } = _ref11;
746
+
747
+ if (!select.isBlockInsertionPointVisible()) {
748
+ return;
749
+ }
750
+
751
+ dispatch({
740
752
  type: 'HIDE_INSERTION_POINT'
741
- };
742
- }
753
+ });
754
+ };
743
755
  /**
744
756
  * Action that resets the template validity.
745
757
  *
@@ -749,6 +761,8 @@ function hideInsertionPoint() {
749
761
  */
750
762
 
751
763
 
764
+ exports.hideInsertionPoint = hideInsertionPoint;
765
+
752
766
  function setTemplateValidity(isValid) {
753
767
  return {
754
768
  type: 'SET_TEMPLATE_VALIDITY',
@@ -762,11 +776,11 @@ function setTemplateValidity(isValid) {
762
776
  */
763
777
 
764
778
 
765
- const synchronizeTemplate = () => _ref11 => {
779
+ const synchronizeTemplate = () => _ref12 => {
766
780
  let {
767
781
  select,
768
782
  dispatch
769
- } = _ref11;
783
+ } = _ref12;
770
784
  dispatch({
771
785
  type: 'SYNCHRONIZE_TEMPLATE'
772
786
  });
@@ -784,12 +798,12 @@ const synchronizeTemplate = () => _ref11 => {
784
798
 
785
799
  exports.synchronizeTemplate = synchronizeTemplate;
786
800
 
787
- const __unstableDeleteSelection = isForward => _ref12 => {
801
+ const __unstableDeleteSelection = isForward => _ref13 => {
788
802
  let {
789
803
  registry,
790
804
  select,
791
805
  dispatch
792
- } = _ref12;
806
+ } = _ref13;
793
807
  const selectionAnchor = select.getSelectionStart();
794
808
  const selectionFocus = select.getSelectionEnd();
795
809
  if (selectionAnchor.clientId === selectionFocus.clientId) return; // It's not mergeable if there's no rich text selection.
@@ -910,11 +924,11 @@ const __unstableDeleteSelection = isForward => _ref12 => {
910
924
 
911
925
  exports.__unstableDeleteSelection = __unstableDeleteSelection;
912
926
 
913
- const __unstableSplitSelection = () => _ref13 => {
927
+ const __unstableSplitSelection = () => _ref14 => {
914
928
  let {
915
929
  select,
916
930
  dispatch
917
- } = _ref13;
931
+ } = _ref14;
918
932
  const selectionAnchor = select.getSelectionStart();
919
933
  const selectionFocus = select.getSelectionEnd();
920
934
  if (selectionAnchor.clientId === selectionFocus.clientId) return; // Can't split if the selection is not set.
@@ -988,11 +1002,11 @@ const __unstableSplitSelection = () => _ref13 => {
988
1002
 
989
1003
  exports.__unstableSplitSelection = __unstableSplitSelection;
990
1004
 
991
- const __unstableExpandSelection = () => _ref14 => {
1005
+ const __unstableExpandSelection = () => _ref15 => {
992
1006
  let {
993
1007
  select,
994
1008
  dispatch
995
- } = _ref14;
1009
+ } = _ref15;
996
1010
  const selectionAnchor = select.getSelectionStart();
997
1011
  const selectionFocus = select.getSelectionEnd();
998
1012
  dispatch.selectionChange({
@@ -1014,12 +1028,12 @@ const __unstableExpandSelection = () => _ref14 => {
1014
1028
 
1015
1029
  exports.__unstableExpandSelection = __unstableExpandSelection;
1016
1030
 
1017
- const mergeBlocks = (firstBlockClientId, secondBlockClientId) => _ref15 => {
1031
+ const mergeBlocks = (firstBlockClientId, secondBlockClientId) => _ref16 => {
1018
1032
  let {
1019
1033
  registry,
1020
1034
  select,
1021
1035
  dispatch
1022
- } = _ref15;
1036
+ } = _ref16;
1023
1037
  const blocks = [firstBlockClientId, secondBlockClientId];
1024
1038
  dispatch({
1025
1039
  type: 'MERGE_BLOCKS',
@@ -1144,11 +1158,11 @@ exports.mergeBlocks = mergeBlocks;
1144
1158
 
1145
1159
  const removeBlocks = function (clientIds) {
1146
1160
  let selectPrevious = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1147
- return _ref16 => {
1161
+ return _ref17 => {
1148
1162
  let {
1149
1163
  select,
1150
1164
  dispatch
1151
- } = _ref16;
1165
+ } = _ref17;
1152
1166
 
1153
1167
  if (!clientIds || !clientIds.length) {
1154
1168
  return;
@@ -1362,10 +1376,10 @@ function selectionChange(clientId, attributeKey, startOffset, endOffset) {
1362
1376
  */
1363
1377
 
1364
1378
 
1365
- const insertDefaultBlock = (attributes, rootClientId, index) => _ref17 => {
1379
+ const insertDefaultBlock = (attributes, rootClientId, index) => _ref18 => {
1366
1380
  let {
1367
1381
  dispatch
1368
- } = _ref17;
1382
+ } = _ref18;
1369
1383
  // Abort if there is no default block type (if it has been unregistered).
1370
1384
  const defaultBlockName = (0, _blocks.getDefaultBlockName)();
1371
1385
 
@@ -1462,10 +1476,10 @@ function __unstableMarkNextChangeAsNotPersistent() {
1462
1476
  */
1463
1477
 
1464
1478
 
1465
- const __unstableMarkAutomaticChange = () => _ref18 => {
1479
+ const __unstableMarkAutomaticChange = () => _ref19 => {
1466
1480
  let {
1467
1481
  dispatch
1468
- } = _ref18;
1482
+ } = _ref19;
1469
1483
  dispatch({
1470
1484
  type: 'MARK_AUTOMATIC_CHANGE'
1471
1485
  });
@@ -1489,10 +1503,10 @@ exports.__unstableMarkAutomaticChange = __unstableMarkAutomaticChange;
1489
1503
 
1490
1504
  const setNavigationMode = function () {
1491
1505
  let isNavigationMode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
1492
- return _ref19 => {
1506
+ return _ref20 => {
1493
1507
  let {
1494
1508
  dispatch
1495
- } = _ref19;
1509
+ } = _ref20;
1496
1510
 
1497
1511
  dispatch.__unstableSetEditorMode(isNavigationMode ? 'navigation' : 'edit');
1498
1512
  };
@@ -1506,11 +1520,11 @@ const setNavigationMode = function () {
1506
1520
 
1507
1521
  exports.setNavigationMode = setNavigationMode;
1508
1522
 
1509
- const __unstableSetEditorMode = mode => _ref20 => {
1523
+ const __unstableSetEditorMode = mode => _ref21 => {
1510
1524
  let {
1511
1525
  dispatch,
1512
1526
  select
1513
- } = _ref20;
1527
+ } = _ref21;
1514
1528
 
1515
1529
  // When switching to zoom-out mode, we need to select the root block
1516
1530
  if (mode === 'zoom-out') {
@@ -1545,10 +1559,10 @@ exports.__unstableSetEditorMode = __unstableSetEditorMode;
1545
1559
 
1546
1560
  const setBlockMovingClientId = function () {
1547
1561
  let hasBlockMovingClientId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1548
- return _ref21 => {
1562
+ return _ref22 => {
1549
1563
  let {
1550
1564
  dispatch
1551
- } = _ref21;
1565
+ } = _ref22;
1552
1566
  dispatch({
1553
1567
  type: 'SET_BLOCK_MOVING_MODE',
1554
1568
  hasBlockMovingClientId
@@ -1571,11 +1585,11 @@ exports.setBlockMovingClientId = setBlockMovingClientId;
1571
1585
 
1572
1586
  const duplicateBlocks = function (clientIds) {
1573
1587
  let updateSelection = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1574
- return _ref22 => {
1588
+ return _ref23 => {
1575
1589
  let {
1576
1590
  select,
1577
1591
  dispatch
1578
- } = _ref22;
1592
+ } = _ref23;
1579
1593
 
1580
1594
  if (!clientIds || !clientIds.length) {
1581
1595
  return;
@@ -1617,11 +1631,11 @@ const duplicateBlocks = function (clientIds) {
1617
1631
 
1618
1632
  exports.duplicateBlocks = duplicateBlocks;
1619
1633
 
1620
- const insertBeforeBlock = clientId => _ref23 => {
1634
+ const insertBeforeBlock = clientId => _ref24 => {
1621
1635
  let {
1622
1636
  select,
1623
1637
  dispatch
1624
- } = _ref23;
1638
+ } = _ref24;
1625
1639
 
1626
1640
  if (!clientId) {
1627
1641
  return;
@@ -1646,11 +1660,11 @@ const insertBeforeBlock = clientId => _ref23 => {
1646
1660
 
1647
1661
  exports.insertBeforeBlock = insertBeforeBlock;
1648
1662
 
1649
- const insertAfterBlock = clientId => _ref24 => {
1663
+ const insertAfterBlock = clientId => _ref25 => {
1650
1664
  let {
1651
1665
  select,
1652
1666
  dispatch
1653
- } = _ref24;
1667
+ } = _ref25;
1654
1668
 
1655
1669
  if (!clientId) {
1656
1670
  return;
@@ -1690,10 +1704,10 @@ function toggleBlockHighlight(clientId, isHighlighted) {
1690
1704
  */
1691
1705
 
1692
1706
 
1693
- const flashBlock = clientId => async _ref25 => {
1707
+ const flashBlock = clientId => async _ref26 => {
1694
1708
  let {
1695
1709
  dispatch
1696
- } = _ref25;
1710
+ } = _ref26;
1697
1711
  dispatch(toggleBlockHighlight(clientId, true));
1698
1712
  await new Promise(resolve => setTimeout(resolve, 150));
1699
1713
  dispatch(toggleBlockHighlight(clientId, false));