@wordpress/block-editor 8.0.1 → 8.0.5

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 (1140) hide show
  1. package/build/components/alignment-control/ui.js +11 -9
  2. package/build/components/alignment-control/ui.js.map +1 -1
  3. package/build/components/autocomplete/index.js +5 -4
  4. package/build/components/autocomplete/index.js.map +1 -1
  5. package/build/components/block-actions/index.js +12 -8
  6. package/build/components/block-actions/index.js.map +1 -1
  7. package/build/components/block-alignment-control/ui.js +21 -17
  8. package/build/components/block-alignment-control/ui.js.map +1 -1
  9. package/build/components/block-alignment-control/use-available-alignments.js +9 -4
  10. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  11. package/build/components/block-alignment-matrix-control/index.js +6 -4
  12. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  13. package/build/components/block-breadcrumb/index.js +4 -3
  14. package/build/components/block-breadcrumb/index.js.map +1 -1
  15. package/build/components/block-caption/index.native.js +34 -29
  16. package/build/components/block-caption/index.native.js.map +1 -1
  17. package/build/components/block-card/index.js +8 -6
  18. package/build/components/block-card/index.js.map +1 -1
  19. package/build/components/block-compare/block-view.js +9 -8
  20. package/build/components/block-compare/block-view.js.map +1 -1
  21. package/build/components/block-compare/index.js +9 -7
  22. package/build/components/block-compare/index.js.map +1 -1
  23. package/build/components/block-content-overlay/index.js +7 -6
  24. package/build/components/block-content-overlay/index.js.map +1 -1
  25. package/build/components/block-context/index.js +5 -4
  26. package/build/components/block-context/index.js.map +1 -1
  27. package/build/components/block-controls/fill.js +7 -6
  28. package/build/components/block-controls/fill.js.map +1 -1
  29. package/build/components/block-controls/slot.js +5 -4
  30. package/build/components/block-controls/slot.js.map +1 -1
  31. package/build/components/block-controls/slot.native.js +5 -4
  32. package/build/components/block-controls/slot.native.js.map +1 -1
  33. package/build/components/block-draggable/draggable-chip.js +5 -4
  34. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  35. package/build/components/block-draggable/index.js +13 -11
  36. package/build/components/block-draggable/index.js.map +1 -1
  37. package/build/components/block-edit/context.js +1 -1
  38. package/build/components/block-full-height-alignment-control/index.js +7 -6
  39. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  40. package/build/components/block-icon/index.js +7 -5
  41. package/build/components/block-icon/index.js.map +1 -1
  42. package/build/components/block-icon/index.native.js +8 -6
  43. package/build/components/block-icon/index.native.js.map +1 -1
  44. package/build/components/block-inspector/index.js +20 -15
  45. package/build/components/block-inspector/index.js.map +1 -1
  46. package/build/components/block-list/block-html.js +4 -3
  47. package/build/components/block-list/block-html.js.map +1 -1
  48. package/build/components/block-list/block-invalid-warning.js +28 -20
  49. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  50. package/build/components/block-list/block-invalid-warning.native.js +5 -4
  51. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  52. package/build/components/block-list/block-list-item.native.js +6 -5
  53. package/build/components/block-list/block-list-item.native.js.map +1 -1
  54. package/build/components/block-list/block-selection-button.native.js +11 -9
  55. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  56. package/build/components/block-list/block.js +40 -33
  57. package/build/components/block-list/block.js.map +1 -1
  58. package/build/components/block-list/block.native.js +35 -29
  59. package/build/components/block-list/block.native.js.map +1 -1
  60. package/build/components/block-list/index.js +14 -12
  61. package/build/components/block-list/index.js.map +1 -1
  62. package/build/components/block-list/index.native.js +22 -17
  63. package/build/components/block-list/index.native.js.map +1 -1
  64. package/build/components/block-list/insertion-point.native.js +4 -3
  65. package/build/components/block-list/insertion-point.native.js.map +1 -1
  66. package/build/components/block-list/layout.js +8 -6
  67. package/build/components/block-list/layout.js.map +1 -1
  68. package/build/components/block-list/subdirectory-icon.js +13 -10
  69. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  70. package/build/components/block-list/use-block-props/index.js +5 -3
  71. package/build/components/block-list/use-block-props/index.js.map +1 -1
  72. package/build/components/block-list/use-block-props/index.native.js +2 -1
  73. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  74. package/build/components/block-list/use-block-props/use-block-refs.js +2 -2
  75. package/build/components/block-list/use-block-props/use-multi-selection.js +9 -6
  76. package/build/components/block-list/use-block-props/use-multi-selection.js.map +1 -1
  77. package/build/components/block-list-appender/index.js +16 -13
  78. package/build/components/block-list-appender/index.js.map +1 -1
  79. package/build/components/block-list-appender/index.native.js +14 -11
  80. package/build/components/block-list-appender/index.native.js.map +1 -1
  81. package/build/components/block-media-update-progress/index.native.js +1 -1
  82. package/build/components/block-mobile-toolbar/block-actions-menu.native.js +46 -42
  83. package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  84. package/build/components/block-mobile-toolbar/index.js +4 -3
  85. package/build/components/block-mobile-toolbar/index.js.map +1 -1
  86. package/build/components/block-mobile-toolbar/index.native.js +33 -25
  87. package/build/components/block-mobile-toolbar/index.native.js.map +1 -1
  88. package/build/components/block-mover/button.js +8 -7
  89. package/build/components/block-mover/button.js.map +1 -1
  90. package/build/components/block-mover/index.js +15 -13
  91. package/build/components/block-mover/index.js.map +1 -1
  92. package/build/components/block-mover/index.native.js +23 -20
  93. package/build/components/block-mover/index.native.js.map +1 -1
  94. package/build/components/block-mover/mover-description.native.js +10 -7
  95. package/build/components/block-mover/mover-description.native.js.map +1 -1
  96. package/build/components/block-navigation/dropdown.js +26 -21
  97. package/build/components/block-navigation/dropdown.js.map +1 -1
  98. package/build/components/block-pattern-setup/index.js +26 -22
  99. package/build/components/block-pattern-setup/index.js.map +1 -1
  100. package/build/components/block-pattern-setup/setup-toolbar.js +46 -39
  101. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  102. package/build/components/block-patterns-list/index.js +44 -39
  103. package/build/components/block-patterns-list/index.js.map +1 -1
  104. package/build/components/block-preview/auto.js +6 -4
  105. package/build/components/block-preview/auto.js.map +1 -1
  106. package/build/components/block-preview/index.js +8 -7
  107. package/build/components/block-preview/index.js.map +1 -1
  108. package/build/components/block-preview/live.js +4 -3
  109. package/build/components/block-preview/live.js.map +1 -1
  110. package/build/components/block-selection-clearer/index.js +1 -1
  111. package/build/components/block-settings/button.native.js +10 -7
  112. package/build/components/block-settings/button.native.js.map +1 -1
  113. package/build/components/block-settings/container.native.js +7 -6
  114. package/build/components/block-settings/container.native.js.map +1 -1
  115. package/build/components/block-settings/index.native.js +4 -2
  116. package/build/components/block-settings/index.native.js.map +1 -1
  117. package/build/components/block-settings-menu/block-convert-button.js +7 -5
  118. package/build/components/block-settings-menu/block-convert-button.js.map +1 -1
  119. package/build/components/block-settings-menu/block-html-convert-button.js +14 -10
  120. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  121. package/build/components/block-settings-menu/block-mode-toggle.js +25 -19
  122. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  123. package/build/components/block-settings-menu/block-settings-dropdown.js +74 -66
  124. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  125. package/build/components/block-settings-menu/index.js +5 -4
  126. package/build/components/block-settings-menu/index.js.map +1 -1
  127. package/build/components/block-settings-menu-controls/index.js +8 -6
  128. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  129. package/build/components/block-styles/index.js +20 -17
  130. package/build/components/block-styles/index.js.map +1 -1
  131. package/build/components/block-styles/index.native.js +6 -4
  132. package/build/components/block-styles/index.native.js.map +1 -1
  133. package/build/components/block-styles/preview.native.js +7 -6
  134. package/build/components/block-styles/preview.native.js.map +1 -1
  135. package/build/components/block-switcher/block-styles-menu.js +5 -4
  136. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  137. package/build/components/block-switcher/block-transformations-menu.js +7 -6
  138. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  139. package/build/components/block-switcher/block-transformations-menu.native.js +9 -8
  140. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  141. package/build/components/block-switcher/index.js +42 -34
  142. package/build/components/block-switcher/index.js.map +1 -1
  143. package/build/components/block-switcher/pattern-transformations-menu.js +22 -18
  144. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  145. package/build/components/block-switcher/preview-block-popover.js +4 -3
  146. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  147. package/build/components/block-switcher/use-transformed-patterns.js +1 -1
  148. package/build/components/block-switcher/utils.js +2 -1
  149. package/build/components/block-switcher/utils.js.map +1 -1
  150. package/build/components/block-title/index.js +4 -3
  151. package/build/components/block-title/index.js.map +1 -1
  152. package/build/components/block-toolbar/index.js +4 -3
  153. package/build/components/block-toolbar/index.js.map +1 -1
  154. package/build/components/block-toolbar/utils.js +13 -11
  155. package/build/components/block-toolbar/utils.js.map +1 -1
  156. package/build/components/block-tools/back-compat.js +8 -5
  157. package/build/components/block-tools/back-compat.js.map +1 -1
  158. package/build/components/block-tools/block-contextual-toolbar.js +6 -5
  159. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  160. package/build/components/block-tools/block-popover.js +15 -13
  161. package/build/components/block-tools/block-popover.js.map +1 -1
  162. package/build/components/block-tools/block-selection-button.js +6 -5
  163. package/build/components/block-tools/block-selection-button.js.map +1 -1
  164. package/build/components/block-tools/index.js +6 -5
  165. package/build/components/block-tools/index.js.map +1 -1
  166. package/build/components/block-tools/insertion-point.js +12 -10
  167. package/build/components/block-tools/insertion-point.js.map +1 -1
  168. package/build/components/block-types-list/index.js +9 -8
  169. package/build/components/block-types-list/index.js.map +1 -1
  170. package/build/components/block-types-list/index.native.js +19 -15
  171. package/build/components/block-types-list/index.native.js.map +1 -1
  172. package/build/components/block-variation-picker/index.js +9 -8
  173. package/build/components/block-variation-picker/index.js.map +1 -1
  174. package/build/components/block-variation-picker/index.native.js +9 -7
  175. package/build/components/block-variation-picker/index.native.js.map +1 -1
  176. package/build/components/block-variation-transforms/index.js +22 -15
  177. package/build/components/block-variation-transforms/index.js.map +1 -1
  178. package/build/components/block-vertical-alignment-control/ui.js +9 -7
  179. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  180. package/build/components/border-radius-control/all-input-control.js +6 -5
  181. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  182. package/build/components/border-radius-control/index.js +5 -4
  183. package/build/components/border-radius-control/index.js.map +1 -1
  184. package/build/components/border-radius-control/input-controls.js +16 -11
  185. package/build/components/border-radius-control/input-controls.js.map +1 -1
  186. package/build/components/border-radius-control/linked-button.js +5 -4
  187. package/build/components/border-radius-control/linked-button.js.map +1 -1
  188. package/build/components/border-radius-control/utils.js +10 -5
  189. package/build/components/border-radius-control/utils.js.map +1 -1
  190. package/build/components/border-style-control/index.js +5 -4
  191. package/build/components/border-style-control/index.js.map +1 -1
  192. package/build/components/button-block-appender/index.js +15 -13
  193. package/build/components/button-block-appender/index.js.map +1 -1
  194. package/build/components/button-block-appender/index.native.js +28 -24
  195. package/build/components/button-block-appender/index.native.js.map +1 -1
  196. package/build/components/caption/index.native.js +44 -41
  197. package/build/components/caption/index.native.js.map +1 -1
  198. package/build/components/color-palette/control.js +6 -5
  199. package/build/components/color-palette/control.js.map +1 -1
  200. package/build/components/color-style-selector/index.js +43 -34
  201. package/build/components/color-style-selector/index.js.map +1 -1
  202. package/build/components/colors/color-panel.js +21 -18
  203. package/build/components/colors/color-panel.js.map +1 -1
  204. package/build/components/colors/index.js +10 -8
  205. package/build/components/colors/index.js.map +1 -1
  206. package/build/components/colors/utils.js +7 -4
  207. package/build/components/colors/utils.js.map +1 -1
  208. package/build/components/colors/with-colors.js +17 -6
  209. package/build/components/colors/with-colors.js.map +1 -1
  210. package/build/components/colors-gradients/control.js +16 -15
  211. package/build/components/colors-gradients/control.js.map +1 -1
  212. package/build/components/colors-gradients/panel-color-gradient-settings.js +56 -49
  213. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  214. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +28 -24
  215. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  216. package/build/components/contrast-checker/index.js +18 -15
  217. package/build/components/contrast-checker/index.js.map +1 -1
  218. package/build/components/convert-to-group-buttons/index.js +9 -8
  219. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  220. package/build/components/copy-handler/index.js +6 -5
  221. package/build/components/copy-handler/index.js.map +1 -1
  222. package/build/components/default-block-appender/index.js +10 -8
  223. package/build/components/default-block-appender/index.js.map +1 -1
  224. package/build/components/default-block-appender/index.native.js +10 -8
  225. package/build/components/default-block-appender/index.native.js.map +1 -1
  226. package/build/components/default-style-picker/index.js +14 -10
  227. package/build/components/default-style-picker/index.js.map +1 -1
  228. package/build/components/duotone-control/index.js +15 -12
  229. package/build/components/duotone-control/index.js.map +1 -1
  230. package/build/components/editable-text/index.js +6 -5
  231. package/build/components/editable-text/index.js.map +1 -1
  232. package/build/components/editor-styles/index.js +4 -3
  233. package/build/components/editor-styles/index.js.map +1 -1
  234. package/build/components/floating-toolbar/index.native.js +8 -7
  235. package/build/components/floating-toolbar/index.native.js.map +1 -1
  236. package/build/components/font-appearance-control/index.js +26 -19
  237. package/build/components/font-appearance-control/index.js.map +1 -1
  238. package/build/components/font-family/index.js +12 -10
  239. package/build/components/font-family/index.js.map +1 -1
  240. package/build/components/font-sizes/index.js +6 -6
  241. package/build/components/font-sizes/index.native.js +6 -6
  242. package/build/components/font-sizes/utils.js +2 -2
  243. package/build/components/font-sizes/with-font-sizes.js +11 -5
  244. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  245. package/build/components/gradients/use-gradient.js +7 -6
  246. package/build/components/gradients/use-gradient.js.map +1 -1
  247. package/build/components/iframe/index.js +28 -22
  248. package/build/components/iframe/index.js.map +1 -1
  249. package/build/components/image-editor/aspect-ratio-dropdown.js +90 -82
  250. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  251. package/build/components/image-editor/constants.js +1 -1
  252. package/build/components/image-editor/context.js +11 -10
  253. package/build/components/image-editor/context.js.map +1 -1
  254. package/build/components/image-editor/cropper.js +9 -8
  255. package/build/components/image-editor/cropper.js.map +1 -1
  256. package/build/components/image-editor/index.js +10 -9
  257. package/build/components/image-editor/index.js.map +1 -1
  258. package/build/components/image-editor/use-save-image.js +12 -11
  259. package/build/components/image-editor/use-save-image.js.map +1 -1
  260. package/build/components/image-editor/use-transform-image.js +6 -5
  261. package/build/components/image-editor/use-transform-image.js.map +1 -1
  262. package/build/components/image-editor/zoom-dropdown.js +13 -10
  263. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  264. package/build/components/image-size-control/index.js +12 -11
  265. package/build/components/image-size-control/index.js.map +1 -1
  266. package/build/components/index.js +210 -208
  267. package/build/components/index.js.map +1 -1
  268. package/build/components/index.native.js +112 -110
  269. package/build/components/index.native.js.map +1 -1
  270. package/build/components/inner-blocks/button-block-appender.js +8 -7
  271. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  272. package/build/components/inner-blocks/default-block-appender.js +9 -7
  273. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  274. package/build/components/inner-blocks/index.js +4 -2
  275. package/build/components/inner-blocks/index.js.map +1 -1
  276. package/build/components/inner-blocks/index.native.js +4 -2
  277. package/build/components/inner-blocks/index.native.js.map +1 -1
  278. package/build/components/inserter/block-patterns-explorer/explorer.js +10 -8
  279. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  280. package/build/components/inserter/block-patterns-explorer/patterns-list.js +12 -9
  281. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  282. package/build/components/inserter/block-patterns-explorer/sidebar.js +24 -20
  283. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  284. package/build/components/inserter/block-patterns-tab.js +26 -20
  285. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  286. package/build/components/inserter/block-types-tab.js +9 -7
  287. package/build/components/inserter/block-types-tab.js.map +1 -1
  288. package/build/components/inserter/block-types-tab.native.js +9 -8
  289. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  290. package/build/components/inserter/hooks/use-block-type-impressions.native.js +5 -3
  291. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  292. package/build/components/inserter/hooks/use-block-types-state.js +6 -5
  293. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  294. package/build/components/inserter/hooks/use-insertion-point.js +11 -9
  295. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  296. package/build/components/inserter/index.js +36 -28
  297. package/build/components/inserter/index.js.map +1 -1
  298. package/build/components/inserter/index.native.js +46 -37
  299. package/build/components/inserter/index.native.js.map +1 -1
  300. package/build/components/inserter/library.js +12 -11
  301. package/build/components/inserter/library.js.map +1 -1
  302. package/build/components/inserter/menu.js +12 -11
  303. package/build/components/inserter/menu.js.map +1 -1
  304. package/build/components/inserter/menu.native.js +31 -27
  305. package/build/components/inserter/menu.native.js.map +1 -1
  306. package/build/components/inserter/panel.js +6 -5
  307. package/build/components/inserter/panel.js.map +1 -1
  308. package/build/components/inserter/pattern-panel.js +7 -6
  309. package/build/components/inserter/pattern-panel.js.map +1 -1
  310. package/build/components/inserter/preview-panel.js +4 -3
  311. package/build/components/inserter/preview-panel.js.map +1 -1
  312. package/build/components/inserter/quick-inserter.js +7 -6
  313. package/build/components/inserter/quick-inserter.js.map +1 -1
  314. package/build/components/inserter/reusable-blocks-tab.js +18 -13
  315. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  316. package/build/components/inserter/reusable-blocks-tab.native.js +6 -5
  317. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  318. package/build/components/inserter/search-items.js +23 -7
  319. package/build/components/inserter/search-items.js.map +1 -1
  320. package/build/components/inserter/search-results.js +15 -14
  321. package/build/components/inserter/search-results.js.map +1 -1
  322. package/build/components/inserter/search-results.native.js +11 -10
  323. package/build/components/inserter/search-results.native.js.map +1 -1
  324. package/build/components/inserter/tabs.js +7 -6
  325. package/build/components/inserter/tabs.js.map +1 -1
  326. package/build/components/inserter/tabs.native.js +55 -37
  327. package/build/components/inserter/tabs.native.js.map +1 -1
  328. package/build/components/inserter/utils.native.js +10 -8
  329. package/build/components/inserter/utils.native.js.map +1 -1
  330. package/build/components/inserter-draggable-blocks/index.js +12 -10
  331. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  332. package/build/components/inserter-list-item/index.js +79 -73
  333. package/build/components/inserter-list-item/index.js.map +1 -1
  334. package/build/components/inserter-listbox/index.js +8 -7
  335. package/build/components/inserter-listbox/index.js.map +1 -1
  336. package/build/components/inserter-listbox/item.js +7 -6
  337. package/build/components/inserter-listbox/item.js.map +1 -1
  338. package/build/components/inspector-controls/block-support-slot-container.js +5 -4
  339. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  340. package/build/components/inspector-controls/block-support-tools-panel.js +8 -6
  341. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  342. package/build/components/inspector-controls/fill.js +5 -4
  343. package/build/components/inspector-controls/fill.js.map +1 -1
  344. package/build/components/inspector-controls/fill.native.js +6 -5
  345. package/build/components/inspector-controls/fill.native.js.map +1 -1
  346. package/build/components/inspector-controls/slot.js +7 -6
  347. package/build/components/inspector-controls/slot.js.map +1 -1
  348. package/build/components/inspector-controls/slot.native.js +5 -4
  349. package/build/components/inspector-controls/slot.native.js.map +1 -1
  350. package/build/components/justify-content-control/ui.js +10 -8
  351. package/build/components/justify-content-control/ui.js.map +1 -1
  352. package/build/components/letter-spacing-control/index.js +6 -5
  353. package/build/components/letter-spacing-control/index.js.map +1 -1
  354. package/build/components/line-height-control/index.js +5 -4
  355. package/build/components/line-height-control/index.js.map +1 -1
  356. package/build/components/line-height-control/index.native.js +5 -4
  357. package/build/components/line-height-control/index.native.js.map +1 -1
  358. package/build/components/line-height-control/utils.js +1 -1
  359. package/build/components/link-control/index.js +25 -23
  360. package/build/components/link-control/index.js.map +1 -1
  361. package/build/components/link-control/link-preview.js +8 -7
  362. package/build/components/link-control/link-preview.js.map +1 -1
  363. package/build/components/link-control/search-create-button.js +9 -7
  364. package/build/components/link-control/search-create-button.js.map +1 -1
  365. package/build/components/link-control/search-input.js +21 -20
  366. package/build/components/link-control/search-input.js.map +1 -1
  367. package/build/components/link-control/search-item.js +10 -9
  368. package/build/components/link-control/search-item.js.map +1 -1
  369. package/build/components/link-control/search-results.js +15 -14
  370. package/build/components/link-control/search-results.js.map +1 -1
  371. package/build/components/link-control/settings-drawer.js +7 -5
  372. package/build/components/link-control/settings-drawer.js.map +1 -1
  373. package/build/components/link-control/use-search-handler.js +5 -4
  374. package/build/components/link-control/use-search-handler.js.map +1 -1
  375. package/build/components/link-control/viewer-slot.js +1 -1
  376. package/build/components/list-view/appender.js +27 -23
  377. package/build/components/list-view/appender.js.map +1 -1
  378. package/build/components/list-view/block-contents.js +32 -28
  379. package/build/components/list-view/block-contents.js.map +1 -1
  380. package/build/components/list-view/block-select-button.js +18 -17
  381. package/build/components/list-view/block-select-button.js.map +1 -1
  382. package/build/components/list-view/block.js +79 -66
  383. package/build/components/list-view/block.js.map +1 -1
  384. package/build/components/list-view/drop-indicator.js +5 -4
  385. package/build/components/list-view/drop-indicator.js.map +1 -1
  386. package/build/components/list-view/expander.js +4 -3
  387. package/build/components/list-view/expander.js.map +1 -1
  388. package/build/components/list-view/index.js +11 -10
  389. package/build/components/list-view/index.js.map +1 -1
  390. package/build/components/list-view/leaf.js +11 -10
  391. package/build/components/list-view/leaf.js.map +1 -1
  392. package/build/components/list-view/list-item.js +8 -7
  393. package/build/components/list-view/list-item.js.map +1 -1
  394. package/build/components/media-placeholder/index.js +86 -68
  395. package/build/components/media-placeholder/index.js.map +1 -1
  396. package/build/components/media-placeholder/index.native.js +5 -4
  397. package/build/components/media-placeholder/index.native.js.map +1 -1
  398. package/build/components/media-replace-flow/index.js +85 -72
  399. package/build/components/media-replace-flow/index.js.map +1 -1
  400. package/build/components/media-upload/check.js +5 -4
  401. package/build/components/media-upload/check.js.map +1 -1
  402. package/build/components/media-upload/index.native.js +1 -1
  403. package/build/components/media-upload-progress/index.native.js +1 -1
  404. package/build/components/multi-selection-inspector/index.js +4 -3
  405. package/build/components/multi-selection-inspector/index.js.map +1 -1
  406. package/build/components/navigable-toolbar/index.js +8 -7
  407. package/build/components/navigable-toolbar/index.js.map +1 -1
  408. package/build/components/observe-typing/index.js +5 -4
  409. package/build/components/observe-typing/index.js.map +1 -1
  410. package/build/components/panel-color-settings/index.js +16 -12
  411. package/build/components/panel-color-settings/index.js.map +1 -1
  412. package/build/components/plain-text/index.js +6 -4
  413. package/build/components/plain-text/index.js.map +1 -1
  414. package/build/components/preview-options/index.js +8 -7
  415. package/build/components/preview-options/index.js.map +1 -1
  416. package/build/components/provider/block-refs-provider.js +5 -4
  417. package/build/components/provider/block-refs-provider.js.map +1 -1
  418. package/build/components/provider/use-block-sync.js +8 -7
  419. package/build/components/provider/use-block-sync.js.map +1 -1
  420. package/build/components/provider/with-registry-provider.js +7 -5
  421. package/build/components/provider/with-registry-provider.js.map +1 -1
  422. package/build/components/responsive-block-control/label.js +6 -5
  423. package/build/components/responsive-block-control/label.js.map +1 -1
  424. package/build/components/rich-text/embed-handler-picker.native.js +7 -5
  425. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  426. package/build/components/rich-text/file-paste-handler.js +6 -3
  427. package/build/components/rich-text/file-paste-handler.js.map +1 -1
  428. package/build/components/rich-text/format-edit.js +8 -7
  429. package/build/components/rich-text/format-edit.js.map +1 -1
  430. package/build/components/rich-text/format-toolbar/index.js +18 -9
  431. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  432. package/build/components/rich-text/format-toolbar-container.js +6 -4
  433. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  434. package/build/components/rich-text/index.js +45 -41
  435. package/build/components/rich-text/index.js.map +1 -1
  436. package/build/components/rich-text/index.native.js +145 -122
  437. package/build/components/rich-text/index.native.js.map +1 -1
  438. package/build/components/rich-text/input-event.js +5 -4
  439. package/build/components/rich-text/input-event.js.map +1 -1
  440. package/build/components/rich-text/shortcut.js +6 -5
  441. package/build/components/rich-text/shortcut.js.map +1 -1
  442. package/build/components/rich-text/split-value.js +10 -8
  443. package/build/components/rich-text/split-value.js.map +1 -1
  444. package/build/components/rich-text/toolbar-button.js +7 -6
  445. package/build/components/rich-text/toolbar-button.js.map +1 -1
  446. package/build/components/rich-text/use-caret-in-format.js +4 -3
  447. package/build/components/rich-text/use-caret-in-format.js.map +1 -1
  448. package/build/components/rich-text/use-enter.js +6 -3
  449. package/build/components/rich-text/use-enter.js.map +1 -1
  450. package/build/components/rich-text/use-format-types.js +13 -10
  451. package/build/components/rich-text/use-format-types.js.map +1 -1
  452. package/build/components/rich-text/use-input-rules.js +15 -9
  453. package/build/components/rich-text/use-input-rules.js.map +1 -1
  454. package/build/components/rich-text/use-mark-persistent.js +5 -4
  455. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  456. package/build/components/rich-text/use-paste-handler.js +28 -4
  457. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  458. package/build/components/rich-text/utils.js +9 -7
  459. package/build/components/rich-text/utils.js.map +1 -1
  460. package/build/components/skip-to-selected-block/index.js +4 -3
  461. package/build/components/skip-to-selected-block/index.js.map +1 -1
  462. package/build/components/text-decoration-control/index.js +5 -4
  463. package/build/components/text-decoration-control/index.js.map +1 -1
  464. package/build/components/text-transform-control/index.js +5 -4
  465. package/build/components/text-transform-control/index.js.map +1 -1
  466. package/build/components/tool-selector/index.js +16 -13
  467. package/build/components/tool-selector/index.js.map +1 -1
  468. package/build/components/typewriter/index.js +10 -7
  469. package/build/components/typewriter/index.js.map +1 -1
  470. package/build/components/ungroup-button/index.native.js +12 -9
  471. package/build/components/ungroup-button/index.native.js.map +1 -1
  472. package/build/components/unit-control/index.js +5 -4
  473. package/build/components/unit-control/index.js.map +1 -1
  474. package/build/components/url-input/index.js +12 -9
  475. package/build/components/url-input/index.js.map +1 -1
  476. package/build/components/url-input/index.native.js +8 -6
  477. package/build/components/url-input/index.native.js.map +1 -1
  478. package/build/components/url-popover/image-url-input-ui.js +12 -11
  479. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  480. package/build/components/url-popover/index.js +9 -8
  481. package/build/components/url-popover/index.js.map +1 -1
  482. package/build/components/url-popover/link-editor.js +8 -7
  483. package/build/components/url-popover/link-editor.js.map +1 -1
  484. package/build/components/url-popover/link-viewer-url.js +6 -5
  485. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  486. package/build/components/url-popover/link-viewer.js +9 -8
  487. package/build/components/url-popover/link-viewer.js.map +1 -1
  488. package/build/components/use-block-drop-zone/index.js +9 -8
  489. package/build/components/use-block-drop-zone/index.js.map +1 -1
  490. package/build/components/use-moving-animation/index.js +17 -13
  491. package/build/components/use-moving-animation/index.js.map +1 -1
  492. package/build/components/use-no-recursive-renders/index.js +10 -6
  493. package/build/components/use-no-recursive-renders/index.js.map +1 -1
  494. package/build/components/use-on-block-drop/index.js +2 -2
  495. package/build/components/use-setting/index.js +1 -1
  496. package/build/components/use-setting/index.js.map +1 -1
  497. package/build/components/warning/index.js +7 -6
  498. package/build/components/warning/index.js.map +1 -1
  499. package/build/components/warning/index.native.js +10 -9
  500. package/build/components/warning/index.native.js.map +1 -1
  501. package/build/components/writing-flow/index.js +6 -5
  502. package/build/components/writing-flow/index.js.map +1 -1
  503. package/build/components/writing-flow/use-arrow-nav.js +2 -2
  504. package/build/hooks/align.js +12 -7
  505. package/build/hooks/align.js.map +1 -1
  506. package/build/hooks/border.js +4 -2
  507. package/build/hooks/border.js.map +1 -1
  508. package/build/hooks/color-panel.js +7 -6
  509. package/build/hooks/color-panel.js.map +1 -1
  510. package/build/hooks/color.js +4 -3
  511. package/build/hooks/color.js.map +1 -1
  512. package/build/hooks/dimensions.js +4 -2
  513. package/build/hooks/dimensions.js.map +1 -1
  514. package/build/hooks/duotone.js +13 -10
  515. package/build/hooks/duotone.js.map +1 -1
  516. package/build/hooks/font-appearance.js +17 -14
  517. package/build/hooks/font-appearance.js.map +1 -1
  518. package/build/hooks/font-family.js +29 -20
  519. package/build/hooks/font-family.js.map +1 -1
  520. package/build/hooks/font-size.js +10 -8
  521. package/build/hooks/font-size.js.map +1 -1
  522. package/build/hooks/gap.js +10 -8
  523. package/build/hooks/gap.js.map +1 -1
  524. package/build/hooks/index.js +14 -14
  525. package/build/hooks/index.native.js +10 -10
  526. package/build/hooks/layout.js +16 -13
  527. package/build/hooks/layout.js.map +1 -1
  528. package/build/hooks/letter-spacing.js +11 -9
  529. package/build/hooks/letter-spacing.js.map +1 -1
  530. package/build/hooks/line-height.js +11 -9
  531. package/build/hooks/line-height.js.map +1 -1
  532. package/build/hooks/margin.js +10 -8
  533. package/build/hooks/margin.js.map +1 -1
  534. package/build/hooks/padding.js +10 -8
  535. package/build/hooks/padding.js.map +1 -1
  536. package/build/hooks/style.js +9 -5
  537. package/build/hooks/style.js.map +1 -1
  538. package/build/hooks/text-decoration.js +11 -9
  539. package/build/hooks/text-decoration.js.map +1 -1
  540. package/build/hooks/text-transform.js +11 -9
  541. package/build/hooks/text-transform.js.map +1 -1
  542. package/build/hooks/typography.js +3 -2
  543. package/build/hooks/typography.js.map +1 -1
  544. package/build/hooks/typography.native.js +3 -2
  545. package/build/hooks/typography.native.js.map +1 -1
  546. package/build/hooks/use-border-props.js +5 -4
  547. package/build/hooks/use-border-props.js.map +1 -1
  548. package/build/index.js +18 -18
  549. package/build/layouts/flex.js +39 -31
  550. package/build/layouts/flex.js.map +1 -1
  551. package/build/layouts/flow.js +10 -8
  552. package/build/layouts/flow.js.map +1 -1
  553. package/build/layouts/index.js +2 -1
  554. package/build/layouts/index.js.map +1 -1
  555. package/build/layouts/utils.js +2 -1
  556. package/build/layouts/utils.js.map +1 -1
  557. package/build/store/actions.js +311 -232
  558. package/build/store/actions.js.map +1 -1
  559. package/build/store/array.js +2 -1
  560. package/build/store/array.js.map +1 -1
  561. package/build/store/index.js +5 -3
  562. package/build/store/index.js.map +1 -1
  563. package/build/store/reducer.js +124 -49
  564. package/build/store/reducer.js.map +1 -1
  565. package/build/store/selectors.js +219 -141
  566. package/build/store/selectors.js.map +1 -1
  567. package/build/utils/block-variation-transforms.js +4 -3
  568. package/build/utils/block-variation-transforms.js.map +1 -1
  569. package/build/utils/dom.js +1 -1
  570. package/build/utils/get-paste-event-data.js +10 -6
  571. package/build/utils/get-paste-event-data.js.map +1 -1
  572. package/build/utils/index.js +4 -4
  573. package/build/utils/math.js +2 -1
  574. package/build/utils/math.js.map +1 -1
  575. package/build/utils/parse-css-unit-to-px.js +6 -3
  576. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  577. package/build/utils/transform-styles/index.js +8 -6
  578. package/build/utils/transform-styles/index.js.map +1 -1
  579. package/build/utils/transform-styles/transforms/wrap.js +31 -28
  580. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  581. package/build-module/components/alignment-control/ui.js +11 -9
  582. package/build-module/components/alignment-control/ui.js.map +1 -1
  583. package/build-module/components/autocomplete/index.js +4 -3
  584. package/build-module/components/autocomplete/index.js.map +1 -1
  585. package/build-module/components/block-actions/index.js +12 -8
  586. package/build-module/components/block-actions/index.js.map +1 -1
  587. package/build-module/components/block-alignment-control/ui.js +21 -17
  588. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  589. package/build-module/components/block-alignment-control/use-available-alignments.js +9 -4
  590. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  591. package/build-module/components/block-alignment-matrix-control/index.js +6 -4
  592. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  593. package/build-module/components/block-breadcrumb/index.js +4 -3
  594. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  595. package/build-module/components/block-caption/index.native.js +34 -29
  596. package/build-module/components/block-caption/index.native.js.map +1 -1
  597. package/build-module/components/block-card/index.js +8 -6
  598. package/build-module/components/block-card/index.js.map +1 -1
  599. package/build-module/components/block-compare/block-view.js +9 -8
  600. package/build-module/components/block-compare/block-view.js.map +1 -1
  601. package/build-module/components/block-compare/index.js +9 -7
  602. package/build-module/components/block-compare/index.js.map +1 -1
  603. package/build-module/components/block-content-overlay/index.js +7 -6
  604. package/build-module/components/block-content-overlay/index.js.map +1 -1
  605. package/build-module/components/block-context/index.js +5 -4
  606. package/build-module/components/block-context/index.js.map +1 -1
  607. package/build-module/components/block-controls/fill.js +7 -6
  608. package/build-module/components/block-controls/fill.js.map +1 -1
  609. package/build-module/components/block-controls/slot.js +5 -4
  610. package/build-module/components/block-controls/slot.js.map +1 -1
  611. package/build-module/components/block-controls/slot.native.js +5 -4
  612. package/build-module/components/block-controls/slot.native.js.map +1 -1
  613. package/build-module/components/block-draggable/draggable-chip.js +5 -4
  614. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  615. package/build-module/components/block-draggable/index.js +13 -11
  616. package/build-module/components/block-draggable/index.js.map +1 -1
  617. package/build-module/components/block-full-height-alignment-control/index.js +7 -6
  618. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  619. package/build-module/components/block-icon/index.js +7 -5
  620. package/build-module/components/block-icon/index.js.map +1 -1
  621. package/build-module/components/block-icon/index.native.js +8 -6
  622. package/build-module/components/block-icon/index.native.js.map +1 -1
  623. package/build-module/components/block-inspector/index.js +16 -13
  624. package/build-module/components/block-inspector/index.js.map +1 -1
  625. package/build-module/components/block-list/block-html.js +4 -3
  626. package/build-module/components/block-list/block-html.js.map +1 -1
  627. package/build-module/components/block-list/block-invalid-warning.js +27 -19
  628. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  629. package/build-module/components/block-list/block-invalid-warning.native.js +5 -4
  630. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  631. package/build-module/components/block-list/block-list-item.native.js +6 -5
  632. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  633. package/build-module/components/block-list/block-selection-button.native.js +11 -9
  634. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  635. package/build-module/components/block-list/block.js +40 -33
  636. package/build-module/components/block-list/block.js.map +1 -1
  637. package/build-module/components/block-list/block.native.js +35 -29
  638. package/build-module/components/block-list/block.native.js.map +1 -1
  639. package/build-module/components/block-list/index.js +13 -11
  640. package/build-module/components/block-list/index.js.map +1 -1
  641. package/build-module/components/block-list/index.native.js +21 -16
  642. package/build-module/components/block-list/index.native.js.map +1 -1
  643. package/build-module/components/block-list/insertion-point.native.js +4 -3
  644. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  645. package/build-module/components/block-list/layout.js +5 -4
  646. package/build-module/components/block-list/layout.js.map +1 -1
  647. package/build-module/components/block-list/subdirectory-icon.js +13 -10
  648. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  649. package/build-module/components/block-list/use-block-props/index.js +5 -3
  650. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  651. package/build-module/components/block-list/use-block-props/index.native.js +2 -1
  652. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  653. package/build-module/components/block-list/use-block-props/use-multi-selection.js +9 -6
  654. package/build-module/components/block-list/use-block-props/use-multi-selection.js.map +1 -1
  655. package/build-module/components/block-list-appender/index.js +16 -13
  656. package/build-module/components/block-list-appender/index.js.map +1 -1
  657. package/build-module/components/block-list-appender/index.native.js +14 -11
  658. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  659. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +46 -42
  660. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  661. package/build-module/components/block-mobile-toolbar/index.js +4 -3
  662. package/build-module/components/block-mobile-toolbar/index.js.map +1 -1
  663. package/build-module/components/block-mobile-toolbar/index.native.js +33 -25
  664. package/build-module/components/block-mobile-toolbar/index.native.js.map +1 -1
  665. package/build-module/components/block-mover/button.js +7 -6
  666. package/build-module/components/block-mover/button.js.map +1 -1
  667. package/build-module/components/block-mover/index.js +15 -13
  668. package/build-module/components/block-mover/index.js.map +1 -1
  669. package/build-module/components/block-mover/index.native.js +22 -19
  670. package/build-module/components/block-mover/index.native.js.map +1 -1
  671. package/build-module/components/block-mover/mover-description.native.js +10 -7
  672. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  673. package/build-module/components/block-navigation/dropdown.js +26 -21
  674. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  675. package/build-module/components/block-pattern-setup/index.js +26 -22
  676. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  677. package/build-module/components/block-pattern-setup/setup-toolbar.js +46 -39
  678. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  679. package/build-module/components/block-patterns-list/index.js +44 -39
  680. package/build-module/components/block-patterns-list/index.js.map +1 -1
  681. package/build-module/components/block-preview/auto.js +6 -4
  682. package/build-module/components/block-preview/auto.js.map +1 -1
  683. package/build-module/components/block-preview/index.js +8 -7
  684. package/build-module/components/block-preview/index.js.map +1 -1
  685. package/build-module/components/block-preview/live.js +4 -3
  686. package/build-module/components/block-preview/live.js.map +1 -1
  687. package/build-module/components/block-settings/button.native.js +10 -7
  688. package/build-module/components/block-settings/button.native.js.map +1 -1
  689. package/build-module/components/block-settings/container.native.js +7 -6
  690. package/build-module/components/block-settings/container.native.js.map +1 -1
  691. package/build-module/components/block-settings-menu/block-convert-button.js +7 -5
  692. package/build-module/components/block-settings-menu/block-convert-button.js.map +1 -1
  693. package/build-module/components/block-settings-menu/block-html-convert-button.js +14 -10
  694. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  695. package/build-module/components/block-settings-menu/block-mode-toggle.js +25 -19
  696. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  697. package/build-module/components/block-settings-menu/block-settings-dropdown.js +74 -66
  698. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  699. package/build-module/components/block-settings-menu/index.js +5 -4
  700. package/build-module/components/block-settings-menu/index.js.map +1 -1
  701. package/build-module/components/block-settings-menu-controls/index.js +8 -6
  702. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  703. package/build-module/components/block-styles/index.js +20 -17
  704. package/build-module/components/block-styles/index.js.map +1 -1
  705. package/build-module/components/block-styles/index.native.js +6 -4
  706. package/build-module/components/block-styles/index.native.js.map +1 -1
  707. package/build-module/components/block-styles/preview.native.js +7 -6
  708. package/build-module/components/block-styles/preview.native.js.map +1 -1
  709. package/build-module/components/block-switcher/block-styles-menu.js +5 -4
  710. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  711. package/build-module/components/block-switcher/block-transformations-menu.js +7 -6
  712. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  713. package/build-module/components/block-switcher/block-transformations-menu.native.js +9 -8
  714. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  715. package/build-module/components/block-switcher/index.js +41 -33
  716. package/build-module/components/block-switcher/index.js.map +1 -1
  717. package/build-module/components/block-switcher/pattern-transformations-menu.js +22 -18
  718. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  719. package/build-module/components/block-switcher/preview-block-popover.js +4 -3
  720. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  721. package/build-module/components/block-switcher/utils.js +2 -1
  722. package/build-module/components/block-switcher/utils.js.map +1 -1
  723. package/build-module/components/block-title/index.js +4 -3
  724. package/build-module/components/block-title/index.js.map +1 -1
  725. package/build-module/components/block-toolbar/index.js +4 -3
  726. package/build-module/components/block-toolbar/index.js.map +1 -1
  727. package/build-module/components/block-toolbar/utils.js +13 -11
  728. package/build-module/components/block-toolbar/utils.js.map +1 -1
  729. package/build-module/components/block-tools/back-compat.js +4 -3
  730. package/build-module/components/block-tools/back-compat.js.map +1 -1
  731. package/build-module/components/block-tools/block-contextual-toolbar.js +6 -5
  732. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  733. package/build-module/components/block-tools/block-popover.js +15 -13
  734. package/build-module/components/block-tools/block-popover.js.map +1 -1
  735. package/build-module/components/block-tools/block-selection-button.js +6 -5
  736. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  737. package/build-module/components/block-tools/index.js +6 -5
  738. package/build-module/components/block-tools/index.js.map +1 -1
  739. package/build-module/components/block-tools/insertion-point.js +11 -9
  740. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  741. package/build-module/components/block-types-list/index.js +9 -8
  742. package/build-module/components/block-types-list/index.js.map +1 -1
  743. package/build-module/components/block-types-list/index.native.js +19 -15
  744. package/build-module/components/block-types-list/index.native.js.map +1 -1
  745. package/build-module/components/block-variation-picker/index.js +9 -8
  746. package/build-module/components/block-variation-picker/index.js.map +1 -1
  747. package/build-module/components/block-variation-picker/index.native.js +9 -7
  748. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  749. package/build-module/components/block-variation-transforms/index.js +22 -15
  750. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  751. package/build-module/components/block-vertical-alignment-control/ui.js +9 -7
  752. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  753. package/build-module/components/border-radius-control/all-input-control.js +6 -5
  754. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  755. package/build-module/components/border-radius-control/index.js +5 -4
  756. package/build-module/components/border-radius-control/index.js.map +1 -1
  757. package/build-module/components/border-radius-control/input-controls.js +16 -11
  758. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  759. package/build-module/components/border-radius-control/linked-button.js +5 -4
  760. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  761. package/build-module/components/border-radius-control/utils.js +8 -3
  762. package/build-module/components/border-radius-control/utils.js.map +1 -1
  763. package/build-module/components/border-style-control/index.js +5 -4
  764. package/build-module/components/border-style-control/index.js.map +1 -1
  765. package/build-module/components/button-block-appender/index.js +15 -13
  766. package/build-module/components/button-block-appender/index.js.map +1 -1
  767. package/build-module/components/button-block-appender/index.native.js +28 -24
  768. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  769. package/build-module/components/caption/index.native.js +44 -41
  770. package/build-module/components/caption/index.native.js.map +1 -1
  771. package/build-module/components/color-palette/control.js +6 -5
  772. package/build-module/components/color-palette/control.js.map +1 -1
  773. package/build-module/components/color-style-selector/index.js +43 -34
  774. package/build-module/components/color-style-selector/index.js.map +1 -1
  775. package/build-module/components/colors/color-panel.js +21 -18
  776. package/build-module/components/colors/color-panel.js.map +1 -1
  777. package/build-module/components/colors/utils.js +6 -3
  778. package/build-module/components/colors/utils.js.map +1 -1
  779. package/build-module/components/colors/with-colors.js +17 -6
  780. package/build-module/components/colors/with-colors.js.map +1 -1
  781. package/build-module/components/colors-gradients/control.js +16 -15
  782. package/build-module/components/colors-gradients/control.js.map +1 -1
  783. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +57 -50
  784. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  785. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +28 -24
  786. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  787. package/build-module/components/contrast-checker/index.js +18 -15
  788. package/build-module/components/contrast-checker/index.js.map +1 -1
  789. package/build-module/components/convert-to-group-buttons/index.js +9 -8
  790. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  791. package/build-module/components/copy-handler/index.js +4 -3
  792. package/build-module/components/copy-handler/index.js.map +1 -1
  793. package/build-module/components/default-block-appender/index.js +10 -8
  794. package/build-module/components/default-block-appender/index.js.map +1 -1
  795. package/build-module/components/default-block-appender/index.native.js +10 -8
  796. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  797. package/build-module/components/default-style-picker/index.js +14 -10
  798. package/build-module/components/default-style-picker/index.js.map +1 -1
  799. package/build-module/components/duotone-control/index.js +15 -12
  800. package/build-module/components/duotone-control/index.js.map +1 -1
  801. package/build-module/components/editable-text/index.js +6 -5
  802. package/build-module/components/editable-text/index.js.map +1 -1
  803. package/build-module/components/editor-styles/index.js +4 -3
  804. package/build-module/components/editor-styles/index.js.map +1 -1
  805. package/build-module/components/floating-toolbar/index.native.js +8 -7
  806. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  807. package/build-module/components/font-appearance-control/index.js +26 -19
  808. package/build-module/components/font-appearance-control/index.js.map +1 -1
  809. package/build-module/components/font-family/index.js +12 -10
  810. package/build-module/components/font-family/index.js.map +1 -1
  811. package/build-module/components/font-sizes/with-font-sizes.js +11 -5
  812. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  813. package/build-module/components/gradients/use-gradient.js +5 -4
  814. package/build-module/components/gradients/use-gradient.js.map +1 -1
  815. package/build-module/components/iframe/index.js +28 -22
  816. package/build-module/components/iframe/index.js.map +1 -1
  817. package/build-module/components/image-editor/aspect-ratio-dropdown.js +90 -82
  818. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  819. package/build-module/components/image-editor/context.js +11 -10
  820. package/build-module/components/image-editor/context.js.map +1 -1
  821. package/build-module/components/image-editor/cropper.js +9 -8
  822. package/build-module/components/image-editor/cropper.js.map +1 -1
  823. package/build-module/components/image-editor/index.js +9 -8
  824. package/build-module/components/image-editor/index.js.map +1 -1
  825. package/build-module/components/image-editor/use-save-image.js +12 -11
  826. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  827. package/build-module/components/image-editor/use-transform-image.js +6 -5
  828. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  829. package/build-module/components/image-editor/zoom-dropdown.js +13 -10
  830. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  831. package/build-module/components/image-size-control/index.js +12 -11
  832. package/build-module/components/image-size-control/index.js.map +1 -1
  833. package/build-module/components/inner-blocks/button-block-appender.js +8 -7
  834. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  835. package/build-module/components/inner-blocks/default-block-appender.js +9 -7
  836. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  837. package/build-module/components/inner-blocks/index.js +3 -1
  838. package/build-module/components/inner-blocks/index.js.map +1 -1
  839. package/build-module/components/inner-blocks/index.native.js +3 -1
  840. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  841. package/build-module/components/inserter/block-patterns-explorer/explorer.js +10 -8
  842. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  843. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +12 -9
  844. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  845. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +24 -20
  846. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  847. package/build-module/components/inserter/block-patterns-tab.js +26 -20
  848. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  849. package/build-module/components/inserter/block-types-tab.js +9 -7
  850. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  851. package/build-module/components/inserter/block-types-tab.native.js +9 -8
  852. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  853. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +5 -3
  854. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  855. package/build-module/components/inserter/hooks/use-block-types-state.js +6 -5
  856. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  857. package/build-module/components/inserter/hooks/use-insertion-point.js +11 -9
  858. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  859. package/build-module/components/inserter/index.js +36 -28
  860. package/build-module/components/inserter/index.js.map +1 -1
  861. package/build-module/components/inserter/index.native.js +46 -37
  862. package/build-module/components/inserter/index.native.js.map +1 -1
  863. package/build-module/components/inserter/library.js +12 -11
  864. package/build-module/components/inserter/library.js.map +1 -1
  865. package/build-module/components/inserter/menu.js +12 -11
  866. package/build-module/components/inserter/menu.js.map +1 -1
  867. package/build-module/components/inserter/menu.native.js +31 -27
  868. package/build-module/components/inserter/menu.native.js.map +1 -1
  869. package/build-module/components/inserter/panel.js +6 -5
  870. package/build-module/components/inserter/panel.js.map +1 -1
  871. package/build-module/components/inserter/pattern-panel.js +7 -6
  872. package/build-module/components/inserter/pattern-panel.js.map +1 -1
  873. package/build-module/components/inserter/preview-panel.js +4 -3
  874. package/build-module/components/inserter/preview-panel.js.map +1 -1
  875. package/build-module/components/inserter/quick-inserter.js +7 -6
  876. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  877. package/build-module/components/inserter/reusable-blocks-tab.js +18 -13
  878. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  879. package/build-module/components/inserter/reusable-blocks-tab.native.js +6 -5
  880. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  881. package/build-module/components/inserter/search-items.js +23 -7
  882. package/build-module/components/inserter/search-items.js.map +1 -1
  883. package/build-module/components/inserter/search-results.js +15 -14
  884. package/build-module/components/inserter/search-results.js.map +1 -1
  885. package/build-module/components/inserter/search-results.native.js +11 -10
  886. package/build-module/components/inserter/search-results.native.js.map +1 -1
  887. package/build-module/components/inserter/tabs.js +7 -6
  888. package/build-module/components/inserter/tabs.js.map +1 -1
  889. package/build-module/components/inserter/tabs.native.js +55 -37
  890. package/build-module/components/inserter/tabs.native.js.map +1 -1
  891. package/build-module/components/inserter/utils.native.js +10 -8
  892. package/build-module/components/inserter/utils.native.js.map +1 -1
  893. package/build-module/components/inserter-draggable-blocks/index.js +12 -10
  894. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  895. package/build-module/components/inserter-list-item/index.js +75 -69
  896. package/build-module/components/inserter-list-item/index.js.map +1 -1
  897. package/build-module/components/inserter-listbox/index.js +4 -3
  898. package/build-module/components/inserter-listbox/index.js.map +1 -1
  899. package/build-module/components/inserter-listbox/item.js +7 -6
  900. package/build-module/components/inserter-listbox/item.js.map +1 -1
  901. package/build-module/components/inspector-controls/block-support-slot-container.js +5 -4
  902. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  903. package/build-module/components/inspector-controls/block-support-tools-panel.js +8 -6
  904. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  905. package/build-module/components/inspector-controls/fill.js +5 -4
  906. package/build-module/components/inspector-controls/fill.js.map +1 -1
  907. package/build-module/components/inspector-controls/fill.native.js +6 -5
  908. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  909. package/build-module/components/inspector-controls/slot.js +7 -6
  910. package/build-module/components/inspector-controls/slot.js.map +1 -1
  911. package/build-module/components/inspector-controls/slot.native.js +5 -4
  912. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  913. package/build-module/components/justify-content-control/ui.js +10 -8
  914. package/build-module/components/justify-content-control/ui.js.map +1 -1
  915. package/build-module/components/letter-spacing-control/index.js +6 -5
  916. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  917. package/build-module/components/line-height-control/index.js +5 -4
  918. package/build-module/components/line-height-control/index.js.map +1 -1
  919. package/build-module/components/line-height-control/index.native.js +5 -4
  920. package/build-module/components/line-height-control/index.native.js.map +1 -1
  921. package/build-module/components/link-control/index.js +25 -23
  922. package/build-module/components/link-control/index.js.map +1 -1
  923. package/build-module/components/link-control/link-preview.js +8 -7
  924. package/build-module/components/link-control/link-preview.js.map +1 -1
  925. package/build-module/components/link-control/search-create-button.js +9 -7
  926. package/build-module/components/link-control/search-create-button.js.map +1 -1
  927. package/build-module/components/link-control/search-input.js +21 -20
  928. package/build-module/components/link-control/search-input.js.map +1 -1
  929. package/build-module/components/link-control/search-item.js +10 -9
  930. package/build-module/components/link-control/search-item.js.map +1 -1
  931. package/build-module/components/link-control/search-results.js +15 -14
  932. package/build-module/components/link-control/search-results.js.map +1 -1
  933. package/build-module/components/link-control/settings-drawer.js +7 -5
  934. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  935. package/build-module/components/link-control/use-search-handler.js +4 -3
  936. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  937. package/build-module/components/list-view/appender.js +27 -23
  938. package/build-module/components/list-view/appender.js.map +1 -1
  939. package/build-module/components/list-view/block-contents.js +32 -28
  940. package/build-module/components/list-view/block-contents.js.map +1 -1
  941. package/build-module/components/list-view/block-select-button.js +18 -17
  942. package/build-module/components/list-view/block-select-button.js.map +1 -1
  943. package/build-module/components/list-view/block.js +79 -66
  944. package/build-module/components/list-view/block.js.map +1 -1
  945. package/build-module/components/list-view/drop-indicator.js +5 -4
  946. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  947. package/build-module/components/list-view/expander.js +4 -3
  948. package/build-module/components/list-view/expander.js.map +1 -1
  949. package/build-module/components/list-view/index.js +11 -10
  950. package/build-module/components/list-view/index.js.map +1 -1
  951. package/build-module/components/list-view/leaf.js +11 -10
  952. package/build-module/components/list-view/leaf.js.map +1 -1
  953. package/build-module/components/list-view/list-item.js +8 -7
  954. package/build-module/components/list-view/list-item.js.map +1 -1
  955. package/build-module/components/media-placeholder/index.js +86 -68
  956. package/build-module/components/media-placeholder/index.js.map +1 -1
  957. package/build-module/components/media-placeholder/index.native.js +5 -4
  958. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  959. package/build-module/components/media-replace-flow/index.js +85 -72
  960. package/build-module/components/media-replace-flow/index.js.map +1 -1
  961. package/build-module/components/media-upload/check.js +5 -4
  962. package/build-module/components/media-upload/check.js.map +1 -1
  963. package/build-module/components/multi-selection-inspector/index.js +4 -3
  964. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  965. package/build-module/components/navigable-toolbar/index.js +8 -7
  966. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  967. package/build-module/components/observe-typing/index.js +4 -3
  968. package/build-module/components/observe-typing/index.js.map +1 -1
  969. package/build-module/components/panel-color-settings/index.js +16 -12
  970. package/build-module/components/panel-color-settings/index.js.map +1 -1
  971. package/build-module/components/plain-text/index.js +6 -4
  972. package/build-module/components/plain-text/index.js.map +1 -1
  973. package/build-module/components/preview-options/index.js +8 -7
  974. package/build-module/components/preview-options/index.js.map +1 -1
  975. package/build-module/components/provider/block-refs-provider.js +4 -3
  976. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  977. package/build-module/components/provider/use-block-sync.js +8 -7
  978. package/build-module/components/provider/use-block-sync.js.map +1 -1
  979. package/build-module/components/provider/with-registry-provider.js +7 -5
  980. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  981. package/build-module/components/responsive-block-control/label.js +6 -5
  982. package/build-module/components/responsive-block-control/label.js.map +1 -1
  983. package/build-module/components/rich-text/embed-handler-picker.native.js +7 -5
  984. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  985. package/build-module/components/rich-text/file-paste-handler.js +6 -3
  986. package/build-module/components/rich-text/file-paste-handler.js.map +1 -1
  987. package/build-module/components/rich-text/format-edit.js +8 -7
  988. package/build-module/components/rich-text/format-edit.js.map +1 -1
  989. package/build-module/components/rich-text/format-toolbar/index.js +18 -9
  990. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  991. package/build-module/components/rich-text/format-toolbar-container.js +6 -4
  992. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  993. package/build-module/components/rich-text/index.js +44 -40
  994. package/build-module/components/rich-text/index.js.map +1 -1
  995. package/build-module/components/rich-text/index.native.js +145 -122
  996. package/build-module/components/rich-text/index.native.js.map +1 -1
  997. package/build-module/components/rich-text/input-event.js +5 -4
  998. package/build-module/components/rich-text/input-event.js.map +1 -1
  999. package/build-module/components/rich-text/shortcut.js +6 -5
  1000. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1001. package/build-module/components/rich-text/split-value.js +10 -8
  1002. package/build-module/components/rich-text/split-value.js.map +1 -1
  1003. package/build-module/components/rich-text/toolbar-button.js +7 -6
  1004. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1005. package/build-module/components/rich-text/use-caret-in-format.js +4 -3
  1006. package/build-module/components/rich-text/use-caret-in-format.js.map +1 -1
  1007. package/build-module/components/rich-text/use-enter.js +6 -3
  1008. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1009. package/build-module/components/rich-text/use-format-types.js +13 -10
  1010. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1011. package/build-module/components/rich-text/use-input-rules.js +15 -9
  1012. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1013. package/build-module/components/rich-text/use-mark-persistent.js +5 -4
  1014. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1015. package/build-module/components/rich-text/use-paste-handler.js +28 -4
  1016. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1017. package/build-module/components/rich-text/utils.js +7 -5
  1018. package/build-module/components/rich-text/utils.js.map +1 -1
  1019. package/build-module/components/skip-to-selected-block/index.js +4 -3
  1020. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1021. package/build-module/components/text-decoration-control/index.js +5 -4
  1022. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1023. package/build-module/components/text-transform-control/index.js +5 -4
  1024. package/build-module/components/text-transform-control/index.js.map +1 -1
  1025. package/build-module/components/tool-selector/index.js +16 -13
  1026. package/build-module/components/tool-selector/index.js.map +1 -1
  1027. package/build-module/components/typewriter/index.js +9 -6
  1028. package/build-module/components/typewriter/index.js.map +1 -1
  1029. package/build-module/components/ungroup-button/index.native.js +12 -9
  1030. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1031. package/build-module/components/unit-control/index.js +5 -4
  1032. package/build-module/components/unit-control/index.js.map +1 -1
  1033. package/build-module/components/url-input/index.js +12 -9
  1034. package/build-module/components/url-input/index.js.map +1 -1
  1035. package/build-module/components/url-input/index.native.js +8 -6
  1036. package/build-module/components/url-input/index.native.js.map +1 -1
  1037. package/build-module/components/url-popover/image-url-input-ui.js +12 -11
  1038. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1039. package/build-module/components/url-popover/index.js +9 -8
  1040. package/build-module/components/url-popover/index.js.map +1 -1
  1041. package/build-module/components/url-popover/link-editor.js +8 -7
  1042. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1043. package/build-module/components/url-popover/link-viewer-url.js +6 -5
  1044. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1045. package/build-module/components/url-popover/link-viewer.js +9 -8
  1046. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1047. package/build-module/components/use-block-drop-zone/index.js +8 -7
  1048. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1049. package/build-module/components/use-moving-animation/index.js +17 -13
  1050. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1051. package/build-module/components/use-no-recursive-renders/index.js +10 -6
  1052. package/build-module/components/use-no-recursive-renders/index.js.map +1 -1
  1053. package/build-module/components/use-setting/index.js +1 -1
  1054. package/build-module/components/use-setting/index.js.map +1 -1
  1055. package/build-module/components/warning/index.js +7 -6
  1056. package/build-module/components/warning/index.js.map +1 -1
  1057. package/build-module/components/warning/index.native.js +10 -9
  1058. package/build-module/components/warning/index.native.js.map +1 -1
  1059. package/build-module/components/writing-flow/index.js +5 -4
  1060. package/build-module/components/writing-flow/index.js.map +1 -1
  1061. package/build-module/hooks/align.js +9 -4
  1062. package/build-module/hooks/align.js.map +1 -1
  1063. package/build-module/hooks/border.js +3 -1
  1064. package/build-module/hooks/border.js.map +1 -1
  1065. package/build-module/hooks/color-panel.js +7 -6
  1066. package/build-module/hooks/color-panel.js.map +1 -1
  1067. package/build-module/hooks/dimensions.js +2 -1
  1068. package/build-module/hooks/dimensions.js.map +1 -1
  1069. package/build-module/hooks/duotone.js +13 -10
  1070. package/build-module/hooks/duotone.js.map +1 -1
  1071. package/build-module/hooks/font-appearance.js +13 -10
  1072. package/build-module/hooks/font-appearance.js.map +1 -1
  1073. package/build-module/hooks/font-family.js +27 -18
  1074. package/build-module/hooks/font-family.js.map +1 -1
  1075. package/build-module/hooks/font-size.js +9 -7
  1076. package/build-module/hooks/font-size.js.map +1 -1
  1077. package/build-module/hooks/gap.js +9 -7
  1078. package/build-module/hooks/gap.js.map +1 -1
  1079. package/build-module/hooks/layout.js +16 -13
  1080. package/build-module/hooks/layout.js.map +1 -1
  1081. package/build-module/hooks/letter-spacing.js +9 -7
  1082. package/build-module/hooks/letter-spacing.js.map +1 -1
  1083. package/build-module/hooks/line-height.js +9 -7
  1084. package/build-module/hooks/line-height.js.map +1 -1
  1085. package/build-module/hooks/margin.js +9 -7
  1086. package/build-module/hooks/margin.js.map +1 -1
  1087. package/build-module/hooks/padding.js +9 -7
  1088. package/build-module/hooks/padding.js.map +1 -1
  1089. package/build-module/hooks/style.js +7 -3
  1090. package/build-module/hooks/style.js.map +1 -1
  1091. package/build-module/hooks/text-decoration.js +9 -7
  1092. package/build-module/hooks/text-decoration.js.map +1 -1
  1093. package/build-module/hooks/text-transform.js +9 -7
  1094. package/build-module/hooks/text-transform.js.map +1 -1
  1095. package/build-module/hooks/typography.js +2 -1
  1096. package/build-module/hooks/typography.js.map +1 -1
  1097. package/build-module/hooks/typography.native.js +2 -1
  1098. package/build-module/hooks/typography.native.js.map +1 -1
  1099. package/build-module/hooks/use-border-props.js +5 -4
  1100. package/build-module/hooks/use-border-props.js.map +1 -1
  1101. package/build-module/layouts/flex.js +39 -31
  1102. package/build-module/layouts/flex.js.map +1 -1
  1103. package/build-module/layouts/flow.js +10 -8
  1104. package/build-module/layouts/flow.js.map +1 -1
  1105. package/build-module/layouts/index.js +2 -1
  1106. package/build-module/layouts/index.js.map +1 -1
  1107. package/build-module/layouts/utils.js +2 -1
  1108. package/build-module/layouts/utils.js.map +1 -1
  1109. package/build-module/store/actions.js +271 -206
  1110. package/build-module/store/actions.js.map +1 -1
  1111. package/build-module/store/array.js +2 -1
  1112. package/build-module/store/array.js.map +1 -1
  1113. package/build-module/store/reducer.js +108 -34
  1114. package/build-module/store/reducer.js.map +1 -1
  1115. package/build-module/store/selectors.js +158 -90
  1116. package/build-module/store/selectors.js.map +1 -1
  1117. package/build-module/utils/block-variation-transforms.js +4 -3
  1118. package/build-module/utils/block-variation-transforms.js.map +1 -1
  1119. package/build-module/utils/get-paste-event-data.js +10 -6
  1120. package/build-module/utils/get-paste-event-data.js.map +1 -1
  1121. package/build-module/utils/math.js +2 -1
  1122. package/build-module/utils/math.js.map +1 -1
  1123. package/build-module/utils/parse-css-unit-to-px.js +5 -2
  1124. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  1125. package/build-module/utils/transform-styles/index.js +8 -6
  1126. package/build-module/utils/transform-styles/index.js.map +1 -1
  1127. package/build-module/utils/transform-styles/transforms/wrap.js +28 -25
  1128. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  1129. package/build-style/style-rtl.css +72 -68
  1130. package/build-style/style.css +72 -68
  1131. package/package.json +27 -27
  1132. package/src/components/block-list-appender/style.scss +0 -42
  1133. package/src/components/block-preview/auto.js +3 -0
  1134. package/src/components/block-preview/style.scss +5 -0
  1135. package/src/components/button-block-appender/style.scss +0 -17
  1136. package/src/components/colors-gradients/panel-color-gradient-settings.js +56 -25
  1137. package/src/components/default-block-appender/style.scss +90 -16
  1138. package/src/components/inner-blocks/style.scss +4 -10
  1139. package/src/components/rich-text/use-paste-handler.js +22 -0
  1140. package/src/components/use-setting/index.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/index.js"],"names":["LinkControl","searchInputPlaceholder","value","settings","DEFAULT_LINK_SETTINGS","onChange","noop","onRemove","noDirectEntry","showSuggestions","showInitialSuggestions","forceIsEditingLink","createSuggestion","withCreateSuggestion","inputValue","propInputValue","suggestionsQuery","noURLSuggestion","createSuggestionButtonText","hasRichPreviews","hasTextControl","renderControlBottom","undefined","isMounting","wrapperNode","textInputRef","internalInputValue","setInternalInputValue","url","internalTextValue","setInternalTextValue","title","currentInputValue","isEditingLink","setIsEditingLink","isEndingEditWithFocus","currentInputIsEmpty","trim","length","current","whichFocusTargetIndex","nextFocusTarget","focus","focusable","find","stopEditing","contains","ownerDocument","activeElement","createPage","isCreatingPage","errorMessage","handleSelectSuggestion","updatedValue","handleSubmit","handleSubmitWithEnter","event","keyCode","ENTER","preventDefault","shownUnlinkControl","showSettingsDrawer","showTextControl","keyboardReturn","ViewerFill"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Spinner, Notice, TextControl } from '@wordpress/components';\nimport { keyboardReturn } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useState, useEffect } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport { ENTER } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSettingsDrawer from './settings-drawer';\nimport LinkControlSearchInput from './search-input';\nimport LinkPreview from './link-preview';\nimport useCreatePage from './use-create-page';\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 {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\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\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\n\tconst [ internalInputValue, setInternalInputValue ] = useState(\n\t\tvalue?.url || ''\n\t);\n\tconst [ internalTextValue, setInternalTextValue ] = useState(\n\t\tvalue?.title || ''\n\t);\n\tconst currentInputValue = propInputValue || internalInputValue;\n\tconst [ isEditingLink, setIsEditingLink ] = useState(\n\t\tforceIsEditingLink !== undefined\n\t\t\t? forceIsEditingLink\n\t\t\t: ! value || ! value.url\n\t);\n\tconst isEndingEditWithFocus = useRef( false );\n\n\tconst currentInputIsEmpty = ! currentInputValue?.trim()?.length;\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}, [ 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\t\t// Unless we are mounting, we always want to focus either:\n\t\t// - the URL input\n\t\t// - the first focusable element in the Link UI.\n\t\t// But in editing mode if there is a text input present then\n\t\t// the URL input is at index 1. If not then it is at index 0.\n\t\tconst whichFocusTargetIndex = textInputRef?.current ? 1 : 0;\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 )[\n\t\t\t\twhichFocusTargetIndex\n\t\t\t] || wrapperNode.current;\n\n\t\tnextFocusTarget.focus();\n\n\t\tisEndingEditWithFocus.current = false;\n\t}, [ isEditingLink ] );\n\n\tuseEffect( () => {\n\t\t/**\n\t\t * If the value's `text` property changes then sync this\n\t\t * back up with state.\n\t\t */\n\t\tif ( value?.title && value.title !== internalTextValue ) {\n\t\t\tsetInternalTextValue( value.title );\n\t\t}\n\n\t\t/**\n\t\t * Update the state value internalInputValue if the url value changes\n\t\t * for example when clicking on another anchor\n\t\t */\n\t\tif ( value?.url ) {\n\t\t\tsetInternalInputValue( value.url );\n\t\t}\n\t}, [ value ] );\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\tfunction 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 { createPage, isCreatingPage, errorMessage } = useCreatePage(\n\t\tcreateSuggestion\n\t);\n\n\tconst handleSelectSuggestion = ( updatedValue ) => {\n\t\tonChange( {\n\t\t\t...updatedValue,\n\t\t\ttitle: internalTextValue || updatedValue?.title,\n\t\t} );\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmit = () => {\n\t\tif (\n\t\t\tcurrentInputValue !== value?.url ||\n\t\t\tinternalTextValue !== value?.title\n\t\t) {\n\t\t\tonChange( {\n\t\t\t\turl: currentInputValue,\n\t\t\t\ttitle: internalTextValue,\n\t\t\t} );\n\t\t}\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmitWithEnter = ( event ) => {\n\t\tconst { keyCode } = event;\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 shownUnlinkControl =\n\t\tonRemove && value && ! isEditingLink && ! isCreatingPage;\n\n\tconst showSettingsDrawer = !! settings?.length;\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 = value?.url?.trim()?.length > 0 && hasTextControl;\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{ ( isEditingLink || ! value ) && ! isCreatingPage && (\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\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={ internalTextValue }\n\t\t\t\t\t\t\t\tonChange={ setInternalTextValue }\n\t\t\t\t\t\t\t\tonKeyDown={ handleSubmitWithEnter }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\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={ currentInputValue }\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={ setInternalInputValue }\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\tuseLabel={ showTextControl }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div className=\"block-editor-link-control__search-actions\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ handleSubmit }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Submit' ) }\n\t\t\t\t\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\t\t\t\tdisabled={ currentInputIsEmpty } // disallow submitting empty values.\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</LinkControlSearchInput>\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={ onRemove }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ showSettingsDrawer && (\n\t\t\t\t<div className=\"block-editor-link-control__tools\">\n\t\t\t\t\t<LinkControlSettingsDrawer\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\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,"sources":["@wordpress/block-editor/src/components/link-control/index.js"],"names":["LinkControl","searchInputPlaceholder","value","settings","DEFAULT_LINK_SETTINGS","onChange","noop","onRemove","noDirectEntry","showSuggestions","showInitialSuggestions","forceIsEditingLink","createSuggestion","withCreateSuggestion","inputValue","propInputValue","suggestionsQuery","noURLSuggestion","createSuggestionButtonText","hasRichPreviews","hasTextControl","renderControlBottom","undefined","isMounting","wrapperNode","textInputRef","internalInputValue","setInternalInputValue","url","internalTextValue","setInternalTextValue","title","currentInputValue","isEditingLink","setIsEditingLink","isEndingEditWithFocus","currentInputIsEmpty","trim","length","current","whichFocusTargetIndex","nextFocusTarget","focus","focusable","find","stopEditing","contains","ownerDocument","activeElement","createPage","isCreatingPage","errorMessage","handleSelectSuggestion","updatedValue","handleSubmit","handleSubmitWithEnter","event","keyCode","ENTER","preventDefault","shownUnlinkControl","showSettingsDrawer","showTextControl","keyboardReturn","ViewerFill"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Spinner, Notice, TextControl } from '@wordpress/components';\nimport { keyboardReturn } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useState, useEffect } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport { ENTER } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSettingsDrawer from './settings-drawer';\nimport LinkControlSearchInput from './search-input';\nimport LinkPreview from './link-preview';\nimport useCreatePage from './use-create-page';\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 {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\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\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\n\tconst [ internalInputValue, setInternalInputValue ] = useState(\n\t\tvalue?.url || ''\n\t);\n\tconst [ internalTextValue, setInternalTextValue ] = useState(\n\t\tvalue?.title || ''\n\t);\n\tconst currentInputValue = propInputValue || internalInputValue;\n\tconst [ isEditingLink, setIsEditingLink ] = useState(\n\t\tforceIsEditingLink !== undefined\n\t\t\t? forceIsEditingLink\n\t\t\t: ! value || ! value.url\n\t);\n\tconst isEndingEditWithFocus = useRef( false );\n\n\tconst currentInputIsEmpty = ! currentInputValue?.trim()?.length;\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}, [ 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\t\t// Unless we are mounting, we always want to focus either:\n\t\t// - the URL input\n\t\t// - the first focusable element in the Link UI.\n\t\t// But in editing mode if there is a text input present then\n\t\t// the URL input is at index 1. If not then it is at index 0.\n\t\tconst whichFocusTargetIndex = textInputRef?.current ? 1 : 0;\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 )[\n\t\t\t\twhichFocusTargetIndex\n\t\t\t] || wrapperNode.current;\n\n\t\tnextFocusTarget.focus();\n\n\t\tisEndingEditWithFocus.current = false;\n\t}, [ isEditingLink ] );\n\n\tuseEffect( () => {\n\t\t/**\n\t\t * If the value's `text` property changes then sync this\n\t\t * back up with state.\n\t\t */\n\t\tif ( value?.title && value.title !== internalTextValue ) {\n\t\t\tsetInternalTextValue( value.title );\n\t\t}\n\n\t\t/**\n\t\t * Update the state value internalInputValue if the url value changes\n\t\t * for example when clicking on another anchor\n\t\t */\n\t\tif ( value?.url ) {\n\t\t\tsetInternalInputValue( value.url );\n\t\t}\n\t}, [ value ] );\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\tfunction 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 { createPage, isCreatingPage, errorMessage } = useCreatePage(\n\t\tcreateSuggestion\n\t);\n\n\tconst handleSelectSuggestion = ( updatedValue ) => {\n\t\tonChange( {\n\t\t\t...updatedValue,\n\t\t\ttitle: internalTextValue || updatedValue?.title,\n\t\t} );\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmit = () => {\n\t\tif (\n\t\t\tcurrentInputValue !== value?.url ||\n\t\t\tinternalTextValue !== value?.title\n\t\t) {\n\t\t\tonChange( {\n\t\t\t\turl: currentInputValue,\n\t\t\t\ttitle: internalTextValue,\n\t\t\t} );\n\t\t}\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmitWithEnter = ( event ) => {\n\t\tconst { keyCode } = event;\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 shownUnlinkControl =\n\t\tonRemove && value && ! isEditingLink && ! isCreatingPage;\n\n\tconst showSettingsDrawer = !! settings?.length;\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 = value?.url?.trim()?.length > 0 && hasTextControl;\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{ ( isEditingLink || ! value ) && ! isCreatingPage && (\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\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={ internalTextValue }\n\t\t\t\t\t\t\t\tonChange={ setInternalTextValue }\n\t\t\t\t\t\t\t\tonKeyDown={ handleSubmitWithEnter }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\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={ currentInputValue }\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={ setInternalInputValue }\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\tuseLabel={ showTextControl }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div className=\"block-editor-link-control__search-actions\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ handleSubmit }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Submit' ) }\n\t\t\t\t\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\t\t\t\tdisabled={ currentInputIsEmpty } // disallow submitting empty values.\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</LinkControlSearchInput>\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={ onRemove }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ showSettingsDrawer && (\n\t\t\t\t<div className=\"block-editor-link-control__tools\">\n\t\t\t\t\t<LinkControlSettingsDrawer\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ renderControlBottom && renderControlBottom() }\n\t\t</div>\n\t);\n}\n\nLinkControl.ViewerFill = ViewerFill;\n\nexport default LinkControl;\n"]}
@@ -36,13 +36,14 @@ var _useRichUrlData = _interopRequireDefault(require("./use-rich-url-data"));
36
36
  /**
37
37
  * Internal dependencies
38
38
  */
39
- function LinkPreview({
40
- value,
41
- onEditClick,
42
- hasRichPreviews = false,
43
- hasUnlinkControl = false,
44
- onRemove
45
- }) {
39
+ function LinkPreview(_ref) {
40
+ let {
41
+ value,
42
+ onEditClick,
43
+ hasRichPreviews = false,
44
+ hasUnlinkControl = false,
45
+ onRemove
46
+ } = _ref;
46
47
  // Avoid fetching if rich previews are not desired.
47
48
  const showRichPreviews = hasRichPreviews ? value === null || value === void 0 ? void 0 : value.url : null;
48
49
  const {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/link-preview.js"],"names":["LinkPreview","value","onEditClick","hasRichPreviews","hasUnlinkControl","onRemove","showRichPreviews","url","richData","isFetching","hasRichData","Object","keys","length","displayURL","displayTitle","title","isEmptyURL","icon","info","globe","edit","linkOff","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\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\taria-selected=\"true\"\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\tLink 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{ ( ( hasRichData &&\n\t\t\t\t( richData?.image || richData?.description ) ) ||\n\t\t\t\tisFetching ) && (\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,"sources":["@wordpress/block-editor/src/components/link-control/link-preview.js"],"names":["LinkPreview","value","onEditClick","hasRichPreviews","hasUnlinkControl","onRemove","showRichPreviews","url","richData","isFetching","hasRichData","Object","keys","length","displayURL","displayTitle","title","isEmptyURL","icon","info","globe","edit","linkOff","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\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\taria-selected=\"true\"\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\tLink 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{ ( ( hasRichData &&\n\t\t\t\t( richData?.image || richData?.description ) ) ||\n\t\t\t\tisFetching ) && (\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"]}
@@ -28,13 +28,15 @@ var _icons = require("@wordpress/icons");
28
28
  /**
29
29
  * WordPress dependencies
30
30
  */
31
- const LinkControlSearchCreate = ({
32
- searchTerm,
33
- onClick,
34
- itemProps,
35
- isSelected,
36
- buttonText
37
- }) => {
31
+ const LinkControlSearchCreate = _ref => {
32
+ let {
33
+ searchTerm,
34
+ onClick,
35
+ itemProps,
36
+ isSelected,
37
+ buttonText
38
+ } = _ref;
39
+
38
40
  if (!searchTerm) {
39
41
  return null;
40
42
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-create-button.js"],"names":["LinkControlSearchCreate","searchTerm","onClick","itemProps","isSelected","buttonText","text","mark","plus"],"mappings":";;;;;;;;;AAWA;;;;AARA;;AACA;;AAKA;;AACA;;AAEA;;AAZA;AACA;AACA;;AAIA;AACA;AACA;AAMO,MAAMA,uBAAuB,GAAG,CAAE;AACxCC,EAAAA,UADwC;AAExCC,EAAAA,OAFwC;AAGxCC,EAAAA,SAHwC;AAIxCC,EAAAA,UAJwC;AAKxCC,EAAAA;AALwC,CAAF,KAMhC;AACN,MAAK,CAAEJ,UAAP,EAAoB;AACnB,WAAO,IAAP;AACA;;AAED,MAAIK,IAAJ;;AACA,MAAKD,UAAL,EAAkB;AACjBC,IAAAA,IAAI,GAAG,wBAAYD,UAAZ,IAA2BA,UAAU,CAAEJ,UAAF,CAArC,GAAsDI,UAA7D;AACA,GAFD,MAEO;AACNC,IAAAA,IAAI,GAAG,uCACN;AACC;AACA,kBAAI,yBAAJ,CAFD,EAGCL,UAHD,CADM,EAMN;AAAEM,MAAAA,IAAI,EAAE;AAAR,KANM,CAAP;AAQA;;AAED,SACC,4BAAC,kBAAD,6BACMJ,SADN;AAEC,IAAA,SAAS,EAAG,yBACX,iFADW,EAEX;AACC,qBAAeC;AADhB,KAFW,CAFb;AAQC,IAAA,OAAO,EAAGF;AARX,MAUC,4BAAC,WAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,IAAI,EAAGM;AAFR,IAVD,EAeC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGF,IADH,CADD,CAfD,CADD;AAuBA,CAhDM;;;eAkDQN,uB","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { isFunction } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { Icon, plus } from '@wordpress/icons';\n\nexport const LinkControlSearchCreate = ( {\n\tsearchTerm,\n\tonClick,\n\titemProps,\n\tisSelected,\n\tbuttonText,\n} ) => {\n\tif ( ! searchTerm ) {\n\t\treturn null;\n\t}\n\n\tlet text;\n\tif ( buttonText ) {\n\t\ttext = isFunction( buttonText ) ? buttonText( searchTerm ) : 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<Button\n\t\t\t{ ...itemProps }\n\t\t\tclassName={ classnames(\n\t\t\t\t'block-editor-link-control__search-create block-editor-link-control__search-item',\n\t\t\t\t{\n\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t}\n\t\t\t) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t<Icon\n\t\t\t\tclassName=\"block-editor-link-control__search-item-icon\"\n\t\t\t\ticon={ plus }\n\t\t\t/>\n\n\t\t\t<span className=\"block-editor-link-control__search-item-header\">\n\t\t\t\t<span className=\"block-editor-link-control__search-item-title\">\n\t\t\t\t\t{ text }\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t</Button>\n\t);\n};\n\nexport default LinkControlSearchCreate;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-create-button.js"],"names":["LinkControlSearchCreate","searchTerm","onClick","itemProps","isSelected","buttonText","text","mark","plus"],"mappings":";;;;;;;;;AAWA;;;;AARA;;AACA;;AAKA;;AACA;;AAEA;;AAZA;AACA;AACA;;AAIA;AACA;AACA;AAMO,MAAMA,uBAAuB,GAAG,QAMhC;AAAA,MANkC;AACxCC,IAAAA,UADwC;AAExCC,IAAAA,OAFwC;AAGxCC,IAAAA,SAHwC;AAIxCC,IAAAA,UAJwC;AAKxCC,IAAAA;AALwC,GAMlC;;AACN,MAAK,CAAEJ,UAAP,EAAoB;AACnB,WAAO,IAAP;AACA;;AAED,MAAIK,IAAJ;;AACA,MAAKD,UAAL,EAAkB;AACjBC,IAAAA,IAAI,GAAG,wBAAYD,UAAZ,IAA2BA,UAAU,CAAEJ,UAAF,CAArC,GAAsDI,UAA7D;AACA,GAFD,MAEO;AACNC,IAAAA,IAAI,GAAG,uCACN;AACC;AACA,kBAAI,yBAAJ,CAFD,EAGCL,UAHD,CADM,EAMN;AAAEM,MAAAA,IAAI,EAAE;AAAR,KANM,CAAP;AAQA;;AAED,SACC,4BAAC,kBAAD,6BACMJ,SADN;AAEC,IAAA,SAAS,EAAG,yBACX,iFADW,EAEX;AACC,qBAAeC;AADhB,KAFW,CAFb;AAQC,IAAA,OAAO,EAAGF;AARX,MAUC,4BAAC,WAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,IAAI,EAAGM;AAFR,IAVD,EAeC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGF,IADH,CADD,CAfD,CADD;AAuBA,CAhDM;;;eAkDQN,uB","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { isFunction } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { Icon, plus } from '@wordpress/icons';\n\nexport const LinkControlSearchCreate = ( {\n\tsearchTerm,\n\tonClick,\n\titemProps,\n\tisSelected,\n\tbuttonText,\n} ) => {\n\tif ( ! searchTerm ) {\n\t\treturn null;\n\t}\n\n\tlet text;\n\tif ( buttonText ) {\n\t\ttext = isFunction( buttonText ) ? buttonText( searchTerm ) : 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<Button\n\t\t\t{ ...itemProps }\n\t\t\tclassName={ classnames(\n\t\t\t\t'block-editor-link-control__search-create block-editor-link-control__search-item',\n\t\t\t\t{\n\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t}\n\t\t\t) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t<Icon\n\t\t\t\tclassName=\"block-editor-link-control__search-item-icon\"\n\t\t\t\ticon={ plus }\n\t\t\t/>\n\n\t\t\t<span className=\"block-editor-link-control__search-item-header\">\n\t\t\t\t<span className=\"block-editor-link-control__search-item-title\">\n\t\t\t\t\t{ text }\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t</Button>\n\t);\n};\n\nexport default LinkControlSearchCreate;\n"]}
@@ -41,26 +41,27 @@ var _useSearchHandler = _interopRequireDefault(require("./use-search-handler"));
41
41
  // which will cause an unintended http request.
42
42
  const noopSearchHandler = () => Promise.resolve([]);
43
43
 
44
- const LinkControlSearchInput = (0, _element.forwardRef)(({
45
- value,
46
- children,
47
- currentLink = {},
48
- className = null,
49
- placeholder = null,
50
- withCreateSuggestion = false,
51
- onCreateSuggestion = _lodash.noop,
52
- onChange = _lodash.noop,
53
- onSelect = _lodash.noop,
54
- showSuggestions = true,
55
- renderSuggestions = props => (0, _element.createElement)(_searchResults.default, props),
56
- fetchSuggestions = null,
57
- allowDirectEntry = true,
58
- showInitialSuggestions = false,
59
- suggestionsQuery = {},
60
- withURLSuggestion = true,
61
- createSuggestionButtonText,
62
- useLabel = false
63
- }, ref) => {
44
+ const LinkControlSearchInput = (0, _element.forwardRef)((_ref, ref) => {
45
+ let {
46
+ value,
47
+ children,
48
+ currentLink = {},
49
+ className = null,
50
+ placeholder = null,
51
+ withCreateSuggestion = false,
52
+ onCreateSuggestion = _lodash.noop,
53
+ onChange = _lodash.noop,
54
+ onSelect = _lodash.noop,
55
+ showSuggestions = true,
56
+ renderSuggestions = props => (0, _element.createElement)(_searchResults.default, props),
57
+ fetchSuggestions = null,
58
+ allowDirectEntry = true,
59
+ showInitialSuggestions = false,
60
+ suggestionsQuery = {},
61
+ withURLSuggestion = true,
62
+ createSuggestionButtonText,
63
+ useLabel = false
64
+ } = _ref;
64
65
  const genericSearchHandler = (0, _useSearchHandler.default)(suggestionsQuery, allowDirectEntry, withCreateSuggestion, withURLSuggestion);
65
66
  const searchHandler = showSuggestions ? fetchSuggestions || genericSearchHandler : noopSearchHandler;
66
67
  const instanceId = (0, _compose.useInstanceId)(LinkControlSearchInput);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-input.js"],"names":["noopSearchHandler","Promise","resolve","LinkControlSearchInput","value","children","currentLink","className","placeholder","withCreateSuggestion","onCreateSuggestion","noop","onChange","onSelect","showSuggestions","renderSuggestions","props","fetchSuggestions","allowDirectEntry","showInitialSuggestions","suggestionsQuery","withURLSuggestion","createSuggestionButtonText","useLabel","ref","genericSearchHandler","searchHandler","instanceId","focusedSuggestion","setFocusedSuggestion","onInputChange","selection","suggestion","handleRenderSuggestions","currentInputValue","handleSuggestionClick","onSuggestionSelected","selectedSuggestion","CREATE_TYPE","type","title","url","e","Object","keys","length","inputClasses","undefined","event","hasSuggestion","trim","preventDefault"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop, omit } from 'lodash';\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 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\tuseLabel = 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\tcurrentInputValue: value,\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\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{ ...omit( currentLink, 'id', 'url' ), ...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': ! useLabel,\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\tlabel={ useLabel ? 'URL' : undefined }\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,"sources":["@wordpress/block-editor/src/components/link-control/search-input.js"],"names":["noopSearchHandler","Promise","resolve","LinkControlSearchInput","ref","value","children","currentLink","className","placeholder","withCreateSuggestion","onCreateSuggestion","noop","onChange","onSelect","showSuggestions","renderSuggestions","props","fetchSuggestions","allowDirectEntry","showInitialSuggestions","suggestionsQuery","withURLSuggestion","createSuggestionButtonText","useLabel","genericSearchHandler","searchHandler","instanceId","focusedSuggestion","setFocusedSuggestion","onInputChange","selection","suggestion","handleRenderSuggestions","currentInputValue","handleSuggestionClick","onSuggestionSelected","selectedSuggestion","CREATE_TYPE","type","title","url","e","Object","keys","length","inputClasses","undefined","event","hasSuggestion","trim","preventDefault"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop, omit } from 'lodash';\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 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\tuseLabel = 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\tcurrentInputValue: value,\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\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{ ...omit( currentLink, 'id', 'url' ), ...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': ! useLabel,\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\tlabel={ useLabel ? 'URL' : undefined }\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"]}
@@ -28,15 +28,16 @@ var _icons = require("@wordpress/icons");
28
28
  /**
29
29
  * WordPress dependencies
30
30
  */
31
- const LinkControlSearchItem = ({
32
- itemProps,
33
- suggestion,
34
- isSelected = false,
35
- onClick,
36
- isURL = false,
37
- searchTerm = '',
38
- shouldShowType = false
39
- }) => {
31
+ const LinkControlSearchItem = _ref => {
32
+ let {
33
+ itemProps,
34
+ suggestion,
35
+ isSelected = false,
36
+ onClick,
37
+ isURL = false,
38
+ searchTerm = '',
39
+ shouldShowType = false
40
+ } = _ref;
40
41
  return (0, _element.createElement)(_components.Button, (0, _extends2.default)({}, itemProps, {
41
42
  onClick: onClick,
42
43
  className: (0, _classnames.default)('block-editor-link-control__search-item', {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-item.js"],"names":["LinkControlSearchItem","itemProps","suggestion","isSelected","onClick","isURL","searchTerm","shouldShowType","globe","title","url","type"],"mappings":";;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AACA;;AAXA;AACA;AACA;;AAGA;AACA;AACA;AAMO,MAAMA,qBAAqB,GAAG,CAAE;AACtCC,EAAAA,SADsC;AAEtCC,EAAAA,UAFsC;AAGtCC,EAAAA,UAAU,GAAG,KAHyB;AAItCC,EAAAA,OAJsC;AAKtCC,EAAAA,KAAK,GAAG,KAL8B;AAMtCC,EAAAA,UAAU,GAAG,EANyB;AAOtCC,EAAAA,cAAc,GAAG;AAPqB,CAAF,KAQ9B;AACN,SACC,4BAAC,kBAAD,6BACMN,SADN;AAEC,IAAA,OAAO,EAAGG,OAFX;AAGC,IAAA,SAAS,EAAG,yBAAY,wCAAZ,EAAsD;AACjE,qBAAeD,UADkD;AAEjE,gBAAUE,KAFuD;AAGjE,mBAAa,CAAEA;AAHkD,KAAtD;AAHb,MASGA,KAAK,IACN,4BAAC,WAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,IAAI,EAAGG;AAFR,IAVF,EAeC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACC,4BAAC,yBAAD;AACC,IAAA,IAAI,EAAGN,UAAU,CAACO,KADnB;AAEC,IAAA,SAAS,EAAGH;AAFb,IADD,CADD,EAOC;AACC,mBAAc,CAAED,KADjB;AAEC,IAAA,SAAS,EAAC;AAFX,KAIG,CAAEA,KAAF,KACC,8BACD,wBAAeH,UAAU,CAACQ,GAA1B,CADC,KAGD,EAJA,CAJH,EASGL,KAAK,IAAI,cAAI,8BAAJ,CATZ,CAPD,CAfD,EAkCGE,cAAc,IAAIL,UAAU,CAACS,IAA7B,IACD;AAAM,IAAA,SAAS,EAAC;AAAhB,KAEGT,UAAU,CAACS,IAAX,KAAoB,UAApB,GAAiC,KAAjC,GAAyCT,UAAU,CAACS,IAFvD,CAnCF,CADD;AA2CA,CApDM;;;eAsDQX,qB","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { safeDecodeURI, filterURLForDisplay } from '@wordpress/url';\nimport { __ } from '@wordpress/i18n';\nimport { Button, TextHighlight } from '@wordpress/components';\nimport { Icon, globe } from '@wordpress/icons';\n\nexport const LinkControlSearchItem = ( {\n\titemProps,\n\tsuggestion,\n\tisSelected = false,\n\tonClick,\n\tisURL = false,\n\tsearchTerm = '',\n\tshouldShowType = false,\n} ) => {\n\treturn (\n\t\t<Button\n\t\t\t{ ...itemProps }\n\t\t\tonClick={ onClick }\n\t\t\tclassName={ classnames( 'block-editor-link-control__search-item', {\n\t\t\t\t'is-selected': isSelected,\n\t\t\t\t'is-url': isURL,\n\t\t\t\t'is-entity': ! isURL,\n\t\t\t} ) }\n\t\t>\n\t\t\t{ isURL && (\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"block-editor-link-control__search-item-icon\"\n\t\t\t\t\ticon={ globe }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<span className=\"block-editor-link-control__search-item-header\">\n\t\t\t\t<span className=\"block-editor-link-control__search-item-title\">\n\t\t\t\t\t<TextHighlight\n\t\t\t\t\t\ttext={ suggestion.title }\n\t\t\t\t\t\thighlight={ searchTerm }\n\t\t\t\t\t/>\n\t\t\t\t</span>\n\t\t\t\t<span\n\t\t\t\t\taria-hidden={ ! isURL }\n\t\t\t\t\tclassName=\"block-editor-link-control__search-item-info\"\n\t\t\t\t>\n\t\t\t\t\t{ ! isURL &&\n\t\t\t\t\t\t( filterURLForDisplay(\n\t\t\t\t\t\t\tsafeDecodeURI( suggestion.url )\n\t\t\t\t\t\t) ||\n\t\t\t\t\t\t\t'' ) }\n\t\t\t\t\t{ isURL && __( 'Press ENTER to add this link' ) }\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t\t{ shouldShowType && suggestion.type && (\n\t\t\t\t<span className=\"block-editor-link-control__search-item-type\">\n\t\t\t\t\t{ /* Rename 'post_tag' to 'tag'. Ideally, the API would return the localised CPT or taxonomy label. */ }\n\t\t\t\t\t{ suggestion.type === 'post_tag' ? 'tag' : suggestion.type }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</Button>\n\t);\n};\n\nexport default LinkControlSearchItem;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-item.js"],"names":["LinkControlSearchItem","itemProps","suggestion","isSelected","onClick","isURL","searchTerm","shouldShowType","globe","title","url","type"],"mappings":";;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AACA;;AAXA;AACA;AACA;;AAGA;AACA;AACA;AAMO,MAAMA,qBAAqB,GAAG,QAQ9B;AAAA,MARgC;AACtCC,IAAAA,SADsC;AAEtCC,IAAAA,UAFsC;AAGtCC,IAAAA,UAAU,GAAG,KAHyB;AAItCC,IAAAA,OAJsC;AAKtCC,IAAAA,KAAK,GAAG,KAL8B;AAMtCC,IAAAA,UAAU,GAAG,EANyB;AAOtCC,IAAAA,cAAc,GAAG;AAPqB,GAQhC;AACN,SACC,4BAAC,kBAAD,6BACMN,SADN;AAEC,IAAA,OAAO,EAAGG,OAFX;AAGC,IAAA,SAAS,EAAG,yBAAY,wCAAZ,EAAsD;AACjE,qBAAeD,UADkD;AAEjE,gBAAUE,KAFuD;AAGjE,mBAAa,CAAEA;AAHkD,KAAtD;AAHb,MASGA,KAAK,IACN,4BAAC,WAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,IAAI,EAAGG;AAFR,IAVF,EAeC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACC,4BAAC,yBAAD;AACC,IAAA,IAAI,EAAGN,UAAU,CAACO,KADnB;AAEC,IAAA,SAAS,EAAGH;AAFb,IADD,CADD,EAOC;AACC,mBAAc,CAAED,KADjB;AAEC,IAAA,SAAS,EAAC;AAFX,KAIG,CAAEA,KAAF,KACC,8BACD,wBAAeH,UAAU,CAACQ,GAA1B,CADC,KAGD,EAJA,CAJH,EASGL,KAAK,IAAI,cAAI,8BAAJ,CATZ,CAPD,CAfD,EAkCGE,cAAc,IAAIL,UAAU,CAACS,IAA7B,IACD;AAAM,IAAA,SAAS,EAAC;AAAhB,KAEGT,UAAU,CAACS,IAAX,KAAoB,UAApB,GAAiC,KAAjC,GAAyCT,UAAU,CAACS,IAFvD,CAnCF,CADD;AA2CA,CApDM;;;eAsDQX,qB","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { safeDecodeURI, filterURLForDisplay } from '@wordpress/url';\nimport { __ } from '@wordpress/i18n';\nimport { Button, TextHighlight } from '@wordpress/components';\nimport { Icon, globe } from '@wordpress/icons';\n\nexport const LinkControlSearchItem = ( {\n\titemProps,\n\tsuggestion,\n\tisSelected = false,\n\tonClick,\n\tisURL = false,\n\tsearchTerm = '',\n\tshouldShowType = false,\n} ) => {\n\treturn (\n\t\t<Button\n\t\t\t{ ...itemProps }\n\t\t\tonClick={ onClick }\n\t\t\tclassName={ classnames( 'block-editor-link-control__search-item', {\n\t\t\t\t'is-selected': isSelected,\n\t\t\t\t'is-url': isURL,\n\t\t\t\t'is-entity': ! isURL,\n\t\t\t} ) }\n\t\t>\n\t\t\t{ isURL && (\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"block-editor-link-control__search-item-icon\"\n\t\t\t\t\ticon={ globe }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<span className=\"block-editor-link-control__search-item-header\">\n\t\t\t\t<span className=\"block-editor-link-control__search-item-title\">\n\t\t\t\t\t<TextHighlight\n\t\t\t\t\t\ttext={ suggestion.title }\n\t\t\t\t\t\thighlight={ searchTerm }\n\t\t\t\t\t/>\n\t\t\t\t</span>\n\t\t\t\t<span\n\t\t\t\t\taria-hidden={ ! isURL }\n\t\t\t\t\tclassName=\"block-editor-link-control__search-item-info\"\n\t\t\t\t>\n\t\t\t\t\t{ ! isURL &&\n\t\t\t\t\t\t( filterURLForDisplay(\n\t\t\t\t\t\t\tsafeDecodeURI( suggestion.url )\n\t\t\t\t\t\t) ||\n\t\t\t\t\t\t\t'' ) }\n\t\t\t\t\t{ isURL && __( 'Press ENTER to add this link' ) }\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t\t{ shouldShowType && suggestion.type && (\n\t\t\t\t<span className=\"block-editor-link-control__search-item-type\">\n\t\t\t\t\t{ /* Rename 'post_tag' to 'tag'. Ideally, the API would return the localised CPT or taxonomy label. */ }\n\t\t\t\t\t{ suggestion.type === 'post_tag' ? 'tag' : suggestion.type }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</Button>\n\t);\n};\n\nexport default LinkControlSearchItem;\n"]}
@@ -34,20 +34,21 @@ var _constants = require("./constants");
34
34
  /**
35
35
  * Internal dependencies
36
36
  */
37
- function LinkControlSearchResults({
38
- instanceId,
39
- withCreateSuggestion,
40
- currentInputValue,
41
- handleSuggestionClick,
42
- suggestionsListProps,
43
- buildSuggestionItemProps,
44
- suggestions,
45
- selectedSuggestion,
46
- isLoading,
47
- isInitialSuggestions,
48
- createSuggestionButtonText,
49
- suggestionsQuery
50
- }) {
37
+ function LinkControlSearchResults(_ref) {
38
+ let {
39
+ instanceId,
40
+ withCreateSuggestion,
41
+ currentInputValue,
42
+ handleSuggestionClick,
43
+ suggestionsListProps,
44
+ buildSuggestionItemProps,
45
+ suggestions,
46
+ selectedSuggestion,
47
+ isLoading,
48
+ isInitialSuggestions,
49
+ createSuggestionButtonText,
50
+ suggestionsQuery
51
+ } = _ref;
51
52
  const resultsListClasses = (0, _classnames.default)('block-editor-link-control__search-results', {
52
53
  'is-loading': isLoading
53
54
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-results.js"],"names":["LinkControlSearchResults","instanceId","withCreateSuggestion","currentInputValue","handleSuggestionClick","suggestionsListProps","buildSuggestionItemProps","suggestions","selectedSuggestion","isLoading","isInitialSuggestions","createSuggestionButtonText","suggestionsQuery","resultsListClasses","directLinkEntryTypes","isSingleDirectEntryResult","length","includes","type","toLowerCase","shouldShowCreateSuggestion","shouldShowSuggestionsTypes","searchResultsLabelId","labelText","searchResultsLabel","Fragment","VisuallyHidden","map","suggestion","index","CREATE_TYPE","id"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { VisuallyHidden } from '@wordpress/components';\n\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { createElement, Fragment } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSearchCreate from './search-create-button';\nimport LinkControlSearchItem from './search-item';\nimport { CREATE_TYPE } from './constants';\n\nexport default function LinkControlSearchResults( {\n\tinstanceId,\n\twithCreateSuggestion,\n\tcurrentInputValue,\n\thandleSuggestionClick,\n\tsuggestionsListProps,\n\tbuildSuggestionItemProps,\n\tsuggestions,\n\tselectedSuggestion,\n\tisLoading,\n\tisInitialSuggestions,\n\tcreateSuggestionButtonText,\n\tsuggestionsQuery,\n} ) {\n\tconst resultsListClasses = classnames(\n\t\t'block-editor-link-control__search-results',\n\t\t{\n\t\t\t'is-loading': isLoading,\n\t\t}\n\t);\n\n\tconst directLinkEntryTypes = [ 'url', 'mailto', 'tel', 'internal' ];\n\tconst isSingleDirectEntryResult =\n\t\tsuggestions.length === 1 &&\n\t\tdirectLinkEntryTypes.includes( suggestions[ 0 ].type.toLowerCase() );\n\tconst shouldShowCreateSuggestion =\n\t\twithCreateSuggestion &&\n\t\t! isSingleDirectEntryResult &&\n\t\t! isInitialSuggestions;\n\t// If the query has a specified type, then we can skip showing them in the result. See #24839.\n\tconst shouldShowSuggestionsTypes = ! suggestionsQuery?.type;\n\n\t// According to guidelines aria-label should be added if the label\n\t// itself is not visible.\n\t// See: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role\n\tconst searchResultsLabelId = `block-editor-link-control-search-results-label-${ instanceId }`;\n\tconst labelText = isInitialSuggestions\n\t\t? __( 'Recently updated' )\n\t\t: sprintf(\n\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t__( 'Search results for \"%s\"' ),\n\t\t\t\tcurrentInputValue\n\t\t );\n\n\t// VisuallyHidden rightly doesn't accept custom classNames\n\t// so we conditionally render it as a wrapper to visually hide the label\n\t// when that is required.\n\tconst searchResultsLabel = createElement(\n\t\tisInitialSuggestions ? Fragment : VisuallyHidden,\n\t\t{}, // empty props\n\t\t<span\n\t\t\tclassName=\"block-editor-link-control__search-results-label\"\n\t\t\tid={ searchResultsLabelId }\n\t\t>\n\t\t\t{ labelText }\n\t\t</span>\n\t);\n\n\treturn (\n\t\t<div className=\"block-editor-link-control__search-results-wrapper\">\n\t\t\t{ searchResultsLabel }\n\t\t\t<div\n\t\t\t\t{ ...suggestionsListProps }\n\t\t\t\tclassName={ resultsListClasses }\n\t\t\t\taria-labelledby={ searchResultsLabelId }\n\t\t\t>\n\t\t\t\t{ suggestions.map( ( suggestion, index ) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\tshouldShowCreateSuggestion &&\n\t\t\t\t\t\tCREATE_TYPE === suggestion.type\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<LinkControlSearchCreate\n\t\t\t\t\t\t\t\tsearchTerm={ currentInputValue }\n\t\t\t\t\t\t\t\tbuttonText={ createSuggestionButtonText }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\thandleSuggestionClick( suggestion )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// Intentionally only using `type` here as\n\t\t\t\t\t\t\t\t// the constant is enough to uniquely\n\t\t\t\t\t\t\t\t// identify the single \"CREATE\" suggestion.\n\t\t\t\t\t\t\t\tkey={ suggestion.type }\n\t\t\t\t\t\t\t\titemProps={ buildSuggestionItemProps(\n\t\t\t\t\t\t\t\t\tsuggestion,\n\t\t\t\t\t\t\t\t\tindex\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tisSelected={ index === selectedSuggestion }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// If we're not handling \"Create\" suggestions above then\n\t\t\t\t\t// we don't want them in the main results so exit early\n\t\t\t\t\tif ( CREATE_TYPE === suggestion.type ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<LinkControlSearchItem\n\t\t\t\t\t\t\tkey={ `${ suggestion.id }-${ suggestion.type }` }\n\t\t\t\t\t\t\titemProps={ buildSuggestionItemProps(\n\t\t\t\t\t\t\t\tsuggestion,\n\t\t\t\t\t\t\t\tindex\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tsuggestion={ suggestion }\n\t\t\t\t\t\t\tindex={ index }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\thandleSuggestionClick( suggestion );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tisSelected={ index === selectedSuggestion }\n\t\t\t\t\t\t\tisURL={ directLinkEntryTypes.includes(\n\t\t\t\t\t\t\t\tsuggestion.type.toLowerCase()\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tsearchTerm={ currentInputValue }\n\t\t\t\t\t\t\tshouldShowType={ shouldShowSuggestionsTypes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/search-results.js"],"names":["LinkControlSearchResults","instanceId","withCreateSuggestion","currentInputValue","handleSuggestionClick","suggestionsListProps","buildSuggestionItemProps","suggestions","selectedSuggestion","isLoading","isInitialSuggestions","createSuggestionButtonText","suggestionsQuery","resultsListClasses","directLinkEntryTypes","isSingleDirectEntryResult","length","includes","type","toLowerCase","shouldShowCreateSuggestion","shouldShowSuggestionsTypes","searchResultsLabelId","labelText","searchResultsLabel","Fragment","VisuallyHidden","map","suggestion","index","CREATE_TYPE","id"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { VisuallyHidden } from '@wordpress/components';\n\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { createElement, Fragment } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSearchCreate from './search-create-button';\nimport LinkControlSearchItem from './search-item';\nimport { CREATE_TYPE } from './constants';\n\nexport default function LinkControlSearchResults( {\n\tinstanceId,\n\twithCreateSuggestion,\n\tcurrentInputValue,\n\thandleSuggestionClick,\n\tsuggestionsListProps,\n\tbuildSuggestionItemProps,\n\tsuggestions,\n\tselectedSuggestion,\n\tisLoading,\n\tisInitialSuggestions,\n\tcreateSuggestionButtonText,\n\tsuggestionsQuery,\n} ) {\n\tconst resultsListClasses = classnames(\n\t\t'block-editor-link-control__search-results',\n\t\t{\n\t\t\t'is-loading': isLoading,\n\t\t}\n\t);\n\n\tconst directLinkEntryTypes = [ 'url', 'mailto', 'tel', 'internal' ];\n\tconst isSingleDirectEntryResult =\n\t\tsuggestions.length === 1 &&\n\t\tdirectLinkEntryTypes.includes( suggestions[ 0 ].type.toLowerCase() );\n\tconst shouldShowCreateSuggestion =\n\t\twithCreateSuggestion &&\n\t\t! isSingleDirectEntryResult &&\n\t\t! isInitialSuggestions;\n\t// If the query has a specified type, then we can skip showing them in the result. See #24839.\n\tconst shouldShowSuggestionsTypes = ! suggestionsQuery?.type;\n\n\t// According to guidelines aria-label should be added if the label\n\t// itself is not visible.\n\t// See: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role\n\tconst searchResultsLabelId = `block-editor-link-control-search-results-label-${ instanceId }`;\n\tconst labelText = isInitialSuggestions\n\t\t? __( 'Recently updated' )\n\t\t: sprintf(\n\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t__( 'Search results for \"%s\"' ),\n\t\t\t\tcurrentInputValue\n\t\t );\n\n\t// VisuallyHidden rightly doesn't accept custom classNames\n\t// so we conditionally render it as a wrapper to visually hide the label\n\t// when that is required.\n\tconst searchResultsLabel = createElement(\n\t\tisInitialSuggestions ? Fragment : VisuallyHidden,\n\t\t{}, // empty props\n\t\t<span\n\t\t\tclassName=\"block-editor-link-control__search-results-label\"\n\t\t\tid={ searchResultsLabelId }\n\t\t>\n\t\t\t{ labelText }\n\t\t</span>\n\t);\n\n\treturn (\n\t\t<div className=\"block-editor-link-control__search-results-wrapper\">\n\t\t\t{ searchResultsLabel }\n\t\t\t<div\n\t\t\t\t{ ...suggestionsListProps }\n\t\t\t\tclassName={ resultsListClasses }\n\t\t\t\taria-labelledby={ searchResultsLabelId }\n\t\t\t>\n\t\t\t\t{ suggestions.map( ( suggestion, index ) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\tshouldShowCreateSuggestion &&\n\t\t\t\t\t\tCREATE_TYPE === suggestion.type\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<LinkControlSearchCreate\n\t\t\t\t\t\t\t\tsearchTerm={ currentInputValue }\n\t\t\t\t\t\t\t\tbuttonText={ createSuggestionButtonText }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\thandleSuggestionClick( suggestion )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// Intentionally only using `type` here as\n\t\t\t\t\t\t\t\t// the constant is enough to uniquely\n\t\t\t\t\t\t\t\t// identify the single \"CREATE\" suggestion.\n\t\t\t\t\t\t\t\tkey={ suggestion.type }\n\t\t\t\t\t\t\t\titemProps={ buildSuggestionItemProps(\n\t\t\t\t\t\t\t\t\tsuggestion,\n\t\t\t\t\t\t\t\t\tindex\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tisSelected={ index === selectedSuggestion }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// If we're not handling \"Create\" suggestions above then\n\t\t\t\t\t// we don't want them in the main results so exit early\n\t\t\t\t\tif ( CREATE_TYPE === suggestion.type ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<LinkControlSearchItem\n\t\t\t\t\t\t\tkey={ `${ suggestion.id }-${ suggestion.type }` }\n\t\t\t\t\t\t\titemProps={ buildSuggestionItemProps(\n\t\t\t\t\t\t\t\tsuggestion,\n\t\t\t\t\t\t\t\tindex\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tsuggestion={ suggestion }\n\t\t\t\t\t\t\tindex={ index }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\thandleSuggestionClick( suggestion );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tisSelected={ index === selectedSuggestion }\n\t\t\t\t\t\t\tisURL={ directLinkEntryTypes.includes(\n\t\t\t\t\t\t\t\tsuggestion.type.toLowerCase()\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tsearchTerm={ currentInputValue }\n\t\t\t\t\t\t\tshouldShowType={ shouldShowSuggestionsTypes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
@@ -20,11 +20,13 @@ var _components = require("@wordpress/components");
20
20
  /**
21
21
  * WordPress dependencies
22
22
  */
23
- const LinkControlSettingsDrawer = ({
24
- value,
25
- onChange = _lodash.noop,
26
- settings
27
- }) => {
23
+ const LinkControlSettingsDrawer = _ref => {
24
+ let {
25
+ value,
26
+ onChange = _lodash.noop,
27
+ settings
28
+ } = _ref;
29
+
28
30
  if (!settings || !settings.length) {
29
31
  return null;
30
32
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/settings-drawer.js"],"names":["LinkControlSettingsDrawer","value","onChange","noop","settings","length","handleSettingChange","setting","newValue","id","theSettings","map","title"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,MAAMA,yBAAyB,GAAG,CAAE;AAAEC,EAAAA,KAAF;AAASC,EAAAA,QAAQ,GAAGC,YAApB;AAA0BC,EAAAA;AAA1B,CAAF,KAA4C;AAC7E,MAAK,CAAEA,QAAF,IAAc,CAAEA,QAAQ,CAACC,MAA9B,EAAuC;AACtC,WAAO,IAAP;AACA;;AAED,QAAMC,mBAAmB,GAAKC,OAAF,IAAiBC,QAAF,IAAgB;AAC1DN,IAAAA,QAAQ,CAAE,EACT,GAAGD,KADM;AAET,OAAEM,OAAO,CAACE,EAAV,GAAgBD;AAFP,KAAF,CAAR;AAIA,GALD;;AAOA,QAAME,WAAW,GAAGN,QAAQ,CAACO,GAAT,CAAgBJ,OAAF,IACjC,4BAAC,yBAAD;AACC,IAAA,SAAS,EAAC,oCADX;AAEC,IAAA,GAAG,EAAGA,OAAO,CAACE,EAFf;AAGC,IAAA,KAAK,EAAGF,OAAO,CAACK,KAHjB;AAIC,IAAA,QAAQ,EAAGN,mBAAmB,CAAEC,OAAF,CAJ/B;AAKC,IAAA,OAAO,EAAGN,KAAK,GAAG,CAAC,CAAEA,KAAK,CAAEM,OAAO,CAACE,EAAV,CAAX,GAA4B;AAL5C,IADmB,CAApB;AAUA,SACC;AAAU,IAAA,SAAS,EAAC;AAApB,KACC,4BAAC,0BAAD;AAAgB,IAAA,EAAE,EAAC;AAAnB,KACG,cAAI,kCAAJ,CADH,CADD,EAIGC,WAJH,CADD;AAQA,CA9BD;;eAgCeV,yB","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ToggleControl, VisuallyHidden } from '@wordpress/components';\n\nconst LinkControlSettingsDrawer = ( { value, onChange = noop, settings } ) => {\n\tif ( ! settings || ! settings.length ) {\n\t\treturn null;\n\t}\n\n\tconst handleSettingChange = ( setting ) => ( newValue ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\t[ setting.id ]: newValue,\n\t\t} );\n\t};\n\n\tconst theSettings = settings.map( ( setting ) => (\n\t\t<ToggleControl\n\t\t\tclassName=\"block-editor-link-control__setting\"\n\t\t\tkey={ setting.id }\n\t\t\tlabel={ setting.title }\n\t\t\tonChange={ handleSettingChange( setting ) }\n\t\t\tchecked={ value ? !! value[ setting.id ] : false }\n\t\t/>\n\t) );\n\n\treturn (\n\t\t<fieldset className=\"block-editor-link-control__settings\">\n\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t{ __( 'Currently selected link settings' ) }\n\t\t\t</VisuallyHidden>\n\t\t\t{ theSettings }\n\t\t</fieldset>\n\t);\n};\n\nexport default LinkControlSettingsDrawer;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/settings-drawer.js"],"names":["LinkControlSettingsDrawer","value","onChange","noop","settings","length","handleSettingChange","setting","newValue","id","theSettings","map","title"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,MAAMA,yBAAyB,GAAG,QAA4C;AAAA,MAA1C;AAAEC,IAAAA,KAAF;AAASC,IAAAA,QAAQ,GAAGC,YAApB;AAA0BC,IAAAA;AAA1B,GAA0C;;AAC7E,MAAK,CAAEA,QAAF,IAAc,CAAEA,QAAQ,CAACC,MAA9B,EAAuC;AACtC,WAAO,IAAP;AACA;;AAED,QAAMC,mBAAmB,GAAKC,OAAF,IAAiBC,QAAF,IAAgB;AAC1DN,IAAAA,QAAQ,CAAE,EACT,GAAGD,KADM;AAET,OAAEM,OAAO,CAACE,EAAV,GAAgBD;AAFP,KAAF,CAAR;AAIA,GALD;;AAOA,QAAME,WAAW,GAAGN,QAAQ,CAACO,GAAT,CAAgBJ,OAAF,IACjC,4BAAC,yBAAD;AACC,IAAA,SAAS,EAAC,oCADX;AAEC,IAAA,GAAG,EAAGA,OAAO,CAACE,EAFf;AAGC,IAAA,KAAK,EAAGF,OAAO,CAACK,KAHjB;AAIC,IAAA,QAAQ,EAAGN,mBAAmB,CAAEC,OAAF,CAJ/B;AAKC,IAAA,OAAO,EAAGN,KAAK,GAAG,CAAC,CAAEA,KAAK,CAAEM,OAAO,CAACE,EAAV,CAAX,GAA4B;AAL5C,IADmB,CAApB;AAUA,SACC;AAAU,IAAA,SAAS,EAAC;AAApB,KACC,4BAAC,0BAAD;AAAgB,IAAA,EAAE,EAAC;AAAnB,KACG,cAAI,kCAAJ,CADH,CADD,EAIGC,WAJH,CADD;AAQA,CA9BD;;eAgCeV,yB","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ToggleControl, VisuallyHidden } from '@wordpress/components';\n\nconst LinkControlSettingsDrawer = ( { value, onChange = noop, settings } ) => {\n\tif ( ! settings || ! settings.length ) {\n\t\treturn null;\n\t}\n\n\tconst handleSettingChange = ( setting ) => ( newValue ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\t[ setting.id ]: newValue,\n\t\t} );\n\t};\n\n\tconst theSettings = settings.map( ( setting ) => (\n\t\t<ToggleControl\n\t\t\tclassName=\"block-editor-link-control__setting\"\n\t\t\tkey={ setting.id }\n\t\t\tlabel={ setting.title }\n\t\t\tonChange={ handleSettingChange( setting ) }\n\t\t\tchecked={ value ? !! value[ setting.id ] : false }\n\t\t/>\n\t) );\n\n\treturn (\n\t\t<fieldset className=\"block-editor-link-control__settings\">\n\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t{ __( 'Currently selected link settings' ) }\n\t\t\t</VisuallyHidden>\n\t\t\t{ theSettings }\n\t\t</fieldset>\n\t);\n};\n\nexport default LinkControlSettingsDrawer;\n"]}
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = useSearchHandler;
9
- exports.handleDirectEntry = exports.handleNoop = void 0;
9
+ exports.handleNoop = exports.handleDirectEntry = void 0;
10
10
 
11
11
  var _url = require("@wordpress/url");
12
12
 
@@ -121,9 +121,10 @@ function useSearchHandler(suggestionsQuery, allowDirectEntry, withCreateSuggesti
121
121
  };
122
122
  }, []);
123
123
  const directEntryHandler = allowDirectEntry ? handleDirectEntry : handleNoop;
124
- return (0, _element.useCallback)((val, {
125
- isInitialSuggestions
126
- }) => {
124
+ return (0, _element.useCallback)((val, _ref) => {
125
+ let {
126
+ isInitialSuggestions
127
+ } = _ref;
127
128
  return (0, _isUrlLike.default)(val) ? directEntryHandler(val, {
128
129
  isInitialSuggestions
129
130
  }) : handleEntitySearch(val, { ...suggestionsQuery,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/use-search-handler.js"],"names":["handleNoop","Promise","resolve","handleDirectEntry","val","type","protocol","includes","id","title","url","handleEntitySearch","suggestionsQuery","fetchSearchSuggestions","directEntryHandler","withCreateSuggestion","withURLSuggestion","isInitialSuggestions","results","all","couldBeURL","concat","CREATE_TYPE","useSearchHandler","allowDirectEntry","select","getSettings","blockEditorStore","__experimentalFetchLinkSuggestions"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getProtocol, prependHTTP } from '@wordpress/url';\nimport { useCallback } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * External dependencies\n */\nimport { startsWith } from 'lodash';\n\n/**\n * Internal dependencies\n */\nimport isURLLike from './is-url-like';\nimport { CREATE_TYPE } from './constants';\nimport { store as blockEditorStore } from '../../store';\n\nexport const handleNoop = () => Promise.resolve( [] );\n\nexport const handleDirectEntry = ( val ) => {\n\tlet type = 'URL';\n\n\tconst protocol = getProtocol( val ) || '';\n\n\tif ( protocol.includes( 'mailto' ) ) {\n\t\ttype = 'mailto';\n\t}\n\n\tif ( protocol.includes( 'tel' ) ) {\n\t\ttype = 'tel';\n\t}\n\n\tif ( startsWith( val, '#' ) ) {\n\t\ttype = 'internal';\n\t}\n\n\treturn Promise.resolve( [\n\t\t{\n\t\t\tid: val,\n\t\t\ttitle: val,\n\t\t\turl: type === 'URL' ? prependHTTP( val ) : val,\n\t\t\ttype,\n\t\t},\n\t] );\n};\n\nconst handleEntitySearch = async (\n\tval,\n\tsuggestionsQuery,\n\tfetchSearchSuggestions,\n\tdirectEntryHandler,\n\twithCreateSuggestion,\n\twithURLSuggestion\n) => {\n\tconst { isInitialSuggestions } = suggestionsQuery;\n\n\tlet results = await Promise.all( [\n\t\tfetchSearchSuggestions( val, suggestionsQuery ),\n\t\tdirectEntryHandler( val ),\n\t] );\n\n\tconst couldBeURL = ! val.includes( ' ' );\n\n\t// If it's potentially a URL search then concat on a URL search suggestion\n\t// just for good measure. That way once the actual results run out we always\n\t// have a URL option to fallback on.\n\tif ( couldBeURL && withURLSuggestion && ! isInitialSuggestions ) {\n\t\tresults = results[ 0 ].concat( results[ 1 ] );\n\t} else {\n\t\tresults = results[ 0 ];\n\t}\n\n\t// If displaying initial suggestions just return plain results.\n\tif ( isInitialSuggestions ) {\n\t\treturn results;\n\t}\n\n\t// Here we append a faux suggestion to represent a \"CREATE\" option. This\n\t// is detected in the rendering of the search results and handled as a\n\t// special case. This is currently necessary because the suggestions\n\t// dropdown will only appear if there are valid suggestions and\n\t// therefore unless the create option is a suggestion it will not\n\t// display in scenarios where there are no results returned from the\n\t// API. In addition promoting CREATE to a first class suggestion affords\n\t// the a11y benefits afforded by `URLInput` to all suggestions (eg:\n\t// keyboard handling, ARIA roles...etc).\n\t//\n\t// Note also that the value of the `title` and `url` properties must correspond\n\t// to the text value of the `<input>`. This is because `title` is used\n\t// when creating the suggestion. Similarly `url` is used when using keyboard to select\n\t// the suggestion (the <form> `onSubmit` handler falls-back to `url`).\n\treturn isURLLike( val ) || ! withCreateSuggestion\n\t\t? results\n\t\t: results.concat( {\n\t\t\t\t// the `id` prop is intentionally ommitted here because it\n\t\t\t\t// is never exposed as part of the component's public API.\n\t\t\t\t// see: https://github.com/WordPress/gutenberg/pull/19775#discussion_r378931316.\n\t\t\t\ttitle: val, // must match the existing `<input>`s text value\n\t\t\t\turl: val, // must match the existing `<input>`s text value\n\t\t\t\ttype: CREATE_TYPE,\n\t\t } );\n};\n\nexport default function useSearchHandler(\n\tsuggestionsQuery,\n\tallowDirectEntry,\n\twithCreateSuggestion,\n\twithURLSuggestion\n) {\n\tconst { fetchSearchSuggestions } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tfetchSearchSuggestions: getSettings()\n\t\t\t\t.__experimentalFetchLinkSuggestions,\n\t\t};\n\t}, [] );\n\n\tconst directEntryHandler = allowDirectEntry\n\t\t? handleDirectEntry\n\t\t: handleNoop;\n\n\treturn useCallback(\n\t\t( val, { isInitialSuggestions } ) => {\n\t\t\treturn isURLLike( val )\n\t\t\t\t? directEntryHandler( val, { isInitialSuggestions } )\n\t\t\t\t: handleEntitySearch(\n\t\t\t\t\t\tval,\n\t\t\t\t\t\t{ ...suggestionsQuery, isInitialSuggestions },\n\t\t\t\t\t\tfetchSearchSuggestions,\n\t\t\t\t\t\tdirectEntryHandler,\n\t\t\t\t\t\twithCreateSuggestion,\n\t\t\t\t\t\twithURLSuggestion\n\t\t\t\t );\n\t\t},\n\t\t[ directEntryHandler, fetchSearchSuggestions, withCreateSuggestion ]\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/use-search-handler.js"],"names":["handleNoop","Promise","resolve","handleDirectEntry","val","type","protocol","includes","id","title","url","handleEntitySearch","suggestionsQuery","fetchSearchSuggestions","directEntryHandler","withCreateSuggestion","withURLSuggestion","isInitialSuggestions","results","all","couldBeURL","concat","CREATE_TYPE","useSearchHandler","allowDirectEntry","select","getSettings","blockEditorStore","__experimentalFetchLinkSuggestions"],"mappings":";;;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAKA;;AACA;;AACA;;AAjBA;AACA;AACA;;AAKA;AACA;AACA;;AAGA;AACA;AACA;AAKO,MAAMA,UAAU,GAAG,MAAMC,OAAO,CAACC,OAAR,CAAiB,EAAjB,CAAzB;;;;AAEA,MAAMC,iBAAiB,GAAKC,GAAF,IAAW;AAC3C,MAAIC,IAAI,GAAG,KAAX;AAEA,QAAMC,QAAQ,GAAG,sBAAaF,GAAb,KAAsB,EAAvC;;AAEA,MAAKE,QAAQ,CAACC,QAAT,CAAmB,QAAnB,CAAL,EAAqC;AACpCF,IAAAA,IAAI,GAAG,QAAP;AACA;;AAED,MAAKC,QAAQ,CAACC,QAAT,CAAmB,KAAnB,CAAL,EAAkC;AACjCF,IAAAA,IAAI,GAAG,KAAP;AACA;;AAED,MAAK,wBAAYD,GAAZ,EAAiB,GAAjB,CAAL,EAA8B;AAC7BC,IAAAA,IAAI,GAAG,UAAP;AACA;;AAED,SAAOJ,OAAO,CAACC,OAAR,CAAiB,CACvB;AACCM,IAAAA,EAAE,EAAEJ,GADL;AAECK,IAAAA,KAAK,EAAEL,GAFR;AAGCM,IAAAA,GAAG,EAAEL,IAAI,KAAK,KAAT,GAAiB,sBAAaD,GAAb,CAAjB,GAAsCA,GAH5C;AAICC,IAAAA;AAJD,GADuB,CAAjB,CAAP;AAQA,CAzBM;;;;AA2BP,MAAMM,kBAAkB,GAAG,OAC1BP,GAD0B,EAE1BQ,gBAF0B,EAG1BC,sBAH0B,EAI1BC,kBAJ0B,EAK1BC,oBAL0B,EAM1BC,iBAN0B,KAOtB;AACJ,QAAM;AAAEC,IAAAA;AAAF,MAA2BL,gBAAjC;AAEA,MAAIM,OAAO,GAAG,MAAMjB,OAAO,CAACkB,GAAR,CAAa,CAChCN,sBAAsB,CAAET,GAAF,EAAOQ,gBAAP,CADU,EAEhCE,kBAAkB,CAAEV,GAAF,CAFc,CAAb,CAApB;AAKA,QAAMgB,UAAU,GAAG,CAAEhB,GAAG,CAACG,QAAJ,CAAc,GAAd,CAArB,CARI,CAUJ;AACA;AACA;;AACA,MAAKa,UAAU,IAAIJ,iBAAd,IAAmC,CAAEC,oBAA1C,EAAiE;AAChEC,IAAAA,OAAO,GAAGA,OAAO,CAAE,CAAF,CAAP,CAAaG,MAAb,CAAqBH,OAAO,CAAE,CAAF,CAA5B,CAAV;AACA,GAFD,MAEO;AACNA,IAAAA,OAAO,GAAGA,OAAO,CAAE,CAAF,CAAjB;AACA,GAjBG,CAmBJ;;;AACA,MAAKD,oBAAL,EAA4B;AAC3B,WAAOC,OAAP;AACA,GAtBG,CAwBJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAAO,wBAAWd,GAAX,KAAoB,CAAEW,oBAAtB,GACJG,OADI,GAEJA,OAAO,CAACG,MAAR,CAAgB;AAChB;AACA;AACA;AACAZ,IAAAA,KAAK,EAAEL,GAJS;AAIJ;AACZM,IAAAA,GAAG,EAAEN,GALW;AAKN;AACVC,IAAAA,IAAI,EAAEiB;AANU,GAAhB,CAFH;AAUA,CAvDD;;AAyDe,SAASC,gBAAT,CACdX,gBADc,EAEdY,gBAFc,EAGdT,oBAHc,EAIdC,iBAJc,EAKb;AACD,QAAM;AAAEH,IAAAA;AAAF,MAA6B,qBAAaY,MAAF,IAAc;AAC3D,UAAM;AAAEC,MAAAA;AAAF,QAAkBD,MAAM,CAAEE,YAAF,CAA9B;AACA,WAAO;AACNd,MAAAA,sBAAsB,EAAEa,WAAW,GACjCE;AAFI,KAAP;AAIA,GANkC,EAMhC,EANgC,CAAnC;AAQA,QAAMd,kBAAkB,GAAGU,gBAAgB,GACxCrB,iBADwC,GAExCH,UAFH;AAIA,SAAO,0BACN,CAAEI,GAAF,WAAqC;AAAA,QAA9B;AAAEa,MAAAA;AAAF,KAA8B;AACpC,WAAO,wBAAWb,GAAX,IACJU,kBAAkB,CAAEV,GAAF,EAAO;AAAEa,MAAAA;AAAF,KAAP,CADd,GAEJN,kBAAkB,CAClBP,GADkB,EAElB,EAAE,GAAGQ,gBAAL;AAAuBK,MAAAA;AAAvB,KAFkB,EAGlBJ,sBAHkB,EAIlBC,kBAJkB,EAKlBC,oBALkB,EAMlBC,iBANkB,CAFrB;AAUA,GAZK,EAaN,CAAEF,kBAAF,EAAsBD,sBAAtB,EAA8CE,oBAA9C,CAbM,CAAP;AAeA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getProtocol, prependHTTP } from '@wordpress/url';\nimport { useCallback } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * External dependencies\n */\nimport { startsWith } from 'lodash';\n\n/**\n * Internal dependencies\n */\nimport isURLLike from './is-url-like';\nimport { CREATE_TYPE } from './constants';\nimport { store as blockEditorStore } from '../../store';\n\nexport const handleNoop = () => Promise.resolve( [] );\n\nexport const handleDirectEntry = ( val ) => {\n\tlet type = 'URL';\n\n\tconst protocol = getProtocol( val ) || '';\n\n\tif ( protocol.includes( 'mailto' ) ) {\n\t\ttype = 'mailto';\n\t}\n\n\tif ( protocol.includes( 'tel' ) ) {\n\t\ttype = 'tel';\n\t}\n\n\tif ( startsWith( val, '#' ) ) {\n\t\ttype = 'internal';\n\t}\n\n\treturn Promise.resolve( [\n\t\t{\n\t\t\tid: val,\n\t\t\ttitle: val,\n\t\t\turl: type === 'URL' ? prependHTTP( val ) : val,\n\t\t\ttype,\n\t\t},\n\t] );\n};\n\nconst handleEntitySearch = async (\n\tval,\n\tsuggestionsQuery,\n\tfetchSearchSuggestions,\n\tdirectEntryHandler,\n\twithCreateSuggestion,\n\twithURLSuggestion\n) => {\n\tconst { isInitialSuggestions } = suggestionsQuery;\n\n\tlet results = await Promise.all( [\n\t\tfetchSearchSuggestions( val, suggestionsQuery ),\n\t\tdirectEntryHandler( val ),\n\t] );\n\n\tconst couldBeURL = ! val.includes( ' ' );\n\n\t// If it's potentially a URL search then concat on a URL search suggestion\n\t// just for good measure. That way once the actual results run out we always\n\t// have a URL option to fallback on.\n\tif ( couldBeURL && withURLSuggestion && ! isInitialSuggestions ) {\n\t\tresults = results[ 0 ].concat( results[ 1 ] );\n\t} else {\n\t\tresults = results[ 0 ];\n\t}\n\n\t// If displaying initial suggestions just return plain results.\n\tif ( isInitialSuggestions ) {\n\t\treturn results;\n\t}\n\n\t// Here we append a faux suggestion to represent a \"CREATE\" option. This\n\t// is detected in the rendering of the search results and handled as a\n\t// special case. This is currently necessary because the suggestions\n\t// dropdown will only appear if there are valid suggestions and\n\t// therefore unless the create option is a suggestion it will not\n\t// display in scenarios where there are no results returned from the\n\t// API. In addition promoting CREATE to a first class suggestion affords\n\t// the a11y benefits afforded by `URLInput` to all suggestions (eg:\n\t// keyboard handling, ARIA roles...etc).\n\t//\n\t// Note also that the value of the `title` and `url` properties must correspond\n\t// to the text value of the `<input>`. This is because `title` is used\n\t// when creating the suggestion. Similarly `url` is used when using keyboard to select\n\t// the suggestion (the <form> `onSubmit` handler falls-back to `url`).\n\treturn isURLLike( val ) || ! withCreateSuggestion\n\t\t? results\n\t\t: results.concat( {\n\t\t\t\t// the `id` prop is intentionally ommitted here because it\n\t\t\t\t// is never exposed as part of the component's public API.\n\t\t\t\t// see: https://github.com/WordPress/gutenberg/pull/19775#discussion_r378931316.\n\t\t\t\ttitle: val, // must match the existing `<input>`s text value\n\t\t\t\turl: val, // must match the existing `<input>`s text value\n\t\t\t\ttype: CREATE_TYPE,\n\t\t } );\n};\n\nexport default function useSearchHandler(\n\tsuggestionsQuery,\n\tallowDirectEntry,\n\twithCreateSuggestion,\n\twithURLSuggestion\n) {\n\tconst { fetchSearchSuggestions } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tfetchSearchSuggestions: getSettings()\n\t\t\t\t.__experimentalFetchLinkSuggestions,\n\t\t};\n\t}, [] );\n\n\tconst directEntryHandler = allowDirectEntry\n\t\t? handleDirectEntry\n\t\t: handleNoop;\n\n\treturn useCallback(\n\t\t( val, { isInitialSuggestions } ) => {\n\t\t\treturn isURLLike( val )\n\t\t\t\t? directEntryHandler( val, { isInitialSuggestions } )\n\t\t\t\t: handleEntitySearch(\n\t\t\t\t\t\tval,\n\t\t\t\t\t\t{ ...suggestionsQuery, isInitialSuggestions },\n\t\t\t\t\t\tfetchSearchSuggestions,\n\t\t\t\t\t\tdirectEntryHandler,\n\t\t\t\t\t\twithCreateSuggestion,\n\t\t\t\t\t\twithURLSuggestion\n\t\t\t\t );\n\t\t},\n\t\t[ directEntryHandler, fetchSearchSuggestions, withCreateSuggestion ]\n\t);\n}\n"]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = exports.ViewerFill = exports.ViewerSlot = void 0;
6
+ exports.default = exports.ViewerSlot = exports.ViewerFill = void 0;
7
7
 
8
8
  var _components = require("@wordpress/components");
9
9