@wordpress/block-editor 12.2.0 → 12.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1673) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/autocompleters/block.js +1 -3
  3. package/build/autocompleters/block.js.map +1 -1
  4. package/build/components/alignment-control/ui.js +9 -11
  5. package/build/components/alignment-control/ui.js.map +1 -1
  6. package/build/components/autocomplete/index.js +3 -4
  7. package/build/components/autocomplete/index.js.map +1 -1
  8. package/build/components/block-actions/index.js +8 -12
  9. package/build/components/block-actions/index.js.map +1 -1
  10. package/build/components/block-alignment-control/ui.js +17 -21
  11. package/build/components/block-alignment-control/ui.js.map +1 -1
  12. package/build/components/block-alignment-control/ui.native.js +14 -17
  13. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  14. package/build/components/block-alignment-control/use-available-alignments.js +5 -10
  15. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  16. package/build/components/block-alignment-matrix-control/index.js +4 -6
  17. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  18. package/build/components/block-breadcrumb/index.js +3 -4
  19. package/build/components/block-breadcrumb/index.js.map +1 -1
  20. package/build/components/block-caption/index.native.js +30 -35
  21. package/build/components/block-caption/index.native.js.map +1 -1
  22. package/build/components/block-card/index.js +7 -9
  23. package/build/components/block-card/index.js.map +1 -1
  24. package/build/components/block-compare/block-view.js +8 -9
  25. package/build/components/block-compare/block-view.js.map +1 -1
  26. package/build/components/block-compare/index.js +7 -9
  27. package/build/components/block-compare/index.js.map +1 -1
  28. package/build/components/block-context/index.js +4 -5
  29. package/build/components/block-context/index.js.map +1 -1
  30. package/build/components/block-controls/fill.js +15 -22
  31. package/build/components/block-controls/fill.js.map +1 -1
  32. package/build/components/block-controls/hook.js +1 -3
  33. package/build/components/block-controls/hook.js.map +1 -1
  34. package/build/components/block-controls/slot.js +28 -18
  35. package/build/components/block-controls/slot.js.map +1 -1
  36. package/build/components/block-controls/slot.native.js +7 -17
  37. package/build/components/block-controls/slot.native.js.map +1 -1
  38. package/build/components/block-draggable/draggable-chip.js +5 -6
  39. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  40. package/build/components/block-draggable/draggable-chip.native.js +3 -4
  41. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  42. package/build/components/block-draggable/dropping-insertion-point.native.js +6 -7
  43. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  44. package/build/components/block-draggable/index.js +15 -16
  45. package/build/components/block-draggable/index.js.map +1 -1
  46. package/build/components/block-draggable/index.native.js +43 -58
  47. package/build/components/block-draggable/index.native.js.map +1 -1
  48. package/build/components/block-edit/edit.js +1 -4
  49. package/build/components/block-edit/edit.js.map +1 -1
  50. package/build/components/block-edit/edit.native.js +1 -4
  51. package/build/components/block-edit/edit.native.js.map +1 -1
  52. package/build/components/block-edit-visually-button/index.js +3 -4
  53. package/build/components/block-edit-visually-button/index.js.map +1 -1
  54. package/build/components/block-full-height-alignment-control/index.js +6 -7
  55. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  56. package/build/components/block-icon/index.js +7 -11
  57. package/build/components/block-icon/index.js.map +1 -1
  58. package/build/components/block-icon/index.native.js +9 -13
  59. package/build/components/block-icon/index.native.js.map +1 -1
  60. package/build/components/block-inspector/index.js +36 -46
  61. package/build/components/block-inspector/index.js.map +1 -1
  62. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  63. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  64. package/build/components/block-list/block-html.js +3 -4
  65. package/build/components/block-list/block-html.js.map +1 -1
  66. package/build/components/block-list/block-invalid-warning.js +3 -4
  67. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  68. package/build/components/block-list/block-invalid-warning.native.js +10 -15
  69. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  70. package/build/components/block-list/block-list-context.native.js +5 -11
  71. package/build/components/block-list/block-list-context.native.js.map +1 -1
  72. package/build/components/block-list/block-list-item-cell.native.js +5 -6
  73. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  74. package/build/components/block-list/block-list-item.native.js +17 -18
  75. package/build/components/block-list/block-list-item.native.js.map +1 -1
  76. package/build/components/block-list/block-outline.native.js +8 -9
  77. package/build/components/block-list/block-outline.native.js.map +1 -1
  78. package/build/components/block-list/block-selection-button.native.js +10 -12
  79. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  80. package/build/components/block-list/block.js +39 -46
  81. package/build/components/block-list/block.js.map +1 -1
  82. package/build/components/block-list/block.native.js +55 -68
  83. package/build/components/block-list/block.native.js.map +1 -1
  84. package/build/components/block-list/index.js +12 -15
  85. package/build/components/block-list/index.js.map +1 -1
  86. package/build/components/block-list/index.native.js +77 -86
  87. package/build/components/block-list/index.native.js.map +1 -1
  88. package/build/components/block-list/insertion-point.native.js +4 -5
  89. package/build/components/block-list/insertion-point.native.js.map +1 -1
  90. package/build/components/block-list/layout.js +6 -9
  91. package/build/components/block-list/layout.js.map +1 -1
  92. package/build/components/block-list/subdirectory-icon.js +10 -13
  93. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  94. package/build/components/block-list/use-block-props/index.js +15 -11
  95. package/build/components/block-list/use-block-props/index.js.map +1 -1
  96. package/build/components/block-list/use-block-props/index.native.js +1 -2
  97. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  98. package/build/components/block-list/use-block-props/use-block-custom-class-name.js +2 -2
  99. package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  100. package/build/components/block-list/use-block-props/use-block-default-class-name.js +1 -1
  101. package/build/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  102. package/build/components/block-list/use-in-between-inserter.js +1 -3
  103. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  104. package/build/components/block-list-appender/index.js +16 -15
  105. package/build/components/block-list-appender/index.js.map +1 -1
  106. package/build/components/block-list-appender/index.native.js +9 -11
  107. package/build/components/block-list-appender/index.native.js.map +1 -1
  108. package/build/components/block-lock/menu-item.js +3 -4
  109. package/build/components/block-lock/menu-item.js.map +1 -1
  110. package/build/components/block-lock/modal.js +6 -9
  111. package/build/components/block-lock/modal.js.map +1 -1
  112. package/build/components/block-lock/toolbar.js +4 -10
  113. package/build/components/block-lock/toolbar.js.map +1 -1
  114. package/build/components/block-mobile-toolbar/block-actions-menu.native.js +49 -67
  115. package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  116. package/build/components/block-mobile-toolbar/index.native.js +26 -34
  117. package/build/components/block-mobile-toolbar/index.native.js.map +1 -1
  118. package/build/components/block-mover/button.js +6 -7
  119. package/build/components/block-mover/button.js.map +1 -1
  120. package/build/components/block-mover/index.js +5 -8
  121. package/build/components/block-mover/index.js.map +1 -1
  122. package/build/components/block-mover/index.native.js +23 -46
  123. package/build/components/block-mover/index.native.js.map +1 -1
  124. package/build/components/block-mover/mover-description.native.js +7 -10
  125. package/build/components/block-mover/mover-description.native.js.map +1 -1
  126. package/build/components/block-navigation/dropdown.js +20 -25
  127. package/build/components/block-navigation/dropdown.js.map +1 -1
  128. package/build/components/block-parent-selector/index.js +2 -2
  129. package/build/components/block-parent-selector/index.js.map +1 -1
  130. package/build/components/block-pattern-setup/index.js +27 -31
  131. package/build/components/block-pattern-setup/index.js.map +1 -1
  132. package/build/components/block-pattern-setup/setup-toolbar.js +35 -42
  133. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  134. package/build/components/block-patterns-list/index.js +74 -81
  135. package/build/components/block-patterns-list/index.js.map +1 -1
  136. package/build/components/block-popover/drop-zone.js +4 -5
  137. package/build/components/block-popover/drop-zone.js.map +1 -1
  138. package/build/components/block-popover/inbetween.js +10 -15
  139. package/build/components/block-popover/inbetween.js.map +1 -1
  140. package/build/components/block-popover/index.js +14 -15
  141. package/build/components/block-popover/index.js.map +1 -1
  142. package/build/components/block-preview/auto.js +6 -8
  143. package/build/components/block-preview/auto.js.map +1 -1
  144. package/build/components/block-preview/index.js +15 -18
  145. package/build/components/block-preview/index.js.map +1 -1
  146. package/build/components/block-settings/button.native.js +7 -10
  147. package/build/components/block-settings/button.native.js.map +1 -1
  148. package/build/components/block-settings-menu/block-convert-button.js +5 -7
  149. package/build/components/block-settings-menu/block-convert-button.js.map +1 -1
  150. package/build/components/block-settings-menu/block-html-convert-button.js +10 -14
  151. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  152. package/build/components/block-settings-menu/block-mode-toggle.js +19 -25
  153. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  154. package/build/components/block-settings-menu/block-settings-dropdown.js +132 -111
  155. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  156. package/build/components/block-settings-menu/index.js +4 -5
  157. package/build/components/block-settings-menu/index.js.map +1 -1
  158. package/build/components/block-settings-menu-controls/index.js +14 -16
  159. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  160. package/build/components/block-styles/index.js +6 -7
  161. package/build/components/block-styles/index.js.map +1 -1
  162. package/build/components/block-styles/index.native.js +5 -7
  163. package/build/components/block-styles/index.native.js.map +1 -1
  164. package/build/components/block-styles/menu-items.js +4 -5
  165. package/build/components/block-styles/menu-items.js.map +1 -1
  166. package/build/components/block-styles/preview-panel.js +7 -10
  167. package/build/components/block-styles/preview-panel.js.map +1 -1
  168. package/build/components/block-styles/preview.native.js +6 -7
  169. package/build/components/block-styles/preview.native.js.map +1 -1
  170. package/build/components/block-styles/use-styles-for-block.js +7 -9
  171. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  172. package/build/components/block-styles/utils.js +4 -7
  173. package/build/components/block-styles/utils.js.map +1 -1
  174. package/build/components/block-switcher/block-styles-menu.js +4 -5
  175. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  176. package/build/components/block-switcher/block-transformations-menu.js +24 -29
  177. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  178. package/build/components/block-switcher/block-transformations-menu.native.js +9 -10
  179. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  180. package/build/components/block-switcher/block-variation-transformations.js +21 -30
  181. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  182. package/build/components/block-switcher/index.js +47 -60
  183. package/build/components/block-switcher/index.js.map +1 -1
  184. package/build/components/block-switcher/pattern-transformations-menu.js +18 -22
  185. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  186. package/build/components/block-switcher/preview-block-popover.js +3 -4
  187. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  188. package/build/components/block-switcher/utils.js +2 -3
  189. package/build/components/block-switcher/utils.js.map +1 -1
  190. package/build/components/block-title/index.js +5 -6
  191. package/build/components/block-title/index.js.map +1 -1
  192. package/build/components/block-title/use-block-display-title.js +5 -6
  193. package/build/components/block-title/use-block-display-title.js.map +1 -1
  194. package/build/components/block-toolbar/index.js +4 -5
  195. package/build/components/block-toolbar/index.js.map +1 -1
  196. package/build/components/block-toolbar/utils.js +14 -16
  197. package/build/components/block-toolbar/utils.js.map +1 -1
  198. package/build/components/block-tools/back-compat.js +3 -4
  199. package/build/components/block-tools/back-compat.js.map +1 -1
  200. package/build/components/block-tools/block-contextual-toolbar.js +5 -6
  201. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  202. package/build/components/block-tools/block-selection-button.js +6 -9
  203. package/build/components/block-tools/block-selection-button.js.map +1 -1
  204. package/build/components/block-tools/index.js +6 -7
  205. package/build/components/block-tools/index.js.map +1 -1
  206. package/build/components/block-tools/insertion-point.js +7 -10
  207. package/build/components/block-tools/insertion-point.js.map +1 -1
  208. package/build/components/block-tools/selected-block-popover.js +19 -20
  209. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  210. package/build/components/block-tools/use-block-toolbar-popover-props.js +9 -14
  211. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  212. package/build/components/block-tools/zoom-out-mode-inserters.js +3 -4
  213. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  214. package/build/components/block-types-list/index.js +8 -9
  215. package/build/components/block-types-list/index.js.map +1 -1
  216. package/build/components/block-types-list/index.native.js +22 -27
  217. package/build/components/block-types-list/index.native.js.map +1 -1
  218. package/build/components/block-variation-picker/index.js +8 -9
  219. package/build/components/block-variation-picker/index.js.map +1 -1
  220. package/build/components/block-variation-picker/index.native.js +7 -9
  221. package/build/components/block-variation-picker/index.native.js.map +1 -1
  222. package/build/components/block-variation-transforms/index.js +30 -41
  223. package/build/components/block-variation-transforms/index.js.map +1 -1
  224. package/build/components/block-vertical-alignment-control/ui.js +7 -9
  225. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  226. package/build/components/border-radius-control/all-input-control.js +7 -8
  227. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  228. package/build/components/border-radius-control/index.js +9 -10
  229. package/build/components/border-radius-control/index.js.map +1 -1
  230. package/build/components/border-radius-control/input-controls.js +8 -11
  231. package/build/components/border-radius-control/input-controls.js.map +1 -1
  232. package/build/components/border-radius-control/linked-button.js +4 -5
  233. package/build/components/border-radius-control/linked-button.js.map +1 -1
  234. package/build/components/border-radius-control/utils.js +3 -7
  235. package/build/components/border-radius-control/utils.js.map +1 -1
  236. package/build/components/button-block-appender/index.js +13 -15
  237. package/build/components/button-block-appender/index.js.map +1 -1
  238. package/build/components/button-block-appender/index.native.js +25 -29
  239. package/build/components/button-block-appender/index.native.js.map +1 -1
  240. package/build/components/caption/index.native.js +40 -43
  241. package/build/components/caption/index.native.js.map +1 -1
  242. package/build/components/child-layout-control/index.js +5 -6
  243. package/build/components/child-layout-control/index.js.map +1 -1
  244. package/build/components/color-palette/control.js +5 -6
  245. package/build/components/color-palette/control.js.map +1 -1
  246. package/build/components/color-palette/with-color-context.js +1 -7
  247. package/build/components/color-palette/with-color-context.js.map +1 -1
  248. package/build/components/color-style-selector/index.js +28 -35
  249. package/build/components/color-style-selector/index.js.map +1 -1
  250. package/build/components/colors/utils.js +5 -8
  251. package/build/components/colors/utils.js.map +1 -1
  252. package/build/components/colors/with-colors.js +9 -24
  253. package/build/components/colors/with-colors.js.map +1 -1
  254. package/build/components/colors-gradients/control.js +19 -22
  255. package/build/components/colors-gradients/control.js.map +1 -1
  256. package/build/components/colors-gradients/dropdown.js +32 -39
  257. package/build/components/colors-gradients/dropdown.js.map +1 -1
  258. package/build/components/colors-gradients/panel-color-gradient-settings.js +20 -25
  259. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  260. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +27 -31
  261. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  262. package/build/components/contrast-checker/index.js +12 -13
  263. package/build/components/contrast-checker/index.js.map +1 -1
  264. package/build/components/contrast-checker/index.native.js +16 -18
  265. package/build/components/contrast-checker/index.native.js.map +1 -1
  266. package/build/components/convert-to-group-buttons/index.js +9 -10
  267. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  268. package/build/components/convert-to-group-buttons/index.native.js +6 -7
  269. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  270. package/build/components/convert-to-group-buttons/toolbar.js +6 -12
  271. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  272. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +4 -6
  273. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  274. package/build/components/copy-handler/index.js +4 -7
  275. package/build/components/copy-handler/index.js.map +1 -1
  276. package/build/components/date-format-picker/index.js +12 -16
  277. package/build/components/date-format-picker/index.js.map +1 -1
  278. package/build/components/default-block-appender/index.js +7 -9
  279. package/build/components/default-block-appender/index.js.map +1 -1
  280. package/build/components/default-block-appender/index.native.js +8 -10
  281. package/build/components/default-block-appender/index.native.js.map +1 -1
  282. package/build/components/default-style-picker/index.js +14 -22
  283. package/build/components/default-style-picker/index.js.map +1 -1
  284. package/build/components/duotone/components.js +14 -18
  285. package/build/components/duotone/components.js.map +1 -1
  286. package/build/components/duotone/utils.js +1 -2
  287. package/build/components/duotone/utils.js.map +1 -1
  288. package/build/components/duotone-control/index.js +12 -15
  289. package/build/components/duotone-control/index.js.map +1 -1
  290. package/build/components/editable-text/index.js +5 -6
  291. package/build/components/editable-text/index.js.map +1 -1
  292. package/build/components/editor-styles/index.js +4 -5
  293. package/build/components/editor-styles/index.js.map +1 -1
  294. package/build/components/floating-toolbar/index.native.js +7 -8
  295. package/build/components/floating-toolbar/index.native.js.map +1 -1
  296. package/build/components/font-appearance-control/index.js +19 -26
  297. package/build/components/font-appearance-control/index.js.map +1 -1
  298. package/build/components/font-family/index.js +10 -12
  299. package/build/components/font-family/index.js.map +1 -1
  300. package/build/components/font-sizes/fluid-utils.js +17 -21
  301. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  302. package/build/components/font-sizes/utils.js +6 -12
  303. package/build/components/font-sizes/utils.js.map +1 -1
  304. package/build/components/font-sizes/with-font-sizes.js +11 -30
  305. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  306. package/build/components/global-styles/advanced-panel.js +7 -10
  307. package/build/components/global-styles/advanced-panel.js.map +1 -1
  308. package/build/components/global-styles/border-panel.js +45 -78
  309. package/build/components/global-styles/border-panel.js.map +1 -1
  310. package/build/components/global-styles/color-panel.js +104 -147
  311. package/build/components/global-styles/color-panel.js.map +1 -1
  312. package/build/components/global-styles/color-panel.native.js +25 -42
  313. package/build/components/global-styles/color-panel.native.js.map +1 -1
  314. package/build/components/global-styles/dimensions-panel.js +78 -109
  315. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  316. package/build/components/global-styles/effects-panel.js +58 -72
  317. package/build/components/global-styles/effects-panel.js.map +1 -1
  318. package/build/components/global-styles/filters-panel.js +53 -71
  319. package/build/components/global-styles/filters-panel.js.map +1 -1
  320. package/build/components/global-styles/get-block-css-selector.js +4 -7
  321. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  322. package/build/components/global-styles/hooks.js +22 -37
  323. package/build/components/global-styles/hooks.js.map +1 -1
  324. package/build/components/global-styles/typography-panel.js +69 -125
  325. package/build/components/global-styles/typography-panel.js.map +1 -1
  326. package/build/components/global-styles/typography-utils.js +49 -26
  327. package/build/components/global-styles/typography-utils.js.map +1 -1
  328. package/build/components/global-styles/use-global-styles-output.js +140 -235
  329. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  330. package/build/components/global-styles/utils.js +11 -27
  331. package/build/components/global-styles/utils.js.map +1 -1
  332. package/build/components/gradients/use-gradient.js +6 -7
  333. package/build/components/gradients/use-gradient.js.map +1 -1
  334. package/build/components/height-control/index.js +9 -10
  335. package/build/components/height-control/index.js.map +1 -1
  336. package/build/components/iframe/index.js +50 -85
  337. package/build/components/iframe/index.js.map +1 -1
  338. package/build/components/iframe/use-compatibility-styles.js +29 -20
  339. package/build/components/iframe/use-compatibility-styles.js.map +1 -1
  340. package/build/components/image-editor/aspect-ratio-dropdown.js +83 -91
  341. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  342. package/build/components/image-editor/context.js +9 -10
  343. package/build/components/image-editor/context.js.map +1 -1
  344. package/build/components/image-editor/cropper.js +11 -12
  345. package/build/components/image-editor/cropper.js.map +1 -1
  346. package/build/components/image-editor/index.js +12 -13
  347. package/build/components/image-editor/index.js.map +1 -1
  348. package/build/components/image-editor/use-save-image.js +11 -12
  349. package/build/components/image-editor/use-save-image.js.map +1 -1
  350. package/build/components/image-editor/use-transform-image.js +5 -6
  351. package/build/components/image-editor/use-transform-image.js.map +1 -1
  352. package/build/components/image-editor/zoom-dropdown.js +10 -13
  353. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  354. package/build/components/image-size-control/index.js +12 -13
  355. package/build/components/image-size-control/index.js.map +1 -1
  356. package/build/components/inner-blocks/button-block-appender.js +7 -8
  357. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  358. package/build/components/inner-blocks/default-block-appender.js +6 -8
  359. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  360. package/build/components/inner-blocks/index.js +2 -6
  361. package/build/components/inner-blocks/index.js.map +1 -1
  362. package/build/components/inner-blocks/index.native.js +1 -3
  363. package/build/components/inner-blocks/index.native.js.map +1 -1
  364. package/build/components/inner-blocks/use-block-context.js +1 -4
  365. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  366. package/build/components/inner-blocks/use-nested-settings-update.js +2 -4
  367. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  368. package/build/components/inserter/block-patterns-explorer/explorer.js +9 -11
  369. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  370. package/build/components/inserter/block-patterns-explorer/patterns-list.js +11 -18
  371. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  372. package/build/components/inserter/block-patterns-explorer/sidebar.js +20 -24
  373. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  374. package/build/components/inserter/block-patterns-tab.js +29 -40
  375. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  376. package/build/components/inserter/block-types-tab.js +7 -9
  377. package/build/components/inserter/block-types-tab.js.map +1 -1
  378. package/build/components/inserter/block-types-tab.native.js +8 -9
  379. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  380. package/build/components/inserter/hooks/use-block-type-impressions.native.js +3 -5
  381. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  382. package/build/components/inserter/hooks/use-block-types-state.js +5 -6
  383. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  384. package/build/components/inserter/hooks/use-clipboard-block.native.js +2 -2
  385. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  386. package/build/components/inserter/hooks/use-debounced-input.js +1 -2
  387. package/build/components/inserter/hooks/use-debounced-input.js.map +1 -1
  388. package/build/components/inserter/hooks/use-insertion-point.js +10 -12
  389. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  390. package/build/components/inserter/index.js +37 -51
  391. package/build/components/inserter/index.js.map +1 -1
  392. package/build/components/inserter/index.native.js +24 -31
  393. package/build/components/inserter/index.native.js.map +1 -1
  394. package/build/components/inserter/library.js +11 -12
  395. package/build/components/inserter/library.js.map +1 -1
  396. package/build/components/inserter/media-tab/hooks.js +2 -5
  397. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  398. package/build/components/inserter/media-tab/media-list.js +6 -7
  399. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  400. package/build/components/inserter/media-tab/media-panel.js +12 -14
  401. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  402. package/build/components/inserter/media-tab/media-preview.js +47 -58
  403. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  404. package/build/components/inserter/media-tab/media-tab.js +24 -28
  405. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  406. package/build/components/inserter/media-tab/utils.js +3 -5
  407. package/build/components/inserter/media-tab/utils.js.map +1 -1
  408. package/build/components/inserter/menu.js +15 -19
  409. package/build/components/inserter/menu.js.map +1 -1
  410. package/build/components/inserter/menu.native.js +27 -31
  411. package/build/components/inserter/menu.native.js.map +1 -1
  412. package/build/components/inserter/mobile-tab-navigation.js +7 -9
  413. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  414. package/build/components/inserter/panel.js +5 -6
  415. package/build/components/inserter/panel.js.map +1 -1
  416. package/build/components/inserter/preview-panel.js +4 -5
  417. package/build/components/inserter/preview-panel.js.map +1 -1
  418. package/build/components/inserter/quick-inserter.js +8 -9
  419. package/build/components/inserter/quick-inserter.js.map +1 -1
  420. package/build/components/inserter/reusable-blocks-tab.js +13 -18
  421. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  422. package/build/components/inserter/reusable-blocks-tab.native.js +5 -6
  423. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  424. package/build/components/inserter/search-items.js +12 -40
  425. package/build/components/inserter/search-items.js.map +1 -1
  426. package/build/components/inserter/search-results.js +17 -18
  427. package/build/components/inserter/search-results.js.map +1 -1
  428. package/build/components/inserter/search-results.native.js +11 -12
  429. package/build/components/inserter/search-results.native.js.map +1 -1
  430. package/build/components/inserter/tabs.js +8 -9
  431. package/build/components/inserter/tabs.js.map +1 -1
  432. package/build/components/inserter/tabs.native.js +37 -55
  433. package/build/components/inserter/tabs.native.js.map +1 -1
  434. package/build/components/inserter/utils.native.js +13 -17
  435. package/build/components/inserter/utils.native.js.map +1 -1
  436. package/build/components/inserter-draggable-blocks/index.js +11 -13
  437. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  438. package/build/components/inserter-list-item/index.js +68 -72
  439. package/build/components/inserter-list-item/index.js.map +1 -1
  440. package/build/components/inserter-listbox/index.js +3 -4
  441. package/build/components/inserter-listbox/index.js.map +1 -1
  442. package/build/components/inserter-listbox/item.js +6 -7
  443. package/build/components/inserter-listbox/item.js.map +1 -1
  444. package/build/components/inspector-controls/block-support-slot-container.js +4 -5
  445. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  446. package/build/components/inspector-controls/block-support-tools-panel.js +6 -8
  447. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  448. package/build/components/inspector-controls/fill.js +13 -24
  449. package/build/components/inspector-controls/fill.js.map +1 -1
  450. package/build/components/inspector-controls/fill.native.js +7 -11
  451. package/build/components/inspector-controls/fill.native.js.map +1 -1
  452. package/build/components/inspector-controls/slot.js +9 -13
  453. package/build/components/inspector-controls/slot.js.map +1 -1
  454. package/build/components/inspector-controls/slot.native.js +6 -10
  455. package/build/components/inspector-controls/slot.native.js.map +1 -1
  456. package/build/components/inspector-controls-tabs/index.js +6 -7
  457. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  458. package/build/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  459. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  460. package/build/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  461. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  462. package/build/components/inspector-controls-tabs/settings-tab.js +3 -6
  463. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  464. package/build/components/inspector-controls-tabs/styles-tab.js +5 -6
  465. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  466. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +1 -3
  467. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  468. package/build/components/inspector-popover-header/index.js +18 -22
  469. package/build/components/inspector-popover-header/index.js.map +1 -1
  470. package/build/components/justify-content-control/ui.js +8 -10
  471. package/build/components/justify-content-control/ui.js.map +1 -1
  472. package/build/components/letter-spacing-control/index.js +6 -7
  473. package/build/components/letter-spacing-control/index.js.map +1 -1
  474. package/build/components/line-height-control/index.js +13 -18
  475. package/build/components/line-height-control/index.js.map +1 -1
  476. package/build/components/line-height-control/index.native.js +4 -5
  477. package/build/components/line-height-control/index.native.js.map +1 -1
  478. package/build/components/link-control/index.js +84 -63
  479. package/build/components/link-control/index.js.map +1 -1
  480. package/build/components/link-control/is-url-like.js +32 -2
  481. package/build/components/link-control/is-url-like.js.map +1 -1
  482. package/build/components/link-control/link-preview.js +24 -27
  483. package/build/components/link-control/link-preview.js.map +1 -1
  484. package/build/components/link-control/search-create-button.js +7 -9
  485. package/build/components/link-control/search-create-button.js.map +1 -1
  486. package/build/components/link-control/search-input.js +22 -27
  487. package/build/components/link-control/search-input.js.map +1 -1
  488. package/build/components/link-control/search-item.js +13 -15
  489. package/build/components/link-control/search-item.js.map +1 -1
  490. package/build/components/link-control/search-results.js +22 -28
  491. package/build/components/link-control/search-results.js.map +1 -1
  492. package/build/components/link-control/settings-drawer.js +6 -35
  493. package/build/components/link-control/settings-drawer.js.map +1 -1
  494. package/build/components/link-control/settings.js +6 -8
  495. package/build/components/link-control/settings.js.map +1 -1
  496. package/build/components/link-control/use-internal-value.js +54 -0
  497. package/build/components/link-control/use-internal-value.js.map +1 -0
  498. package/build/components/link-control/use-rich-url-data.js +1 -1
  499. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  500. package/build/components/link-control/use-search-handler.js +10 -23
  501. package/build/components/link-control/use-search-handler.js.map +1 -1
  502. package/build/components/list-view/appender.js +12 -12
  503. package/build/components/list-view/appender.js.map +1 -1
  504. package/build/components/list-view/aria-referenced-text.js +44 -0
  505. package/build/components/list-view/aria-referenced-text.js.map +1 -0
  506. package/build/components/list-view/block-contents.js +38 -38
  507. package/build/components/list-view/block-contents.js.map +1 -1
  508. package/build/components/list-view/block-select-button.js +67 -21
  509. package/build/components/list-view/block-select-button.js.map +1 -1
  510. package/build/components/list-view/block.js +119 -101
  511. package/build/components/list-view/block.js.map +1 -1
  512. package/build/components/list-view/branch.js +5 -5
  513. package/build/components/list-view/branch.js.map +1 -1
  514. package/build/components/list-view/drop-indicator.js +4 -5
  515. package/build/components/list-view/drop-indicator.js.map +1 -1
  516. package/build/components/list-view/expander.js +3 -4
  517. package/build/components/list-view/expander.js.map +1 -1
  518. package/build/components/list-view/index.js +46 -43
  519. package/build/components/list-view/index.js.map +1 -1
  520. package/build/components/list-view/leaf.js +10 -11
  521. package/build/components/list-view/leaf.js.map +1 -1
  522. package/build/components/list-view/use-block-selection.js +4 -6
  523. package/build/components/list-view/use-block-selection.js.map +1 -1
  524. package/build/components/list-view/use-list-view-client-ids.js +9 -12
  525. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  526. package/build/components/list-view/use-list-view-drop-zone.js +25 -13
  527. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  528. package/build/components/list-view/use-list-view-expand-selected-item.js +4 -5
  529. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  530. package/build/components/list-view/use-list-view-scroll-into-view.js +5 -6
  531. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  532. package/build/components/media-placeholder/index.js +71 -92
  533. package/build/components/media-placeholder/index.js.map +1 -1
  534. package/build/components/media-placeholder/index.native.js +5 -6
  535. package/build/components/media-placeholder/index.native.js.map +1 -1
  536. package/build/components/media-replace-flow/index.js +94 -107
  537. package/build/components/media-replace-flow/index.js.map +1 -1
  538. package/build/components/media-upload/check.js +4 -5
  539. package/build/components/media-upload/check.js.map +1 -1
  540. package/build/components/media-upload/index.native.js +1 -1
  541. package/build/components/media-upload/index.native.js.map +1 -1
  542. package/build/components/multi-selection-inspector/index.js +3 -4
  543. package/build/components/multi-selection-inspector/index.js.map +1 -1
  544. package/build/components/navigable-toolbar/index.js +16 -15
  545. package/build/components/navigable-toolbar/index.js.map +1 -1
  546. package/build/components/observe-typing/index.js +3 -4
  547. package/build/components/observe-typing/index.js.map +1 -1
  548. package/build/components/panel-color-settings/index.js +4 -5
  549. package/build/components/panel-color-settings/index.js.map +1 -1
  550. package/build/components/plain-text/index.js +4 -6
  551. package/build/components/plain-text/index.js.map +1 -1
  552. package/build/components/plain-text/index.native.js +8 -14
  553. package/build/components/plain-text/index.native.js.map +1 -1
  554. package/build/components/preview-options/index.js +8 -9
  555. package/build/components/preview-options/index.js.map +1 -1
  556. package/build/components/provider/block-refs-provider.js +3 -4
  557. package/build/components/provider/block-refs-provider.js.map +1 -1
  558. package/build/components/provider/use-block-sync.js +7 -8
  559. package/build/components/provider/use-block-sync.js.map +1 -1
  560. package/build/components/provider/with-registry-provider.js +5 -7
  561. package/build/components/provider/with-registry-provider.js.map +1 -1
  562. package/build/components/publish-date-time-picker/index.js +6 -7
  563. package/build/components/publish-date-time-picker/index.js.map +1 -1
  564. package/build/components/recursion-provider/index.js +7 -11
  565. package/build/components/recursion-provider/index.js.map +1 -1
  566. package/build/components/resizable-box-popover/index.js +5 -6
  567. package/build/components/resizable-box-popover/index.js.map +1 -1
  568. package/build/components/responsive-block-control/label.js +5 -6
  569. package/build/components/responsive-block-control/label.js.map +1 -1
  570. package/build/components/rich-text/embed-handler-picker.native.js +6 -10
  571. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  572. package/build/components/rich-text/format-edit.js +7 -8
  573. package/build/components/rich-text/format-edit.js.map +1 -1
  574. package/build/components/rich-text/format-toolbar/index.js +9 -18
  575. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  576. package/build/components/rich-text/format-toolbar-container.js +13 -16
  577. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  578. package/build/components/rich-text/index.js +43 -47
  579. package/build/components/rich-text/index.js.map +1 -1
  580. package/build/components/rich-text/index.native.js +130 -157
  581. package/build/components/rich-text/index.native.js.map +1 -1
  582. package/build/components/rich-text/input-event.js +4 -5
  583. package/build/components/rich-text/input-event.js.map +1 -1
  584. package/build/components/rich-text/shortcut.js +5 -6
  585. package/build/components/rich-text/shortcut.js.map +1 -1
  586. package/build/components/rich-text/split-value.js +8 -10
  587. package/build/components/rich-text/split-value.js.map +1 -1
  588. package/build/components/rich-text/toolbar-button.js +6 -7
  589. package/build/components/rich-text/toolbar-button.js.map +1 -1
  590. package/build/components/rich-text/use-before-input-rules.js +1 -4
  591. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  592. package/build/components/rich-text/use-enter.js +3 -6
  593. package/build/components/rich-text/use-enter.js.map +1 -1
  594. package/build/components/rich-text/use-firefox-compat.js +32 -1
  595. package/build/components/rich-text/use-firefox-compat.js.map +1 -1
  596. package/build/components/rich-text/use-format-types.js +11 -17
  597. package/build/components/rich-text/use-format-types.js.map +1 -1
  598. package/build/components/rich-text/use-input-rules.js +9 -15
  599. package/build/components/rich-text/use-input-rules.js.map +1 -1
  600. package/build/components/rich-text/use-mark-persistent.js +4 -5
  601. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  602. package/build/components/rich-text/use-paste-handler.js +5 -7
  603. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  604. package/build/components/rich-text/utils.js +5 -7
  605. package/build/components/rich-text/utils.js.map +1 -1
  606. package/build/components/skip-to-selected-block/index.js +3 -4
  607. package/build/components/skip-to-selected-block/index.js.map +1 -1
  608. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +38 -0
  609. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -0
  610. package/build/components/spacing-sizes-control/index.js +60 -62
  611. package/build/components/spacing-sizes-control/index.js.map +1 -1
  612. package/build/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +21 -22
  613. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -0
  614. package/build/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +22 -22
  615. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -0
  616. package/build/components/spacing-sizes-control/input-controls/single.js +51 -0
  617. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -0
  618. package/build/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +51 -69
  619. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -0
  620. package/build/components/spacing-sizes-control/sides-dropdown/index.js +84 -0
  621. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -0
  622. package/build/components/spacing-sizes-control/utils.js +213 -31
  623. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  624. package/build/components/text-decoration-control/index.js +5 -6
  625. package/build/components/text-decoration-control/index.js.map +1 -1
  626. package/build/components/text-transform-control/index.js +5 -6
  627. package/build/components/text-transform-control/index.js.map +1 -1
  628. package/build/components/tool-selector/index.js +13 -16
  629. package/build/components/tool-selector/index.js.map +1 -1
  630. package/build/components/typewriter/index.js +6 -9
  631. package/build/components/typewriter/index.js.map +1 -1
  632. package/build/components/ungroup-button/index.native.js +11 -16
  633. package/build/components/ungroup-button/index.native.js.map +1 -1
  634. package/build/components/unit-control/index.js +4 -5
  635. package/build/components/unit-control/index.js.map +1 -1
  636. package/build/components/url-input/index.js +15 -26
  637. package/build/components/url-input/index.js.map +1 -1
  638. package/build/components/url-input/index.native.js +6 -8
  639. package/build/components/url-input/index.native.js.map +1 -1
  640. package/build/components/url-popover/image-url-input-ui.js +12 -15
  641. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  642. package/build/components/url-popover/index.js +12 -14
  643. package/build/components/url-popover/index.js.map +1 -1
  644. package/build/components/url-popover/link-editor.js +7 -8
  645. package/build/components/url-popover/link-editor.js.map +1 -1
  646. package/build/components/url-popover/link-viewer-url.js +5 -6
  647. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  648. package/build/components/url-popover/link-viewer.js +8 -9
  649. package/build/components/url-popover/link-viewer.js.map +1 -1
  650. package/build/components/use-block-display-information/index.js +2 -2
  651. package/build/components/use-block-display-information/index.js.map +1 -1
  652. package/build/components/use-block-drop-zone/index.js +16 -23
  653. package/build/components/use-block-drop-zone/index.js.map +1 -1
  654. package/build/components/use-block-drop-zone/index.native.js +8 -11
  655. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  656. package/build/components/use-moving-animation/index.js +9 -12
  657. package/build/components/use-moving-animation/index.js.map +1 -1
  658. package/build/components/use-on-block-drop/index.js +2 -6
  659. package/build/components/use-on-block-drop/index.js.map +1 -1
  660. package/build/components/use-on-block-drop/index.native.js +8 -10
  661. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  662. package/build/components/use-paste-styles/index.js +2 -6
  663. package/build/components/use-paste-styles/index.js.map +1 -1
  664. package/build/components/warning/index.js +6 -7
  665. package/build/components/warning/index.js.map +1 -1
  666. package/build/components/warning/index.native.js +9 -10
  667. package/build/components/warning/index.native.js.map +1 -1
  668. package/build/components/writing-flow/index.js +4 -5
  669. package/build/components/writing-flow/index.js.map +1 -1
  670. package/build/components/writing-flow/use-drag-selection.js +4 -6
  671. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  672. package/build/components/writing-flow/use-tab-nav.js +9 -6
  673. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  674. package/build/hooks/align.js +7 -14
  675. package/build/hooks/align.js.map +1 -1
  676. package/build/hooks/anchor.js +6 -3
  677. package/build/hooks/anchor.js.map +1 -1
  678. package/build/hooks/aria-label.js +1 -3
  679. package/build/hooks/aria-label.js.map +1 -1
  680. package/build/hooks/behaviors.js +91 -58
  681. package/build/hooks/behaviors.js.map +1 -1
  682. package/build/hooks/border.js +25 -38
  683. package/build/hooks/border.js.map +1 -1
  684. package/build/hooks/color.js +22 -37
  685. package/build/hooks/color.js.map +1 -1
  686. package/build/hooks/content-lock-ui.js +26 -30
  687. package/build/hooks/content-lock-ui.js.map +1 -1
  688. package/build/hooks/contrast-checker.js +4 -7
  689. package/build/hooks/contrast-checker.js.map +1 -1
  690. package/build/hooks/custom-class-name.js +5 -4
  691. package/build/hooks/custom-class-name.js.map +1 -1
  692. package/build/hooks/dimensions.js +6 -9
  693. package/build/hooks/dimensions.js.map +1 -1
  694. package/build/hooks/duotone.js +32 -44
  695. package/build/hooks/duotone.js.map +1 -1
  696. package/build/hooks/font-family.js +5 -6
  697. package/build/hooks/font-family.js.map +1 -1
  698. package/build/hooks/font-size.js +14 -21
  699. package/build/hooks/font-size.js.map +1 -1
  700. package/build/hooks/gap.js +5 -6
  701. package/build/hooks/gap.js.map +1 -1
  702. package/build/hooks/layout.js +42 -59
  703. package/build/hooks/layout.js.map +1 -1
  704. package/build/hooks/line-height.js +5 -8
  705. package/build/hooks/line-height.js.map +1 -1
  706. package/build/hooks/lock.js +2 -2
  707. package/build/hooks/lock.js.map +1 -1
  708. package/build/hooks/margin.js +6 -9
  709. package/build/hooks/margin.js.map +1 -1
  710. package/build/hooks/metadata-name.js +4 -5
  711. package/build/hooks/metadata-name.js.map +1 -1
  712. package/build/hooks/metadata.js +3 -7
  713. package/build/hooks/metadata.js.map +1 -1
  714. package/build/hooks/padding.js +6 -9
  715. package/build/hooks/padding.js.map +1 -1
  716. package/build/hooks/position.js +26 -40
  717. package/build/hooks/position.js.map +1 -1
  718. package/build/hooks/settings.js +1 -3
  719. package/build/hooks/settings.js.map +1 -1
  720. package/build/hooks/style.js +12 -19
  721. package/build/hooks/style.js.map +1 -1
  722. package/build/hooks/supports.js +3 -5
  723. package/build/hooks/supports.js.map +1 -1
  724. package/build/hooks/typography.js +18 -27
  725. package/build/hooks/typography.js.map +1 -1
  726. package/build/hooks/typography.native.js +1 -2
  727. package/build/hooks/typography.native.js.map +1 -1
  728. package/build/hooks/use-border-props.js +1 -3
  729. package/build/hooks/use-border-props.js.map +1 -1
  730. package/build/hooks/use-color-props.js +6 -8
  731. package/build/hooks/use-color-props.js.map +1 -1
  732. package/build/hooks/use-editor-wrapper-styles.native.js +34 -39
  733. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  734. package/build/hooks/use-spacing-props.js +1 -1
  735. package/build/hooks/use-spacing-props.js.map +1 -1
  736. package/build/hooks/use-typography-props.js +8 -12
  737. package/build/hooks/use-typography-props.js.map +1 -1
  738. package/build/hooks/utils.js +6 -18
  739. package/build/hooks/utils.js.map +1 -1
  740. package/build/layouts/constrained.js +22 -27
  741. package/build/layouts/constrained.js.map +1 -1
  742. package/build/layouts/flex.js +43 -54
  743. package/build/layouts/flex.js.map +1 -1
  744. package/build/layouts/flow.js +10 -13
  745. package/build/layouts/flow.js.map +1 -1
  746. package/build/layouts/grid.js +45 -25
  747. package/build/layouts/grid.js.map +1 -1
  748. package/build/layouts/index.js +1 -2
  749. package/build/layouts/index.js.map +1 -1
  750. package/build/layouts/utils.js +3 -9
  751. package/build/layouts/utils.js.map +1 -1
  752. package/build/store/actions.js +251 -334
  753. package/build/store/actions.js.map +1 -1
  754. package/build/store/array.js +1 -2
  755. package/build/store/array.js.map +1 -1
  756. package/build/store/private-actions.js +3 -7
  757. package/build/store/private-actions.js.map +1 -1
  758. package/build/store/private-selectors.js +41 -24
  759. package/build/store/private-selectors.js.map +1 -1
  760. package/build/store/reducer.js +67 -169
  761. package/build/store/reducer.js.map +1 -1
  762. package/build/store/selectors.js +145 -215
  763. package/build/store/selectors.js.map +1 -1
  764. package/build/utils/block-variation-transforms.js +4 -7
  765. package/build/utils/block-variation-transforms.js.map +1 -1
  766. package/build/utils/math.js +1 -2
  767. package/build/utils/math.js.map +1 -1
  768. package/build/utils/object.js +1 -4
  769. package/build/utils/object.js.map +1 -1
  770. package/build/utils/order-inserter-block-items.js +5 -7
  771. package/build/utils/order-inserter-block-items.js.map +1 -1
  772. package/build/utils/parse-css-unit-to-px.js +3 -6
  773. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  774. package/build/utils/pasting.js +5 -8
  775. package/build/utils/pasting.js.map +1 -1
  776. package/build/utils/pre-parse-patterns.js +1 -1
  777. package/build/utils/pre-parse-patterns.js.map +1 -1
  778. package/build/utils/sorting.js +1 -2
  779. package/build/utils/sorting.js.map +1 -1
  780. package/build/utils/transform-styles/index.js +5 -7
  781. package/build/utils/transform-styles/index.js.map +1 -1
  782. package/build/utils/transform-styles/transforms/wrap.js +28 -31
  783. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  784. package/build-module/autocompleters/block.js +1 -3
  785. package/build-module/autocompleters/block.js.map +1 -1
  786. package/build-module/components/alignment-control/ui.js +9 -11
  787. package/build-module/components/alignment-control/ui.js.map +1 -1
  788. package/build-module/components/autocomplete/index.js +3 -4
  789. package/build-module/components/autocomplete/index.js.map +1 -1
  790. package/build-module/components/block-actions/index.js +8 -12
  791. package/build-module/components/block-actions/index.js.map +1 -1
  792. package/build-module/components/block-alignment-control/ui.js +17 -21
  793. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  794. package/build-module/components/block-alignment-control/ui.native.js +14 -17
  795. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  796. package/build-module/components/block-alignment-control/use-available-alignments.js +5 -10
  797. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  798. package/build-module/components/block-alignment-matrix-control/index.js +4 -6
  799. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  800. package/build-module/components/block-breadcrumb/index.js +3 -4
  801. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  802. package/build-module/components/block-caption/index.native.js +29 -34
  803. package/build-module/components/block-caption/index.native.js.map +1 -1
  804. package/build-module/components/block-card/index.js +7 -9
  805. package/build-module/components/block-card/index.js.map +1 -1
  806. package/build-module/components/block-compare/block-view.js +8 -9
  807. package/build-module/components/block-compare/block-view.js.map +1 -1
  808. package/build-module/components/block-compare/index.js +7 -9
  809. package/build-module/components/block-compare/index.js.map +1 -1
  810. package/build-module/components/block-context/index.js +4 -5
  811. package/build-module/components/block-context/index.js.map +1 -1
  812. package/build-module/components/block-controls/fill.js +17 -23
  813. package/build-module/components/block-controls/fill.js.map +1 -1
  814. package/build-module/components/block-controls/hook.js +1 -3
  815. package/build-module/components/block-controls/hook.js.map +1 -1
  816. package/build-module/components/block-controls/slot.js +29 -21
  817. package/build-module/components/block-controls/slot.js.map +1 -1
  818. package/build-module/components/block-controls/slot.native.js +8 -18
  819. package/build-module/components/block-controls/slot.native.js.map +1 -1
  820. package/build-module/components/block-draggable/draggable-chip.js +5 -7
  821. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  822. package/build-module/components/block-draggable/draggable-chip.native.js +3 -4
  823. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  824. package/build-module/components/block-draggable/dropping-insertion-point.native.js +6 -7
  825. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  826. package/build-module/components/block-draggable/index.js +16 -17
  827. package/build-module/components/block-draggable/index.js.map +1 -1
  828. package/build-module/components/block-draggable/index.native.js +43 -58
  829. package/build-module/components/block-draggable/index.native.js.map +1 -1
  830. package/build-module/components/block-edit/edit.js +1 -4
  831. package/build-module/components/block-edit/edit.js.map +1 -1
  832. package/build-module/components/block-edit/edit.native.js +1 -4
  833. package/build-module/components/block-edit/edit.native.js.map +1 -1
  834. package/build-module/components/block-edit-visually-button/index.js +3 -4
  835. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  836. package/build-module/components/block-full-height-alignment-control/index.js +6 -7
  837. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  838. package/build-module/components/block-icon/index.js +7 -11
  839. package/build-module/components/block-icon/index.js.map +1 -1
  840. package/build-module/components/block-icon/index.native.js +9 -13
  841. package/build-module/components/block-icon/index.native.js.map +1 -1
  842. package/build-module/components/block-inspector/index.js +36 -46
  843. package/build-module/components/block-inspector/index.js.map +1 -1
  844. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  845. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  846. package/build-module/components/block-list/block-html.js +3 -4
  847. package/build-module/components/block-list/block-html.js.map +1 -1
  848. package/build-module/components/block-list/block-invalid-warning.js +3 -4
  849. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  850. package/build-module/components/block-list/block-invalid-warning.native.js +10 -15
  851. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  852. package/build-module/components/block-list/block-list-context.native.js +5 -11
  853. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  854. package/build-module/components/block-list/block-list-item-cell.native.js +5 -6
  855. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  856. package/build-module/components/block-list/block-list-item.native.js +17 -18
  857. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  858. package/build-module/components/block-list/block-outline.native.js +8 -9
  859. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  860. package/build-module/components/block-list/block-selection-button.native.js +10 -12
  861. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  862. package/build-module/components/block-list/block.js +39 -46
  863. package/build-module/components/block-list/block.js.map +1 -1
  864. package/build-module/components/block-list/block.native.js +55 -68
  865. package/build-module/components/block-list/block.native.js.map +1 -1
  866. package/build-module/components/block-list/index.js +12 -15
  867. package/build-module/components/block-list/index.js.map +1 -1
  868. package/build-module/components/block-list/index.native.js +77 -86
  869. package/build-module/components/block-list/index.native.js.map +1 -1
  870. package/build-module/components/block-list/insertion-point.native.js +4 -5
  871. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  872. package/build-module/components/block-list/layout.js +6 -9
  873. package/build-module/components/block-list/layout.js.map +1 -1
  874. package/build-module/components/block-list/subdirectory-icon.js +10 -13
  875. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  876. package/build-module/components/block-list/use-block-props/index.js +14 -11
  877. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  878. package/build-module/components/block-list/use-block-props/index.native.js +1 -2
  879. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  880. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js +2 -2
  881. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  882. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js +1 -1
  883. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  884. package/build-module/components/block-list/use-in-between-inserter.js +1 -3
  885. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  886. package/build-module/components/block-list-appender/index.js +15 -15
  887. package/build-module/components/block-list-appender/index.js.map +1 -1
  888. package/build-module/components/block-list-appender/index.native.js +9 -11
  889. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  890. package/build-module/components/block-lock/menu-item.js +3 -4
  891. package/build-module/components/block-lock/menu-item.js.map +1 -1
  892. package/build-module/components/block-lock/modal.js +6 -9
  893. package/build-module/components/block-lock/modal.js.map +1 -1
  894. package/build-module/components/block-lock/toolbar.js +5 -10
  895. package/build-module/components/block-lock/toolbar.js.map +1 -1
  896. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +49 -67
  897. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  898. package/build-module/components/block-mobile-toolbar/index.native.js +26 -34
  899. package/build-module/components/block-mobile-toolbar/index.native.js.map +1 -1
  900. package/build-module/components/block-mover/button.js +6 -7
  901. package/build-module/components/block-mover/button.js.map +1 -1
  902. package/build-module/components/block-mover/index.js +5 -8
  903. package/build-module/components/block-mover/index.js.map +1 -1
  904. package/build-module/components/block-mover/index.native.js +23 -46
  905. package/build-module/components/block-mover/index.native.js.map +1 -1
  906. package/build-module/components/block-mover/mover-description.native.js +7 -10
  907. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  908. package/build-module/components/block-navigation/dropdown.js +20 -25
  909. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  910. package/build-module/components/block-parent-selector/index.js +2 -2
  911. package/build-module/components/block-parent-selector/index.js.map +1 -1
  912. package/build-module/components/block-pattern-setup/index.js +27 -31
  913. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  914. package/build-module/components/block-pattern-setup/setup-toolbar.js +35 -42
  915. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  916. package/build-module/components/block-patterns-list/index.js +71 -78
  917. package/build-module/components/block-patterns-list/index.js.map +1 -1
  918. package/build-module/components/block-popover/drop-zone.js +4 -5
  919. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  920. package/build-module/components/block-popover/inbetween.js +10 -15
  921. package/build-module/components/block-popover/inbetween.js.map +1 -1
  922. package/build-module/components/block-popover/index.js +14 -15
  923. package/build-module/components/block-popover/index.js.map +1 -1
  924. package/build-module/components/block-preview/auto.js +6 -8
  925. package/build-module/components/block-preview/auto.js.map +1 -1
  926. package/build-module/components/block-preview/index.js +15 -18
  927. package/build-module/components/block-preview/index.js.map +1 -1
  928. package/build-module/components/block-settings/button.native.js +7 -10
  929. package/build-module/components/block-settings/button.native.js.map +1 -1
  930. package/build-module/components/block-settings-menu/block-convert-button.js +5 -7
  931. package/build-module/components/block-settings-menu/block-convert-button.js.map +1 -1
  932. package/build-module/components/block-settings-menu/block-html-convert-button.js +10 -14
  933. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  934. package/build-module/components/block-settings-menu/block-mode-toggle.js +19 -25
  935. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  936. package/build-module/components/block-settings-menu/block-settings-dropdown.js +135 -113
  937. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  938. package/build-module/components/block-settings-menu/index.js +4 -5
  939. package/build-module/components/block-settings-menu/index.js.map +1 -1
  940. package/build-module/components/block-settings-menu-controls/index.js +14 -16
  941. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  942. package/build-module/components/block-styles/index.js +6 -7
  943. package/build-module/components/block-styles/index.js.map +1 -1
  944. package/build-module/components/block-styles/index.native.js +5 -7
  945. package/build-module/components/block-styles/index.native.js.map +1 -1
  946. package/build-module/components/block-styles/menu-items.js +4 -5
  947. package/build-module/components/block-styles/menu-items.js.map +1 -1
  948. package/build-module/components/block-styles/preview-panel.js +7 -10
  949. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  950. package/build-module/components/block-styles/preview.native.js +6 -7
  951. package/build-module/components/block-styles/preview.native.js.map +1 -1
  952. package/build-module/components/block-styles/use-styles-for-block.js +7 -9
  953. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  954. package/build-module/components/block-styles/utils.js +4 -7
  955. package/build-module/components/block-styles/utils.js.map +1 -1
  956. package/build-module/components/block-switcher/block-styles-menu.js +4 -5
  957. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  958. package/build-module/components/block-switcher/block-transformations-menu.js +24 -29
  959. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  960. package/build-module/components/block-switcher/block-transformations-menu.native.js +9 -10
  961. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  962. package/build-module/components/block-switcher/block-variation-transformations.js +21 -30
  963. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  964. package/build-module/components/block-switcher/index.js +47 -60
  965. package/build-module/components/block-switcher/index.js.map +1 -1
  966. package/build-module/components/block-switcher/pattern-transformations-menu.js +18 -22
  967. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  968. package/build-module/components/block-switcher/preview-block-popover.js +3 -4
  969. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  970. package/build-module/components/block-switcher/utils.js +2 -3
  971. package/build-module/components/block-switcher/utils.js.map +1 -1
  972. package/build-module/components/block-title/index.js +5 -6
  973. package/build-module/components/block-title/index.js.map +1 -1
  974. package/build-module/components/block-title/use-block-display-title.js +5 -6
  975. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  976. package/build-module/components/block-toolbar/index.js +4 -5
  977. package/build-module/components/block-toolbar/index.js.map +1 -1
  978. package/build-module/components/block-toolbar/utils.js +14 -16
  979. package/build-module/components/block-toolbar/utils.js.map +1 -1
  980. package/build-module/components/block-tools/back-compat.js +3 -4
  981. package/build-module/components/block-tools/back-compat.js.map +1 -1
  982. package/build-module/components/block-tools/block-contextual-toolbar.js +5 -6
  983. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  984. package/build-module/components/block-tools/block-selection-button.js +6 -9
  985. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  986. package/build-module/components/block-tools/index.js +6 -7
  987. package/build-module/components/block-tools/index.js.map +1 -1
  988. package/build-module/components/block-tools/insertion-point.js +7 -10
  989. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  990. package/build-module/components/block-tools/selected-block-popover.js +19 -20
  991. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  992. package/build-module/components/block-tools/use-block-toolbar-popover-props.js +9 -14
  993. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  994. package/build-module/components/block-tools/zoom-out-mode-inserters.js +3 -4
  995. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  996. package/build-module/components/block-types-list/index.js +8 -9
  997. package/build-module/components/block-types-list/index.js.map +1 -1
  998. package/build-module/components/block-types-list/index.native.js +22 -27
  999. package/build-module/components/block-types-list/index.native.js.map +1 -1
  1000. package/build-module/components/block-variation-picker/index.js +8 -9
  1001. package/build-module/components/block-variation-picker/index.js.map +1 -1
  1002. package/build-module/components/block-variation-picker/index.native.js +7 -9
  1003. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  1004. package/build-module/components/block-variation-transforms/index.js +30 -41
  1005. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  1006. package/build-module/components/block-vertical-alignment-control/ui.js +7 -9
  1007. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  1008. package/build-module/components/border-radius-control/all-input-control.js +7 -8
  1009. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  1010. package/build-module/components/border-radius-control/index.js +9 -10
  1011. package/build-module/components/border-radius-control/index.js.map +1 -1
  1012. package/build-module/components/border-radius-control/input-controls.js +8 -11
  1013. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  1014. package/build-module/components/border-radius-control/linked-button.js +4 -5
  1015. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  1016. package/build-module/components/border-radius-control/utils.js +3 -7
  1017. package/build-module/components/border-radius-control/utils.js.map +1 -1
  1018. package/build-module/components/button-block-appender/index.js +13 -15
  1019. package/build-module/components/button-block-appender/index.js.map +1 -1
  1020. package/build-module/components/button-block-appender/index.native.js +25 -29
  1021. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  1022. package/build-module/components/caption/index.native.js +40 -43
  1023. package/build-module/components/caption/index.native.js.map +1 -1
  1024. package/build-module/components/child-layout-control/index.js +5 -6
  1025. package/build-module/components/child-layout-control/index.js.map +1 -1
  1026. package/build-module/components/color-palette/control.js +5 -6
  1027. package/build-module/components/color-palette/control.js.map +1 -1
  1028. package/build-module/components/color-palette/with-color-context.js +1 -6
  1029. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  1030. package/build-module/components/color-style-selector/index.js +28 -35
  1031. package/build-module/components/color-style-selector/index.js.map +1 -1
  1032. package/build-module/components/colors/utils.js +5 -8
  1033. package/build-module/components/colors/utils.js.map +1 -1
  1034. package/build-module/components/colors/with-colors.js +9 -24
  1035. package/build-module/components/colors/with-colors.js.map +1 -1
  1036. package/build-module/components/colors-gradients/control.js +19 -21
  1037. package/build-module/components/colors-gradients/control.js.map +1 -1
  1038. package/build-module/components/colors-gradients/dropdown.js +32 -39
  1039. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  1040. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +20 -24
  1041. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  1042. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +27 -31
  1043. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  1044. package/build-module/components/contrast-checker/index.js +12 -13
  1045. package/build-module/components/contrast-checker/index.js.map +1 -1
  1046. package/build-module/components/contrast-checker/index.native.js +16 -18
  1047. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  1048. package/build-module/components/convert-to-group-buttons/index.js +9 -10
  1049. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  1050. package/build-module/components/convert-to-group-buttons/index.native.js +6 -7
  1051. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  1052. package/build-module/components/convert-to-group-buttons/toolbar.js +6 -12
  1053. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  1054. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +4 -6
  1055. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  1056. package/build-module/components/copy-handler/index.js +4 -7
  1057. package/build-module/components/copy-handler/index.js.map +1 -1
  1058. package/build-module/components/date-format-picker/index.js +12 -16
  1059. package/build-module/components/date-format-picker/index.js.map +1 -1
  1060. package/build-module/components/default-block-appender/index.js +7 -9
  1061. package/build-module/components/default-block-appender/index.js.map +1 -1
  1062. package/build-module/components/default-block-appender/index.native.js +8 -10
  1063. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  1064. package/build-module/components/default-style-picker/index.js +14 -22
  1065. package/build-module/components/default-style-picker/index.js.map +1 -1
  1066. package/build-module/components/duotone/components.js +14 -18
  1067. package/build-module/components/duotone/components.js.map +1 -1
  1068. package/build-module/components/duotone/utils.js +1 -2
  1069. package/build-module/components/duotone/utils.js.map +1 -1
  1070. package/build-module/components/duotone-control/index.js +12 -15
  1071. package/build-module/components/duotone-control/index.js.map +1 -1
  1072. package/build-module/components/editable-text/index.js +5 -6
  1073. package/build-module/components/editable-text/index.js.map +1 -1
  1074. package/build-module/components/editor-styles/index.js +4 -5
  1075. package/build-module/components/editor-styles/index.js.map +1 -1
  1076. package/build-module/components/floating-toolbar/index.native.js +7 -8
  1077. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  1078. package/build-module/components/font-appearance-control/index.js +19 -26
  1079. package/build-module/components/font-appearance-control/index.js.map +1 -1
  1080. package/build-module/components/font-family/index.js +10 -12
  1081. package/build-module/components/font-family/index.js.map +1 -1
  1082. package/build-module/components/font-sizes/fluid-utils.js +17 -21
  1083. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  1084. package/build-module/components/font-sizes/utils.js +6 -12
  1085. package/build-module/components/font-sizes/utils.js.map +1 -1
  1086. package/build-module/components/font-sizes/with-font-sizes.js +11 -30
  1087. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  1088. package/build-module/components/global-styles/advanced-panel.js +7 -10
  1089. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  1090. package/build-module/components/global-styles/border-panel.js +45 -78
  1091. package/build-module/components/global-styles/border-panel.js.map +1 -1
  1092. package/build-module/components/global-styles/color-panel.js +104 -147
  1093. package/build-module/components/global-styles/color-panel.js.map +1 -1
  1094. package/build-module/components/global-styles/color-panel.native.js +25 -42
  1095. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  1096. package/build-module/components/global-styles/dimensions-panel.js +78 -109
  1097. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  1098. package/build-module/components/global-styles/effects-panel.js +58 -72
  1099. package/build-module/components/global-styles/effects-panel.js.map +1 -1
  1100. package/build-module/components/global-styles/filters-panel.js +53 -71
  1101. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  1102. package/build-module/components/global-styles/get-block-css-selector.js +5 -8
  1103. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  1104. package/build-module/components/global-styles/hooks.js +22 -37
  1105. package/build-module/components/global-styles/hooks.js.map +1 -1
  1106. package/build-module/components/global-styles/typography-panel.js +69 -125
  1107. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1108. package/build-module/components/global-styles/typography-utils.js +48 -26
  1109. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  1110. package/build-module/components/global-styles/use-global-styles-output.js +142 -237
  1111. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1112. package/build-module/components/global-styles/utils.js +12 -28
  1113. package/build-module/components/global-styles/utils.js.map +1 -1
  1114. package/build-module/components/gradients/use-gradient.js +6 -7
  1115. package/build-module/components/gradients/use-gradient.js.map +1 -1
  1116. package/build-module/components/height-control/index.js +9 -10
  1117. package/build-module/components/height-control/index.js.map +1 -1
  1118. package/build-module/components/iframe/index.js +51 -86
  1119. package/build-module/components/iframe/index.js.map +1 -1
  1120. package/build-module/components/iframe/use-compatibility-styles.js +29 -20
  1121. package/build-module/components/iframe/use-compatibility-styles.js.map +1 -1
  1122. package/build-module/components/image-editor/aspect-ratio-dropdown.js +83 -91
  1123. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1124. package/build-module/components/image-editor/context.js +9 -10
  1125. package/build-module/components/image-editor/context.js.map +1 -1
  1126. package/build-module/components/image-editor/cropper.js +11 -12
  1127. package/build-module/components/image-editor/cropper.js.map +1 -1
  1128. package/build-module/components/image-editor/index.js +12 -13
  1129. package/build-module/components/image-editor/index.js.map +1 -1
  1130. package/build-module/components/image-editor/use-save-image.js +11 -12
  1131. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  1132. package/build-module/components/image-editor/use-transform-image.js +5 -6
  1133. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  1134. package/build-module/components/image-editor/zoom-dropdown.js +10 -13
  1135. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1136. package/build-module/components/image-size-control/index.js +12 -13
  1137. package/build-module/components/image-size-control/index.js.map +1 -1
  1138. package/build-module/components/inner-blocks/button-block-appender.js +7 -8
  1139. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1140. package/build-module/components/inner-blocks/default-block-appender.js +6 -8
  1141. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1142. package/build-module/components/inner-blocks/index.js +2 -6
  1143. package/build-module/components/inner-blocks/index.js.map +1 -1
  1144. package/build-module/components/inner-blocks/index.native.js +1 -3
  1145. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1146. package/build-module/components/inner-blocks/use-block-context.js +1 -4
  1147. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1148. package/build-module/components/inner-blocks/use-nested-settings-update.js +2 -4
  1149. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1150. package/build-module/components/inserter/block-patterns-explorer/explorer.js +9 -11
  1151. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  1152. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +11 -18
  1153. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  1154. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +20 -24
  1155. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  1156. package/build-module/components/inserter/block-patterns-tab.js +29 -40
  1157. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  1158. package/build-module/components/inserter/block-types-tab.js +7 -9
  1159. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1160. package/build-module/components/inserter/block-types-tab.native.js +8 -9
  1161. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1162. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +3 -5
  1163. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1164. package/build-module/components/inserter/hooks/use-block-types-state.js +5 -6
  1165. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1166. package/build-module/components/inserter/hooks/use-clipboard-block.native.js +2 -2
  1167. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1168. package/build-module/components/inserter/hooks/use-debounced-input.js +1 -2
  1169. package/build-module/components/inserter/hooks/use-debounced-input.js.map +1 -1
  1170. package/build-module/components/inserter/hooks/use-insertion-point.js +10 -12
  1171. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1172. package/build-module/components/inserter/index.js +37 -51
  1173. package/build-module/components/inserter/index.js.map +1 -1
  1174. package/build-module/components/inserter/index.native.js +24 -31
  1175. package/build-module/components/inserter/index.native.js.map +1 -1
  1176. package/build-module/components/inserter/library.js +11 -12
  1177. package/build-module/components/inserter/library.js.map +1 -1
  1178. package/build-module/components/inserter/media-tab/hooks.js +2 -5
  1179. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1180. package/build-module/components/inserter/media-tab/media-list.js +6 -7
  1181. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1182. package/build-module/components/inserter/media-tab/media-panel.js +12 -14
  1183. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1184. package/build-module/components/inserter/media-tab/media-preview.js +47 -58
  1185. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1186. package/build-module/components/inserter/media-tab/media-tab.js +24 -28
  1187. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1188. package/build-module/components/inserter/media-tab/utils.js +3 -5
  1189. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1190. package/build-module/components/inserter/menu.js +15 -19
  1191. package/build-module/components/inserter/menu.js.map +1 -1
  1192. package/build-module/components/inserter/menu.native.js +27 -31
  1193. package/build-module/components/inserter/menu.native.js.map +1 -1
  1194. package/build-module/components/inserter/mobile-tab-navigation.js +7 -9
  1195. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1196. package/build-module/components/inserter/panel.js +5 -6
  1197. package/build-module/components/inserter/panel.js.map +1 -1
  1198. package/build-module/components/inserter/preview-panel.js +4 -5
  1199. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1200. package/build-module/components/inserter/quick-inserter.js +8 -9
  1201. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1202. package/build-module/components/inserter/reusable-blocks-tab.js +13 -18
  1203. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  1204. package/build-module/components/inserter/reusable-blocks-tab.native.js +5 -6
  1205. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1206. package/build-module/components/inserter/search-items.js +12 -40
  1207. package/build-module/components/inserter/search-items.js.map +1 -1
  1208. package/build-module/components/inserter/search-results.js +17 -18
  1209. package/build-module/components/inserter/search-results.js.map +1 -1
  1210. package/build-module/components/inserter/search-results.native.js +11 -12
  1211. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1212. package/build-module/components/inserter/tabs.js +8 -9
  1213. package/build-module/components/inserter/tabs.js.map +1 -1
  1214. package/build-module/components/inserter/tabs.native.js +37 -55
  1215. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1216. package/build-module/components/inserter/utils.native.js +13 -17
  1217. package/build-module/components/inserter/utils.native.js.map +1 -1
  1218. package/build-module/components/inserter-draggable-blocks/index.js +11 -13
  1219. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1220. package/build-module/components/inserter-list-item/index.js +65 -69
  1221. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1222. package/build-module/components/inserter-listbox/index.js +3 -4
  1223. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1224. package/build-module/components/inserter-listbox/item.js +6 -7
  1225. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1226. package/build-module/components/inspector-controls/block-support-slot-container.js +4 -5
  1227. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1228. package/build-module/components/inspector-controls/block-support-tools-panel.js +6 -8
  1229. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1230. package/build-module/components/inspector-controls/fill.js +13 -23
  1231. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1232. package/build-module/components/inspector-controls/fill.native.js +7 -11
  1233. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1234. package/build-module/components/inspector-controls/slot.js +9 -13
  1235. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1236. package/build-module/components/inspector-controls/slot.native.js +6 -10
  1237. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1238. package/build-module/components/inspector-controls-tabs/index.js +6 -7
  1239. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1240. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  1241. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1242. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  1243. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1244. package/build-module/components/inspector-controls-tabs/settings-tab.js +3 -6
  1245. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1246. package/build-module/components/inspector-controls-tabs/styles-tab.js +5 -6
  1247. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1248. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +1 -3
  1249. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1250. package/build-module/components/inspector-popover-header/index.js +18 -22
  1251. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1252. package/build-module/components/justify-content-control/ui.js +8 -10
  1253. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1254. package/build-module/components/letter-spacing-control/index.js +6 -7
  1255. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1256. package/build-module/components/line-height-control/index.js +13 -18
  1257. package/build-module/components/line-height-control/index.js.map +1 -1
  1258. package/build-module/components/line-height-control/index.native.js +4 -5
  1259. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1260. package/build-module/components/link-control/index.js +83 -64
  1261. package/build-module/components/link-control/index.js.map +1 -1
  1262. package/build-module/components/link-control/is-url-like.js +32 -3
  1263. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1264. package/build-module/components/link-control/link-preview.js +24 -27
  1265. package/build-module/components/link-control/link-preview.js.map +1 -1
  1266. package/build-module/components/link-control/search-create-button.js +7 -9
  1267. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1268. package/build-module/components/link-control/search-input.js +22 -27
  1269. package/build-module/components/link-control/search-input.js.map +1 -1
  1270. package/build-module/components/link-control/search-item.js +13 -15
  1271. package/build-module/components/link-control/search-item.js.map +1 -1
  1272. package/build-module/components/link-control/search-results.js +21 -27
  1273. package/build-module/components/link-control/search-results.js.map +1 -1
  1274. package/build-module/components/link-control/settings-drawer.js +7 -33
  1275. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1276. package/build-module/components/link-control/settings.js +7 -9
  1277. package/build-module/components/link-control/settings.js.map +1 -1
  1278. package/build-module/components/link-control/use-internal-value.js +46 -0
  1279. package/build-module/components/link-control/use-internal-value.js.map +1 -0
  1280. package/build-module/components/link-control/use-rich-url-data.js +1 -1
  1281. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1282. package/build-module/components/link-control/use-search-handler.js +10 -23
  1283. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1284. package/build-module/components/list-view/appender.js +11 -12
  1285. package/build-module/components/list-view/appender.js.map +1 -1
  1286. package/build-module/components/list-view/aria-referenced-text.js +35 -0
  1287. package/build-module/components/list-view/aria-referenced-text.js.map +1 -0
  1288. package/build-module/components/list-view/block-contents.js +38 -38
  1289. package/build-module/components/list-view/block-contents.js.map +1 -1
  1290. package/build-module/components/list-view/block-select-button.js +65 -22
  1291. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1292. package/build-module/components/list-view/block.js +117 -101
  1293. package/build-module/components/list-view/block.js.map +1 -1
  1294. package/build-module/components/list-view/branch.js +5 -5
  1295. package/build-module/components/list-view/branch.js.map +1 -1
  1296. package/build-module/components/list-view/drop-indicator.js +4 -5
  1297. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1298. package/build-module/components/list-view/expander.js +3 -4
  1299. package/build-module/components/list-view/expander.js.map +1 -1
  1300. package/build-module/components/list-view/index.js +46 -43
  1301. package/build-module/components/list-view/index.js.map +1 -1
  1302. package/build-module/components/list-view/leaf.js +10 -11
  1303. package/build-module/components/list-view/leaf.js.map +1 -1
  1304. package/build-module/components/list-view/use-block-selection.js +4 -6
  1305. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1306. package/build-module/components/list-view/use-list-view-client-ids.js +9 -12
  1307. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1308. package/build-module/components/list-view/use-list-view-drop-zone.js +25 -13
  1309. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1310. package/build-module/components/list-view/use-list-view-expand-selected-item.js +4 -5
  1311. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1312. package/build-module/components/list-view/use-list-view-scroll-into-view.js +5 -6
  1313. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1314. package/build-module/components/media-placeholder/index.js +71 -92
  1315. package/build-module/components/media-placeholder/index.js.map +1 -1
  1316. package/build-module/components/media-placeholder/index.native.js +5 -6
  1317. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1318. package/build-module/components/media-replace-flow/index.js +94 -107
  1319. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1320. package/build-module/components/media-upload/check.js +4 -5
  1321. package/build-module/components/media-upload/check.js.map +1 -1
  1322. package/build-module/components/media-upload/index.native.js +1 -1
  1323. package/build-module/components/media-upload/index.native.js.map +1 -1
  1324. package/build-module/components/multi-selection-inspector/index.js +3 -4
  1325. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1326. package/build-module/components/navigable-toolbar/index.js +16 -15
  1327. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1328. package/build-module/components/observe-typing/index.js +3 -4
  1329. package/build-module/components/observe-typing/index.js.map +1 -1
  1330. package/build-module/components/panel-color-settings/index.js +4 -5
  1331. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1332. package/build-module/components/plain-text/index.js +4 -6
  1333. package/build-module/components/plain-text/index.js.map +1 -1
  1334. package/build-module/components/plain-text/index.native.js +8 -14
  1335. package/build-module/components/plain-text/index.native.js.map +1 -1
  1336. package/build-module/components/preview-options/index.js +8 -9
  1337. package/build-module/components/preview-options/index.js.map +1 -1
  1338. package/build-module/components/provider/block-refs-provider.js +3 -4
  1339. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1340. package/build-module/components/provider/use-block-sync.js +7 -8
  1341. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1342. package/build-module/components/provider/with-registry-provider.js +5 -7
  1343. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1344. package/build-module/components/publish-date-time-picker/index.js +6 -7
  1345. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1346. package/build-module/components/recursion-provider/index.js +7 -11
  1347. package/build-module/components/recursion-provider/index.js.map +1 -1
  1348. package/build-module/components/resizable-box-popover/index.js +5 -6
  1349. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1350. package/build-module/components/responsive-block-control/label.js +5 -6
  1351. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1352. package/build-module/components/rich-text/embed-handler-picker.native.js +6 -10
  1353. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1354. package/build-module/components/rich-text/format-edit.js +7 -8
  1355. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1356. package/build-module/components/rich-text/format-toolbar/index.js +9 -18
  1357. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1358. package/build-module/components/rich-text/format-toolbar-container.js +13 -16
  1359. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1360. package/build-module/components/rich-text/index.js +43 -47
  1361. package/build-module/components/rich-text/index.js.map +1 -1
  1362. package/build-module/components/rich-text/index.native.js +130 -157
  1363. package/build-module/components/rich-text/index.native.js.map +1 -1
  1364. package/build-module/components/rich-text/input-event.js +4 -5
  1365. package/build-module/components/rich-text/input-event.js.map +1 -1
  1366. package/build-module/components/rich-text/shortcut.js +5 -6
  1367. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1368. package/build-module/components/rich-text/split-value.js +8 -10
  1369. package/build-module/components/rich-text/split-value.js.map +1 -1
  1370. package/build-module/components/rich-text/toolbar-button.js +6 -7
  1371. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1372. package/build-module/components/rich-text/use-before-input-rules.js +1 -4
  1373. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1374. package/build-module/components/rich-text/use-enter.js +3 -6
  1375. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1376. package/build-module/components/rich-text/use-firefox-compat.js +29 -1
  1377. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1378. package/build-module/components/rich-text/use-format-types.js +11 -17
  1379. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1380. package/build-module/components/rich-text/use-input-rules.js +9 -15
  1381. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1382. package/build-module/components/rich-text/use-mark-persistent.js +4 -5
  1383. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1384. package/build-module/components/rich-text/use-paste-handler.js +5 -7
  1385. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1386. package/build-module/components/rich-text/utils.js +5 -7
  1387. package/build-module/components/rich-text/utils.js.map +1 -1
  1388. package/build-module/components/skip-to-selected-block/index.js +3 -4
  1389. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1390. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +27 -0
  1391. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -0
  1392. package/build-module/components/spacing-sizes-control/index.js +62 -63
  1393. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1394. package/build-module/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +21 -22
  1395. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -0
  1396. package/build-module/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +21 -21
  1397. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -0
  1398. package/build-module/components/spacing-sizes-control/input-controls/single.js +40 -0
  1399. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -0
  1400. package/build-module/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +53 -70
  1401. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -0
  1402. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +73 -0
  1403. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -0
  1404. package/build-module/components/spacing-sizes-control/utils.js +196 -25
  1405. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1406. package/build-module/components/text-decoration-control/index.js +5 -6
  1407. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1408. package/build-module/components/text-transform-control/index.js +5 -6
  1409. package/build-module/components/text-transform-control/index.js.map +1 -1
  1410. package/build-module/components/tool-selector/index.js +13 -16
  1411. package/build-module/components/tool-selector/index.js.map +1 -1
  1412. package/build-module/components/typewriter/index.js +6 -9
  1413. package/build-module/components/typewriter/index.js.map +1 -1
  1414. package/build-module/components/ungroup-button/index.native.js +11 -14
  1415. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1416. package/build-module/components/unit-control/index.js +4 -5
  1417. package/build-module/components/unit-control/index.js.map +1 -1
  1418. package/build-module/components/url-input/index.js +15 -26
  1419. package/build-module/components/url-input/index.js.map +1 -1
  1420. package/build-module/components/url-input/index.native.js +6 -8
  1421. package/build-module/components/url-input/index.native.js.map +1 -1
  1422. package/build-module/components/url-popover/image-url-input-ui.js +12 -15
  1423. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1424. package/build-module/components/url-popover/index.js +12 -14
  1425. package/build-module/components/url-popover/index.js.map +1 -1
  1426. package/build-module/components/url-popover/link-editor.js +7 -8
  1427. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1428. package/build-module/components/url-popover/link-viewer-url.js +5 -6
  1429. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1430. package/build-module/components/url-popover/link-viewer.js +8 -9
  1431. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1432. package/build-module/components/use-block-display-information/index.js +2 -2
  1433. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1434. package/build-module/components/use-block-drop-zone/index.js +16 -23
  1435. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1436. package/build-module/components/use-block-drop-zone/index.native.js +8 -11
  1437. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1438. package/build-module/components/use-moving-animation/index.js +9 -12
  1439. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1440. package/build-module/components/use-on-block-drop/index.js +2 -6
  1441. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1442. package/build-module/components/use-on-block-drop/index.native.js +8 -10
  1443. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  1444. package/build-module/components/use-paste-styles/index.js +2 -6
  1445. package/build-module/components/use-paste-styles/index.js.map +1 -1
  1446. package/build-module/components/warning/index.js +6 -7
  1447. package/build-module/components/warning/index.js.map +1 -1
  1448. package/build-module/components/warning/index.native.js +9 -10
  1449. package/build-module/components/warning/index.native.js.map +1 -1
  1450. package/build-module/components/writing-flow/index.js +4 -5
  1451. package/build-module/components/writing-flow/index.js.map +1 -1
  1452. package/build-module/components/writing-flow/use-drag-selection.js +4 -6
  1453. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  1454. package/build-module/components/writing-flow/use-tab-nav.js +9 -6
  1455. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  1456. package/build-module/hooks/align.js +7 -14
  1457. package/build-module/hooks/align.js.map +1 -1
  1458. package/build-module/hooks/anchor.js +5 -3
  1459. package/build-module/hooks/anchor.js.map +1 -1
  1460. package/build-module/hooks/aria-label.js +1 -3
  1461. package/build-module/hooks/aria-label.js.map +1 -1
  1462. package/build-module/hooks/behaviors.js +90 -58
  1463. package/build-module/hooks/behaviors.js.map +1 -1
  1464. package/build-module/hooks/border.js +25 -38
  1465. package/build-module/hooks/border.js.map +1 -1
  1466. package/build-module/hooks/color.js +22 -37
  1467. package/build-module/hooks/color.js.map +1 -1
  1468. package/build-module/hooks/content-lock-ui.js +23 -27
  1469. package/build-module/hooks/content-lock-ui.js.map +1 -1
  1470. package/build-module/hooks/contrast-checker.js +4 -7
  1471. package/build-module/hooks/contrast-checker.js.map +1 -1
  1472. package/build-module/hooks/custom-class-name.js +4 -4
  1473. package/build-module/hooks/custom-class-name.js.map +1 -1
  1474. package/build-module/hooks/dimensions.js +6 -9
  1475. package/build-module/hooks/dimensions.js.map +1 -1
  1476. package/build-module/hooks/duotone.js +32 -44
  1477. package/build-module/hooks/duotone.js.map +1 -1
  1478. package/build-module/hooks/font-family.js +5 -6
  1479. package/build-module/hooks/font-family.js.map +1 -1
  1480. package/build-module/hooks/font-size.js +14 -21
  1481. package/build-module/hooks/font-size.js.map +1 -1
  1482. package/build-module/hooks/gap.js +5 -6
  1483. package/build-module/hooks/gap.js.map +1 -1
  1484. package/build-module/hooks/layout.js +42 -59
  1485. package/build-module/hooks/layout.js.map +1 -1
  1486. package/build-module/hooks/line-height.js +5 -8
  1487. package/build-module/hooks/line-height.js.map +1 -1
  1488. package/build-module/hooks/lock.js +2 -2
  1489. package/build-module/hooks/lock.js.map +1 -1
  1490. package/build-module/hooks/margin.js +6 -9
  1491. package/build-module/hooks/margin.js.map +1 -1
  1492. package/build-module/hooks/metadata-name.js +4 -5
  1493. package/build-module/hooks/metadata-name.js.map +1 -1
  1494. package/build-module/hooks/metadata.js +3 -7
  1495. package/build-module/hooks/metadata.js.map +1 -1
  1496. package/build-module/hooks/padding.js +6 -9
  1497. package/build-module/hooks/padding.js.map +1 -1
  1498. package/build-module/hooks/position.js +26 -40
  1499. package/build-module/hooks/position.js.map +1 -1
  1500. package/build-module/hooks/settings.js +1 -3
  1501. package/build-module/hooks/settings.js.map +1 -1
  1502. package/build-module/hooks/style.js +11 -19
  1503. package/build-module/hooks/style.js.map +1 -1
  1504. package/build-module/hooks/supports.js +3 -5
  1505. package/build-module/hooks/supports.js.map +1 -1
  1506. package/build-module/hooks/typography.js +18 -27
  1507. package/build-module/hooks/typography.js.map +1 -1
  1508. package/build-module/hooks/typography.native.js +1 -2
  1509. package/build-module/hooks/typography.native.js.map +1 -1
  1510. package/build-module/hooks/use-border-props.js +1 -3
  1511. package/build-module/hooks/use-border-props.js.map +1 -1
  1512. package/build-module/hooks/use-color-props.js +6 -8
  1513. package/build-module/hooks/use-color-props.js.map +1 -1
  1514. package/build-module/hooks/use-editor-wrapper-styles.native.js +34 -39
  1515. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1516. package/build-module/hooks/use-spacing-props.js +1 -1
  1517. package/build-module/hooks/use-spacing-props.js.map +1 -1
  1518. package/build-module/hooks/use-typography-props.js +8 -12
  1519. package/build-module/hooks/use-typography-props.js.map +1 -1
  1520. package/build-module/hooks/utils.js +7 -19
  1521. package/build-module/hooks/utils.js.map +1 -1
  1522. package/build-module/layouts/constrained.js +22 -27
  1523. package/build-module/layouts/constrained.js.map +1 -1
  1524. package/build-module/layouts/flex.js +43 -54
  1525. package/build-module/layouts/flex.js.map +1 -1
  1526. package/build-module/layouts/flow.js +10 -13
  1527. package/build-module/layouts/flow.js.map +1 -1
  1528. package/build-module/layouts/grid.js +45 -25
  1529. package/build-module/layouts/grid.js.map +1 -1
  1530. package/build-module/layouts/index.js +1 -2
  1531. package/build-module/layouts/index.js.map +1 -1
  1532. package/build-module/layouts/utils.js +3 -9
  1533. package/build-module/layouts/utils.js.map +1 -1
  1534. package/build-module/store/actions.js +253 -336
  1535. package/build-module/store/actions.js.map +1 -1
  1536. package/build-module/store/array.js +1 -2
  1537. package/build-module/store/array.js.map +1 -1
  1538. package/build-module/store/private-actions.js +3 -7
  1539. package/build-module/store/private-actions.js.map +1 -1
  1540. package/build-module/store/private-selectors.js +40 -25
  1541. package/build-module/store/private-selectors.js.map +1 -1
  1542. package/build-module/store/reducer.js +67 -169
  1543. package/build-module/store/reducer.js.map +1 -1
  1544. package/build-module/store/selectors.js +144 -215
  1545. package/build-module/store/selectors.js.map +1 -1
  1546. package/build-module/utils/block-variation-transforms.js +4 -7
  1547. package/build-module/utils/block-variation-transforms.js.map +1 -1
  1548. package/build-module/utils/math.js +1 -2
  1549. package/build-module/utils/math.js.map +1 -1
  1550. package/build-module/utils/object.js +1 -4
  1551. package/build-module/utils/object.js.map +1 -1
  1552. package/build-module/utils/order-inserter-block-items.js +5 -7
  1553. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  1554. package/build-module/utils/parse-css-unit-to-px.js +3 -6
  1555. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  1556. package/build-module/utils/pasting.js +5 -8
  1557. package/build-module/utils/pasting.js.map +1 -1
  1558. package/build-module/utils/pre-parse-patterns.js +1 -1
  1559. package/build-module/utils/pre-parse-patterns.js.map +1 -1
  1560. package/build-module/utils/sorting.js +1 -2
  1561. package/build-module/utils/sorting.js.map +1 -1
  1562. package/build-module/utils/transform-styles/index.js +5 -7
  1563. package/build-module/utils/transform-styles/index.js.map +1 -1
  1564. package/build-module/utils/transform-styles/transforms/wrap.js +25 -28
  1565. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  1566. package/build-style/content-rtl.css +7 -10
  1567. package/build-style/content.css +7 -10
  1568. package/build-style/style-rtl.css +35 -101
  1569. package/build-style/style.css +35 -101
  1570. package/package.json +31 -31
  1571. package/src/components/block-controls/fill.js +15 -17
  1572. package/src/components/block-controls/slot.js +21 -18
  1573. package/src/components/block-controls/slot.native.js +3 -8
  1574. package/src/components/block-draggable/index.js +2 -1
  1575. package/src/components/block-edit/test/edit.js +1 -1
  1576. package/src/components/block-inspector/index.js +1 -0
  1577. package/src/components/block-list/content.scss +8 -12
  1578. package/src/components/block-list/use-block-props/index.js +6 -1
  1579. package/src/components/block-list-appender/index.js +4 -1
  1580. package/src/components/block-lock/toolbar.js +2 -8
  1581. package/src/components/block-settings-menu/block-settings-dropdown.js +81 -41
  1582. package/src/components/block-tools/selected-block-popover.js +6 -0
  1583. package/src/components/color-palette/test/__snapshots__/control.js.snap +66 -50
  1584. package/src/components/color-palette/with-color-context.js +2 -6
  1585. package/src/components/colors-gradients/control.js +3 -3
  1586. package/src/components/colors-gradients/panel-color-gradient-settings.js +4 -5
  1587. package/src/components/global-styles/dimensions-panel.js +14 -5
  1588. package/src/components/global-styles/get-block-css-selector.js +2 -2
  1589. package/src/components/global-styles/test/typography-utils.js +139 -1
  1590. package/src/components/global-styles/typography-utils.js +53 -28
  1591. package/src/components/global-styles/use-global-styles-output.js +18 -8
  1592. package/src/components/global-styles/utils.js +9 -3
  1593. package/src/components/iframe/index.js +46 -68
  1594. package/src/components/iframe/use-compatibility-styles.js +34 -18
  1595. package/src/components/inspector-controls/README.md +1 -1
  1596. package/src/components/inspector-controls/fill.js +2 -6
  1597. package/src/components/inspector-controls-tabs/index.js +0 -1
  1598. package/src/components/inspector-controls-tabs/use-inspector-controls-tabs.js +0 -1
  1599. package/src/components/link-control/index.js +71 -33
  1600. package/src/components/link-control/is-url-like.js +40 -3
  1601. package/src/components/link-control/search-results.js +4 -14
  1602. package/src/components/link-control/settings-drawer.js +2 -37
  1603. package/src/components/link-control/settings.js +2 -2
  1604. package/src/components/link-control/style.scss +5 -6
  1605. package/src/components/link-control/test/index.js +169 -61
  1606. package/src/components/link-control/test/is-url-like.js +66 -0
  1607. package/src/components/link-control/use-internal-value.js +60 -0
  1608. package/src/components/link-control/use-search-handler.js +10 -27
  1609. package/src/components/list-view/appender.js +3 -5
  1610. package/src/components/list-view/aria-referenced-text.js +30 -0
  1611. package/src/components/list-view/block-contents.js +9 -8
  1612. package/src/components/list-view/block-select-button.js +59 -1
  1613. package/src/components/list-view/block.js +40 -10
  1614. package/src/components/list-view/index.js +29 -19
  1615. package/src/components/list-view/style.scss +0 -5
  1616. package/src/components/list-view/test/use-list-view-drop-zone.js +38 -1
  1617. package/src/components/list-view/use-block-selection.js +2 -2
  1618. package/src/components/list-view/use-list-view-drop-zone.js +22 -4
  1619. package/src/components/media-replace-flow/test/index.js +1 -1
  1620. package/src/components/navigable-toolbar/index.js +7 -5
  1621. package/src/components/rich-text/index.js +1 -1
  1622. package/src/components/rich-text/use-firefox-compat.js +27 -1
  1623. package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +26 -0
  1624. package/src/components/spacing-sizes-control/index.js +85 -71
  1625. package/src/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +14 -13
  1626. package/src/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +15 -14
  1627. package/src/components/spacing-sizes-control/input-controls/single.js +40 -0
  1628. package/src/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +55 -80
  1629. package/src/components/spacing-sizes-control/sides-dropdown/index.js +91 -0
  1630. package/src/components/spacing-sizes-control/style.scss +28 -100
  1631. package/src/components/spacing-sizes-control/test/utils.js +233 -4
  1632. package/src/components/spacing-sizes-control/utils.js +203 -20
  1633. package/src/components/ungroup-button/index.native.js +2 -2
  1634. package/src/components/writing-flow/use-tab-nav.js +14 -3
  1635. package/src/hooks/anchor.js +3 -1
  1636. package/src/hooks/behaviors.js +116 -60
  1637. package/src/hooks/custom-class-name.js +23 -19
  1638. package/src/hooks/layout.js +4 -1
  1639. package/src/hooks/style.js +3 -1
  1640. package/src/hooks/utils.js +8 -7
  1641. package/src/layouts/grid.js +29 -3
  1642. package/src/store/private-selectors.js +54 -32
  1643. package/src/store/reducer.js +6 -8
  1644. package/src/store/selectors.js +31 -20
  1645. package/src/store/test/private-selectors.js +237 -62
  1646. package/src/store/test/reducer.js +0 -7
  1647. package/src/store/test/selectors.js +99 -0
  1648. package/build/components/link-control/use-internal-input-value.js +0 -27
  1649. package/build/components/link-control/use-internal-input-value.js.map +0 -1
  1650. package/build/components/spacing-sizes-control/all-input-control.js +0 -57
  1651. package/build/components/spacing-sizes-control/all-input-control.js.map +0 -1
  1652. package/build/components/spacing-sizes-control/axial-input-controls.js.map +0 -1
  1653. package/build/components/spacing-sizes-control/input-controls.js.map +0 -1
  1654. package/build/components/spacing-sizes-control/linked-button.js +0 -37
  1655. package/build/components/spacing-sizes-control/linked-button.js.map +0 -1
  1656. package/build/components/spacing-sizes-control/spacing-input-control.js.map +0 -1
  1657. package/build/components/ungroup-button/icon.js +0 -31
  1658. package/build/components/ungroup-button/icon.js.map +0 -1
  1659. package/build-module/components/link-control/use-internal-input-value.js +0 -19
  1660. package/build-module/components/link-control/use-internal-input-value.js.map +0 -1
  1661. package/build-module/components/spacing-sizes-control/all-input-control.js +0 -45
  1662. package/build-module/components/spacing-sizes-control/all-input-control.js.map +0 -1
  1663. package/build-module/components/spacing-sizes-control/axial-input-controls.js.map +0 -1
  1664. package/build-module/components/spacing-sizes-control/input-controls.js.map +0 -1
  1665. package/build-module/components/spacing-sizes-control/linked-button.js +0 -27
  1666. package/build-module/components/spacing-sizes-control/linked-button.js.map +0 -1
  1667. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +0 -1
  1668. package/build-module/components/ungroup-button/icon.js +0 -22
  1669. package/build-module/components/ungroup-button/icon.js.map +0 -1
  1670. package/src/components/link-control/use-internal-input-value.js +0 -23
  1671. package/src/components/spacing-sizes-control/all-input-control.js +0 -44
  1672. package/src/components/spacing-sizes-control/linked-button.js +0 -24
  1673. package/src/components/ungroup-button/icon.js +0 -26
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/index.native.js"],"names":["classnames","RawHTML","Platform","useRef","useCallback","forwardRef","useDispatch","useSelect","pasteHandler","children","childrenSource","getBlockTransforms","findTransform","isUnmodifiedDefaultBlock","useInstanceId","useMergeRefs","__experimentalRichText","RichText","__unstableCreateElement","isEmpty","__unstableIsEmptyLine","isEmptyLine","insert","__unstableInsertLineSeparator","insertLineSeparator","create","replace","split","__UNSTABLE_LINE_SEPARATOR","LINE_SEPARATOR","toHTMLString","slice","isURL","Autocomplete","useBlockEditContext","RemoveBrowserShortcuts","filePasteHandler","FormatToolbarContainer","store","blockEditorStore","addActiveFormats","getMultilineTag","getAllowedFormats","isShortcode","createLinkInParagraph","EmbedHandlerPicker","classes","RichTextWrapper","forwardedRef","tagName","start","reversed","value","originalValue","onChange","originalOnChange","isSelected","originalIsSelected","multiline","inlineToolbar","wrapperClassName","autocompleters","onReplace","placeholder","allowedFormats","withoutInteractiveFormatting","onRemove","onMerge","onSplit","__unstableOnSplitAtEnd","onSplitAtEnd","__unstableOnSplitMiddle","onSplitMiddle","identifier","preserveWhiteSpace","__unstablePastePlainText","pastePlainText","__unstableEmbedURLOnPaste","__unstableDisableFormats","disableFormats","disableLineBreaks","unstableOnFocus","__unstableAllowPrefixTransformations","__unstableMultilineRootTag","__unstableMobileNoFocusOnMount","deleteEnter","placeholderTextColor","textAlign","selectionColor","tagsToEliminate","disableEditingMenu","fontSize","fontFamily","fontWeight","fontStyle","minWidth","maxWidth","onBlur","setRef","disableSuggestions","disableAutocorrection","containerWidth","onEnter","onCustomEnter","props","instanceId","fallbackRef","clientId","blockIsSelected","embedHandlerPickerRef","selector","select","getSelectionStart","getSelectionEnd","getSettings","didAutomaticChange","getBlock","isMultiSelecting","hasMultiSelection","selectionStart","selectionEnd","__experimentalUndo","undo","undefined","attributeKey","extraProps","OS","block","shouldBlurOnUnmount","offset","disabled","__unstableMarkLastChangeAsPersistent","enterFormattedText","exitFormattedText","selectionChange","__unstableMarkAutomaticChange","multilineTag","adjustedAllowedFormats","hasFormats","length","adjustedValue","adjustedOnChange","Array","isArray","toHTML","newValue","fromDOM","document","childNodes","onSelectionChange","selectionChangeStart","selectionChangeEnd","onDelete","isReverse","splitValue","record","pastedBlocks","blocks","before","after","hasPastedBlocks","lastPastedBlockIndex","isAfterOriginal","push","indexToSelect","initialPosition","shiftKey","canSplit","transforms","filter","type","transformation","item","regExp","test","text","transform","content","splitStart","end","splitEnd","canSplitAtEnd","onPaste","html","plainText","isInternal","files","activeFormats","pastedValue","multilineWrapperTags","HTML","mode","window","console","log","isPastedURL","trim","presentEmbedHandlerPicker","current","presentPicker","createEmbed","createLink","valueToInsert","canPasteEmbed","name","inputRule","valueToFormat","startPosition","characterBefore","trimmedTextBefore","prefixTransforms","prefix","mergedRef","id","style","nestedIsSelected","onFocus","editableProps","editableTagName","TagName","listBoxId","activeId","onKeyDown","className","event","ForwardedRichTextContainer","Content","Tag","MultilineTag","format","restProps","defaultProps","RichTextShortcut","RichTextToolbarButton","__unstableRichTextInputEvent"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,OADD,EAECC,QAFD,EAGCC,MAHD,EAICC,WAJD,EAKCC,UALD,QAMO,oBANP;AAOA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SACCC,YADD,EAECC,QAAQ,IAAIC,cAFb,EAGCC,kBAHD,EAICC,aAJD,EAKCC,wBALD,QAMO,mBANP;AAOA,SAASC,aAAT,EAAwBC,YAAxB,QAA4C,oBAA5C;AACA,SACCC,sBAAsB,IAAIC,QAD3B,EAECC,uBAFD,EAGCC,OAHD,EAICC,qBAAqB,IAAIC,WAJ1B,EAKCC,MALD,EAMCC,6BAA6B,IAAIC,mBANlC,EAOCC,MAPD,EAQCC,OARD,EASCC,KATD,EAUCC,yBAAyB,IAAIC,cAV9B,EAWCC,YAXD,EAYCC,KAZD,QAaO,sBAbP;AAcA,SAASC,KAAT,QAAsB,gBAAtB;AAEA;AACA;AACA;;AACA,OAAOC,YAAP,MAAyB,iBAAzB;AACA,SAASC,mBAAT,QAAoC,eAApC;AACA,SAASC,sBAAT,QAAuC,4BAAvC;AACA,SAASC,gBAAT,QAAiC,sBAAjC;AACA,OAAOC,sBAAP,MAAmC,4BAAnC;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,aAA1C;AACA,SACCC,gBADD,EAECC,eAFD,EAGCC,iBAHD,EAICC,WAJD,EAKCC,qBALD,QAMO,SANP;AAOA,OAAOC,kBAAP,MAA+B,wBAA/B;AAEA,MAAMC,OAAO,GAAG,kCAAhB;;AAEA,SAASC,eAAT,OAqDCC,YArDD,EAsDE;AAAA,MArDD;AACCvC,IAAAA,QADD;AAECwC,IAAAA,OAFD;AAGCC,IAAAA,KAHD;AAICC,IAAAA,QAJD;AAKCC,IAAAA,KAAK,EAAEC,aALR;AAMCC,IAAAA,QAAQ,EAAEC,gBANX;AAOCC,IAAAA,UAAU,EAAEC,kBAPb;AAQCC,IAAAA,SARD;AASCC,IAAAA,aATD;AAUCC,IAAAA,gBAVD;AAWCC,IAAAA,cAXD;AAYCC,IAAAA,SAZD;AAaCC,IAAAA,WAbD;AAcCC,IAAAA,cAdD;AAeCC,IAAAA,4BAfD;AAgBCC,IAAAA,QAhBD;AAiBCC,IAAAA,OAjBD;AAkBCC,IAAAA,OAlBD;AAmBCC,IAAAA,sBAAsB,EAAEC,YAnBzB;AAoBCC,IAAAA,uBAAuB,EAAEC,aApB1B;AAqBCC,IAAAA,UArBD;AAsBCC,IAAAA,kBAtBD;AAuBCC,IAAAA,wBAAwB,EAAEC,cAvB3B;AAwBCC,IAAAA,yBAxBD;AAyBCC,IAAAA,wBAAwB,EAAEC,cAzB3B;AA0BCC,IAAAA,iBA1BD;AA2BCC,IAAAA,eA3BD;AA4BCC,IAAAA,oCA5BD;AA6BCC,IAAAA,0BA7BD;AA8BC;AACAC,IAAAA,8BA/BD;AAgCCC,IAAAA,WAhCD;AAiCCC,IAAAA,oBAjCD;AAkCCC,IAAAA,SAlCD;AAmCCC,IAAAA,cAnCD;AAoCCC,IAAAA,eApCD;AAqCCC,IAAAA,kBArCD;AAsCCC,IAAAA,QAtCD;AAuCCC,IAAAA,UAvCD;AAwCCC,IAAAA,UAxCD;AAyCCC,IAAAA,SAzCD;AA0CCC,IAAAA,QA1CD;AA2CCC,IAAAA,QA3CD;AA4CCC,IAAAA,MA5CD;AA6CCC,IAAAA,MA7CD;AA8CCC,IAAAA,kBA9CD;AA+CCC,IAAAA,qBA/CD;AAgDCC,IAAAA,cAhDD;AAiDCC,IAAAA,OAAO,EAAEC,aAjDV;AAkDC,OAAGC;AAlDJ,GAqDC;AACD,QAAMC,UAAU,GAAG3F,aAAa,CAAEiC,eAAF,CAAhC;AAEA0B,EAAAA,UAAU,GAAGA,UAAU,IAAIgC,UAA3B;AAEA,QAAMC,WAAW,GAAGvG,MAAM,EAA1B;AACA,QAAM;AAAEwG,IAAAA,QAAF;AAAYnD,IAAAA,UAAU,EAAEoD;AAAxB,MAA4C1E,mBAAmB,EAArE;AACA,QAAM2E,qBAAqB,GAAG1G,MAAM,EAApC;;AACA,QAAM2G,QAAQ,GAAKC,MAAF,IAAc;AAC9B,UAAM;AACLC,MAAAA,iBADK;AAELC,MAAAA,eAFK;AAGLC,MAAAA,WAHK;AAILC,MAAAA,kBAJK;AAKLC,MAAAA,QALK;AAMLC,MAAAA,gBANK;AAOLC,MAAAA;AAPK,QAQFP,MAAM,CAAExE,gBAAF,CARV;AAUA,UAAMgF,cAAc,GAAGP,iBAAiB,EAAxC;AACA,UAAMQ,YAAY,GAAGP,eAAe,EAApC;AACA,UAAM;AAAEQ,MAAAA,kBAAkB,EAAEC;AAAtB,QAA+BR,WAAW,EAAhD;AAEA,QAAI1D,UAAJ;;AAEA,QAAKC,kBAAkB,KAAKkE,SAA5B,EAAwC;AACvCnE,MAAAA,UAAU,GACT+D,cAAc,CAACZ,QAAf,KAA4BA,QAA5B,IACAY,cAAc,CAACK,YAAf,KAAgCnD,UAFjC;AAGA,KAJD,MAIO,IAAKhB,kBAAL,EAA0B;AAChCD,MAAAA,UAAU,GAAG+D,cAAc,CAACZ,QAAf,KAA4BA,QAAzC;AACA;;AAED,QAAIkB,UAAU,GAAG,EAAjB;;AACA,QAAK3H,QAAQ,CAAC4H,EAAT,KAAgB,QAArB,EAAgC;AAC/B;AACA;AACA;AACA,YAAMC,KAAK,GAAGpB,QAAQ,IAAIS,QAAQ,CAAET,QAAF,CAAlC;AACA,YAAMqB,mBAAmB,GACxBD,KAAK,IAAIvE,UAAT,IAAuB3C,wBAAwB,CAAEkH,KAAF,CADhD;AAEAF,MAAAA,UAAU,GAAG;AACZG,QAAAA;AADY,OAAb;AAGA;;AAED,WAAO;AACNT,MAAAA,cAAc,EAAE/D,UAAU,GAAG+D,cAAc,CAACU,MAAlB,GAA2BN,SAD/C;AAENH,MAAAA,YAAY,EAAEhE,UAAU,GAAGgE,YAAY,CAACS,MAAhB,GAAyBN,SAF3C;AAGNnE,MAAAA,UAHM;AAIN2D,MAAAA,kBAAkB,EAAEA,kBAAkB,EAJhC;AAKNe,MAAAA,QAAQ,EAAEb,gBAAgB,MAAMC,iBAAiB,EAL3C;AAMNI,MAAAA,IANM;AAON,SAAGG;AAPG,KAAP;AASA,GA/CD,CARC,CAwDD;AACA;AACA;;;AACA,QAAM;AACLN,IAAAA,cADK;AAELC,IAAAA,YAFK;AAGLhE,IAAAA,UAHK;AAIL2D,IAAAA,kBAJK;AAKLe,IAAAA,QALK;AAMLR,IAAAA,IANK;AAOLM,IAAAA;AAPK,MAQFzH,SAAS,CAAEuG,QAAF,CARb;AASA,QAAM;AACLqB,IAAAA,oCADK;AAELC,IAAAA,kBAFK;AAGLC,IAAAA,iBAHK;AAILC,IAAAA,eAJK;AAKLC,IAAAA;AALK,MAMFjI,WAAW,CAAEiC,gBAAF,CANf;AAOA,QAAMiG,YAAY,GAAG/F,eAAe,CAAEiB,SAAF,CAApC;AACA,QAAM+E,sBAAsB,GAAG/F,iBAAiB,CAAE;AACjDsB,IAAAA,cADiD;AAEjDe,IAAAA;AAFiD,GAAF,CAAhD;AAIA,QAAM2D,UAAU,GACf,CAAED,sBAAF,IAA4BA,sBAAsB,CAACE,MAAvB,GAAgC,CAD7D;AAEA,MAAIC,aAAa,GAAGvF,aAApB;AACA,MAAIwF,gBAAgB,GAAGtF,gBAAvB,CAnFC,CAqFD;;AACA,MAAKuF,KAAK,CAACC,OAAN,CAAe1F,aAAf,CAAL,EAAsC;AACrCuF,IAAAA,aAAa,GAAGlI,cAAc,CAACsI,MAAf,CAAuB3F,aAAvB,CAAhB;;AACAwF,IAAAA,gBAAgB,GAAKI,QAAF,IAClB1F,gBAAgB,CACf7C,cAAc,CAACwI,OAAf,CACChI,uBAAuB,CAAEiI,QAAF,EAAYF,QAAZ,CAAvB,CAA8CG,UAD/C,CADe,CADjB;AAMA;;AAED,QAAMC,iBAAiB,GAAGjJ,WAAW,CACpC,CAAEkJ,oBAAF,EAAwBC,kBAAxB,KAAgD;AAC/CjB,IAAAA,eAAe,CACd3B,QADc,EAEdlC,UAFc,EAGd6E,oBAHc,EAIdC,kBAJc,CAAf;AAMA,GARmC,EASpC;AACA,GAAE5C,QAAF,EAAYlC,UAAZ,CAVoC,CAArC;AAaA,QAAM+E,QAAQ,GAAGpJ,WAAW,CAC3B,SAA4B;AAAA,QAA1B;AAAEgD,MAAAA,KAAF;AAASqG,MAAAA;AAAT,KAA0B;;AAC3B,QAAKtF,OAAL,EAAe;AACdA,MAAAA,OAAO,CAAE,CAAEsF,SAAJ,CAAP;AACA,KAH0B,CAK3B;AACA;AACA;AACA;;;AACA,QAAKvF,QAAQ,IAAI/C,OAAO,CAAEiC,KAAF,CAAnB,IAAgCqG,SAArC,EAAiD;AAChDvF,MAAAA,QAAQ,CAAE,CAAEuF,SAAJ,CAAR;AACA;AACD,GAb0B,EAc3B,CAAEtF,OAAF,EAAWD,QAAX,CAd2B,CAA5B;AAiBA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACC,QAAMwF,UAAU,GAAGtJ,WAAW,CAC7B,UAAEuJ,MAAF,EAAiC;AAAA,QAAvBC,YAAuB,uEAAR,EAAQ;;AAChC,QAAK,CAAE9F,SAAF,IAAe,CAAEM,OAAtB,EAAgC;AAC/B;AACA;;AAED,UAAMyF,MAAM,GAAG,EAAf;AACA,UAAM,CAAEC,MAAF,EAAUC,KAAV,IAAoBpI,KAAK,CAAEgI,MAAF,CAA/B;AACA,UAAMK,eAAe,GAAGJ,YAAY,CAACjB,MAAb,GAAsB,CAA9C;AACA,QAAIsB,oBAAoB,GAAG,CAAC,CAA5B,CARgC,CAUhC;AACA;;AACA,UAAMC,eAAe,GAAG/I,OAAO,CAAE2I,MAAF,CAAP,IAAqB,CAAE3I,OAAO,CAAE4I,KAAF,CAAtD,CAZgC,CAchC;AACA;AACA;AACA;;AACA,QAAK,CAAEC,eAAF,IAAqB,CAAE7I,OAAO,CAAE2I,MAAF,CAAnC,EAAgD;AAC/CD,MAAAA,MAAM,CAACM,IAAP,CACC/F,OAAO,CACNtC,YAAY,CAAE;AACbsB,QAAAA,KAAK,EAAE0G,MADM;AAEbtB,QAAAA;AAFa,OAAF,CADN,EAKN,CAAE0B,eALI,CADR;AASAD,MAAAA,oBAAoB,IAAI,CAAxB;AACA;;AAED,QAAKD,eAAL,EAAuB;AACtBH,MAAAA,MAAM,CAACM,IAAP,CAAa,GAAGP,YAAhB;AACAK,MAAAA,oBAAoB,IAAIL,YAAY,CAACjB,MAArC;AACA,KAHD,MAGO,IAAKnE,aAAL,EAAqB;AAC3BqF,MAAAA,MAAM,CAACM,IAAP,CAAa3F,aAAa,EAA1B;AACA,KApC+B,CAsChC;AACA;AACA;AACA;;;AACA,QACCwF,eAAe,GACZ,CAAE7I,OAAO,CAAE4I,KAAF,CADG,GAEZ,CAAEvF,aAAF,IAAmB,CAAErD,OAAO,CAAE4I,KAAF,CAHhC,EAIE;AACDF,MAAAA,MAAM,CAACM,IAAP,CACC/F,OAAO,CACNtC,YAAY,CAAE;AACbsB,QAAAA,KAAK,EAAE2G,KADM;AAEbvB,QAAAA;AAFa,OAAF,CADN,EAKN0B,eALM,CADR;AASA,KAxD+B,CA0DhC;AACA;;;AACA,UAAME,aAAa,GAAGJ,eAAe,GAAGC,oBAAH,GAA0B,CAA/D,CA5DgC,CA8DhC;AACA;;AACA,UAAMI,eAAe,GAAGL,eAAe,GAAG,CAAC,CAAJ,GAAQ,CAA/C;AAEAlG,IAAAA,SAAS,CAAE+F,MAAF,EAAUO,aAAV,EAAyBC,eAAzB,CAAT;AACA,GApE4B,EAqE7B,CAAEvG,SAAF,EAAaM,OAAb,EAAsBoE,YAAtB,EAAoChE,aAApC,CArE6B,CAA9B;AAwEA,QAAM8B,OAAO,GAAGlG,WAAW,CAC1B,SAAqC;AAAA,QAAnC;AAAEgD,MAAAA,KAAF;AAASE,MAAAA,QAAT;AAAmBgH,MAAAA;AAAnB,KAAmC;AACpC,UAAMC,QAAQ,GAAGzG,SAAS,IAAIM,OAA9B;;AAEA,QAAKN,SAAL,EAAiB;AAChB,YAAM0G,UAAU,GAAG7J,kBAAkB,CAAE,MAAF,CAAlB,CAA6B8J,MAA7B,CAClB;AAAA,YAAE;AAAEC,UAAAA;AAAF,SAAF;AAAA,eAAgBA,IAAI,KAAK,OAAzB;AAAA,OADkB,CAAnB;AAGA,YAAMC,cAAc,GAAG/J,aAAa,CAAE4J,UAAF,EAAgBI,IAAF,IAAY;AAC7D,eAAOA,IAAI,CAACC,MAAL,CAAYC,IAAZ,CAAkB1H,KAAK,CAAC2H,IAAxB,CAAP;AACA,OAFmC,CAApC;;AAIA,UAAKJ,cAAL,EAAsB;AACrB7G,QAAAA,SAAS,CAAE,CACV6G,cAAc,CAACK,SAAf,CAA0B;AAAEC,UAAAA,OAAO,EAAE7H,KAAK,CAAC2H;AAAjB,SAA1B,CADU,CAAF,CAAT;;AAGAxC,QAAAA,6BAA6B;AAC7B;AACD;;AAED,QAAKhC,aAAL,EAAqB;AACpBA,MAAAA,aAAa;AACb;;AAED,QAAK7C,SAAL,EAAiB;AAChB,UAAK4G,QAAL,EAAgB;AACf,YAAK,CAAEtF,iBAAP,EAA2B;AAC1B1B,UAAAA,QAAQ,CAAEhC,MAAM,CAAE8B,KAAF,EAAS,IAAT,CAAR,CAAR;AACA;AACD,OAJD,MAIO,IAAKmH,QAAQ,IAAIlJ,WAAW,CAAE+B,KAAF,CAA5B,EAAwC;AAC9CsG,QAAAA,UAAU,CAAEtG,KAAF,CAAV;AACA,OAFM,MAEA;AACNE,QAAAA,QAAQ,CAAE9B,mBAAmB,CAAE4B,KAAF,CAArB,CAAR;AACA;AACD,KAVD,MAUO;AACN,YAAM;AAAE2H,QAAAA,IAAF;AAAQ7H,QAAAA,KAAK,EAAEgI,UAAf;AAA2BC,QAAAA,GAAG,EAAEC;AAAhC,UAA6ChI,KAAnD;AACA,YAAMiI,aAAa,GAClB/G,YAAY,IACZ4G,UAAU,KAAKE,QADf,IAEAA,QAAQ,KAAKL,IAAI,CAACpC,MAHnB;;AAKA,UAAK2B,QAAQ,IAAM,CAAEC,QAAF,IAAc,CAAEc,aAAnC,EAAqD;AACpD,YAAK,CAAErG,iBAAP,EAA2B;AAC1B1B,UAAAA,QAAQ,CAAEhC,MAAM,CAAE8B,KAAF,EAAS,IAAT,CAAR,CAAR;AACA;AACD,OAJD,MAIO,IAAK,CAAEmH,QAAF,IAAcc,aAAnB,EAAmC;AACzC/G,QAAAA,YAAY;AACZ,OAFM,MAEA,IAAKiG,QAAL,EAAgB;AACtBb,QAAAA,UAAU,CAAEtG,KAAF,CAAV;AACA;AACD;AACD,GAnDyB,EAoD1B;AACA,GACCU,SADD,EAECM,OAFD,EAGCmE,6BAHD,EAIC7E,SAJD,EAKCgG,UALD,EAMCpF,YAND,CArD0B,CAA3B;AA+DA,QAAMgH,OAAO,GAAGlL,WAAW,CAC1B,SAQO;AAAA,QARL;AACDgD,MAAAA,KADC;AAEDE,MAAAA,QAFC;AAGDiI,MAAAA,IAHC;AAIDC,MAAAA,SAJC;AAKDC,MAAAA,UALC;AAMDC,MAAAA,KANC;AAODC,MAAAA;AAPC,KAQK;;AACN;AACA;AACA;AACA,QAAKF,UAAL,EAAkB;AACjB,YAAMG,WAAW,GAAGnK,MAAM,CAAE;AAC3B8J,QAAAA,IAD2B;AAE3B/C,QAAAA,YAF2B;AAG3BqD,QAAAA,oBAAoB,EACnBrD,YAAY,KAAK,IAAjB,GAAwB,CAAE,IAAF,EAAQ,IAAR,CAAxB,GAAyCb,SAJf;AAK3BjD,QAAAA;AAL2B,OAAF,CAA1B;AAOAlC,MAAAA,gBAAgB,CAAEoJ,WAAF,EAAeD,aAAf,CAAhB;AACArI,MAAAA,QAAQ,CAAEhC,MAAM,CAAE8B,KAAF,EAASwI,WAAT,CAAR,CAAR;AACA;AACA;;AAED,QAAKhH,cAAL,EAAsB;AACrBtB,MAAAA,QAAQ,CAAEhC,MAAM,CAAE8B,KAAF,EAAS3B,MAAM,CAAE;AAAEsJ,QAAAA,IAAI,EAAES;AAAR,OAAF,CAAf,CAAR,CAAR;AACA;AACA,KApBK,CAsBN;AACA;;;AACA,QAAKE,KAAK,IAAIA,KAAK,CAAC/C,MAAf,IAAyB,CAAE4C,IAAhC,EAAuC;AACtC,YAAMN,OAAO,GAAGzK,YAAY,CAAE;AAC7BsL,QAAAA,IAAI,EAAE1J,gBAAgB,CAAEsJ,KAAF,CADO;AAE7BK,QAAAA,IAAI,EAAE,QAFuB;AAG7B9I,QAAAA,OAH6B;AAI7ByB,QAAAA;AAJ6B,OAAF,CAA5B,CADsC,CAQtC;AACA;;AACAsH,MAAAA,MAAM,CAACC,OAAP,CAAeC,GAAf,CAAoB,qBAApB,EAA2CR,KAA3C;;AAEA,UAAK5H,SAAS,IAAI3C,OAAO,CAAEiC,KAAF,CAAzB,EAAqC;AACpCU,QAAAA,SAAS,CAAEmH,OAAF,CAAT;AACA,OAFD,MAEO;AACNvB,QAAAA,UAAU,CAAEtG,KAAF,EAAS6H,OAAT,CAAV;AACA;;AAED;AACA;;AAED,QAAIc,IAAI,GAAGjI,SAAS,IAAIM,OAAb,GAAuB,MAAvB,GAAgC,QAA3C,CA7CM,CA+CN;AACA;AACA;AACA;;AACA,QACC2H,IAAI,KAAK,MAAT,IACA5K,OAAO,CAAEiC,KAAF,CADP,IAEAT,WAAW,CAAE6I,SAAF,CAHZ,EAIE;AACDO,MAAAA,IAAI,GAAG,QAAP;AACA;;AAED,UAAMI,WAAW,GAAGnK,KAAK,CAAEwJ,SAAS,CAACY,IAAV,EAAF,CAAzB;;AACA,UAAMC,yBAAyB,GAAG;AAAA;;AAAA,sCACjCxF,qBAAqB,CAACyF,OADW,0DACjC,sBAA+BC,aAA/B,CAA8C;AAC7CC,QAAAA,WAAW,EAAE,MACZ1I,SAAS,CAAEmH,OAAF,EAAWA,OAAO,CAACtC,MAAR,GAAiB,CAA5B,EAA+B,CAAC,CAAhC,CAFmC;AAG7C8D,QAAAA,UAAU,EAAE,MACX7J,qBAAqB,CAAE4I,SAAS,CAACY,IAAV,EAAF,EAAoBtI,SAApB;AAJuB,OAA9C,CADiC;AAAA,KAAlC;;AAQA,QACCe,yBAAyB,IACzB1D,OAAO,CAAEiC,KAAF,CADP,IAEA+I,WAHD,EAIE;AACDJ,MAAAA,IAAI,GAAG,QAAP;AACA;;AAED,UAAMd,OAAO,GAAGzK,YAAY,CAAE;AAC7BsL,MAAAA,IAAI,EAAEP,IADuB;AAE7BC,MAAAA,SAF6B;AAG7BO,MAAAA,IAH6B;AAI7B9I,MAAAA,OAJ6B;AAK7ByB,MAAAA;AAL6B,KAAF,CAA5B;;AAQA,QAAK,OAAOuG,OAAP,KAAmB,QAAxB,EAAmC;AAClC,UAAIyB,aAAa,GAAGjL,MAAM,CAAE;AAAE8J,QAAAA,IAAI,EAAEN;AAAR,OAAF,CAA1B;AAEAzI,MAAAA,gBAAgB,CAAEkK,aAAF,EAAiBf,aAAjB,CAAhB,CAHkC,CAKlC;AACA;;AACA,UAAKnD,YAAL,EAAoB;AACnBkE,QAAAA,aAAa,GAAGhL,OAAO,CACtBgL,aADsB,EAEtB,MAFsB,EAGtB7K,cAHsB,CAAvB;AAKA;;AAEDyB,MAAAA,QAAQ,CAAEhC,MAAM,CAAE8B,KAAF,EAASsJ,aAAT,CAAR,CAAR;AACA,KAhBD,MAgBO,IAAKzB,OAAO,CAACtC,MAAR,GAAiB,CAAtB,EAA0B;AAChC;AACA;AACA,YAAMgE,aAAa,GAClBR,WAAW,IACXlB,OAAO,CAACtC,MAAR,KAAmB,CADnB,IAEAsC,OAAO,CAAE,CAAF,CAAP,CAAa2B,IAAb,KAAsB,YAHvB;;AAIA,UAAK9I,SAAS,IAAI3C,OAAO,CAAEiC,KAAF,CAAzB,EAAqC;AACpC,YAAKuJ,aAAL,EAAqB;AACpBrJ,UAAAA,QAAQ,CACPhC,MAAM,CAAE8B,KAAF,EAAS3B,MAAM,CAAE;AAAEsJ,YAAAA,IAAI,EAAES;AAAR,WAAF,CAAf,CADC,CAAR;;AAGA,cAAK3G,yBAAL,EAAiC;AAChCwH,YAAAA,yBAAyB;AACzB;;AACD;AACA;;AACDvI,QAAAA,SAAS,CAAEmH,OAAF,EAAWA,OAAO,CAACtC,MAAR,GAAiB,CAA5B,EAA+B,CAAC,CAAhC,CAAT;AACA,OAXD,MAWO;AACN,YAAKgE,aAAL,EAAqB;AACpBrJ,UAAAA,QAAQ,CACPhC,MAAM,CAAE8B,KAAF,EAAS3B,MAAM,CAAE;AAAEsJ,YAAAA,IAAI,EAAES;AAAR,WAAF,CAAf,CADC,CAAR;AAGA;AACA;;AACD9B,QAAAA,UAAU,CAAEtG,KAAF,EAAS6H,OAAT,CAAV;AACA;AACD;AACD,GAzIyB,EA0I1B,CACChI,OADD,EAECa,SAFD,EAGCM,OAHD,EAICsF,UAJD,EAKC7E,yBALD,EAMC2D,YAND,EAOC9D,kBAPD,EAQCE,cARD,CA1I0B,CAA3B;AAsJA,QAAMiI,SAAS,GAAGzM,WAAW,CAC5B,CAAEgD,KAAF,EAAS0J,aAAT,KAA4B;AAC3B,QAAK,CAAEhJ,SAAP,EAAmB;AAClB;AACA;;AAED,UAAM;AAAEZ,MAAAA,KAAK,EAAE6J,aAAT;AAAwBhC,MAAAA;AAAxB,QAAiC3H,KAAvC;AACA,UAAM4J,eAAe,GAAGjC,IAAI,CAAChJ,KAAL,CACvBgL,aAAa,GAAG,CADO,EAEvBA,aAFuB,CAAxB,CAN2B,CAW3B;;AACA,QAAKC,eAAe,KAAK,GAAzB,EAA+B;AAC9B;AACA;;AAED,UAAMC,iBAAiB,GAAGlC,IAAI,CAAChJ,KAAL,CAAY,CAAZ,EAAegL,aAAf,EAA+BX,IAA/B,EAA1B;AACA,UAAMc,gBAAgB,GAAGvM,kBAAkB,CAAE,MAAF,CAAlB,CAA6B8J,MAA7B,CACxB;AAAA,UAAE;AAAEC,QAAAA;AAAF,OAAF;AAAA,aAAgBA,IAAI,KAAK,QAAzB;AAAA,KADwB,CAAzB;AAGA,UAAMC,cAAc,GAAG/J,aAAa,CACnCsM,gBADmC,EAEnC,SAAkB;AAAA,UAAhB;AAAEC,QAAAA;AAAF,OAAgB;AACjB,aAAOF,iBAAiB,KAAKE,MAA7B;AACA,KAJkC,CAApC;;AAOA,QAAK,CAAExC,cAAP,EAAwB;AACvB;AACA;;AAED,UAAMM,OAAO,GAAG6B,aAAa,CAC5B/K,KAAK,CAAEqB,KAAF,EAAS2J,aAAT,EAAwBhC,IAAI,CAACpC,MAA7B,CADuB,CAA7B;AAGA,UAAMZ,KAAK,GAAG4C,cAAc,CAACK,SAAf,CAA0BC,OAA1B,CAAd;AAEAnH,IAAAA,SAAS,CAAE,CAAEiE,KAAF,CAAF,CAAT;;AACAQ,IAAAA,6BAA6B;AAC7B,GAvC2B,EAwC5B,CAAEzE,SAAF,EAAayE,6BAAb,CAxC4B,CAA7B;AA2CA,QAAM6E,SAAS,GAAGrM,YAAY,CAAE,CAAEiC,YAAF,EAAgB0D,WAAhB,CAAF,CAA9B;AAEA,SACC,cAAC,QAAD;AACC,IAAA,QAAQ,EAAGC,QADZ;AAEC,IAAA,UAAU,EAAGlC,UAFd;AAGC,IAAA,GAAG,EAAG2I,SAHP;AAIC,IAAA,KAAK,EAAGxE,aAJT;AAKC,IAAA,QAAQ,EAAGC,gBALZ;AAMC,IAAA,cAAc,EAAGtB,cANlB;AAOC,IAAA,YAAY,EAAGC,YAPhB;AAQC,IAAA,iBAAiB,EAAG6B,iBARrB;AASC,IAAA,OAAO,EAAGpG,OATX;AAUC,IAAA,KAAK,EAAGC,KAVT;AAWC,IAAA,QAAQ,EAAGC,QAXZ;AAYC,IAAA,WAAW,EAAGY,WAZf;AAaC,IAAA,cAAc,EAAG0E,sBAblB;AAcC,IAAA,4BAA4B,EAAGxE,4BAdhC;AAeC,IAAA,OAAO,EAAGqC,OAfX;AAgBC,IAAA,QAAQ,EAAGkD,QAhBZ;AAiBC,IAAA,OAAO,EAAG8B,OAjBX;AAkBC,IAAA,oBAAoB,EAAG9H,UAlBxB;AAmBC,IAAA,mBAAmB,EAAGqJ,SAnBvB;AAoBC,IAAA,sBAAsB,EAAGrE,YApB1B;AAqBC,IAAA,8BAA8B,EAAGJ,kBArBlC;AAsBC,IAAA,6BAA6B,EAAGC,iBAtBjC;AAuBC,IAAA,2BAA2B,EAAGF,oCAvB/B;AAwBC,IAAA,6BAA6B,EAAGI,6BAxBjC;AAyBC,IAAA,4BAA4B,EAAGpB,kBAzBhC;AA0BC,IAAA,cAAc,EAAGO,IA1BlB;AA2BC,IAAA,wBAAwB,EAAG3C,cA3B5B;AA4BC,IAAA,kBAAkB,EAAGL,kBA5BtB;AA6BC,IAAA,QAAQ,EAAGwD,QA7BZ;AA8BC,IAAA,eAAe,EAAGjD,eA9BnB;AA+BC,IAAA,oCAAoC,EACnCC,oCAhCF;AAkCC,IAAA,0BAA0B,EAAGC,0BAlC9B,CAmCC;AAnCD;AAoCC,IAAA,eAAe,EACd1B,kBAAkB,KAAKkE,SAAvB,GACGlE,kBADH,GAEGmD,eAvCL;AAyCC,IAAA,mBAAmB,EAAGoB,mBAzCvB;AA0CC,IAAA,8BAA8B,EAAG5C,8BA1ClC;AA2CC,IAAA,WAAW,EAAGC,WA3Cf;AA4CC,IAAA,oBAAoB,EAAGC,oBA5CxB;AA6CC,IAAA,SAAS,EAAGC,SA7Cb;AA8CC,IAAA,cAAc,EAAGC,cA9ClB;AA+CC,IAAA,eAAe,EAAGC,eA/CnB;AAgDC,IAAA,kBAAkB,EAAGC,kBAhDtB;AAiDC,IAAA,QAAQ,EAAGC,QAjDZ;AAkDC,IAAA,UAAU,EAAGC,UAlDd;AAmDC,IAAA,UAAU,EAAGC,UAnDd;AAoDC,IAAA,SAAS,EAAGC,SApDb;AAqDC,IAAA,QAAQ,EAAGC,QArDZ;AAsDC,IAAA,QAAQ,EAAGC,QAtDZ;AAuDC,IAAA,MAAM,EAAGC,MAvDV;AAwDC,IAAA,MAAM,EAAGC,MAxDV;AAyDC,IAAA,kBAAkB,EAAGC,kBAzDtB;AA0DC,IAAA,qBAAqB,EAAGC,qBA1DzB;AA2DC,IAAA,cAAc,EAAGC,cA3DlB,CA4DC;AACA;AACA;AA9DD;AA+DC,IAAA,EAAE,EAAGG,KAAK,CAAC6G,EA/DZ;AAgEC,IAAA,KAAK,EAAG7G,KAAK,CAAC8G;AAhEf,KAkEG;AAAA,QAAE;AACH9J,MAAAA,UAAU,EAAE+J,gBADT;AAEHnK,MAAAA,KAFG;AAGHE,MAAAA,QAHG;AAIHkK,MAAAA,OAJG;AAKHC,MAAAA,aALG;AAMHC,MAAAA,eAAe,EAAEC;AANd,KAAF;AAAA,WAQD,8BACGlN,QAAQ,IAAIA,QAAQ,CAAE;AAAE2C,MAAAA,KAAF;AAASE,MAAAA,QAAT;AAAmBkK,MAAAA;AAAnB,KAAF,CADvB,EAEGD,gBAAgB,IAAI7E,UAApB,IACD,cAAC,sBAAD;AACC,MAAA,MAAM,EAAG/E,aADV;AAEC,MAAA,SAAS,EAAG+C,WAAW,CAAC4F;AAFzB,MAHF,EAQGiB,gBAAgB,IAAI,cAAC,sBAAD,OARvB,EASC,cAAC,YAAD;AACC,MAAA,SAAS,EAAGzJ,SADb;AAEC,MAAA,UAAU,EAAGD,cAFd;AAGC,MAAA,MAAM,EAAGT,KAHV;AAIC,MAAA,QAAQ,EAAGE,QAJZ;AAKC,MAAA,UAAU,EAAGiK,gBALd;AAMC,MAAA,UAAU,EAAG7G;AANd,OAQG;AAAA,UAAE;AAAEkH,QAAAA,SAAF;AAAaC,QAAAA,QAAb;AAAuBC,QAAAA;AAAvB,OAAF;AAAA,aACD,cAAC,OAAD,eACML,aADN,EAEMjH,KAFN;AAGC,QAAA,KAAK,EACJA,KAAK,CAAC8G,KAAN,GACG,EACA,GAAG9G,KAAK,CAAC8G,KADT;AAEA,aAAGG,aAAa,CAACH;AAFjB,SADH,GAKGG,aAAa,CAACH,KATnB;AAWC,QAAA,SAAS,EAAGtN,UAAU,CACrB8C,OADqB,EAErB0D,KAAK,CAACuH,SAFe,EAGrBN,aAAa,CAACM,SAHO,CAXvB;AAgBC,6BACCH,SAAS,GAAG,MAAH,GAAYjG,SAjBvB;AAmBC,qBAAYiG,SAnBb;AAoBC,iCAAwBC,QApBzB;AAqBC,QAAA,SAAS,EAAKG,KAAF,IAAa;AACxBF,UAAAA,SAAS,CAAEE,KAAF,CAAT;AACAP,UAAAA,aAAa,CAACK,SAAd,CAAyBE,KAAzB;AACA;AAxBF,SADC;AAAA,KARH,CATD,EA8CC,cAAC,kBAAD;AAAoB,MAAA,GAAG,EAAGnH;AAA1B,MA9CD,CARC;AAAA,GAlEH,CADD;AA8HA;;AAED,MAAMoH,0BAA0B,GAAG5N,UAAU,CAAE0C,eAAF,CAA7C;;AAEAkL,0BAA0B,CAACC,OAA3B,GAAqC,UAK9B;AAAA,MALgC;AACtC9K,IAAAA,KADsC;AAEtCH,IAAAA,OAAO,EAAEkL,GAF6B;AAGtCzK,IAAAA,SAHsC;AAItC,OAAG8C;AAJmC,GAKhC;;AACN;AACA,MAAKsC,KAAK,CAACC,OAAN,CAAe3F,KAAf,CAAL,EAA8B;AAC7BA,IAAAA,KAAK,GAAG1C,cAAc,CAACsI,MAAf,CAAuB5F,KAAvB,CAAR;AACA;;AAED,QAAMgL,YAAY,GAAG3L,eAAe,CAAEiB,SAAF,CAApC;;AAEA,MAAK,CAAEN,KAAF,IAAWgL,YAAhB,EAA+B;AAC9BhL,IAAAA,KAAK,GAAI,IAAIgL,YAAc,MAAMA,YAAc,GAA/C;AACA;;AAED,QAAMnD,OAAO,GAAG,cAAC,OAAD,QAAW7H,KAAX,CAAhB;;AAEA,MAAK+K,GAAL,EAAW;AACV,UAAM;AAAEE,MAAAA,MAAF;AAAU,SAAGC;AAAb,QAA2B9H,KAAjC;AACA,WAAO,cAAC,GAAD,EAAU8H,SAAV,EAAwBrD,OAAxB,CAAP;AACA;;AAED,SAAOA,OAAP;AACA,CAzBD;;AA2BAgD,0BAA0B,CAAC9M,OAA3B,GAAuCiC,KAAF,IAAa;AACjD,SAAO,CAAEA,KAAF,IAAWA,KAAK,CAACuF,MAAN,KAAiB,CAAnC;AACA,CAFD;;AAIAsF,0BAA0B,CAACC,OAA3B,CAAmCK,YAAnC,GAAkD;AACjDF,EAAAA,MAAM,EAAE,QADyC;AAEjDjL,EAAAA,KAAK,EAAE;AAF0C,CAAlD;AAKA;AACA;AACA;;AACA,eAAe6K,0BAAf;AACA,SAASO,gBAAT,QAAiC,YAAjC;AACA,SAASC,qBAAT,QAAsC,kBAAtC;AACA,SAASC,4BAAT,QAA6C,eAA7C","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRawHTML,\n\tPlatform,\n\tuseRef,\n\tuseCallback,\n\tforwardRef,\n} from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tpasteHandler,\n\tchildren as childrenSource,\n\tgetBlockTransforms,\n\tfindTransform,\n\tisUnmodifiedDefaultBlock,\n} from '@wordpress/blocks';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\nimport {\n\t__experimentalRichText as RichText,\n\t__unstableCreateElement,\n\tisEmpty,\n\t__unstableIsEmptyLine as isEmptyLine,\n\tinsert,\n\t__unstableInsertLineSeparator as insertLineSeparator,\n\tcreate,\n\treplace,\n\tsplit,\n\t__UNSTABLE_LINE_SEPARATOR as LINE_SEPARATOR,\n\ttoHTMLString,\n\tslice,\n} from '@wordpress/rich-text';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Autocomplete from '../autocomplete';\nimport { useBlockEditContext } from '../block-edit';\nimport { RemoveBrowserShortcuts } from './remove-browser-shortcuts';\nimport { filePasteHandler } from './file-paste-handler';\nimport FormatToolbarContainer from './format-toolbar-container';\nimport { store as blockEditorStore } from '../../store';\nimport {\n\taddActiveFormats,\n\tgetMultilineTag,\n\tgetAllowedFormats,\n\tisShortcode,\n\tcreateLinkInParagraph,\n} from './utils';\nimport EmbedHandlerPicker from './embed-handler-picker';\n\nconst classes = 'block-editor-rich-text__editable';\n\nfunction RichTextWrapper(\n\t{\n\t\tchildren,\n\t\ttagName,\n\t\tstart,\n\t\treversed,\n\t\tvalue: originalValue,\n\t\tonChange: originalOnChange,\n\t\tisSelected: originalIsSelected,\n\t\tmultiline,\n\t\tinlineToolbar,\n\t\twrapperClassName,\n\t\tautocompleters,\n\t\tonReplace,\n\t\tplaceholder,\n\t\tallowedFormats,\n\t\twithoutInteractiveFormatting,\n\t\tonRemove,\n\t\tonMerge,\n\t\tonSplit,\n\t\t__unstableOnSplitAtEnd: onSplitAtEnd,\n\t\t__unstableOnSplitMiddle: onSplitMiddle,\n\t\tidentifier,\n\t\tpreserveWhiteSpace,\n\t\t__unstablePastePlainText: pastePlainText,\n\t\t__unstableEmbedURLOnPaste,\n\t\t__unstableDisableFormats: disableFormats,\n\t\tdisableLineBreaks,\n\t\tunstableOnFocus,\n\t\t__unstableAllowPrefixTransformations,\n\t\t__unstableMultilineRootTag,\n\t\t// Native props.\n\t\t__unstableMobileNoFocusOnMount,\n\t\tdeleteEnter,\n\t\tplaceholderTextColor,\n\t\ttextAlign,\n\t\tselectionColor,\n\t\ttagsToEliminate,\n\t\tdisableEditingMenu,\n\t\tfontSize,\n\t\tfontFamily,\n\t\tfontWeight,\n\t\tfontStyle,\n\t\tminWidth,\n\t\tmaxWidth,\n\t\tonBlur,\n\t\tsetRef,\n\t\tdisableSuggestions,\n\t\tdisableAutocorrection,\n\t\tcontainerWidth,\n\t\tonEnter: onCustomEnter,\n\t\t...props\n\t},\n\tforwardedRef\n) {\n\tconst instanceId = useInstanceId( RichTextWrapper );\n\n\tidentifier = identifier || instanceId;\n\n\tconst fallbackRef = useRef();\n\tconst { clientId, isSelected: blockIsSelected } = useBlockEditContext();\n\tconst embedHandlerPickerRef = useRef();\n\tconst selector = ( select ) => {\n\t\tconst {\n\t\t\tgetSelectionStart,\n\t\t\tgetSelectionEnd,\n\t\t\tgetSettings,\n\t\t\tdidAutomaticChange,\n\t\t\tgetBlock,\n\t\t\tisMultiSelecting,\n\t\t\thasMultiSelection,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectionStart = getSelectionStart();\n\t\tconst selectionEnd = getSelectionEnd();\n\t\tconst { __experimentalUndo: undo } = getSettings();\n\n\t\tlet isSelected;\n\n\t\tif ( originalIsSelected === undefined ) {\n\t\t\tisSelected =\n\t\t\t\tselectionStart.clientId === clientId &&\n\t\t\t\tselectionStart.attributeKey === identifier;\n\t\t} else if ( originalIsSelected ) {\n\t\t\tisSelected = selectionStart.clientId === clientId;\n\t\t}\n\n\t\tlet extraProps = {};\n\t\tif ( Platform.OS === 'native' ) {\n\t\t\t// If the block of this RichText is unmodified then it's a candidate for replacing when adding a new block.\n\t\t\t// In order to fix https://github.com/wordpress-mobile/gutenberg-mobile/issues/1126, let's blur on unmount in that case.\n\t\t\t// This apparently assumes functionality the BlockHlder actually.\n\t\t\tconst block = clientId && getBlock( clientId );\n\t\t\tconst shouldBlurOnUnmount =\n\t\t\t\tblock && isSelected && isUnmodifiedDefaultBlock( block );\n\t\t\textraProps = {\n\t\t\t\tshouldBlurOnUnmount,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tselectionStart: isSelected ? selectionStart.offset : undefined,\n\t\t\tselectionEnd: isSelected ? selectionEnd.offset : undefined,\n\t\t\tisSelected,\n\t\t\tdidAutomaticChange: didAutomaticChange(),\n\t\t\tdisabled: isMultiSelecting() || hasMultiSelection(),\n\t\t\tundo,\n\t\t\t...extraProps,\n\t\t};\n\t};\n\t// This selector must run on every render so the right selection state is\n\t// retrieved from the store on merge.\n\t// To do: fix this somehow.\n\tconst {\n\t\tselectionStart,\n\t\tselectionEnd,\n\t\tisSelected,\n\t\tdidAutomaticChange,\n\t\tdisabled,\n\t\tundo,\n\t\tshouldBlurOnUnmount,\n\t} = useSelect( selector );\n\tconst {\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\tenterFormattedText,\n\t\texitFormattedText,\n\t\tselectionChange,\n\t\t__unstableMarkAutomaticChange,\n\t} = useDispatch( blockEditorStore );\n\tconst multilineTag = getMultilineTag( multiline );\n\tconst adjustedAllowedFormats = getAllowedFormats( {\n\t\tallowedFormats,\n\t\tdisableFormats,\n\t} );\n\tconst hasFormats =\n\t\t! adjustedAllowedFormats || adjustedAllowedFormats.length > 0;\n\tlet adjustedValue = originalValue;\n\tlet adjustedOnChange = originalOnChange;\n\n\t// Handle deprecated format.\n\tif ( Array.isArray( originalValue ) ) {\n\t\tadjustedValue = childrenSource.toHTML( originalValue );\n\t\tadjustedOnChange = ( newValue ) =>\n\t\t\toriginalOnChange(\n\t\t\t\tchildrenSource.fromDOM(\n\t\t\t\t\t__unstableCreateElement( document, newValue ).childNodes\n\t\t\t\t)\n\t\t\t);\n\t}\n\n\tconst onSelectionChange = useCallback(\n\t\t( selectionChangeStart, selectionChangeEnd ) => {\n\t\t\tselectionChange(\n\t\t\t\tclientId,\n\t\t\t\tidentifier,\n\t\t\t\tselectionChangeStart,\n\t\t\t\tselectionChangeEnd\n\t\t\t);\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[ clientId, identifier ]\n\t);\n\n\tconst onDelete = useCallback(\n\t\t( { value, isReverse } ) => {\n\t\t\tif ( onMerge ) {\n\t\t\t\tonMerge( ! isReverse );\n\t\t\t}\n\n\t\t\t// Only handle remove on Backspace. This serves dual-purpose of being\n\t\t\t// an intentional user interaction distinguishing between Backspace and\n\t\t\t// Delete to remove the empty field, but also to avoid merge & remove\n\t\t\t// causing destruction of two fields (merge, then removed merged).\n\t\t\tif ( onRemove && isEmpty( value ) && isReverse ) {\n\t\t\t\tonRemove( ! isReverse );\n\t\t\t}\n\t\t},\n\t\t[ onMerge, onRemove ]\n\t);\n\n\t/**\n\t * Signals to the RichText owner that the block can be replaced with two\n\t * blocks as a result of splitting the block by pressing enter, or with\n\t * blocks as a result of splitting the block by pasting block content in the\n\t * instance.\n\t *\n\t * @param {Object} record The rich text value to split.\n\t * @param {Array} pastedBlocks The pasted blocks to insert, if any.\n\t */\n\tconst splitValue = useCallback(\n\t\t( record, pastedBlocks = [] ) => {\n\t\t\tif ( ! onReplace || ! onSplit ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst blocks = [];\n\t\t\tconst [ before, after ] = split( record );\n\t\t\tconst hasPastedBlocks = pastedBlocks.length > 0;\n\t\t\tlet lastPastedBlockIndex = -1;\n\n\t\t\t// Consider the after value to be the original it is not empty and\n\t\t\t// the before value *is* empty.\n\t\t\tconst isAfterOriginal = isEmpty( before ) && ! isEmpty( after );\n\n\t\t\t// Create a block with the content before the caret if there's no pasted\n\t\t\t// blocks, or if there are pasted blocks and the value is not empty.\n\t\t\t// We do not want a leading empty block on paste, but we do if split\n\t\t\t// with e.g. the enter key.\n\t\t\tif ( ! hasPastedBlocks || ! isEmpty( before ) ) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit(\n\t\t\t\t\t\ttoHTMLString( {\n\t\t\t\t\t\t\tvalue: before,\n\t\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t\t! isAfterOriginal\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tlastPastedBlockIndex += 1;\n\t\t\t}\n\n\t\t\tif ( hasPastedBlocks ) {\n\t\t\t\tblocks.push( ...pastedBlocks );\n\t\t\t\tlastPastedBlockIndex += pastedBlocks.length;\n\t\t\t} else if ( onSplitMiddle ) {\n\t\t\t\tblocks.push( onSplitMiddle() );\n\t\t\t}\n\n\t\t\t// If there's pasted blocks, append a block with non empty content\n\t\t\t// after the caret. Otherwise, do append an empty block if there\n\t\t\t// is no `onSplitMiddle` prop, but if there is and the content is\n\t\t\t// empty, the middle block is enough to set focus in.\n\t\t\tif (\n\t\t\t\thasPastedBlocks\n\t\t\t\t\t? ! isEmpty( after )\n\t\t\t\t\t: ! onSplitMiddle || ! isEmpty( after )\n\t\t\t) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit(\n\t\t\t\t\t\ttoHTMLString( {\n\t\t\t\t\t\t\tvalue: after,\n\t\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t\tisAfterOriginal\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// If there are pasted blocks, set the selection to the last one.\n\t\t\t// Otherwise, set the selection to the second block.\n\t\t\tconst indexToSelect = hasPastedBlocks ? lastPastedBlockIndex : 1;\n\n\t\t\t// If there are pasted blocks, move the caret to the end of the selected block\n\t\t\t// Otherwise, retain the default value.\n\t\t\tconst initialPosition = hasPastedBlocks ? -1 : 0;\n\n\t\t\tonReplace( blocks, indexToSelect, initialPosition );\n\t\t},\n\t\t[ onReplace, onSplit, multilineTag, onSplitMiddle ]\n\t);\n\n\tconst onEnter = useCallback(\n\t\t( { value, onChange, shiftKey } ) => {\n\t\t\tconst canSplit = onReplace && onSplit;\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst transforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t\t( { type } ) => type === 'enter'\n\t\t\t\t);\n\t\t\t\tconst transformation = findTransform( transforms, ( item ) => {\n\t\t\t\t\treturn item.regExp.test( value.text );\n\t\t\t\t} );\n\n\t\t\t\tif ( transformation ) {\n\t\t\t\t\tonReplace( [\n\t\t\t\t\t\ttransformation.transform( { content: value.text } ),\n\t\t\t\t\t] );\n\t\t\t\t\t__unstableMarkAutomaticChange();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( onCustomEnter ) {\n\t\t\t\tonCustomEnter();\n\t\t\t}\n\n\t\t\tif ( multiline ) {\n\t\t\t\tif ( shiftKey ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( canSplit && isEmptyLine( value ) ) {\n\t\t\t\t\tsplitValue( value );\n\t\t\t\t} else {\n\t\t\t\t\tonChange( insertLineSeparator( value ) );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst { text, start: splitStart, end: splitEnd } = value;\n\t\t\t\tconst canSplitAtEnd =\n\t\t\t\t\tonSplitAtEnd &&\n\t\t\t\t\tsplitStart === splitEnd &&\n\t\t\t\t\tsplitEnd === text.length;\n\n\t\t\t\tif ( shiftKey || ( ! canSplit && ! canSplitAtEnd ) ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( ! canSplit && canSplitAtEnd ) {\n\t\t\t\t\tonSplitAtEnd();\n\t\t\t\t} else if ( canSplit ) {\n\t\t\t\t\tsplitValue( value );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\t__unstableMarkAutomaticChange,\n\t\t\tmultiline,\n\t\t\tsplitValue,\n\t\t\tonSplitAtEnd,\n\t\t]\n\t);\n\n\tconst onPaste = useCallback(\n\t\t( {\n\t\t\tvalue,\n\t\t\tonChange,\n\t\t\thtml,\n\t\t\tplainText,\n\t\t\tisInternal,\n\t\t\tfiles,\n\t\t\tactiveFormats,\n\t\t} ) => {\n\t\t\t// If the data comes from a rich text instance, we can directly use it\n\t\t\t// without filtering the data. The filters are only meant for externally\n\t\t\t// pasted content and remove inline styles.\n\t\t\tif ( isInternal ) {\n\t\t\t\tconst pastedValue = create( {\n\t\t\t\t\thtml,\n\t\t\t\t\tmultilineTag,\n\t\t\t\t\tmultilineWrapperTags:\n\t\t\t\t\t\tmultilineTag === 'li' ? [ 'ul', 'ol' ] : undefined,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\t\t\t\taddActiveFormats( pastedValue, activeFormats );\n\t\t\t\tonChange( insert( value, pastedValue ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( pastePlainText ) {\n\t\t\t\tonChange( insert( value, create( { text: plainText } ) ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Only process file if no HTML is present.\n\t\t\t// Note: a pasted file may have the URL as plain text.\n\t\t\tif ( files && files.length && ! html ) {\n\t\t\t\tconst content = pasteHandler( {\n\t\t\t\t\tHTML: filePasteHandler( files ),\n\t\t\t\t\tmode: 'BLOCKS',\n\t\t\t\t\ttagName,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\n\t\t\t\t// Allows us to ask for this information when we get a report.\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\twindow.console.log( 'Received items:\\n\\n', files );\n\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tonReplace( content );\n\t\t\t\t} else {\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet mode = onReplace && onSplit ? 'AUTO' : 'INLINE';\n\n\t\t\t// Force the blocks mode when the user is pasting\n\t\t\t// on a new line & the content resembles a shortcode.\n\t\t\t// Otherwise it's going to be detected as inline\n\t\t\t// and the shortcode won't be replaced.\n\t\t\tif (\n\t\t\t\tmode === 'AUTO' &&\n\t\t\t\tisEmpty( value ) &&\n\t\t\t\tisShortcode( plainText )\n\t\t\t) {\n\t\t\t\tmode = 'BLOCKS';\n\t\t\t}\n\n\t\t\tconst isPastedURL = isURL( plainText.trim() );\n\t\t\tconst presentEmbedHandlerPicker = () =>\n\t\t\t\tembedHandlerPickerRef.current?.presentPicker( {\n\t\t\t\t\tcreateEmbed: () =>\n\t\t\t\t\t\tonReplace( content, content.length - 1, -1 ),\n\t\t\t\t\tcreateLink: () =>\n\t\t\t\t\t\tcreateLinkInParagraph( plainText.trim(), onReplace ),\n\t\t\t\t} );\n\n\t\t\tif (\n\t\t\t\t__unstableEmbedURLOnPaste &&\n\t\t\t\tisEmpty( value ) &&\n\t\t\t\tisPastedURL\n\t\t\t) {\n\t\t\t\tmode = 'BLOCKS';\n\t\t\t}\n\n\t\t\tconst content = pasteHandler( {\n\t\t\t\tHTML: html,\n\t\t\t\tplainText,\n\t\t\t\tmode,\n\t\t\t\ttagName,\n\t\t\t\tpreserveWhiteSpace,\n\t\t\t} );\n\n\t\t\tif ( typeof content === 'string' ) {\n\t\t\t\tlet valueToInsert = create( { html: content } );\n\n\t\t\t\taddActiveFormats( valueToInsert, activeFormats );\n\n\t\t\t\t// If the content should be multiline, we should process text\n\t\t\t\t// separated by a line break as separate lines.\n\t\t\t\tif ( multilineTag ) {\n\t\t\t\t\tvalueToInsert = replace(\n\t\t\t\t\t\tvalueToInsert,\n\t\t\t\t\t\t/\\n+/g,\n\t\t\t\t\t\tLINE_SEPARATOR\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tonChange( insert( value, valueToInsert ) );\n\t\t\t} else if ( content.length > 0 ) {\n\t\t\t\t// When an URL is pasted in an empty paragraph then the EmbedHandlerPicker should showcase options allowing the transformation of that URL\n\t\t\t\t// into either an Embed block or a link within the target paragraph. If the paragraph is non-empty, the URL is pasted as text.\n\t\t\t\tconst canPasteEmbed =\n\t\t\t\t\tisPastedURL &&\n\t\t\t\t\tcontent.length === 1 &&\n\t\t\t\t\tcontent[ 0 ].name === 'core/embed';\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( __unstableEmbedURLOnPaste ) {\n\t\t\t\t\t\t\tpresentEmbedHandlerPicker();\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonReplace( content, content.length - 1, -1 );\n\t\t\t\t} else {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\ttagName,\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\tsplitValue,\n\t\t\t__unstableEmbedURLOnPaste,\n\t\t\tmultilineTag,\n\t\t\tpreserveWhiteSpace,\n\t\t\tpastePlainText,\n\t\t]\n\t);\n\n\tconst inputRule = useCallback(\n\t\t( value, valueToFormat ) => {\n\t\t\tif ( ! onReplace ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { start: startPosition, text } = value;\n\t\t\tconst characterBefore = text.slice(\n\t\t\t\tstartPosition - 1,\n\t\t\t\tstartPosition\n\t\t\t);\n\n\t\t\t// The character right before the caret must be a plain space.\n\t\t\tif ( characterBefore !== ' ' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst trimmedTextBefore = text.slice( 0, startPosition ).trim();\n\t\t\tconst prefixTransforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t( { type } ) => type === 'prefix'\n\t\t\t);\n\t\t\tconst transformation = findTransform(\n\t\t\t\tprefixTransforms,\n\t\t\t\t( { prefix } ) => {\n\t\t\t\t\treturn trimmedTextBefore === prefix;\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( ! transformation ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst content = valueToFormat(\n\t\t\t\tslice( value, startPosition, text.length )\n\t\t\t);\n\t\t\tconst block = transformation.transform( content );\n\n\t\t\tonReplace( [ block ] );\n\t\t\t__unstableMarkAutomaticChange();\n\t\t},\n\t\t[ onReplace, __unstableMarkAutomaticChange ]\n\t);\n\n\tconst mergedRef = useMergeRefs( [ forwardedRef, fallbackRef ] );\n\n\treturn (\n\t\t<RichText\n\t\t\tclientId={ clientId }\n\t\t\tidentifier={ identifier }\n\t\t\tref={ mergedRef }\n\t\t\tvalue={ adjustedValue }\n\t\t\tonChange={ adjustedOnChange }\n\t\t\tselectionStart={ selectionStart }\n\t\t\tselectionEnd={ selectionEnd }\n\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\ttagName={ tagName }\n\t\t\tstart={ start }\n\t\t\treversed={ reversed }\n\t\t\tplaceholder={ placeholder }\n\t\t\tallowedFormats={ adjustedAllowedFormats }\n\t\t\twithoutInteractiveFormatting={ withoutInteractiveFormatting }\n\t\t\tonEnter={ onEnter }\n\t\t\tonDelete={ onDelete }\n\t\t\tonPaste={ onPaste }\n\t\t\t__unstableIsSelected={ isSelected }\n\t\t\t__unstableInputRule={ inputRule }\n\t\t\t__unstableMultilineTag={ multilineTag }\n\t\t\t__unstableOnEnterFormattedText={ enterFormattedText }\n\t\t\t__unstableOnExitFormattedText={ exitFormattedText }\n\t\t\t__unstableOnCreateUndoLevel={ __unstableMarkLastChangeAsPersistent }\n\t\t\t__unstableMarkAutomaticChange={ __unstableMarkAutomaticChange }\n\t\t\t__unstableDidAutomaticChange={ didAutomaticChange }\n\t\t\t__unstableUndo={ undo }\n\t\t\t__unstableDisableFormats={ disableFormats }\n\t\t\tpreserveWhiteSpace={ preserveWhiteSpace }\n\t\t\tdisabled={ disabled }\n\t\t\tunstableOnFocus={ unstableOnFocus }\n\t\t\t__unstableAllowPrefixTransformations={\n\t\t\t\t__unstableAllowPrefixTransformations\n\t\t\t}\n\t\t\t__unstableMultilineRootTag={ __unstableMultilineRootTag }\n\t\t\t// Native props.\n\t\t\tblockIsSelected={\n\t\t\t\toriginalIsSelected !== undefined\n\t\t\t\t\t? originalIsSelected\n\t\t\t\t\t: blockIsSelected\n\t\t\t}\n\t\t\tshouldBlurOnUnmount={ shouldBlurOnUnmount }\n\t\t\t__unstableMobileNoFocusOnMount={ __unstableMobileNoFocusOnMount }\n\t\t\tdeleteEnter={ deleteEnter }\n\t\t\tplaceholderTextColor={ placeholderTextColor }\n\t\t\ttextAlign={ textAlign }\n\t\t\tselectionColor={ selectionColor }\n\t\t\ttagsToEliminate={ tagsToEliminate }\n\t\t\tdisableEditingMenu={ disableEditingMenu }\n\t\t\tfontSize={ fontSize }\n\t\t\tfontFamily={ fontFamily }\n\t\t\tfontWeight={ fontWeight }\n\t\t\tfontStyle={ fontStyle }\n\t\t\tminWidth={ minWidth }\n\t\t\tmaxWidth={ maxWidth }\n\t\t\tonBlur={ onBlur }\n\t\t\tsetRef={ setRef }\n\t\t\tdisableSuggestions={ disableSuggestions }\n\t\t\tdisableAutocorrection={ disableAutocorrection }\n\t\t\tcontainerWidth={ containerWidth }\n\t\t\t// Props to be set on the editable container are destructured on the\n\t\t\t// element itself for web (see below), but passed through rich text\n\t\t\t// for native.\n\t\t\tid={ props.id }\n\t\t\tstyle={ props.style }\n\t\t>\n\t\t\t{ ( {\n\t\t\t\tisSelected: nestedIsSelected,\n\t\t\t\tvalue,\n\t\t\t\tonChange,\n\t\t\t\tonFocus,\n\t\t\t\teditableProps,\n\t\t\t\teditableTagName: TagName,\n\t\t\t} ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ children && children( { value, onChange, onFocus } ) }\n\t\t\t\t\t{ nestedIsSelected && hasFormats && (\n\t\t\t\t\t\t<FormatToolbarContainer\n\t\t\t\t\t\t\tinline={ inlineToolbar }\n\t\t\t\t\t\t\tanchorRef={ fallbackRef.current }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ nestedIsSelected && <RemoveBrowserShortcuts /> }\n\t\t\t\t\t<Autocomplete\n\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\tcompleters={ autocompleters }\n\t\t\t\t\t\trecord={ value }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisSelected={ nestedIsSelected }\n\t\t\t\t\t\tcontentRef={ fallbackRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { listBoxId, activeId, onKeyDown } ) => (\n\t\t\t\t\t\t\t<TagName\n\t\t\t\t\t\t\t\t{ ...editableProps }\n\t\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\tprops.style\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t...props.style,\n\t\t\t\t\t\t\t\t\t\t\t\t...editableProps.style,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: editableProps.style\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t\tprops.className,\n\t\t\t\t\t\t\t\t\teditableProps.className\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\taria-autocomplete={\n\t\t\t\t\t\t\t\t\tlistBoxId ? 'list' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\taria-owns={ listBoxId }\n\t\t\t\t\t\t\t\taria-activedescendant={ activeId }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tonKeyDown( event );\n\t\t\t\t\t\t\t\t\teditableProps.onKeyDown( event );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Autocomplete>\n\t\t\t\t\t<EmbedHandlerPicker ref={ embedHandlerPickerRef } />\n\t\t\t\t</>\n\t\t\t) }\n\t\t</RichText>\n\t);\n}\n\nconst ForwardedRichTextContainer = forwardRef( RichTextWrapper );\n\nForwardedRichTextContainer.Content = ( {\n\tvalue,\n\ttagName: Tag,\n\tmultiline,\n\t...props\n} ) => {\n\t// Handle deprecated `children` and `node` sources.\n\tif ( Array.isArray( value ) ) {\n\t\tvalue = childrenSource.toHTML( value );\n\t}\n\n\tconst MultilineTag = getMultilineTag( multiline );\n\n\tif ( ! value && MultilineTag ) {\n\t\tvalue = `<${ MultilineTag }></${ MultilineTag }>`;\n\t}\n\n\tconst content = <RawHTML>{ value }</RawHTML>;\n\n\tif ( Tag ) {\n\t\tconst { format, ...restProps } = props;\n\t\treturn <Tag { ...restProps }>{ content }</Tag>;\n\t}\n\n\treturn content;\n};\n\nForwardedRichTextContainer.isEmpty = ( value ) => {\n\treturn ! value || value.length === 0;\n};\n\nForwardedRichTextContainer.Content.defaultProps = {\n\tformat: 'string',\n\tvalue: '',\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/rich-text/README.md\n */\nexport default ForwardedRichTextContainer;\nexport { RichTextShortcut } from './shortcut';\nexport { RichTextToolbarButton } from './toolbar-button';\nexport { __unstableRichTextInputEvent } from './input-event';\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/index.native.js"],"names":["classnames","RawHTML","Platform","useRef","useCallback","forwardRef","useDispatch","useSelect","pasteHandler","children","childrenSource","getBlockTransforms","findTransform","isUnmodifiedDefaultBlock","useInstanceId","useMergeRefs","__experimentalRichText","RichText","__unstableCreateElement","isEmpty","__unstableIsEmptyLine","isEmptyLine","insert","__unstableInsertLineSeparator","insertLineSeparator","create","replace","split","__UNSTABLE_LINE_SEPARATOR","LINE_SEPARATOR","toHTMLString","slice","isURL","Autocomplete","useBlockEditContext","RemoveBrowserShortcuts","filePasteHandler","FormatToolbarContainer","store","blockEditorStore","addActiveFormats","getMultilineTag","getAllowedFormats","isShortcode","createLinkInParagraph","EmbedHandlerPicker","classes","RichTextWrapper","tagName","start","reversed","value","originalValue","onChange","originalOnChange","isSelected","originalIsSelected","multiline","inlineToolbar","wrapperClassName","autocompleters","onReplace","placeholder","allowedFormats","withoutInteractiveFormatting","onRemove","onMerge","onSplit","__unstableOnSplitAtEnd","onSplitAtEnd","__unstableOnSplitMiddle","onSplitMiddle","identifier","preserveWhiteSpace","__unstablePastePlainText","pastePlainText","__unstableEmbedURLOnPaste","__unstableDisableFormats","disableFormats","disableLineBreaks","unstableOnFocus","__unstableAllowPrefixTransformations","__unstableMultilineRootTag","__unstableMobileNoFocusOnMount","deleteEnter","placeholderTextColor","textAlign","selectionColor","tagsToEliminate","disableEditingMenu","fontSize","fontFamily","fontWeight","fontStyle","minWidth","maxWidth","onBlur","setRef","disableSuggestions","disableAutocorrection","containerWidth","onEnter","onCustomEnter","props","forwardedRef","instanceId","fallbackRef","clientId","blockIsSelected","embedHandlerPickerRef","selector","select","getSelectionStart","getSelectionEnd","getSettings","didAutomaticChange","getBlock","isMultiSelecting","hasMultiSelection","selectionStart","selectionEnd","__experimentalUndo","undo","undefined","attributeKey","extraProps","OS","block","shouldBlurOnUnmount","offset","disabled","__unstableMarkLastChangeAsPersistent","enterFormattedText","exitFormattedText","selectionChange","__unstableMarkAutomaticChange","multilineTag","adjustedAllowedFormats","hasFormats","length","adjustedValue","adjustedOnChange","Array","isArray","toHTML","newValue","fromDOM","document","childNodes","onSelectionChange","selectionChangeStart","selectionChangeEnd","onDelete","isReverse","splitValue","record","pastedBlocks","blocks","before","after","hasPastedBlocks","lastPastedBlockIndex","isAfterOriginal","push","indexToSelect","initialPosition","shiftKey","canSplit","transforms","filter","type","transformation","item","regExp","test","text","transform","content","splitStart","end","splitEnd","canSplitAtEnd","onPaste","html","plainText","isInternal","files","activeFormats","pastedValue","multilineWrapperTags","HTML","mode","window","console","log","isPastedURL","trim","presentEmbedHandlerPicker","current","presentPicker","createEmbed","createLink","valueToInsert","canPasteEmbed","name","inputRule","valueToFormat","startPosition","characterBefore","trimmedTextBefore","prefixTransforms","prefix","mergedRef","id","style","nestedIsSelected","onFocus","editableProps","editableTagName","TagName","listBoxId","activeId","onKeyDown","className","event","ForwardedRichTextContainer","Content","Tag","MultilineTag","format","restProps","defaultProps","RichTextShortcut","RichTextToolbarButton","__unstableRichTextInputEvent"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRawHTML,\n\tPlatform,\n\tuseRef,\n\tuseCallback,\n\tforwardRef,\n} from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tpasteHandler,\n\tchildren as childrenSource,\n\tgetBlockTransforms,\n\tfindTransform,\n\tisUnmodifiedDefaultBlock,\n} from '@wordpress/blocks';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\nimport {\n\t__experimentalRichText as RichText,\n\t__unstableCreateElement,\n\tisEmpty,\n\t__unstableIsEmptyLine as isEmptyLine,\n\tinsert,\n\t__unstableInsertLineSeparator as insertLineSeparator,\n\tcreate,\n\treplace,\n\tsplit,\n\t__UNSTABLE_LINE_SEPARATOR as LINE_SEPARATOR,\n\ttoHTMLString,\n\tslice,\n} from '@wordpress/rich-text';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Autocomplete from '../autocomplete';\nimport { useBlockEditContext } from '../block-edit';\nimport { RemoveBrowserShortcuts } from './remove-browser-shortcuts';\nimport { filePasteHandler } from './file-paste-handler';\nimport FormatToolbarContainer from './format-toolbar-container';\nimport { store as blockEditorStore } from '../../store';\nimport {\n\taddActiveFormats,\n\tgetMultilineTag,\n\tgetAllowedFormats,\n\tisShortcode,\n\tcreateLinkInParagraph,\n} from './utils';\nimport EmbedHandlerPicker from './embed-handler-picker';\n\nconst classes = 'block-editor-rich-text__editable';\n\nfunction RichTextWrapper(\n\t{\n\t\tchildren,\n\t\ttagName,\n\t\tstart,\n\t\treversed,\n\t\tvalue: originalValue,\n\t\tonChange: originalOnChange,\n\t\tisSelected: originalIsSelected,\n\t\tmultiline,\n\t\tinlineToolbar,\n\t\twrapperClassName,\n\t\tautocompleters,\n\t\tonReplace,\n\t\tplaceholder,\n\t\tallowedFormats,\n\t\twithoutInteractiveFormatting,\n\t\tonRemove,\n\t\tonMerge,\n\t\tonSplit,\n\t\t__unstableOnSplitAtEnd: onSplitAtEnd,\n\t\t__unstableOnSplitMiddle: onSplitMiddle,\n\t\tidentifier,\n\t\tpreserveWhiteSpace,\n\t\t__unstablePastePlainText: pastePlainText,\n\t\t__unstableEmbedURLOnPaste,\n\t\t__unstableDisableFormats: disableFormats,\n\t\tdisableLineBreaks,\n\t\tunstableOnFocus,\n\t\t__unstableAllowPrefixTransformations,\n\t\t__unstableMultilineRootTag,\n\t\t// Native props.\n\t\t__unstableMobileNoFocusOnMount,\n\t\tdeleteEnter,\n\t\tplaceholderTextColor,\n\t\ttextAlign,\n\t\tselectionColor,\n\t\ttagsToEliminate,\n\t\tdisableEditingMenu,\n\t\tfontSize,\n\t\tfontFamily,\n\t\tfontWeight,\n\t\tfontStyle,\n\t\tminWidth,\n\t\tmaxWidth,\n\t\tonBlur,\n\t\tsetRef,\n\t\tdisableSuggestions,\n\t\tdisableAutocorrection,\n\t\tcontainerWidth,\n\t\tonEnter: onCustomEnter,\n\t\t...props\n\t},\n\tforwardedRef\n) {\n\tconst instanceId = useInstanceId( RichTextWrapper );\n\n\tidentifier = identifier || instanceId;\n\n\tconst fallbackRef = useRef();\n\tconst { clientId, isSelected: blockIsSelected } = useBlockEditContext();\n\tconst embedHandlerPickerRef = useRef();\n\tconst selector = ( select ) => {\n\t\tconst {\n\t\t\tgetSelectionStart,\n\t\t\tgetSelectionEnd,\n\t\t\tgetSettings,\n\t\t\tdidAutomaticChange,\n\t\t\tgetBlock,\n\t\t\tisMultiSelecting,\n\t\t\thasMultiSelection,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectionStart = getSelectionStart();\n\t\tconst selectionEnd = getSelectionEnd();\n\t\tconst { __experimentalUndo: undo } = getSettings();\n\n\t\tlet isSelected;\n\n\t\tif ( originalIsSelected === undefined ) {\n\t\t\tisSelected =\n\t\t\t\tselectionStart.clientId === clientId &&\n\t\t\t\tselectionStart.attributeKey === identifier;\n\t\t} else if ( originalIsSelected ) {\n\t\t\tisSelected = selectionStart.clientId === clientId;\n\t\t}\n\n\t\tlet extraProps = {};\n\t\tif ( Platform.OS === 'native' ) {\n\t\t\t// If the block of this RichText is unmodified then it's a candidate for replacing when adding a new block.\n\t\t\t// In order to fix https://github.com/wordpress-mobile/gutenberg-mobile/issues/1126, let's blur on unmount in that case.\n\t\t\t// This apparently assumes functionality the BlockHlder actually.\n\t\t\tconst block = clientId && getBlock( clientId );\n\t\t\tconst shouldBlurOnUnmount =\n\t\t\t\tblock && isSelected && isUnmodifiedDefaultBlock( block );\n\t\t\textraProps = {\n\t\t\t\tshouldBlurOnUnmount,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tselectionStart: isSelected ? selectionStart.offset : undefined,\n\t\t\tselectionEnd: isSelected ? selectionEnd.offset : undefined,\n\t\t\tisSelected,\n\t\t\tdidAutomaticChange: didAutomaticChange(),\n\t\t\tdisabled: isMultiSelecting() || hasMultiSelection(),\n\t\t\tundo,\n\t\t\t...extraProps,\n\t\t};\n\t};\n\t// This selector must run on every render so the right selection state is\n\t// retrieved from the store on merge.\n\t// To do: fix this somehow.\n\tconst {\n\t\tselectionStart,\n\t\tselectionEnd,\n\t\tisSelected,\n\t\tdidAutomaticChange,\n\t\tdisabled,\n\t\tundo,\n\t\tshouldBlurOnUnmount,\n\t} = useSelect( selector );\n\tconst {\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\tenterFormattedText,\n\t\texitFormattedText,\n\t\tselectionChange,\n\t\t__unstableMarkAutomaticChange,\n\t} = useDispatch( blockEditorStore );\n\tconst multilineTag = getMultilineTag( multiline );\n\tconst adjustedAllowedFormats = getAllowedFormats( {\n\t\tallowedFormats,\n\t\tdisableFormats,\n\t} );\n\tconst hasFormats =\n\t\t! adjustedAllowedFormats || adjustedAllowedFormats.length > 0;\n\tlet adjustedValue = originalValue;\n\tlet adjustedOnChange = originalOnChange;\n\n\t// Handle deprecated format.\n\tif ( Array.isArray( originalValue ) ) {\n\t\tadjustedValue = childrenSource.toHTML( originalValue );\n\t\tadjustedOnChange = ( newValue ) =>\n\t\t\toriginalOnChange(\n\t\t\t\tchildrenSource.fromDOM(\n\t\t\t\t\t__unstableCreateElement( document, newValue ).childNodes\n\t\t\t\t)\n\t\t\t);\n\t}\n\n\tconst onSelectionChange = useCallback(\n\t\t( selectionChangeStart, selectionChangeEnd ) => {\n\t\t\tselectionChange(\n\t\t\t\tclientId,\n\t\t\t\tidentifier,\n\t\t\t\tselectionChangeStart,\n\t\t\t\tselectionChangeEnd\n\t\t\t);\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[ clientId, identifier ]\n\t);\n\n\tconst onDelete = useCallback(\n\t\t( { value, isReverse } ) => {\n\t\t\tif ( onMerge ) {\n\t\t\t\tonMerge( ! isReverse );\n\t\t\t}\n\n\t\t\t// Only handle remove on Backspace. This serves dual-purpose of being\n\t\t\t// an intentional user interaction distinguishing between Backspace and\n\t\t\t// Delete to remove the empty field, but also to avoid merge & remove\n\t\t\t// causing destruction of two fields (merge, then removed merged).\n\t\t\tif ( onRemove && isEmpty( value ) && isReverse ) {\n\t\t\t\tonRemove( ! isReverse );\n\t\t\t}\n\t\t},\n\t\t[ onMerge, onRemove ]\n\t);\n\n\t/**\n\t * Signals to the RichText owner that the block can be replaced with two\n\t * blocks as a result of splitting the block by pressing enter, or with\n\t * blocks as a result of splitting the block by pasting block content in the\n\t * instance.\n\t *\n\t * @param {Object} record The rich text value to split.\n\t * @param {Array} pastedBlocks The pasted blocks to insert, if any.\n\t */\n\tconst splitValue = useCallback(\n\t\t( record, pastedBlocks = [] ) => {\n\t\t\tif ( ! onReplace || ! onSplit ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst blocks = [];\n\t\t\tconst [ before, after ] = split( record );\n\t\t\tconst hasPastedBlocks = pastedBlocks.length > 0;\n\t\t\tlet lastPastedBlockIndex = -1;\n\n\t\t\t// Consider the after value to be the original it is not empty and\n\t\t\t// the before value *is* empty.\n\t\t\tconst isAfterOriginal = isEmpty( before ) && ! isEmpty( after );\n\n\t\t\t// Create a block with the content before the caret if there's no pasted\n\t\t\t// blocks, or if there are pasted blocks and the value is not empty.\n\t\t\t// We do not want a leading empty block on paste, but we do if split\n\t\t\t// with e.g. the enter key.\n\t\t\tif ( ! hasPastedBlocks || ! isEmpty( before ) ) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit(\n\t\t\t\t\t\ttoHTMLString( {\n\t\t\t\t\t\t\tvalue: before,\n\t\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t\t! isAfterOriginal\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tlastPastedBlockIndex += 1;\n\t\t\t}\n\n\t\t\tif ( hasPastedBlocks ) {\n\t\t\t\tblocks.push( ...pastedBlocks );\n\t\t\t\tlastPastedBlockIndex += pastedBlocks.length;\n\t\t\t} else if ( onSplitMiddle ) {\n\t\t\t\tblocks.push( onSplitMiddle() );\n\t\t\t}\n\n\t\t\t// If there's pasted blocks, append a block with non empty content\n\t\t\t// after the caret. Otherwise, do append an empty block if there\n\t\t\t// is no `onSplitMiddle` prop, but if there is and the content is\n\t\t\t// empty, the middle block is enough to set focus in.\n\t\t\tif (\n\t\t\t\thasPastedBlocks\n\t\t\t\t\t? ! isEmpty( after )\n\t\t\t\t\t: ! onSplitMiddle || ! isEmpty( after )\n\t\t\t) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit(\n\t\t\t\t\t\ttoHTMLString( {\n\t\t\t\t\t\t\tvalue: after,\n\t\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t\tisAfterOriginal\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// If there are pasted blocks, set the selection to the last one.\n\t\t\t// Otherwise, set the selection to the second block.\n\t\t\tconst indexToSelect = hasPastedBlocks ? lastPastedBlockIndex : 1;\n\n\t\t\t// If there are pasted blocks, move the caret to the end of the selected block\n\t\t\t// Otherwise, retain the default value.\n\t\t\tconst initialPosition = hasPastedBlocks ? -1 : 0;\n\n\t\t\tonReplace( blocks, indexToSelect, initialPosition );\n\t\t},\n\t\t[ onReplace, onSplit, multilineTag, onSplitMiddle ]\n\t);\n\n\tconst onEnter = useCallback(\n\t\t( { value, onChange, shiftKey } ) => {\n\t\t\tconst canSplit = onReplace && onSplit;\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst transforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t\t( { type } ) => type === 'enter'\n\t\t\t\t);\n\t\t\t\tconst transformation = findTransform( transforms, ( item ) => {\n\t\t\t\t\treturn item.regExp.test( value.text );\n\t\t\t\t} );\n\n\t\t\t\tif ( transformation ) {\n\t\t\t\t\tonReplace( [\n\t\t\t\t\t\ttransformation.transform( { content: value.text } ),\n\t\t\t\t\t] );\n\t\t\t\t\t__unstableMarkAutomaticChange();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( onCustomEnter ) {\n\t\t\t\tonCustomEnter();\n\t\t\t}\n\n\t\t\tif ( multiline ) {\n\t\t\t\tif ( shiftKey ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( canSplit && isEmptyLine( value ) ) {\n\t\t\t\t\tsplitValue( value );\n\t\t\t\t} else {\n\t\t\t\t\tonChange( insertLineSeparator( value ) );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst { text, start: splitStart, end: splitEnd } = value;\n\t\t\t\tconst canSplitAtEnd =\n\t\t\t\t\tonSplitAtEnd &&\n\t\t\t\t\tsplitStart === splitEnd &&\n\t\t\t\t\tsplitEnd === text.length;\n\n\t\t\t\tif ( shiftKey || ( ! canSplit && ! canSplitAtEnd ) ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( ! canSplit && canSplitAtEnd ) {\n\t\t\t\t\tonSplitAtEnd();\n\t\t\t\t} else if ( canSplit ) {\n\t\t\t\t\tsplitValue( value );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\t__unstableMarkAutomaticChange,\n\t\t\tmultiline,\n\t\t\tsplitValue,\n\t\t\tonSplitAtEnd,\n\t\t]\n\t);\n\n\tconst onPaste = useCallback(\n\t\t( {\n\t\t\tvalue,\n\t\t\tonChange,\n\t\t\thtml,\n\t\t\tplainText,\n\t\t\tisInternal,\n\t\t\tfiles,\n\t\t\tactiveFormats,\n\t\t} ) => {\n\t\t\t// If the data comes from a rich text instance, we can directly use it\n\t\t\t// without filtering the data. The filters are only meant for externally\n\t\t\t// pasted content and remove inline styles.\n\t\t\tif ( isInternal ) {\n\t\t\t\tconst pastedValue = create( {\n\t\t\t\t\thtml,\n\t\t\t\t\tmultilineTag,\n\t\t\t\t\tmultilineWrapperTags:\n\t\t\t\t\t\tmultilineTag === 'li' ? [ 'ul', 'ol' ] : undefined,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\t\t\t\taddActiveFormats( pastedValue, activeFormats );\n\t\t\t\tonChange( insert( value, pastedValue ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( pastePlainText ) {\n\t\t\t\tonChange( insert( value, create( { text: plainText } ) ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Only process file if no HTML is present.\n\t\t\t// Note: a pasted file may have the URL as plain text.\n\t\t\tif ( files && files.length && ! html ) {\n\t\t\t\tconst content = pasteHandler( {\n\t\t\t\t\tHTML: filePasteHandler( files ),\n\t\t\t\t\tmode: 'BLOCKS',\n\t\t\t\t\ttagName,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\n\t\t\t\t// Allows us to ask for this information when we get a report.\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\twindow.console.log( 'Received items:\\n\\n', files );\n\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tonReplace( content );\n\t\t\t\t} else {\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet mode = onReplace && onSplit ? 'AUTO' : 'INLINE';\n\n\t\t\t// Force the blocks mode when the user is pasting\n\t\t\t// on a new line & the content resembles a shortcode.\n\t\t\t// Otherwise it's going to be detected as inline\n\t\t\t// and the shortcode won't be replaced.\n\t\t\tif (\n\t\t\t\tmode === 'AUTO' &&\n\t\t\t\tisEmpty( value ) &&\n\t\t\t\tisShortcode( plainText )\n\t\t\t) {\n\t\t\t\tmode = 'BLOCKS';\n\t\t\t}\n\n\t\t\tconst isPastedURL = isURL( plainText.trim() );\n\t\t\tconst presentEmbedHandlerPicker = () =>\n\t\t\t\tembedHandlerPickerRef.current?.presentPicker( {\n\t\t\t\t\tcreateEmbed: () =>\n\t\t\t\t\t\tonReplace( content, content.length - 1, -1 ),\n\t\t\t\t\tcreateLink: () =>\n\t\t\t\t\t\tcreateLinkInParagraph( plainText.trim(), onReplace ),\n\t\t\t\t} );\n\n\t\t\tif (\n\t\t\t\t__unstableEmbedURLOnPaste &&\n\t\t\t\tisEmpty( value ) &&\n\t\t\t\tisPastedURL\n\t\t\t) {\n\t\t\t\tmode = 'BLOCKS';\n\t\t\t}\n\n\t\t\tconst content = pasteHandler( {\n\t\t\t\tHTML: html,\n\t\t\t\tplainText,\n\t\t\t\tmode,\n\t\t\t\ttagName,\n\t\t\t\tpreserveWhiteSpace,\n\t\t\t} );\n\n\t\t\tif ( typeof content === 'string' ) {\n\t\t\t\tlet valueToInsert = create( { html: content } );\n\n\t\t\t\taddActiveFormats( valueToInsert, activeFormats );\n\n\t\t\t\t// If the content should be multiline, we should process text\n\t\t\t\t// separated by a line break as separate lines.\n\t\t\t\tif ( multilineTag ) {\n\t\t\t\t\tvalueToInsert = replace(\n\t\t\t\t\t\tvalueToInsert,\n\t\t\t\t\t\t/\\n+/g,\n\t\t\t\t\t\tLINE_SEPARATOR\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tonChange( insert( value, valueToInsert ) );\n\t\t\t} else if ( content.length > 0 ) {\n\t\t\t\t// When an URL is pasted in an empty paragraph then the EmbedHandlerPicker should showcase options allowing the transformation of that URL\n\t\t\t\t// into either an Embed block or a link within the target paragraph. If the paragraph is non-empty, the URL is pasted as text.\n\t\t\t\tconst canPasteEmbed =\n\t\t\t\t\tisPastedURL &&\n\t\t\t\t\tcontent.length === 1 &&\n\t\t\t\t\tcontent[ 0 ].name === 'core/embed';\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( __unstableEmbedURLOnPaste ) {\n\t\t\t\t\t\t\tpresentEmbedHandlerPicker();\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonReplace( content, content.length - 1, -1 );\n\t\t\t\t} else {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\ttagName,\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\tsplitValue,\n\t\t\t__unstableEmbedURLOnPaste,\n\t\t\tmultilineTag,\n\t\t\tpreserveWhiteSpace,\n\t\t\tpastePlainText,\n\t\t]\n\t);\n\n\tconst inputRule = useCallback(\n\t\t( value, valueToFormat ) => {\n\t\t\tif ( ! onReplace ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { start: startPosition, text } = value;\n\t\t\tconst characterBefore = text.slice(\n\t\t\t\tstartPosition - 1,\n\t\t\t\tstartPosition\n\t\t\t);\n\n\t\t\t// The character right before the caret must be a plain space.\n\t\t\tif ( characterBefore !== ' ' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst trimmedTextBefore = text.slice( 0, startPosition ).trim();\n\t\t\tconst prefixTransforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t( { type } ) => type === 'prefix'\n\t\t\t);\n\t\t\tconst transformation = findTransform(\n\t\t\t\tprefixTransforms,\n\t\t\t\t( { prefix } ) => {\n\t\t\t\t\treturn trimmedTextBefore === prefix;\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( ! transformation ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst content = valueToFormat(\n\t\t\t\tslice( value, startPosition, text.length )\n\t\t\t);\n\t\t\tconst block = transformation.transform( content );\n\n\t\t\tonReplace( [ block ] );\n\t\t\t__unstableMarkAutomaticChange();\n\t\t},\n\t\t[ onReplace, __unstableMarkAutomaticChange ]\n\t);\n\n\tconst mergedRef = useMergeRefs( [ forwardedRef, fallbackRef ] );\n\n\treturn (\n\t\t<RichText\n\t\t\tclientId={ clientId }\n\t\t\tidentifier={ identifier }\n\t\t\tref={ mergedRef }\n\t\t\tvalue={ adjustedValue }\n\t\t\tonChange={ adjustedOnChange }\n\t\t\tselectionStart={ selectionStart }\n\t\t\tselectionEnd={ selectionEnd }\n\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\ttagName={ tagName }\n\t\t\tstart={ start }\n\t\t\treversed={ reversed }\n\t\t\tplaceholder={ placeholder }\n\t\t\tallowedFormats={ adjustedAllowedFormats }\n\t\t\twithoutInteractiveFormatting={ withoutInteractiveFormatting }\n\t\t\tonEnter={ onEnter }\n\t\t\tonDelete={ onDelete }\n\t\t\tonPaste={ onPaste }\n\t\t\t__unstableIsSelected={ isSelected }\n\t\t\t__unstableInputRule={ inputRule }\n\t\t\t__unstableMultilineTag={ multilineTag }\n\t\t\t__unstableOnEnterFormattedText={ enterFormattedText }\n\t\t\t__unstableOnExitFormattedText={ exitFormattedText }\n\t\t\t__unstableOnCreateUndoLevel={ __unstableMarkLastChangeAsPersistent }\n\t\t\t__unstableMarkAutomaticChange={ __unstableMarkAutomaticChange }\n\t\t\t__unstableDidAutomaticChange={ didAutomaticChange }\n\t\t\t__unstableUndo={ undo }\n\t\t\t__unstableDisableFormats={ disableFormats }\n\t\t\tpreserveWhiteSpace={ preserveWhiteSpace }\n\t\t\tdisabled={ disabled }\n\t\t\tunstableOnFocus={ unstableOnFocus }\n\t\t\t__unstableAllowPrefixTransformations={\n\t\t\t\t__unstableAllowPrefixTransformations\n\t\t\t}\n\t\t\t__unstableMultilineRootTag={ __unstableMultilineRootTag }\n\t\t\t// Native props.\n\t\t\tblockIsSelected={\n\t\t\t\toriginalIsSelected !== undefined\n\t\t\t\t\t? originalIsSelected\n\t\t\t\t\t: blockIsSelected\n\t\t\t}\n\t\t\tshouldBlurOnUnmount={ shouldBlurOnUnmount }\n\t\t\t__unstableMobileNoFocusOnMount={ __unstableMobileNoFocusOnMount }\n\t\t\tdeleteEnter={ deleteEnter }\n\t\t\tplaceholderTextColor={ placeholderTextColor }\n\t\t\ttextAlign={ textAlign }\n\t\t\tselectionColor={ selectionColor }\n\t\t\ttagsToEliminate={ tagsToEliminate }\n\t\t\tdisableEditingMenu={ disableEditingMenu }\n\t\t\tfontSize={ fontSize }\n\t\t\tfontFamily={ fontFamily }\n\t\t\tfontWeight={ fontWeight }\n\t\t\tfontStyle={ fontStyle }\n\t\t\tminWidth={ minWidth }\n\t\t\tmaxWidth={ maxWidth }\n\t\t\tonBlur={ onBlur }\n\t\t\tsetRef={ setRef }\n\t\t\tdisableSuggestions={ disableSuggestions }\n\t\t\tdisableAutocorrection={ disableAutocorrection }\n\t\t\tcontainerWidth={ containerWidth }\n\t\t\t// Props to be set on the editable container are destructured on the\n\t\t\t// element itself for web (see below), but passed through rich text\n\t\t\t// for native.\n\t\t\tid={ props.id }\n\t\t\tstyle={ props.style }\n\t\t>\n\t\t\t{ ( {\n\t\t\t\tisSelected: nestedIsSelected,\n\t\t\t\tvalue,\n\t\t\t\tonChange,\n\t\t\t\tonFocus,\n\t\t\t\teditableProps,\n\t\t\t\teditableTagName: TagName,\n\t\t\t} ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ children && children( { value, onChange, onFocus } ) }\n\t\t\t\t\t{ nestedIsSelected && hasFormats && (\n\t\t\t\t\t\t<FormatToolbarContainer\n\t\t\t\t\t\t\tinline={ inlineToolbar }\n\t\t\t\t\t\t\tanchorRef={ fallbackRef.current }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ nestedIsSelected && <RemoveBrowserShortcuts /> }\n\t\t\t\t\t<Autocomplete\n\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\tcompleters={ autocompleters }\n\t\t\t\t\t\trecord={ value }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisSelected={ nestedIsSelected }\n\t\t\t\t\t\tcontentRef={ fallbackRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { listBoxId, activeId, onKeyDown } ) => (\n\t\t\t\t\t\t\t<TagName\n\t\t\t\t\t\t\t\t{ ...editableProps }\n\t\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\tprops.style\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t...props.style,\n\t\t\t\t\t\t\t\t\t\t\t\t...editableProps.style,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: editableProps.style\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t\tprops.className,\n\t\t\t\t\t\t\t\t\teditableProps.className\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\taria-autocomplete={\n\t\t\t\t\t\t\t\t\tlistBoxId ? 'list' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\taria-owns={ listBoxId }\n\t\t\t\t\t\t\t\taria-activedescendant={ activeId }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tonKeyDown( event );\n\t\t\t\t\t\t\t\t\teditableProps.onKeyDown( event );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Autocomplete>\n\t\t\t\t\t<EmbedHandlerPicker ref={ embedHandlerPickerRef } />\n\t\t\t\t</>\n\t\t\t) }\n\t\t</RichText>\n\t);\n}\n\nconst ForwardedRichTextContainer = forwardRef( RichTextWrapper );\n\nForwardedRichTextContainer.Content = ( {\n\tvalue,\n\ttagName: Tag,\n\tmultiline,\n\t...props\n} ) => {\n\t// Handle deprecated `children` and `node` sources.\n\tif ( Array.isArray( value ) ) {\n\t\tvalue = childrenSource.toHTML( value );\n\t}\n\n\tconst MultilineTag = getMultilineTag( multiline );\n\n\tif ( ! value && MultilineTag ) {\n\t\tvalue = `<${ MultilineTag }></${ MultilineTag }>`;\n\t}\n\n\tconst content = <RawHTML>{ value }</RawHTML>;\n\n\tif ( Tag ) {\n\t\tconst { format, ...restProps } = props;\n\t\treturn <Tag { ...restProps }>{ content }</Tag>;\n\t}\n\n\treturn content;\n};\n\nForwardedRichTextContainer.isEmpty = ( value ) => {\n\treturn ! value || value.length === 0;\n};\n\nForwardedRichTextContainer.Content.defaultProps = {\n\tformat: 'string',\n\tvalue: '',\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/rich-text/README.md\n */\nexport default ForwardedRichTextContainer;\nexport { RichTextShortcut } from './shortcut';\nexport { RichTextToolbarButton } from './toolbar-button';\nexport { __unstableRichTextInputEvent } from './input-event';\n"]}
@@ -7,11 +7,10 @@ import { useEffect, useContext, useRef } from '@wordpress/element';
7
7
  */
8
8
 
9
9
  import { inputEventContext } from './';
10
- export function __unstableRichTextInputEvent(_ref) {
11
- let {
12
- inputType,
13
- onInput
14
- } = _ref;
10
+ export function __unstableRichTextInputEvent({
11
+ inputType,
12
+ onInput
13
+ }) {
15
14
  const callbacks = useContext(inputEventContext);
16
15
  const onInputRef = useRef();
17
16
  onInputRef.current = onInput;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/input-event.js"],"names":["useEffect","useContext","useRef","inputEventContext","__unstableRichTextInputEvent","inputType","onInput","callbacks","onInputRef","current","callback","event","preventDefault","add","delete"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,UAApB,EAAgCC,MAAhC,QAA8C,oBAA9C;AAEA;AACA;AACA;;AACA,SAASC,iBAAT,QAAkC,IAAlC;AAEA,OAAO,SAASC,4BAAT,OAAgE;AAAA,MAAzB;AAAEC,IAAAA,SAAF;AAAaC,IAAAA;AAAb,GAAyB;AACtE,QAAMC,SAAS,GAAGN,UAAU,CAAEE,iBAAF,CAA5B;AACA,QAAMK,UAAU,GAAGN,MAAM,EAAzB;AACAM,EAAAA,UAAU,CAACC,OAAX,GAAqBH,OAArB;AAEAN,EAAAA,SAAS,CAAE,MAAM;AAChB,aAASU,QAAT,CAAmBC,KAAnB,EAA2B;AAC1B,UAAKA,KAAK,CAACN,SAAN,KAAoBA,SAAzB,EAAqC;AACpCG,QAAAA,UAAU,CAACC,OAAX;AACAE,QAAAA,KAAK,CAACC,cAAN;AACA;AACD;;AAEDL,IAAAA,SAAS,CAACE,OAAV,CAAkBI,GAAlB,CAAuBH,QAAvB;AACA,WAAO,MAAM;AACZH,MAAAA,SAAS,CAACE,OAAV,CAAkBK,MAAlB,CAA0BJ,QAA1B;AACA,KAFD;AAGA,GAZQ,EAYN,CAAEL,SAAF,CAZM,CAAT;AAcA,SAAO,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useContext, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { inputEventContext } from './';\n\nexport function __unstableRichTextInputEvent( { inputType, onInput } ) {\n\tconst callbacks = useContext( inputEventContext );\n\tconst onInputRef = useRef();\n\tonInputRef.current = onInput;\n\n\tuseEffect( () => {\n\t\tfunction callback( event ) {\n\t\t\tif ( event.inputType === inputType ) {\n\t\t\t\tonInputRef.current();\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tcallbacks.current.add( callback );\n\t\treturn () => {\n\t\t\tcallbacks.current.delete( callback );\n\t\t};\n\t}, [ inputType ] );\n\n\treturn null;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/input-event.js"],"names":["useEffect","useContext","useRef","inputEventContext","__unstableRichTextInputEvent","inputType","onInput","callbacks","onInputRef","current","callback","event","preventDefault","add","delete"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,UAApB,EAAgCC,MAAhC,QAA8C,oBAA9C;AAEA;AACA;AACA;;AACA,SAASC,iBAAT,QAAkC,IAAlC;AAEA,OAAO,SAASC,4BAAT,CAAuC;AAAEC,EAAAA,SAAF;AAAaC,EAAAA;AAAb,CAAvC,EAAgE;AACtE,QAAMC,SAAS,GAAGN,UAAU,CAAEE,iBAAF,CAA5B;AACA,QAAMK,UAAU,GAAGN,MAAM,EAAzB;AACAM,EAAAA,UAAU,CAACC,OAAX,GAAqBH,OAArB;AAEAN,EAAAA,SAAS,CAAE,MAAM;AAChB,aAASU,QAAT,CAAmBC,KAAnB,EAA2B;AAC1B,UAAKA,KAAK,CAACN,SAAN,KAAoBA,SAAzB,EAAqC;AACpCG,QAAAA,UAAU,CAACC,OAAX;AACAE,QAAAA,KAAK,CAACC,cAAN;AACA;AACD;;AAEDL,IAAAA,SAAS,CAACE,OAAV,CAAkBI,GAAlB,CAAuBH,QAAvB;AACA,WAAO,MAAM;AACZH,MAAAA,SAAS,CAACE,OAAV,CAAkBK,MAAlB,CAA0BJ,QAA1B;AACA,KAFD;AAGA,GAZQ,EAYN,CAAEL,SAAF,CAZM,CAAT;AAcA,SAAO,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useContext, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { inputEventContext } from './';\n\nexport function __unstableRichTextInputEvent( { inputType, onInput } ) {\n\tconst callbacks = useContext( inputEventContext );\n\tconst onInputRef = useRef();\n\tonInputRef.current = onInput;\n\n\tuseEffect( () => {\n\t\tfunction callback( event ) {\n\t\t\tif ( event.inputType === inputType ) {\n\t\t\t\tonInputRef.current();\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tcallbacks.current.add( callback );\n\t\treturn () => {\n\t\t\tcallbacks.current.delete( callback );\n\t\t};\n\t}, [ inputType ] );\n\n\treturn null;\n}\n"]}
@@ -8,12 +8,11 @@ import { useEffect, useContext, useRef } from '@wordpress/element';
8
8
  */
9
9
 
10
10
  import { keyboardShortcutContext } from './';
11
- export function RichTextShortcut(_ref) {
12
- let {
13
- character,
14
- type,
15
- onUse
16
- } = _ref;
11
+ export function RichTextShortcut({
12
+ character,
13
+ type,
14
+ onUse
15
+ }) {
17
16
  const keyboardShortcuts = useContext(keyboardShortcutContext);
18
17
  const onUseRef = useRef();
19
18
  onUseRef.current = onUse;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/shortcut.js"],"names":["isKeyboardEvent","useEffect","useContext","useRef","keyboardShortcutContext","RichTextShortcut","character","type","onUse","keyboardShortcuts","onUseRef","current","callback","event","preventDefault","add","delete"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,eAAT,QAAgC,qBAAhC;AACA,SAASC,SAAT,EAAoBC,UAApB,EAAgCC,MAAhC,QAA8C,oBAA9C;AAEA;AACA;AACA;;AACA,SAASC,uBAAT,QAAwC,IAAxC;AAEA,OAAO,SAASC,gBAAT,OAAwD;AAAA,MAA7B;AAAEC,IAAAA,SAAF;AAAaC,IAAAA,IAAb;AAAmBC,IAAAA;AAAnB,GAA6B;AAC9D,QAAMC,iBAAiB,GAAGP,UAAU,CAAEE,uBAAF,CAApC;AACA,QAAMM,QAAQ,GAAGP,MAAM,EAAvB;AACAO,EAAAA,QAAQ,CAACC,OAAT,GAAmBH,KAAnB;AAEAP,EAAAA,SAAS,CAAE,MAAM;AAChB,aAASW,QAAT,CAAmBC,KAAnB,EAA2B;AAC1B,UAAKb,eAAe,CAAEO,IAAF,CAAf,CAAyBM,KAAzB,EAAgCP,SAAhC,CAAL,EAAmD;AAClDI,QAAAA,QAAQ,CAACC,OAAT;AACAE,QAAAA,KAAK,CAACC,cAAN;AACA;AACD;;AAEDL,IAAAA,iBAAiB,CAACE,OAAlB,CAA0BI,GAA1B,CAA+BH,QAA/B;AACA,WAAO,MAAM;AACZH,MAAAA,iBAAiB,CAACE,OAAlB,CAA0BK,MAA1B,CAAkCJ,QAAlC;AACA,KAFD;AAGA,GAZQ,EAYN,CAAEN,SAAF,EAAaC,IAAb,CAZM,CAAT;AAcA,SAAO,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isKeyboardEvent } from '@wordpress/keycodes';\nimport { useEffect, useContext, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { keyboardShortcutContext } from './';\n\nexport function RichTextShortcut( { character, type, onUse } ) {\n\tconst keyboardShortcuts = useContext( keyboardShortcutContext );\n\tconst onUseRef = useRef();\n\tonUseRef.current = onUse;\n\n\tuseEffect( () => {\n\t\tfunction callback( event ) {\n\t\t\tif ( isKeyboardEvent[ type ]( event, character ) ) {\n\t\t\t\tonUseRef.current();\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tkeyboardShortcuts.current.add( callback );\n\t\treturn () => {\n\t\t\tkeyboardShortcuts.current.delete( callback );\n\t\t};\n\t}, [ character, type ] );\n\n\treturn null;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/shortcut.js"],"names":["isKeyboardEvent","useEffect","useContext","useRef","keyboardShortcutContext","RichTextShortcut","character","type","onUse","keyboardShortcuts","onUseRef","current","callback","event","preventDefault","add","delete"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,eAAT,QAAgC,qBAAhC;AACA,SAASC,SAAT,EAAoBC,UAApB,EAAgCC,MAAhC,QAA8C,oBAA9C;AAEA;AACA;AACA;;AACA,SAASC,uBAAT,QAAwC,IAAxC;AAEA,OAAO,SAASC,gBAAT,CAA2B;AAAEC,EAAAA,SAAF;AAAaC,EAAAA,IAAb;AAAmBC,EAAAA;AAAnB,CAA3B,EAAwD;AAC9D,QAAMC,iBAAiB,GAAGP,UAAU,CAAEE,uBAAF,CAApC;AACA,QAAMM,QAAQ,GAAGP,MAAM,EAAvB;AACAO,EAAAA,QAAQ,CAACC,OAAT,GAAmBH,KAAnB;AAEAP,EAAAA,SAAS,CAAE,MAAM;AAChB,aAASW,QAAT,CAAmBC,KAAnB,EAA2B;AAC1B,UAAKb,eAAe,CAAEO,IAAF,CAAf,CAAyBM,KAAzB,EAAgCP,SAAhC,CAAL,EAAmD;AAClDI,QAAAA,QAAQ,CAACC,OAAT;AACAE,QAAAA,KAAK,CAACC,cAAN;AACA;AACD;;AAEDL,IAAAA,iBAAiB,CAACE,OAAlB,CAA0BI,GAA1B,CAA+BH,QAA/B;AACA,WAAO,MAAM;AACZH,MAAAA,iBAAiB,CAACE,OAAlB,CAA0BK,MAA1B,CAAkCJ,QAAlC;AACA,KAFD;AAGA,GAZQ,EAYN,CAAEN,SAAF,EAAaC,IAAb,CAZM,CAAT;AAcA,SAAO,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isKeyboardEvent } from '@wordpress/keycodes';\nimport { useEffect, useContext, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { keyboardShortcutContext } from './';\n\nexport function RichTextShortcut( { character, type, onUse } ) {\n\tconst keyboardShortcuts = useContext( keyboardShortcutContext );\n\tconst onUseRef = useRef();\n\tonUseRef.current = onUse;\n\n\tuseEffect( () => {\n\t\tfunction callback( event ) {\n\t\t\tif ( isKeyboardEvent[ type ]( event, character ) ) {\n\t\t\t\tonUseRef.current();\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tkeyboardShortcuts.current.add( callback );\n\t\treturn () => {\n\t\t\tkeyboardShortcuts.current.delete( callback );\n\t\t};\n\t}, [ character, type ] );\n\n\treturn null;\n}\n"]}
@@ -8,16 +8,14 @@ import { isEmpty, split, toHTMLString } from '@wordpress/rich-text';
8
8
  * result of splitting the block by pasting block content in the instance.
9
9
  */
10
10
 
11
- export function splitValue(_ref) {
12
- let {
13
- value,
14
- pastedBlocks = [],
15
- onReplace,
16
- onSplit,
17
- onSplitMiddle,
18
- multilineTag
19
- } = _ref;
20
-
11
+ export function splitValue({
12
+ value,
13
+ pastedBlocks = [],
14
+ onReplace,
15
+ onSplit,
16
+ onSplitMiddle,
17
+ multilineTag
18
+ }) {
21
19
  if (!onReplace || !onSplit) {
22
20
  return;
23
21
  } // Ensure the value has a selection. This might happen when trying to split
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/split-value.js"],"names":["isEmpty","split","toHTMLString","splitValue","value","pastedBlocks","onReplace","onSplit","onSplitMiddle","multilineTag","start","end","valueWithEnsuredSelection","blocks","before","after","hasPastedBlocks","length","lastPastedBlockIndex","isAfterOriginal","push","indexToSelect","initialPosition"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,EAAkBC,KAAlB,EAAyBC,YAAzB,QAA6C,sBAA7C;AAEA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,UAAT,OAOH;AAAA,MAPwB;AAC3BC,IAAAA,KAD2B;AAE3BC,IAAAA,YAAY,GAAG,EAFY;AAG3BC,IAAAA,SAH2B;AAI3BC,IAAAA,OAJ2B;AAK3BC,IAAAA,aAL2B;AAM3BC,IAAAA;AAN2B,GAOxB;;AACH,MAAK,CAAEH,SAAF,IAAe,CAAEC,OAAtB,EAAgC;AAC/B;AACA,GAHE,CAKH;AACA;;;AACA,QAAM;AAAEG,IAAAA,KAAK,GAAG,CAAV;AAAaC,IAAAA,GAAG,GAAG;AAAnB,MAAyBP,KAA/B;AACA,QAAMQ,yBAAyB,GAAG,EAAE,GAAGR,KAAL;AAAYM,IAAAA,KAAZ;AAAmBC,IAAAA;AAAnB,GAAlC;AACA,QAAME,MAAM,GAAG,EAAf;AACA,QAAM,CAAEC,MAAF,EAAUC,KAAV,IAAoBd,KAAK,CAAEW,yBAAF,CAA/B;AACA,QAAMI,eAAe,GAAGX,YAAY,CAACY,MAAb,GAAsB,CAA9C;AACA,MAAIC,oBAAoB,GAAG,CAAC,CAA5B,CAZG,CAcH;AACA;;AACA,QAAMC,eAAe,GAAGnB,OAAO,CAAEc,MAAF,CAAP,IAAqB,CAAEd,OAAO,CAAEe,KAAF,CAAtD,CAhBG,CAkBH;AACA;AACA;AACA;;AACA,MAAK,CAAEC,eAAF,IAAqB,CAAEhB,OAAO,CAAEc,MAAF,CAAnC,EAAgD;AAC/CD,IAAAA,MAAM,CAACO,IAAP,CACCb,OAAO,CACNL,YAAY,CAAE;AACbE,MAAAA,KAAK,EAAEU,MADM;AAEbL,MAAAA;AAFa,KAAF,CADN,EAKN,CAAEU,eALI,CADR;AASAD,IAAAA,oBAAoB,IAAI,CAAxB;AACA;;AAED,MAAKF,eAAL,EAAuB;AACtBH,IAAAA,MAAM,CAACO,IAAP,CAAa,GAAGf,YAAhB;AACAa,IAAAA,oBAAoB,IAAIb,YAAY,CAACY,MAArC;AACA,GAHD,MAGO,IAAKT,aAAL,EAAqB;AAC3BK,IAAAA,MAAM,CAACO,IAAP,CAAaZ,aAAa,EAA1B;AACA,GAxCE,CA0CH;AACA;AACA;AACA;;;AACA,MACCQ,eAAe,GACZ,CAAEhB,OAAO,CAAEe,KAAF,CADG,GAEZ,CAAEP,aAAF,IAAmB,CAAER,OAAO,CAAEe,KAAF,CAHhC,EAIE;AACDF,IAAAA,MAAM,CAACO,IAAP,CACCb,OAAO,CACNL,YAAY,CAAE;AACbE,MAAAA,KAAK,EAAEW,KADM;AAEbN,MAAAA;AAFa,KAAF,CADN,EAKNU,eALM,CADR;AASA,GA5DE,CA8DH;AACA;;;AACA,QAAME,aAAa,GAAGL,eAAe,GAAGE,oBAAH,GAA0B,CAA/D,CAhEG,CAkEH;AACA;;AACA,QAAMI,eAAe,GAAGN,eAAe,GAAG,CAAC,CAAJ,GAAQ,CAA/C;AAEAV,EAAAA,SAAS,CAAEO,MAAF,EAAUQ,aAAV,EAAyBC,eAAzB,CAAT;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isEmpty, split, toHTMLString } from '@wordpress/rich-text';\n\n/*\n * Signals to the RichText owner that the block can be replaced with two blocks\n * as a result of splitting the block by pressing enter, or with blocks as a\n * result of splitting the block by pasting block content in the instance.\n */\nexport function splitValue( {\n\tvalue,\n\tpastedBlocks = [],\n\tonReplace,\n\tonSplit,\n\tonSplitMiddle,\n\tmultilineTag,\n} ) {\n\tif ( ! onReplace || ! onSplit ) {\n\t\treturn;\n\t}\n\n\t// Ensure the value has a selection. This might happen when trying to split\n\t// an empty value before there was a `selectionchange` event.\n\tconst { start = 0, end = 0 } = value;\n\tconst valueWithEnsuredSelection = { ...value, start, end };\n\tconst blocks = [];\n\tconst [ before, after ] = split( valueWithEnsuredSelection );\n\tconst hasPastedBlocks = pastedBlocks.length > 0;\n\tlet lastPastedBlockIndex = -1;\n\n\t// Consider the after value to be the original it is not empty and the\n\t// before value *is* empty.\n\tconst isAfterOriginal = isEmpty( before ) && ! isEmpty( after );\n\n\t// Create a block with the content before the caret if there's no pasted\n\t// blocks, or if there are pasted blocks and the value is not empty. We do\n\t// not want a leading empty block on paste, but we do if split with e.g. the\n\t// enter key.\n\tif ( ! hasPastedBlocks || ! isEmpty( before ) ) {\n\t\tblocks.push(\n\t\t\tonSplit(\n\t\t\t\ttoHTMLString( {\n\t\t\t\t\tvalue: before,\n\t\t\t\t\tmultilineTag,\n\t\t\t\t} ),\n\t\t\t\t! isAfterOriginal\n\t\t\t)\n\t\t);\n\t\tlastPastedBlockIndex += 1;\n\t}\n\n\tif ( hasPastedBlocks ) {\n\t\tblocks.push( ...pastedBlocks );\n\t\tlastPastedBlockIndex += pastedBlocks.length;\n\t} else if ( onSplitMiddle ) {\n\t\tblocks.push( onSplitMiddle() );\n\t}\n\n\t// If there's pasted blocks, append a block with non empty content / after\n\t// the caret. Otherwise, do append an empty block if there is no\n\t// `onSplitMiddle` prop, but if there is and the content is empty, the\n\t// middle block is enough to set focus in.\n\tif (\n\t\thasPastedBlocks\n\t\t\t? ! isEmpty( after )\n\t\t\t: ! onSplitMiddle || ! isEmpty( after )\n\t) {\n\t\tblocks.push(\n\t\t\tonSplit(\n\t\t\t\ttoHTMLString( {\n\t\t\t\t\tvalue: after,\n\t\t\t\t\tmultilineTag,\n\t\t\t\t} ),\n\t\t\t\tisAfterOriginal\n\t\t\t)\n\t\t);\n\t}\n\n\t// If there are pasted blocks, set the selection to the last one. Otherwise,\n\t// set the selection to the second block.\n\tconst indexToSelect = hasPastedBlocks ? lastPastedBlockIndex : 1;\n\n\t// If there are pasted blocks, move the caret to the end of the selected\n\t// block Otherwise, retain the default value.\n\tconst initialPosition = hasPastedBlocks ? -1 : 0;\n\n\tonReplace( blocks, indexToSelect, initialPosition );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/split-value.js"],"names":["isEmpty","split","toHTMLString","splitValue","value","pastedBlocks","onReplace","onSplit","onSplitMiddle","multilineTag","start","end","valueWithEnsuredSelection","blocks","before","after","hasPastedBlocks","length","lastPastedBlockIndex","isAfterOriginal","push","indexToSelect","initialPosition"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,EAAkBC,KAAlB,EAAyBC,YAAzB,QAA6C,sBAA7C;AAEA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,UAAT,CAAqB;AAC3BC,EAAAA,KAD2B;AAE3BC,EAAAA,YAAY,GAAG,EAFY;AAG3BC,EAAAA,SAH2B;AAI3BC,EAAAA,OAJ2B;AAK3BC,EAAAA,aAL2B;AAM3BC,EAAAA;AAN2B,CAArB,EAOH;AACH,MAAK,CAAEH,SAAF,IAAe,CAAEC,OAAtB,EAAgC;AAC/B;AACA,GAHE,CAKH;AACA;;;AACA,QAAM;AAAEG,IAAAA,KAAK,GAAG,CAAV;AAAaC,IAAAA,GAAG,GAAG;AAAnB,MAAyBP,KAA/B;AACA,QAAMQ,yBAAyB,GAAG,EAAE,GAAGR,KAAL;AAAYM,IAAAA,KAAZ;AAAmBC,IAAAA;AAAnB,GAAlC;AACA,QAAME,MAAM,GAAG,EAAf;AACA,QAAM,CAAEC,MAAF,EAAUC,KAAV,IAAoBd,KAAK,CAAEW,yBAAF,CAA/B;AACA,QAAMI,eAAe,GAAGX,YAAY,CAACY,MAAb,GAAsB,CAA9C;AACA,MAAIC,oBAAoB,GAAG,CAAC,CAA5B,CAZG,CAcH;AACA;;AACA,QAAMC,eAAe,GAAGnB,OAAO,CAAEc,MAAF,CAAP,IAAqB,CAAEd,OAAO,CAAEe,KAAF,CAAtD,CAhBG,CAkBH;AACA;AACA;AACA;;AACA,MAAK,CAAEC,eAAF,IAAqB,CAAEhB,OAAO,CAAEc,MAAF,CAAnC,EAAgD;AAC/CD,IAAAA,MAAM,CAACO,IAAP,CACCb,OAAO,CACNL,YAAY,CAAE;AACbE,MAAAA,KAAK,EAAEU,MADM;AAEbL,MAAAA;AAFa,KAAF,CADN,EAKN,CAAEU,eALI,CADR;AASAD,IAAAA,oBAAoB,IAAI,CAAxB;AACA;;AAED,MAAKF,eAAL,EAAuB;AACtBH,IAAAA,MAAM,CAACO,IAAP,CAAa,GAAGf,YAAhB;AACAa,IAAAA,oBAAoB,IAAIb,YAAY,CAACY,MAArC;AACA,GAHD,MAGO,IAAKT,aAAL,EAAqB;AAC3BK,IAAAA,MAAM,CAACO,IAAP,CAAaZ,aAAa,EAA1B;AACA,GAxCE,CA0CH;AACA;AACA;AACA;;;AACA,MACCQ,eAAe,GACZ,CAAEhB,OAAO,CAAEe,KAAF,CADG,GAEZ,CAAEP,aAAF,IAAmB,CAAER,OAAO,CAAEe,KAAF,CAHhC,EAIE;AACDF,IAAAA,MAAM,CAACO,IAAP,CACCb,OAAO,CACNL,YAAY,CAAE;AACbE,MAAAA,KAAK,EAAEW,KADM;AAEbN,MAAAA;AAFa,KAAF,CADN,EAKNU,eALM,CADR;AASA,GA5DE,CA8DH;AACA;;;AACA,QAAME,aAAa,GAAGL,eAAe,GAAGE,oBAAH,GAA0B,CAA/D,CAhEG,CAkEH;AACA;;AACA,QAAMI,eAAe,GAAGN,eAAe,GAAG,CAAC,CAAJ,GAAQ,CAA/C;AAEAV,EAAAA,SAAS,CAAEO,MAAF,EAAUQ,aAAV,EAAyBC,eAAzB,CAAT;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isEmpty, split, toHTMLString } from '@wordpress/rich-text';\n\n/*\n * Signals to the RichText owner that the block can be replaced with two blocks\n * as a result of splitting the block by pressing enter, or with blocks as a\n * result of splitting the block by pasting block content in the instance.\n */\nexport function splitValue( {\n\tvalue,\n\tpastedBlocks = [],\n\tonReplace,\n\tonSplit,\n\tonSplitMiddle,\n\tmultilineTag,\n} ) {\n\tif ( ! onReplace || ! onSplit ) {\n\t\treturn;\n\t}\n\n\t// Ensure the value has a selection. This might happen when trying to split\n\t// an empty value before there was a `selectionchange` event.\n\tconst { start = 0, end = 0 } = value;\n\tconst valueWithEnsuredSelection = { ...value, start, end };\n\tconst blocks = [];\n\tconst [ before, after ] = split( valueWithEnsuredSelection );\n\tconst hasPastedBlocks = pastedBlocks.length > 0;\n\tlet lastPastedBlockIndex = -1;\n\n\t// Consider the after value to be the original it is not empty and the\n\t// before value *is* empty.\n\tconst isAfterOriginal = isEmpty( before ) && ! isEmpty( after );\n\n\t// Create a block with the content before the caret if there's no pasted\n\t// blocks, or if there are pasted blocks and the value is not empty. We do\n\t// not want a leading empty block on paste, but we do if split with e.g. the\n\t// enter key.\n\tif ( ! hasPastedBlocks || ! isEmpty( before ) ) {\n\t\tblocks.push(\n\t\t\tonSplit(\n\t\t\t\ttoHTMLString( {\n\t\t\t\t\tvalue: before,\n\t\t\t\t\tmultilineTag,\n\t\t\t\t} ),\n\t\t\t\t! isAfterOriginal\n\t\t\t)\n\t\t);\n\t\tlastPastedBlockIndex += 1;\n\t}\n\n\tif ( hasPastedBlocks ) {\n\t\tblocks.push( ...pastedBlocks );\n\t\tlastPastedBlockIndex += pastedBlocks.length;\n\t} else if ( onSplitMiddle ) {\n\t\tblocks.push( onSplitMiddle() );\n\t}\n\n\t// If there's pasted blocks, append a block with non empty content / after\n\t// the caret. Otherwise, do append an empty block if there is no\n\t// `onSplitMiddle` prop, but if there is and the content is empty, the\n\t// middle block is enough to set focus in.\n\tif (\n\t\thasPastedBlocks\n\t\t\t? ! isEmpty( after )\n\t\t\t: ! onSplitMiddle || ! isEmpty( after )\n\t) {\n\t\tblocks.push(\n\t\t\tonSplit(\n\t\t\t\ttoHTMLString( {\n\t\t\t\t\tvalue: after,\n\t\t\t\t\tmultilineTag,\n\t\t\t\t} ),\n\t\t\t\tisAfterOriginal\n\t\t\t)\n\t\t);\n\t}\n\n\t// If there are pasted blocks, set the selection to the last one. Otherwise,\n\t// set the selection to the second block.\n\tconst indexToSelect = hasPastedBlocks ? lastPastedBlockIndex : 1;\n\n\t// If there are pasted blocks, move the caret to the end of the selected\n\t// block Otherwise, retain the default value.\n\tconst initialPosition = hasPastedBlocks ? -1 : 0;\n\n\tonReplace( blocks, indexToSelect, initialPosition );\n}\n"]}
@@ -6,13 +6,12 @@ import { createElement } from "@wordpress/element";
6
6
  */
7
7
  import { Fill, ToolbarButton } from '@wordpress/components';
8
8
  import { displayShortcut } from '@wordpress/keycodes';
9
- export function RichTextToolbarButton(_ref) {
10
- let {
11
- name,
12
- shortcutType,
13
- shortcutCharacter,
14
- ...props
15
- } = _ref;
9
+ export function RichTextToolbarButton({
10
+ name,
11
+ shortcutType,
12
+ shortcutCharacter,
13
+ ...props
14
+ }) {
16
15
  let shortcut;
17
16
  let fillName = 'RichText.ToolbarControls';
18
17
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/toolbar-button.js"],"names":["Fill","ToolbarButton","displayShortcut","RichTextToolbarButton","name","shortcutType","shortcutCharacter","props","shortcut","fillName"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,EAAeC,aAAf,QAAoC,uBAApC;AACA,SAASC,eAAT,QAAgC,qBAAhC;AAEA,OAAO,SAASC,qBAAT,OAKH;AAAA,MALmC;AACtCC,IAAAA,IADsC;AAEtCC,IAAAA,YAFsC;AAGtCC,IAAAA,iBAHsC;AAItC,OAAGC;AAJmC,GAKnC;AACH,MAAIC,QAAJ;AACA,MAAIC,QAAQ,GAAG,0BAAf;;AAEA,MAAKL,IAAL,EAAY;AACXK,IAAAA,QAAQ,IAAK,IAAIL,IAAM,EAAvB;AACA;;AAED,MAAKC,YAAY,IAAIC,iBAArB,EAAyC;AACxCE,IAAAA,QAAQ,GAAGN,eAAe,CAAEG,YAAF,CAAf,CAAiCC,iBAAjC,CAAX;AACA;;AAED,SACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGG;AAAb,KACC,cAAC,aAAD,eAAoBF,KAApB;AAA4B,IAAA,QAAQ,EAAGC;AAAvC,KADD,CADD;AAKA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Fill, ToolbarButton } from '@wordpress/components';\nimport { displayShortcut } from '@wordpress/keycodes';\n\nexport function RichTextToolbarButton( {\n\tname,\n\tshortcutType,\n\tshortcutCharacter,\n\t...props\n} ) {\n\tlet shortcut;\n\tlet fillName = 'RichText.ToolbarControls';\n\n\tif ( name ) {\n\t\tfillName += `.${ name }`;\n\t}\n\n\tif ( shortcutType && shortcutCharacter ) {\n\t\tshortcut = displayShortcut[ shortcutType ]( shortcutCharacter );\n\t}\n\n\treturn (\n\t\t<Fill name={ fillName }>\n\t\t\t<ToolbarButton { ...props } shortcut={ shortcut } />\n\t\t</Fill>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/toolbar-button.js"],"names":["Fill","ToolbarButton","displayShortcut","RichTextToolbarButton","name","shortcutType","shortcutCharacter","props","shortcut","fillName"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,EAAeC,aAAf,QAAoC,uBAApC;AACA,SAASC,eAAT,QAAgC,qBAAhC;AAEA,OAAO,SAASC,qBAAT,CAAgC;AACtCC,EAAAA,IADsC;AAEtCC,EAAAA,YAFsC;AAGtCC,EAAAA,iBAHsC;AAItC,KAAGC;AAJmC,CAAhC,EAKH;AACH,MAAIC,QAAJ;AACA,MAAIC,QAAQ,GAAG,0BAAf;;AAEA,MAAKL,IAAL,EAAY;AACXK,IAAAA,QAAQ,IAAK,IAAIL,IAAM,EAAvB;AACA;;AAED,MAAKC,YAAY,IAAIC,iBAArB,EAAyC;AACxCE,IAAAA,QAAQ,GAAGN,eAAe,CAAEG,YAAF,CAAf,CAAiCC,iBAAjC,CAAX;AACA;;AAED,SACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGG;AAAb,KACC,cAAC,aAAD,eAAoBF,KAApB;AAA4B,IAAA,QAAQ,EAAGC;AAAvC,KADD,CADD;AAKA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Fill, ToolbarButton } from '@wordpress/components';\nimport { displayShortcut } from '@wordpress/keycodes';\n\nexport function RichTextToolbarButton( {\n\tname,\n\tshortcutType,\n\tshortcutCharacter,\n\t...props\n} ) {\n\tlet shortcut;\n\tlet fillName = 'RichText.ToolbarControls';\n\n\tif ( name ) {\n\t\tfillName += `.${ name }`;\n\t}\n\n\tif ( shortcutType && shortcutCharacter ) {\n\t\tshortcut = displayShortcut[ shortcutType ]( shortcutCharacter );\n\t}\n\n\treturn (\n\t\t<Fill name={ fillName }>\n\t\t\t<ToolbarButton { ...props } shortcut={ shortcut } />\n\t\t</Fill>\n\t);\n}\n"]}
@@ -46,10 +46,7 @@ export function useBeforeInputRules(props) {
46
46
  return;
47
47
  }
48
48
 
49
- const pair = applyFilters('blockEditor.wrapSelectionSettings', wrapSelectionSettings).find(_ref => {
50
- let [startChar, endChar] = _ref;
51
- return startChar === data || endChar === data;
52
- });
49
+ const pair = applyFilters('blockEditor.wrapSelectionSettings', wrapSelectionSettings).find(([startChar, endChar]) => startChar === data || endChar === data);
53
50
 
54
51
  if (!pair) {
55
52
  return;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/use-before-input-rules.js"],"names":["useRef","useRefEffect","insert","isCollapsed","useDispatch","applyFilters","store","blockEditorStore","wrapSelectionSettings","useBeforeInputRules","props","__unstableMarkLastChangeAsPersistent","__unstableMarkAutomaticChange","propsRef","current","element","onInput","event","inputType","data","value","onChange","pair","find","startChar","endChar","start","end","length","newValue","init","key","ownerDocument","defaultView","newEvent","InputEvent","window","queueMicrotask","target","dispatchEvent","preventDefault","addEventListener","removeEventListener"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\nimport { insert, isCollapsed } from '@wordpress/rich-text';\nimport { useDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * When typing over a selection, the selection will we wrapped by a matching\n * character pair. The second character is optional, it defaults to the first\n * character.\n *\n * @type {string[]} Array of character pairs.\n */\nconst wrapSelectionSettings = [ '`', '\"', \"'\", '“”', '‘’' ];\n\nexport function useBeforeInputRules( props ) {\n\tconst {\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\t__unstableMarkAutomaticChange,\n\t} = useDispatch( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onInput( event ) {\n\t\t\tconst { inputType, data } = event;\n\t\t\tconst { value, onChange } = propsRef.current;\n\n\t\t\t// Only run the rules when inserting text.\n\t\t\tif ( inputType !== 'insertText' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isCollapsed( value ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst pair = applyFilters(\n\t\t\t\t'blockEditor.wrapSelectionSettings',\n\t\t\t\twrapSelectionSettings\n\t\t\t).find(\n\t\t\t\t( [ startChar, endChar ] ) =>\n\t\t\t\t\tstartChar === data || endChar === data\n\t\t\t);\n\n\t\t\tif ( ! pair ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst [ startChar, endChar = startChar ] = pair;\n\t\t\tconst start = value.start;\n\t\t\tconst end = value.end + startChar.length;\n\n\t\t\tlet newValue = insert( value, startChar, start, start );\n\t\t\tnewValue = insert( newValue, endChar, end, end );\n\n\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\tonChange( newValue );\n\t\t\t__unstableMarkAutomaticChange();\n\n\t\t\tconst init = {};\n\n\t\t\tfor ( const key in event ) {\n\t\t\t\tinit[ key ] = event[ key ];\n\t\t\t}\n\n\t\t\tinit.data = endChar;\n\n\t\t\tconst { ownerDocument } = element;\n\t\t\tconst { defaultView } = ownerDocument;\n\t\t\tconst newEvent = new defaultView.InputEvent( 'input', init );\n\n\t\t\t// Dispatch an `input` event with the new data. This will trigger the\n\t\t\t// input rules.\n\t\t\t// Postpone the `input` to the next event loop tick so that the dispatch\n\t\t\t// doesn't happen synchronously in the middle of `beforeinput` dispatch.\n\t\t\t// This is closer to how native `input` event would be timed, and also\n\t\t\t// makes sure that the `input` event is dispatched only after the `onChange`\n\t\t\t// call few lines above has fully updated the data store state and rerendered\n\t\t\t// all affected components.\n\t\t\twindow.queueMicrotask( () => {\n\t\t\t\tevent.target.dispatchEvent( newEvent );\n\t\t\t} );\n\t\t\tevent.preventDefault();\n\t\t}\n\n\t\telement.addEventListener( 'beforeinput', onInput );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'beforeinput', onInput );\n\t\t};\n\t}, [] );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/use-before-input-rules.js"],"names":["useRef","useRefEffect","insert","isCollapsed","useDispatch","applyFilters","store","blockEditorStore","wrapSelectionSettings","useBeforeInputRules","props","__unstableMarkLastChangeAsPersistent","__unstableMarkAutomaticChange","propsRef","current","element","onInput","event","inputType","data","value","onChange","pair","find","startChar","endChar","start","end","length","newValue","init","key","ownerDocument","defaultView","newEvent","InputEvent","window","queueMicrotask","target","dispatchEvent","preventDefault","addEventListener","removeEventListener"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\nimport { insert, isCollapsed } from '@wordpress/rich-text';\nimport { useDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * When typing over a selection, the selection will we wrapped by a matching\n * character pair. The second character is optional, it defaults to the first\n * character.\n *\n * @type {string[]} Array of character pairs.\n */\nconst wrapSelectionSettings = [ '`', '\"', \"'\", '“”', '‘’' ];\n\nexport function useBeforeInputRules( props ) {\n\tconst {\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\t__unstableMarkAutomaticChange,\n\t} = useDispatch( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onInput( event ) {\n\t\t\tconst { inputType, data } = event;\n\t\t\tconst { value, onChange } = propsRef.current;\n\n\t\t\t// Only run the rules when inserting text.\n\t\t\tif ( inputType !== 'insertText' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isCollapsed( value ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst pair = applyFilters(\n\t\t\t\t'blockEditor.wrapSelectionSettings',\n\t\t\t\twrapSelectionSettings\n\t\t\t).find(\n\t\t\t\t( [ startChar, endChar ] ) =>\n\t\t\t\t\tstartChar === data || endChar === data\n\t\t\t);\n\n\t\t\tif ( ! pair ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst [ startChar, endChar = startChar ] = pair;\n\t\t\tconst start = value.start;\n\t\t\tconst end = value.end + startChar.length;\n\n\t\t\tlet newValue = insert( value, startChar, start, start );\n\t\t\tnewValue = insert( newValue, endChar, end, end );\n\n\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\tonChange( newValue );\n\t\t\t__unstableMarkAutomaticChange();\n\n\t\t\tconst init = {};\n\n\t\t\tfor ( const key in event ) {\n\t\t\t\tinit[ key ] = event[ key ];\n\t\t\t}\n\n\t\t\tinit.data = endChar;\n\n\t\t\tconst { ownerDocument } = element;\n\t\t\tconst { defaultView } = ownerDocument;\n\t\t\tconst newEvent = new defaultView.InputEvent( 'input', init );\n\n\t\t\t// Dispatch an `input` event with the new data. This will trigger the\n\t\t\t// input rules.\n\t\t\t// Postpone the `input` to the next event loop tick so that the dispatch\n\t\t\t// doesn't happen synchronously in the middle of `beforeinput` dispatch.\n\t\t\t// This is closer to how native `input` event would be timed, and also\n\t\t\t// makes sure that the `input` event is dispatched only after the `onChange`\n\t\t\t// call few lines above has fully updated the data store state and rerendered\n\t\t\t// all affected components.\n\t\t\twindow.queueMicrotask( () => {\n\t\t\t\tevent.target.dispatchEvent( newEvent );\n\t\t\t} );\n\t\t\tevent.preventDefault();\n\t\t}\n\n\t\telement.addEventListener( 'beforeinput', onInput );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'beforeinput', onInput );\n\t\t};\n\t}, [] );\n}\n"]}
@@ -47,12 +47,9 @@ export function useEnter(props) {
47
47
  const canSplit = onReplace && onSplit;
48
48
 
49
49
  if (onReplace) {
50
- const transforms = getBlockTransforms('from').filter(_ref => {
51
- let {
52
- type
53
- } = _ref;
54
- return type === 'enter';
55
- });
50
+ const transforms = getBlockTransforms('from').filter(({
51
+ type
52
+ }) => type === 'enter');
56
53
  const transformation = findTransform(transforms, item => {
57
54
  return item.regExp.test(_value.text);
58
55
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/use-enter.js"],"names":["useRef","useRefEffect","ENTER","insert","__unstableIsEmptyLine","isEmptyLine","__unstableInsertLineSeparator","insertLineSeparator","getBlockTransforms","findTransform","useDispatch","store","blockEditorStore","splitValue","useEnter","props","__unstableMarkAutomaticChange","propsRef","current","element","onKeyDown","event","defaultPrevented","keyCode","removeEditorOnlyFormats","value","onReplace","onSplit","onSplitMiddle","multilineTag","onChange","disableLineBreaks","onSplitAtEnd","preventDefault","_value","formats","canSplit","transforms","filter","type","transformation","item","regExp","test","text","transform","content","shiftKey","start","end","canSplitAtEnd","length","addEventListener","removeEventListener"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\nimport { ENTER } from '@wordpress/keycodes';\nimport {\n\tinsert,\n\t__unstableIsEmptyLine as isEmptyLine,\n\t__unstableInsertLineSeparator as insertLineSeparator,\n} from '@wordpress/rich-text';\nimport { getBlockTransforms, findTransform } from '@wordpress/blocks';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { splitValue } from './split-value';\n\nexport function useEnter( props ) {\n\tconst { __unstableMarkAutomaticChange } = useDispatch( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( event.keyCode !== ENTER ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst {\n\t\t\t\tremoveEditorOnlyFormats,\n\t\t\t\tvalue,\n\t\t\t\tonReplace,\n\t\t\t\tonSplit,\n\t\t\t\tonSplitMiddle,\n\t\t\t\tmultilineTag,\n\t\t\t\tonChange,\n\t\t\t\tdisableLineBreaks,\n\t\t\t\tonSplitAtEnd,\n\t\t\t} = propsRef.current;\n\n\t\t\tevent.preventDefault();\n\n\t\t\tconst _value = { ...value };\n\t\t\t_value.formats = removeEditorOnlyFormats( value );\n\t\t\tconst canSplit = onReplace && onSplit;\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst transforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t\t( { type } ) => type === 'enter'\n\t\t\t\t);\n\t\t\t\tconst transformation = findTransform( transforms, ( item ) => {\n\t\t\t\t\treturn item.regExp.test( _value.text );\n\t\t\t\t} );\n\n\t\t\t\tif ( transformation ) {\n\t\t\t\t\tonReplace( [\n\t\t\t\t\t\ttransformation.transform( {\n\t\t\t\t\t\t\tcontent: _value.text,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t] );\n\t\t\t\t\t__unstableMarkAutomaticChange();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( multilineTag ) {\n\t\t\t\tif ( event.shiftKey ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( _value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( canSplit && isEmptyLine( _value ) ) {\n\t\t\t\t\tsplitValue( {\n\t\t\t\t\t\tvalue: _value,\n\t\t\t\t\t\tonReplace,\n\t\t\t\t\t\tonSplit,\n\t\t\t\t\t\tonSplitMiddle,\n\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tonChange( insertLineSeparator( _value ) );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst { text, start, end } = _value;\n\t\t\t\tconst canSplitAtEnd =\n\t\t\t\t\tonSplitAtEnd && start === end && end === text.length;\n\n\t\t\t\tif ( event.shiftKey || ( ! canSplit && ! canSplitAtEnd ) ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( _value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( ! canSplit && canSplitAtEnd ) {\n\t\t\t\t\tonSplitAtEnd();\n\t\t\t\t} else if ( canSplit ) {\n\t\t\t\t\tsplitValue( {\n\t\t\t\t\t\tvalue: _value,\n\t\t\t\t\t\tonReplace,\n\t\t\t\t\t\tonSplit,\n\t\t\t\t\t\tonSplitMiddle,\n\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/use-enter.js"],"names":["useRef","useRefEffect","ENTER","insert","__unstableIsEmptyLine","isEmptyLine","__unstableInsertLineSeparator","insertLineSeparator","getBlockTransforms","findTransform","useDispatch","store","blockEditorStore","splitValue","useEnter","props","__unstableMarkAutomaticChange","propsRef","current","element","onKeyDown","event","defaultPrevented","keyCode","removeEditorOnlyFormats","value","onReplace","onSplit","onSplitMiddle","multilineTag","onChange","disableLineBreaks","onSplitAtEnd","preventDefault","_value","formats","canSplit","transforms","filter","type","transformation","item","regExp","test","text","transform","content","shiftKey","start","end","canSplitAtEnd","length","addEventListener","removeEventListener"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\nimport { ENTER } from '@wordpress/keycodes';\nimport {\n\tinsert,\n\t__unstableIsEmptyLine as isEmptyLine,\n\t__unstableInsertLineSeparator as insertLineSeparator,\n} from '@wordpress/rich-text';\nimport { getBlockTransforms, findTransform } from '@wordpress/blocks';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { splitValue } from './split-value';\n\nexport function useEnter( props ) {\n\tconst { __unstableMarkAutomaticChange } = useDispatch( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( event.keyCode !== ENTER ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst {\n\t\t\t\tremoveEditorOnlyFormats,\n\t\t\t\tvalue,\n\t\t\t\tonReplace,\n\t\t\t\tonSplit,\n\t\t\t\tonSplitMiddle,\n\t\t\t\tmultilineTag,\n\t\t\t\tonChange,\n\t\t\t\tdisableLineBreaks,\n\t\t\t\tonSplitAtEnd,\n\t\t\t} = propsRef.current;\n\n\t\t\tevent.preventDefault();\n\n\t\t\tconst _value = { ...value };\n\t\t\t_value.formats = removeEditorOnlyFormats( value );\n\t\t\tconst canSplit = onReplace && onSplit;\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst transforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t\t( { type } ) => type === 'enter'\n\t\t\t\t);\n\t\t\t\tconst transformation = findTransform( transforms, ( item ) => {\n\t\t\t\t\treturn item.regExp.test( _value.text );\n\t\t\t\t} );\n\n\t\t\t\tif ( transformation ) {\n\t\t\t\t\tonReplace( [\n\t\t\t\t\t\ttransformation.transform( {\n\t\t\t\t\t\t\tcontent: _value.text,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t] );\n\t\t\t\t\t__unstableMarkAutomaticChange();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( multilineTag ) {\n\t\t\t\tif ( event.shiftKey ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( _value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( canSplit && isEmptyLine( _value ) ) {\n\t\t\t\t\tsplitValue( {\n\t\t\t\t\t\tvalue: _value,\n\t\t\t\t\t\tonReplace,\n\t\t\t\t\t\tonSplit,\n\t\t\t\t\t\tonSplitMiddle,\n\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tonChange( insertLineSeparator( _value ) );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst { text, start, end } = _value;\n\t\t\t\tconst canSplitAtEnd =\n\t\t\t\t\tonSplitAtEnd && start === end && end === text.length;\n\n\t\t\t\tif ( event.shiftKey || ( ! canSplit && ! canSplitAtEnd ) ) {\n\t\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\t\tonChange( insert( _value, '\\n' ) );\n\t\t\t\t\t}\n\t\t\t\t} else if ( ! canSplit && canSplitAtEnd ) {\n\t\t\t\t\tonSplitAtEnd();\n\t\t\t\t} else if ( canSplit ) {\n\t\t\t\t\tsplitValue( {\n\t\t\t\t\t\tvalue: _value,\n\t\t\t\t\t\tonReplace,\n\t\t\t\t\t\tonSplit,\n\t\t\t\t\t\tonSplitMiddle,\n\t\t\t\t\t\tmultilineTag,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n"]}
@@ -1,14 +1,19 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
+ import { useRef } from '@wordpress/element';
4
5
  import { useRefEffect } from '@wordpress/compose';
5
6
  import { useSelect } from '@wordpress/data';
7
+ import { SPACE } from '@wordpress/keycodes';
8
+ import { insert } from '@wordpress/rich-text';
6
9
  /**
7
10
  * Internal dependencies
8
11
  */
9
12
 
10
13
  import { store as blockEditorStore } from '../../store';
11
- export function useFirefoxCompat() {
14
+ export function useFirefoxCompat(props) {
15
+ const propsRef = useRef(props);
16
+ propsRef.current = props;
12
17
  const {
13
18
  isMultiSelecting
14
19
  } = useSelect(blockEditorStore);
@@ -28,11 +33,34 @@ export function useFirefoxCompat() {
28
33
  if (parentEditable) {
29
34
  parentEditable.focus();
30
35
  }
36
+ } // If a contenteditable element is inside a button/summary element,
37
+ // it is not possible to type a space in Firefox. Therefore, cancel
38
+ // the default event and insert a space explicitly.
39
+ // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1822860
40
+
41
+
42
+ function onKeyDown(event) {
43
+ if (event.keyCode !== SPACE) {
44
+ return;
45
+ }
46
+
47
+ if (element.closest('button, summary') === null) {
48
+ return;
49
+ }
50
+
51
+ const {
52
+ value,
53
+ onChange
54
+ } = propsRef.current;
55
+ onChange(insert(value, ' '));
56
+ event.preventDefault();
31
57
  }
32
58
 
33
59
  element.addEventListener('focus', onFocus);
60
+ element.addEventListener('keydown', onKeyDown);
34
61
  return () => {
35
62
  element.removeEventListener('focus', onFocus);
63
+ element.removeEventListener('keydown', onKeyDown);
36
64
  };
37
65
  }, []);
38
66
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/use-firefox-compat.js"],"names":["useRefEffect","useSelect","store","blockEditorStore","useFirefoxCompat","isMultiSelecting","element","onFocus","parentEditable","parentElement","closest","focus","addEventListener","removeEventListener"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAT,QAA6B,oBAA7B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,aAA1C;AAEA,OAAO,SAASC,gBAAT,GAA4B;AAClC,QAAM;AAAEC,IAAAA;AAAF,MAAuBJ,SAAS,CAAEE,gBAAF,CAAtC;AACA,SAAOH,YAAY,CAAIM,OAAF,IAAe;AACnC,aAASC,OAAT,GAAmB;AAClB,UAAK,CAAEF,gBAAgB,EAAvB,EAA4B;AAC3B;AACA,OAHiB,CAKlB;AACA;AACA;AACA;AACA;;;AACA,YAAMG,cAAc,GAAGF,OAAO,CAACG,aAAR,CAAsBC,OAAtB,CACtB,0BADsB,CAAvB;;AAIA,UAAKF,cAAL,EAAsB;AACrBA,QAAAA,cAAc,CAACG,KAAf;AACA;AACD;;AAEDL,IAAAA,OAAO,CAACM,gBAAR,CAA0B,OAA1B,EAAmCL,OAAnC;AACA,WAAO,MAAM;AACZD,MAAAA,OAAO,CAACO,mBAAR,CAA6B,OAA7B,EAAsCN,OAAtC;AACA,KAFD;AAGA,GAxBkB,EAwBhB,EAxBgB,CAAnB;AAyBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nexport function useFirefoxCompat() {\n\tconst { isMultiSelecting } = useSelect( blockEditorStore );\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onFocus() {\n\t\t\tif ( ! isMultiSelecting() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// This is a little hack to work around focus issues with nested\n\t\t\t// editable elements in Firefox. For some reason the editable child\n\t\t\t// element sometimes regains focus, while it should not be focusable\n\t\t\t// and focus should remain on the editable parent element.\n\t\t\t// To do: try to find the cause of the shifting focus.\n\t\t\tconst parentEditable = element.parentElement.closest(\n\t\t\t\t'[contenteditable=\"true\"]'\n\t\t\t);\n\n\t\t\tif ( parentEditable ) {\n\t\t\t\tparentEditable.focus();\n\t\t\t}\n\t\t}\n\n\t\telement.addEventListener( 'focus', onFocus );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'focus', onFocus );\n\t\t};\n\t}, [] );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/rich-text/use-firefox-compat.js"],"names":["useRef","useRefEffect","useSelect","SPACE","insert","store","blockEditorStore","useFirefoxCompat","props","propsRef","current","isMultiSelecting","element","onFocus","parentEditable","parentElement","closest","focus","onKeyDown","event","keyCode","value","onChange","preventDefault","addEventListener","removeEventListener"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAT,QAAuB,oBAAvB;AACA,SAASC,YAAT,QAA6B,oBAA7B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAT,QAAsB,qBAAtB;AACA,SAASC,MAAT,QAAuB,sBAAvB;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,aAA1C;AAEA,OAAO,SAASC,gBAAT,CAA2BC,KAA3B,EAAmC;AACzC,QAAMC,QAAQ,GAAGT,MAAM,CAAEQ,KAAF,CAAvB;AACAC,EAAAA,QAAQ,CAACC,OAAT,GAAmBF,KAAnB;AAEA,QAAM;AAAEG,IAAAA;AAAF,MAAuBT,SAAS,CAAEI,gBAAF,CAAtC;AACA,SAAOL,YAAY,CAAIW,OAAF,IAAe;AACnC,aAASC,OAAT,GAAmB;AAClB,UAAK,CAAEF,gBAAgB,EAAvB,EAA4B;AAC3B;AACA,OAHiB,CAKlB;AACA;AACA;AACA;AACA;;;AACA,YAAMG,cAAc,GAAGF,OAAO,CAACG,aAAR,CAAsBC,OAAtB,CACtB,0BADsB,CAAvB;;AAIA,UAAKF,cAAL,EAAsB;AACrBA,QAAAA,cAAc,CAACG,KAAf;AACA;AACD,KAlBkC,CAoBnC;AACA;AACA;AACA;;;AACA,aAASC,SAAT,CAAoBC,KAApB,EAA4B;AAC3B,UAAKA,KAAK,CAACC,OAAN,KAAkBjB,KAAvB,EAA+B;AAC9B;AACA;;AAED,UAAKS,OAAO,CAACI,OAAR,CAAiB,iBAAjB,MAAyC,IAA9C,EAAqD;AACpD;AACA;;AAED,YAAM;AAAEK,QAAAA,KAAF;AAASC,QAAAA;AAAT,UAAsBb,QAAQ,CAACC,OAArC;AACAY,MAAAA,QAAQ,CAAElB,MAAM,CAAEiB,KAAF,EAAS,GAAT,CAAR,CAAR;AACAF,MAAAA,KAAK,CAACI,cAAN;AACA;;AAEDX,IAAAA,OAAO,CAACY,gBAAR,CAA0B,OAA1B,EAAmCX,OAAnC;AACAD,IAAAA,OAAO,CAACY,gBAAR,CAA0B,SAA1B,EAAqCN,SAArC;AACA,WAAO,MAAM;AACZN,MAAAA,OAAO,CAACa,mBAAR,CAA6B,OAA7B,EAAsCZ,OAAtC;AACAD,MAAAA,OAAO,CAACa,mBAAR,CAA6B,SAA7B,EAAwCP,SAAxC;AACA,KAHD;AAIA,GA5CkB,EA4ChB,EA5CgB,CAAnB;AA6CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { SPACE } from '@wordpress/keycodes';\nimport { insert } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nexport function useFirefoxCompat( props ) {\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\n\tconst { isMultiSelecting } = useSelect( blockEditorStore );\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onFocus() {\n\t\t\tif ( ! isMultiSelecting() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// This is a little hack to work around focus issues with nested\n\t\t\t// editable elements in Firefox. For some reason the editable child\n\t\t\t// element sometimes regains focus, while it should not be focusable\n\t\t\t// and focus should remain on the editable parent element.\n\t\t\t// To do: try to find the cause of the shifting focus.\n\t\t\tconst parentEditable = element.parentElement.closest(\n\t\t\t\t'[contenteditable=\"true\"]'\n\t\t\t);\n\n\t\t\tif ( parentEditable ) {\n\t\t\t\tparentEditable.focus();\n\t\t\t}\n\t\t}\n\n\t\t// If a contenteditable element is inside a button/summary element,\n\t\t// it is not possible to type a space in Firefox. Therefore, cancel\n\t\t// the default event and insert a space explicitly.\n\t\t// See: https://bugzilla.mozilla.org/show_bug.cgi?id=1822860\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.keyCode !== SPACE ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( element.closest( 'button, summary' ) === null ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { value, onChange } = propsRef.current;\n\t\t\tonChange( insert( value, ' ' ) );\n\t\t\tevent.preventDefault();\n\t\t}\n\n\t\telement.addEventListener( 'focus', onFocus );\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'focus', onFocus );\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n"]}
@@ -21,10 +21,7 @@ function prefixSelectKeys(selected, prefix) {
21
21
  if (typeof selected !== 'object') return {
22
22
  [prefix]: selected
23
23
  };
24
- return Object.fromEntries(Object.entries(selected).map(_ref => {
25
- let [key, value] = _ref;
26
- return [`${prefix}.${key}`, value];
27
- }));
24
+ return Object.fromEntries(Object.entries(selected).map(([key, value]) => [`${prefix}.${key}`, value]));
28
25
  }
29
26
 
30
27
  function getPrefixedSelectKeys(selected, prefix) {
@@ -46,21 +43,18 @@ function getPrefixedSelectKeys(selected, prefix) {
46
43
  */
47
44
 
48
45
 
49
- export function useFormatTypes(_ref2) {
50
- let {
51
- clientId,
52
- identifier,
53
- withoutInteractiveFormatting,
54
- allowedFormats
55
- } = _ref2;
46
+ export function useFormatTypes({
47
+ clientId,
48
+ identifier,
49
+ withoutInteractiveFormatting,
50
+ allowedFormats
51
+ }) {
56
52
  const allFormatTypes = useSelect(formatTypesSelector, []);
57
53
  const formatTypes = useMemo(() => {
58
- return allFormatTypes.filter(_ref3 => {
59
- let {
60
- name,
61
- tagName
62
- } = _ref3;
63
-
54
+ return allFormatTypes.filter(({
55
+ name,
56
+ tagName
57
+ }) => {
64
58
  if (allowedFormats && !allowedFormats.includes(name)) {
65
59
  return false;
66
60
  }