@wordpress/block-editor 12.6.0 → 12.8.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 (2320) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +44 -2
  3. package/build/autocompleters/block.js +9 -24
  4. package/build/autocompleters/block.js.map +1 -1
  5. package/build/autocompleters/link.js +3 -14
  6. package/build/autocompleters/link.js.map +1 -1
  7. package/build/components/alignment-control/index.js +6 -10
  8. package/build/components/alignment-control/index.js.map +1 -1
  9. package/build/components/alignment-control/ui.js +3 -11
  10. package/build/components/alignment-control/ui.js.map +1 -1
  11. package/build/components/autocomplete/index.js +8 -22
  12. package/build/components/autocomplete/index.js.map +1 -1
  13. package/build/components/block-actions/index.js +3 -26
  14. package/build/components/block-actions/index.js.map +1 -1
  15. package/build/components/block-alignment-control/constants.js +1 -3
  16. package/build/components/block-alignment-control/constants.js.map +1 -1
  17. package/build/components/block-alignment-control/index.js +6 -10
  18. package/build/components/block-alignment-control/index.js.map +1 -1
  19. package/build/components/block-alignment-control/ui.js +7 -16
  20. package/build/components/block-alignment-control/ui.js.map +1 -1
  21. package/build/components/block-alignment-control/ui.native.js +5 -13
  22. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  23. package/build/components/block-alignment-control/use-available-alignments.js +10 -18
  24. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  25. package/build/components/block-alignment-matrix-control/index.js +1 -8
  26. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  27. package/build/components/block-breadcrumb/index.js +2 -15
  28. package/build/components/block-breadcrumb/index.js.map +1 -1
  29. package/build/components/block-caption/index.native.js +7 -16
  30. package/build/components/block-caption/index.native.js.map +1 -1
  31. package/build/components/block-card/index.js +5 -17
  32. package/build/components/block-card/index.js.map +1 -1
  33. package/build/components/block-compare/block-view.js +1 -4
  34. package/build/components/block-compare/block-view.js.map +1 -1
  35. package/build/components/block-compare/index.js +4 -12
  36. package/build/components/block-compare/index.js.map +1 -1
  37. package/build/components/block-content-overlay/index.js +1 -3
  38. package/build/components/block-content-overlay/index.js.map +1 -1
  39. package/build/components/block-context/index.js +3 -5
  40. package/build/components/block-context/index.js.map +1 -1
  41. package/build/components/block-controls/fill.js +3 -8
  42. package/build/components/block-controls/fill.js.map +1 -1
  43. package/build/components/block-controls/groups.js +1 -2
  44. package/build/components/block-controls/groups.js.map +1 -1
  45. package/build/components/block-controls/hook.js +1 -11
  46. package/build/components/block-controls/hook.js.map +1 -1
  47. package/build/components/block-controls/index.js +3 -9
  48. package/build/components/block-controls/index.js.map +1 -1
  49. package/build/components/block-controls/slot.js +3 -14
  50. package/build/components/block-controls/slot.js.map +1 -1
  51. package/build/components/block-controls/slot.native.js +5 -12
  52. package/build/components/block-controls/slot.native.js.map +1 -1
  53. package/build/components/block-controls/use-has-block-controls.js +43 -0
  54. package/build/components/block-controls/use-has-block-controls.js.map +1 -0
  55. package/build/components/block-draggable/draggable-chip.js +2 -9
  56. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  57. package/build/components/block-draggable/draggable-chip.native.js +2 -9
  58. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  59. package/build/components/block-draggable/dropping-insertion-point.native.js +2 -23
  60. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  61. package/build/components/block-draggable/index.js +3 -15
  62. package/build/components/block-draggable/index.js.map +1 -1
  63. package/build/components/block-draggable/index.native.js +7 -56
  64. package/build/components/block-draggable/index.native.js.map +1 -1
  65. package/build/components/block-draggable/use-scroll-when-dragging.js +9 -13
  66. package/build/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  67. package/build/components/block-draggable/use-scroll-when-dragging.native.js +2 -14
  68. package/build/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  69. package/build/components/block-edit/context.js +1 -3
  70. package/build/components/block-edit/context.js.map +1 -1
  71. package/build/components/block-edit/edit.js +13 -23
  72. package/build/components/block-edit/edit.js.map +1 -1
  73. package/build/components/block-edit/edit.native.js +4 -14
  74. package/build/components/block-edit/edit.native.js.map +1 -1
  75. package/build/components/block-edit/index.js +5 -8
  76. package/build/components/block-edit/index.js.map +1 -1
  77. package/build/components/block-edit-visually-button/index.js +1 -8
  78. package/build/components/block-edit-visually-button/index.js.map +1 -1
  79. package/build/components/block-editing-mode/index.js +3 -12
  80. package/build/components/block-editing-mode/index.js.map +1 -1
  81. package/build/components/block-full-height-alignment-control/index.js +1 -6
  82. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  83. package/build/components/block-heading-level-dropdown/heading-level-icon.js +2 -6
  84. package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  85. package/build/components/block-heading-level-dropdown/index.js +4 -10
  86. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  87. package/build/components/block-heading-level-dropdown/index.native.js +2 -8
  88. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  89. package/build/components/block-icon/index.js +2 -10
  90. package/build/components/block-icon/index.js.map +1 -1
  91. package/build/components/block-icon/index.native.js +1 -10
  92. package/build/components/block-icon/index.native.js.map +1 -1
  93. package/build/components/block-info-slot-fill/index.js +5 -13
  94. package/build/components/block-info-slot-fill/index.js.map +1 -1
  95. package/build/components/block-inspector/index.js +11 -46
  96. package/build/components/block-inspector/index.js.map +1 -1
  97. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js +7 -10
  98. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  99. package/build/components/block-list/block-crash-boundary.js +1 -7
  100. package/build/components/block-list/block-crash-boundary.js.map +1 -1
  101. package/build/components/block-list/block-crash-warning.js +1 -7
  102. package/build/components/block-list/block-crash-warning.js.map +1 -1
  103. package/build/components/block-list/block-html.js +7 -15
  104. package/build/components/block-list/block-html.js.map +1 -1
  105. package/build/components/block-list/block-invalid-warning.js +3 -16
  106. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  107. package/build/components/block-list/block-invalid-warning.native.js +4 -16
  108. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  109. package/build/components/block-list/block-list-block-context.js +1 -2
  110. package/build/components/block-list/block-list-block-context.js.map +1 -1
  111. package/build/components/block-list/block-list-context.native.js +10 -25
  112. package/build/components/block-list/block-list-context.native.js.map +1 -1
  113. package/build/components/block-list/block-list-item-cell.native.js +1 -8
  114. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  115. package/build/components/block-list/block-list-item.native.js +5 -18
  116. package/build/components/block-list/block-list-item.native.js.map +1 -1
  117. package/build/components/block-list/block-outline.native.js +2 -9
  118. package/build/components/block-list/block-outline.native.js.map +1 -1
  119. package/build/components/block-list/block-selection-button.native.js +2 -21
  120. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  121. package/build/components/block-list/block.js +39 -80
  122. package/build/components/block-list/block.js.map +1 -1
  123. package/build/components/block-list/block.native.js +40 -71
  124. package/build/components/block-list/block.native.js.map +1 -1
  125. package/build/components/block-list/grid-item.native.js +1 -6
  126. package/build/components/block-list/grid-item.native.js.map +1 -1
  127. package/build/components/block-list/index.js +11 -32
  128. package/build/components/block-list/index.js.map +1 -1
  129. package/build/components/block-list/index.native.js +18 -49
  130. package/build/components/block-list/index.native.js.map +1 -1
  131. package/build/components/block-list/insertion-point.native.js +1 -9
  132. package/build/components/block-list/insertion-point.native.js.map +1 -1
  133. package/build/components/block-list/layout.js +3 -13
  134. package/build/components/block-list/layout.js.map +1 -1
  135. package/build/components/block-list/subdirectory-icon.js +3 -6
  136. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  137. package/build/components/block-list/use-block-props/index.js +10 -35
  138. package/build/components/block-list/use-block-props/index.js.map +1 -1
  139. package/build/components/block-list/use-block-props/index.native.js +5 -5
  140. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  141. package/build/components/block-list/use-block-props/use-block-class-names.js +2 -8
  142. package/build/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
  143. package/build/components/block-list/use-block-props/use-block-custom-class-name.js +0 -8
  144. package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  145. package/build/components/block-list/use-block-props/use-block-default-class-name.js +0 -6
  146. package/build/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  147. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js +3 -10
  148. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  149. package/build/components/block-list/use-block-props/use-block-refs.js +9 -18
  150. package/build/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  151. package/build/components/block-list/use-block-props/use-focus-first-element.js +13 -27
  152. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  153. package/build/components/block-list/use-block-props/use-focus-handler.js +6 -14
  154. package/build/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  155. package/build/components/block-list/use-block-props/use-intersection-observer.js +1 -4
  156. package/build/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  157. package/build/components/block-list/use-block-props/use-is-hovered.js +4 -8
  158. package/build/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  159. package/build/components/block-list/use-block-props/use-nav-mode-exit.js +2 -6
  160. package/build/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  161. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +2 -15
  162. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  163. package/build/components/block-list/use-in-between-inserter.js +15 -37
  164. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  165. package/build/components/block-list-appender/index.js +12 -32
  166. package/build/components/block-list-appender/index.js.map +1 -1
  167. package/build/components/block-list-appender/index.native.js +1 -14
  168. package/build/components/block-list-appender/index.native.js.map +1 -1
  169. package/build/components/block-lock/index.js +0 -5
  170. package/build/components/block-lock/index.js.map +1 -1
  171. package/build/components/block-lock/menu-item.js +1 -10
  172. package/build/components/block-lock/menu-item.js.map +1 -1
  173. package/build/components/block-lock/modal.js +10 -22
  174. package/build/components/block-lock/modal.js.map +1 -1
  175. package/build/components/block-lock/toolbar.js +6 -16
  176. package/build/components/block-lock/toolbar.js.map +1 -1
  177. package/build/components/block-lock/use-block-lock.js +0 -3
  178. package/build/components/block-lock/use-block-lock.js.map +1 -1
  179. package/build/components/block-media-update-progress/index.native.js +9 -64
  180. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  181. package/build/components/block-mover/button.js +1 -23
  182. package/build/components/block-mover/button.js.map +1 -1
  183. package/build/components/block-mover/index.js +4 -18
  184. package/build/components/block-mover/index.js.map +1 -1
  185. package/build/components/block-mover/index.native.js +3 -21
  186. package/build/components/block-mover/index.native.js.map +1 -1
  187. package/build/components/block-mover/mover-description.js +41 -63
  188. package/build/components/block-mover/mover-description.js.map +1 -1
  189. package/build/components/block-mover/mover-description.native.js +1 -20
  190. package/build/components/block-mover/mover-description.native.js.map +1 -1
  191. package/build/components/block-navigation/dropdown.js +6 -17
  192. package/build/components/block-navigation/dropdown.js.map +1 -1
  193. package/build/components/block-parent-selector/index.js +11 -43
  194. package/build/components/block-parent-selector/index.js.map +1 -1
  195. package/build/components/block-pattern-setup/constants.js.map +1 -1
  196. package/build/components/block-pattern-setup/index.js +3 -23
  197. package/build/components/block-pattern-setup/index.js.map +1 -1
  198. package/build/components/block-pattern-setup/setup-toolbar.js +1 -9
  199. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  200. package/build/components/block-pattern-setup/use-patterns-setup.js +1 -6
  201. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  202. package/build/components/block-patterns-list/index.js +3 -17
  203. package/build/components/block-patterns-list/index.js.map +1 -1
  204. package/build/components/block-popover/drop-zone.js +1 -12
  205. package/build/components/block-popover/drop-zone.js.map +1 -1
  206. package/build/components/block-popover/inbetween.js +16 -33
  207. package/build/components/block-popover/inbetween.js.map +1 -1
  208. package/build/components/block-popover/index.js +15 -26
  209. package/build/components/block-popover/index.js.map +1 -1
  210. package/build/components/block-popover/use-popover-scroll.js +2 -7
  211. package/build/components/block-popover/use-popover-scroll.js.map +1 -1
  212. package/build/components/block-preview/auto.js +15 -19
  213. package/build/components/block-preview/auto.js.map +1 -1
  214. package/build/components/block-preview/index.js +8 -24
  215. package/build/components/block-preview/index.js.map +1 -1
  216. package/build/components/block-quick-navigation/index.js +2 -13
  217. package/build/components/block-quick-navigation/index.js.map +1 -1
  218. package/build/components/block-removal-warning-modal/index.js +5 -15
  219. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  220. package/build/components/block-selection-clearer/index.js +2 -11
  221. package/build/components/block-selection-clearer/index.js.map +1 -1
  222. package/build/components/block-settings/button.native.js +3 -10
  223. package/build/components/block-settings/button.native.js.map +1 -1
  224. package/build/components/block-settings/container.native.js +3 -9
  225. package/build/components/block-settings/container.native.js.map +1 -1
  226. package/build/components/block-settings/index.native.js +0 -5
  227. package/build/components/block-settings/index.native.js.map +1 -1
  228. package/build/components/block-settings-menu/block-convert-button.js +1 -5
  229. package/build/components/block-settings-menu/block-convert-button.js.map +1 -1
  230. package/build/components/block-settings-menu/block-html-convert-button.js +0 -9
  231. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  232. package/build/components/block-settings-menu/block-mode-toggle.js +1 -13
  233. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  234. package/build/components/block-settings-menu/block-settings-dropdown.js +16 -53
  235. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  236. package/build/components/block-settings-menu/block-settings-menu-first-item.js +1 -2
  237. package/build/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  238. package/build/components/block-settings-menu/index.js +1 -6
  239. package/build/components/block-settings-menu/index.js.map +1 -1
  240. package/build/components/block-settings-menu-controls/index.js +13 -22
  241. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  242. package/build/components/block-styles/index.js +2 -20
  243. package/build/components/block-styles/index.js.map +1 -1
  244. package/build/components/block-styles/index.native.js +1 -17
  245. package/build/components/block-styles/index.native.js.map +1 -1
  246. package/build/components/block-styles/menu-items.js +1 -9
  247. package/build/components/block-styles/menu-items.js.map +1 -1
  248. package/build/components/block-styles/preview-panel.js +5 -8
  249. package/build/components/block-styles/preview-panel.js.map +1 -1
  250. package/build/components/block-styles/preview.native.js +3 -19
  251. package/build/components/block-styles/preview.native.js.map +1 -1
  252. package/build/components/block-styles/use-styles-for-block.js +1 -15
  253. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  254. package/build/components/block-styles/utils.js +3 -16
  255. package/build/components/block-styles/utils.js.map +1 -1
  256. package/build/components/block-switcher/block-styles-menu.js +1 -6
  257. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  258. package/build/components/block-switcher/block-transformations-menu.js +4 -18
  259. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  260. package/build/components/block-switcher/block-transformations-menu.native.js +4 -18
  261. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  262. package/build/components/block-switcher/block-variation-transformations.js +3 -16
  263. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  264. package/build/components/block-switcher/index.js +12 -43
  265. package/build/components/block-switcher/index.js.map +1 -1
  266. package/build/components/block-switcher/pattern-transformations-menu.js +3 -14
  267. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  268. package/build/components/block-switcher/preview-block-popover.js +1 -6
  269. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  270. package/build/components/block-switcher/use-transformed-patterns.js +12 -27
  271. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  272. package/build/components/block-switcher/utils.js +5 -10
  273. package/build/components/block-switcher/utils.js.map +1 -1
  274. package/build/components/block-title/index.js +0 -3
  275. package/build/components/block-title/index.js.map +1 -1
  276. package/build/components/block-title/use-block-display-title.js +2 -15
  277. package/build/components/block-title/use-block-display-title.js.map +1 -1
  278. package/build/components/block-toolbar/block-name-context.js +1 -3
  279. package/build/components/block-toolbar/block-name-context.js.map +1 -1
  280. package/build/components/block-toolbar/block-toolbar-last-item.js +1 -2
  281. package/build/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  282. package/build/components/block-toolbar/block-toolbar-menu.native.js +24 -43
  283. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  284. package/build/components/block-toolbar/index.js +10 -64
  285. package/build/components/block-toolbar/index.js.map +1 -1
  286. package/build/components/block-toolbar/index.native.js +1 -15
  287. package/build/components/block-toolbar/index.native.js.map +1 -1
  288. package/build/components/block-toolbar/utils.js +58 -74
  289. package/build/components/block-toolbar/utils.js.map +1 -1
  290. package/build/components/block-tools/back-compat.js +3 -11
  291. package/build/components/block-tools/back-compat.js.map +1 -1
  292. package/build/components/block-tools/block-contextual-toolbar.js +50 -23
  293. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  294. package/build/components/block-tools/block-selection-button.js +8 -43
  295. package/build/components/block-tools/block-selection-button.js.map +1 -1
  296. package/build/components/block-tools/index.js +9 -32
  297. package/build/components/block-tools/index.js.map +1 -1
  298. package/build/components/block-tools/insertion-point.js +8 -30
  299. package/build/components/block-tools/insertion-point.js.map +1 -1
  300. package/build/components/block-tools/selected-block-popover.js +12 -35
  301. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  302. package/build/components/block-tools/use-block-toolbar-popover-props.js +35 -36
  303. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  304. package/build/components/block-tools/zoom-out-mode-inserters.js +3 -12
  305. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  306. package/build/components/block-types-list/index.js +1 -10
  307. package/build/components/block-types-list/index.js.map +1 -1
  308. package/build/components/block-types-list/index.native.js +3 -22
  309. package/build/components/block-types-list/index.native.js.map +1 -1
  310. package/build/components/block-variation-picker/index.js +1 -8
  311. package/build/components/block-variation-picker/index.js.map +1 -1
  312. package/build/components/block-variation-picker/index.native.js +11 -36
  313. package/build/components/block-variation-picker/index.native.js.map +1 -1
  314. package/build/components/block-variation-transforms/index.js +8 -22
  315. package/build/components/block-variation-transforms/index.js.map +1 -1
  316. package/build/components/block-vertical-alignment-control/icons.js +1 -3
  317. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  318. package/build/components/block-vertical-alignment-control/index.js +6 -10
  319. package/build/components/block-vertical-alignment-control/index.js.map +1 -1
  320. package/build/components/block-vertical-alignment-control/ui.js +4 -10
  321. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  322. package/build/components/border-radius-control/all-input-control.js +8 -13
  323. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  324. package/build/components/border-radius-control/index.js +5 -16
  325. package/build/components/border-radius-control/index.js.map +1 -1
  326. package/build/components/border-radius-control/input-controls.js +14 -15
  327. package/build/components/border-radius-control/input-controls.js.map +1 -1
  328. package/build/components/border-radius-control/linked-button.js +5 -7
  329. package/build/components/border-radius-control/linked-button.js.map +1 -1
  330. package/build/components/border-radius-control/utils.js +9 -17
  331. package/build/components/border-radius-control/utils.js.map +1 -1
  332. package/build/components/button-block-appender/index.js +5 -19
  333. package/build/components/button-block-appender/index.js.map +1 -1
  334. package/build/components/button-block-appender/index.native.js +4 -13
  335. package/build/components/button-block-appender/index.native.js.map +1 -1
  336. package/build/components/caption/index.native.js +1 -7
  337. package/build/components/caption/index.native.js.map +1 -1
  338. package/build/components/child-layout-control/index.js +8 -13
  339. package/build/components/child-layout-control/index.js.map +1 -1
  340. package/build/components/color-palette/control.js +3 -5
  341. package/build/components/color-palette/control.js.map +1 -1
  342. package/build/components/color-palette/index.js +0 -6
  343. package/build/components/color-palette/index.js.map +1 -1
  344. package/build/components/color-palette/with-color-context.js +2 -8
  345. package/build/components/color-palette/with-color-context.js.map +1 -1
  346. package/build/components/color-style-selector/index.js +3 -14
  347. package/build/components/color-style-selector/index.js.map +1 -1
  348. package/build/components/colors/index.js +0 -4
  349. package/build/components/colors/index.js.map +1 -1
  350. package/build/components/colors/utils.js +5 -20
  351. package/build/components/colors/utils.js.map +1 -1
  352. package/build/components/colors/with-colors.js +15 -30
  353. package/build/components/colors/with-colors.js.map +1 -1
  354. package/build/components/colors-gradients/control.js +7 -19
  355. package/build/components/colors-gradients/control.js.map +1 -1
  356. package/build/components/colors-gradients/dropdown.js +15 -21
  357. package/build/components/colors-gradients/dropdown.js.map +1 -1
  358. package/build/components/colors-gradients/panel-color-gradient-settings.js +7 -20
  359. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  360. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +1 -5
  361. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  362. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +0 -13
  363. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  364. package/build/components/contrast-checker/index.js +20 -31
  365. package/build/components/contrast-checker/index.js.map +1 -1
  366. package/build/components/contrast-checker/index.native.js +4 -21
  367. package/build/components/contrast-checker/index.native.js.map +1 -1
  368. package/build/components/convert-to-group-buttons/index.js +1 -18
  369. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  370. package/build/components/convert-to-group-buttons/index.native.js +5 -17
  371. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  372. package/build/components/convert-to-group-buttons/toolbar.js +3 -19
  373. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  374. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +4 -7
  375. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  376. package/build/components/copy-handler/index.js +24 -53
  377. package/build/components/copy-handler/index.js.map +1 -1
  378. package/build/components/date-format-picker/index.js +2 -8
  379. package/build/components/date-format-picker/index.js.map +1 -1
  380. package/build/components/default-block-appender/index.js +4 -18
  381. package/build/components/default-block-appender/index.js.map +1 -1
  382. package/build/components/default-block-appender/index.native.js +14 -21
  383. package/build/components/default-block-appender/index.native.js.map +1 -1
  384. package/build/components/default-style-picker/index.js +4 -12
  385. package/build/components/default-style-picker/index.js.map +1 -1
  386. package/build/components/dimensions-tool/aspect-ratio-tool.js +1 -6
  387. package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  388. package/build/components/dimensions-tool/index.js +37 -36
  389. package/build/components/dimensions-tool/index.js.map +1 -1
  390. package/build/components/dimensions-tool/scale-tool.js +1 -5
  391. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  392. package/build/components/dimensions-tool/width-height-tool.js +5 -15
  393. package/build/components/dimensions-tool/width-height-tool.js.map +1 -1
  394. package/build/components/duotone/components.js +5 -11
  395. package/build/components/duotone/components.js.map +1 -1
  396. package/build/components/duotone/index.js +0 -2
  397. package/build/components/duotone/index.js.map +1 -1
  398. package/build/components/duotone/utils.js +0 -2
  399. package/build/components/duotone/utils.js.map +1 -1
  400. package/build/components/duotone-control/index.js +1 -10
  401. package/build/components/duotone-control/index.js.map +1 -1
  402. package/build/components/editable-text/index.js +4 -8
  403. package/build/components/editable-text/index.js.map +1 -1
  404. package/build/components/editor-styles/index.js +5 -17
  405. package/build/components/editor-styles/index.js.map +1 -1
  406. package/build/components/floating-toolbar/index.native.js +3 -18
  407. package/build/components/floating-toolbar/index.native.js.map +1 -1
  408. package/build/components/floating-toolbar/nav-up-icon.js +1 -5
  409. package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
  410. package/build/components/font-appearance-control/index.js +25 -30
  411. package/build/components/font-appearance-control/index.js.map +1 -1
  412. package/build/components/font-family/index.js +1 -9
  413. package/build/components/font-family/index.js.map +1 -1
  414. package/build/components/font-sizes/fluid-utils.js +52 -51
  415. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  416. package/build/components/font-sizes/font-size-picker.js +4 -8
  417. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  418. package/build/components/font-sizes/index.js +0 -5
  419. package/build/components/font-sizes/index.js.map +1 -1
  420. package/build/components/font-sizes/index.native.js +0 -4
  421. package/build/components/font-sizes/index.native.js.map +1 -1
  422. package/build/components/font-sizes/utils.js +2 -12
  423. package/build/components/font-sizes/utils.js.map +1 -1
  424. package/build/components/font-sizes/with-font-sizes.js +15 -27
  425. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  426. package/build/components/global-styles/advanced-panel.js +3 -14
  427. package/build/components/global-styles/advanced-panel.js.map +1 -1
  428. package/build/components/global-styles/behaviors-panel.js +64 -0
  429. package/build/components/global-styles/behaviors-panel.js.map +1 -0
  430. package/build/components/global-styles/border-panel.js +22 -43
  431. package/build/components/global-styles/border-panel.js.map +1 -1
  432. package/build/components/global-styles/color-panel.js +30 -69
  433. package/build/components/global-styles/color-panel.js.map +1 -1
  434. package/build/components/global-styles/color-panel.native.js +5 -19
  435. package/build/components/global-styles/color-panel.native.js.map +1 -1
  436. package/build/components/global-styles/context.js +1 -2
  437. package/build/components/global-styles/context.js.map +1 -1
  438. package/build/components/global-styles/dimensions-panel.js +33 -92
  439. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  440. package/build/components/global-styles/effects-panel.js +7 -27
  441. package/build/components/global-styles/effects-panel.js.map +1 -1
  442. package/build/components/global-styles/filters-panel.js +9 -25
  443. package/build/components/global-styles/filters-panel.js.map +1 -1
  444. package/build/components/global-styles/get-block-css-selector.js +33 -31
  445. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  446. package/build/components/global-styles/hooks.js +136 -71
  447. package/build/components/global-styles/hooks.js.map +1 -1
  448. package/build/components/global-styles/index.js +19 -15
  449. package/build/components/global-styles/index.js.map +1 -1
  450. package/build/components/global-styles/typography-panel.js +25 -87
  451. package/build/components/global-styles/typography-panel.js.map +1 -1
  452. package/build/components/global-styles/typography-utils.js +8 -16
  453. package/build/components/global-styles/typography-utils.js.map +1 -1
  454. package/build/components/global-styles/use-global-styles-output.js +96 -190
  455. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  456. package/build/components/global-styles/utils.js +12 -49
  457. package/build/components/global-styles/utils.js.map +1 -1
  458. package/build/components/gradients/index.js +0 -2
  459. package/build/components/gradients/index.js.map +1 -1
  460. package/build/components/gradients/index.native.js +0 -4
  461. package/build/components/gradients/index.native.js.map +1 -1
  462. package/build/components/gradients/use-gradient.js +3 -21
  463. package/build/components/gradients/use-gradient.js.map +1 -1
  464. package/build/components/gradients/with-gradient.js +3 -5
  465. package/build/components/gradients/with-gradient.js.map +1 -1
  466. package/build/components/height-control/index.js +2 -12
  467. package/build/components/height-control/index.js.map +1 -1
  468. package/build/components/iframe/index.js +23 -46
  469. package/build/components/iframe/index.js.map +1 -1
  470. package/build/components/iframe/use-compatibility-styles.js +8 -20
  471. package/build/components/iframe/use-compatibility-styles.js.map +1 -1
  472. package/build/components/image-editor/aspect-ratio-dropdown.js +3 -9
  473. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  474. package/build/components/image-editor/constants.js.map +1 -1
  475. package/build/components/image-editor/context.js +3 -9
  476. package/build/components/image-editor/context.js.map +1 -1
  477. package/build/components/image-editor/cropper.js +3 -11
  478. package/build/components/image-editor/cropper.js.map +1 -1
  479. package/build/components/image-editor/form-controls.js +1 -5
  480. package/build/components/image-editor/form-controls.js.map +1 -1
  481. package/build/components/image-editor/index.js +1 -11
  482. package/build/components/image-editor/index.js.map +1 -1
  483. package/build/components/image-editor/rotation-button.js +1 -6
  484. package/build/components/image-editor/rotation-button.js.map +1 -1
  485. package/build/components/image-editor/use-save-image.js +5 -15
  486. package/build/components/image-editor/use-save-image.js.map +1 -1
  487. package/build/components/image-editor/use-transform-image.js +1 -12
  488. package/build/components/image-editor/use-transform-image.js.map +1 -1
  489. package/build/components/image-editor/zoom-dropdown.js +1 -7
  490. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  491. package/build/components/image-size-control/index.js +1 -9
  492. package/build/components/image-size-control/index.js.map +1 -1
  493. package/build/components/image-size-control/use-dimension-handler.js +7 -14
  494. package/build/components/image-size-control/use-dimension-handler.js.map +1 -1
  495. package/build/components/index.js +25 -115
  496. package/build/components/index.js.map +1 -1
  497. package/build/components/index.native.js +0 -53
  498. package/build/components/index.native.js.map +1 -1
  499. package/build/components/inner-blocks/button-block-appender.js +1 -9
  500. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  501. package/build/components/inner-blocks/default-block-appender.js +1 -11
  502. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  503. package/build/components/inner-blocks/index.js +22 -38
  504. package/build/components/inner-blocks/index.js.map +1 -1
  505. package/build/components/inner-blocks/index.native.js +18 -31
  506. package/build/components/inner-blocks/index.native.js.map +1 -1
  507. package/build/components/inner-blocks/use-block-context.js +0 -9
  508. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  509. package/build/components/inner-blocks/use-inner-block-template-sync.js +10 -18
  510. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  511. package/build/components/inner-blocks/use-nested-settings-update.js +18 -27
  512. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  513. package/build/components/inner-blocks/with-client-id.js +3 -5
  514. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  515. package/build/components/inserter/block-patterns-explorer/explorer.js +3 -10
  516. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  517. package/build/components/inserter/block-patterns-explorer/patterns-list.js +5 -24
  518. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  519. package/build/components/inserter/block-patterns-explorer/sidebar.js +1 -7
  520. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  521. package/build/components/inserter/block-patterns-tab.js +12 -33
  522. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  523. package/build/components/inserter/block-types-tab.js +9 -25
  524. package/build/components/inserter/block-types-tab.js.map +1 -1
  525. package/build/components/inserter/block-types-tab.native.js +1 -14
  526. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  527. package/build/components/inserter/hooks/use-block-type-impressions.native.js +9 -12
  528. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  529. package/build/components/inserter/hooks/use-block-types-state.js +6 -8
  530. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  531. package/build/components/inserter/hooks/use-clipboard-block.native.js +1 -7
  532. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  533. package/build/components/inserter/hooks/use-debounced-input.js +6 -10
  534. package/build/components/inserter/hooks/use-debounced-input.js.map +1 -1
  535. package/build/components/inserter/hooks/use-insertion-point.js +2 -15
  536. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  537. package/build/components/inserter/hooks/use-patterns-state.js +6 -13
  538. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  539. package/build/components/inserter/index.js +29 -66
  540. package/build/components/inserter/index.js.map +1 -1
  541. package/build/components/inserter/index.native.js +23 -71
  542. package/build/components/inserter/index.native.js.map +1 -1
  543. package/build/components/inserter/library.js +1 -11
  544. package/build/components/inserter/library.js.map +1 -1
  545. package/build/components/inserter/media-tab/hooks.js +12 -27
  546. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  547. package/build/components/inserter/media-tab/index.js +0 -4
  548. package/build/components/inserter/media-tab/index.js.map +1 -1
  549. package/build/components/inserter/media-tab/media-list.js +3 -7
  550. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  551. package/build/components/inserter/media-tab/media-panel.js +1 -13
  552. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  553. package/build/components/inserter/media-tab/media-preview.js +10 -35
  554. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  555. package/build/components/inserter/media-tab/media-tab.js +3 -18
  556. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  557. package/build/components/inserter/media-tab/utils.js +2 -6
  558. package/build/components/inserter/media-tab/utils.js.map +1 -1
  559. package/build/components/inserter/menu.js +2 -22
  560. package/build/components/inserter/menu.js.map +1 -1
  561. package/build/components/inserter/menu.native.js +5 -24
  562. package/build/components/inserter/menu.native.js.map +1 -1
  563. package/build/components/inserter/mobile-tab-navigation.js +3 -7
  564. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  565. package/build/components/inserter/no-results.js +1 -5
  566. package/build/components/inserter/no-results.js.map +1 -1
  567. package/build/components/inserter/no-results.native.js +1 -8
  568. package/build/components/inserter/no-results.native.js.map +1 -1
  569. package/build/components/inserter/panel.js +1 -4
  570. package/build/components/inserter/panel.js.map +1 -1
  571. package/build/components/inserter/preview-panel.js +14 -15
  572. package/build/components/inserter/preview-panel.js.map +1 -1
  573. package/build/components/inserter/quick-inserter.js +4 -18
  574. package/build/components/inserter/quick-inserter.js.map +1 -1
  575. package/build/components/inserter/reusable-block-rename-hint.js +2 -16
  576. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  577. package/build/components/inserter/reusable-blocks-tab.js +6 -19
  578. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  579. package/build/components/inserter/reusable-blocks-tab.native.js +1 -9
  580. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  581. package/build/components/inserter/search-items.js +21 -41
  582. package/build/components/inserter/search-items.js.map +1 -1
  583. package/build/components/inserter/search-results.js +6 -37
  584. package/build/components/inserter/search-results.js.map +1 -1
  585. package/build/components/inserter/search-results.native.js +1 -15
  586. package/build/components/inserter/search-results.native.js.map +1 -1
  587. package/build/components/inserter/tabs.js +1 -17
  588. package/build/components/inserter/tabs.js.map +1 -1
  589. package/build/components/inserter/tabs.native.js +5 -20
  590. package/build/components/inserter/tabs.native.js.map +1 -1
  591. package/build/components/inserter/tips.js +3 -7
  592. package/build/components/inserter/tips.js.map +1 -1
  593. package/build/components/inserter/utils.native.js +2 -9
  594. package/build/components/inserter/utils.native.js.map +1 -1
  595. package/build/components/inserter-draggable-blocks/index.js +1 -8
  596. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  597. package/build/components/inserter-list-item/index.js +2 -17
  598. package/build/components/inserter-list-item/index.js.map +1 -1
  599. package/build/components/inserter-listbox/context.js +1 -2
  600. package/build/components/inserter-listbox/context.js.map +1 -1
  601. package/build/components/inserter-listbox/group.js +1 -7
  602. package/build/components/inserter-listbox/group.js.map +1 -1
  603. package/build/components/inserter-listbox/index.js +1 -9
  604. package/build/components/inserter-listbox/index.js.map +1 -1
  605. package/build/components/inserter-listbox/item.js +9 -14
  606. package/build/components/inserter-listbox/item.js.map +1 -1
  607. package/build/components/inserter-listbox/row.js +1 -7
  608. package/build/components/inserter-listbox/row.js.map +1 -1
  609. package/build/components/inserter-menu-extension/index.js +1 -2
  610. package/build/components/inserter-menu-extension/index.js.map +1 -1
  611. package/build/components/inspector-controls/block-support-slot-container.js +3 -4
  612. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  613. package/build/components/inspector-controls/block-support-tools-panel.js +7 -9
  614. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  615. package/build/components/inspector-controls/fill.js +4 -16
  616. package/build/components/inspector-controls/fill.js.map +1 -1
  617. package/build/components/inspector-controls/fill.native.js +3 -15
  618. package/build/components/inspector-controls/fill.native.js.map +1 -1
  619. package/build/components/inspector-controls/groups.js +1 -2
  620. package/build/components/inspector-controls/groups.js.map +1 -1
  621. package/build/components/inspector-controls/index.js +8 -12
  622. package/build/components/inspector-controls/index.js.map +1 -1
  623. package/build/components/inspector-controls/slot.js +5 -16
  624. package/build/components/inspector-controls/slot.js.map +1 -1
  625. package/build/components/inspector-controls/slot.native.js +3 -10
  626. package/build/components/inspector-controls/slot.native.js.map +1 -1
  627. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +1 -10
  628. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  629. package/build/components/inspector-controls-tabs/index.js +1 -11
  630. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  631. package/build/components/inspector-controls-tabs/position-controls-panel.js +3 -14
  632. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  633. package/build/components/inspector-controls-tabs/settings-tab-hint.js +1 -13
  634. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  635. package/build/components/inspector-controls-tabs/settings-tab.js +1 -8
  636. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  637. package/build/components/inspector-controls-tabs/styles-tab.js +1 -10
  638. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  639. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +14 -24
  640. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  641. package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js +0 -2
  642. package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  643. package/build/components/inspector-controls-tabs/utils.js +1 -3
  644. package/build/components/inspector-controls-tabs/utils.js.map +1 -1
  645. package/build/components/inspector-popover-header/index.js +1 -5
  646. package/build/components/inspector-popover-header/index.js.map +1 -1
  647. package/build/components/justify-content-control/index.js +6 -10
  648. package/build/components/justify-content-control/index.js.map +1 -1
  649. package/build/components/justify-content-control/ui.js +1 -8
  650. package/build/components/justify-content-control/ui.js.map +1 -1
  651. package/build/components/keyboard-shortcuts/index.js +10 -7
  652. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  653. package/build/components/letter-spacing-control/index.js +2 -7
  654. package/build/components/letter-spacing-control/index.js.map +1 -1
  655. package/build/components/line-height-control/index.js +21 -37
  656. package/build/components/line-height-control/index.js.map +1 -1
  657. package/build/components/line-height-control/index.native.js +5 -7
  658. package/build/components/line-height-control/index.native.js.map +1 -1
  659. package/build/components/line-height-control/utils.js +10 -6
  660. package/build/components/line-height-control/utils.js.map +1 -1
  661. package/build/components/link-control/constants.js +1 -2
  662. package/build/components/link-control/constants.js.map +1 -1
  663. package/build/components/link-control/index.js +79 -52
  664. package/build/components/link-control/index.js.map +1 -1
  665. package/build/components/link-control/is-url-like.js +4 -8
  666. package/build/components/link-control/is-url-like.js.map +1 -1
  667. package/build/components/link-control/link-preview.js +11 -19
  668. package/build/components/link-control/link-preview.js.map +1 -1
  669. package/build/components/link-control/search-create-button.js +4 -12
  670. package/build/components/link-control/search-create-button.js.map +1 -1
  671. package/build/components/link-control/search-input.js +15 -28
  672. package/build/components/link-control/search-input.js.map +1 -1
  673. package/build/components/link-control/search-item.js +7 -19
  674. package/build/components/link-control/search-item.js.map +1 -1
  675. package/build/components/link-control/search-results.js +13 -22
  676. package/build/components/link-control/search-results.js.map +1 -1
  677. package/build/components/link-control/settings-drawer.js +1 -7
  678. package/build/components/link-control/settings-drawer.js.map +1 -1
  679. package/build/components/link-control/settings.js +3 -9
  680. package/build/components/link-control/settings.js.map +1 -1
  681. package/build/components/link-control/use-create-page.js +5 -12
  682. package/build/components/link-control/use-create-page.js.map +1 -1
  683. package/build/components/link-control/use-internal-value.js +9 -12
  684. package/build/components/link-control/use-internal-value.js.map +1 -1
  685. package/build/components/link-control/use-rich-url-data.js +9 -14
  686. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  687. package/build/components/link-control/use-search-handler.js +10 -24
  688. package/build/components/link-control/use-search-handler.js.map +1 -1
  689. package/build/components/link-control/viewer-slot.js +1 -2
  690. package/build/components/link-control/viewer-slot.js.map +1 -1
  691. package/build/components/list-view/appender.js +4 -18
  692. package/build/components/list-view/appender.js.map +1 -1
  693. package/build/components/list-view/aria-referenced-text.js +0 -2
  694. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  695. package/build/components/list-view/block-contents.js +4 -11
  696. package/build/components/list-view/block-contents.js.map +1 -1
  697. package/build/components/list-view/block-select-button.js +31 -32
  698. package/build/components/list-view/block-select-button.js.map +1 -1
  699. package/build/components/list-view/block.js +24 -46
  700. package/build/components/list-view/block.js.map +1 -1
  701. package/build/components/list-view/branch.js +7 -37
  702. package/build/components/list-view/branch.js.map +1 -1
  703. package/build/components/list-view/context.js +1 -4
  704. package/build/components/list-view/context.js.map +1 -1
  705. package/build/components/list-view/drop-indicator.js +35 -47
  706. package/build/components/list-view/drop-indicator.js.map +1 -1
  707. package/build/components/list-view/expander.js +3 -5
  708. package/build/components/list-view/expander.js.map +1 -1
  709. package/build/components/list-view/index.js +18 -39
  710. package/build/components/list-view/index.js.map +1 -1
  711. package/build/components/list-view/leaf.js +1 -8
  712. package/build/components/list-view/leaf.js.map +1 -1
  713. package/build/components/list-view/use-block-selection.js +15 -30
  714. package/build/components/list-view/use-block-selection.js.map +1 -1
  715. package/build/components/list-view/use-list-view-client-ids.js +1 -4
  716. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  717. package/build/components/list-view/use-list-view-drop-zone.js +38 -63
  718. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  719. package/build/components/list-view/use-list-view-expand-selected-item.js +5 -7
  720. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  721. package/build/components/list-view/use-list-view-images.js +84 -0
  722. package/build/components/list-view/use-list-view-images.js.map +1 -0
  723. package/build/components/list-view/use-list-view-scroll-into-view.js +6 -8
  724. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  725. package/build/components/list-view/utils.js +4 -10
  726. package/build/components/list-view/utils.js.map +1 -1
  727. package/build/components/media-placeholder/index.js +11 -71
  728. package/build/components/media-placeholder/index.js.map +1 -1
  729. package/build/components/media-placeholder/index.native.js +7 -30
  730. package/build/components/media-placeholder/index.native.js.map +1 -1
  731. package/build/components/media-replace-flow/index.js +8 -39
  732. package/build/components/media-replace-flow/index.js.map +1 -1
  733. package/build/components/media-replace-flow/index.native.js +13 -4
  734. package/build/components/media-replace-flow/index.native.js.map +1 -1
  735. package/build/components/media-upload/check.js +2 -5
  736. package/build/components/media-upload/check.js.map +1 -1
  737. package/build/components/media-upload/index.js +1 -5
  738. package/build/components/media-upload/index.js.map +1 -1
  739. package/build/components/media-upload/index.native.js +18 -43
  740. package/build/components/media-upload/index.native.js.map +1 -1
  741. package/build/components/media-upload-progress/index.native.js +3 -33
  742. package/build/components/media-upload-progress/index.native.js.map +1 -1
  743. package/build/components/multi-selection-inspector/index.js +3 -16
  744. package/build/components/multi-selection-inspector/index.js.map +1 -1
  745. package/build/components/navigable-toolbar/index.js +10 -32
  746. package/build/components/navigable-toolbar/index.js.map +1 -1
  747. package/build/components/observe-typing/index.js +24 -43
  748. package/build/components/observe-typing/index.js.map +1 -1
  749. package/build/components/panel-color-settings/index.js +3 -7
  750. package/build/components/panel-color-settings/index.js.map +1 -1
  751. package/build/components/plain-text/index.js +0 -7
  752. package/build/components/plain-text/index.js.map +1 -1
  753. package/build/components/plain-text/index.native.js +7 -27
  754. package/build/components/plain-text/index.native.js.map +1 -1
  755. package/build/components/preview-options/index.js +1 -8
  756. package/build/components/preview-options/index.js.map +1 -1
  757. package/build/components/provider/block-refs-provider.js +1 -3
  758. package/build/components/provider/block-refs-provider.js.map +1 -1
  759. package/build/components/provider/index.js +7 -14
  760. package/build/components/provider/index.js.map +1 -1
  761. package/build/components/provider/index.native.js +3 -9
  762. package/build/components/provider/index.native.js.map +1 -1
  763. package/build/components/provider/use-block-sync.js +23 -41
  764. package/build/components/provider/use-block-sync.js.map +1 -1
  765. package/build/components/provider/with-registry-provider.js +1 -9
  766. package/build/components/provider/with-registry-provider.js.map +1 -1
  767. package/build/components/publish-date-time-picker/index.js +1 -9
  768. package/build/components/publish-date-time-picker/index.js.map +1 -1
  769. package/build/components/recursion-provider/index.js +6 -9
  770. package/build/components/recursion-provider/index.js.map +1 -1
  771. package/build/components/resizable-box-popover/index.js +3 -6
  772. package/build/components/resizable-box-popover/index.js.map +1 -1
  773. package/build/components/resolution-tool/index.js +1 -5
  774. package/build/components/resolution-tool/index.js.map +1 -1
  775. package/build/components/responsive-block-control/index.js +3 -16
  776. package/build/components/responsive-block-control/index.js.map +1 -1
  777. package/build/components/responsive-block-control/label.js +2 -7
  778. package/build/components/responsive-block-control/label.js.map +1 -1
  779. package/build/components/rich-text/content.js +3 -13
  780. package/build/components/rich-text/content.js.map +1 -1
  781. package/build/components/rich-text/embed-handler-picker.native.js +1 -7
  782. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  783. package/build/components/rich-text/file-paste-handler.native.js +0 -1
  784. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  785. package/build/components/rich-text/format-edit.js +52 -30
  786. package/build/components/rich-text/format-edit.js.map +1 -1
  787. package/build/components/rich-text/format-toolbar/index.js +4 -14
  788. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  789. package/build/components/rich-text/format-toolbar/index.native.js +1 -4
  790. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  791. package/build/components/rich-text/format-toolbar-container.js +4 -22
  792. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  793. package/build/components/rich-text/format-toolbar-container.native.js +1 -6
  794. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  795. package/build/components/rich-text/get-rich-text-values.js +12 -38
  796. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  797. package/build/components/rich-text/index.js +18 -68
  798. package/build/components/rich-text/index.js.map +1 -1
  799. package/build/components/rich-text/index.native.js +48 -94
  800. package/build/components/rich-text/index.native.js.map +1 -1
  801. package/build/components/rich-text/input-event.js +1 -4
  802. package/build/components/rich-text/input-event.js.map +1 -1
  803. package/build/components/rich-text/input-event.native.js +1 -4
  804. package/build/components/rich-text/input-event.native.js.map +1 -1
  805. package/build/components/rich-text/prevent-event-discovery.js +1 -6
  806. package/build/components/rich-text/prevent-event-discovery.js.map +1 -1
  807. package/build/components/rich-text/remove-browser-shortcuts.native.js +0 -2
  808. package/build/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  809. package/build/components/rich-text/shortcut.js +1 -5
  810. package/build/components/rich-text/shortcut.js.map +1 -1
  811. package/build/components/rich-text/shortcut.native.js +1 -4
  812. package/build/components/rich-text/shortcut.native.js.map +1 -1
  813. package/build/components/rich-text/split-value.js +18 -17
  814. package/build/components/rich-text/split-value.js.map +1 -1
  815. package/build/components/rich-text/toolbar-button.js +3 -8
  816. package/build/components/rich-text/toolbar-button.js.map +1 -1
  817. package/build/components/rich-text/use-before-input-rules.js +5 -22
  818. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  819. package/build/components/rich-text/use-delete.js +6 -15
  820. package/build/components/rich-text/use-delete.js.map +1 -1
  821. package/build/components/rich-text/use-enter.js +3 -18
  822. package/build/components/rich-text/use-enter.js.map +1 -1
  823. package/build/components/rich-text/use-firefox-compat.js +5 -41
  824. package/build/components/rich-text/use-firefox-compat.js.map +1 -1
  825. package/build/components/rich-text/use-format-types.js +10 -23
  826. package/build/components/rich-text/use-format-types.js.map +1 -1
  827. package/build/components/rich-text/use-input-events.js +1 -3
  828. package/build/components/rich-text/use-input-events.js.map +1 -1
  829. package/build/components/rich-text/use-input-rules.js +10 -35
  830. package/build/components/rich-text/use-input-rules.js.map +1 -1
  831. package/build/components/rich-text/use-insert-replacement-text.js +0 -5
  832. package/build/components/rich-text/use-insert-replacement-text.js.map +1 -1
  833. package/build/components/rich-text/use-mark-persistent.js +6 -9
  834. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  835. package/build/components/rich-text/use-paste-handler.js +24 -71
  836. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  837. package/build/components/rich-text/use-remove-browser-shortcuts.js +0 -4
  838. package/build/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  839. package/build/components/rich-text/use-shortcuts.js +1 -3
  840. package/build/components/rich-text/use-shortcuts.js.map +1 -1
  841. package/build/components/rich-text/use-undo-automatic-change.js +1 -13
  842. package/build/components/rich-text/use-undo-automatic-change.js.map +1 -1
  843. package/build/components/rich-text/utils.js +3 -15
  844. package/build/components/rich-text/utils.js.map +1 -1
  845. package/build/components/selection-scroll-into-view/index.js +0 -3
  846. package/build/components/selection-scroll-into-view/index.js.map +1 -1
  847. package/build/components/skip-to-selected-block/index.js +2 -12
  848. package/build/components/skip-to-selected-block/index.js.map +1 -1
  849. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -6
  850. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  851. package/build/components/spacing-sizes-control/index.js +13 -23
  852. package/build/components/spacing-sizes-control/index.js.map +1 -1
  853. package/build/components/spacing-sizes-control/input-controls/axial.js +7 -14
  854. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  855. package/build/components/spacing-sizes-control/input-controls/separated.js +3 -8
  856. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  857. package/build/components/spacing-sizes-control/input-controls/single.js +3 -7
  858. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  859. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +6 -29
  860. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  861. package/build/components/spacing-sizes-control/sides-dropdown/index.js +1 -7
  862. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  863. package/build/components/spacing-sizes-control/utils.js +36 -68
  864. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  865. package/build/components/text-decoration-control/index.js +2 -8
  866. package/build/components/text-decoration-control/index.js.map +1 -1
  867. package/build/components/text-transform-control/index.js +2 -8
  868. package/build/components/text-transform-control/index.js.map +1 -1
  869. package/build/components/tool-selector/index.js +4 -13
  870. package/build/components/tool-selector/index.js.map +1 -1
  871. package/build/components/typewriter/index.js +30 -52
  872. package/build/components/typewriter/index.js.map +1 -1
  873. package/build/components/ungroup-button/index.native.js +1 -16
  874. package/build/components/ungroup-button/index.native.js.map +1 -1
  875. package/build/components/unit-control/index.js +1 -5
  876. package/build/components/unit-control/index.js.map +1 -1
  877. package/build/components/url-input/button.js +2 -13
  878. package/build/components/url-input/button.js.map +1 -1
  879. package/build/components/url-input/index.js +38 -91
  880. package/build/components/url-input/index.js.map +1 -1
  881. package/build/components/url-input/index.native.js +1 -4
  882. package/build/components/url-input/index.native.js.map +1 -1
  883. package/build/components/url-popover/image-url-input-ui.js +3 -36
  884. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  885. package/build/components/url-popover/index.js +5 -20
  886. package/build/components/url-popover/index.js.map +1 -1
  887. package/build/components/url-popover/link-editor.js +1 -8
  888. package/build/components/url-popover/link-editor.js.map +1 -1
  889. package/build/components/url-popover/link-viewer-url.js +1 -8
  890. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  891. package/build/components/url-popover/link-viewer.js +1 -8
  892. package/build/components/url-popover/link-viewer.js.map +1 -1
  893. package/build/components/use-block-commands/index.js +247 -0
  894. package/build/components/use-block-commands/index.js.map +1 -0
  895. package/build/components/use-block-display-information/index.js +1 -9
  896. package/build/components/use-block-display-information/index.js.map +1 -1
  897. package/build/components/use-block-drop-zone/index.js +12 -29
  898. package/build/components/use-block-drop-zone/index.js.map +1 -1
  899. package/build/components/use-block-drop-zone/index.native.js +12 -24
  900. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  901. package/build/components/use-display-block-controls/index.js +1 -7
  902. package/build/components/use-display-block-controls/index.js.map +1 -1
  903. package/build/components/use-display-block-controls/index.native.js +1 -7
  904. package/build/components/use-display-block-controls/index.native.js.map +1 -1
  905. package/build/components/use-moving-animation/index.js +4 -20
  906. package/build/components/use-moving-animation/index.js.map +1 -1
  907. package/build/components/use-on-block-drop/index.js +19 -38
  908. package/build/components/use-on-block-drop/index.js.map +1 -1
  909. package/build/components/use-on-block-drop/index.native.js +11 -15
  910. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  911. package/build/components/use-on-block-drop/types.js.map +1 -1
  912. package/build/components/use-paste-styles/index.js +10 -27
  913. package/build/components/use-paste-styles/index.js.map +1 -1
  914. package/build/components/use-resize-canvas/index.js +0 -14
  915. package/build/components/use-resize-canvas/index.js.map +1 -1
  916. package/build/components/use-setting/index.js +17 -39
  917. package/build/components/use-setting/index.js.map +1 -1
  918. package/build/components/video-player/gridicon-play.native.js +0 -4
  919. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  920. package/build/components/video-player/index.native.js +9 -24
  921. package/build/components/video-player/index.native.js.map +1 -1
  922. package/build/components/warning/index.js +2 -9
  923. package/build/components/warning/index.js.map +1 -1
  924. package/build/components/warning/index.native.js +1 -10
  925. package/build/components/warning/index.native.js.map +1 -1
  926. package/build/components/writing-flow/index.js +4 -23
  927. package/build/components/writing-flow/index.js.map +1 -1
  928. package/build/components/writing-flow/use-arrow-nav.js +35 -60
  929. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  930. package/build/components/writing-flow/use-click-selection.js +3 -10
  931. package/build/components/writing-flow/use-click-selection.js.map +1 -1
  932. package/build/components/writing-flow/use-drag-selection.js +25 -31
  933. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  934. package/build/components/writing-flow/use-input.js +6 -21
  935. package/build/components/writing-flow/use-input.js.map +1 -1
  936. package/build/components/writing-flow/use-multi-selection.js +10 -16
  937. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  938. package/build/components/writing-flow/use-select-all.js +4 -14
  939. package/build/components/writing-flow/use-select-all.js.map +1 -1
  940. package/build/components/writing-flow/use-selection-observer.js +18 -47
  941. package/build/components/writing-flow/use-selection-observer.js.map +1 -1
  942. package/build/components/writing-flow/use-tab-nav.js +28 -44
  943. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  944. package/build/components/writing-mode-control/index.js +2 -8
  945. package/build/components/writing-mode-control/index.js.map +1 -1
  946. package/build/elements/index.js +0 -2
  947. package/build/elements/index.js.map +1 -1
  948. package/build/hooks/align.js +22 -46
  949. package/build/hooks/align.js.map +1 -1
  950. package/build/hooks/align.native.js +5 -9
  951. package/build/hooks/align.native.js.map +1 -1
  952. package/build/hooks/anchor.js +9 -24
  953. package/build/hooks/anchor.js.map +1 -1
  954. package/build/hooks/aria-label.js +5 -11
  955. package/build/hooks/aria-label.js.map +1 -1
  956. package/build/hooks/behaviors.js +14 -32
  957. package/build/hooks/behaviors.js.map +1 -1
  958. package/build/hooks/border.js +47 -80
  959. package/build/hooks/border.js.map +1 -1
  960. package/build/hooks/color.js +31 -69
  961. package/build/hooks/color.js.map +1 -1
  962. package/build/hooks/compat.js +1 -5
  963. package/build/hooks/compat.js.map +1 -1
  964. package/build/hooks/content-lock-ui.js +5 -19
  965. package/build/hooks/content-lock-ui.js.map +1 -1
  966. package/build/hooks/contrast-checker.js +4 -13
  967. package/build/hooks/contrast-checker.js.map +1 -1
  968. package/build/hooks/custom-class-name.js +21 -37
  969. package/build/hooks/custom-class-name.js.map +1 -1
  970. package/build/hooks/custom-class-name.native.js +3 -11
  971. package/build/hooks/custom-class-name.native.js.map +1 -1
  972. package/build/hooks/custom-fields.js +115 -0
  973. package/build/hooks/custom-fields.js.map +1 -0
  974. package/build/hooks/dimensions.js +6 -23
  975. package/build/hooks/dimensions.js.map +1 -1
  976. package/build/hooks/duotone.js +42 -64
  977. package/build/hooks/duotone.js.map +1 -1
  978. package/build/hooks/font-family.js +9 -29
  979. package/build/hooks/font-family.js.map +1 -1
  980. package/build/hooks/font-size.js +36 -62
  981. package/build/hooks/font-size.js.map +1 -1
  982. package/build/hooks/gap.js +1 -7
  983. package/build/hooks/gap.js.map +1 -1
  984. package/build/hooks/generated-class-name.js +1 -5
  985. package/build/hooks/generated-class-name.js.map +1 -1
  986. package/build/hooks/index.js +1 -27
  987. package/build/hooks/index.js.map +1 -1
  988. package/build/hooks/index.native.js +0 -14
  989. package/build/hooks/index.native.js.map +1 -1
  990. package/build/hooks/layout.js +45 -72
  991. package/build/hooks/layout.js.map +1 -1
  992. package/build/hooks/layout.native.js +4 -4
  993. package/build/hooks/layout.native.js.map +1 -1
  994. package/build/hooks/line-height.js +7 -15
  995. package/build/hooks/line-height.js.map +1 -1
  996. package/build/hooks/lock.js +4 -8
  997. package/build/hooks/lock.js.map +1 -1
  998. package/build/hooks/margin.js +1 -13
  999. package/build/hooks/margin.js.map +1 -1
  1000. package/build/hooks/metadata-name.js +4 -8
  1001. package/build/hooks/metadata-name.js.map +1 -1
  1002. package/build/hooks/metadata.js +4 -14
  1003. package/build/hooks/metadata.js.map +1 -1
  1004. package/build/hooks/padding.js +1 -13
  1005. package/build/hooks/padding.js.map +1 -1
  1006. package/build/hooks/position.js +35 -61
  1007. package/build/hooks/position.js.map +1 -1
  1008. package/build/hooks/settings.js +5 -8
  1009. package/build/hooks/settings.js.map +1 -1
  1010. package/build/hooks/style.js +38 -61
  1011. package/build/hooks/style.js.map +1 -1
  1012. package/build/hooks/supports.js +23 -76
  1013. package/build/hooks/supports.js.map +1 -1
  1014. package/build/hooks/typography.js +11 -27
  1015. package/build/hooks/typography.js.map +1 -1
  1016. package/build/hooks/typography.native.js +5 -14
  1017. package/build/hooks/typography.native.js.map +1 -1
  1018. package/build/hooks/use-border-props.js +5 -10
  1019. package/build/hooks/use-border-props.js.map +1 -1
  1020. package/build/hooks/use-cached-truthy.js +0 -2
  1021. package/build/hooks/use-cached-truthy.js.map +1 -1
  1022. package/build/hooks/use-color-props.js +14 -20
  1023. package/build/hooks/use-color-props.js.map +1 -1
  1024. package/build/hooks/use-editor-wrapper-styles.native.js +7 -30
  1025. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1026. package/build/hooks/use-spacing-props.js +3 -3
  1027. package/build/hooks/use-spacing-props.js.map +1 -1
  1028. package/build/hooks/use-typography-props.js +2 -9
  1029. package/build/hooks/use-typography-props.js.map +1 -1
  1030. package/build/hooks/utils.js +10 -26
  1031. package/build/hooks/utils.js.map +1 -1
  1032. package/build/index.js +0 -10
  1033. package/build/index.js.map +1 -1
  1034. package/build/index.native.js +0 -3
  1035. package/build/index.native.js.map +1 -1
  1036. package/build/layouts/constrained.js +13 -37
  1037. package/build/layouts/constrained.js.map +1 -1
  1038. package/build/layouts/definitions.js.map +1 -1
  1039. package/build/layouts/flex.js +16 -48
  1040. package/build/layouts/flex.js.map +1 -1
  1041. package/build/layouts/flow.js +7 -23
  1042. package/build/layouts/flow.js.map +1 -1
  1043. package/build/layouts/grid.js +18 -32
  1044. package/build/layouts/grid.js.map +1 -1
  1045. package/build/layouts/index.js +3 -9
  1046. package/build/layouts/index.js.map +1 -1
  1047. package/build/layouts/utils.js +3 -12
  1048. package/build/layouts/utils.js.map +1 -1
  1049. package/build/lock-unlock.js +1 -2
  1050. package/build/lock-unlock.js.map +1 -1
  1051. package/build/private-apis.js +5 -27
  1052. package/build/private-apis.js.map +1 -1
  1053. package/build/private-apis.native.js +2 -8
  1054. package/build/private-apis.native.js.map +1 -1
  1055. package/build/store/actions.js +188 -287
  1056. package/build/store/actions.js.map +1 -1
  1057. package/build/store/array.js +1 -3
  1058. package/build/store/array.js.map +1 -1
  1059. package/build/store/constants.js.map +1 -1
  1060. package/build/store/defaults.js +2 -3
  1061. package/build/store/defaults.js.map +1 -1
  1062. package/build/store/defaults.native.js +3 -3
  1063. package/build/store/defaults.native.js.map +1 -1
  1064. package/build/store/index.js +11 -19
  1065. package/build/store/index.js.map +1 -1
  1066. package/build/store/private-actions.js +26 -91
  1067. package/build/store/private-actions.js.map +1 -1
  1068. package/build/store/private-selectors.js +8 -90
  1069. package/build/store/private-selectors.js.map +1 -1
  1070. package/build/store/reducer.js +161 -358
  1071. package/build/store/reducer.js.map +1 -1
  1072. package/build/store/selectors.js +257 -522
  1073. package/build/store/selectors.js.map +1 -1
  1074. package/build/store/utils.js +0 -1
  1075. package/build/store/utils.js.map +1 -1
  1076. package/build/utils/block-variation-transforms.js +2 -5
  1077. package/build/utils/block-variation-transforms.js.map +1 -1
  1078. package/build/utils/dom.js +4 -12
  1079. package/build/utils/dom.js.map +1 -1
  1080. package/build/utils/index.js +0 -5
  1081. package/build/utils/index.js.map +1 -1
  1082. package/build/utils/math.js +5 -10
  1083. package/build/utils/math.js.map +1 -1
  1084. package/build/utils/object.js +14 -25
  1085. package/build/utils/object.js.map +1 -1
  1086. package/build/utils/order-inserter-block-items.js +2 -5
  1087. package/build/utils/order-inserter-block-items.js.map +1 -1
  1088. package/build/utils/parse-css-unit-to-px.js +14 -66
  1089. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  1090. package/build/utils/pasting.js +9 -15
  1091. package/build/utils/pasting.js.map +1 -1
  1092. package/build/utils/pre-parse-patterns.js +1 -16
  1093. package/build/utils/pre-parse-patterns.js.map +1 -1
  1094. package/build/utils/selection.js +1 -4
  1095. package/build/utils/selection.js.map +1 -1
  1096. package/build/utils/sorting.js +3 -8
  1097. package/build/utils/sorting.js.map +1 -1
  1098. package/build/utils/transform-styles/ast/index.js +0 -3
  1099. package/build/utils/transform-styles/ast/index.js.map +1 -1
  1100. package/build/utils/transform-styles/ast/parse.js +95 -137
  1101. package/build/utils/transform-styles/ast/parse.js.map +1 -1
  1102. package/build/utils/transform-styles/ast/stringify/compiler.js +3 -9
  1103. package/build/utils/transform-styles/ast/stringify/compiler.js.map +1 -1
  1104. package/build/utils/transform-styles/ast/stringify/compress.js +25 -27
  1105. package/build/utils/transform-styles/ast/stringify/compress.js.map +1 -1
  1106. package/build/utils/transform-styles/ast/stringify/identity.js +28 -33
  1107. package/build/utils/transform-styles/ast/stringify/identity.js.map +1 -1
  1108. package/build/utils/transform-styles/ast/stringify/index.js +1 -4
  1109. package/build/utils/transform-styles/ast/stringify/index.js.map +1 -1
  1110. package/build/utils/transform-styles/index.js +0 -11
  1111. package/build/utils/transform-styles/index.js.map +1 -1
  1112. package/build/utils/transform-styles/transforms/url-rewrite.js +12 -25
  1113. package/build/utils/transform-styles/transforms/url-rewrite.js.map +1 -1
  1114. package/build/utils/transform-styles/transforms/wrap.js +7 -9
  1115. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  1116. package/build/utils/transform-styles/traverse.js +1 -8
  1117. package/build/utils/transform-styles/traverse.js.map +1 -1
  1118. package/build/utils/use-should-contextual-toolbar-show.js +0 -9
  1119. package/build/utils/use-should-contextual-toolbar-show.js.map +1 -1
  1120. package/build-module/autocompleters/block.js +10 -16
  1121. package/build-module/autocompleters/block.js.map +1 -1
  1122. package/build-module/autocompleters/link.js +2 -8
  1123. package/build-module/autocompleters/link.js.map +1 -1
  1124. package/build-module/components/alignment-control/index.js +5 -7
  1125. package/build-module/components/alignment-control/index.js.map +1 -1
  1126. package/build-module/components/alignment-control/ui.js +2 -7
  1127. package/build-module/components/alignment-control/ui.js.map +1 -1
  1128. package/build-module/components/autocomplete/index.js +10 -15
  1129. package/build-module/components/autocomplete/index.js.map +1 -1
  1130. package/build-module/components/block-actions/index.js +3 -20
  1131. package/build-module/components/block-actions/index.js.map +1 -1
  1132. package/build-module/components/block-alignment-control/constants.js.map +1 -1
  1133. package/build-module/components/block-alignment-control/index.js +5 -7
  1134. package/build-module/components/block-alignment-control/index.js.map +1 -1
  1135. package/build-module/components/block-alignment-control/ui.js +8 -12
  1136. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  1137. package/build-module/components/block-alignment-control/ui.native.js +5 -9
  1138. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  1139. package/build-module/components/block-alignment-control/use-available-alignments.js +10 -13
  1140. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  1141. package/build-module/components/block-alignment-matrix-control/index.js +0 -5
  1142. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  1143. package/build-module/components/block-breadcrumb/index.js +4 -9
  1144. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  1145. package/build-module/components/block-caption/index.native.js +8 -9
  1146. package/build-module/components/block-caption/index.native.js.map +1 -1
  1147. package/build-module/components/block-card/index.js +6 -10
  1148. package/build-module/components/block-card/index.js.map +1 -1
  1149. package/build-module/components/block-compare/block-view.js +0 -1
  1150. package/build-module/components/block-compare/block-view.js.map +1 -1
  1151. package/build-module/components/block-compare/index.js +6 -10
  1152. package/build-module/components/block-compare/index.js.map +1 -1
  1153. package/build-module/components/block-content-overlay/index.js +1 -1
  1154. package/build-module/components/block-content-overlay/index.js.map +1 -1
  1155. package/build-module/components/block-context/index.js +4 -4
  1156. package/build-module/components/block-context/index.js.map +1 -1
  1157. package/build-module/components/block-controls/fill.js +3 -5
  1158. package/build-module/components/block-controls/fill.js.map +1 -1
  1159. package/build-module/components/block-controls/groups.js.map +1 -1
  1160. package/build-module/components/block-controls/hook.js +1 -4
  1161. package/build-module/components/block-controls/hook.js.map +1 -1
  1162. package/build-module/components/block-controls/index.js +2 -4
  1163. package/build-module/components/block-controls/index.js.map +1 -1
  1164. package/build-module/components/block-controls/slot.js +3 -8
  1165. package/build-module/components/block-controls/slot.js.map +1 -1
  1166. package/build-module/components/block-controls/slot.native.js +5 -8
  1167. package/build-module/components/block-controls/slot.native.js.map +1 -1
  1168. package/build-module/components/block-controls/use-has-block-controls.js +34 -0
  1169. package/build-module/components/block-controls/use-has-block-controls.js.map +1 -0
  1170. package/build-module/components/block-draggable/draggable-chip.js +2 -5
  1171. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  1172. package/build-module/components/block-draggable/draggable-chip.native.js +3 -4
  1173. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  1174. package/build-module/components/block-draggable/dropping-insertion-point.native.js +5 -15
  1175. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  1176. package/build-module/components/block-draggable/index.js +3 -9
  1177. package/build-module/components/block-draggable/index.js.map +1 -1
  1178. package/build-module/components/block-draggable/index.native.js +8 -34
  1179. package/build-module/components/block-draggable/index.native.js.map +1 -1
  1180. package/build-module/components/block-draggable/use-scroll-when-dragging.js +8 -10
  1181. package/build-module/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  1182. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js +2 -11
  1183. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  1184. package/build-module/components/block-edit/context.js +1 -1
  1185. package/build-module/components/block-edit/context.js.map +1 -1
  1186. package/build-module/components/block-edit/edit.js +16 -20
  1187. package/build-module/components/block-edit/edit.js.map +1 -1
  1188. package/build-module/components/block-edit/edit.native.js +6 -7
  1189. package/build-module/components/block-edit/edit.native.js.map +1 -1
  1190. package/build-module/components/block-edit/index.js +5 -5
  1191. package/build-module/components/block-edit/index.js.map +1 -1
  1192. package/build-module/components/block-edit-visually-button/index.js +1 -4
  1193. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  1194. package/build-module/components/block-editing-mode/index.js +5 -8
  1195. package/build-module/components/block-editing-mode/index.js.map +1 -1
  1196. package/build-module/components/block-full-height-alignment-control/index.js +0 -3
  1197. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  1198. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js +2 -3
  1199. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  1200. package/build-module/components/block-heading-level-dropdown/index.js +4 -6
  1201. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  1202. package/build-module/components/block-heading-level-dropdown/index.native.js +2 -4
  1203. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  1204. package/build-module/components/block-icon/index.js +2 -6
  1205. package/build-module/components/block-icon/index.js.map +1 -1
  1206. package/build-module/components/block-icon/index.native.js +2 -4
  1207. package/build-module/components/block-icon/index.native.js.map +1 -1
  1208. package/build-module/components/block-info-slot-fill/index.js +5 -9
  1209. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  1210. package/build-module/components/block-inspector/index.js +11 -25
  1211. package/build-module/components/block-inspector/index.js.map +1 -1
  1212. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js +7 -8
  1213. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  1214. package/build-module/components/block-list/block-crash-boundary.js +0 -6
  1215. package/build-module/components/block-list/block-crash-boundary.js.map +1 -1
  1216. package/build-module/components/block-list/block-crash-warning.js +1 -2
  1217. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  1218. package/build-module/components/block-list/block-html.js +8 -12
  1219. package/build-module/components/block-list/block-html.js.map +1 -1
  1220. package/build-module/components/block-list/block-invalid-warning.js +3 -9
  1221. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  1222. package/build-module/components/block-list/block-invalid-warning.native.js +5 -10
  1223. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  1224. package/build-module/components/block-list/block-list-block-context.js.map +1 -1
  1225. package/build-module/components/block-list/block-list-context.native.js +11 -21
  1226. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  1227. package/build-module/components/block-list/block-list-item-cell.native.js +2 -6
  1228. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  1229. package/build-module/components/block-list/block-list-item.native.js +8 -12
  1230. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  1231. package/build-module/components/block-list/block-outline.native.js +4 -7
  1232. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  1233. package/build-module/components/block-list/block-selection-button.native.js +3 -10
  1234. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  1235. package/build-module/components/block-list/block.js +42 -63
  1236. package/build-module/components/block-list/block.js.map +1 -1
  1237. package/build-module/components/block-list/block.native.js +41 -57
  1238. package/build-module/components/block-list/block.native.js.map +1 -1
  1239. package/build-module/components/block-list/grid-item.native.js +1 -4
  1240. package/build-module/components/block-list/grid-item.native.js.map +1 -1
  1241. package/build-module/components/block-list/index.js +12 -18
  1242. package/build-module/components/block-list/index.js.map +1 -1
  1243. package/build-module/components/block-list/index.native.js +21 -39
  1244. package/build-module/components/block-list/index.native.js.map +1 -1
  1245. package/build-module/components/block-list/insertion-point.native.js +2 -5
  1246. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  1247. package/build-module/components/block-list/layout.js +3 -8
  1248. package/build-module/components/block-list/layout.js.map +1 -1
  1249. package/build-module/components/block-list/subdirectory-icon.js +2 -4
  1250. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  1251. package/build-module/components/block-list/use-block-props/index.js +13 -11
  1252. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  1253. package/build-module/components/block-list/use-block-props/index.native.js +4 -2
  1254. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  1255. package/build-module/components/block-list/use-block-props/use-block-class-names.js +5 -5
  1256. package/build-module/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
  1257. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js +2 -6
  1258. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  1259. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js +2 -4
  1260. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  1261. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js +6 -8
  1262. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  1263. package/build-module/components/block-list/use-block-props/use-block-refs.js +11 -16
  1264. package/build-module/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  1265. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +15 -21
  1266. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  1267. package/build-module/components/block-list/use-block-props/use-focus-handler.js +8 -11
  1268. package/build-module/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  1269. package/build-module/components/block-list/use-block-props/use-intersection-observer.js +1 -1
  1270. package/build-module/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  1271. package/build-module/components/block-list/use-block-props/use-is-hovered.js +4 -6
  1272. package/build-module/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  1273. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js +4 -4
  1274. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  1275. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +4 -11
  1276. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  1277. package/build-module/components/block-list/use-in-between-inserter.js +15 -30
  1278. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  1279. package/build-module/components/block-list-appender/index.js +13 -26
  1280. package/build-module/components/block-list-appender/index.js.map +1 -1
  1281. package/build-module/components/block-list-appender/index.native.js +1 -9
  1282. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  1283. package/build-module/components/block-lock/index.js.map +1 -1
  1284. package/build-module/components/block-lock/menu-item.js +1 -4
  1285. package/build-module/components/block-lock/menu-item.js.map +1 -1
  1286. package/build-module/components/block-lock/modal.js +12 -13
  1287. package/build-module/components/block-lock/modal.js.map +1 -1
  1288. package/build-module/components/block-lock/toolbar.js +6 -9
  1289. package/build-module/components/block-lock/toolbar.js.map +1 -1
  1290. package/build-module/components/block-lock/use-block-lock.js +2 -2
  1291. package/build-module/components/block-lock/use-block-lock.js.map +1 -1
  1292. package/build-module/components/block-media-update-progress/index.native.js +10 -59
  1293. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  1294. package/build-module/components/block-mover/button.js +2 -15
  1295. package/build-module/components/block-mover/button.js.map +1 -1
  1296. package/build-module/components/block-mover/index.js +5 -11
  1297. package/build-module/components/block-mover/index.js.map +1 -1
  1298. package/build-module/components/block-mover/index.native.js +4 -11
  1299. package/build-module/components/block-mover/index.native.js.map +1 -1
  1300. package/build-module/components/block-mover/mover-description.js +40 -61
  1301. package/build-module/components/block-mover/mover-description.js.map +1 -1
  1302. package/build-module/components/block-mover/mover-description.native.js +0 -16
  1303. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  1304. package/build-module/components/block-navigation/dropdown.js +7 -10
  1305. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  1306. package/build-module/components/block-parent-selector/index.js +14 -35
  1307. package/build-module/components/block-parent-selector/index.js.map +1 -1
  1308. package/build-module/components/block-pattern-setup/constants.js.map +1 -1
  1309. package/build-module/components/block-pattern-setup/index.js +3 -13
  1310. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  1311. package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -6
  1312. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  1313. package/build-module/components/block-pattern-setup/use-patterns-setup.js +1 -5
  1314. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  1315. package/build-module/components/block-patterns-list/index.js +3 -12
  1316. package/build-module/components/block-patterns-list/index.js.map +1 -1
  1317. package/build-module/components/block-popover/drop-zone.js +1 -6
  1318. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  1319. package/build-module/components/block-popover/inbetween.js +17 -25
  1320. package/build-module/components/block-popover/inbetween.js.map +1 -1
  1321. package/build-module/components/block-popover/index.js +16 -20
  1322. package/build-module/components/block-popover/index.js.map +1 -1
  1323. package/build-module/components/block-popover/use-popover-scroll.js +3 -6
  1324. package/build-module/components/block-popover/use-popover-scroll.js.map +1 -1
  1325. package/build-module/components/block-preview/auto.js +17 -12
  1326. package/build-module/components/block-preview/auto.js.map +1 -1
  1327. package/build-module/components/block-preview/index.js +10 -13
  1328. package/build-module/components/block-preview/index.js.map +1 -1
  1329. package/build-module/components/block-quick-navigation/index.js +2 -7
  1330. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  1331. package/build-module/components/block-removal-warning-modal/index.js +5 -10
  1332. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  1333. package/build-module/components/block-selection-clearer/index.js +4 -8
  1334. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  1335. package/build-module/components/block-settings/button.native.js +2 -5
  1336. package/build-module/components/block-settings/button.native.js.map +1 -1
  1337. package/build-module/components/block-settings/container.native.js +3 -3
  1338. package/build-module/components/block-settings/container.native.js.map +1 -1
  1339. package/build-module/components/block-settings/index.native.js.map +1 -1
  1340. package/build-module/components/block-settings-menu/block-convert-button.js +0 -3
  1341. package/build-module/components/block-settings-menu/block-convert-button.js.map +1 -1
  1342. package/build-module/components/block-settings-menu/block-html-convert-button.js +1 -1
  1343. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  1344. package/build-module/components/block-settings-menu/block-mode-toggle.js +1 -6
  1345. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  1346. package/build-module/components/block-settings-menu/block-settings-dropdown.js +17 -40
  1347. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  1348. package/build-module/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  1349. package/build-module/components/block-settings-menu/index.js +1 -2
  1350. package/build-module/components/block-settings-menu/index.js.map +1 -1
  1351. package/build-module/components/block-settings-menu-controls/index.js +13 -13
  1352. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  1353. package/build-module/components/block-styles/index.js +4 -15
  1354. package/build-module/components/block-styles/index.js.map +1 -1
  1355. package/build-module/components/block-styles/index.native.js +2 -10
  1356. package/build-module/components/block-styles/index.native.js.map +1 -1
  1357. package/build-module/components/block-styles/menu-items.js +1 -6
  1358. package/build-module/components/block-styles/menu-items.js.map +1 -1
  1359. package/build-module/components/block-styles/preview-panel.js +5 -4
  1360. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  1361. package/build-module/components/block-styles/preview.native.js +4 -12
  1362. package/build-module/components/block-styles/preview.native.js.map +1 -1
  1363. package/build-module/components/block-styles/use-styles-for-block.js +3 -11
  1364. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  1365. package/build-module/components/block-styles/utils.js +4 -10
  1366. package/build-module/components/block-styles/utils.js.map +1 -1
  1367. package/build-module/components/block-switcher/block-styles-menu.js +1 -2
  1368. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  1369. package/build-module/components/block-switcher/block-transformations-menu.js +6 -12
  1370. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  1371. package/build-module/components/block-switcher/block-transformations-menu.native.js +5 -13
  1372. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  1373. package/build-module/components/block-switcher/block-variation-transformations.js +3 -8
  1374. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  1375. package/build-module/components/block-switcher/index.js +12 -26
  1376. package/build-module/components/block-switcher/index.js.map +1 -1
  1377. package/build-module/components/block-switcher/pattern-transformations-menu.js +3 -8
  1378. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  1379. package/build-module/components/block-switcher/preview-block-popover.js +1 -2
  1380. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  1381. package/build-module/components/block-switcher/use-transformed-patterns.js +14 -21
  1382. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  1383. package/build-module/components/block-switcher/utils.js +6 -6
  1384. package/build-module/components/block-switcher/utils.js.map +1 -1
  1385. package/build-module/components/block-title/index.js +2 -1
  1386. package/build-module/components/block-title/index.js.map +1 -1
  1387. package/build-module/components/block-title/use-block-display-title.js +4 -11
  1388. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  1389. package/build-module/components/block-toolbar/block-name-context.js +0 -2
  1390. package/build-module/components/block-toolbar/block-name-context.js.map +1 -1
  1391. package/build-module/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  1392. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +26 -31
  1393. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  1394. package/build-module/components/block-toolbar/index.js +13 -49
  1395. package/build-module/components/block-toolbar/index.js.map +1 -1
  1396. package/build-module/components/block-toolbar/index.native.js +1 -6
  1397. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  1398. package/build-module/components/block-toolbar/utils.js +56 -69
  1399. package/build-module/components/block-toolbar/utils.js.map +1 -1
  1400. package/build-module/components/block-tools/back-compat.js +3 -4
  1401. package/build-module/components/block-tools/back-compat.js.map +1 -1
  1402. package/build-module/components/block-tools/block-contextual-toolbar.js +51 -13
  1403. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  1404. package/build-module/components/block-tools/block-selection-button.js +11 -30
  1405. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  1406. package/build-module/components/block-tools/index.js +9 -20
  1407. package/build-module/components/block-tools/index.js.map +1 -1
  1408. package/build-module/components/block-tools/insertion-point.js +9 -22
  1409. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  1410. package/build-module/components/block-tools/selected-block-popover.js +13 -25
  1411. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  1412. package/build-module/components/block-tools/use-block-toolbar-popover-props.js +35 -29
  1413. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  1414. package/build-module/components/block-tools/zoom-out-mode-inserters.js +3 -8
  1415. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  1416. package/build-module/components/block-types-list/index.js +1 -7
  1417. package/build-module/components/block-types-list/index.js.map +1 -1
  1418. package/build-module/components/block-types-list/index.native.js +4 -14
  1419. package/build-module/components/block-types-list/index.native.js.map +1 -1
  1420. package/build-module/components/block-variation-picker/index.js +1 -4
  1421. package/build-module/components/block-variation-picker/index.js.map +1 -1
  1422. package/build-module/components/block-variation-picker/index.native.js +15 -30
  1423. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  1424. package/build-module/components/block-variation-transforms/index.js +8 -15
  1425. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  1426. package/build-module/components/block-vertical-alignment-control/icons.js +0 -1
  1427. package/build-module/components/block-vertical-alignment-control/icons.js.map +1 -1
  1428. package/build-module/components/block-vertical-alignment-control/index.js +5 -7
  1429. package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
  1430. package/build-module/components/block-vertical-alignment-control/ui.js +4 -7
  1431. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  1432. package/build-module/components/border-radius-control/all-input-control.js +8 -10
  1433. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  1434. package/build-module/components/border-radius-control/index.js +5 -8
  1435. package/build-module/components/border-radius-control/index.js.map +1 -1
  1436. package/build-module/components/border-radius-control/input-controls.js +13 -11
  1437. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  1438. package/build-module/components/border-radius-control/linked-button.js +4 -3
  1439. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  1440. package/build-module/components/border-radius-control/utils.js +10 -12
  1441. package/build-module/components/border-radius-control/utils.js.map +1 -1
  1442. package/build-module/components/button-block-appender/index.js +6 -12
  1443. package/build-module/components/button-block-appender/index.js.map +1 -1
  1444. package/build-module/components/button-block-appender/index.native.js +5 -7
  1445. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  1446. package/build-module/components/caption/index.native.js +1 -4
  1447. package/build-module/components/caption/index.native.js.map +1 -1
  1448. package/build-module/components/child-layout-control/index.js +7 -10
  1449. package/build-module/components/child-layout-control/index.js.map +1 -1
  1450. package/build-module/components/color-palette/control.js +2 -2
  1451. package/build-module/components/color-palette/control.js.map +1 -1
  1452. package/build-module/components/color-palette/index.js +1 -1
  1453. package/build-module/components/color-palette/index.js.map +1 -1
  1454. package/build-module/components/color-palette/with-color-context.js +3 -3
  1455. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  1456. package/build-module/components/color-style-selector/index.js +2 -9
  1457. package/build-module/components/color-style-selector/index.js.map +1 -1
  1458. package/build-module/components/colors/index.js.map +1 -1
  1459. package/build-module/components/colors/utils.js +5 -10
  1460. package/build-module/components/colors/utils.js.map +1 -1
  1461. package/build-module/components/colors/with-colors.js +17 -25
  1462. package/build-module/components/colors/with-colors.js.map +1 -1
  1463. package/build-module/components/colors-gradients/control.js +8 -15
  1464. package/build-module/components/colors-gradients/control.js.map +1 -1
  1465. package/build-module/components/colors-gradients/dropdown.js +18 -19
  1466. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  1467. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +8 -12
  1468. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  1469. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +2 -3
  1470. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  1471. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +2 -10
  1472. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  1473. package/build-module/components/contrast-checker/index.js +20 -24
  1474. package/build-module/components/contrast-checker/index.js.map +1 -1
  1475. package/build-module/components/contrast-checker/index.native.js +4 -12
  1476. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  1477. package/build-module/components/convert-to-group-buttons/index.js +1 -12
  1478. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  1479. package/build-module/components/convert-to-group-buttons/index.native.js +5 -12
  1480. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  1481. package/build-module/components/convert-to-group-buttons/toolbar.js +3 -12
  1482. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  1483. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +6 -5
  1484. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  1485. package/build-module/components/copy-handler/index.js +24 -44
  1486. package/build-module/components/copy-handler/index.js.map +1 -1
  1487. package/build-module/components/date-format-picker/index.js +4 -6
  1488. package/build-module/components/date-format-picker/index.js.map +1 -1
  1489. package/build-module/components/default-block-appender/index.js +7 -9
  1490. package/build-module/components/default-block-appender/index.js.map +1 -1
  1491. package/build-module/components/default-block-appender/index.native.js +16 -10
  1492. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  1493. package/build-module/components/default-style-picker/index.js +4 -6
  1494. package/build-module/components/default-style-picker/index.js.map +1 -1
  1495. package/build-module/components/dimensions-tool/aspect-ratio-tool.js +2 -2
  1496. package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  1497. package/build-module/components/dimensions-tool/index.js +39 -33
  1498. package/build-module/components/dimensions-tool/index.js.map +1 -1
  1499. package/build-module/components/dimensions-tool/scale-tool.js +2 -3
  1500. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  1501. package/build-module/components/dimensions-tool/width-height-tool.js +5 -12
  1502. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  1503. package/build-module/components/duotone/components.js +7 -7
  1504. package/build-module/components/duotone/components.js.map +1 -1
  1505. package/build-module/components/duotone/index.js.map +1 -1
  1506. package/build-module/components/duotone/utils.js +1 -1
  1507. package/build-module/components/duotone/utils.js.map +1 -1
  1508. package/build-module/components/duotone-control/index.js +0 -6
  1509. package/build-module/components/duotone-control/index.js.map +1 -1
  1510. package/build-module/components/editable-text/index.js +4 -6
  1511. package/build-module/components/editable-text/index.js.map +1 -1
  1512. package/build-module/components/editor-styles/index.js +6 -12
  1513. package/build-module/components/editor-styles/index.js.map +1 -1
  1514. package/build-module/components/floating-toolbar/index.native.js +4 -8
  1515. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  1516. package/build-module/components/floating-toolbar/nav-up-icon.js +0 -3
  1517. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  1518. package/build-module/components/font-appearance-control/index.js +24 -27
  1519. package/build-module/components/font-appearance-control/index.js.map +1 -1
  1520. package/build-module/components/font-family/index.js +1 -5
  1521. package/build-module/components/font-family/index.js.map +1 -1
  1522. package/build-module/components/font-sizes/fluid-utils.js +52 -48
  1523. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  1524. package/build-module/components/font-sizes/font-size-picker.js +4 -6
  1525. package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
  1526. package/build-module/components/font-sizes/index.js.map +1 -1
  1527. package/build-module/components/font-sizes/index.native.js.map +1 -1
  1528. package/build-module/components/font-sizes/utils.js +3 -8
  1529. package/build-module/components/font-sizes/utils.js.map +1 -1
  1530. package/build-module/components/font-sizes/with-font-sizes.js +15 -22
  1531. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  1532. package/build-module/components/global-styles/advanced-panel.js +3 -9
  1533. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  1534. package/build-module/components/global-styles/behaviors-panel.js +57 -0
  1535. package/build-module/components/global-styles/behaviors-panel.js.map +1 -0
  1536. package/build-module/components/global-styles/border-panel.js +22 -36
  1537. package/build-module/components/global-styles/border-panel.js.map +1 -1
  1538. package/build-module/components/global-styles/color-panel.js +31 -56
  1539. package/build-module/components/global-styles/color-panel.js.map +1 -1
  1540. package/build-module/components/global-styles/color-panel.native.js +5 -8
  1541. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  1542. package/build-module/components/global-styles/context.js.map +1 -1
  1543. package/build-module/components/global-styles/dimensions-panel.js +34 -80
  1544. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  1545. package/build-module/components/global-styles/effects-panel.js +8 -20
  1546. package/build-module/components/global-styles/effects-panel.js.map +1 -1
  1547. package/build-module/components/global-styles/filters-panel.js +10 -20
  1548. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  1549. package/build-module/components/global-styles/get-block-css-selector.js +34 -29
  1550. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  1551. package/build-module/components/global-styles/hooks.js +136 -56
  1552. package/build-module/components/global-styles/hooks.js.map +1 -1
  1553. package/build-module/components/global-styles/index.js +2 -1
  1554. package/build-module/components/global-styles/index.js.map +1 -1
  1555. package/build-module/components/global-styles/typography-panel.js +25 -73
  1556. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1557. package/build-module/components/global-styles/typography-utils.js +10 -16
  1558. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  1559. package/build-module/components/global-styles/use-global-styles-output.js +99 -163
  1560. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1561. package/build-module/components/global-styles/utils.js +14 -44
  1562. package/build-module/components/global-styles/utils.js.map +1 -1
  1563. package/build-module/components/gradients/index.js.map +1 -1
  1564. package/build-module/components/gradients/index.native.js.map +1 -1
  1565. package/build-module/components/gradients/use-gradient.js +3 -11
  1566. package/build-module/components/gradients/use-gradient.js.map +1 -1
  1567. package/build-module/components/gradients/with-gradient.js +2 -3
  1568. package/build-module/components/gradients/with-gradient.js.map +1 -1
  1569. package/build-module/components/height-control/index.js +2 -8
  1570. package/build-module/components/height-control/index.js.map +1 -1
  1571. package/build-module/components/iframe/index.js +26 -37
  1572. package/build-module/components/iframe/index.js.map +1 -1
  1573. package/build-module/components/iframe/use-compatibility-styles.js +9 -19
  1574. package/build-module/components/iframe/use-compatibility-styles.js.map +1 -1
  1575. package/build-module/components/image-editor/aspect-ratio-dropdown.js +3 -5
  1576. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1577. package/build-module/components/image-editor/constants.js.map +1 -1
  1578. package/build-module/components/image-editor/context.js +3 -3
  1579. package/build-module/components/image-editor/context.js.map +1 -1
  1580. package/build-module/components/image-editor/cropper.js +4 -6
  1581. package/build-module/components/image-editor/cropper.js.map +1 -1
  1582. package/build-module/components/image-editor/form-controls.js +1 -2
  1583. package/build-module/components/image-editor/form-controls.js.map +1 -1
  1584. package/build-module/components/image-editor/index.js +1 -2
  1585. package/build-module/components/image-editor/index.js.map +1 -1
  1586. package/build-module/components/image-editor/rotation-button.js +2 -2
  1587. package/build-module/components/image-editor/rotation-button.js.map +1 -1
  1588. package/build-module/components/image-editor/use-save-image.js +4 -7
  1589. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  1590. package/build-module/components/image-editor/use-transform-image.js +0 -9
  1591. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  1592. package/build-module/components/image-editor/zoom-dropdown.js +1 -2
  1593. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1594. package/build-module/components/image-size-control/index.js +1 -4
  1595. package/build-module/components/image-size-control/index.js.map +1 -1
  1596. package/build-module/components/image-size-control/use-dimension-handler.js +6 -12
  1597. package/build-module/components/image-size-control/use-dimension-handler.js.map +1 -1
  1598. package/build-module/components/index.js +11 -1
  1599. package/build-module/components/index.js.map +1 -1
  1600. package/build-module/components/index.native.js +4 -3
  1601. package/build-module/components/index.native.js.map +1 -1
  1602. package/build-module/components/inner-blocks/button-block-appender.js +1 -2
  1603. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1604. package/build-module/components/inner-blocks/default-block-appender.js +1 -2
  1605. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1606. package/build-module/components/inner-blocks/index.js +23 -21
  1607. package/build-module/components/inner-blocks/index.js.map +1 -1
  1608. package/build-module/components/inner-blocks/index.native.js +21 -20
  1609. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1610. package/build-module/components/inner-blocks/use-block-context.js +2 -7
  1611. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1612. package/build-module/components/inner-blocks/use-inner-block-template-sync.js +13 -14
  1613. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  1614. package/build-module/components/inner-blocks/use-nested-settings-update.js +19 -21
  1615. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1616. package/build-module/components/inner-blocks/with-client-id.js +3 -3
  1617. package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
  1618. package/build-module/components/inserter/block-patterns-explorer/explorer.js +3 -6
  1619. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  1620. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +5 -13
  1621. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  1622. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +0 -5
  1623. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  1624. package/build-module/components/inserter/block-patterns-tab.js +12 -22
  1625. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  1626. package/build-module/components/inserter/block-types-tab.js +9 -16
  1627. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1628. package/build-module/components/inserter/block-types-tab.native.js +1 -8
  1629. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1630. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +9 -10
  1631. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1632. package/build-module/components/inserter/hooks/use-block-types-state.js +9 -6
  1633. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1634. package/build-module/components/inserter/hooks/use-clipboard-block.native.js +1 -3
  1635. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1636. package/build-module/components/inserter/hooks/use-debounced-input.js +5 -7
  1637. package/build-module/components/inserter/hooks/use-debounced-input.js.map +1 -1
  1638. package/build-module/components/inserter/hooks/use-insertion-point.js +4 -10
  1639. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1640. package/build-module/components/inserter/hooks/use-patterns-state.js +6 -7
  1641. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  1642. package/build-module/components/inserter/index.js +30 -56
  1643. package/build-module/components/inserter/index.js.map +1 -1
  1644. package/build-module/components/inserter/index.native.js +24 -56
  1645. package/build-module/components/inserter/index.native.js.map +1 -1
  1646. package/build-module/components/inserter/library.js +1 -7
  1647. package/build-module/components/inserter/library.js.map +1 -1
  1648. package/build-module/components/inserter/media-tab/hooks.js +14 -25
  1649. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1650. package/build-module/components/inserter/media-tab/index.js.map +1 -1
  1651. package/build-module/components/inserter/media-tab/media-list.js +3 -5
  1652. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1653. package/build-module/components/inserter/media-tab/media-panel.js +1 -4
  1654. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1655. package/build-module/components/inserter/media-tab/media-preview.js +11 -24
  1656. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1657. package/build-module/components/inserter/media-tab/media-tab.js +4 -7
  1658. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1659. package/build-module/components/inserter/media-tab/utils.js +1 -4
  1660. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1661. package/build-module/components/inserter/menu.js +3 -5
  1662. package/build-module/components/inserter/menu.js.map +1 -1
  1663. package/build-module/components/inserter/menu.native.js +6 -15
  1664. package/build-module/components/inserter/menu.native.js.map +1 -1
  1665. package/build-module/components/inserter/mobile-tab-navigation.js +2 -4
  1666. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1667. package/build-module/components/inserter/no-results.js +0 -3
  1668. package/build-module/components/inserter/no-results.js.map +1 -1
  1669. package/build-module/components/inserter/no-results.native.js +2 -5
  1670. package/build-module/components/inserter/no-results.native.js.map +1 -1
  1671. package/build-module/components/inserter/panel.js +0 -3
  1672. package/build-module/components/inserter/panel.js.map +1 -1
  1673. package/build-module/components/inserter/preview-panel.js +15 -11
  1674. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1675. package/build-module/components/inserter/quick-inserter.js +5 -8
  1676. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1677. package/build-module/components/inserter/reusable-block-rename-hint.js +1 -7
  1678. package/build-module/components/inserter/reusable-block-rename-hint.js.map +1 -1
  1679. package/build-module/components/inserter/reusable-blocks-tab.js +6 -10
  1680. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  1681. package/build-module/components/inserter/reusable-blocks-tab.native.js +1 -4
  1682. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1683. package/build-module/components/inserter/search-items.js +22 -33
  1684. package/build-module/components/inserter/search-items.js.map +1 -1
  1685. package/build-module/components/inserter/search-results.js +6 -18
  1686. package/build-module/components/inserter/search-results.js.map +1 -1
  1687. package/build-module/components/inserter/search-results.native.js +1 -7
  1688. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1689. package/build-module/components/inserter/tabs.js +0 -13
  1690. package/build-module/components/inserter/tabs.js.map +1 -1
  1691. package/build-module/components/inserter/tabs.native.js +6 -13
  1692. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1693. package/build-module/components/inserter/tips.js +2 -4
  1694. package/build-module/components/inserter/tips.js.map +1 -1
  1695. package/build-module/components/inserter/utils.native.js +2 -6
  1696. package/build-module/components/inserter/utils.native.js.map +1 -1
  1697. package/build-module/components/inserter-draggable-blocks/index.js +0 -4
  1698. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1699. package/build-module/components/inserter-list-item/index.js +3 -10
  1700. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1701. package/build-module/components/inserter-listbox/context.js.map +1 -1
  1702. package/build-module/components/inserter-listbox/group.js +0 -4
  1703. package/build-module/components/inserter-listbox/group.js.map +1 -1
  1704. package/build-module/components/inserter-listbox/index.js +1 -4
  1705. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1706. package/build-module/components/inserter-listbox/item.js +9 -11
  1707. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1708. package/build-module/components/inserter-listbox/row.js +1 -4
  1709. package/build-module/components/inserter-listbox/row.js.map +1 -1
  1710. package/build-module/components/inserter-menu-extension/index.js.map +1 -1
  1711. package/build-module/components/inspector-controls/block-support-slot-container.js +2 -2
  1712. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1713. package/build-module/components/inspector-controls/block-support-tools-panel.js +7 -5
  1714. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1715. package/build-module/components/inspector-controls/fill.js +4 -10
  1716. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1717. package/build-module/components/inspector-controls/fill.native.js +4 -8
  1718. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1719. package/build-module/components/inspector-controls/groups.js.map +1 -1
  1720. package/build-module/components/inspector-controls/index.js +7 -7
  1721. package/build-module/components/inspector-controls/index.js.map +1 -1
  1722. package/build-module/components/inspector-controls/slot.js +5 -9
  1723. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1724. package/build-module/components/inspector-controls/slot.native.js +3 -6
  1725. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1726. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js +1 -6
  1727. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  1728. package/build-module/components/inspector-controls-tabs/index.js +1 -4
  1729. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1730. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  1731. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1732. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +0 -4
  1733. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1734. package/build-module/components/inspector-controls-tabs/settings-tab.js +0 -3
  1735. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1736. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -4
  1737. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1738. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +14 -16
  1739. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1740. package/build-module/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  1741. package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
  1742. package/build-module/components/inspector-popover-header/index.js +0 -1
  1743. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1744. package/build-module/components/justify-content-control/index.js +5 -7
  1745. package/build-module/components/justify-content-control/index.js.map +1 -1
  1746. package/build-module/components/justify-content-control/ui.js +0 -4
  1747. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1748. package/build-module/components/keyboard-shortcuts/index.js +9 -3
  1749. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  1750. package/build-module/components/letter-spacing-control/index.js +4 -4
  1751. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1752. package/build-module/components/line-height-control/index.js +22 -34
  1753. package/build-module/components/line-height-control/index.js.map +1 -1
  1754. package/build-module/components/line-height-control/index.native.js +4 -4
  1755. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1756. package/build-module/components/line-height-control/utils.js +7 -3
  1757. package/build-module/components/line-height-control/utils.js.map +1 -1
  1758. package/build-module/components/link-control/constants.js +3 -2
  1759. package/build-module/components/link-control/constants.js.map +1 -1
  1760. package/build-module/components/link-control/index.js +81 -38
  1761. package/build-module/components/link-control/index.js.map +1 -1
  1762. package/build-module/components/link-control/is-url-like.js +5 -6
  1763. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1764. package/build-module/components/link-control/link-preview.js +12 -11
  1765. package/build-module/components/link-control/link-preview.js.map +1 -1
  1766. package/build-module/components/link-control/search-create-button.js +3 -7
  1767. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1768. package/build-module/components/link-control/search-input.js +18 -23
  1769. package/build-module/components/link-control/search-input.js.map +1 -1
  1770. package/build-module/components/link-control/search-item.js +6 -12
  1771. package/build-module/components/link-control/search-item.js.map +1 -1
  1772. package/build-module/components/link-control/search-results.js +14 -14
  1773. package/build-module/components/link-control/search-results.js.map +1 -1
  1774. package/build-module/components/link-control/settings-drawer.js +0 -3
  1775. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1776. package/build-module/components/link-control/settings.js +2 -7
  1777. package/build-module/components/link-control/settings.js.map +1 -1
  1778. package/build-module/components/link-control/use-create-page.js +4 -8
  1779. package/build-module/components/link-control/use-create-page.js.map +1 -1
  1780. package/build-module/components/link-control/use-internal-value.js +8 -10
  1781. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  1782. package/build-module/components/link-control/use-rich-url-data.js +9 -12
  1783. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1784. package/build-module/components/link-control/use-search-handler.js +10 -14
  1785. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1786. package/build-module/components/link-control/viewer-slot.js.map +1 -1
  1787. package/build-module/components/list-view/appender.js +4 -8
  1788. package/build-module/components/list-view/appender.js.map +1 -1
  1789. package/build-module/components/list-view/aria-referenced-text.js +1 -2
  1790. package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
  1791. package/build-module/components/list-view/block-contents.js +5 -5
  1792. package/build-module/components/list-view/block-contents.js.map +1 -1
  1793. package/build-module/components/list-view/block-select-button.js +32 -19
  1794. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1795. package/build-module/components/list-view/block.js +25 -29
  1796. package/build-module/components/list-view/block.js.map +1 -1
  1797. package/build-module/components/list-view/branch.js +9 -28
  1798. package/build-module/components/list-view/branch.js.map +1 -1
  1799. package/build-module/components/list-view/context.js.map +1 -1
  1800. package/build-module/components/list-view/drop-indicator.js +34 -43
  1801. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1802. package/build-module/components/list-view/expander.js +2 -2
  1803. package/build-module/components/list-view/expander.js.map +1 -1
  1804. package/build-module/components/list-view/index.js +18 -22
  1805. package/build-module/components/list-view/index.js.map +1 -1
  1806. package/build-module/components/list-view/leaf.js +2 -3
  1807. package/build-module/components/list-view/leaf.js.map +1 -1
  1808. package/build-module/components/list-view/use-block-selection.js +15 -22
  1809. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1810. package/build-module/components/list-view/use-list-view-client-ids.js +2 -1
  1811. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1812. package/build-module/components/list-view/use-list-view-drop-zone.js +40 -54
  1813. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1814. package/build-module/components/list-view/use-list-view-expand-selected-item.js +5 -4
  1815. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1816. package/build-module/components/list-view/use-list-view-images.js +78 -0
  1817. package/build-module/components/list-view/use-list-view-images.js.map +1 -0
  1818. package/build-module/components/list-view/use-list-view-scroll-into-view.js +5 -5
  1819. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1820. package/build-module/components/list-view/utils.js +3 -4
  1821. package/build-module/components/list-view/utils.js.map +1 -1
  1822. package/build-module/components/media-placeholder/index.js +12 -59
  1823. package/build-module/components/media-placeholder/index.js.map +1 -1
  1824. package/build-module/components/media-placeholder/index.native.js +9 -24
  1825. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1826. package/build-module/components/media-replace-flow/index.js +9 -25
  1827. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1828. package/build-module/components/media-replace-flow/index.native.js +14 -3
  1829. package/build-module/components/media-replace-flow/index.native.js.map +1 -1
  1830. package/build-module/components/media-upload/check.js +2 -2
  1831. package/build-module/components/media-upload/check.js.map +1 -1
  1832. package/build-module/components/media-upload/index.js +2 -3
  1833. package/build-module/components/media-upload/index.js.map +1 -1
  1834. package/build-module/components/media-upload/index.native.js +18 -29
  1835. package/build-module/components/media-upload/index.native.js.map +1 -1
  1836. package/build-module/components/media-upload-progress/index.native.js +4 -27
  1837. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  1838. package/build-module/components/multi-selection-inspector/index.js +3 -8
  1839. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1840. package/build-module/components/navigable-toolbar/index.js +9 -26
  1841. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1842. package/build-module/components/observe-typing/index.js +26 -38
  1843. package/build-module/components/observe-typing/index.js.map +1 -1
  1844. package/build-module/components/panel-color-settings/index.js +2 -5
  1845. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1846. package/build-module/components/plain-text/index.js +3 -5
  1847. package/build-module/components/plain-text/index.js.map +1 -1
  1848. package/build-module/components/plain-text/index.native.js +8 -22
  1849. package/build-module/components/plain-text/index.native.js.map +1 -1
  1850. package/build-module/components/preview-options/index.js +1 -2
  1851. package/build-module/components/preview-options/index.js.map +1 -1
  1852. package/build-module/components/provider/block-refs-provider.js +0 -1
  1853. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1854. package/build-module/components/provider/index.js +8 -5
  1855. package/build-module/components/provider/index.js.map +1 -1
  1856. package/build-module/components/provider/index.native.js +4 -3
  1857. package/build-module/components/provider/index.native.js.map +1 -1
  1858. package/build-module/components/provider/use-block-sync.js +23 -38
  1859. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1860. package/build-module/components/provider/with-registry-provider.js +1 -5
  1861. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1862. package/build-module/components/publish-date-time-picker/index.js +1 -4
  1863. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1864. package/build-module/components/recursion-provider/index.js +6 -7
  1865. package/build-module/components/recursion-provider/index.js.map +1 -1
  1866. package/build-module/components/resizable-box-popover/index.js +3 -3
  1867. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1868. package/build-module/components/resolution-tool/index.js +0 -1
  1869. package/build-module/components/resolution-tool/index.js.map +1 -1
  1870. package/build-module/components/responsive-block-control/index.js +4 -14
  1871. package/build-module/components/responsive-block-control/index.js.map +1 -1
  1872. package/build-module/components/responsive-block-control/label.js +1 -3
  1873. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1874. package/build-module/components/rich-text/content.js +3 -8
  1875. package/build-module/components/rich-text/content.js.map +1 -1
  1876. package/build-module/components/rich-text/embed-handler-picker.native.js +0 -3
  1877. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1878. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  1879. package/build-module/components/rich-text/format-edit.js +49 -28
  1880. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1881. package/build-module/components/rich-text/format-toolbar/index.js +5 -9
  1882. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1883. package/build-module/components/rich-text/format-toolbar/index.native.js +1 -3
  1884. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  1885. package/build-module/components/rich-text/format-toolbar-container.js +4 -14
  1886. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1887. package/build-module/components/rich-text/format-toolbar-container.native.js +0 -3
  1888. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  1889. package/build-module/components/rich-text/get-rich-text-values.js +15 -34
  1890. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  1891. package/build-module/components/rich-text/index.js +19 -37
  1892. package/build-module/components/rich-text/index.js.map +1 -1
  1893. package/build-module/components/rich-text/index.native.js +49 -76
  1894. package/build-module/components/rich-text/index.native.js.map +1 -1
  1895. package/build-module/components/rich-text/input-event.js +1 -2
  1896. package/build-module/components/rich-text/input-event.js.map +1 -1
  1897. package/build-module/components/rich-text/input-event.native.js +0 -1
  1898. package/build-module/components/rich-text/input-event.native.js.map +1 -1
  1899. package/build-module/components/rich-text/prevent-event-discovery.js +0 -4
  1900. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -1
  1901. package/build-module/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  1902. package/build-module/components/rich-text/shortcut.js +1 -2
  1903. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1904. package/build-module/components/rich-text/shortcut.native.js +0 -1
  1905. package/build-module/components/rich-text/shortcut.native.js.map +1 -1
  1906. package/build-module/components/rich-text/split-value.js +19 -16
  1907. package/build-module/components/rich-text/split-value.js.map +1 -1
  1908. package/build-module/components/rich-text/toolbar-button.js +2 -5
  1909. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1910. package/build-module/components/rich-text/use-before-input-rules.js +7 -16
  1911. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1912. package/build-module/components/rich-text/use-delete.js +5 -10
  1913. package/build-module/components/rich-text/use-delete.js.map +1 -1
  1914. package/build-module/components/rich-text/use-enter.js +3 -10
  1915. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1916. package/build-module/components/rich-text/use-firefox-compat.js +5 -35
  1917. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1918. package/build-module/components/rich-text/use-format-types.js +9 -20
  1919. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1920. package/build-module/components/rich-text/use-input-events.js +0 -1
  1921. package/build-module/components/rich-text/use-input-events.js.map +1 -1
  1922. package/build-module/components/rich-text/use-input-rules.js +10 -28
  1923. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1924. package/build-module/components/rich-text/use-insert-replacement-text.js +2 -3
  1925. package/build-module/components/rich-text/use-insert-replacement-text.js.map +1 -1
  1926. package/build-module/components/rich-text/use-mark-persistent.js +6 -6
  1927. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1928. package/build-module/components/rich-text/use-paste-handler.js +26 -62
  1929. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1930. package/build-module/components/rich-text/use-remove-browser-shortcuts.js +1 -2
  1931. package/build-module/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  1932. package/build-module/components/rich-text/use-shortcuts.js +0 -1
  1933. package/build-module/components/rich-text/use-shortcuts.js.map +1 -1
  1934. package/build-module/components/rich-text/use-undo-automatic-change.js +1 -9
  1935. package/build-module/components/rich-text/use-undo-automatic-change.js.map +1 -1
  1936. package/build-module/components/rich-text/utils.js +2 -6
  1937. package/build-module/components/rich-text/utils.js.map +1 -1
  1938. package/build-module/components/selection-scroll-into-view/index.js +1 -1
  1939. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  1940. package/build-module/components/skip-to-selected-block/index.js +2 -7
  1941. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1942. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -3
  1943. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  1944. package/build-module/components/spacing-sizes-control/index.js +13 -14
  1945. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1946. package/build-module/components/spacing-sizes-control/input-controls/axial.js +6 -9
  1947. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  1948. package/build-module/components/spacing-sizes-control/input-controls/separated.js +2 -4
  1949. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  1950. package/build-module/components/spacing-sizes-control/input-controls/single.js +2 -3
  1951. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  1952. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +6 -19
  1953. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  1954. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +1 -3
  1955. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  1956. package/build-module/components/spacing-sizes-control/utils.js +35 -52
  1957. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1958. package/build-module/components/text-decoration-control/index.js +2 -3
  1959. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1960. package/build-module/components/text-transform-control/index.js +2 -3
  1961. package/build-module/components/text-transform-control/index.js.map +1 -1
  1962. package/build-module/components/tool-selector/index.js +4 -7
  1963. package/build-module/components/tool-selector/index.js.map +1 -1
  1964. package/build-module/components/typewriter/index.js +30 -46
  1965. package/build-module/components/typewriter/index.js.map +1 -1
  1966. package/build-module/components/ungroup-button/index.native.js +1 -7
  1967. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1968. package/build-module/components/unit-control/index.js +1 -2
  1969. package/build-module/components/unit-control/index.js.map +1 -1
  1970. package/build-module/components/url-input/button.js +2 -9
  1971. package/build-module/components/url-input/button.js.map +1 -1
  1972. package/build-module/components/url-input/index.js +41 -81
  1973. package/build-module/components/url-input/index.js.map +1 -1
  1974. package/build-module/components/url-input/index.native.js +1 -2
  1975. package/build-module/components/url-input/index.native.js.map +1 -1
  1976. package/build-module/components/url-popover/image-url-input-ui.js +3 -31
  1977. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1978. package/build-module/components/url-popover/index.js +5 -12
  1979. package/build-module/components/url-popover/index.js.map +1 -1
  1980. package/build-module/components/url-popover/link-editor.js +2 -3
  1981. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1982. package/build-module/components/url-popover/link-viewer-url.js +1 -4
  1983. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1984. package/build-module/components/url-popover/link-viewer.js +2 -3
  1985. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1986. package/build-module/components/use-block-commands/index.js +238 -0
  1987. package/build-module/components/use-block-commands/index.js.map +1 -0
  1988. package/build-module/components/use-block-display-information/index.js +3 -6
  1989. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1990. package/build-module/components/use-block-drop-zone/index.js +14 -19
  1991. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1992. package/build-module/components/use-block-drop-zone/index.native.js +13 -16
  1993. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1994. package/build-module/components/use-display-block-controls/index.js +1 -4
  1995. package/build-module/components/use-display-block-controls/index.js.map +1 -1
  1996. package/build-module/components/use-display-block-controls/index.native.js +1 -3
  1997. package/build-module/components/use-display-block-controls/index.native.js.map +1 -1
  1998. package/build-module/components/use-moving-animation/index.js +6 -17
  1999. package/build-module/components/use-moving-animation/index.js.map +1 -1
  2000. package/build-module/components/use-on-block-drop/index.js +21 -30
  2001. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  2002. package/build-module/components/use-on-block-drop/index.native.js +13 -12
  2003. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  2004. package/build-module/components/use-on-block-drop/types.js.map +1 -1
  2005. package/build-module/components/use-paste-styles/index.js +12 -21
  2006. package/build-module/components/use-paste-styles/index.js.map +1 -1
  2007. package/build-module/components/use-resize-canvas/index.js +1 -13
  2008. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  2009. package/build-module/components/use-setting/index.js +17 -33
  2010. package/build-module/components/use-setting/index.js.map +1 -1
  2011. package/build-module/components/video-player/gridicon-play.native.js +0 -1
  2012. package/build-module/components/video-player/gridicon-play.native.js.map +1 -1
  2013. package/build-module/components/video-player/index.native.js +12 -17
  2014. package/build-module/components/video-player/index.native.js.map +1 -1
  2015. package/build-module/components/warning/index.js +2 -5
  2016. package/build-module/components/warning/index.js.map +1 -1
  2017. package/build-module/components/warning/index.native.js +2 -5
  2018. package/build-module/components/warning/index.native.js.map +1 -1
  2019. package/build-module/components/writing-flow/index.js +5 -9
  2020. package/build-module/components/writing-flow/index.js.map +1 -1
  2021. package/build-module/components/writing-flow/use-arrow-nav.js +37 -53
  2022. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  2023. package/build-module/components/writing-flow/use-click-selection.js +3 -6
  2024. package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
  2025. package/build-module/components/writing-flow/use-drag-selection.js +27 -29
  2026. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  2027. package/build-module/components/writing-flow/use-input.js +8 -17
  2028. package/build-module/components/writing-flow/use-input.js.map +1 -1
  2029. package/build-module/components/writing-flow/use-multi-selection.js +10 -14
  2030. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  2031. package/build-module/components/writing-flow/use-select-all.js +4 -9
  2032. package/build-module/components/writing-flow/use-select-all.js.map +1 -1
  2033. package/build-module/components/writing-flow/use-selection-observer.js +20 -44
  2034. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  2035. package/build-module/components/writing-flow/use-tab-nav.js +28 -34
  2036. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  2037. package/build-module/components/writing-mode-control/index.js +2 -3
  2038. package/build-module/components/writing-mode-control/index.js.map +1 -1
  2039. package/build-module/elements/index.js.map +1 -1
  2040. package/build-module/hooks/align.js +25 -36
  2041. package/build-module/hooks/align.js.map +1 -1
  2042. package/build-module/hooks/align.native.js +6 -4
  2043. package/build-module/hooks/align.native.js.map +1 -1
  2044. package/build-module/hooks/anchor.js +11 -15
  2045. package/build-module/hooks/anchor.js.map +1 -1
  2046. package/build-module/hooks/aria-label.js +4 -6
  2047. package/build-module/hooks/aria-label.js.map +1 -1
  2048. package/build-module/hooks/behaviors.js +14 -25
  2049. package/build-module/hooks/behaviors.js.map +1 -1
  2050. package/build-module/hooks/border.js +48 -65
  2051. package/build-module/hooks/border.js.map +1 -1
  2052. package/build-module/hooks/color.js +32 -52
  2053. package/build-module/hooks/color.js.map +1 -1
  2054. package/build-module/hooks/compat.js +0 -4
  2055. package/build-module/hooks/compat.js.map +1 -1
  2056. package/build-module/hooks/content-lock-ui.js +5 -13
  2057. package/build-module/hooks/content-lock-ui.js.map +1 -1
  2058. package/build-module/hooks/contrast-checker.js +4 -11
  2059. package/build-module/hooks/contrast-checker.js.map +1 -1
  2060. package/build-module/hooks/custom-class-name.js +24 -26
  2061. package/build-module/hooks/custom-class-name.js.map +1 -1
  2062. package/build-module/hooks/custom-class-name.native.js +5 -6
  2063. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  2064. package/build-module/hooks/custom-fields.js +113 -0
  2065. package/build-module/hooks/custom-fields.js.map +1 -0
  2066. package/build-module/hooks/dimensions.js +6 -11
  2067. package/build-module/hooks/dimensions.js.map +1 -1
  2068. package/build-module/hooks/duotone.js +43 -49
  2069. package/build-module/hooks/duotone.js.map +1 -1
  2070. package/build-module/hooks/font-family.js +9 -20
  2071. package/build-module/hooks/font-family.js.map +1 -1
  2072. package/build-module/hooks/font-size.js +36 -47
  2073. package/build-module/hooks/font-size.js.map +1 -1
  2074. package/build-module/hooks/gap.js +2 -5
  2075. package/build-module/hooks/gap.js.map +1 -1
  2076. package/build-module/hooks/generated-class-name.js +2 -2
  2077. package/build-module/hooks/generated-class-name.js.map +1 -1
  2078. package/build-module/hooks/index.js +1 -0
  2079. package/build-module/hooks/index.js.map +1 -1
  2080. package/build-module/hooks/index.native.js.map +1 -1
  2081. package/build-module/hooks/layout.js +46 -54
  2082. package/build-module/hooks/layout.js.map +1 -1
  2083. package/build-module/hooks/layout.native.js +5 -3
  2084. package/build-module/hooks/layout.native.js.map +1 -1
  2085. package/build-module/hooks/line-height.js +7 -8
  2086. package/build-module/hooks/line-height.js.map +1 -1
  2087. package/build-module/hooks/lock.js +5 -6
  2088. package/build-module/hooks/lock.js.map +1 -1
  2089. package/build-module/hooks/margin.js +1 -10
  2090. package/build-module/hooks/margin.js.map +1 -1
  2091. package/build-module/hooks/metadata-name.js +5 -6
  2092. package/build-module/hooks/metadata-name.js.map +1 -1
  2093. package/build-module/hooks/metadata.js +3 -7
  2094. package/build-module/hooks/metadata.js.map +1 -1
  2095. package/build-module/hooks/padding.js +1 -10
  2096. package/build-module/hooks/padding.js.map +1 -1
  2097. package/build-module/hooks/position.js +36 -38
  2098. package/build-module/hooks/position.js.map +1 -1
  2099. package/build-module/hooks/settings.js +4 -7
  2100. package/build-module/hooks/settings.js.map +1 -1
  2101. package/build-module/hooks/style.js +39 -44
  2102. package/build-module/hooks/style.js.map +1 -1
  2103. package/build-module/hooks/supports.js +22 -33
  2104. package/build-module/hooks/supports.js.map +1 -1
  2105. package/build-module/hooks/typography.js +11 -16
  2106. package/build-module/hooks/typography.js.map +1 -1
  2107. package/build-module/hooks/typography.native.js +5 -7
  2108. package/build-module/hooks/typography.native.js.map +1 -1
  2109. package/build-module/hooks/use-border-props.js +7 -6
  2110. package/build-module/hooks/use-border-props.js.map +1 -1
  2111. package/build-module/hooks/use-cached-truthy.js +1 -1
  2112. package/build-module/hooks/use-cached-truthy.js.map +1 -1
  2113. package/build-module/hooks/use-color-props.js +18 -17
  2114. package/build-module/hooks/use-color-props.js.map +1 -1
  2115. package/build-module/hooks/use-editor-wrapper-styles.native.js +8 -26
  2116. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  2117. package/build-module/hooks/use-spacing-props.js +5 -3
  2118. package/build-module/hooks/use-spacing-props.js.map +1 -1
  2119. package/build-module/hooks/use-typography-props.js +4 -4
  2120. package/build-module/hooks/use-typography-props.js.map +1 -1
  2121. package/build-module/hooks/utils.js +12 -18
  2122. package/build-module/hooks/utils.js.map +1 -1
  2123. package/build-module/index.js.map +1 -1
  2124. package/build-module/index.native.js.map +1 -1
  2125. package/build-module/layouts/constrained.js +14 -26
  2126. package/build-module/layouts/constrained.js.map +1 -1
  2127. package/build-module/layouts/definitions.js.map +1 -1
  2128. package/build-module/layouts/flex.js +18 -41
  2129. package/build-module/layouts/flex.js.map +1 -1
  2130. package/build-module/layouts/flow.js +8 -17
  2131. package/build-module/layouts/flow.js.map +1 -1
  2132. package/build-module/layouts/grid.js +20 -25
  2133. package/build-module/layouts/grid.js.map +1 -1
  2134. package/build-module/layouts/index.js +2 -2
  2135. package/build-module/layouts/index.js.map +1 -1
  2136. package/build-module/layouts/utils.js +5 -9
  2137. package/build-module/layouts/utils.js.map +1 -1
  2138. package/build-module/lock-unlock.js.map +1 -1
  2139. package/build-module/private-apis.js +6 -5
  2140. package/build-module/private-apis.js.map +1 -1
  2141. package/build-module/private-apis.native.js +3 -2
  2142. package/build-module/private-apis.native.js.map +1 -1
  2143. package/build-module/store/actions.js +189 -198
  2144. package/build-module/store/actions.js.map +1 -1
  2145. package/build-module/store/array.js +1 -1
  2146. package/build-module/store/array.js.map +1 -1
  2147. package/build-module/store/constants.js.map +1 -1
  2148. package/build-module/store/defaults.js +1 -1
  2149. package/build-module/store/defaults.js.map +1 -1
  2150. package/build-module/store/defaults.native.js +2 -1
  2151. package/build-module/store/defaults.native.js.map +1 -1
  2152. package/build-module/store/index.js +13 -9
  2153. package/build-module/store/index.js.map +1 -1
  2154. package/build-module/store/private-actions.js +25 -78
  2155. package/build-module/store/private-actions.js.map +1 -1
  2156. package/build-module/store/private-selectors.js +6 -76
  2157. package/build-module/store/private-selectors.js.map +1 -1
  2158. package/build-module/store/reducer.js +161 -328
  2159. package/build-module/store/reducer.js.map +1 -1
  2160. package/build-module/store/selectors.js +255 -398
  2161. package/build-module/store/selectors.js.map +1 -1
  2162. package/build-module/store/utils.js.map +1 -1
  2163. package/build-module/utils/block-variation-transforms.js +2 -3
  2164. package/build-module/utils/block-variation-transforms.js.map +1 -1
  2165. package/build-module/utils/dom.js +4 -10
  2166. package/build-module/utils/dom.js.map +1 -1
  2167. package/build-module/utils/index.js.map +1 -1
  2168. package/build-module/utils/math.js +5 -7
  2169. package/build-module/utils/math.js.map +1 -1
  2170. package/build-module/utils/object.js +15 -21
  2171. package/build-module/utils/object.js.map +1 -1
  2172. package/build-module/utils/order-inserter-block-items.js +2 -3
  2173. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  2174. package/build-module/utils/parse-css-unit-to-px.js +14 -64
  2175. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  2176. package/build-module/utils/pasting.js +8 -12
  2177. package/build-module/utils/pasting.js.map +1 -1
  2178. package/build-module/utils/pre-parse-patterns.js +1 -14
  2179. package/build-module/utils/pre-parse-patterns.js.map +1 -1
  2180. package/build-module/utils/selection.js +1 -2
  2181. package/build-module/utils/selection.js.map +1 -1
  2182. package/build-module/utils/sorting.js +3 -7
  2183. package/build-module/utils/sorting.js.map +1 -1
  2184. package/build-module/utils/transform-styles/ast/index.js +1 -0
  2185. package/build-module/utils/transform-styles/ast/index.js.map +1 -1
  2186. package/build-module/utils/transform-styles/ast/parse.js +95 -134
  2187. package/build-module/utils/transform-styles/ast/parse.js.map +1 -1
  2188. package/build-module/utils/transform-styles/ast/stringify/compiler.js +5 -6
  2189. package/build-module/utils/transform-styles/ast/stringify/compiler.js.map +1 -1
  2190. package/build-module/utils/transform-styles/ast/stringify/compress.js +28 -19
  2191. package/build-module/utils/transform-styles/ast/stringify/compress.js.map +1 -1
  2192. package/build-module/utils/transform-styles/ast/stringify/identity.js +32 -23
  2193. package/build-module/utils/transform-styles/ast/stringify/identity.js.map +1 -1
  2194. package/build-module/utils/transform-styles/ast/stringify/index.js +1 -0
  2195. package/build-module/utils/transform-styles/ast/stringify/index.js.map +1 -1
  2196. package/build-module/utils/transform-styles/index.js +2 -7
  2197. package/build-module/utils/transform-styles/index.js.map +1 -1
  2198. package/build-module/utils/transform-styles/transforms/url-rewrite.js +12 -24
  2199. package/build-module/utils/transform-styles/transforms/url-rewrite.js.map +1 -1
  2200. package/build-module/utils/transform-styles/transforms/wrap.js +7 -8
  2201. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  2202. package/build-module/utils/transform-styles/traverse.js +1 -4
  2203. package/build-module/utils/transform-styles/traverse.js.map +1 -1
  2204. package/build-module/utils/use-should-contextual-toolbar-show.js +2 -5
  2205. package/build-module/utils/use-should-contextual-toolbar-show.js.map +1 -1
  2206. package/build-style/style-rtl.css +69 -10
  2207. package/build-style/style.css +69 -10
  2208. package/package.json +33 -32
  2209. package/src/autocompleters/block.js +21 -6
  2210. package/src/components/block-caption/README.md +109 -0
  2211. package/src/components/block-controls/use-has-block-controls.js +35 -0
  2212. package/src/components/block-draggable/test/index.native.js +2 -3
  2213. package/src/components/block-editing-mode/index.js +4 -8
  2214. package/src/components/block-inspector/index.js +1 -2
  2215. package/src/components/block-list/block-outline.native.js +2 -2
  2216. package/src/components/block-list/block.js +7 -3
  2217. package/src/components/block-list/index.js +3 -6
  2218. package/src/components/block-list/index.native.js +14 -14
  2219. package/src/components/block-list/test/block-invalid-warning.native.js +15 -1
  2220. package/src/components/block-list/use-in-between-inserter.js +1 -2
  2221. package/src/components/block-list-appender/index.js +1 -2
  2222. package/src/components/block-mover/test/__snapshots__/index.native.js.snap +24 -0
  2223. package/src/components/block-parent-selector/index.js +30 -43
  2224. package/src/components/block-preview/auto.js +8 -1
  2225. package/src/components/block-preview/index.js +0 -1
  2226. package/src/components/block-preview/style.scss +2 -1
  2227. package/src/components/block-settings-menu/block-settings-dropdown.js +4 -13
  2228. package/src/components/block-toolbar/index.js +36 -64
  2229. package/src/components/block-toolbar/style.scss +10 -0
  2230. package/src/components/block-toolbar/utils.js +57 -45
  2231. package/src/components/block-tools/block-contextual-toolbar.js +124 -38
  2232. package/src/components/block-tools/style.scss +49 -13
  2233. package/src/components/block-variation-picker/index.native.js +52 -72
  2234. package/src/components/color-palette/test/__snapshots__/control.js.snap +1 -1
  2235. package/src/components/copy-handler/index.js +1 -0
  2236. package/src/components/default-block-appender/index.native.js +13 -11
  2237. package/src/components/dimensions-tool/index.js +1 -1
  2238. package/src/components/editor-styles/index.js +2 -2
  2239. package/src/components/font-sizes/fluid-utils.js +17 -17
  2240. package/src/components/font-sizes/test/fluid-utils.js +6 -6
  2241. package/src/components/global-styles/behaviors-panel.js +71 -0
  2242. package/src/components/global-styles/hooks.js +114 -5
  2243. package/src/components/global-styles/index.js +3 -0
  2244. package/src/components/global-styles/test/typography-utils.js +61 -6
  2245. package/src/components/global-styles/typography-utils.js +15 -6
  2246. package/src/components/global-styles/use-global-styles-output.js +1 -2
  2247. package/src/components/global-styles/utils.js +2 -1
  2248. package/src/components/iframe/index.js +1 -0
  2249. package/src/components/index.js +7 -0
  2250. package/src/components/inserter/hooks/use-block-types-state.js +15 -6
  2251. package/src/components/inserter/hooks/use-debounced-input.js +8 -7
  2252. package/src/components/inserter/hooks/use-patterns-state.js +2 -1
  2253. package/src/components/inserter/menu.js +1 -0
  2254. package/src/components/inserter/preview-panel.js +15 -11
  2255. package/src/components/inserter/reusable-blocks-tab.js +4 -1
  2256. package/src/components/inserter/search-results.js +2 -1
  2257. package/src/components/inserter/stories/{index.js → index.story.js} +4 -4
  2258. package/src/components/inserter/test/search-items.js +4 -1
  2259. package/src/components/inserter-list-item/index.js +3 -1
  2260. package/src/components/keyboard-shortcuts/index.js +10 -0
  2261. package/src/components/line-height-control/index.js +14 -11
  2262. package/src/components/line-height-control/test/index.js +7 -5
  2263. package/src/components/line-height-control/utils.js +6 -1
  2264. package/src/components/link-control/README.md +12 -3
  2265. package/src/components/link-control/index.js +70 -13
  2266. package/src/components/link-control/link-preview.js +10 -4
  2267. package/src/components/link-control/style.scss +12 -2
  2268. package/src/components/link-control/test/index.js +64 -4
  2269. package/src/components/list-view/block-select-button.js +19 -0
  2270. package/src/components/list-view/block.js +1 -4
  2271. package/src/components/list-view/style.scss +25 -0
  2272. package/src/components/list-view/use-list-view-drop-zone.js +5 -1
  2273. package/src/components/list-view/use-list-view-images.js +79 -0
  2274. package/src/components/media-replace-flow/index.native.js +12 -3
  2275. package/src/components/media-upload/test/index.native.js +1 -0
  2276. package/src/components/rich-text/format-edit.js +62 -38
  2277. package/src/components/rich-text/get-rich-text-values.js +22 -28
  2278. package/src/components/rich-text/index.js +8 -1
  2279. package/src/components/rich-text/use-firefox-compat.js +1 -27
  2280. package/src/components/rich-text/use-format-types.js +3 -3
  2281. package/src/components/rich-text/use-paste-handler.js +4 -23
  2282. package/src/components/spacing-sizes-control/test/utils.js +9 -1
  2283. package/src/components/spacing-sizes-control/utils.js +2 -2
  2284. package/src/components/use-block-commands/index.js +284 -0
  2285. package/src/components/use-block-drop-zone/index.js +1 -2
  2286. package/src/components/use-setting/README.md +39 -0
  2287. package/src/components/writing-flow/use-drag-selection.js +5 -1
  2288. package/src/hooks/behaviors.js +10 -16
  2289. package/src/hooks/border.js +2 -1
  2290. package/src/hooks/custom-fields.js +139 -0
  2291. package/src/hooks/index.js +1 -0
  2292. package/src/hooks/layout.js +13 -4
  2293. package/src/hooks/style.js +7 -3
  2294. package/src/private-apis.js +2 -2
  2295. package/src/store/actions.js +71 -30
  2296. package/src/store/private-actions.js +0 -39
  2297. package/src/store/private-selectors.js +1 -67
  2298. package/src/store/selectors.js +66 -81
  2299. package/src/store/test/actions.js +28 -0
  2300. package/src/store/test/private-actions.js +0 -28
  2301. package/src/store/test/private-selectors.js +88 -261
  2302. package/src/store/test/selectors.js +209 -6
  2303. package/src/utils/transform-styles/ast/parse.js +31 -0
  2304. package/src/utils/transform-styles/ast/stringify/compress.js +13 -0
  2305. package/src/utils/transform-styles/ast/stringify/identity.js +13 -0
  2306. package/src/utils/transform-styles/transforms/test/__snapshots__/wrap.js.snap +8 -0
  2307. package/src/utils/transform-styles/transforms/test/wrap.js +11 -0
  2308. package/tsconfig.tsbuildinfo +1 -1
  2309. /package/src/components/block-draggable/stories/{index.js → index.story.js} +0 -0
  2310. /package/src/components/block-mover/stories/{index.js → index.story.js} +0 -0
  2311. /package/src/components/dimensions-tool/stories/{aspect-ratio-tool.js → aspect-ratio-tool.story.js} +0 -0
  2312. /package/src/components/dimensions-tool/stories/{index.js → index.story.js} +0 -0
  2313. /package/src/components/dimensions-tool/stories/{scale-tool.js → scale-tool.story.js} +0 -0
  2314. /package/src/components/dimensions-tool/stories/{width-height-tool.js → width-height-tool.story.js} +0 -0
  2315. /package/src/components/height-control/stories/{index.js → index.story.js} +0 -0
  2316. /package/src/components/line-height-control/stories/{index.js → index.story.js} +0 -0
  2317. /package/src/components/resolution-tool/stories/{index.js → index.story.js} +0 -0
  2318. /package/src/components/text-decoration-control/stories/{index.js → index.story.js} +0 -0
  2319. /package/src/components/text-transform-control/stories/{index.js → index.story.js} +0 -0
  2320. /package/src/components/url-popover/stories/{index.js → index.story.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/index.js"],"names":["classnames","Button","Spinner","Notice","TextControl","__","useRef","useState","useEffect","focus","ENTER","isShallowEqualObjects","LinkControlSettingsDrawer","LinkControlSearchInput","LinkPreview","LinkSettings","useCreatePage","useInternalValue","ViewerFill","DEFAULT_LINK_SETTINGS","noop","LinkControl","searchInputPlaceholder","value","settings","onChange","onRemove","onCancel","noDirectEntry","showSuggestions","showInitialSuggestions","forceIsEditingLink","createSuggestion","withCreateSuggestion","inputValue","propInputValue","suggestionsQuery","noURLSuggestion","createSuggestionButtonText","hasRichPreviews","hasTextControl","renderControlBottom","undefined","isMounting","wrapperNode","textInputRef","isEndingEditWithFocus","settingsKeys","map","id","settingsOpen","setSettingsOpen","internalControlValue","setInternalControlValue","setInternalURLInputValue","setInternalTextInputValue","createSetInternalSettingValueHandler","valueHasChanges","isEditingLink","setIsEditingLink","url","createPage","isCreatingPage","errorMessage","current","nextFocusTarget","focusable","find","hasLinkValue","trim","length","stopEditing","contains","ownerDocument","activeElement","handleSelectSuggestion","updatedValue","nonSettingsChanges","Object","keys","reduce","acc","key","includes","title","handleSubmit","currentUrlInputValue","handleSubmitWithEnter","event","keyCode","currentInputIsEmpty","preventDefault","resetInternalValues","handleCancel","stopPropagation","shownUnlinkControl","showSettings","showActions","showTextControl","isEditing","isDisabled"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Spinner, Notice, TextControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useState, useEffect } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport { ENTER } from '@wordpress/keycodes';\nimport { isShallowEqualObjects } from '@wordpress/is-shallow-equal';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSettingsDrawer from './settings-drawer';\nimport LinkControlSearchInput from './search-input';\nimport LinkPreview from './link-preview';\nimport LinkSettings from './settings';\nimport useCreatePage from './use-create-page';\nimport useInternalValue from './use-internal-value';\nimport { ViewerFill } from './viewer-slot';\nimport { DEFAULT_LINK_SETTINGS } from './constants';\n\n/**\n * Default properties associated with a link control value.\n *\n * @typedef WPLinkControlDefaultValue\n *\n * @property {string} url Link URL.\n * @property {string=} title Link title.\n * @property {boolean=} opensInNewTab Whether link should open in a new browser\n * tab. This value is only assigned if not\n * providing a custom `settings` prop.\n */\n\n/* eslint-disable jsdoc/valid-types */\n/**\n * Custom settings values associated with a link.\n *\n * @typedef {{[setting:string]:any}} WPLinkControlSettingsValue\n */\n/* eslint-enable */\n\n/**\n * Custom settings values associated with a link.\n *\n * @typedef WPLinkControlSetting\n *\n * @property {string} id Identifier to use as property for setting value.\n * @property {string} title Human-readable label to show in user interface.\n */\n\n/**\n * Properties associated with a link control value, composed as a union of the\n * default properties and any custom settings values.\n *\n * @typedef {WPLinkControlDefaultValue&WPLinkControlSettingsValue} WPLinkControlValue\n */\n\n/** @typedef {(nextValue:WPLinkControlValue)=>void} WPLinkControlOnChangeProp */\n\n/**\n * Properties associated with a search suggestion used within the LinkControl.\n *\n * @typedef WPLinkControlSuggestion\n *\n * @property {string} id Identifier to use to uniquely identify the suggestion.\n * @property {string} type Identifies the type of the suggestion (eg: `post`,\n * `page`, `url`...etc)\n * @property {string} title Human-readable label to show in user interface.\n * @property {string} url A URL for the suggestion.\n */\n\n/** @typedef {(title:string)=>WPLinkControlSuggestion} WPLinkControlCreateSuggestionProp */\n\n/**\n * @typedef WPLinkControlProps\n *\n * @property {(WPLinkControlSetting[])=} settings An array of settings objects. Each object will used to\n * render a `ToggleControl` for that setting.\n * @property {boolean=} forceIsEditingLink If passed as either `true` or `false`, controls the\n * internal editing state of the component to respective\n * show or not show the URL input field.\n * @property {WPLinkControlValue=} value Current link value.\n * @property {WPLinkControlOnChangeProp=} onChange Value change handler, called with the updated value if\n * the user selects a new link or updates settings.\n * @property {boolean=} noDirectEntry Whether to allow turning a URL-like search query directly into a link.\n * @property {boolean=} showSuggestions Whether to present suggestions when typing the URL.\n * @property {boolean=} showInitialSuggestions Whether to present initial suggestions immediately.\n * @property {boolean=} withCreateSuggestion Whether to allow creation of link value from suggestion.\n * @property {Object=} suggestionsQuery Query parameters to pass along to wp.blockEditor.__experimentalFetchLinkSuggestions.\n * @property {boolean=} noURLSuggestion Whether to add a fallback suggestion which treats the search query as a URL.\n * @property {boolean=} hasTextControl Whether to add a text field to the UI to update the value.title.\n * @property {string|Function|undefined} createSuggestionButtonText The text to use in the button that calls createSuggestion.\n * @property {Function} renderControlBottom Optional controls to be rendered at the bottom of the component.\n */\n\nconst noop = () => {};\n\n/**\n * Renders a link control. A link control is a controlled input which maintains\n * a value associated with a link (HTML anchor element) and relevant settings\n * for how that link is expected to behave.\n *\n * @param {WPLinkControlProps} props Component props.\n */\nfunction LinkControl( {\n\tsearchInputPlaceholder,\n\tvalue,\n\tsettings = DEFAULT_LINK_SETTINGS,\n\tonChange = noop,\n\tonRemove,\n\tonCancel,\n\tnoDirectEntry = false,\n\tshowSuggestions = true,\n\tshowInitialSuggestions,\n\tforceIsEditingLink,\n\tcreateSuggestion,\n\twithCreateSuggestion,\n\tinputValue: propInputValue = '',\n\tsuggestionsQuery = {},\n\tnoURLSuggestion = false,\n\tcreateSuggestionButtonText,\n\thasRichPreviews = false,\n\thasTextControl = false,\n\trenderControlBottom = null,\n} ) {\n\tif ( withCreateSuggestion === undefined && createSuggestion ) {\n\t\twithCreateSuggestion = true;\n\t}\n\n\tconst isMounting = useRef( true );\n\tconst wrapperNode = useRef();\n\tconst textInputRef = useRef();\n\tconst isEndingEditWithFocus = useRef( false );\n\n\tconst settingsKeys = settings.map( ( { id } ) => id );\n\n\tconst [ settingsOpen, setSettingsOpen ] = useState( false );\n\n\tconst [\n\t\tinternalControlValue,\n\t\tsetInternalControlValue,\n\t\tsetInternalURLInputValue,\n\t\tsetInternalTextInputValue,\n\t\tcreateSetInternalSettingValueHandler,\n\t] = useInternalValue( value );\n\n\tconst valueHasChanges =\n\t\tvalue && ! isShallowEqualObjects( internalControlValue, value );\n\n\tconst [ isEditingLink, setIsEditingLink ] = useState(\n\t\tforceIsEditingLink !== undefined\n\t\t\t? forceIsEditingLink\n\t\t\t: ! value || ! value.url\n\t);\n\n\tconst { createPage, isCreatingPage, errorMessage } =\n\t\tuseCreatePage( createSuggestion );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tforceIsEditingLink !== undefined &&\n\t\t\tforceIsEditingLink !== isEditingLink\n\t\t) {\n\t\t\tsetIsEditingLink( forceIsEditingLink );\n\t\t}\n\t\t// Todo: bug if the missing dep is introduced. Will need a fix.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ forceIsEditingLink ] );\n\n\tuseEffect( () => {\n\t\t// We don't auto focus into the Link UI on mount\n\t\t// because otherwise using the keyboard to select text\n\t\t// *within* the link format is not possible.\n\t\tif ( isMounting.current ) {\n\t\t\tisMounting.current = false;\n\t\t\treturn;\n\t\t}\n\n\t\t// Scenario - when:\n\t\t// - switching between editable and non editable LinkControl\n\t\t// - clicking on a link\n\t\t// ...then move focus to the *first* element to avoid focus loss\n\t\t// and to ensure focus is *within* the Link UI.\n\t\tconst nextFocusTarget =\n\t\t\tfocus.focusable.find( wrapperNode.current )[ 0 ] ||\n\t\t\twrapperNode.current;\n\n\t\tnextFocusTarget.focus();\n\n\t\tisEndingEditWithFocus.current = false;\n\t}, [ isEditingLink, isCreatingPage ] );\n\n\tconst hasLinkValue = value?.url?.trim()?.length > 0;\n\n\t/**\n\t * Cancels editing state and marks that focus may need to be restored after\n\t * the next render, if focus was within the wrapper when editing finished.\n\t */\n\tconst stopEditing = () => {\n\t\tisEndingEditWithFocus.current = !! wrapperNode.current?.contains(\n\t\t\twrapperNode.current.ownerDocument.activeElement\n\t\t);\n\n\t\tsetSettingsOpen( false );\n\t\tsetIsEditingLink( false );\n\t};\n\n\tconst handleSelectSuggestion = ( updatedValue ) => {\n\t\t// Suggestions may contains \"settings\" values (e.g. `opensInNewTab`)\n\t\t// which should not overide any existing settings values set by the\n\t\t// user. This filters out any settings values from the suggestion.\n\t\tconst nonSettingsChanges = Object.keys( updatedValue ).reduce(\n\t\t\t( acc, key ) => {\n\t\t\t\tif ( ! settingsKeys.includes( key ) ) {\n\t\t\t\t\tacc[ key ] = updatedValue[ key ];\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\n\t\tonChange( {\n\t\t\t...internalControlValue,\n\t\t\t...nonSettingsChanges,\n\t\t\t// As title is not a setting, it must be manually applied\n\t\t\t// in such a way as to preserve the users changes over\n\t\t\t// any \"title\" value provided by the \"suggestion\".\n\t\t\ttitle: internalControlValue?.title || updatedValue?.title,\n\t\t} );\n\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmit = () => {\n\t\tif ( valueHasChanges ) {\n\t\t\t// Submit the original value with new stored values applied\n\t\t\t// on top. URL is a special case as it may also be a prop.\n\t\t\tonChange( {\n\t\t\t\t...value,\n\t\t\t\t...internalControlValue,\n\t\t\t\turl: currentUrlInputValue,\n\t\t\t} );\n\t\t}\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmitWithEnter = ( event ) => {\n\t\tconst { keyCode } = event;\n\n\t\tif (\n\t\t\tkeyCode === ENTER &&\n\t\t\t! currentInputIsEmpty // Disallow submitting empty values.\n\t\t) {\n\t\t\tevent.preventDefault();\n\t\t\thandleSubmit();\n\t\t}\n\t};\n\n\tconst resetInternalValues = () => {\n\t\tsetInternalControlValue( value );\n\t};\n\n\tconst handleCancel = ( event ) => {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\n\t\t// Ensure that any unsubmitted input changes are reset.\n\t\tresetInternalValues();\n\n\t\tif ( hasLinkValue ) {\n\t\t\t// If there is a link then exist editing mode and show preview.\n\t\t\tstopEditing();\n\t\t} else {\n\t\t\t// If there is no link value, then remove the link entirely.\n\t\t\tonRemove?.();\n\t\t}\n\n\t\tonCancel?.();\n\t};\n\n\tconst currentUrlInputValue =\n\t\tpropInputValue || internalControlValue?.url || '';\n\n\tconst currentInputIsEmpty = ! currentUrlInputValue?.trim()?.length;\n\n\tconst shownUnlinkControl =\n\t\tonRemove && value && ! isEditingLink && ! isCreatingPage;\n\n\tconst showSettings = !! settings?.length && isEditingLink && hasLinkValue;\n\tconst showActions = isEditingLink && hasLinkValue;\n\n\t// Only show text control once a URL value has been committed\n\t// and it isn't just empty whitespace.\n\t// See https://github.com/WordPress/gutenberg/pull/33849/#issuecomment-932194927.\n\tconst showTextControl = hasLinkValue && hasTextControl;\n\n\tconst isEditing = ( isEditingLink || ! value ) && ! isCreatingPage;\n\tconst isDisabled = ! valueHasChanges || currentInputIsEmpty;\n\n\treturn (\n\t\t<div\n\t\t\ttabIndex={ -1 }\n\t\t\tref={ wrapperNode }\n\t\t\tclassName=\"block-editor-link-control\"\n\t\t>\n\t\t\t{ isCreatingPage && (\n\t\t\t\t<div className=\"block-editor-link-control__loading\">\n\t\t\t\t\t<Spinner /> { __( 'Creating' ) }…\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ isEditing && (\n\t\t\t\t<>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames( {\n\t\t\t\t\t\t\t'block-editor-link-control__search-input-wrapper': true,\n\t\t\t\t\t\t\t'has-text-control': showTextControl,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showTextControl && (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tref={ textInputRef }\n\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__text-content\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\t\t\tvalue={ internalControlValue?.title }\n\t\t\t\t\t\t\t\tonChange={ setInternalTextInputValue }\n\t\t\t\t\t\t\t\tonKeyDown={ handleSubmitWithEnter }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<LinkControlSearchInput\n\t\t\t\t\t\t\tcurrentLink={ value }\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__search-input\"\n\t\t\t\t\t\t\tplaceholder={ searchInputPlaceholder }\n\t\t\t\t\t\t\tvalue={ currentUrlInputValue }\n\t\t\t\t\t\t\twithCreateSuggestion={ withCreateSuggestion }\n\t\t\t\t\t\t\tonCreateSuggestion={ createPage }\n\t\t\t\t\t\t\tonChange={ setInternalURLInputValue }\n\t\t\t\t\t\t\tonSelect={ handleSelectSuggestion }\n\t\t\t\t\t\t\tshowInitialSuggestions={ showInitialSuggestions }\n\t\t\t\t\t\t\tallowDirectEntry={ ! noDirectEntry }\n\t\t\t\t\t\t\tshowSuggestions={ showSuggestions }\n\t\t\t\t\t\t\tsuggestionsQuery={ suggestionsQuery }\n\t\t\t\t\t\t\twithURLSuggestion={ ! noURLSuggestion }\n\t\t\t\t\t\t\tcreateSuggestionButtonText={\n\t\t\t\t\t\t\t\tcreateSuggestionButtonText\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thideLabelFromVision={ ! showTextControl }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t\t{ errorMessage && (\n\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-error\"\n\t\t\t\t\t\t\tstatus=\"error\"\n\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ errorMessage }\n\t\t\t\t\t\t</Notice>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t{ value && ! isEditingLink && ! isCreatingPage && (\n\t\t\t\t<LinkPreview\n\t\t\t\t\tkey={ value?.url } // force remount when URL changes to avoid race conditions for rich previews\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonEditClick={ () => setIsEditingLink( true ) }\n\t\t\t\t\thasRichPreviews={ hasRichPreviews }\n\t\t\t\t\thasUnlinkControl={ shownUnlinkControl }\n\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\tonRemove();\n\t\t\t\t\t\tsetIsEditingLink( true );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ showSettings && (\n\t\t\t\t<div className=\"block-editor-link-control__tools\">\n\t\t\t\t\t{ ! currentInputIsEmpty && (\n\t\t\t\t\t\t<LinkControlSettingsDrawer\n\t\t\t\t\t\t\tsettingsOpen={ settingsOpen }\n\t\t\t\t\t\t\tsetSettingsOpen={ setSettingsOpen }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<LinkSettings\n\t\t\t\t\t\t\t\tvalue={ internalControlValue }\n\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\tonChange={ createSetInternalSettingValueHandler(\n\t\t\t\t\t\t\t\t\tsettingsKeys\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</LinkControlSettingsDrawer>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ showActions && (\n\t\t\t\t<div className=\"block-editor-link-control__search-actions\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ isDisabled ? noop : handleSubmit }\n\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\taria-disabled={ isDisabled }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ handleCancel }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ renderControlBottom && renderControlBottom() }\n\t\t</div>\n\t);\n}\n\nLinkControl.ViewerFill = ViewerFill;\n\nexport default LinkControl;\n"]}
1
+ {"version":3,"names":["classnames","Button","Spinner","Notice","TextControl","__","useRef","useState","useEffect","focus","ENTER","isShallowEqualObjects","useSelect","useDispatch","store","preferencesStore","LinkControlSettingsDrawer","LinkControlSearchInput","LinkPreview","LinkSettings","useCreatePage","useInternalValue","ViewerFill","DEFAULT_LINK_SETTINGS","noop","PREFERENCE_SCOPE","PREFERENCE_KEY","LinkControl","searchInputPlaceholder","value","settings","onChange","onRemove","onCancel","noDirectEntry","showSuggestions","showInitialSuggestions","forceIsEditingLink","createSuggestion","withCreateSuggestion","inputValue","propInputValue","suggestionsQuery","noURLSuggestion","createSuggestionButtonText","hasRichPreviews","hasTextControl","renderControlBottom","undefined","settingsOpen","setSettingsOpen","advancedSettingsPreference","select","_prefsStore$get","prefsStore","get","set","setPreference","setSettingsOpenWithPreference","prefVal","isSettingsOpen","isMounting","wrapperNode","textInputRef","isEndingEditWithFocus","settingsKeys","map","id","internalControlValue","setInternalControlValue","setInternalURLInputValue","setInternalTextInputValue","createSetInternalSettingValueHandler","valueHasChanges","isEditingLink","setIsEditingLink","url","createPage","isCreatingPage","errorMessage","current","nextFocusTarget","focusable","find","hasLinkValue","trim","length","stopEditing","contains","ownerDocument","activeElement","handleSelectSuggestion","updatedValue","nonSettingsChanges","Object","keys","reduce","acc","key","includes","title","handleSubmit","currentUrlInputValue","handleSubmitWithEnter","event","keyCode","currentInputIsEmpty","preventDefault","resetInternalValues","handleCancel","stopPropagation","shownUnlinkControl","showActions","showTextControl","isEditing","isDisabled","showSettings","createElement","tabIndex","ref","className","Fragment","__nextHasNoMarginBottom","label","onKeyDown","size","currentLink","placeholder","onCreateSuggestion","onSelect","allowDirectEntry","withURLSuggestion","hideLabelFromVision","status","isDismissible","onEditClick","hasUnlinkControl","additionalControls","setting","filter","opensInNewTab","variant","onClick"],"sources":["@wordpress/block-editor/src/components/link-control/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Spinner, Notice, TextControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useState, useEffect } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport { ENTER } from '@wordpress/keycodes';\nimport { isShallowEqualObjects } from '@wordpress/is-shallow-equal';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSettingsDrawer from './settings-drawer';\nimport LinkControlSearchInput from './search-input';\nimport LinkPreview from './link-preview';\nimport LinkSettings from './settings';\nimport useCreatePage from './use-create-page';\nimport useInternalValue from './use-internal-value';\nimport { ViewerFill } from './viewer-slot';\nimport { DEFAULT_LINK_SETTINGS } from './constants';\n\n/**\n * Default properties associated with a link control value.\n *\n * @typedef WPLinkControlDefaultValue\n *\n * @property {string} url Link URL.\n * @property {string=} title Link title.\n * @property {boolean=} opensInNewTab Whether link should open in a new browser\n * tab. This value is only assigned if not\n * providing a custom `settings` prop.\n */\n\n/* eslint-disable jsdoc/valid-types */\n/**\n * Custom settings values associated with a link.\n *\n * @typedef {{[setting:string]:any}} WPLinkControlSettingsValue\n */\n/* eslint-enable */\n\n/**\n * Custom settings values associated with a link.\n *\n * @typedef WPLinkControlSetting\n *\n * @property {string} id Identifier to use as property for setting value.\n * @property {string} title Human-readable label to show in user interface.\n */\n\n/**\n * Properties associated with a link control value, composed as a union of the\n * default properties and any custom settings values.\n *\n * @typedef {WPLinkControlDefaultValue&WPLinkControlSettingsValue} WPLinkControlValue\n */\n\n/** @typedef {(nextValue:WPLinkControlValue)=>void} WPLinkControlOnChangeProp */\n\n/**\n * Properties associated with a search suggestion used within the LinkControl.\n *\n * @typedef WPLinkControlSuggestion\n *\n * @property {string} id Identifier to use to uniquely identify the suggestion.\n * @property {string} type Identifies the type of the suggestion (eg: `post`,\n * `page`, `url`...etc)\n * @property {string} title Human-readable label to show in user interface.\n * @property {string} url A URL for the suggestion.\n */\n\n/** @typedef {(title:string)=>WPLinkControlSuggestion} WPLinkControlCreateSuggestionProp */\n\n/**\n * @typedef WPLinkControlProps\n *\n * @property {(WPLinkControlSetting[])=} settings An array of settings objects. Each object will used to\n * render a `ToggleControl` for that setting.\n * @property {boolean=} forceIsEditingLink If passed as either `true` or `false`, controls the\n * internal editing state of the component to respective\n * show or not show the URL input field.\n * @property {WPLinkControlValue=} value Current link value.\n * @property {WPLinkControlOnChangeProp=} onChange Value change handler, called with the updated value if\n * the user selects a new link or updates settings.\n * @property {boolean=} noDirectEntry Whether to allow turning a URL-like search query directly into a link.\n * @property {boolean=} showSuggestions Whether to present suggestions when typing the URL.\n * @property {boolean=} showInitialSuggestions Whether to present initial suggestions immediately.\n * @property {boolean=} withCreateSuggestion Whether to allow creation of link value from suggestion.\n * @property {Object=} suggestionsQuery Query parameters to pass along to wp.blockEditor.__experimentalFetchLinkSuggestions.\n * @property {boolean=} noURLSuggestion Whether to add a fallback suggestion which treats the search query as a URL.\n * @property {boolean=} hasTextControl Whether to add a text field to the UI to update the value.title.\n * @property {string|Function|undefined} createSuggestionButtonText The text to use in the button that calls createSuggestion.\n * @property {Function} renderControlBottom Optional controls to be rendered at the bottom of the component.\n */\n\nconst noop = () => {};\n\nconst PREFERENCE_SCOPE = 'core/block-editor';\nconst PREFERENCE_KEY = 'linkControlSettingsDrawer';\n\n/**\n * Renders a link control. A link control is a controlled input which maintains\n * a value associated with a link (HTML anchor element) and relevant settings\n * for how that link is expected to behave.\n *\n * @param {WPLinkControlProps} props Component props.\n */\nfunction LinkControl( {\n\tsearchInputPlaceholder,\n\tvalue,\n\tsettings = DEFAULT_LINK_SETTINGS,\n\tonChange = noop,\n\tonRemove,\n\tonCancel,\n\tnoDirectEntry = false,\n\tshowSuggestions = true,\n\tshowInitialSuggestions,\n\tforceIsEditingLink,\n\tcreateSuggestion,\n\twithCreateSuggestion,\n\tinputValue: propInputValue = '',\n\tsuggestionsQuery = {},\n\tnoURLSuggestion = false,\n\tcreateSuggestionButtonText,\n\thasRichPreviews = false,\n\thasTextControl = false,\n\trenderControlBottom = null,\n} ) {\n\tif ( withCreateSuggestion === undefined && createSuggestion ) {\n\t\twithCreateSuggestion = true;\n\t}\n\n\tconst [ settingsOpen, setSettingsOpen ] = useState( false );\n\n\tconst { advancedSettingsPreference } = useSelect( ( select ) => {\n\t\tconst prefsStore = select( preferencesStore );\n\n\t\treturn {\n\t\t\tadvancedSettingsPreference:\n\t\t\t\tprefsStore.get( PREFERENCE_SCOPE, PREFERENCE_KEY ) ?? false,\n\t\t};\n\t}, [] );\n\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\n\t/**\n\t * Sets the open/closed state of the Advanced Settings Drawer,\n\t * optionlly persisting the state to the user's preferences.\n\t *\n\t * Note that Block Editor components can be consumed by non-WordPress\n\t * environments which may not have preferences setup.\n\t * Therefore a local state is also used as a fallback.\n\t *\n\t * @param {boolean} prefVal the open/closed state of the Advanced Settings Drawer.\n\t */\n\tconst setSettingsOpenWithPreference = ( prefVal ) => {\n\t\tif ( setPreference ) {\n\t\t\tsetPreference( PREFERENCE_SCOPE, PREFERENCE_KEY, prefVal );\n\t\t}\n\t\tsetSettingsOpen( prefVal );\n\t};\n\n\t// Block Editor components can be consumed by non-WordPress environments\n\t// which may not have these preferences setup.\n\t// Therefore a local state is used as a fallback.\n\tconst isSettingsOpen = advancedSettingsPreference || settingsOpen;\n\n\tconst isMounting = useRef( true );\n\tconst wrapperNode = useRef();\n\tconst textInputRef = useRef();\n\tconst isEndingEditWithFocus = useRef( false );\n\n\tconst settingsKeys = settings.map( ( { id } ) => id );\n\n\tconst [\n\t\tinternalControlValue,\n\t\tsetInternalControlValue,\n\t\tsetInternalURLInputValue,\n\t\tsetInternalTextInputValue,\n\t\tcreateSetInternalSettingValueHandler,\n\t] = useInternalValue( value );\n\n\tconst valueHasChanges =\n\t\tvalue && ! isShallowEqualObjects( internalControlValue, value );\n\n\tconst [ isEditingLink, setIsEditingLink ] = useState(\n\t\tforceIsEditingLink !== undefined\n\t\t\t? forceIsEditingLink\n\t\t\t: ! value || ! value.url\n\t);\n\n\tconst { createPage, isCreatingPage, errorMessage } =\n\t\tuseCreatePage( createSuggestion );\n\n\tuseEffect( () => {\n\t\tif ( forceIsEditingLink === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsEditingLink( forceIsEditingLink );\n\t}, [ forceIsEditingLink ] );\n\n\tuseEffect( () => {\n\t\t// We don't auto focus into the Link UI on mount\n\t\t// because otherwise using the keyboard to select text\n\t\t// *within* the link format is not possible.\n\t\tif ( isMounting.current ) {\n\t\t\tisMounting.current = false;\n\t\t\treturn;\n\t\t}\n\n\t\t// Scenario - when:\n\t\t// - switching between editable and non editable LinkControl\n\t\t// - clicking on a link\n\t\t// ...then move focus to the *first* element to avoid focus loss\n\t\t// and to ensure focus is *within* the Link UI.\n\t\tconst nextFocusTarget =\n\t\t\tfocus.focusable.find( wrapperNode.current )[ 0 ] ||\n\t\t\twrapperNode.current;\n\n\t\tnextFocusTarget.focus();\n\n\t\tisEndingEditWithFocus.current = false;\n\t}, [ isEditingLink, isCreatingPage ] );\n\n\tconst hasLinkValue = value?.url?.trim()?.length > 0;\n\n\t/**\n\t * Cancels editing state and marks that focus may need to be restored after\n\t * the next render, if focus was within the wrapper when editing finished.\n\t */\n\tconst stopEditing = () => {\n\t\tisEndingEditWithFocus.current = !! wrapperNode.current?.contains(\n\t\t\twrapperNode.current.ownerDocument.activeElement\n\t\t);\n\n\t\tsetIsEditingLink( false );\n\t};\n\n\tconst handleSelectSuggestion = ( updatedValue ) => {\n\t\t// Suggestions may contains \"settings\" values (e.g. `opensInNewTab`)\n\t\t// which should not overide any existing settings values set by the\n\t\t// user. This filters out any settings values from the suggestion.\n\t\tconst nonSettingsChanges = Object.keys( updatedValue ).reduce(\n\t\t\t( acc, key ) => {\n\t\t\t\tif ( ! settingsKeys.includes( key ) ) {\n\t\t\t\t\tacc[ key ] = updatedValue[ key ];\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\n\t\tonChange( {\n\t\t\t...internalControlValue,\n\t\t\t...nonSettingsChanges,\n\t\t\t// As title is not a setting, it must be manually applied\n\t\t\t// in such a way as to preserve the users changes over\n\t\t\t// any \"title\" value provided by the \"suggestion\".\n\t\t\ttitle: internalControlValue?.title || updatedValue?.title,\n\t\t} );\n\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmit = () => {\n\t\tif ( valueHasChanges ) {\n\t\t\t// Submit the original value with new stored values applied\n\t\t\t// on top. URL is a special case as it may also be a prop.\n\t\t\tonChange( {\n\t\t\t\t...value,\n\t\t\t\t...internalControlValue,\n\t\t\t\turl: currentUrlInputValue,\n\t\t\t} );\n\t\t}\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmitWithEnter = ( event ) => {\n\t\tconst { keyCode } = event;\n\n\t\tif (\n\t\t\tkeyCode === ENTER &&\n\t\t\t! currentInputIsEmpty // Disallow submitting empty values.\n\t\t) {\n\t\t\tevent.preventDefault();\n\t\t\thandleSubmit();\n\t\t}\n\t};\n\n\tconst resetInternalValues = () => {\n\t\tsetInternalControlValue( value );\n\t};\n\n\tconst handleCancel = ( event ) => {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\n\t\t// Ensure that any unsubmitted input changes are reset.\n\t\tresetInternalValues();\n\n\t\tif ( hasLinkValue ) {\n\t\t\t// If there is a link then exist editing mode and show preview.\n\t\t\tstopEditing();\n\t\t} else {\n\t\t\t// If there is no link value, then remove the link entirely.\n\t\t\tonRemove?.();\n\t\t}\n\n\t\tonCancel?.();\n\t};\n\n\tconst currentUrlInputValue =\n\t\tpropInputValue || internalControlValue?.url || '';\n\n\tconst currentInputIsEmpty = ! currentUrlInputValue?.trim()?.length;\n\n\tconst shownUnlinkControl =\n\t\tonRemove && value && ! isEditingLink && ! isCreatingPage;\n\n\tconst showActions = isEditingLink && hasLinkValue;\n\n\t// Only show text control once a URL value has been committed\n\t// and it isn't just empty whitespace.\n\t// See https://github.com/WordPress/gutenberg/pull/33849/#issuecomment-932194927.\n\tconst showTextControl = hasLinkValue && hasTextControl;\n\n\tconst isEditing = ( isEditingLink || ! value ) && ! isCreatingPage;\n\tconst isDisabled = ! valueHasChanges || currentInputIsEmpty;\n\tconst showSettings = !! settings?.length && isEditingLink && hasLinkValue;\n\n\treturn (\n\t\t<div\n\t\t\ttabIndex={ -1 }\n\t\t\tref={ wrapperNode }\n\t\t\tclassName=\"block-editor-link-control\"\n\t\t>\n\t\t\t{ isCreatingPage && (\n\t\t\t\t<div className=\"block-editor-link-control__loading\">\n\t\t\t\t\t<Spinner /> { __( 'Creating' ) }…\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ isEditing && (\n\t\t\t\t<>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames( {\n\t\t\t\t\t\t\t'block-editor-link-control__search-input-wrapper': true,\n\t\t\t\t\t\t\t'has-text-control': showTextControl,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showTextControl && (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tref={ textInputRef }\n\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__text-content\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\t\t\tvalue={ internalControlValue?.title }\n\t\t\t\t\t\t\t\tonChange={ setInternalTextInputValue }\n\t\t\t\t\t\t\t\tonKeyDown={ handleSubmitWithEnter }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<LinkControlSearchInput\n\t\t\t\t\t\t\tcurrentLink={ value }\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__search-input\"\n\t\t\t\t\t\t\tplaceholder={ searchInputPlaceholder }\n\t\t\t\t\t\t\tvalue={ currentUrlInputValue }\n\t\t\t\t\t\t\twithCreateSuggestion={ withCreateSuggestion }\n\t\t\t\t\t\t\tonCreateSuggestion={ createPage }\n\t\t\t\t\t\t\tonChange={ setInternalURLInputValue }\n\t\t\t\t\t\t\tonSelect={ handleSelectSuggestion }\n\t\t\t\t\t\t\tshowInitialSuggestions={ showInitialSuggestions }\n\t\t\t\t\t\t\tallowDirectEntry={ ! noDirectEntry }\n\t\t\t\t\t\t\tshowSuggestions={ showSuggestions }\n\t\t\t\t\t\t\tsuggestionsQuery={ suggestionsQuery }\n\t\t\t\t\t\t\twithURLSuggestion={ ! noURLSuggestion }\n\t\t\t\t\t\t\tcreateSuggestionButtonText={\n\t\t\t\t\t\t\t\tcreateSuggestionButtonText\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thideLabelFromVision={ ! showTextControl }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t\t{ errorMessage && (\n\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-error\"\n\t\t\t\t\t\t\tstatus=\"error\"\n\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ errorMessage }\n\t\t\t\t\t\t</Notice>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t{ value && ! isEditingLink && ! isCreatingPage && (\n\t\t\t\t<LinkPreview\n\t\t\t\t\tkey={ value?.url } // force remount when URL changes to avoid race conditions for rich previews\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonEditClick={ () => setIsEditingLink( true ) }\n\t\t\t\t\thasRichPreviews={ hasRichPreviews }\n\t\t\t\t\thasUnlinkControl={ shownUnlinkControl }\n\t\t\t\t\tadditionalControls={ () => {\n\t\t\t\t\t\t// Expose the \"Opens in new tab\" settings in the preview\n\t\t\t\t\t\t// as it is the most common setting to change.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tsettings?.find(\n\t\t\t\t\t\t\t\t( setting ) => setting.id === 'opensInNewTab'\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<LinkSettings\n\t\t\t\t\t\t\t\t\tvalue={ internalControlValue }\n\t\t\t\t\t\t\t\t\tsettings={ settings?.filter(\n\t\t\t\t\t\t\t\t\t\t( { id } ) => id === 'opensInNewTab'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tonChange={ ( { opensInNewTab } ) => {\n\t\t\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t\t\topensInNewTab,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\tonRemove();\n\t\t\t\t\t\tsetIsEditingLink( true );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ showSettings && (\n\t\t\t\t<div className=\"block-editor-link-control__tools\">\n\t\t\t\t\t{ ! currentInputIsEmpty && (\n\t\t\t\t\t\t<LinkControlSettingsDrawer\n\t\t\t\t\t\t\tsettingsOpen={ isSettingsOpen }\n\t\t\t\t\t\t\tsetSettingsOpen={ setSettingsOpenWithPreference }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<LinkSettings\n\t\t\t\t\t\t\t\tvalue={ internalControlValue }\n\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\tonChange={ createSetInternalSettingValueHandler(\n\t\t\t\t\t\t\t\t\tsettingsKeys\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</LinkControlSettingsDrawer>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ showActions && (\n\t\t\t\t<div className=\"block-editor-link-control__search-actions\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ isDisabled ? noop : handleSubmit }\n\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\taria-disabled={ isDisabled }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ handleCancel }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ renderControlBottom && renderControlBottom() }\n\t\t</div>\n\t);\n}\n\nLinkControl.ViewerFill = ViewerFill;\n\nexport default LinkControl;\n"],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { getProtocol, isValidProtocol, isValidFragment } from '@wordpress/url';
5
+
5
6
  /**
6
7
  * Determines whether a given value could be a URL. Note this does not
7
8
  * guarantee the value is a URL only that it looks like it might be one. For
@@ -13,14 +14,11 @@ import { getProtocol, isValidProtocol, isValidFragment } from '@wordpress/url';
13
14
  *
14
15
  * @return {boolean} whether or not the value is potentially a URL.
15
16
  */
16
-
17
17
  export default function isURLLike(val) {
18
18
  const hasSpaces = val.includes(' ');
19
-
20
19
  if (hasSpaces) {
21
20
  return false;
22
21
  }
23
-
24
22
  const protocol = getProtocol(val);
25
23
  const protocolIsValid = isValidProtocol(protocol);
26
24
  const mayBeTLD = hasPossibleTLD(val);
@@ -28,6 +26,7 @@ export default function isURLLike(val) {
28
26
  const isInternal = val?.startsWith('#') && isValidFragment(val);
29
27
  return protocolIsValid || isWWW || isInternal || mayBeTLD;
30
28
  }
29
+
31
30
  /**
32
31
  * Checks if a given URL has a valid Top-Level Domain (TLD).
33
32
  *
@@ -35,15 +34,15 @@ export default function isURLLike(val) {
35
34
  * @param {number} maxLength - The maximum length of the TLD.
36
35
  * @return {boolean} Returns true if the URL has a valid TLD, false otherwise.
37
36
  */
38
-
39
37
  function hasPossibleTLD(url, maxLength = 6) {
40
38
  // Clean the URL by removing anything after the first occurrence of "?" or "#".
41
- const cleanedURL = url.split(/[?#]/)[0]; // Regular expression explanation:
39
+ const cleanedURL = url.split(/[?#]/)[0];
40
+
41
+ // Regular expression explanation:
42
42
  // - (?<=\S) : Positive lookbehind assertion to ensure there is at least one non-whitespace character before the TLD
43
43
  // - \. : Matches a literal dot (.)
44
44
  // - [a-zA-Z_]{2,maxLength} : Matches 2 to maxLength letters or underscores, representing the TLD
45
45
  // - (?:\/|$) : Non-capturing group that matches either a forward slash (/) or the end of the string
46
-
47
46
  const regex = new RegExp(`(?<=\\S)\\.(?:[a-zA-Z_]{2,${maxLength}})(?:\\/|$)`);
48
47
  return regex.test(cleanedURL);
49
48
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/is-url-like.js"],"names":["getProtocol","isValidProtocol","isValidFragment","isURLLike","val","hasSpaces","includes","protocol","protocolIsValid","mayBeTLD","hasPossibleTLD","isWWW","startsWith","isInternal","url","maxLength","cleanedURL","split","regex","RegExp","test"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,EAAsBC,eAAtB,EAAuCC,eAAvC,QAA8D,gBAA9D;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,SAAT,CAAoBC,GAApB,EAA0B;AACxC,QAAMC,SAAS,GAAGD,GAAG,CAACE,QAAJ,CAAc,GAAd,CAAlB;;AAEA,MAAKD,SAAL,EAAiB;AAChB,WAAO,KAAP;AACA;;AAED,QAAME,QAAQ,GAAGP,WAAW,CAAEI,GAAF,CAA5B;AACA,QAAMI,eAAe,GAAGP,eAAe,CAAEM,QAAF,CAAvC;AAEA,QAAME,QAAQ,GAAGC,cAAc,CAAEN,GAAF,CAA/B;AAEA,QAAMO,KAAK,GAAGP,GAAG,EAAEQ,UAAL,CAAiB,MAAjB,CAAd;AAEA,QAAMC,UAAU,GAAGT,GAAG,EAAEQ,UAAL,CAAiB,GAAjB,KAA0BV,eAAe,CAAEE,GAAF,CAA5D;AAEA,SAAOI,eAAe,IAAIG,KAAnB,IAA4BE,UAA5B,IAA0CJ,QAAjD;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,SAASC,cAAT,CAAyBI,GAAzB,EAA8BC,SAAS,GAAG,CAA1C,EAA8C;AAC7C;AACA,QAAMC,UAAU,GAAGF,GAAG,CAACG,KAAJ,CAAW,MAAX,EAAqB,CAArB,CAAnB,CAF6C,CAI7C;AACA;AACA;AACA;AACA;;AACA,QAAMC,KAAK,GAAG,IAAIC,MAAJ,CACZ,6BAA6BJ,SAAW,aAD5B,CAAd;AAIA,SAAOG,KAAK,CAACE,IAAN,CAAYJ,UAAZ,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getProtocol, isValidProtocol, isValidFragment } from '@wordpress/url';\n\n/**\n * Determines whether a given value could be a URL. Note this does not\n * guarantee the value is a URL only that it looks like it might be one. For\n * example, just because a string has `www.` in it doesn't make it a URL,\n * but it does make it highly likely that it will be so in the context of\n * creating a link it makes sense to treat it like one.\n *\n * @param {string} val the candidate for being URL-like (or not).\n *\n * @return {boolean} whether or not the value is potentially a URL.\n */\nexport default function isURLLike( val ) {\n\tconst hasSpaces = val.includes( ' ' );\n\n\tif ( hasSpaces ) {\n\t\treturn false;\n\t}\n\n\tconst protocol = getProtocol( val );\n\tconst protocolIsValid = isValidProtocol( protocol );\n\n\tconst mayBeTLD = hasPossibleTLD( val );\n\n\tconst isWWW = val?.startsWith( 'www.' );\n\n\tconst isInternal = val?.startsWith( '#' ) && isValidFragment( val );\n\n\treturn protocolIsValid || isWWW || isInternal || mayBeTLD;\n}\n\n/**\n * Checks if a given URL has a valid Top-Level Domain (TLD).\n *\n * @param {string} url - The URL to check.\n * @param {number} maxLength - The maximum length of the TLD.\n * @return {boolean} Returns true if the URL has a valid TLD, false otherwise.\n */\nfunction hasPossibleTLD( url, maxLength = 6 ) {\n\t// Clean the URL by removing anything after the first occurrence of \"?\" or \"#\".\n\tconst cleanedURL = url.split( /[?#]/ )[ 0 ];\n\n\t// Regular expression explanation:\n\t// - (?<=\\S) : Positive lookbehind assertion to ensure there is at least one non-whitespace character before the TLD\n\t// - \\. : Matches a literal dot (.)\n\t// - [a-zA-Z_]{2,maxLength} : Matches 2 to maxLength letters or underscores, representing the TLD\n\t// - (?:\\/|$) : Non-capturing group that matches either a forward slash (/) or the end of the string\n\tconst regex = new RegExp(\n\t\t`(?<=\\\\S)\\\\.(?:[a-zA-Z_]{2,${ maxLength }})(?:\\\\/|$)`\n\t);\n\n\treturn regex.test( cleanedURL );\n}\n"]}
1
+ {"version":3,"names":["getProtocol","isValidProtocol","isValidFragment","isURLLike","val","hasSpaces","includes","protocol","protocolIsValid","mayBeTLD","hasPossibleTLD","isWWW","startsWith","isInternal","url","maxLength","cleanedURL","split","regex","RegExp","test"],"sources":["@wordpress/block-editor/src/components/link-control/is-url-like.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getProtocol, isValidProtocol, isValidFragment } from '@wordpress/url';\n\n/**\n * Determines whether a given value could be a URL. Note this does not\n * guarantee the value is a URL only that it looks like it might be one. For\n * example, just because a string has `www.` in it doesn't make it a URL,\n * but it does make it highly likely that it will be so in the context of\n * creating a link it makes sense to treat it like one.\n *\n * @param {string} val the candidate for being URL-like (or not).\n *\n * @return {boolean} whether or not the value is potentially a URL.\n */\nexport default function isURLLike( val ) {\n\tconst hasSpaces = val.includes( ' ' );\n\n\tif ( hasSpaces ) {\n\t\treturn false;\n\t}\n\n\tconst protocol = getProtocol( val );\n\tconst protocolIsValid = isValidProtocol( protocol );\n\n\tconst mayBeTLD = hasPossibleTLD( val );\n\n\tconst isWWW = val?.startsWith( 'www.' );\n\n\tconst isInternal = val?.startsWith( '#' ) && isValidFragment( val );\n\n\treturn protocolIsValid || isWWW || isInternal || mayBeTLD;\n}\n\n/**\n * Checks if a given URL has a valid Top-Level Domain (TLD).\n *\n * @param {string} url - The URL to check.\n * @param {number} maxLength - The maximum length of the TLD.\n * @return {boolean} Returns true if the URL has a valid TLD, false otherwise.\n */\nfunction hasPossibleTLD( url, maxLength = 6 ) {\n\t// Clean the URL by removing anything after the first occurrence of \"?\" or \"#\".\n\tconst cleanedURL = url.split( /[?#]/ )[ 0 ];\n\n\t// Regular expression explanation:\n\t// - (?<=\\S) : Positive lookbehind assertion to ensure there is at least one non-whitespace character before the TLD\n\t// - \\. : Matches a literal dot (.)\n\t// - [a-zA-Z_]{2,maxLength} : Matches 2 to maxLength letters or underscores, representing the TLD\n\t// - (?:\\/|$) : Non-capturing group that matches either a forward slash (/) or the end of the string\n\tconst regex = new RegExp(\n\t\t`(?<=\\\\S)\\\\.(?:[a-zA-Z_]{2,${ maxLength }})(?:\\\\/|$)`\n\t);\n\n\treturn regex.test( cleanedURL );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,eAAe,EAAEC,eAAe,QAAQ,gBAAgB;;AAE9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,SAASA,CAAEC,GAAG,EAAG;EACxC,MAAMC,SAAS,GAAGD,GAAG,CAACE,QAAQ,CAAE,GAAI,CAAC;EAErC,IAAKD,SAAS,EAAG;IAChB,OAAO,KAAK;EACb;EAEA,MAAME,QAAQ,GAAGP,WAAW,CAAEI,GAAI,CAAC;EACnC,MAAMI,eAAe,GAAGP,eAAe,CAAEM,QAAS,CAAC;EAEnD,MAAME,QAAQ,GAAGC,cAAc,CAAEN,GAAI,CAAC;EAEtC,MAAMO,KAAK,GAAGP,GAAG,EAAEQ,UAAU,CAAE,MAAO,CAAC;EAEvC,MAAMC,UAAU,GAAGT,GAAG,EAAEQ,UAAU,CAAE,GAAI,CAAC,IAAIV,eAAe,CAAEE,GAAI,CAAC;EAEnE,OAAOI,eAAe,IAAIG,KAAK,IAAIE,UAAU,IAAIJ,QAAQ;AAC1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,cAAcA,CAAEI,GAAG,EAAEC,SAAS,GAAG,CAAC,EAAG;EAC7C;EACA,MAAMC,UAAU,GAAGF,GAAG,CAACG,KAAK,CAAE,MAAO,CAAC,CAAE,CAAC,CAAE;;EAE3C;EACA;EACA;EACA;EACA;EACA,MAAMC,KAAK,GAAG,IAAIC,MAAM,CACtB,6BAA6BJ,SAAW,aAC1C,CAAC;EAED,OAAOG,KAAK,CAACE,IAAI,CAAEJ,UAAW,CAAC;AAChC"}
@@ -1,22 +1,21 @@
1
1
  import { createElement, Fragment } from "@wordpress/element";
2
-
3
2
  /**
4
3
  * External dependencies
5
4
  */
6
5
  import classnames from 'classnames';
6
+
7
7
  /**
8
8
  * WordPress dependencies
9
9
  */
10
-
11
10
  import { __ } from '@wordpress/i18n';
12
11
  import { Button, ExternalLink, __experimentalText as Text } from '@wordpress/components';
13
12
  import { filterURLForDisplay, safeDecodeURI } from '@wordpress/url';
14
13
  import { Icon, globe, info, linkOff, edit } from '@wordpress/icons';
15
14
  import { __unstableStripHTML as stripHTML } from '@wordpress/dom';
15
+
16
16
  /**
17
17
  * Internal dependencies
18
18
  */
19
-
20
19
  import { ViewerSlot } from './viewer-slot';
21
20
  import useRichUrlData from './use-rich-url-data';
22
21
  export default function LinkPreview({
@@ -24,22 +23,24 @@ export default function LinkPreview({
24
23
  onEditClick,
25
24
  hasRichPreviews = false,
26
25
  hasUnlinkControl = false,
27
- onRemove
26
+ onRemove,
27
+ additionalControls
28
28
  }) {
29
29
  // Avoid fetching if rich previews are not desired.
30
30
  const showRichPreviews = hasRichPreviews ? value?.url : null;
31
31
  const {
32
32
  richData,
33
33
  isFetching
34
- } = useRichUrlData(showRichPreviews); // Rich data may be an empty object so test for that.
34
+ } = useRichUrlData(showRichPreviews);
35
35
 
36
+ // Rich data may be an empty object so test for that.
36
37
  const hasRichData = richData && Object.keys(richData).length;
37
38
  const displayURL = value && filterURLForDisplay(safeDecodeURI(value.url), 16) || '';
38
- const displayTitle = richData?.title || value?.title || displayURL; // url can be undefined if the href attribute is unset
39
39
 
40
+ // url can be undefined if the href attribute is unset
40
41
  const isEmptyURL = !value?.url?.length;
42
+ const displayTitle = !isEmptyURL && stripHTML(richData?.title || value?.title || displayURL);
41
43
  let icon;
42
-
43
44
  if (richData?.icon) {
44
45
  icon = createElement("img", {
45
46
  src: richData?.icon,
@@ -55,7 +56,6 @@ export default function LinkPreview({
55
56
  icon: globe
56
57
  });
57
58
  }
58
-
59
59
  return createElement("div", {
60
60
  "aria-label": __('Currently selected'),
61
61
  className: classnames('block-editor-link-control__search-item', {
@@ -63,7 +63,8 @@ export default function LinkPreview({
63
63
  'is-rich': hasRichData,
64
64
  'is-fetching': !!isFetching,
65
65
  'is-preview': true,
66
- 'is-error': isEmptyURL
66
+ 'is-error': isEmptyURL,
67
+ 'is-url-title': displayTitle === displayURL
67
68
  })
68
69
  }, createElement("div", {
69
70
  className: "block-editor-link-control__search-item-top"
@@ -78,7 +79,7 @@ export default function LinkPreview({
78
79
  }, !isEmptyURL ? createElement(Fragment, null, createElement(ExternalLink, {
79
80
  className: "block-editor-link-control__search-item-title",
80
81
  href: value.url
81
- }, stripHTML(displayTitle)), value?.url && createElement("span", {
82
+ }, displayTitle), value?.url && displayTitle !== displayURL && createElement("span", {
82
83
  className: "block-editor-link-control__search-item-info"
83
84
  }, displayURL)) : createElement("span", {
84
85
  className: "block-editor-link-control__search-item-error-notice"
@@ -114,6 +115,6 @@ export default function LinkPreview({
114
115
  }, richData?.description && createElement(Text, {
115
116
  truncate: true,
116
117
  numberOfLines: "2"
117
- }, richData.description))));
118
+ }, richData.description))), additionalControls && additionalControls());
118
119
  }
119
120
  //# sourceMappingURL=link-preview.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/link-preview.js"],"names":["classnames","__","Button","ExternalLink","__experimentalText","Text","filterURLForDisplay","safeDecodeURI","Icon","globe","info","linkOff","edit","__unstableStripHTML","stripHTML","ViewerSlot","useRichUrlData","LinkPreview","value","onEditClick","hasRichPreviews","hasUnlinkControl","onRemove","showRichPreviews","url","richData","isFetching","hasRichData","Object","keys","length","displayURL","displayTitle","title","isEmptyURL","icon","image","description"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tExternalLink,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { filterURLForDisplay, safeDecodeURI } from '@wordpress/url';\nimport { Icon, globe, info, linkOff, edit } from '@wordpress/icons';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport { ViewerSlot } from './viewer-slot';\n\nimport useRichUrlData from './use-rich-url-data';\n\nexport default function LinkPreview( {\n\tvalue,\n\tonEditClick,\n\thasRichPreviews = false,\n\thasUnlinkControl = false,\n\tonRemove,\n} ) {\n\t// Avoid fetching if rich previews are not desired.\n\tconst showRichPreviews = hasRichPreviews ? value?.url : null;\n\n\tconst { richData, isFetching } = useRichUrlData( showRichPreviews );\n\n\t// Rich data may be an empty object so test for that.\n\tconst hasRichData = richData && Object.keys( richData ).length;\n\n\tconst displayURL =\n\t\t( value && filterURLForDisplay( safeDecodeURI( value.url ), 16 ) ) ||\n\t\t'';\n\n\tconst displayTitle = richData?.title || value?.title || displayURL;\n\n\t// url can be undefined if the href attribute is unset\n\tconst isEmptyURL = ! value?.url?.length;\n\n\tlet icon;\n\n\tif ( richData?.icon ) {\n\t\ticon = <img src={ richData?.icon } alt=\"\" />;\n\t} else if ( isEmptyURL ) {\n\t\ticon = <Icon icon={ info } size={ 32 } />;\n\t} else {\n\t\ticon = <Icon icon={ globe } />;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\taria-label={ __( 'Currently selected' ) }\n\t\t\tclassName={ classnames( 'block-editor-link-control__search-item', {\n\t\t\t\t'is-current': true,\n\t\t\t\t'is-rich': hasRichData,\n\t\t\t\t'is-fetching': !! isFetching,\n\t\t\t\t'is-preview': true,\n\t\t\t\t'is-error': isEmptyURL,\n\t\t\t} ) }\n\t\t>\n\t\t\t<div className=\"block-editor-link-control__search-item-top\">\n\t\t\t\t<span className=\"block-editor-link-control__search-item-header\">\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'block-editor-link-control__search-item-icon',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-image': richData?.icon,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ icon }\n\t\t\t\t\t</span>\n\t\t\t\t\t<span className=\"block-editor-link-control__search-item-details\">\n\t\t\t\t\t\t{ ! isEmptyURL ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-item-title\"\n\t\t\t\t\t\t\t\t\thref={ value.url }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ stripHTML( displayTitle ) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\n\t\t\t\t\t\t\t\t{ value?.url && (\n\t\t\t\t\t\t\t\t\t<span className=\"block-editor-link-control__search-item-info\">\n\t\t\t\t\t\t\t\t\t\t{ displayURL }\n\t\t\t\t\t\t\t\t\t</span>\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\t\t<span className=\"block-editor-link-control__search-item-error-notice\">\n\t\t\t\t\t\t\t\t{ __( 'Link is empty' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\n\t\t\t\t<Button\n\t\t\t\t\ticon={ edit }\n\t\t\t\t\tlabel={ __( 'Edit' ) }\n\t\t\t\t\tclassName=\"block-editor-link-control__search-item-action\"\n\t\t\t\t\tonClick={ onEditClick }\n\t\t\t\t\ticonSize={ 24 }\n\t\t\t\t/>\n\t\t\t\t{ hasUnlinkControl && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\tlabel={ __( 'Unlink' ) }\n\t\t\t\t\t\tclassName=\"block-editor-link-control__search-item-action block-editor-link-control__unlink\"\n\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t\ticonSize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<ViewerSlot fillProps={ value } />\n\t\t\t</div>\n\n\t\t\t{ !! (\n\t\t\t\t( hasRichData &&\n\t\t\t\t\t( richData?.image || richData?.description ) ) ||\n\t\t\t\tisFetching\n\t\t\t) && (\n\t\t\t\t<div className=\"block-editor-link-control__search-item-bottom\">\n\t\t\t\t\t{ ( richData?.image || isFetching ) && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\taria-hidden={ ! richData?.image }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'block-editor-link-control__search-item-image',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-placeholder': ! richData?.image,\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\t\t{ richData?.image && (\n\t\t\t\t\t\t\t\t<img src={ richData?.image } alt=\"\" />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ( richData?.description || isFetching ) && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\taria-hidden={ ! richData?.description }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'block-editor-link-control__search-item-description',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-placeholder': ! richData?.description,\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\t\t{ richData?.description && (\n\t\t\t\t\t\t\t\t<Text truncate numberOfLines=\"2\">\n\t\t\t\t\t\t\t\t\t{ richData.description }\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"names":["classnames","__","Button","ExternalLink","__experimentalText","Text","filterURLForDisplay","safeDecodeURI","Icon","globe","info","linkOff","edit","__unstableStripHTML","stripHTML","ViewerSlot","useRichUrlData","LinkPreview","value","onEditClick","hasRichPreviews","hasUnlinkControl","onRemove","additionalControls","showRichPreviews","url","richData","isFetching","hasRichData","Object","keys","length","displayURL","isEmptyURL","displayTitle","title","icon","createElement","src","alt","size","className","Fragment","href","label","onClick","iconSize","fillProps","image","description","truncate","numberOfLines"],"sources":["@wordpress/block-editor/src/components/link-control/link-preview.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tExternalLink,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { filterURLForDisplay, safeDecodeURI } from '@wordpress/url';\nimport { Icon, globe, info, linkOff, edit } from '@wordpress/icons';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport { ViewerSlot } from './viewer-slot';\n\nimport useRichUrlData from './use-rich-url-data';\n\nexport default function LinkPreview( {\n\tvalue,\n\tonEditClick,\n\thasRichPreviews = false,\n\thasUnlinkControl = false,\n\tonRemove,\n\tadditionalControls,\n} ) {\n\t// Avoid fetching if rich previews are not desired.\n\tconst showRichPreviews = hasRichPreviews ? value?.url : null;\n\n\tconst { richData, isFetching } = useRichUrlData( showRichPreviews );\n\n\t// Rich data may be an empty object so test for that.\n\tconst hasRichData = richData && Object.keys( richData ).length;\n\n\tconst displayURL =\n\t\t( value && filterURLForDisplay( safeDecodeURI( value.url ), 16 ) ) ||\n\t\t'';\n\n\t// url can be undefined if the href attribute is unset\n\tconst isEmptyURL = ! value?.url?.length;\n\n\tconst displayTitle =\n\t\t! isEmptyURL &&\n\t\tstripHTML( richData?.title || value?.title || displayURL );\n\n\tlet icon;\n\n\tif ( richData?.icon ) {\n\t\ticon = <img src={ richData?.icon } alt=\"\" />;\n\t} else if ( isEmptyURL ) {\n\t\ticon = <Icon icon={ info } size={ 32 } />;\n\t} else {\n\t\ticon = <Icon icon={ globe } />;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\taria-label={ __( 'Currently selected' ) }\n\t\t\tclassName={ classnames( 'block-editor-link-control__search-item', {\n\t\t\t\t'is-current': true,\n\t\t\t\t'is-rich': hasRichData,\n\t\t\t\t'is-fetching': !! isFetching,\n\t\t\t\t'is-preview': true,\n\t\t\t\t'is-error': isEmptyURL,\n\t\t\t\t'is-url-title': displayTitle === displayURL,\n\t\t\t} ) }\n\t\t>\n\t\t\t<div className=\"block-editor-link-control__search-item-top\">\n\t\t\t\t<span className=\"block-editor-link-control__search-item-header\">\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'block-editor-link-control__search-item-icon',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-image': richData?.icon,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ icon }\n\t\t\t\t\t</span>\n\t\t\t\t\t<span className=\"block-editor-link-control__search-item-details\">\n\t\t\t\t\t\t{ ! isEmptyURL ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-item-title\"\n\t\t\t\t\t\t\t\t\thref={ value.url }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ displayTitle }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\n\t\t\t\t\t\t\t\t{ value?.url && displayTitle !== displayURL && (\n\t\t\t\t\t\t\t\t\t<span className=\"block-editor-link-control__search-item-info\">\n\t\t\t\t\t\t\t\t\t\t{ displayURL }\n\t\t\t\t\t\t\t\t\t</span>\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\t\t<span className=\"block-editor-link-control__search-item-error-notice\">\n\t\t\t\t\t\t\t\t{ __( 'Link is empty' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\n\t\t\t\t<Button\n\t\t\t\t\ticon={ edit }\n\t\t\t\t\tlabel={ __( 'Edit' ) }\n\t\t\t\t\tclassName=\"block-editor-link-control__search-item-action\"\n\t\t\t\t\tonClick={ onEditClick }\n\t\t\t\t\ticonSize={ 24 }\n\t\t\t\t/>\n\t\t\t\t{ hasUnlinkControl && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\tlabel={ __( 'Unlink' ) }\n\t\t\t\t\t\tclassName=\"block-editor-link-control__search-item-action block-editor-link-control__unlink\"\n\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t\ticonSize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<ViewerSlot fillProps={ value } />\n\t\t\t</div>\n\n\t\t\t{ !! (\n\t\t\t\t( hasRichData &&\n\t\t\t\t\t( richData?.image || richData?.description ) ) ||\n\t\t\t\tisFetching\n\t\t\t) && (\n\t\t\t\t<div className=\"block-editor-link-control__search-item-bottom\">\n\t\t\t\t\t{ ( richData?.image || isFetching ) && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\taria-hidden={ ! richData?.image }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'block-editor-link-control__search-item-image',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-placeholder': ! richData?.image,\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\t\t{ richData?.image && (\n\t\t\t\t\t\t\t\t<img src={ richData?.image } alt=\"\" />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ( richData?.description || isFetching ) && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\taria-hidden={ ! richData?.description }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'block-editor-link-control__search-item-description',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-placeholder': ! richData?.description,\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\t\t{ richData?.description && (\n\t\t\t\t\t\t\t\t<Text truncate numberOfLines=\"2\">\n\t\t\t\t\t\t\t\t\t{ richData.description }\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ additionalControls && additionalControls() }\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { createElement } from "@wordpress/element";
2
-
3
2
  /**
4
3
  * WordPress dependencies
5
4
  */
@@ -16,20 +15,17 @@ export const LinkControlSearchCreate = ({
16
15
  if (!searchTerm) {
17
16
  return null;
18
17
  }
19
-
20
18
  let text;
21
-
22
19
  if (buttonText) {
23
20
  text = typeof buttonText === 'function' ? buttonText(searchTerm) : buttonText;
24
21
  } else {
25
- text = createInterpolateElement(sprintf(
26
- /* translators: %s: search term. */
22
+ text = createInterpolateElement(sprintf( /* translators: %s: search term. */
27
23
  __('Create: <mark>%s</mark>'), searchTerm), {
28
24
  mark: createElement("mark", null)
29
25
  });
30
26
  }
31
-
32
- return createElement(MenuItem, { ...itemProps,
27
+ return createElement(MenuItem, {
28
+ ...itemProps,
33
29
  iconPosition: "left",
34
30
  icon: plus,
35
31
  className: "block-editor-link-control__search-item",
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-create-button.js"],"names":["__","sprintf","MenuItem","createInterpolateElement","plus","LinkControlSearchCreate","searchTerm","onClick","itemProps","buttonText","text","mark"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,wBAAT,QAAyC,oBAAzC;AACA,SAASC,IAAT,QAAqB,kBAArB;AAEA,OAAO,MAAMC,uBAAuB,GAAG,CAAE;AACxCC,EAAAA,UADwC;AAExCC,EAAAA,OAFwC;AAGxCC,EAAAA,SAHwC;AAIxCC,EAAAA;AAJwC,CAAF,KAKhC;AACN,MAAK,CAAEH,UAAP,EAAoB;AACnB,WAAO,IAAP;AACA;;AAED,MAAII,IAAJ;;AACA,MAAKD,UAAL,EAAkB;AACjBC,IAAAA,IAAI,GACH,OAAOD,UAAP,KAAsB,UAAtB,GACGA,UAAU,CAAEH,UAAF,CADb,GAEGG,UAHJ;AAIA,GALD,MAKO;AACNC,IAAAA,IAAI,GAAGP,wBAAwB,CAC9BF,OAAO;AACN;AACAD,IAAAA,EAAE,CAAE,yBAAF,CAFI,EAGNM,UAHM,CADuB,EAM9B;AAAEK,MAAAA,IAAI,EAAE;AAAR,KAN8B,CAA/B;AAQA;;AAED,SACC,cAAC,QAAD,OACMH,SADN;AAEC,IAAA,YAAY,EAAC,MAFd;AAGC,IAAA,IAAI,EAAGJ,IAHR;AAIC,IAAA,SAAS,EAAC,wCAJX;AAKC,IAAA,OAAO,EAAGG;AALX,KAOGG,IAPH,CADD;AAWA,CAtCM;AAwCP,eAAeL,uBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { plus } from '@wordpress/icons';\n\nexport const LinkControlSearchCreate = ( {\n\tsearchTerm,\n\tonClick,\n\titemProps,\n\tbuttonText,\n} ) => {\n\tif ( ! searchTerm ) {\n\t\treturn null;\n\t}\n\n\tlet text;\n\tif ( buttonText ) {\n\t\ttext =\n\t\t\ttypeof buttonText === 'function'\n\t\t\t\t? buttonText( searchTerm )\n\t\t\t\t: buttonText;\n\t} else {\n\t\ttext = createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t__( 'Create: <mark>%s</mark>' ),\n\t\t\t\tsearchTerm\n\t\t\t),\n\t\t\t{ mark: <mark /> }\n\t\t);\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...itemProps }\n\t\t\ticonPosition=\"left\"\n\t\t\ticon={ plus }\n\t\t\tclassName=\"block-editor-link-control__search-item\"\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ text }\n\t\t</MenuItem>\n\t);\n};\n\nexport default LinkControlSearchCreate;\n"]}
1
+ {"version":3,"names":["__","sprintf","MenuItem","createInterpolateElement","plus","LinkControlSearchCreate","searchTerm","onClick","itemProps","buttonText","text","mark","createElement","iconPosition","icon","className"],"sources":["@wordpress/block-editor/src/components/link-control/search-create-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { plus } from '@wordpress/icons';\n\nexport const LinkControlSearchCreate = ( {\n\tsearchTerm,\n\tonClick,\n\titemProps,\n\tbuttonText,\n} ) => {\n\tif ( ! searchTerm ) {\n\t\treturn null;\n\t}\n\n\tlet text;\n\tif ( buttonText ) {\n\t\ttext =\n\t\t\ttypeof buttonText === 'function'\n\t\t\t\t? buttonText( searchTerm )\n\t\t\t\t: buttonText;\n\t} else {\n\t\ttext = createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t__( 'Create: <mark>%s</mark>' ),\n\t\t\t\tsearchTerm\n\t\t\t),\n\t\t\t{ mark: <mark /> }\n\t\t);\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...itemProps }\n\t\t\ticonPosition=\"left\"\n\t\t\ticon={ plus }\n\t\t\tclassName=\"block-editor-link-control__search-item\"\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ text }\n\t\t</MenuItem>\n\t);\n};\n\nexport default LinkControlSearchCreate;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,wBAAwB,QAAQ,oBAAoB;AAC7D,SAASC,IAAI,QAAQ,kBAAkB;AAEvC,OAAO,MAAMC,uBAAuB,GAAGA,CAAE;EACxCC,UAAU;EACVC,OAAO;EACPC,SAAS;EACTC;AACD,CAAC,KAAM;EACN,IAAK,CAAEH,UAAU,EAAG;IACnB,OAAO,IAAI;EACZ;EAEA,IAAII,IAAI;EACR,IAAKD,UAAU,EAAG;IACjBC,IAAI,GACH,OAAOD,UAAU,KAAK,UAAU,GAC7BA,UAAU,CAAEH,UAAW,CAAC,GACxBG,UAAU;EACf,CAAC,MAAM;IACNC,IAAI,GAAGP,wBAAwB,CAC9BF,OAAO,EACN;IACAD,EAAE,CAAE,yBAA0B,CAAC,EAC/BM,UACD,CAAC,EACD;MAAEK,IAAI,EAAEC,aAAA,aAAO;IAAE,CAClB,CAAC;EACF;EAEA,OACCA,aAAA,CAACV,QAAQ;IAAA,GACHM,SAAS;IACdK,YAAY,EAAC,MAAM;IACnBC,IAAI,EAAGV,IAAM;IACbW,SAAS,EAAC,wCAAwC;IAClDR,OAAO,EAAGA;EAAS,GAEjBG,IACO,CAAC;AAEb,CAAC;AAED,eAAeL,uBAAuB"}
@@ -1,5 +1,4 @@
1
1
  import { createElement } from "@wordpress/element";
2
-
3
2
  /**
4
3
  * External dependencies
5
4
  */
@@ -7,25 +6,23 @@ import classnames from 'classnames';
7
6
  /**
8
7
  * WordPress dependencies
9
8
  */
10
-
11
9
  import { useInstanceId } from '@wordpress/compose';
12
10
  import { forwardRef, useState } from '@wordpress/element';
13
11
  import { __ } from '@wordpress/i18n';
12
+
14
13
  /**
15
14
  * Internal dependencies
16
15
  */
17
-
18
16
  import { URLInput } from '../';
19
17
  import LinkControlSearchResults from './search-results';
20
18
  import { CREATE_TYPE } from './constants';
21
- import useSearchHandler from './use-search-handler'; // Must be a function as otherwise URLInput will default
19
+ import useSearchHandler from './use-search-handler';
20
+
21
+ // Must be a function as otherwise URLInput will default
22
22
  // to the fetchLinkSuggestions passed in block editor settings
23
23
  // which will cause an unintended http request.
24
-
25
24
  const noopSearchHandler = () => Promise.resolve([]);
26
-
27
25
  const noop = () => {};
28
-
29
26
  const LinkControlSearchInput = forwardRef(({
30
27
  value,
31
28
  children,
@@ -37,7 +34,8 @@ const LinkControlSearchInput = forwardRef(({
37
34
  onChange = noop,
38
35
  onSelect = noop,
39
36
  showSuggestions = true,
40
- renderSuggestions = props => createElement(LinkControlSearchResults, { ...props
37
+ renderSuggestions = props => createElement(LinkControlSearchResults, {
38
+ ...props
41
39
  }),
42
40
  fetchSuggestions = null,
43
41
  allowDirectEntry = true,
@@ -51,6 +49,7 @@ const LinkControlSearchInput = forwardRef(({
51
49
  const searchHandler = showSuggestions ? fetchSuggestions || genericSearchHandler : noopSearchHandler;
52
50
  const instanceId = useInstanceId(LinkControlSearchInput);
53
51
  const [focusedSuggestion, setFocusedSuggestion] = useState();
52
+
54
53
  /**
55
54
  * Handles the user moving between different suggestions. Does not handle
56
55
  * choosing an individual item.
@@ -58,13 +57,12 @@ const LinkControlSearchInput = forwardRef(({
58
57
  * @param {string} selection the url of the selected suggestion.
59
58
  * @param {Object} suggestion the suggestion object.
60
59
  */
61
-
62
60
  const onInputChange = (selection, suggestion) => {
63
61
  onChange(selection);
64
62
  setFocusedSuggestion(suggestion);
65
63
  };
66
-
67
- const handleRenderSuggestions = props => renderSuggestions({ ...props,
64
+ const handleRenderSuggestions = props => renderSuggestions({
65
+ ...props,
68
66
  instanceId,
69
67
  withCreateSuggestion,
70
68
  createSuggestionButtonText,
@@ -73,41 +71,37 @@ const LinkControlSearchInput = forwardRef(({
73
71
  if (props.handleSuggestionClick) {
74
72
  props.handleSuggestionClick(suggestion);
75
73
  }
76
-
77
74
  onSuggestionSelected(suggestion);
78
75
  }
79
76
  });
80
-
81
77
  const onSuggestionSelected = async selectedSuggestion => {
82
78
  let suggestion = selectedSuggestion;
83
-
84
79
  if (CREATE_TYPE === selectedSuggestion.type) {
85
80
  // Create a new page and call onSelect with the output from the onCreateSuggestion callback.
86
81
  try {
87
82
  suggestion = await onCreateSuggestion(selectedSuggestion.title);
88
-
89
83
  if (suggestion?.url) {
90
84
  onSelect(suggestion);
91
85
  }
92
86
  } catch (e) {}
93
-
94
87
  return;
95
88
  }
96
-
97
89
  if (allowDirectEntry || suggestion && Object.keys(suggestion).length >= 1) {
98
90
  const {
99
91
  id,
100
92
  url,
101
93
  ...restLinkProps
102
94
  } = currentLink !== null && currentLink !== void 0 ? currentLink : {};
103
- onSelect( // Some direct entries don't have types or IDs, and we still need to clear the previous ones.
104
- { ...restLinkProps,
95
+ onSelect(
96
+ // Some direct entries don't have types or IDs, and we still need to clear the previous ones.
97
+ {
98
+ ...restLinkProps,
105
99
  ...suggestion
106
100
  }, suggestion);
107
101
  }
108
102
  };
109
-
110
- const inputClasses = classnames(className, {// 'has-no-label': ! hideLabelFromVision,
103
+ const inputClasses = classnames(className, {
104
+ // 'has-no-label': ! hideLabelFromVision,
111
105
  });
112
106
  return createElement("div", {
113
107
  className: "block-editor-link-control__search-input-container"
@@ -125,9 +119,10 @@ const LinkControlSearchInput = forwardRef(({
125
119
  __experimentalHandleURLSuggestions: true,
126
120
  __experimentalShowInitialSuggestions: showInitialSuggestions,
127
121
  onSubmit: (suggestion, event) => {
128
- const hasSuggestion = suggestion || focusedSuggestion; // If there is no suggestion and the value (ie: any manually entered URL) is empty
129
- // then don't allow submission otherwise we get empty links.
122
+ const hasSuggestion = suggestion || focusedSuggestion;
130
123
 
124
+ // If there is no suggestion and the value (ie: any manually entered URL) is empty
125
+ // then don't allow submission otherwise we get empty links.
131
126
  if (!hasSuggestion && !value?.trim()?.length) {
132
127
  event.preventDefault();
133
128
  } else {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-input.js"],"names":["classnames","useInstanceId","forwardRef","useState","__","URLInput","LinkControlSearchResults","CREATE_TYPE","useSearchHandler","noopSearchHandler","Promise","resolve","noop","LinkControlSearchInput","value","children","currentLink","className","placeholder","withCreateSuggestion","onCreateSuggestion","onChange","onSelect","showSuggestions","renderSuggestions","props","fetchSuggestions","allowDirectEntry","showInitialSuggestions","suggestionsQuery","withURLSuggestion","createSuggestionButtonText","hideLabelFromVision","ref","genericSearchHandler","searchHandler","instanceId","focusedSuggestion","setFocusedSuggestion","onInputChange","selection","suggestion","handleRenderSuggestions","handleSuggestionClick","onSuggestionSelected","selectedSuggestion","type","title","url","e","Object","keys","length","id","restLinkProps","inputClasses","event","hasSuggestion","trim","preventDefault"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { URLInput } from '../';\nimport LinkControlSearchResults from './search-results';\nimport { CREATE_TYPE } from './constants';\nimport useSearchHandler from './use-search-handler';\n\n// Must be a function as otherwise URLInput will default\n// to the fetchLinkSuggestions passed in block editor settings\n// which will cause an unintended http request.\nconst noopSearchHandler = () => Promise.resolve( [] );\n\nconst noop = () => {};\n\nconst LinkControlSearchInput = forwardRef(\n\t(\n\t\t{\n\t\t\tvalue,\n\t\t\tchildren,\n\t\t\tcurrentLink = {},\n\t\t\tclassName = null,\n\t\t\tplaceholder = null,\n\t\t\twithCreateSuggestion = false,\n\t\t\tonCreateSuggestion = noop,\n\t\t\tonChange = noop,\n\t\t\tonSelect = noop,\n\t\t\tshowSuggestions = true,\n\t\t\trenderSuggestions = ( props ) => (\n\t\t\t\t<LinkControlSearchResults { ...props } />\n\t\t\t),\n\t\t\tfetchSuggestions = null,\n\t\t\tallowDirectEntry = true,\n\t\t\tshowInitialSuggestions = false,\n\t\t\tsuggestionsQuery = {},\n\t\t\twithURLSuggestion = true,\n\t\t\tcreateSuggestionButtonText,\n\t\t\thideLabelFromVision = false,\n\t\t},\n\t\tref\n\t) => {\n\t\tconst genericSearchHandler = useSearchHandler(\n\t\t\tsuggestionsQuery,\n\t\t\tallowDirectEntry,\n\t\t\twithCreateSuggestion,\n\t\t\twithURLSuggestion\n\t\t);\n\n\t\tconst searchHandler = showSuggestions\n\t\t\t? fetchSuggestions || genericSearchHandler\n\t\t\t: noopSearchHandler;\n\n\t\tconst instanceId = useInstanceId( LinkControlSearchInput );\n\t\tconst [ focusedSuggestion, setFocusedSuggestion ] = useState();\n\n\t\t/**\n\t\t * Handles the user moving between different suggestions. Does not handle\n\t\t * choosing an individual item.\n\t\t *\n\t\t * @param {string} selection the url of the selected suggestion.\n\t\t * @param {Object} suggestion the suggestion object.\n\t\t */\n\t\tconst onInputChange = ( selection, suggestion ) => {\n\t\t\tonChange( selection );\n\t\t\tsetFocusedSuggestion( suggestion );\n\t\t};\n\n\t\tconst handleRenderSuggestions = ( props ) =>\n\t\t\trenderSuggestions( {\n\t\t\t\t...props,\n\t\t\t\tinstanceId,\n\t\t\t\twithCreateSuggestion,\n\t\t\t\tcreateSuggestionButtonText,\n\t\t\t\tsuggestionsQuery,\n\t\t\t\thandleSuggestionClick: ( suggestion ) => {\n\t\t\t\t\tif ( props.handleSuggestionClick ) {\n\t\t\t\t\t\tprops.handleSuggestionClick( suggestion );\n\t\t\t\t\t}\n\t\t\t\t\tonSuggestionSelected( suggestion );\n\t\t\t\t},\n\t\t\t} );\n\n\t\tconst onSuggestionSelected = async ( selectedSuggestion ) => {\n\t\t\tlet suggestion = selectedSuggestion;\n\t\t\tif ( CREATE_TYPE === selectedSuggestion.type ) {\n\t\t\t\t// Create a new page and call onSelect with the output from the onCreateSuggestion callback.\n\t\t\t\ttry {\n\t\t\t\t\tsuggestion = await onCreateSuggestion(\n\t\t\t\t\t\tselectedSuggestion.title\n\t\t\t\t\t);\n\t\t\t\t\tif ( suggestion?.url ) {\n\t\t\t\t\t\tonSelect( suggestion );\n\t\t\t\t\t}\n\t\t\t\t} catch ( e ) {}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tallowDirectEntry ||\n\t\t\t\t( suggestion && Object.keys( suggestion ).length >= 1 )\n\t\t\t) {\n\t\t\t\tconst { id, url, ...restLinkProps } = currentLink ?? {};\n\t\t\t\tonSelect(\n\t\t\t\t\t// Some direct entries don't have types or IDs, and we still need to clear the previous ones.\n\t\t\t\t\t{ ...restLinkProps, ...suggestion },\n\t\t\t\t\tsuggestion\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\n\t\tconst inputClasses = classnames( className, {\n\t\t\t// 'has-no-label': ! hideLabelFromVision,\n\t\t} );\n\n\t\treturn (\n\t\t\t<div className=\"block-editor-link-control__search-input-container\">\n\t\t\t\t<URLInput\n\t\t\t\t\tdisableSuggestions={ currentLink?.url === value }\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t\tclassName={ inputClasses }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onInputChange }\n\t\t\t\t\tplaceholder={ placeholder ?? __( 'Search or type url' ) }\n\t\t\t\t\t__experimentalRenderSuggestions={\n\t\t\t\t\t\tshowSuggestions ? handleRenderSuggestions : null\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFetchLinkSuggestions={ searchHandler }\n\t\t\t\t\t__experimentalHandleURLSuggestions={ true }\n\t\t\t\t\t__experimentalShowInitialSuggestions={\n\t\t\t\t\t\tshowInitialSuggestions\n\t\t\t\t\t}\n\t\t\t\t\tonSubmit={ ( suggestion, event ) => {\n\t\t\t\t\t\tconst hasSuggestion = suggestion || focusedSuggestion;\n\n\t\t\t\t\t\t// If there is no suggestion and the value (ie: any manually entered URL) is empty\n\t\t\t\t\t\t// then don't allow submission otherwise we get empty links.\n\t\t\t\t\t\tif ( ! hasSuggestion && ! value?.trim()?.length ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tonSuggestionSelected(\n\t\t\t\t\t\t\t\thasSuggestion || { url: value }\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tref={ ref }\n\t\t\t\t/>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t);\n\t}\n);\n\nexport default LinkControlSearchInput;\n"]}
1
+ {"version":3,"names":["classnames","useInstanceId","forwardRef","useState","__","URLInput","LinkControlSearchResults","CREATE_TYPE","useSearchHandler","noopSearchHandler","Promise","resolve","noop","LinkControlSearchInput","value","children","currentLink","className","placeholder","withCreateSuggestion","onCreateSuggestion","onChange","onSelect","showSuggestions","renderSuggestions","props","createElement","fetchSuggestions","allowDirectEntry","showInitialSuggestions","suggestionsQuery","withURLSuggestion","createSuggestionButtonText","hideLabelFromVision","ref","genericSearchHandler","searchHandler","instanceId","focusedSuggestion","setFocusedSuggestion","onInputChange","selection","suggestion","handleRenderSuggestions","handleSuggestionClick","onSuggestionSelected","selectedSuggestion","type","title","url","e","Object","keys","length","id","restLinkProps","inputClasses","disableSuggestions","__nextHasNoMarginBottom","label","__experimentalRenderSuggestions","__experimentalFetchLinkSuggestions","__experimentalHandleURLSuggestions","__experimentalShowInitialSuggestions","onSubmit","event","hasSuggestion","trim","preventDefault"],"sources":["@wordpress/block-editor/src/components/link-control/search-input.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { URLInput } from '../';\nimport LinkControlSearchResults from './search-results';\nimport { CREATE_TYPE } from './constants';\nimport useSearchHandler from './use-search-handler';\n\n// Must be a function as otherwise URLInput will default\n// to the fetchLinkSuggestions passed in block editor settings\n// which will cause an unintended http request.\nconst noopSearchHandler = () => Promise.resolve( [] );\n\nconst noop = () => {};\n\nconst LinkControlSearchInput = forwardRef(\n\t(\n\t\t{\n\t\t\tvalue,\n\t\t\tchildren,\n\t\t\tcurrentLink = {},\n\t\t\tclassName = null,\n\t\t\tplaceholder = null,\n\t\t\twithCreateSuggestion = false,\n\t\t\tonCreateSuggestion = noop,\n\t\t\tonChange = noop,\n\t\t\tonSelect = noop,\n\t\t\tshowSuggestions = true,\n\t\t\trenderSuggestions = ( props ) => (\n\t\t\t\t<LinkControlSearchResults { ...props } />\n\t\t\t),\n\t\t\tfetchSuggestions = null,\n\t\t\tallowDirectEntry = true,\n\t\t\tshowInitialSuggestions = false,\n\t\t\tsuggestionsQuery = {},\n\t\t\twithURLSuggestion = true,\n\t\t\tcreateSuggestionButtonText,\n\t\t\thideLabelFromVision = false,\n\t\t},\n\t\tref\n\t) => {\n\t\tconst genericSearchHandler = useSearchHandler(\n\t\t\tsuggestionsQuery,\n\t\t\tallowDirectEntry,\n\t\t\twithCreateSuggestion,\n\t\t\twithURLSuggestion\n\t\t);\n\n\t\tconst searchHandler = showSuggestions\n\t\t\t? fetchSuggestions || genericSearchHandler\n\t\t\t: noopSearchHandler;\n\n\t\tconst instanceId = useInstanceId( LinkControlSearchInput );\n\t\tconst [ focusedSuggestion, setFocusedSuggestion ] = useState();\n\n\t\t/**\n\t\t * Handles the user moving between different suggestions. Does not handle\n\t\t * choosing an individual item.\n\t\t *\n\t\t * @param {string} selection the url of the selected suggestion.\n\t\t * @param {Object} suggestion the suggestion object.\n\t\t */\n\t\tconst onInputChange = ( selection, suggestion ) => {\n\t\t\tonChange( selection );\n\t\t\tsetFocusedSuggestion( suggestion );\n\t\t};\n\n\t\tconst handleRenderSuggestions = ( props ) =>\n\t\t\trenderSuggestions( {\n\t\t\t\t...props,\n\t\t\t\tinstanceId,\n\t\t\t\twithCreateSuggestion,\n\t\t\t\tcreateSuggestionButtonText,\n\t\t\t\tsuggestionsQuery,\n\t\t\t\thandleSuggestionClick: ( suggestion ) => {\n\t\t\t\t\tif ( props.handleSuggestionClick ) {\n\t\t\t\t\t\tprops.handleSuggestionClick( suggestion );\n\t\t\t\t\t}\n\t\t\t\t\tonSuggestionSelected( suggestion );\n\t\t\t\t},\n\t\t\t} );\n\n\t\tconst onSuggestionSelected = async ( selectedSuggestion ) => {\n\t\t\tlet suggestion = selectedSuggestion;\n\t\t\tif ( CREATE_TYPE === selectedSuggestion.type ) {\n\t\t\t\t// Create a new page and call onSelect with the output from the onCreateSuggestion callback.\n\t\t\t\ttry {\n\t\t\t\t\tsuggestion = await onCreateSuggestion(\n\t\t\t\t\t\tselectedSuggestion.title\n\t\t\t\t\t);\n\t\t\t\t\tif ( suggestion?.url ) {\n\t\t\t\t\t\tonSelect( suggestion );\n\t\t\t\t\t}\n\t\t\t\t} catch ( e ) {}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tallowDirectEntry ||\n\t\t\t\t( suggestion && Object.keys( suggestion ).length >= 1 )\n\t\t\t) {\n\t\t\t\tconst { id, url, ...restLinkProps } = currentLink ?? {};\n\t\t\t\tonSelect(\n\t\t\t\t\t// Some direct entries don't have types or IDs, and we still need to clear the previous ones.\n\t\t\t\t\t{ ...restLinkProps, ...suggestion },\n\t\t\t\t\tsuggestion\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\n\t\tconst inputClasses = classnames( className, {\n\t\t\t// 'has-no-label': ! hideLabelFromVision,\n\t\t} );\n\n\t\treturn (\n\t\t\t<div className=\"block-editor-link-control__search-input-container\">\n\t\t\t\t<URLInput\n\t\t\t\t\tdisableSuggestions={ currentLink?.url === value }\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t\tclassName={ inputClasses }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onInputChange }\n\t\t\t\t\tplaceholder={ placeholder ?? __( 'Search or type url' ) }\n\t\t\t\t\t__experimentalRenderSuggestions={\n\t\t\t\t\t\tshowSuggestions ? handleRenderSuggestions : null\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFetchLinkSuggestions={ searchHandler }\n\t\t\t\t\t__experimentalHandleURLSuggestions={ true }\n\t\t\t\t\t__experimentalShowInitialSuggestions={\n\t\t\t\t\t\tshowInitialSuggestions\n\t\t\t\t\t}\n\t\t\t\t\tonSubmit={ ( suggestion, event ) => {\n\t\t\t\t\t\tconst hasSuggestion = suggestion || focusedSuggestion;\n\n\t\t\t\t\t\t// If there is no suggestion and the value (ie: any manually entered URL) is empty\n\t\t\t\t\t\t// then don't allow submission otherwise we get empty links.\n\t\t\t\t\t\tif ( ! hasSuggestion && ! value?.trim()?.length ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tonSuggestionSelected(\n\t\t\t\t\t\t\t\thasSuggestion || { url: value }\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tref={ ref }\n\t\t\t\t/>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t);\n\t}\n);\n\nexport default LinkControlSearchInput;\n"],"mappings":"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"}