@wordpress/block-editor 14.8.1-next.cd6172eb0.0 → 14.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1161) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/LICENSE.md +1 -1
  3. package/README.md +48 -0
  4. package/build/autocompleters/block.js +1 -0
  5. package/build/autocompleters/block.js.map +1 -1
  6. package/build/autocompleters/link.js +1 -0
  7. package/build/autocompleters/link.js.map +1 -1
  8. package/build/components/alignment-control/ui.js +1 -0
  9. package/build/components/alignment-control/ui.js.map +1 -1
  10. package/build/components/audio-player/index.native.js +1 -1
  11. package/build/components/audio-player/index.native.js.map +1 -1
  12. package/build/components/autocomplete/index.js +1 -0
  13. package/build/components/autocomplete/index.js.map +1 -1
  14. package/build/components/background-image-control/index.js +5 -0
  15. package/build/components/background-image-control/index.js.map +1 -1
  16. package/build/components/block-actions/index.js +1 -0
  17. package/build/components/block-actions/index.js.map +1 -1
  18. package/build/components/block-alignment-control/ui.js +1 -0
  19. package/build/components/block-alignment-control/ui.js.map +1 -1
  20. package/build/components/block-alignment-control/ui.native.js +1 -0
  21. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  22. package/build/components/block-alignment-control/use-available-alignments.js +1 -0
  23. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  24. package/build/components/block-alignment-matrix-control/index.js +32 -0
  25. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  26. package/build/components/block-breadcrumb/index.js +1 -0
  27. package/build/components/block-breadcrumb/index.js.map +1 -1
  28. package/build/components/block-card/index.js +45 -8
  29. package/build/components/block-card/index.js.map +1 -1
  30. package/build/components/block-compare/index.js +1 -0
  31. package/build/components/block-compare/index.js.map +1 -1
  32. package/build/components/block-controls/fill.js +1 -0
  33. package/build/components/block-controls/fill.js.map +1 -1
  34. package/build/components/block-edit/edit.js +148 -10
  35. package/build/components/block-edit/edit.js.map +1 -1
  36. package/build/components/block-edit/edit.native.js +1 -0
  37. package/build/components/block-edit/edit.native.js.map +1 -1
  38. package/build/components/block-heading-level-dropdown/index.js +1 -0
  39. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  40. package/build/components/block-heading-level-dropdown/index.native.js +1 -0
  41. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  42. package/build/components/block-inspector/index.js +1 -0
  43. package/build/components/block-inspector/index.js.map +1 -1
  44. package/build/components/block-list/block-invalid-warning.js +1 -0
  45. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  46. package/build/components/block-list/block-list-context.native.js +1 -0
  47. package/build/components/block-list/block-list-context.native.js.map +1 -1
  48. package/build/components/block-list/block.js +1 -0
  49. package/build/components/block-list/block.js.map +1 -1
  50. package/build/components/block-list/block.native.js +1 -0
  51. package/build/components/block-list/block.native.js.map +1 -1
  52. package/build/components/block-list/index.js +2 -2
  53. package/build/components/block-list/index.js.map +1 -1
  54. package/build/components/block-list/index.native.js +1 -0
  55. package/build/components/block-list/index.native.js.map +1 -1
  56. package/build/components/block-list/use-block-props/index.js +4 -5
  57. package/build/components/block-list/use-block-props/index.js.map +1 -1
  58. package/build/components/block-list/use-block-props/use-firefox-draggable-compatibility.js +61 -8
  59. package/build/components/block-list/use-block-props/use-firefox-draggable-compatibility.js.map +1 -1
  60. package/build/components/block-list/use-block-props/use-focus-first-element.js +1 -0
  61. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  62. package/build/components/block-list/use-in-between-inserter.js +1 -0
  63. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  64. package/build/components/block-list/zoom-out-separator.js +20 -3
  65. package/build/components/block-list/zoom-out-separator.js.map +1 -1
  66. package/build/components/block-lock/modal.js +5 -4
  67. package/build/components/block-lock/modal.js.map +1 -1
  68. package/build/components/block-manager/category.js +1 -0
  69. package/build/components/block-manager/category.js.map +1 -1
  70. package/build/components/block-manager/checklist.js +1 -0
  71. package/build/components/block-manager/checklist.js.map +1 -1
  72. package/build/components/block-manager/index.js +1 -0
  73. package/build/components/block-manager/index.js.map +1 -1
  74. package/build/components/block-media-update-progress/index.native.js +1 -0
  75. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  76. package/build/components/block-mover/index.native.js +1 -0
  77. package/build/components/block-mover/index.native.js.map +1 -1
  78. package/build/components/block-mover/mover-description.native.js +1 -0
  79. package/build/components/block-mover/mover-description.native.js.map +1 -1
  80. package/build/components/block-parent-selector/index.js +2 -15
  81. package/build/components/block-parent-selector/index.js.map +1 -1
  82. package/build/components/block-pattern-setup/index.js +1 -0
  83. package/build/components/block-pattern-setup/index.js.map +1 -1
  84. package/build/components/block-pattern-setup/use-patterns-setup.js +1 -0
  85. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  86. package/build/components/block-patterns-list/index.js +1 -0
  87. package/build/components/block-patterns-list/index.js.map +1 -1
  88. package/build/components/block-quick-navigation/index.js +1 -0
  89. package/build/components/block-quick-navigation/index.js.map +1 -1
  90. package/build/components/block-rename/rename-control.js +1 -0
  91. package/build/components/block-rename/rename-control.js.map +1 -1
  92. package/build/components/block-settings-menu/block-settings-dropdown.js +6 -8
  93. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  94. package/build/components/block-styles/index.js +1 -0
  95. package/build/components/block-styles/index.js.map +1 -1
  96. package/build/components/block-styles/index.native.js +1 -0
  97. package/build/components/block-styles/index.native.js.map +1 -1
  98. package/build/components/block-styles/menu-items.js +1 -0
  99. package/build/components/block-styles/menu-items.js.map +1 -1
  100. package/build/components/block-styles/preview.native.js +1 -0
  101. package/build/components/block-styles/preview.native.js.map +1 -1
  102. package/build/components/block-styles/utils.js +3 -3
  103. package/build/components/block-styles/utils.js.map +1 -1
  104. package/build/components/block-switcher/block-transformations-menu.js +1 -0
  105. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  106. package/build/components/block-switcher/block-transformations-menu.native.js +1 -0
  107. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  108. package/build/components/block-switcher/block-variation-transformations.js +1 -0
  109. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  110. package/build/components/block-switcher/index.js +1 -0
  111. package/build/components/block-switcher/index.js.map +1 -1
  112. package/build/components/block-switcher/pattern-transformations-menu.js +1 -0
  113. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  114. package/build/components/block-switcher/use-transformed-patterns.js +1 -0
  115. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  116. package/build/components/block-switcher/utils.js +1 -0
  117. package/build/components/block-switcher/utils.js.map +1 -1
  118. package/build/components/block-toolbar/block-toolbar-menu.native.js +1 -0
  119. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  120. package/build/components/block-toolbar/change-design.js +1 -0
  121. package/build/components/block-toolbar/change-design.js.map +1 -1
  122. package/build/components/block-toolbar/index.js +2 -1
  123. package/build/components/block-toolbar/index.js.map +1 -1
  124. package/build/components/block-tools/use-selected-block-tool-props.js +1 -0
  125. package/build/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  126. package/build/components/block-tools/zoom-out-mode-inserters.js +19 -6
  127. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  128. package/build/components/block-types-list/index.js +1 -0
  129. package/build/components/block-types-list/index.js.map +1 -1
  130. package/build/components/block-variation-picker/index.js +1 -0
  131. package/build/components/block-variation-picker/index.js.map +1 -1
  132. package/build/components/block-variation-picker/index.native.js +1 -0
  133. package/build/components/block-variation-picker/index.native.js.map +1 -1
  134. package/build/components/block-variation-transforms/index.js +1 -0
  135. package/build/components/block-variation-transforms/index.js.map +1 -1
  136. package/build/components/block-vertical-alignment-control/ui.js +1 -0
  137. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  138. package/build/components/border-radius-control/index.js +1 -0
  139. package/build/components/border-radius-control/index.js.map +1 -1
  140. package/build/components/border-radius-control/input-controls.js +1 -0
  141. package/build/components/border-radius-control/input-controls.js.map +1 -1
  142. package/build/components/border-radius-control/utils.js +1 -0
  143. package/build/components/border-radius-control/utils.js.map +1 -1
  144. package/build/components/button-block-appender/index.js +1 -5
  145. package/build/components/button-block-appender/index.js.map +1 -1
  146. package/build/components/child-layout-control/index.js +6 -0
  147. package/build/components/child-layout-control/index.js.map +1 -1
  148. package/build/components/colors/utils.js +1 -0
  149. package/build/components/colors/utils.js.map +1 -1
  150. package/build/components/colors/with-colors.js +1 -0
  151. package/build/components/colors/with-colors.js.map +1 -1
  152. package/build/components/colors-gradients/dropdown.js +52 -11
  153. package/build/components/colors-gradients/dropdown.js.map +1 -1
  154. package/build/components/colors-gradients/panel-color-gradient-settings.js +1 -0
  155. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  156. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +1 -0
  157. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  158. package/build/components/contrast-checker/index.native.js +1 -1
  159. package/build/components/contrast-checker/index.native.js.map +1 -1
  160. package/build/components/convert-to-group-buttons/toolbar.js +1 -0
  161. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  162. package/build/components/date-format-picker/index.js +8 -16
  163. package/build/components/date-format-picker/index.js.map +1 -1
  164. package/build/components/dimensions-tool/scale-tool.js +1 -0
  165. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  166. package/build/components/duotone/utils.js +1 -0
  167. package/build/components/duotone/utils.js.map +1 -1
  168. package/build/components/editor-styles/index.js +1 -0
  169. package/build/components/editor-styles/index.js.map +1 -1
  170. package/build/components/font-appearance-control/index.js +10 -0
  171. package/build/components/font-appearance-control/index.js.map +1 -1
  172. package/build/components/font-family/index.js +11 -1
  173. package/build/components/font-family/index.js.map +1 -1
  174. package/build/components/font-sizes/with-font-sizes.js +1 -0
  175. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  176. package/build/components/global-styles/border-panel.js +1 -0
  177. package/build/components/global-styles/border-panel.js.map +1 -1
  178. package/build/components/global-styles/color-panel.js +28 -8
  179. package/build/components/global-styles/color-panel.js.map +1 -1
  180. package/build/components/global-styles/color-panel.native.js +1 -0
  181. package/build/components/global-styles/color-panel.native.js.map +1 -1
  182. package/build/components/global-styles/dimensions-panel.js +1 -0
  183. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  184. package/build/components/global-styles/filters-panel.js +3 -2
  185. package/build/components/global-styles/filters-panel.js.map +1 -1
  186. package/build/components/global-styles/get-global-styles-changes.js +1 -0
  187. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  188. package/build/components/global-styles/shadow-panel-components.js +1 -0
  189. package/build/components/global-styles/shadow-panel-components.js.map +1 -1
  190. package/build/components/global-styles/typography-utils.js +2 -1
  191. package/build/components/global-styles/typography-utils.js.map +1 -1
  192. package/build/components/global-styles/use-global-styles-context.native.js +1 -0
  193. package/build/components/global-styles/use-global-styles-context.native.js.map +1 -1
  194. package/build/components/global-styles/use-global-styles-output.js +2 -1
  195. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  196. package/build/components/global-styles/utils.js +1 -0
  197. package/build/components/global-styles/utils.js.map +1 -1
  198. package/build/components/grid/grid-visualizer.js +10 -0
  199. package/build/components/grid/grid-visualizer.js.map +1 -1
  200. package/build/components/grid/use-grid-layout-sync.js +1 -0
  201. package/build/components/grid/use-grid-layout-sync.js.map +1 -1
  202. package/build/components/grid/utils.js +13 -1
  203. package/build/components/grid/utils.js.map +1 -1
  204. package/build/components/iframe/get-compatibility-styles.js +1 -0
  205. package/build/components/iframe/get-compatibility-styles.js.map +1 -1
  206. package/build/components/iframe/index.js +1 -1
  207. package/build/components/iframe/index.js.map +1 -1
  208. package/build/components/image-editor/aspect-ratio-dropdown.js +1 -0
  209. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  210. package/build/components/index.js +15 -8
  211. package/build/components/index.js.map +1 -1
  212. package/build/components/inner-blocks/use-block-context.js +1 -0
  213. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  214. package/build/components/inner-blocks/use-inner-block-template-sync.js +11 -11
  215. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  216. package/build/components/inserter/block-patterns-explorer/index.js +1 -1
  217. package/build/components/inserter/block-patterns-explorer/index.js.map +1 -1
  218. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -0
  219. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  220. package/build/components/inserter/block-patterns-explorer/pattern-list.js +1 -0
  221. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  222. package/build/components/inserter/block-patterns-tab/index.js +1 -1
  223. package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
  224. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +5 -4
  225. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  226. package/build/components/inserter/block-patterns-tab/patterns-filter.js +2 -2
  227. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  228. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -0
  229. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  230. package/build/components/inserter/block-types-tab.js +2 -1
  231. package/build/components/inserter/block-types-tab.js.map +1 -1
  232. package/build/components/inserter/block-types-tab.native.js +1 -0
  233. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  234. package/build/components/inserter/category-tabs/index.js +2 -2
  235. package/build/components/inserter/category-tabs/index.js.map +1 -1
  236. package/build/components/inserter/hooks/use-block-type-impressions.native.js +1 -0
  237. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  238. package/build/components/inserter/hooks/use-patterns-state.js +1 -0
  239. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  240. package/build/components/inserter/index.js +7 -15
  241. package/build/components/inserter/index.js.map +1 -1
  242. package/build/components/inserter/index.native.js +1 -0
  243. package/build/components/inserter/index.native.js.map +1 -1
  244. package/build/components/inserter/media-tab/hooks.js +1 -0
  245. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  246. package/build/components/inserter/media-tab/media-list.js +1 -0
  247. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  248. package/build/components/inserter/media-tab/media-tab.js +1 -0
  249. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  250. package/build/components/inserter/menu.js +1 -0
  251. package/build/components/inserter/menu.js.map +1 -1
  252. package/build/components/inserter/mobile-tab-navigation.js +1 -0
  253. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  254. package/build/components/inserter/quick-inserter.js +2 -13
  255. package/build/components/inserter/quick-inserter.js.map +1 -1
  256. package/build/components/inserter/search-items.js +1 -0
  257. package/build/components/inserter/search-items.js.map +1 -1
  258. package/build/components/inserter/search-results.js +1 -0
  259. package/build/components/inserter/search-results.js.map +1 -1
  260. package/build/components/inserter/tabs.native.js +1 -0
  261. package/build/components/inserter/tabs.native.js.map +1 -1
  262. package/build/components/inserter/utils.native.js +1 -0
  263. package/build/components/inserter/utils.native.js.map +1 -1
  264. package/build/components/inspector-controls/block-support-tools-panel.js +1 -0
  265. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  266. package/build/components/inspector-controls/fill.js +1 -0
  267. package/build/components/inspector-controls/fill.js.map +1 -1
  268. package/build/components/inspector-controls/slot.js +2 -13
  269. package/build/components/inspector-controls/slot.js.map +1 -1
  270. package/build/components/inspector-controls-tabs/index.js +1 -0
  271. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  272. package/build/components/inspector-controls-tabs/position-controls-panel.js +1 -0
  273. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  274. package/build/components/inspector-popover-header/index.js +1 -0
  275. package/build/components/inspector-popover-header/index.js.map +1 -1
  276. package/build/components/justify-content-control/ui.js +1 -0
  277. package/build/components/justify-content-control/ui.js.map +1 -1
  278. package/build/components/keyboard-shortcuts/index.js +2 -2
  279. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  280. package/build/components/line-height-control/index.js +9 -0
  281. package/build/components/line-height-control/index.js.map +1 -1
  282. package/build/components/link-control/index.js +13 -1
  283. package/build/components/link-control/index.js.map +1 -1
  284. package/build/components/link-control/search-input.js +11 -1
  285. package/build/components/link-control/search-input.js.map +1 -1
  286. package/build/components/link-control/search-item.js +12 -1
  287. package/build/components/link-control/search-item.js.map +1 -1
  288. package/build/components/link-control/search-results.js +13 -1
  289. package/build/components/link-control/search-results.js.map +1 -1
  290. package/build/components/link-control/settings.js +1 -0
  291. package/build/components/link-control/settings.js.map +1 -1
  292. package/build/components/link-control/use-internal-value.js +1 -0
  293. package/build/components/link-control/use-internal-value.js.map +1 -1
  294. package/build/components/link-control/use-search-handler.js +1 -0
  295. package/build/components/link-control/use-search-handler.js.map +1 -1
  296. package/build/components/list-view/block-select-button.js +1 -0
  297. package/build/components/list-view/block-select-button.js.map +1 -1
  298. package/build/components/list-view/block.js +1 -0
  299. package/build/components/list-view/block.js.map +1 -1
  300. package/build/components/list-view/branch.js +1 -0
  301. package/build/components/list-view/branch.js.map +1 -1
  302. package/build/components/list-view/index.js +1 -0
  303. package/build/components/list-view/index.js.map +1 -1
  304. package/build/components/list-view/use-block-selection.js +1 -0
  305. package/build/components/list-view/use-block-selection.js.map +1 -1
  306. package/build/components/list-view/use-clipboard-handler.js +1 -0
  307. package/build/components/list-view/use-clipboard-handler.js.map +1 -1
  308. package/build/components/list-view/use-list-view-block-indexes.js +1 -0
  309. package/build/components/list-view/use-list-view-block-indexes.js.map +1 -1
  310. package/build/components/list-view/use-list-view-drop-zone.js +1 -0
  311. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  312. package/build/components/list-view/utils.js +1 -0
  313. package/build/components/list-view/utils.js.map +1 -1
  314. package/build/components/media-placeholder/index.js +3 -2
  315. package/build/components/media-placeholder/index.js.map +1 -1
  316. package/build/components/media-placeholder/index.native.js +1 -0
  317. package/build/components/media-placeholder/index.native.js.map +1 -1
  318. package/build/components/media-replace-flow/index.js +27 -26
  319. package/build/components/media-replace-flow/index.js.map +1 -1
  320. package/build/components/media-upload/index.native.js +1 -0
  321. package/build/components/media-upload/index.native.js.map +1 -1
  322. package/build/components/multi-selection-inspector/index.js +9 -25
  323. package/build/components/multi-selection-inspector/index.js.map +1 -1
  324. package/build/components/navigable-toolbar/index.js +1 -0
  325. package/build/components/navigable-toolbar/index.js.map +1 -1
  326. package/build/components/panel-color-settings/index.js +1 -0
  327. package/build/components/panel-color-settings/index.js.map +1 -1
  328. package/build/components/plain-text/index.js +34 -0
  329. package/build/components/plain-text/index.js.map +1 -1
  330. package/build/components/provider/index.js +61 -5
  331. package/build/components/provider/index.js.map +1 -1
  332. package/build/components/provider/use-block-sync.js +1 -0
  333. package/build/components/provider/use-block-sync.js.map +1 -1
  334. package/build/components/provider/use-media-upload-settings.js +28 -0
  335. package/build/components/provider/use-media-upload-settings.js.map +1 -0
  336. package/build/components/resolution-tool/index.js +3 -1
  337. package/build/components/resolution-tool/index.js.map +1 -1
  338. package/build/components/responsive-block-control/index.js +2 -1
  339. package/build/components/responsive-block-control/index.js.map +1 -1
  340. package/build/components/rich-text/embed-handler-picker.native.js +1 -0
  341. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  342. package/build/components/rich-text/event-listeners/before-input-rules.js +1 -0
  343. package/build/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
  344. package/build/components/rich-text/event-listeners/delete.js +7 -1
  345. package/build/components/rich-text/event-listeners/delete.js.map +1 -1
  346. package/build/components/rich-text/event-listeners/index.js +1 -0
  347. package/build/components/rich-text/event-listeners/index.js.map +1 -1
  348. package/build/components/rich-text/event-listeners/input-rules.js +1 -0
  349. package/build/components/rich-text/event-listeners/input-rules.js.map +1 -1
  350. package/build/components/rich-text/event-listeners/paste-handler.js +1 -0
  351. package/build/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  352. package/build/components/rich-text/file-paste-handler.native.js +1 -0
  353. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  354. package/build/components/rich-text/format-edit.js +1 -0
  355. package/build/components/rich-text/format-edit.js.map +1 -1
  356. package/build/components/rich-text/format-toolbar/index.js +1 -0
  357. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  358. package/build/components/rich-text/index.js +3 -2
  359. package/build/components/rich-text/index.js.map +1 -1
  360. package/build/components/rich-text/index.native.js +1 -0
  361. package/build/components/rich-text/index.native.js.map +1 -1
  362. package/build/components/rich-text/multiline.js +1 -0
  363. package/build/components/rich-text/multiline.js.map +1 -1
  364. package/build/components/rich-text/native/format-edit.js +1 -0
  365. package/build/components/rich-text/native/format-edit.js.map +1 -1
  366. package/build/components/rich-text/native/get-format-colors.native.js +1 -0
  367. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  368. package/build/components/rich-text/native/index.native.js +1 -0
  369. package/build/components/rich-text/native/index.native.js.map +1 -1
  370. package/build/components/rich-text/native/toolbar-button-with-options.native.js +1 -0
  371. package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  372. package/build/components/rich-text/native/use-format-types.js +1 -0
  373. package/build/components/rich-text/native/use-format-types.js.map +1 -1
  374. package/build/components/rich-text/use-format-types.js +1 -0
  375. package/build/components/rich-text/use-format-types.js.map +1 -1
  376. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -0
  377. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  378. package/build/components/spacing-sizes-control/input-controls/axial.js +1 -0
  379. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  380. package/build/components/spacing-sizes-control/input-controls/separated.js +1 -0
  381. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  382. package/build/components/spacing-sizes-control/input-controls/single.js +1 -0
  383. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  384. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -0
  385. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  386. package/build/components/spacing-sizes-control/utils.js +1 -0
  387. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  388. package/build/components/tabbed-sidebar/index.js +1 -0
  389. package/build/components/tabbed-sidebar/index.js.map +1 -1
  390. package/build/components/text-alignment-control/index.js +1 -0
  391. package/build/components/text-alignment-control/index.js.map +1 -1
  392. package/build/components/text-decoration-control/index.js +1 -0
  393. package/build/components/text-decoration-control/index.js.map +1 -1
  394. package/build/components/text-transform-control/index.js +1 -0
  395. package/build/components/text-transform-control/index.js.map +1 -1
  396. package/build/components/unsupported-block-details/index.native.js +1 -0
  397. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  398. package/build/components/url-input/index.js +1 -0
  399. package/build/components/url-input/index.js.map +1 -1
  400. package/build/components/url-popover/image-url-input-ui.js +1 -0
  401. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  402. package/build/components/use-block-commands/index.js +1 -0
  403. package/build/components/use-block-commands/index.js.map +1 -1
  404. package/build/components/use-block-drop-zone/index.js +3 -1
  405. package/build/components/use-block-drop-zone/index.js.map +1 -1
  406. package/build/components/use-block-drop-zone/index.native.js +1 -0
  407. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  408. package/build/components/use-flash-editable-blocks/index.js +1 -0
  409. package/build/components/use-flash-editable-blocks/index.js.map +1 -1
  410. package/build/components/use-on-block-drop/index.js +1 -0
  411. package/build/components/use-on-block-drop/index.js.map +1 -1
  412. package/build/components/use-on-block-drop/index.native.js +1 -0
  413. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  414. package/build/components/use-paste-styles/index.js +1 -0
  415. package/build/components/use-paste-styles/index.js.map +1 -1
  416. package/build/components/warning/index.js +3 -3
  417. package/build/components/warning/index.js.map +1 -1
  418. package/build/components/writing-flow/use-arrow-nav.js +1 -0
  419. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  420. package/build/components/writing-flow/use-clipboard-handler.js +1 -0
  421. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
  422. package/build/components/writing-flow/use-input.js +1 -0
  423. package/build/components/writing-flow/use-input.js.map +1 -1
  424. package/build/components/writing-flow/use-tab-nav.js +1 -0
  425. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  426. package/build/components/writing-flow/utils.js +1 -0
  427. package/build/components/writing-flow/utils.js.map +1 -1
  428. package/build/components/writing-mode-control/index.js +1 -0
  429. package/build/components/writing-mode-control/index.js.map +1 -1
  430. package/build/hooks/align.js +1 -0
  431. package/build/hooks/align.js.map +1 -1
  432. package/build/hooks/align.native.js +1 -0
  433. package/build/hooks/align.native.js.map +1 -1
  434. package/build/hooks/background.js +2 -0
  435. package/build/hooks/background.js.map +1 -1
  436. package/build/hooks/block-bindings.js +16 -14
  437. package/build/hooks/block-bindings.js.map +1 -1
  438. package/build/hooks/block-hooks.js +1 -0
  439. package/build/hooks/block-hooks.js.map +1 -1
  440. package/build/hooks/block-style-variation.js +1 -0
  441. package/build/hooks/block-style-variation.js.map +1 -1
  442. package/build/hooks/border.js +4 -3
  443. package/build/hooks/border.js.map +1 -1
  444. package/build/hooks/color.js +1 -1
  445. package/build/hooks/color.js.map +1 -1
  446. package/build/hooks/dimensions.js +2 -2
  447. package/build/hooks/dimensions.js.map +1 -1
  448. package/build/hooks/duotone.js +1 -0
  449. package/build/hooks/duotone.js.map +1 -1
  450. package/build/hooks/font-family.js +1 -1
  451. package/build/hooks/font-family.js.map +1 -1
  452. package/build/hooks/gap.js +2 -2
  453. package/build/hooks/gap.js.map +1 -1
  454. package/build/hooks/index.js +1 -1
  455. package/build/hooks/index.js.map +1 -1
  456. package/build/hooks/index.native.js +7 -0
  457. package/build/hooks/index.native.js.map +1 -1
  458. package/build/hooks/layout.js +1 -0
  459. package/build/hooks/layout.js.map +1 -1
  460. package/build/hooks/position.js +1 -0
  461. package/build/hooks/position.js.map +1 -1
  462. package/build/hooks/style.js +7 -6
  463. package/build/hooks/style.js.map +1 -1
  464. package/build/hooks/supports.js +8 -7
  465. package/build/hooks/supports.js.map +1 -1
  466. package/build/hooks/text-align.js +1 -0
  467. package/build/hooks/text-align.js.map +1 -1
  468. package/build/hooks/typography.js +7 -6
  469. package/build/hooks/typography.js.map +1 -1
  470. package/build/hooks/use-zoom-out.js +58 -14
  471. package/build/hooks/use-zoom-out.js.map +1 -1
  472. package/build/hooks/utils.js +2 -1
  473. package/build/hooks/utils.js.map +1 -1
  474. package/build/layouts/constrained.js +1 -0
  475. package/build/layouts/constrained.js.map +1 -1
  476. package/build/layouts/flex.js +1 -0
  477. package/build/layouts/flex.js.map +1 -1
  478. package/build/layouts/flow.js +1 -0
  479. package/build/layouts/flow.js.map +1 -1
  480. package/build/layouts/index.js +1 -0
  481. package/build/layouts/index.js.map +1 -1
  482. package/build/layouts/utils.js +1 -0
  483. package/build/layouts/utils.js.map +1 -1
  484. package/build/store/actions.js +1 -0
  485. package/build/store/actions.js.map +1 -1
  486. package/build/store/get-block-settings.js +1 -0
  487. package/build/store/get-block-settings.js.map +1 -1
  488. package/build/store/private-actions.js +2 -1
  489. package/build/store/private-actions.js.map +1 -1
  490. package/build/store/private-selectors.js +12 -1
  491. package/build/store/private-selectors.js.map +1 -1
  492. package/build/store/reducer.js +94 -12
  493. package/build/store/reducer.js.map +1 -1
  494. package/build/store/selectors.js +19 -23
  495. package/build/store/selectors.js.map +1 -1
  496. package/build/store/utils.js +1 -0
  497. package/build/store/utils.js.map +1 -1
  498. package/build/utils/block-bindings.js +96 -0
  499. package/build/utils/block-bindings.js.map +1 -1
  500. package/build/utils/get-editor-region.js +1 -0
  501. package/build/utils/get-editor-region.js.map +1 -1
  502. package/build/utils/get-font-styles-and-weights.js +1 -0
  503. package/build/utils/get-font-styles-and-weights.js.map +1 -1
  504. package/build/utils/math.js +1 -0
  505. package/build/utils/math.js.map +1 -1
  506. package/build/utils/object.js +1 -0
  507. package/build/utils/object.js.map +1 -1
  508. package/build/utils/selection.js +1 -0
  509. package/build/utils/selection.js.map +1 -1
  510. package/build/utils/transform-styles/index.js +1 -0
  511. package/build/utils/transform-styles/index.js.map +1 -1
  512. package/build-module/autocompleters/block.js +1 -0
  513. package/build-module/autocompleters/block.js.map +1 -1
  514. package/build-module/autocompleters/link.js +1 -0
  515. package/build-module/autocompleters/link.js.map +1 -1
  516. package/build-module/components/alignment-control/ui.js +1 -0
  517. package/build-module/components/alignment-control/ui.js.map +1 -1
  518. package/build-module/components/audio-player/index.native.js +2 -2
  519. package/build-module/components/audio-player/index.native.js.map +1 -1
  520. package/build-module/components/autocomplete/index.js +1 -0
  521. package/build-module/components/autocomplete/index.js.map +1 -1
  522. package/build-module/components/background-image-control/index.js +6 -1
  523. package/build-module/components/background-image-control/index.js.map +1 -1
  524. package/build-module/components/block-actions/index.js +1 -0
  525. package/build-module/components/block-actions/index.js.map +1 -1
  526. package/build-module/components/block-alignment-control/ui.js +1 -0
  527. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  528. package/build-module/components/block-alignment-control/ui.native.js +1 -0
  529. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  530. package/build-module/components/block-alignment-control/use-available-alignments.js +1 -0
  531. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  532. package/build-module/components/block-alignment-matrix-control/index.js +32 -0
  533. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  534. package/build-module/components/block-breadcrumb/index.js +1 -0
  535. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  536. package/build-module/components/block-card/index.js +45 -8
  537. package/build-module/components/block-card/index.js.map +1 -1
  538. package/build-module/components/block-compare/index.js +1 -0
  539. package/build-module/components/block-compare/index.js.map +1 -1
  540. package/build-module/components/block-controls/fill.js +1 -0
  541. package/build-module/components/block-controls/fill.js.map +1 -1
  542. package/build-module/components/block-edit/edit.js +149 -11
  543. package/build-module/components/block-edit/edit.js.map +1 -1
  544. package/build-module/components/block-edit/edit.native.js +1 -0
  545. package/build-module/components/block-edit/edit.native.js.map +1 -1
  546. package/build-module/components/block-heading-level-dropdown/index.js +1 -0
  547. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  548. package/build-module/components/block-heading-level-dropdown/index.native.js +1 -0
  549. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  550. package/build-module/components/block-inspector/index.js +1 -0
  551. package/build-module/components/block-inspector/index.js.map +1 -1
  552. package/build-module/components/block-list/block-invalid-warning.js +1 -0
  553. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  554. package/build-module/components/block-list/block-list-context.native.js +1 -0
  555. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  556. package/build-module/components/block-list/block.js +1 -0
  557. package/build-module/components/block-list/block.js.map +1 -1
  558. package/build-module/components/block-list/block.native.js +1 -0
  559. package/build-module/components/block-list/block.native.js.map +1 -1
  560. package/build-module/components/block-list/index.js +3 -3
  561. package/build-module/components/block-list/index.js.map +1 -1
  562. package/build-module/components/block-list/index.native.js +1 -0
  563. package/build-module/components/block-list/index.native.js.map +1 -1
  564. package/build-module/components/block-list/use-block-props/index.js +3 -4
  565. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  566. package/build-module/components/block-list/use-block-props/use-firefox-draggable-compatibility.js +60 -8
  567. package/build-module/components/block-list/use-block-props/use-firefox-draggable-compatibility.js.map +1 -1
  568. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +1 -0
  569. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  570. package/build-module/components/block-list/use-in-between-inserter.js +1 -0
  571. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  572. package/build-module/components/block-list/zoom-out-separator.js +20 -3
  573. package/build-module/components/block-list/zoom-out-separator.js.map +1 -1
  574. package/build-module/components/block-lock/modal.js +5 -4
  575. package/build-module/components/block-lock/modal.js.map +1 -1
  576. package/build-module/components/block-manager/category.js +1 -0
  577. package/build-module/components/block-manager/category.js.map +1 -1
  578. package/build-module/components/block-manager/checklist.js +1 -0
  579. package/build-module/components/block-manager/checklist.js.map +1 -1
  580. package/build-module/components/block-manager/index.js +1 -0
  581. package/build-module/components/block-manager/index.js.map +1 -1
  582. package/build-module/components/block-media-update-progress/index.native.js +1 -0
  583. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  584. package/build-module/components/block-mover/index.native.js +1 -0
  585. package/build-module/components/block-mover/index.native.js.map +1 -1
  586. package/build-module/components/block-mover/mover-description.native.js +1 -0
  587. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  588. package/build-module/components/block-parent-selector/index.js +2 -15
  589. package/build-module/components/block-parent-selector/index.js.map +1 -1
  590. package/build-module/components/block-pattern-setup/index.js +1 -0
  591. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  592. package/build-module/components/block-pattern-setup/use-patterns-setup.js +1 -0
  593. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  594. package/build-module/components/block-patterns-list/index.js +1 -0
  595. package/build-module/components/block-patterns-list/index.js.map +1 -1
  596. package/build-module/components/block-quick-navigation/index.js +1 -0
  597. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  598. package/build-module/components/block-rename/rename-control.js +1 -0
  599. package/build-module/components/block-rename/rename-control.js.map +1 -1
  600. package/build-module/components/block-settings-menu/block-settings-dropdown.js +6 -8
  601. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  602. package/build-module/components/block-styles/index.js +1 -0
  603. package/build-module/components/block-styles/index.js.map +1 -1
  604. package/build-module/components/block-styles/index.native.js +1 -0
  605. package/build-module/components/block-styles/index.native.js.map +1 -1
  606. package/build-module/components/block-styles/menu-items.js +1 -0
  607. package/build-module/components/block-styles/menu-items.js.map +1 -1
  608. package/build-module/components/block-styles/preview.native.js +1 -0
  609. package/build-module/components/block-styles/preview.native.js.map +1 -1
  610. package/build-module/components/block-styles/utils.js +3 -3
  611. package/build-module/components/block-styles/utils.js.map +1 -1
  612. package/build-module/components/block-switcher/block-transformations-menu.js +1 -0
  613. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  614. package/build-module/components/block-switcher/block-transformations-menu.native.js +1 -0
  615. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  616. package/build-module/components/block-switcher/block-variation-transformations.js +1 -0
  617. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  618. package/build-module/components/block-switcher/index.js +1 -0
  619. package/build-module/components/block-switcher/index.js.map +1 -1
  620. package/build-module/components/block-switcher/pattern-transformations-menu.js +1 -0
  621. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  622. package/build-module/components/block-switcher/use-transformed-patterns.js +1 -0
  623. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  624. package/build-module/components/block-switcher/utils.js +1 -0
  625. package/build-module/components/block-switcher/utils.js.map +1 -1
  626. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -0
  627. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  628. package/build-module/components/block-toolbar/change-design.js +1 -0
  629. package/build-module/components/block-toolbar/change-design.js.map +1 -1
  630. package/build-module/components/block-toolbar/index.js +2 -1
  631. package/build-module/components/block-toolbar/index.js.map +1 -1
  632. package/build-module/components/block-tools/use-selected-block-tool-props.js +1 -0
  633. package/build-module/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  634. package/build-module/components/block-tools/zoom-out-mode-inserters.js +19 -6
  635. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  636. package/build-module/components/block-types-list/index.js +1 -0
  637. package/build-module/components/block-types-list/index.js.map +1 -1
  638. package/build-module/components/block-variation-picker/index.js +1 -0
  639. package/build-module/components/block-variation-picker/index.js.map +1 -1
  640. package/build-module/components/block-variation-picker/index.native.js +1 -0
  641. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  642. package/build-module/components/block-variation-transforms/index.js +1 -0
  643. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  644. package/build-module/components/block-vertical-alignment-control/ui.js +1 -0
  645. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  646. package/build-module/components/border-radius-control/index.js +1 -0
  647. package/build-module/components/border-radius-control/index.js.map +1 -1
  648. package/build-module/components/border-radius-control/input-controls.js +1 -0
  649. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  650. package/build-module/components/border-radius-control/utils.js +1 -0
  651. package/build-module/components/border-radius-control/utils.js.map +1 -1
  652. package/build-module/components/button-block-appender/index.js +2 -6
  653. package/build-module/components/button-block-appender/index.js.map +1 -1
  654. package/build-module/components/child-layout-control/index.js +7 -1
  655. package/build-module/components/child-layout-control/index.js.map +1 -1
  656. package/build-module/components/colors/utils.js +1 -0
  657. package/build-module/components/colors/utils.js.map +1 -1
  658. package/build-module/components/colors/with-colors.js +1 -0
  659. package/build-module/components/colors/with-colors.js.map +1 -1
  660. package/build-module/components/colors-gradients/dropdown.js +52 -11
  661. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  662. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +1 -0
  663. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  664. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +1 -0
  665. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  666. package/build-module/components/contrast-checker/index.native.js +2 -2
  667. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  668. package/build-module/components/convert-to-group-buttons/toolbar.js +1 -0
  669. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  670. package/build-module/components/date-format-picker/index.js +8 -16
  671. package/build-module/components/date-format-picker/index.js.map +1 -1
  672. package/build-module/components/dimensions-tool/scale-tool.js +1 -0
  673. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  674. package/build-module/components/duotone/utils.js +1 -0
  675. package/build-module/components/duotone/utils.js.map +1 -1
  676. package/build-module/components/editor-styles/index.js +1 -0
  677. package/build-module/components/editor-styles/index.js.map +1 -1
  678. package/build-module/components/font-appearance-control/index.js +9 -0
  679. package/build-module/components/font-appearance-control/index.js.map +1 -1
  680. package/build-module/components/font-family/index.js +11 -1
  681. package/build-module/components/font-family/index.js.map +1 -1
  682. package/build-module/components/font-sizes/with-font-sizes.js +1 -0
  683. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  684. package/build-module/components/global-styles/border-panel.js +1 -0
  685. package/build-module/components/global-styles/border-panel.js.map +1 -1
  686. package/build-module/components/global-styles/color-panel.js +30 -10
  687. package/build-module/components/global-styles/color-panel.js.map +1 -1
  688. package/build-module/components/global-styles/color-panel.native.js +1 -0
  689. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  690. package/build-module/components/global-styles/dimensions-panel.js +1 -0
  691. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  692. package/build-module/components/global-styles/filters-panel.js +4 -3
  693. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  694. package/build-module/components/global-styles/get-global-styles-changes.js +1 -0
  695. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  696. package/build-module/components/global-styles/shadow-panel-components.js +1 -0
  697. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  698. package/build-module/components/global-styles/typography-utils.js +2 -1
  699. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  700. package/build-module/components/global-styles/use-global-styles-context.native.js +1 -0
  701. package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -1
  702. package/build-module/components/global-styles/use-global-styles-output.js +2 -1
  703. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  704. package/build-module/components/global-styles/utils.js +1 -0
  705. package/build-module/components/global-styles/utils.js.map +1 -1
  706. package/build-module/components/grid/grid-visualizer.js +10 -0
  707. package/build-module/components/grid/grid-visualizer.js.map +1 -1
  708. package/build-module/components/grid/use-grid-layout-sync.js +1 -0
  709. package/build-module/components/grid/use-grid-layout-sync.js.map +1 -1
  710. package/build-module/components/grid/utils.js +13 -1
  711. package/build-module/components/grid/utils.js.map +1 -1
  712. package/build-module/components/iframe/get-compatibility-styles.js +1 -0
  713. package/build-module/components/iframe/get-compatibility-styles.js.map +1 -1
  714. package/build-module/components/iframe/index.js +1 -1
  715. package/build-module/components/iframe/index.js.map +1 -1
  716. package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -0
  717. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  718. package/build-module/components/index.js +4 -4
  719. package/build-module/components/index.js.map +1 -1
  720. package/build-module/components/inner-blocks/use-block-context.js +1 -0
  721. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  722. package/build-module/components/inner-blocks/use-inner-block-template-sync.js +12 -12
  723. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  724. package/build-module/components/inserter/block-patterns-explorer/index.js +1 -1
  725. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  726. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -0
  727. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  728. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +1 -0
  729. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  730. package/build-module/components/inserter/block-patterns-tab/index.js +1 -1
  731. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  732. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +5 -4
  733. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  734. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +2 -2
  735. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  736. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -0
  737. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  738. package/build-module/components/inserter/block-types-tab.js +2 -1
  739. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  740. package/build-module/components/inserter/block-types-tab.native.js +1 -0
  741. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  742. package/build-module/components/inserter/category-tabs/index.js +2 -2
  743. package/build-module/components/inserter/category-tabs/index.js.map +1 -1
  744. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +1 -0
  745. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  746. package/build-module/components/inserter/hooks/use-patterns-state.js +1 -0
  747. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  748. package/build-module/components/inserter/index.js +7 -15
  749. package/build-module/components/inserter/index.js.map +1 -1
  750. package/build-module/components/inserter/index.native.js +1 -0
  751. package/build-module/components/inserter/index.native.js.map +1 -1
  752. package/build-module/components/inserter/media-tab/hooks.js +1 -0
  753. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  754. package/build-module/components/inserter/media-tab/media-list.js +1 -0
  755. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  756. package/build-module/components/inserter/media-tab/media-tab.js +1 -0
  757. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  758. package/build-module/components/inserter/menu.js +1 -0
  759. package/build-module/components/inserter/menu.js.map +1 -1
  760. package/build-module/components/inserter/mobile-tab-navigation.js +1 -0
  761. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  762. package/build-module/components/inserter/quick-inserter.js +2 -13
  763. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  764. package/build-module/components/inserter/search-items.js +1 -0
  765. package/build-module/components/inserter/search-items.js.map +1 -1
  766. package/build-module/components/inserter/search-results.js +1 -0
  767. package/build-module/components/inserter/search-results.js.map +1 -1
  768. package/build-module/components/inserter/tabs.native.js +1 -0
  769. package/build-module/components/inserter/tabs.native.js.map +1 -1
  770. package/build-module/components/inserter/utils.native.js +1 -0
  771. package/build-module/components/inserter/utils.native.js.map +1 -1
  772. package/build-module/components/inspector-controls/block-support-tools-panel.js +1 -0
  773. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  774. package/build-module/components/inspector-controls/fill.js +1 -0
  775. package/build-module/components/inspector-controls/fill.js.map +1 -1
  776. package/build-module/components/inspector-controls/slot.js +3 -14
  777. package/build-module/components/inspector-controls/slot.js.map +1 -1
  778. package/build-module/components/inspector-controls-tabs/index.js +1 -0
  779. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  780. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +1 -0
  781. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  782. package/build-module/components/inspector-popover-header/index.js +1 -0
  783. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  784. package/build-module/components/justify-content-control/ui.js +1 -0
  785. package/build-module/components/justify-content-control/ui.js.map +1 -1
  786. package/build-module/components/keyboard-shortcuts/index.js +2 -2
  787. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  788. package/build-module/components/line-height-control/index.js +8 -0
  789. package/build-module/components/line-height-control/index.js.map +1 -1
  790. package/build-module/components/link-control/index.js +11 -0
  791. package/build-module/components/link-control/index.js.map +1 -1
  792. package/build-module/components/link-control/search-input.js +9 -0
  793. package/build-module/components/link-control/search-input.js.map +1 -1
  794. package/build-module/components/link-control/search-item.js +9 -0
  795. package/build-module/components/link-control/search-item.js.map +1 -1
  796. package/build-module/components/link-control/search-results.js +12 -1
  797. package/build-module/components/link-control/search-results.js.map +1 -1
  798. package/build-module/components/link-control/settings.js +1 -0
  799. package/build-module/components/link-control/settings.js.map +1 -1
  800. package/build-module/components/link-control/use-internal-value.js +1 -0
  801. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  802. package/build-module/components/link-control/use-search-handler.js +1 -0
  803. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  804. package/build-module/components/list-view/block-select-button.js +1 -0
  805. package/build-module/components/list-view/block-select-button.js.map +1 -1
  806. package/build-module/components/list-view/block.js +1 -0
  807. package/build-module/components/list-view/block.js.map +1 -1
  808. package/build-module/components/list-view/branch.js +1 -0
  809. package/build-module/components/list-view/branch.js.map +1 -1
  810. package/build-module/components/list-view/index.js +1 -0
  811. package/build-module/components/list-view/index.js.map +1 -1
  812. package/build-module/components/list-view/use-block-selection.js +1 -0
  813. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  814. package/build-module/components/list-view/use-clipboard-handler.js +1 -0
  815. package/build-module/components/list-view/use-clipboard-handler.js.map +1 -1
  816. package/build-module/components/list-view/use-list-view-block-indexes.js +1 -0
  817. package/build-module/components/list-view/use-list-view-block-indexes.js.map +1 -1
  818. package/build-module/components/list-view/use-list-view-drop-zone.js +1 -0
  819. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  820. package/build-module/components/list-view/utils.js +1 -0
  821. package/build-module/components/list-view/utils.js.map +1 -1
  822. package/build-module/components/media-placeholder/index.js +4 -3
  823. package/build-module/components/media-placeholder/index.js.map +1 -1
  824. package/build-module/components/media-placeholder/index.native.js +1 -0
  825. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  826. package/build-module/components/media-replace-flow/index.js +29 -28
  827. package/build-module/components/media-replace-flow/index.js.map +1 -1
  828. package/build-module/components/media-upload/index.native.js +1 -0
  829. package/build-module/components/media-upload/index.native.js.map +1 -1
  830. package/build-module/components/multi-selection-inspector/index.js +9 -25
  831. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  832. package/build-module/components/navigable-toolbar/index.js +1 -0
  833. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  834. package/build-module/components/panel-color-settings/index.js +1 -0
  835. package/build-module/components/panel-color-settings/index.js.map +1 -1
  836. package/build-module/components/plain-text/index.js +34 -0
  837. package/build-module/components/plain-text/index.js.map +1 -1
  838. package/build-module/components/provider/index.js +62 -5
  839. package/build-module/components/provider/index.js.map +1 -1
  840. package/build-module/components/provider/use-block-sync.js +1 -0
  841. package/build-module/components/provider/use-block-sync.js.map +1 -1
  842. package/build-module/components/provider/use-media-upload-settings.js +22 -0
  843. package/build-module/components/provider/use-media-upload-settings.js.map +1 -0
  844. package/build-module/components/resolution-tool/index.js +3 -1
  845. package/build-module/components/resolution-tool/index.js.map +1 -1
  846. package/build-module/components/responsive-block-control/index.js +2 -1
  847. package/build-module/components/responsive-block-control/index.js.map +1 -1
  848. package/build-module/components/rich-text/embed-handler-picker.native.js +1 -0
  849. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  850. package/build-module/components/rich-text/event-listeners/before-input-rules.js +1 -0
  851. package/build-module/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
  852. package/build-module/components/rich-text/event-listeners/delete.js +7 -1
  853. package/build-module/components/rich-text/event-listeners/delete.js.map +1 -1
  854. package/build-module/components/rich-text/event-listeners/index.js +1 -0
  855. package/build-module/components/rich-text/event-listeners/index.js.map +1 -1
  856. package/build-module/components/rich-text/event-listeners/input-rules.js +1 -0
  857. package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
  858. package/build-module/components/rich-text/event-listeners/paste-handler.js +1 -0
  859. package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  860. package/build-module/components/rich-text/file-paste-handler.native.js +1 -0
  861. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  862. package/build-module/components/rich-text/format-edit.js +1 -0
  863. package/build-module/components/rich-text/format-edit.js.map +1 -1
  864. package/build-module/components/rich-text/format-toolbar/index.js +1 -0
  865. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  866. package/build-module/components/rich-text/index.js +2 -1
  867. package/build-module/components/rich-text/index.js.map +1 -1
  868. package/build-module/components/rich-text/index.native.js +1 -0
  869. package/build-module/components/rich-text/index.native.js.map +1 -1
  870. package/build-module/components/rich-text/multiline.js +1 -0
  871. package/build-module/components/rich-text/multiline.js.map +1 -1
  872. package/build-module/components/rich-text/native/format-edit.js +1 -0
  873. package/build-module/components/rich-text/native/format-edit.js.map +1 -1
  874. package/build-module/components/rich-text/native/get-format-colors.native.js +1 -0
  875. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  876. package/build-module/components/rich-text/native/index.native.js +1 -0
  877. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  878. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +1 -0
  879. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  880. package/build-module/components/rich-text/native/use-format-types.js +1 -0
  881. package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
  882. package/build-module/components/rich-text/use-format-types.js +1 -0
  883. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  884. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -0
  885. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  886. package/build-module/components/spacing-sizes-control/input-controls/axial.js +1 -0
  887. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  888. package/build-module/components/spacing-sizes-control/input-controls/separated.js +1 -0
  889. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  890. package/build-module/components/spacing-sizes-control/input-controls/single.js +1 -0
  891. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  892. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -0
  893. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  894. package/build-module/components/spacing-sizes-control/utils.js +1 -0
  895. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  896. package/build-module/components/tabbed-sidebar/index.js +1 -0
  897. package/build-module/components/tabbed-sidebar/index.js.map +1 -1
  898. package/build-module/components/text-alignment-control/index.js +1 -0
  899. package/build-module/components/text-alignment-control/index.js.map +1 -1
  900. package/build-module/components/text-decoration-control/index.js +1 -0
  901. package/build-module/components/text-decoration-control/index.js.map +1 -1
  902. package/build-module/components/text-transform-control/index.js +1 -0
  903. package/build-module/components/text-transform-control/index.js.map +1 -1
  904. package/build-module/components/unsupported-block-details/index.native.js +1 -0
  905. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  906. package/build-module/components/url-input/index.js +1 -0
  907. package/build-module/components/url-input/index.js.map +1 -1
  908. package/build-module/components/url-popover/image-url-input-ui.js +1 -0
  909. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  910. package/build-module/components/use-block-commands/index.js +1 -0
  911. package/build-module/components/use-block-commands/index.js.map +1 -1
  912. package/build-module/components/use-block-drop-zone/index.js +3 -1
  913. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  914. package/build-module/components/use-block-drop-zone/index.native.js +1 -0
  915. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  916. package/build-module/components/use-flash-editable-blocks/index.js +1 -0
  917. package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
  918. package/build-module/components/use-on-block-drop/index.js +1 -0
  919. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  920. package/build-module/components/use-on-block-drop/index.native.js +1 -0
  921. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  922. package/build-module/components/use-paste-styles/index.js +1 -0
  923. package/build-module/components/use-paste-styles/index.js.map +1 -1
  924. package/build-module/components/warning/index.js +3 -3
  925. package/build-module/components/warning/index.js.map +1 -1
  926. package/build-module/components/writing-flow/use-arrow-nav.js +1 -0
  927. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  928. package/build-module/components/writing-flow/use-clipboard-handler.js +1 -0
  929. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
  930. package/build-module/components/writing-flow/use-input.js +1 -0
  931. package/build-module/components/writing-flow/use-input.js.map +1 -1
  932. package/build-module/components/writing-flow/use-tab-nav.js +1 -0
  933. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  934. package/build-module/components/writing-flow/utils.js +1 -0
  935. package/build-module/components/writing-flow/utils.js.map +1 -1
  936. package/build-module/components/writing-mode-control/index.js +1 -0
  937. package/build-module/components/writing-mode-control/index.js.map +1 -1
  938. package/build-module/hooks/align.js +1 -0
  939. package/build-module/hooks/align.js.map +1 -1
  940. package/build-module/hooks/align.native.js +1 -0
  941. package/build-module/hooks/align.native.js.map +1 -1
  942. package/build-module/hooks/background.js +2 -0
  943. package/build-module/hooks/background.js.map +1 -1
  944. package/build-module/hooks/block-bindings.js +14 -12
  945. package/build-module/hooks/block-bindings.js.map +1 -1
  946. package/build-module/hooks/block-hooks.js +1 -0
  947. package/build-module/hooks/block-hooks.js.map +1 -1
  948. package/build-module/hooks/block-style-variation.js +1 -0
  949. package/build-module/hooks/block-style-variation.js.map +1 -1
  950. package/build-module/hooks/border.js +4 -3
  951. package/build-module/hooks/border.js.map +1 -1
  952. package/build-module/hooks/color.js +1 -1
  953. package/build-module/hooks/color.js.map +1 -1
  954. package/build-module/hooks/dimensions.js +2 -2
  955. package/build-module/hooks/dimensions.js.map +1 -1
  956. package/build-module/hooks/duotone.js +1 -0
  957. package/build-module/hooks/duotone.js.map +1 -1
  958. package/build-module/hooks/font-family.js +1 -1
  959. package/build-module/hooks/font-family.js.map +1 -1
  960. package/build-module/hooks/gap.js +2 -2
  961. package/build-module/hooks/gap.js.map +1 -1
  962. package/build-module/hooks/index.js +1 -1
  963. package/build-module/hooks/index.js.map +1 -1
  964. package/build-module/hooks/index.native.js +1 -0
  965. package/build-module/hooks/index.native.js.map +1 -1
  966. package/build-module/hooks/layout.js +1 -0
  967. package/build-module/hooks/layout.js.map +1 -1
  968. package/build-module/hooks/position.js +1 -0
  969. package/build-module/hooks/position.js.map +1 -1
  970. package/build-module/hooks/style.js +7 -6
  971. package/build-module/hooks/style.js.map +1 -1
  972. package/build-module/hooks/supports.js +8 -7
  973. package/build-module/hooks/supports.js.map +1 -1
  974. package/build-module/hooks/text-align.js +1 -0
  975. package/build-module/hooks/text-align.js.map +1 -1
  976. package/build-module/hooks/typography.js +7 -6
  977. package/build-module/hooks/typography.js.map +1 -1
  978. package/build-module/hooks/use-zoom-out.js +58 -15
  979. package/build-module/hooks/use-zoom-out.js.map +1 -1
  980. package/build-module/hooks/utils.js +2 -1
  981. package/build-module/hooks/utils.js.map +1 -1
  982. package/build-module/layouts/constrained.js +1 -0
  983. package/build-module/layouts/constrained.js.map +1 -1
  984. package/build-module/layouts/flex.js +1 -0
  985. package/build-module/layouts/flex.js.map +1 -1
  986. package/build-module/layouts/flow.js +1 -0
  987. package/build-module/layouts/flow.js.map +1 -1
  988. package/build-module/layouts/index.js +1 -0
  989. package/build-module/layouts/index.js.map +1 -1
  990. package/build-module/layouts/utils.js +1 -0
  991. package/build-module/layouts/utils.js.map +1 -1
  992. package/build-module/store/actions.js +1 -0
  993. package/build-module/store/actions.js.map +1 -1
  994. package/build-module/store/get-block-settings.js +1 -0
  995. package/build-module/store/get-block-settings.js.map +1 -1
  996. package/build-module/store/private-actions.js +2 -1
  997. package/build-module/store/private-actions.js.map +1 -1
  998. package/build-module/store/private-selectors.js +12 -1
  999. package/build-module/store/private-selectors.js.map +1 -1
  1000. package/build-module/store/reducer.js +94 -12
  1001. package/build-module/store/reducer.js.map +1 -1
  1002. package/build-module/store/selectors.js +19 -23
  1003. package/build-module/store/selectors.js.map +1 -1
  1004. package/build-module/store/utils.js +1 -0
  1005. package/build-module/store/utils.js.map +1 -1
  1006. package/build-module/utils/block-bindings.js +91 -0
  1007. package/build-module/utils/block-bindings.js.map +1 -1
  1008. package/build-module/utils/get-editor-region.js +1 -0
  1009. package/build-module/utils/get-editor-region.js.map +1 -1
  1010. package/build-module/utils/get-font-styles-and-weights.js +1 -0
  1011. package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
  1012. package/build-module/utils/math.js +1 -0
  1013. package/build-module/utils/math.js.map +1 -1
  1014. package/build-module/utils/object.js +1 -0
  1015. package/build-module/utils/object.js.map +1 -1
  1016. package/build-module/utils/selection.js +1 -0
  1017. package/build-module/utils/selection.js.map +1 -1
  1018. package/build-module/utils/transform-styles/index.js +1 -0
  1019. package/build-module/utils/transform-styles/index.js.map +1 -1
  1020. package/build-style/content-rtl.css +1 -1
  1021. package/build-style/content.css +1 -1
  1022. package/build-style/style-rtl.css +53 -57
  1023. package/build-style/style.css +53 -57
  1024. package/package.json +33 -33
  1025. package/src/components/alignment-control/stories/aliginment-toolbar.story.js +2 -2
  1026. package/src/components/alignment-control/stories/index.story.js +2 -2
  1027. package/src/components/audio-player/index.native.js +2 -2
  1028. package/src/components/background-image-control/index.js +4 -0
  1029. package/src/components/background-image-control/style.scss +4 -2
  1030. package/src/components/block-alignment-matrix-control/README.md +29 -6
  1031. package/src/components/block-alignment-matrix-control/index.js +31 -0
  1032. package/src/components/block-alignment-matrix-control/stories/index.story.js +78 -0
  1033. package/src/components/block-card/README.md +7 -0
  1034. package/src/components/block-card/index.js +41 -12
  1035. package/src/components/block-card/stories/index.story.js +79 -0
  1036. package/src/components/block-card/style.scss +9 -1
  1037. package/src/components/block-edit/edit.js +218 -11
  1038. package/src/components/block-heading-level-dropdown/stories/index.story.js +61 -0
  1039. package/src/components/block-list/index.js +2 -7
  1040. package/src/components/block-list/use-block-props/index.js +3 -5
  1041. package/src/components/block-list/use-block-props/use-firefox-draggable-compatibility.js +64 -6
  1042. package/src/components/block-list/zoom-out-separator.js +30 -0
  1043. package/src/components/block-lock/modal.js +4 -6
  1044. package/src/components/block-parent-selector/index.js +1 -19
  1045. package/src/components/block-patterns-list/stories/fixtures.js +1 -0
  1046. package/src/components/block-settings-menu/block-settings-dropdown.js +17 -20
  1047. package/src/components/block-styles/utils.js +3 -3
  1048. package/src/components/block-title/stories/index.story.js +76 -0
  1049. package/src/components/block-toolbar/index.js +1 -0
  1050. package/src/components/block-tools/style.scss +1 -0
  1051. package/src/components/block-tools/zoom-out-mode-inserters.js +21 -3
  1052. package/src/components/border-radius-control/README.md +59 -0
  1053. package/src/components/border-radius-control/stories/index.story.js +58 -0
  1054. package/src/components/button-block-appender/index.js +2 -7
  1055. package/src/components/child-layout-control/index.js +14 -0
  1056. package/src/components/colors-gradients/dropdown.js +57 -8
  1057. package/src/components/colors-gradients/style.scss +26 -0
  1058. package/src/components/contrast-checker/index.native.js +2 -2
  1059. package/src/components/contrast-checker/stories/index.story.js +117 -0
  1060. package/src/components/date-format-picker/README.md +6 -13
  1061. package/src/components/date-format-picker/index.js +10 -17
  1062. package/src/components/date-format-picker/stories/index.story.js +69 -0
  1063. package/src/components/date-format-picker/style.scss +3 -1
  1064. package/src/components/default-block-appender/content.scss +1 -0
  1065. package/src/components/dimensions-tool/stories/aspect-ratio-tool.story.js +3 -2
  1066. package/src/components/dimensions-tool/stories/index.story.js +3 -2
  1067. package/src/components/dimensions-tool/stories/scale-tool.story.js +3 -2
  1068. package/src/components/dimensions-tool/stories/width-height-tool.story.js +3 -2
  1069. package/src/components/font-appearance-control/index.js +15 -0
  1070. package/src/components/font-family/README.md +1 -0
  1071. package/src/components/font-family/index.js +17 -1
  1072. package/src/components/font-family/stories/index.story.js +1 -0
  1073. package/src/components/global-styles/color-panel.js +29 -7
  1074. package/src/components/global-styles/filters-panel.js +3 -6
  1075. package/src/components/global-styles/test/use-global-styles-output.js +1 -1
  1076. package/src/components/global-styles/typography-utils.js +1 -1
  1077. package/src/components/global-styles/use-global-styles-output.js +1 -1
  1078. package/src/components/grid/grid-visualizer.js +11 -0
  1079. package/src/components/grid/utils.js +19 -1
  1080. package/src/components/iframe/index.js +1 -1
  1081. package/src/components/index.js +7 -4
  1082. package/src/components/inner-blocks/use-inner-block-template-sync.js +17 -10
  1083. package/src/components/inserter/block-patterns-explorer/index.js +2 -3
  1084. package/src/components/inserter/block-patterns-tab/index.js +3 -1
  1085. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +4 -4
  1086. package/src/components/inserter/block-patterns-tab/patterns-filter.js +2 -2
  1087. package/src/components/inserter/block-types-tab.js +1 -1
  1088. package/src/components/inserter/category-tabs/index.js +3 -2
  1089. package/src/components/inserter/index.js +1 -13
  1090. package/src/components/inserter/menu.js +2 -0
  1091. package/src/components/inserter/quick-inserter.js +2 -25
  1092. package/src/components/inspector-controls/slot.js +3 -22
  1093. package/src/components/keyboard-shortcuts/index.js +2 -2
  1094. package/src/components/line-height-control/README.md +1 -0
  1095. package/src/components/line-height-control/index.js +12 -0
  1096. package/src/components/line-height-control/stories/index.story.js +1 -0
  1097. package/src/components/line-height-control/test/index.js +7 -1
  1098. package/src/components/link-control/index.js +10 -0
  1099. package/src/components/link-control/search-input.js +9 -0
  1100. package/src/components/link-control/search-item.js +9 -0
  1101. package/src/components/link-control/search-results.js +12 -1
  1102. package/src/components/list-view/style.scss +10 -5
  1103. package/src/components/media-placeholder/index.js +3 -3
  1104. package/src/components/media-replace-flow/README.md +7 -0
  1105. package/src/components/media-replace-flow/index.js +28 -36
  1106. package/src/components/media-replace-flow/style.scss +6 -6
  1107. package/src/components/multi-selection-inspector/index.js +17 -27
  1108. package/src/components/multi-selection-inspector/style.scss +0 -12
  1109. package/src/components/plain-text/README.md +2 -2
  1110. package/src/components/plain-text/index.js +34 -0
  1111. package/src/components/plain-text/stories/index.story.js +75 -0
  1112. package/src/components/provider/index.js +81 -4
  1113. package/src/components/provider/use-media-upload-settings.js +25 -0
  1114. package/src/components/resolution-tool/index.js +2 -0
  1115. package/src/components/resolution-tool/stories/index.story.js +37 -9
  1116. package/src/components/responsive-block-control/index.js +1 -1
  1117. package/src/components/rich-text/event-listeners/delete.js +6 -1
  1118. package/src/components/rich-text/index.js +1 -1
  1119. package/src/components/spacing-sizes-control/style.scss +0 -29
  1120. package/src/components/text-alignment-control/README.md +49 -0
  1121. package/src/components/text-alignment-control/stories/index.story.js +56 -18
  1122. package/src/components/text-decoration-control/README.md +0 -1
  1123. package/src/components/text-decoration-control/stories/index.story.js +51 -16
  1124. package/src/components/text-transform-control/README.md +3 -4
  1125. package/src/components/text-transform-control/stories/index.story.js +53 -16
  1126. package/src/components/use-block-drop-zone/index.js +8 -1
  1127. package/src/components/warning/index.js +3 -4
  1128. package/src/components/warning/stories/index.story.js +86 -0
  1129. package/src/components/warning/test/index.js +3 -1
  1130. package/src/components/writing-mode-control/stories/index.story.js +56 -0
  1131. package/src/hooks/background.js +6 -0
  1132. package/src/hooks/block-bindings.js +17 -18
  1133. package/src/hooks/border.js +9 -3
  1134. package/src/hooks/color.js +1 -1
  1135. package/src/hooks/dimensions.js +2 -2
  1136. package/src/hooks/font-family.js +1 -1
  1137. package/src/hooks/gap.js +2 -2
  1138. package/src/hooks/index.js +0 -1
  1139. package/src/hooks/index.native.js +1 -0
  1140. package/src/hooks/style.js +12 -6
  1141. package/src/hooks/supports.js +7 -7
  1142. package/src/hooks/test/font-size.js +15 -12
  1143. package/src/hooks/test/style.js +2 -1
  1144. package/src/hooks/typography.js +6 -6
  1145. package/src/hooks/use-zoom-out.js +56 -16
  1146. package/src/hooks/utils.js +1 -1
  1147. package/src/store/private-actions.js +1 -0
  1148. package/src/store/private-selectors.js +15 -5
  1149. package/src/store/reducer.js +112 -19
  1150. package/src/store/selectors.js +32 -32
  1151. package/src/store/test/private-selectors.js +53 -9
  1152. package/src/store/test/reducer.js +172 -166
  1153. package/src/store/test/selectors.js +24 -1
  1154. package/src/utils/block-bindings.js +95 -0
  1155. package/tsconfig.json +2 -5
  1156. package/tsconfig.tsbuildinfo +1 -1
  1157. package/build/hooks/use-bindings-attributes.js +0 -261
  1158. package/build/hooks/use-bindings-attributes.js.map +0 -1
  1159. package/build-module/hooks/use-bindings-attributes.js +0 -252
  1160. package/build-module/hooks/use-bindings-attributes.js.map +0 -1
  1161. package/src/hooks/use-bindings-attributes.js +0 -322
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_components","_reactNativeBridge","_icons","_i18n","_compose","_blocks","_element","_hooks","_style","_interopRequireDefault","_useUnsupportedBlockEditor","_jsxRuntime","EMPTY_ARRAY","UnsupportedBlockDetails","clientId","showSheet","onCloseSheet","customBlockTitle","icon","title","description","actionButtonLabel","customActions","sendFallbackMessage","setSendFallbackMessage","useState","sendButtonPressMessage","setSendButtonPressMessage","blockName","blockContent","isUnsupportedBlockEditorSupported","canEnableUnsupportedBlockEditor","isEditableInUnsupportedBlockEditor","useUnsupportedBlockEditor","textStyle","usePreferredColorSchemeStyle","styles","titleStyle","descriptionStyle","iconStyle","actionButtonStyle","blockTitle","getBlockType","requestFallback","useCallback","descriptionWithNotes","applyFilters","webEditorDefaultLabel","__","canUseWebEditor","actions","label","onPress","filter","Boolean","jsxs","BottomSheet","isVisible","hideHeader","onClose","onModalHide","timeout","setTimeout","requestUnsupportedBlockFallback","sendActionButtonPressedAction","actionButtons","missingBlockAlertActionButton","children","View","style","jsx","Icon","help","color","size","Text","map","index","TextControl","separatorType","labelStyle","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/unsupported-block-details/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { help } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { getBlockType } from '@wordpress/blocks';\nimport { useCallback, useState } from '@wordpress/element';\nimport { applyFilters } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport useUnsupportedBlockEditor from '../use-unsupported-block-editor';\n\nconst EMPTY_ARRAY = [];\n\nconst UnsupportedBlockDetails = ( {\n\tclientId,\n\tshowSheet,\n\tonCloseSheet,\n\tcustomBlockTitle = '',\n\ticon,\n\ttitle,\n\tdescription,\n\tactionButtonLabel,\n\tcustomActions = EMPTY_ARRAY,\n} ) => {\n\tconst [ sendFallbackMessage, setSendFallbackMessage ] = useState( false );\n\tconst [ sendButtonPressMessage, setSendButtonPressMessage ] =\n\t\tuseState( false );\n\n\tconst {\n\t\tblockName,\n\t\tblockContent,\n\t\tisUnsupportedBlockEditorSupported,\n\t\tcanEnableUnsupportedBlockEditor,\n\t\tisEditableInUnsupportedBlockEditor,\n\t} = useUnsupportedBlockEditor( clientId );\n\n\t// Styles\n\tconst textStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__text' ],\n\t\tstyles[ 'unsupported-block-details__text--dark' ]\n\t);\n\tconst titleStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__title' ],\n\t\tstyles[ 'unsupported-block-details__title--dark' ]\n\t);\n\tconst descriptionStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__description' ],\n\t\tstyles[ 'unsupported-block-details__description--dark' ]\n\t);\n\tconst iconStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__icon' ],\n\t\tstyles[ 'unsupported-block-details__icon--dark' ]\n\t);\n\tconst actionButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__action-button' ],\n\t\tstyles[ 'unsupported-block-details__action-button--dark' ]\n\t);\n\n\tconst blockTitle =\n\t\tcustomBlockTitle || getBlockType( blockName )?.title || blockName;\n\n\tconst requestFallback = useCallback( () => {\n\t\tif (\n\t\t\tcanEnableUnsupportedBlockEditor &&\n\t\t\tisUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tonCloseSheet();\n\t\t\tsetSendButtonPressMessage( true );\n\t\t} else {\n\t\t\tonCloseSheet();\n\t\t\tsetSendFallbackMessage( true );\n\t\t}\n\t}, [\n\t\tcanEnableUnsupportedBlockEditor,\n\t\tisUnsupportedBlockEditorSupported,\n\t\tonCloseSheet,\n\t] );\n\n\t// The description can include extra notes via WP hooks.\n\tconst descriptionWithNotes = applyFilters(\n\t\t'native.unsupported_block_details_extra_note',\n\t\tdescription,\n\t\tblockName\n\t);\n\n\tconst webEditorDefaultLabel = applyFilters(\n\t\t'native.unsupported_block_details_web_editor_action',\n\t\t__( 'Edit using web editor' )\n\t);\n\n\tconst canUseWebEditor =\n\t\t( isUnsupportedBlockEditorSupported ||\n\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\tisEditableInUnsupportedBlockEditor;\n\tconst actions = [\n\t\t...[\n\t\t\tcanUseWebEditor && {\n\t\t\t\tlabel: actionButtonLabel || webEditorDefaultLabel,\n\t\t\t\tonPress: requestFallback,\n\t\t\t},\n\t\t],\n\t\t...customActions,\n\t].filter( Boolean );\n\n\treturn (\n\t\t<BottomSheet\n\t\t\tisVisible={ showSheet }\n\t\t\thideHeader\n\t\t\tonClose={ onCloseSheet }\n\t\t\tonModalHide={ () => {\n\t\t\t\tif ( sendFallbackMessage ) {\n\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t// For the Classic block, the content is kept in the `content` attribute.\n\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\tblockContent,\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t);\n\t\t\t\t\t}, 100 );\n\t\t\t\t\tsetSendFallbackMessage( false );\n\t\t\t\t} else if ( sendButtonPressMessage ) {\n\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t);\n\t\t\t\t\t}, 100 );\n\t\t\t\t\tsetSendButtonPressMessage( false );\n\t\t\t\t}\n\t\t\t} }\n\t\t>\n\t\t\t<View style={ styles[ 'unsupported-block-details__container' ] }>\n\t\t\t\t<Icon\n\t\t\t\t\ticon={ icon || help }\n\t\t\t\t\tcolor={ iconStyle.color }\n\t\t\t\t\tsize={ iconStyle.size }\n\t\t\t\t/>\n\t\t\t\t<Text style={ [ textStyle, titleStyle ] }>{ title }</Text>\n\t\t\t\t{ isEditableInUnsupportedBlockEditor &&\n\t\t\t\t\tdescriptionWithNotes && (\n\t\t\t\t\t\t<Text style={ [ textStyle, descriptionStyle ] }>\n\t\t\t\t\t\t\t{ descriptionWithNotes }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) }\n\t\t\t</View>\n\t\t\t{ actions.map( ( { label, onPress }, index ) => (\n\t\t\t\t<TextControl\n\t\t\t\t\tkey={ `${ label } - ${ index }` }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\tonPress={ onPress }\n\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t\t<TextControl\n\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\tonPress={ onCloseSheet }\n\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t/>\n\t\t</BottomSheet>\n\t);\n};\n\nexport default UnsupportedBlockDetails;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_components","_reactNativeBridge","_icons","_i18n","_compose","_blocks","_element","_hooks","_style","_interopRequireDefault","_useUnsupportedBlockEditor","_jsxRuntime","EMPTY_ARRAY","UnsupportedBlockDetails","clientId","showSheet","onCloseSheet","customBlockTitle","icon","title","description","actionButtonLabel","customActions","sendFallbackMessage","setSendFallbackMessage","useState","sendButtonPressMessage","setSendButtonPressMessage","blockName","blockContent","isUnsupportedBlockEditorSupported","canEnableUnsupportedBlockEditor","isEditableInUnsupportedBlockEditor","useUnsupportedBlockEditor","textStyle","usePreferredColorSchemeStyle","styles","titleStyle","descriptionStyle","iconStyle","actionButtonStyle","blockTitle","getBlockType","requestFallback","useCallback","descriptionWithNotes","applyFilters","webEditorDefaultLabel","__","canUseWebEditor","actions","label","onPress","filter","Boolean","jsxs","BottomSheet","isVisible","hideHeader","onClose","onModalHide","timeout","setTimeout","requestUnsupportedBlockFallback","sendActionButtonPressedAction","actionButtons","missingBlockAlertActionButton","children","View","style","jsx","Icon","help","color","size","Text","map","index","TextControl","separatorType","labelStyle","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/unsupported-block-details/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { help } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { getBlockType } from '@wordpress/blocks';\nimport { useCallback, useState } from '@wordpress/element';\nimport { applyFilters } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport useUnsupportedBlockEditor from '../use-unsupported-block-editor';\n\nconst EMPTY_ARRAY = [];\n\nconst UnsupportedBlockDetails = ( {\n\tclientId,\n\tshowSheet,\n\tonCloseSheet,\n\tcustomBlockTitle = '',\n\ticon,\n\ttitle,\n\tdescription,\n\tactionButtonLabel,\n\tcustomActions = EMPTY_ARRAY,\n} ) => {\n\tconst [ sendFallbackMessage, setSendFallbackMessage ] = useState( false );\n\tconst [ sendButtonPressMessage, setSendButtonPressMessage ] =\n\t\tuseState( false );\n\n\tconst {\n\t\tblockName,\n\t\tblockContent,\n\t\tisUnsupportedBlockEditorSupported,\n\t\tcanEnableUnsupportedBlockEditor,\n\t\tisEditableInUnsupportedBlockEditor,\n\t} = useUnsupportedBlockEditor( clientId );\n\n\t// Styles\n\tconst textStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__text' ],\n\t\tstyles[ 'unsupported-block-details__text--dark' ]\n\t);\n\tconst titleStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__title' ],\n\t\tstyles[ 'unsupported-block-details__title--dark' ]\n\t);\n\tconst descriptionStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__description' ],\n\t\tstyles[ 'unsupported-block-details__description--dark' ]\n\t);\n\tconst iconStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__icon' ],\n\t\tstyles[ 'unsupported-block-details__icon--dark' ]\n\t);\n\tconst actionButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'unsupported-block-details__action-button' ],\n\t\tstyles[ 'unsupported-block-details__action-button--dark' ]\n\t);\n\n\tconst blockTitle =\n\t\tcustomBlockTitle || getBlockType( blockName )?.title || blockName;\n\n\tconst requestFallback = useCallback( () => {\n\t\tif (\n\t\t\tcanEnableUnsupportedBlockEditor &&\n\t\t\tisUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tonCloseSheet();\n\t\t\tsetSendButtonPressMessage( true );\n\t\t} else {\n\t\t\tonCloseSheet();\n\t\t\tsetSendFallbackMessage( true );\n\t\t}\n\t}, [\n\t\tcanEnableUnsupportedBlockEditor,\n\t\tisUnsupportedBlockEditorSupported,\n\t\tonCloseSheet,\n\t] );\n\n\t// The description can include extra notes via WP hooks.\n\tconst descriptionWithNotes = applyFilters(\n\t\t'native.unsupported_block_details_extra_note',\n\t\tdescription,\n\t\tblockName\n\t);\n\n\tconst webEditorDefaultLabel = applyFilters(\n\t\t'native.unsupported_block_details_web_editor_action',\n\t\t__( 'Edit using web editor' )\n\t);\n\n\tconst canUseWebEditor =\n\t\t( isUnsupportedBlockEditorSupported ||\n\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\tisEditableInUnsupportedBlockEditor;\n\tconst actions = [\n\t\t...[\n\t\t\tcanUseWebEditor && {\n\t\t\t\tlabel: actionButtonLabel || webEditorDefaultLabel,\n\t\t\t\tonPress: requestFallback,\n\t\t\t},\n\t\t],\n\t\t...customActions,\n\t].filter( Boolean );\n\n\treturn (\n\t\t<BottomSheet\n\t\t\tisVisible={ showSheet }\n\t\t\thideHeader\n\t\t\tonClose={ onCloseSheet }\n\t\t\tonModalHide={ () => {\n\t\t\t\tif ( sendFallbackMessage ) {\n\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t// For the Classic block, the content is kept in the `content` attribute.\n\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\tblockContent,\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t);\n\t\t\t\t\t}, 100 );\n\t\t\t\t\tsetSendFallbackMessage( false );\n\t\t\t\t} else if ( sendButtonPressMessage ) {\n\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t);\n\t\t\t\t\t}, 100 );\n\t\t\t\t\tsetSendButtonPressMessage( false );\n\t\t\t\t}\n\t\t\t} }\n\t\t>\n\t\t\t<View style={ styles[ 'unsupported-block-details__container' ] }>\n\t\t\t\t<Icon\n\t\t\t\t\ticon={ icon || help }\n\t\t\t\t\tcolor={ iconStyle.color }\n\t\t\t\t\tsize={ iconStyle.size }\n\t\t\t\t/>\n\t\t\t\t<Text style={ [ textStyle, titleStyle ] }>{ title }</Text>\n\t\t\t\t{ isEditableInUnsupportedBlockEditor &&\n\t\t\t\t\tdescriptionWithNotes && (\n\t\t\t\t\t\t<Text style={ [ textStyle, descriptionStyle ] }>\n\t\t\t\t\t\t\t{ descriptionWithNotes }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) }\n\t\t\t</View>\n\t\t\t{ actions.map( ( { label, onPress }, index ) => (\n\t\t\t\t<TextControl\n\t\t\t\t\tkey={ `${ label } - ${ index }` }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\tonPress={ onPress }\n\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t\t<TextControl\n\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\tonPress={ onCloseSheet }\n\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t/>\n\t\t</BottomSheet>\n\t);\n};\n\nexport default UnsupportedBlockDetails;\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_element","_keycodes","_components","_compose","_data","_url","_store","_jsxRuntime","_react","isFunction","maybeFunc","URLInput","Component","constructor","props","onChange","bind","onFocus","onKeyDown","selectLink","handleOnClick","bindSuggestionNode","autocompleteRef","createRef","inputRef","updateSuggestions","debounce","suggestionNodes","suggestionsRequest","state","suggestions","showSuggestions","suggestionsValue","selectedSuggestion","suggestionsListboxId","suggestionOptionIdPrefix","componentDidUpdate","prevProps","value","__experimentalShowInitialSuggestions","scrollIntoView","behavior","block","inline","disableSuggestions","length","componentDidMount","shouldShowInitialSuggestions","componentWillUnmount","cancel","index","ref","__experimentalFetchLinkSuggestions","fetchLinkSuggestions","__experimentalHandleURLSuggestions","handleURLSuggestions","isInitialSuggestions","trim","isURL","setState","loading","request","then","debouncedSpeak","sprintf","_n","__","catch","finally","newValue","event","keyCode","UP","target","selectionStart","preventDefault","setSelectionRange","DOWN","ENTER","onSubmit","suggestion","previousIndex","nextIndex","TAB","speak","url","current","focus","getDerivedStateFromProps","instanceId","shouldShowSuggestions","hasValue","render","jsxs","Fragment","children","renderControl","renderSuggestions","label","className","isFullWidth","placeholder","__experimentalRenderControl","hideLabelFromVision","inputId","controlProps","id","clsx","inputProps","required","type","role","undefined","suffix","BaseControl","__nextHasNoMarginBottom","jsx","__experimentalInputControl","__next40pxDefaultSize","Spinner","__experimentalRenderSuggestions","suggestionsListProps","buildSuggestionItemProps","tabIndex","isLoading","handleSuggestionClick","currentInputValue","Popover","placement","focusOnMount","map","createElement","Button","key","onClick","title","_default","exports","default","compose","withSafeTimeout","withSpokenMessages","withInstanceId","withSelect","select","getSettings","blockEditorStore"],"sources":["@wordpress/block-editor/src/components/url-input/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf, _n } from '@wordpress/i18n';\nimport { Component, createRef } from '@wordpress/element';\nimport { UP, DOWN, ENTER, TAB } from '@wordpress/keycodes';\nimport {\n\tBaseControl,\n\tButton,\n\t__experimentalInputControl as InputControl,\n\tSpinner,\n\twithSpokenMessages,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tcompose,\n\tdebounce,\n\twithInstanceId,\n\twithSafeTimeout,\n} from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Whether the argument is a function.\n *\n * @param {*} maybeFunc The argument to check.\n * @return {boolean} True if the argument is a function, false otherwise.\n */\nfunction isFunction( maybeFunc ) {\n\treturn typeof maybeFunc === 'function';\n}\n\nclass URLInput extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.onChange = this.onChange.bind( this );\n\t\tthis.onFocus = this.onFocus.bind( this );\n\t\tthis.onKeyDown = this.onKeyDown.bind( this );\n\t\tthis.selectLink = this.selectLink.bind( this );\n\t\tthis.handleOnClick = this.handleOnClick.bind( this );\n\t\tthis.bindSuggestionNode = this.bindSuggestionNode.bind( this );\n\t\tthis.autocompleteRef = props.autocompleteRef || createRef();\n\t\tthis.inputRef = createRef();\n\t\tthis.updateSuggestions = debounce(\n\t\t\tthis.updateSuggestions.bind( this ),\n\t\t\t200\n\t\t);\n\n\t\tthis.suggestionNodes = [];\n\n\t\tthis.suggestionsRequest = null;\n\n\t\tthis.state = {\n\t\t\tsuggestions: [],\n\t\t\tshowSuggestions: false,\n\t\t\tsuggestionsValue: null,\n\t\t\tselectedSuggestion: null,\n\t\t\tsuggestionsListboxId: '',\n\t\t\tsuggestionOptionIdPrefix: '',\n\t\t};\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tconst { showSuggestions, selectedSuggestion } = this.state;\n\t\tconst { value, __experimentalShowInitialSuggestions = false } =\n\t\t\tthis.props;\n\n\t\t// Only have to worry about scrolling selected suggestion into view\n\t\t// when already expanded.\n\t\tif (\n\t\t\tshowSuggestions &&\n\t\t\tselectedSuggestion !== null &&\n\t\t\tthis.suggestionNodes[ selectedSuggestion ]\n\t\t) {\n\t\t\tthis.suggestionNodes[ selectedSuggestion ].scrollIntoView( {\n\t\t\t\tbehavior: 'instant',\n\t\t\t\tblock: 'nearest',\n\t\t\t\tinline: 'nearest',\n\t\t\t} );\n\t\t}\n\n\t\t// Update suggestions when the value changes.\n\t\tif ( prevProps.value !== value && ! this.props.disableSuggestions ) {\n\t\t\tif ( value?.length ) {\n\t\t\t\t// If the new value is not empty we need to update with suggestions for it.\n\t\t\t\tthis.updateSuggestions( value );\n\t\t\t} else if ( __experimentalShowInitialSuggestions ) {\n\t\t\t\t// If the new value is empty and we can show initial suggestions, then show initial suggestions.\n\t\t\t\tthis.updateSuggestions();\n\t\t\t}\n\t\t}\n\t}\n\n\tcomponentDidMount() {\n\t\tif ( this.shouldShowInitialSuggestions() ) {\n\t\t\tthis.updateSuggestions();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.suggestionsRequest?.cancel?.();\n\t\tthis.suggestionsRequest = null;\n\t}\n\n\tbindSuggestionNode( index ) {\n\t\treturn ( ref ) => {\n\t\t\tthis.suggestionNodes[ index ] = ref;\n\t\t};\n\t}\n\n\tshouldShowInitialSuggestions() {\n\t\tconst { __experimentalShowInitialSuggestions = false, value } =\n\t\t\tthis.props;\n\t\treturn (\n\t\t\t__experimentalShowInitialSuggestions && ! ( value && value.length )\n\t\t);\n\t}\n\n\tupdateSuggestions( value = '' ) {\n\t\tconst {\n\t\t\t__experimentalFetchLinkSuggestions: fetchLinkSuggestions,\n\t\t\t__experimentalHandleURLSuggestions: handleURLSuggestions,\n\t\t} = this.props;\n\n\t\tif ( ! fetchLinkSuggestions ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Initial suggestions may only show if there is no value\n\t\t// (note: this includes whitespace).\n\t\tconst isInitialSuggestions = ! value?.length;\n\n\t\t// Trim only now we've determined whether or not it originally had a \"length\"\n\t\t// (even if that value was all whitespace).\n\t\tvalue = value.trim();\n\n\t\t// Allow a suggestions request if:\n\t\t// - there are at least 2 characters in the search input (except manual searches where\n\t\t// search input length is not required to trigger a fetch)\n\t\t// - this is a direct entry (eg: a URL)\n\t\tif (\n\t\t\t! isInitialSuggestions &&\n\t\t\t( value.length < 2 || ( ! handleURLSuggestions && isURL( value ) ) )\n\t\t) {\n\t\t\tthis.suggestionsRequest?.cancel?.();\n\t\t\tthis.suggestionsRequest = null;\n\n\t\t\tthis.setState( {\n\t\t\t\tsuggestions: [],\n\t\t\t\tshowSuggestions: false,\n\t\t\t\tsuggestionsValue: value,\n\t\t\t\tselectedSuggestion: null,\n\t\t\t\tloading: false,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis.setState( {\n\t\t\tselectedSuggestion: null,\n\t\t\tloading: true,\n\t\t} );\n\n\t\tconst request = fetchLinkSuggestions( value, {\n\t\t\tisInitialSuggestions,\n\t\t} );\n\n\t\trequest\n\t\t\t.then( ( suggestions ) => {\n\t\t\t\t// A fetch Promise doesn't have an abort option. It's mimicked by\n\t\t\t\t// comparing the request reference in on the instance, which is\n\t\t\t\t// reset or deleted on subsequent requests or unmounting.\n\t\t\t\tif ( this.suggestionsRequest !== request ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.setState( {\n\t\t\t\t\tsuggestions,\n\t\t\t\t\tsuggestionsValue: value,\n\t\t\t\t\tloading: false,\n\t\t\t\t\tshowSuggestions: !! suggestions.length,\n\t\t\t\t} );\n\n\t\t\t\tif ( !! suggestions.length ) {\n\t\t\t\t\tthis.props.debouncedSpeak(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: %d: number of results. */\n\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t'%d result found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\t\t'%d results found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\t\tsuggestions.length\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tsuggestions.length\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'assertive'\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tthis.props.debouncedSpeak(\n\t\t\t\t\t\t__( 'No results.' ),\n\t\t\t\t\t\t'assertive'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tif ( this.suggestionsRequest !== request ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.setState( {\n\t\t\t\t\tloading: false,\n\t\t\t\t} );\n\t\t\t} )\n\t\t\t.finally( () => {\n\t\t\t\t// If this is the current promise then reset the reference\n\t\t\t\t// to allow for checking if a new request is made.\n\t\t\t\tif ( this.suggestionsRequest === request ) {\n\t\t\t\t\tthis.suggestionsRequest = null;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t// Note that this assignment is handled *before* the async search request\n\t\t// as a Promise always resolves on the next tick of the event loop.\n\t\tthis.suggestionsRequest = request;\n\t}\n\n\tonChange( newValue ) {\n\t\tthis.props.onChange( newValue );\n\t}\n\n\tonFocus() {\n\t\tconst { suggestions } = this.state;\n\t\tconst { disableSuggestions, value } = this.props;\n\n\t\t// When opening the link editor, if there's a value present, we want to load the suggestions pane with the results for this input search value\n\t\t// Don't re-run the suggestions on focus if there are already suggestions present (prevents searching again when tabbing between the input and buttons)\n\t\t// or there is already a request in progress.\n\t\tif (\n\t\t\tvalue &&\n\t\t\t! disableSuggestions &&\n\t\t\t! ( suggestions && suggestions.length ) &&\n\t\t\tthis.suggestionsRequest === null\n\t\t) {\n\t\t\t// Ensure the suggestions are updated with the current input value.\n\t\t\tthis.updateSuggestions( value );\n\t\t}\n\t}\n\n\tonKeyDown( event ) {\n\t\tthis.props.onKeyDown?.( event );\n\t\tconst { showSuggestions, selectedSuggestion, suggestions, loading } =\n\t\t\tthis.state;\n\n\t\t// If the suggestions are not shown or loading, we shouldn't handle the arrow keys\n\t\t// We shouldn't preventDefault to allow block arrow keys navigation.\n\t\tif ( ! showSuggestions || ! suggestions.length || loading ) {\n\t\t\t// In the Windows version of Firefox the up and down arrows don't move the caret\n\t\t\t// within an input field like they do for Mac Firefox/Chrome/Safari. This causes\n\t\t\t// a form of focus trapping that is disruptive to the user experience. This disruption\n\t\t\t// only happens if the caret is not in the first or last position in the text input.\n\t\t\t// See: https://github.com/WordPress/gutenberg/issues/5693#issuecomment-436684747\n\t\t\tswitch ( event.keyCode ) {\n\t\t\t\t// When UP is pressed, if the caret is at the start of the text, move it to the 0\n\t\t\t\t// position.\n\t\t\t\tcase UP: {\n\t\t\t\t\tif ( 0 !== event.target.selectionStart ) {\n\t\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\t\t// Set the input caret to position 0.\n\t\t\t\t\t\tevent.target.setSelectionRange( 0, 0 );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// When DOWN is pressed, if the caret is not at the end of the text, move it to the\n\t\t\t\t// last position.\n\t\t\t\tcase DOWN: {\n\t\t\t\t\tif (\n\t\t\t\t\t\tthis.props.value.length !== event.target.selectionStart\n\t\t\t\t\t) {\n\t\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\t\t// Set the input caret to the last position.\n\t\t\t\t\t\tevent.target.setSelectionRange(\n\t\t\t\t\t\t\tthis.props.value.length,\n\t\t\t\t\t\t\tthis.props.value.length\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\t// Submitting while loading should trigger onSubmit.\n\t\t\t\tcase ENTER: {\n\t\t\t\t\tif ( this.props.onSubmit ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tthis.props.onSubmit( null, event );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst suggestion =\n\t\t\tthis.state.suggestions[ this.state.selectedSuggestion ];\n\n\t\tswitch ( event.keyCode ) {\n\t\t\tcase UP: {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tconst previousIndex = ! selectedSuggestion\n\t\t\t\t\t? suggestions.length - 1\n\t\t\t\t\t: selectedSuggestion - 1;\n\t\t\t\tthis.setState( {\n\t\t\t\t\tselectedSuggestion: previousIndex,\n\t\t\t\t} );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase DOWN: {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tconst nextIndex =\n\t\t\t\t\tselectedSuggestion === null ||\n\t\t\t\t\tselectedSuggestion === suggestions.length - 1\n\t\t\t\t\t\t? 0\n\t\t\t\t\t\t: selectedSuggestion + 1;\n\t\t\t\tthis.setState( {\n\t\t\t\t\tselectedSuggestion: nextIndex,\n\t\t\t\t} );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase TAB: {\n\t\t\t\tif ( this.state.selectedSuggestion !== null ) {\n\t\t\t\t\tthis.selectLink( suggestion );\n\t\t\t\t\t// Announce a link has been selected when tabbing away from the input field.\n\t\t\t\t\tthis.props.speak( __( 'Link selected.' ) );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase ENTER: {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tif ( this.state.selectedSuggestion !== null ) {\n\t\t\t\t\tthis.selectLink( suggestion );\n\n\t\t\t\t\tif ( this.props.onSubmit ) {\n\t\t\t\t\t\tthis.props.onSubmit( suggestion, event );\n\t\t\t\t\t}\n\t\t\t\t} else if ( this.props.onSubmit ) {\n\t\t\t\t\tthis.props.onSubmit( null, event );\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tselectLink( suggestion ) {\n\t\tthis.props.onChange( suggestion.url, suggestion );\n\t\tthis.setState( {\n\t\t\tselectedSuggestion: null,\n\t\t\tshowSuggestions: false,\n\t\t} );\n\t}\n\n\thandleOnClick( suggestion ) {\n\t\tthis.selectLink( suggestion );\n\t\t// Move focus to the input field when a link suggestion is clicked.\n\t\tthis.inputRef.current.focus();\n\t}\n\n\tstatic getDerivedStateFromProps(\n\t\t{\n\t\t\tvalue,\n\t\t\tinstanceId,\n\t\t\tdisableSuggestions,\n\t\t\t__experimentalShowInitialSuggestions = false,\n\t\t},\n\t\t{ showSuggestions }\n\t) {\n\t\tlet shouldShowSuggestions = showSuggestions;\n\n\t\tconst hasValue = value && value.length;\n\n\t\tif ( ! __experimentalShowInitialSuggestions && ! hasValue ) {\n\t\t\tshouldShowSuggestions = false;\n\t\t}\n\n\t\tif ( disableSuggestions === true ) {\n\t\t\tshouldShowSuggestions = false;\n\t\t}\n\n\t\treturn {\n\t\t\tshowSuggestions: shouldShowSuggestions,\n\t\t\tsuggestionsListboxId: `block-editor-url-input-suggestions-${ instanceId }`,\n\t\t\tsuggestionOptionIdPrefix: `block-editor-url-input-suggestion-${ instanceId }`,\n\t\t};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ this.renderControl() }\n\t\t\t\t{ this.renderSuggestions() }\n\t\t\t</>\n\t\t);\n\t}\n\n\trenderControl() {\n\t\tconst {\n\t\t\tlabel = null,\n\t\t\tclassName,\n\t\t\tisFullWidth,\n\t\t\tinstanceId,\n\t\t\tplaceholder = __( 'Paste URL or type to search' ),\n\t\t\t__experimentalRenderControl: renderControl,\n\t\t\tvalue = '',\n\t\t\thideLabelFromVision = false,\n\t\t} = this.props;\n\n\t\tconst {\n\t\t\tloading,\n\t\t\tshowSuggestions,\n\t\t\tselectedSuggestion,\n\t\t\tsuggestionsListboxId,\n\t\t\tsuggestionOptionIdPrefix,\n\t\t} = this.state;\n\n\t\tconst inputId = `url-input-control-${ instanceId }`;\n\n\t\tconst controlProps = {\n\t\t\tid: inputId, // Passes attribute to label for the for attribute\n\t\t\tlabel,\n\t\t\tclassName: clsx( 'block-editor-url-input', className, {\n\t\t\t\t'is-full-width': isFullWidth,\n\t\t\t} ),\n\t\t\thideLabelFromVision,\n\t\t};\n\n\t\tconst inputProps = {\n\t\t\tid: inputId,\n\t\t\tvalue,\n\t\t\trequired: true,\n\t\t\ttype: 'text',\n\t\t\tonChange: this.onChange,\n\t\t\tonFocus: this.onFocus,\n\t\t\tplaceholder,\n\t\t\tonKeyDown: this.onKeyDown,\n\t\t\trole: 'combobox',\n\t\t\t'aria-label': label ? undefined : __( 'URL' ), // Ensure input always has an accessible label\n\t\t\t'aria-expanded': showSuggestions,\n\t\t\t'aria-autocomplete': 'list',\n\t\t\t'aria-owns': suggestionsListboxId,\n\t\t\t'aria-activedescendant':\n\t\t\t\tselectedSuggestion !== null\n\t\t\t\t\t? `${ suggestionOptionIdPrefix }-${ selectedSuggestion }`\n\t\t\t\t\t: undefined,\n\t\t\tref: this.inputRef,\n\t\t\tsuffix: this.props.suffix,\n\t\t};\n\n\t\tif ( renderControl ) {\n\t\t\treturn renderControl( controlProps, inputProps, loading );\n\t\t}\n\n\t\treturn (\n\t\t\t<BaseControl __nextHasNoMarginBottom { ...controlProps }>\n\t\t\t\t<InputControl { ...inputProps } __next40pxDefaultSize />\n\t\t\t\t{ loading && <Spinner /> }\n\t\t\t</BaseControl>\n\t\t);\n\t}\n\n\trenderSuggestions() {\n\t\tconst {\n\t\t\tclassName,\n\t\t\t__experimentalRenderSuggestions: renderSuggestions,\n\t\t} = this.props;\n\n\t\tconst {\n\t\t\tshowSuggestions,\n\t\t\tsuggestions,\n\t\t\tsuggestionsValue,\n\t\t\tselectedSuggestion,\n\t\t\tsuggestionsListboxId,\n\t\t\tsuggestionOptionIdPrefix,\n\t\t\tloading,\n\t\t} = this.state;\n\n\t\tif ( ! showSuggestions || suggestions.length === 0 ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst suggestionsListProps = {\n\t\t\tid: suggestionsListboxId,\n\t\t\tref: this.autocompleteRef,\n\t\t\trole: 'listbox',\n\t\t};\n\n\t\tconst buildSuggestionItemProps = ( suggestion, index ) => {\n\t\t\treturn {\n\t\t\t\trole: 'option',\n\t\t\t\ttabIndex: '-1',\n\t\t\t\tid: `${ suggestionOptionIdPrefix }-${ index }`,\n\t\t\t\tref: this.bindSuggestionNode( index ),\n\t\t\t\t'aria-selected':\n\t\t\t\t\tindex === selectedSuggestion ? true : undefined,\n\t\t\t};\n\t\t};\n\n\t\tif ( isFunction( renderSuggestions ) ) {\n\t\t\treturn renderSuggestions( {\n\t\t\t\tsuggestions,\n\t\t\t\tselectedSuggestion,\n\t\t\t\tsuggestionsListProps,\n\t\t\t\tbuildSuggestionItemProps,\n\t\t\t\tisLoading: loading,\n\t\t\t\thandleSuggestionClick: this.handleOnClick,\n\t\t\t\tisInitialSuggestions: ! suggestionsValue?.length,\n\t\t\t\tcurrentInputValue: suggestionsValue,\n\t\t\t} );\n\t\t}\n\n\t\treturn (\n\t\t\t<Popover placement=\"bottom\" focusOnMount={ false }>\n\t\t\t\t<div\n\t\t\t\t\t{ ...suggestionsListProps }\n\t\t\t\t\tclassName={ clsx( 'block-editor-url-input__suggestions', {\n\t\t\t\t\t\t[ `${ className }__suggestions` ]: className,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ suggestions.map( ( suggestion, index ) => (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t{ ...buildSuggestionItemProps( suggestion, index ) }\n\t\t\t\t\t\t\tkey={ suggestion.id }\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'block-editor-url-input__suggestion',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-selected': index === selectedSuggestion,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonClick={ () => this.handleOnClick( suggestion ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ suggestion.title }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) ) }\n\t\t\t\t</div>\n\t\t\t</Popover>\n\t\t);\n\t}\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/url-input/README.md\n */\nexport default compose(\n\twithSafeTimeout,\n\twithSpokenMessages,\n\twithInstanceId,\n\twithSelect( ( select, props ) => {\n\t\t// If a link suggestions handler is already provided then\n\t\t// bail.\n\t\tif ( isFunction( props.__experimentalFetchLinkSuggestions ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\t__experimentalFetchLinkSuggestions:\n\t\t\t\tgetSettings().__experimentalFetchLinkSuggestions,\n\t\t};\n\t} )\n)( URLInput );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_element","_keycodes","_components","_compose","_data","_url","_store","_jsxRuntime","_react","isFunction","maybeFunc","URLInput","Component","constructor","props","onChange","bind","onFocus","onKeyDown","selectLink","handleOnClick","bindSuggestionNode","autocompleteRef","createRef","inputRef","updateSuggestions","debounce","suggestionNodes","suggestionsRequest","state","suggestions","showSuggestions","suggestionsValue","selectedSuggestion","suggestionsListboxId","suggestionOptionIdPrefix","componentDidUpdate","prevProps","value","__experimentalShowInitialSuggestions","scrollIntoView","behavior","block","inline","disableSuggestions","length","componentDidMount","shouldShowInitialSuggestions","componentWillUnmount","cancel","index","ref","__experimentalFetchLinkSuggestions","fetchLinkSuggestions","__experimentalHandleURLSuggestions","handleURLSuggestions","isInitialSuggestions","trim","isURL","setState","loading","request","then","debouncedSpeak","sprintf","_n","__","catch","finally","newValue","event","keyCode","UP","target","selectionStart","preventDefault","setSelectionRange","DOWN","ENTER","onSubmit","suggestion","previousIndex","nextIndex","TAB","speak","url","current","focus","getDerivedStateFromProps","instanceId","shouldShowSuggestions","hasValue","render","jsxs","Fragment","children","renderControl","renderSuggestions","label","className","isFullWidth","placeholder","__experimentalRenderControl","hideLabelFromVision","inputId","controlProps","id","clsx","inputProps","required","type","role","undefined","suffix","BaseControl","__nextHasNoMarginBottom","jsx","__experimentalInputControl","__next40pxDefaultSize","Spinner","__experimentalRenderSuggestions","suggestionsListProps","buildSuggestionItemProps","tabIndex","isLoading","handleSuggestionClick","currentInputValue","Popover","placement","focusOnMount","map","createElement","Button","key","onClick","title","_default","exports","default","compose","withSafeTimeout","withSpokenMessages","withInstanceId","withSelect","select","getSettings","blockEditorStore"],"sources":["@wordpress/block-editor/src/components/url-input/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf, _n } from '@wordpress/i18n';\nimport { Component, createRef } from '@wordpress/element';\nimport { UP, DOWN, ENTER, TAB } from '@wordpress/keycodes';\nimport {\n\tBaseControl,\n\tButton,\n\t__experimentalInputControl as InputControl,\n\tSpinner,\n\twithSpokenMessages,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tcompose,\n\tdebounce,\n\twithInstanceId,\n\twithSafeTimeout,\n} from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Whether the argument is a function.\n *\n * @param {*} maybeFunc The argument to check.\n * @return {boolean} True if the argument is a function, false otherwise.\n */\nfunction isFunction( maybeFunc ) {\n\treturn typeof maybeFunc === 'function';\n}\n\nclass URLInput extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.onChange = this.onChange.bind( this );\n\t\tthis.onFocus = this.onFocus.bind( this );\n\t\tthis.onKeyDown = this.onKeyDown.bind( this );\n\t\tthis.selectLink = this.selectLink.bind( this );\n\t\tthis.handleOnClick = this.handleOnClick.bind( this );\n\t\tthis.bindSuggestionNode = this.bindSuggestionNode.bind( this );\n\t\tthis.autocompleteRef = props.autocompleteRef || createRef();\n\t\tthis.inputRef = createRef();\n\t\tthis.updateSuggestions = debounce(\n\t\t\tthis.updateSuggestions.bind( this ),\n\t\t\t200\n\t\t);\n\n\t\tthis.suggestionNodes = [];\n\n\t\tthis.suggestionsRequest = null;\n\n\t\tthis.state = {\n\t\t\tsuggestions: [],\n\t\t\tshowSuggestions: false,\n\t\t\tsuggestionsValue: null,\n\t\t\tselectedSuggestion: null,\n\t\t\tsuggestionsListboxId: '',\n\t\t\tsuggestionOptionIdPrefix: '',\n\t\t};\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tconst { showSuggestions, selectedSuggestion } = this.state;\n\t\tconst { value, __experimentalShowInitialSuggestions = false } =\n\t\t\tthis.props;\n\n\t\t// Only have to worry about scrolling selected suggestion into view\n\t\t// when already expanded.\n\t\tif (\n\t\t\tshowSuggestions &&\n\t\t\tselectedSuggestion !== null &&\n\t\t\tthis.suggestionNodes[ selectedSuggestion ]\n\t\t) {\n\t\t\tthis.suggestionNodes[ selectedSuggestion ].scrollIntoView( {\n\t\t\t\tbehavior: 'instant',\n\t\t\t\tblock: 'nearest',\n\t\t\t\tinline: 'nearest',\n\t\t\t} );\n\t\t}\n\n\t\t// Update suggestions when the value changes.\n\t\tif ( prevProps.value !== value && ! this.props.disableSuggestions ) {\n\t\t\tif ( value?.length ) {\n\t\t\t\t// If the new value is not empty we need to update with suggestions for it.\n\t\t\t\tthis.updateSuggestions( value );\n\t\t\t} else if ( __experimentalShowInitialSuggestions ) {\n\t\t\t\t// If the new value is empty and we can show initial suggestions, then show initial suggestions.\n\t\t\t\tthis.updateSuggestions();\n\t\t\t}\n\t\t}\n\t}\n\n\tcomponentDidMount() {\n\t\tif ( this.shouldShowInitialSuggestions() ) {\n\t\t\tthis.updateSuggestions();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.suggestionsRequest?.cancel?.();\n\t\tthis.suggestionsRequest = null;\n\t}\n\n\tbindSuggestionNode( index ) {\n\t\treturn ( ref ) => {\n\t\t\tthis.suggestionNodes[ index ] = ref;\n\t\t};\n\t}\n\n\tshouldShowInitialSuggestions() {\n\t\tconst { __experimentalShowInitialSuggestions = false, value } =\n\t\t\tthis.props;\n\t\treturn (\n\t\t\t__experimentalShowInitialSuggestions && ! ( value && value.length )\n\t\t);\n\t}\n\n\tupdateSuggestions( value = '' ) {\n\t\tconst {\n\t\t\t__experimentalFetchLinkSuggestions: fetchLinkSuggestions,\n\t\t\t__experimentalHandleURLSuggestions: handleURLSuggestions,\n\t\t} = this.props;\n\n\t\tif ( ! fetchLinkSuggestions ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Initial suggestions may only show if there is no value\n\t\t// (note: this includes whitespace).\n\t\tconst isInitialSuggestions = ! value?.length;\n\n\t\t// Trim only now we've determined whether or not it originally had a \"length\"\n\t\t// (even if that value was all whitespace).\n\t\tvalue = value.trim();\n\n\t\t// Allow a suggestions request if:\n\t\t// - there are at least 2 characters in the search input (except manual searches where\n\t\t// search input length is not required to trigger a fetch)\n\t\t// - this is a direct entry (eg: a URL)\n\t\tif (\n\t\t\t! isInitialSuggestions &&\n\t\t\t( value.length < 2 || ( ! handleURLSuggestions && isURL( value ) ) )\n\t\t) {\n\t\t\tthis.suggestionsRequest?.cancel?.();\n\t\t\tthis.suggestionsRequest = null;\n\n\t\t\tthis.setState( {\n\t\t\t\tsuggestions: [],\n\t\t\t\tshowSuggestions: false,\n\t\t\t\tsuggestionsValue: value,\n\t\t\t\tselectedSuggestion: null,\n\t\t\t\tloading: false,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis.setState( {\n\t\t\tselectedSuggestion: null,\n\t\t\tloading: true,\n\t\t} );\n\n\t\tconst request = fetchLinkSuggestions( value, {\n\t\t\tisInitialSuggestions,\n\t\t} );\n\n\t\trequest\n\t\t\t.then( ( suggestions ) => {\n\t\t\t\t// A fetch Promise doesn't have an abort option. It's mimicked by\n\t\t\t\t// comparing the request reference in on the instance, which is\n\t\t\t\t// reset or deleted on subsequent requests or unmounting.\n\t\t\t\tif ( this.suggestionsRequest !== request ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.setState( {\n\t\t\t\t\tsuggestions,\n\t\t\t\t\tsuggestionsValue: value,\n\t\t\t\t\tloading: false,\n\t\t\t\t\tshowSuggestions: !! suggestions.length,\n\t\t\t\t} );\n\n\t\t\t\tif ( !! suggestions.length ) {\n\t\t\t\t\tthis.props.debouncedSpeak(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: %d: number of results. */\n\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t'%d result found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\t\t'%d results found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\t\tsuggestions.length\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tsuggestions.length\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'assertive'\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tthis.props.debouncedSpeak(\n\t\t\t\t\t\t__( 'No results.' ),\n\t\t\t\t\t\t'assertive'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tif ( this.suggestionsRequest !== request ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.setState( {\n\t\t\t\t\tloading: false,\n\t\t\t\t} );\n\t\t\t} )\n\t\t\t.finally( () => {\n\t\t\t\t// If this is the current promise then reset the reference\n\t\t\t\t// to allow for checking if a new request is made.\n\t\t\t\tif ( this.suggestionsRequest === request ) {\n\t\t\t\t\tthis.suggestionsRequest = null;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t// Note that this assignment is handled *before* the async search request\n\t\t// as a Promise always resolves on the next tick of the event loop.\n\t\tthis.suggestionsRequest = request;\n\t}\n\n\tonChange( newValue ) {\n\t\tthis.props.onChange( newValue );\n\t}\n\n\tonFocus() {\n\t\tconst { suggestions } = this.state;\n\t\tconst { disableSuggestions, value } = this.props;\n\n\t\t// When opening the link editor, if there's a value present, we want to load the suggestions pane with the results for this input search value\n\t\t// Don't re-run the suggestions on focus if there are already suggestions present (prevents searching again when tabbing between the input and buttons)\n\t\t// or there is already a request in progress.\n\t\tif (\n\t\t\tvalue &&\n\t\t\t! disableSuggestions &&\n\t\t\t! ( suggestions && suggestions.length ) &&\n\t\t\tthis.suggestionsRequest === null\n\t\t) {\n\t\t\t// Ensure the suggestions are updated with the current input value.\n\t\t\tthis.updateSuggestions( value );\n\t\t}\n\t}\n\n\tonKeyDown( event ) {\n\t\tthis.props.onKeyDown?.( event );\n\t\tconst { showSuggestions, selectedSuggestion, suggestions, loading } =\n\t\t\tthis.state;\n\n\t\t// If the suggestions are not shown or loading, we shouldn't handle the arrow keys\n\t\t// We shouldn't preventDefault to allow block arrow keys navigation.\n\t\tif ( ! showSuggestions || ! suggestions.length || loading ) {\n\t\t\t// In the Windows version of Firefox the up and down arrows don't move the caret\n\t\t\t// within an input field like they do for Mac Firefox/Chrome/Safari. This causes\n\t\t\t// a form of focus trapping that is disruptive to the user experience. This disruption\n\t\t\t// only happens if the caret is not in the first or last position in the text input.\n\t\t\t// See: https://github.com/WordPress/gutenberg/issues/5693#issuecomment-436684747\n\t\t\tswitch ( event.keyCode ) {\n\t\t\t\t// When UP is pressed, if the caret is at the start of the text, move it to the 0\n\t\t\t\t// position.\n\t\t\t\tcase UP: {\n\t\t\t\t\tif ( 0 !== event.target.selectionStart ) {\n\t\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\t\t// Set the input caret to position 0.\n\t\t\t\t\t\tevent.target.setSelectionRange( 0, 0 );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// When DOWN is pressed, if the caret is not at the end of the text, move it to the\n\t\t\t\t// last position.\n\t\t\t\tcase DOWN: {\n\t\t\t\t\tif (\n\t\t\t\t\t\tthis.props.value.length !== event.target.selectionStart\n\t\t\t\t\t) {\n\t\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\t\t// Set the input caret to the last position.\n\t\t\t\t\t\tevent.target.setSelectionRange(\n\t\t\t\t\t\t\tthis.props.value.length,\n\t\t\t\t\t\t\tthis.props.value.length\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\t// Submitting while loading should trigger onSubmit.\n\t\t\t\tcase ENTER: {\n\t\t\t\t\tif ( this.props.onSubmit ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tthis.props.onSubmit( null, event );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst suggestion =\n\t\t\tthis.state.suggestions[ this.state.selectedSuggestion ];\n\n\t\tswitch ( event.keyCode ) {\n\t\t\tcase UP: {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tconst previousIndex = ! selectedSuggestion\n\t\t\t\t\t? suggestions.length - 1\n\t\t\t\t\t: selectedSuggestion - 1;\n\t\t\t\tthis.setState( {\n\t\t\t\t\tselectedSuggestion: previousIndex,\n\t\t\t\t} );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase DOWN: {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tconst nextIndex =\n\t\t\t\t\tselectedSuggestion === null ||\n\t\t\t\t\tselectedSuggestion === suggestions.length - 1\n\t\t\t\t\t\t? 0\n\t\t\t\t\t\t: selectedSuggestion + 1;\n\t\t\t\tthis.setState( {\n\t\t\t\t\tselectedSuggestion: nextIndex,\n\t\t\t\t} );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase TAB: {\n\t\t\t\tif ( this.state.selectedSuggestion !== null ) {\n\t\t\t\t\tthis.selectLink( suggestion );\n\t\t\t\t\t// Announce a link has been selected when tabbing away from the input field.\n\t\t\t\t\tthis.props.speak( __( 'Link selected.' ) );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase ENTER: {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tif ( this.state.selectedSuggestion !== null ) {\n\t\t\t\t\tthis.selectLink( suggestion );\n\n\t\t\t\t\tif ( this.props.onSubmit ) {\n\t\t\t\t\t\tthis.props.onSubmit( suggestion, event );\n\t\t\t\t\t}\n\t\t\t\t} else if ( this.props.onSubmit ) {\n\t\t\t\t\tthis.props.onSubmit( null, event );\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tselectLink( suggestion ) {\n\t\tthis.props.onChange( suggestion.url, suggestion );\n\t\tthis.setState( {\n\t\t\tselectedSuggestion: null,\n\t\t\tshowSuggestions: false,\n\t\t} );\n\t}\n\n\thandleOnClick( suggestion ) {\n\t\tthis.selectLink( suggestion );\n\t\t// Move focus to the input field when a link suggestion is clicked.\n\t\tthis.inputRef.current.focus();\n\t}\n\n\tstatic getDerivedStateFromProps(\n\t\t{\n\t\t\tvalue,\n\t\t\tinstanceId,\n\t\t\tdisableSuggestions,\n\t\t\t__experimentalShowInitialSuggestions = false,\n\t\t},\n\t\t{ showSuggestions }\n\t) {\n\t\tlet shouldShowSuggestions = showSuggestions;\n\n\t\tconst hasValue = value && value.length;\n\n\t\tif ( ! __experimentalShowInitialSuggestions && ! hasValue ) {\n\t\t\tshouldShowSuggestions = false;\n\t\t}\n\n\t\tif ( disableSuggestions === true ) {\n\t\t\tshouldShowSuggestions = false;\n\t\t}\n\n\t\treturn {\n\t\t\tshowSuggestions: shouldShowSuggestions,\n\t\t\tsuggestionsListboxId: `block-editor-url-input-suggestions-${ instanceId }`,\n\t\t\tsuggestionOptionIdPrefix: `block-editor-url-input-suggestion-${ instanceId }`,\n\t\t};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ this.renderControl() }\n\t\t\t\t{ this.renderSuggestions() }\n\t\t\t</>\n\t\t);\n\t}\n\n\trenderControl() {\n\t\tconst {\n\t\t\tlabel = null,\n\t\t\tclassName,\n\t\t\tisFullWidth,\n\t\t\tinstanceId,\n\t\t\tplaceholder = __( 'Paste URL or type to search' ),\n\t\t\t__experimentalRenderControl: renderControl,\n\t\t\tvalue = '',\n\t\t\thideLabelFromVision = false,\n\t\t} = this.props;\n\n\t\tconst {\n\t\t\tloading,\n\t\t\tshowSuggestions,\n\t\t\tselectedSuggestion,\n\t\t\tsuggestionsListboxId,\n\t\t\tsuggestionOptionIdPrefix,\n\t\t} = this.state;\n\n\t\tconst inputId = `url-input-control-${ instanceId }`;\n\n\t\tconst controlProps = {\n\t\t\tid: inputId, // Passes attribute to label for the for attribute\n\t\t\tlabel,\n\t\t\tclassName: clsx( 'block-editor-url-input', className, {\n\t\t\t\t'is-full-width': isFullWidth,\n\t\t\t} ),\n\t\t\thideLabelFromVision,\n\t\t};\n\n\t\tconst inputProps = {\n\t\t\tid: inputId,\n\t\t\tvalue,\n\t\t\trequired: true,\n\t\t\ttype: 'text',\n\t\t\tonChange: this.onChange,\n\t\t\tonFocus: this.onFocus,\n\t\t\tplaceholder,\n\t\t\tonKeyDown: this.onKeyDown,\n\t\t\trole: 'combobox',\n\t\t\t'aria-label': label ? undefined : __( 'URL' ), // Ensure input always has an accessible label\n\t\t\t'aria-expanded': showSuggestions,\n\t\t\t'aria-autocomplete': 'list',\n\t\t\t'aria-owns': suggestionsListboxId,\n\t\t\t'aria-activedescendant':\n\t\t\t\tselectedSuggestion !== null\n\t\t\t\t\t? `${ suggestionOptionIdPrefix }-${ selectedSuggestion }`\n\t\t\t\t\t: undefined,\n\t\t\tref: this.inputRef,\n\t\t\tsuffix: this.props.suffix,\n\t\t};\n\n\t\tif ( renderControl ) {\n\t\t\treturn renderControl( controlProps, inputProps, loading );\n\t\t}\n\n\t\treturn (\n\t\t\t<BaseControl __nextHasNoMarginBottom { ...controlProps }>\n\t\t\t\t<InputControl { ...inputProps } __next40pxDefaultSize />\n\t\t\t\t{ loading && <Spinner /> }\n\t\t\t</BaseControl>\n\t\t);\n\t}\n\n\trenderSuggestions() {\n\t\tconst {\n\t\t\tclassName,\n\t\t\t__experimentalRenderSuggestions: renderSuggestions,\n\t\t} = this.props;\n\n\t\tconst {\n\t\t\tshowSuggestions,\n\t\t\tsuggestions,\n\t\t\tsuggestionsValue,\n\t\t\tselectedSuggestion,\n\t\t\tsuggestionsListboxId,\n\t\t\tsuggestionOptionIdPrefix,\n\t\t\tloading,\n\t\t} = this.state;\n\n\t\tif ( ! showSuggestions || suggestions.length === 0 ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst suggestionsListProps = {\n\t\t\tid: suggestionsListboxId,\n\t\t\tref: this.autocompleteRef,\n\t\t\trole: 'listbox',\n\t\t};\n\n\t\tconst buildSuggestionItemProps = ( suggestion, index ) => {\n\t\t\treturn {\n\t\t\t\trole: 'option',\n\t\t\t\ttabIndex: '-1',\n\t\t\t\tid: `${ suggestionOptionIdPrefix }-${ index }`,\n\t\t\t\tref: this.bindSuggestionNode( index ),\n\t\t\t\t'aria-selected':\n\t\t\t\t\tindex === selectedSuggestion ? true : undefined,\n\t\t\t};\n\t\t};\n\n\t\tif ( isFunction( renderSuggestions ) ) {\n\t\t\treturn renderSuggestions( {\n\t\t\t\tsuggestions,\n\t\t\t\tselectedSuggestion,\n\t\t\t\tsuggestionsListProps,\n\t\t\t\tbuildSuggestionItemProps,\n\t\t\t\tisLoading: loading,\n\t\t\t\thandleSuggestionClick: this.handleOnClick,\n\t\t\t\tisInitialSuggestions: ! suggestionsValue?.length,\n\t\t\t\tcurrentInputValue: suggestionsValue,\n\t\t\t} );\n\t\t}\n\n\t\treturn (\n\t\t\t<Popover placement=\"bottom\" focusOnMount={ false }>\n\t\t\t\t<div\n\t\t\t\t\t{ ...suggestionsListProps }\n\t\t\t\t\tclassName={ clsx( 'block-editor-url-input__suggestions', {\n\t\t\t\t\t\t[ `${ className }__suggestions` ]: className,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ suggestions.map( ( suggestion, index ) => (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t{ ...buildSuggestionItemProps( suggestion, index ) }\n\t\t\t\t\t\t\tkey={ suggestion.id }\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'block-editor-url-input__suggestion',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-selected': index === selectedSuggestion,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonClick={ () => this.handleOnClick( suggestion ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ suggestion.title }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) ) }\n\t\t\t\t</div>\n\t\t\t</Popover>\n\t\t);\n\t}\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/url-input/README.md\n */\nexport default compose(\n\twithSafeTimeout,\n\twithSpokenMessages,\n\twithInstanceId,\n\twithSelect( ( select, props ) => {\n\t\t// If a link suggestions handler is already provided then\n\t\t// bail.\n\t\tif ( isFunction( props.__experimentalFetchLinkSuggestions ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\t__experimentalFetchLinkSuggestions:\n\t\t\t\tgetSettings().__experimentalFetchLinkSuggestions,\n\t\t};\n\t} )\n)( URLInput );\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_element","_dom","_components","_icons","_index","_interopRequireDefault","_jsxRuntime","LINK_DESTINATION_NONE","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","NEW_TAB_REL","ImageURLInputUI","linkDestination","onChangeUrl","url","mediaType","mediaUrl","mediaLink","linkTarget","linkClass","rel","showLightboxSetting","lightboxEnabled","onSetLightbox","resetLightbox","isOpen","setIsOpen","useState","popoverAnchor","setPopoverAnchor","openLinkUI","isEditingLink","setIsEditingLink","urlInput","setUrlInput","autocompleteRef","useRef","wrapperRef","useEffect","current","nextFocusTarget","focus","focusable","find","startEditLink","stopEditLink","closeLinkUI","getUpdatedLinkTargetSettings","value","newLinkTarget","undefined","updatedRel","rels","split","forEach","relVal","includes","push","join","filter","length","onFocusOutside","event","autocompleteElement","contains","target","onSubmitLinkChange","selectedDestination","getLinkDestinations","destination","href","lightbox","enabled","preventDefault","onLinkRemove","linkDestinations","title","__","icon","image","page","onSetHref","linkDestinationInput","onSetNewTab","updatedLinkTarget","onSetLinkRel","onSetLinkClass","advancedOptions","jsxs","__experimentalVStack","spacing","children","jsx","ToggleControl","__nextHasNoMarginBottom","label","onChange","checked","TextControl","__next40pxDefaultSize","linkEditorValue","hideLightboxPanel","showLinkEditor","urlLabel","PopoverChildren","className","Icon","fullscreen","Button","linkOff","onClick","size","default","LinkEditor","onChangeInputValue","onSubmit","Fragment","LinkViewer","onEditLinkClick","ToolbarButton","linkIcon","ref","isActive","anchor","onClose","renderSettings","additionalControls","NavigableMenu","map","link","MenuItem","iconPosition","info","offset","exports","__experimentalImageURLInputUI"],"sources":["@wordpress/block-editor/src/components/url-popover/image-url-input-ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport {\n\tToolbarButton,\n\tNavigableMenu,\n\tButton,\n\tMenuItem,\n\tToggleControl,\n\tTextControl,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport {\n\tIcon,\n\tlink as linkIcon,\n\timage,\n\tpage,\n\tfullscreen,\n\tlinkOff,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport URLPopover from './index';\n\nconst LINK_DESTINATION_NONE = 'none';\nconst LINK_DESTINATION_CUSTOM = 'custom';\nconst LINK_DESTINATION_MEDIA = 'media';\nconst LINK_DESTINATION_ATTACHMENT = 'attachment';\nconst NEW_TAB_REL = [ 'noreferrer', 'noopener' ];\n\nconst ImageURLInputUI = ( {\n\tlinkDestination,\n\tonChangeUrl,\n\turl,\n\tmediaType = 'image',\n\tmediaUrl,\n\tmediaLink,\n\tlinkTarget,\n\tlinkClass,\n\trel,\n\tshowLightboxSetting,\n\tlightboxEnabled,\n\tonSetLightbox,\n\tresetLightbox,\n} ) => {\n\tconst [ isOpen, setIsOpen ] = useState( false );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst openLinkUI = () => {\n\t\tsetIsOpen( true );\n\t};\n\n\tconst [ isEditingLink, setIsEditingLink ] = useState( false );\n\tconst [ urlInput, setUrlInput ] = useState( null );\n\n\tconst autocompleteRef = useRef( null );\n\tconst wrapperRef = useRef();\n\n\tuseEffect( () => {\n\t\tif ( ! wrapperRef.current ) {\n\t\t\treturn;\n\t\t}\n\t\tconst nextFocusTarget =\n\t\t\tfocus.focusable.find( wrapperRef.current )[ 0 ] ||\n\t\t\twrapperRef.current;\n\t\tnextFocusTarget.focus();\n\t}, [ isEditingLink, url, lightboxEnabled ] );\n\n\tconst startEditLink = () => {\n\t\tif (\n\t\t\tlinkDestination === LINK_DESTINATION_MEDIA ||\n\t\t\tlinkDestination === LINK_DESTINATION_ATTACHMENT\n\t\t) {\n\t\t\tsetUrlInput( '' );\n\t\t}\n\t\tsetIsEditingLink( true );\n\t};\n\n\tconst stopEditLink = () => {\n\t\tsetIsEditingLink( false );\n\t};\n\n\tconst closeLinkUI = () => {\n\t\tsetUrlInput( null );\n\t\tstopEditLink();\n\t\tsetIsOpen( false );\n\t};\n\n\tconst getUpdatedLinkTargetSettings = ( value ) => {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel;\n\t\tif ( newLinkTarget ) {\n\t\t\tconst rels = ( rel ?? '' ).split( ' ' );\n\t\t\tNEW_TAB_REL.forEach( ( relVal ) => {\n\t\t\t\tif ( ! rels.includes( relVal ) ) {\n\t\t\t\t\trels.push( relVal );\n\t\t\t\t}\n\t\t\t} );\n\t\t\tupdatedRel = rels.join( ' ' );\n\t\t} else {\n\t\t\tconst rels = ( rel ?? '' )\n\t\t\t\t.split( ' ' )\n\t\t\t\t.filter(\n\t\t\t\t\t( relVal ) => NEW_TAB_REL.includes( relVal ) === false\n\t\t\t\t);\n\t\t\tupdatedRel = rels.length ? rels.join( ' ' ) : undefined;\n\t\t}\n\n\t\treturn {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t};\n\t};\n\n\tconst onFocusOutside = () => {\n\t\treturn ( event ) => {\n\t\t\t// The autocomplete suggestions list renders in a separate popover (in a portal),\n\t\t\t// so onFocusOutside fails to detect that a click on a suggestion occurred in the\n\t\t\t// LinkContainer. Detect clicks on autocomplete suggestions using a ref here, and\n\t\t\t// return to avoid the popover being closed.\n\t\t\tconst autocompleteElement = autocompleteRef.current;\n\t\t\tif (\n\t\t\t\tautocompleteElement &&\n\t\t\t\tautocompleteElement.contains( event.target )\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsOpen( false );\n\t\t\tsetUrlInput( null );\n\t\t\tstopEditLink();\n\t\t};\n\t};\n\n\tconst onSubmitLinkChange = () => {\n\t\treturn ( event ) => {\n\t\t\tif ( urlInput ) {\n\t\t\t\t// It is possible the entered URL actually matches a named link destination.\n\t\t\t\t// This check will ensure our link destination is correct.\n\t\t\t\tconst selectedDestination =\n\t\t\t\t\tgetLinkDestinations().find(\n\t\t\t\t\t\t( destination ) => destination.url === urlInput\n\t\t\t\t\t)?.linkDestination || LINK_DESTINATION_CUSTOM;\n\n\t\t\t\tonChangeUrl( {\n\t\t\t\t\thref: urlInput,\n\t\t\t\t\tlinkDestination: selectedDestination,\n\t\t\t\t\tlightbox: { enabled: false },\n\t\t\t\t} );\n\t\t\t}\n\t\t\tstopEditLink();\n\t\t\tsetUrlInput( null );\n\t\t\tevent.preventDefault();\n\t\t};\n\t};\n\n\tconst onLinkRemove = () => {\n\t\tonChangeUrl( {\n\t\t\tlinkDestination: LINK_DESTINATION_NONE,\n\t\t\thref: '',\n\t\t} );\n\t};\n\n\tconst getLinkDestinations = () => {\n\t\tconst linkDestinations = [\n\t\t\t{\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t\ttitle: __( 'Link to image file' ),\n\t\t\t\turl: mediaType === 'image' ? mediaUrl : undefined,\n\t\t\t\ticon: image,\n\t\t\t},\n\t\t];\n\t\tif ( mediaType === 'image' && mediaLink ) {\n\t\t\tlinkDestinations.push( {\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t\ttitle: __( 'Link to attachment page' ),\n\t\t\t\turl: mediaType === 'image' ? mediaLink : undefined,\n\t\t\t\ticon: page,\n\t\t\t} );\n\t\t}\n\t\treturn linkDestinations;\n\t};\n\n\tconst onSetHref = ( value ) => {\n\t\tconst linkDestinations = getLinkDestinations();\n\t\tlet linkDestinationInput;\n\t\tif ( ! value ) {\n\t\t\tlinkDestinationInput = LINK_DESTINATION_NONE;\n\t\t} else {\n\t\t\tlinkDestinationInput = (\n\t\t\t\tlinkDestinations.find( ( destination ) => {\n\t\t\t\t\treturn destination.url === value;\n\t\t\t\t} ) || { linkDestination: LINK_DESTINATION_CUSTOM }\n\t\t\t).linkDestination;\n\t\t}\n\t\tonChangeUrl( {\n\t\t\tlinkDestination: linkDestinationInput,\n\t\t\thref: value,\n\t\t} );\n\t};\n\n\tconst onSetNewTab = ( value ) => {\n\t\tconst updatedLinkTarget = getUpdatedLinkTargetSettings( value );\n\t\tonChangeUrl( updatedLinkTarget );\n\t};\n\n\tconst onSetLinkRel = ( value ) => {\n\t\tonChangeUrl( { rel: value } );\n\t};\n\n\tconst onSetLinkClass = ( value ) => {\n\t\tonChangeUrl( { linkClass: value } );\n\t};\n\n\tconst advancedOptions = (\n\t\t<VStack spacing=\"3\">\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\tonChange={ onSetNewTab }\n\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\tvalue={ rel ?? '' }\n\t\t\t\tonChange={ onSetLinkRel }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Link CSS class' ) }\n\t\t\t\tvalue={ linkClass || '' }\n\t\t\t\tonChange={ onSetLinkClass }\n\t\t\t/>\n\t\t</VStack>\n\t);\n\n\tconst linkEditorValue = urlInput !== null ? urlInput : url;\n\tconst hideLightboxPanel =\n\t\t! lightboxEnabled || ( lightboxEnabled && ! showLightboxSetting );\n\tconst showLinkEditor = ! linkEditorValue && hideLightboxPanel;\n\n\tconst urlLabel = (\n\t\tgetLinkDestinations().find(\n\t\t\t( destination ) => destination.linkDestination === linkDestination\n\t\t) || {}\n\t).title;\n\n\tconst PopoverChildren = () => {\n\t\tif (\n\t\t\tlightboxEnabled &&\n\t\t\tshowLightboxSetting &&\n\t\t\t! url &&\n\t\t\t! isEditingLink\n\t\t) {\n\t\t\treturn (\n\t\t\t\t<div className=\"block-editor-url-popover__expand-on-click\">\n\t\t\t\t\t<Icon icon={ fullscreen } />\n\t\t\t\t\t<div className=\"text\">\n\t\t\t\t\t\t<p>{ __( 'Expand on click' ) }</p>\n\t\t\t\t\t\t<p className=\"description\">\n\t\t\t\t\t\t\t{ __( 'Scales the image with a lightbox effect' ) }\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<Button\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\tlabel={ __( 'Disable expand on click' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonSetLightbox?.( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t} else if ( ! url || isEditingLink ) {\n\t\t\treturn (\n\t\t\t\t<URLPopover.LinkEditor\n\t\t\t\t\tclassName=\"block-editor-format-toolbar__link-container-content\"\n\t\t\t\t\tvalue={ linkEditorValue }\n\t\t\t\t\tonChangeInputValue={ setUrlInput }\n\t\t\t\t\tonSubmit={ onSubmitLinkChange() }\n\t\t\t\t\tautocompleteRef={ autocompleteRef }\n\t\t\t\t/>\n\t\t\t);\n\t\t} else if ( url && ! isEditingLink ) {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t<URLPopover.LinkViewer\n\t\t\t\t\t\tclassName=\"block-editor-format-toolbar__link-container-content\"\n\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\tonEditLinkClick={ startEditLink }\n\t\t\t\t\t\turlLabel={ urlLabel }\n\t\t\t\t\t/>\n\t\t\t\t\t<Button\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\tlabel={ __( 'Remove link' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonLinkRemove();\n\t\t\t\t\t\t\tresetLightbox?.();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t);\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ linkIcon }\n\t\t\t\tclassName=\"components-toolbar__control\"\n\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\taria-expanded={ isOpen }\n\t\t\t\tonClick={ openLinkUI }\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\tisActive={\n\t\t\t\t\t!! url || ( lightboxEnabled && showLightboxSetting )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ isOpen && (\n\t\t\t\t<URLPopover\n\t\t\t\t\tref={ wrapperRef }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tonFocusOutside={ onFocusOutside() }\n\t\t\t\t\tonClose={ closeLinkUI }\n\t\t\t\t\trenderSettings={\n\t\t\t\t\t\thideLightboxPanel ? () => advancedOptions : null\n\t\t\t\t\t}\n\t\t\t\t\tadditionalControls={\n\t\t\t\t\t\tshowLinkEditor && (\n\t\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t\t{ getLinkDestinations().map( ( link ) => (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tkey={ link.linkDestination }\n\t\t\t\t\t\t\t\t\t\ticon={ link.icon }\n\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetUrlInput( null );\n\t\t\t\t\t\t\t\t\t\t\tonSetHref( link.url );\n\t\t\t\t\t\t\t\t\t\t\tstopEditLink();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ link.title }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t{ showLightboxSetting && (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tkey=\"expand-on-click\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-url-popover__expand-on-click\"\n\t\t\t\t\t\t\t\t\t\ticon={ fullscreen }\n\t\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Scale the image with a lightbox effect.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetUrlInput( null );\n\t\t\t\t\t\t\t\t\t\t\tonChangeUrl( {\n\t\t\t\t\t\t\t\t\t\t\t\tlinkDestination:\n\t\t\t\t\t\t\t\t\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t\t\t\t\t\t\t\t\t\thref: '',\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t\tonSetLightbox?.( true );\n\t\t\t\t\t\t\t\t\t\t\tstopEditLink();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Expand on click' ) }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t\toffset={ 13 }\n\t\t\t\t>\n\t\t\t\t\t{ PopoverChildren() }\n\t\t\t\t</URLPopover>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport { ImageURLInputUI as __experimentalImageURLInputUI };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_element","_dom","_components","_icons","_index","_interopRequireDefault","_jsxRuntime","LINK_DESTINATION_NONE","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","NEW_TAB_REL","ImageURLInputUI","linkDestination","onChangeUrl","url","mediaType","mediaUrl","mediaLink","linkTarget","linkClass","rel","showLightboxSetting","lightboxEnabled","onSetLightbox","resetLightbox","isOpen","setIsOpen","useState","popoverAnchor","setPopoverAnchor","openLinkUI","isEditingLink","setIsEditingLink","urlInput","setUrlInput","autocompleteRef","useRef","wrapperRef","useEffect","current","nextFocusTarget","focus","focusable","find","startEditLink","stopEditLink","closeLinkUI","getUpdatedLinkTargetSettings","value","newLinkTarget","undefined","updatedRel","rels","split","forEach","relVal","includes","push","join","filter","length","onFocusOutside","event","autocompleteElement","contains","target","onSubmitLinkChange","selectedDestination","getLinkDestinations","destination","href","lightbox","enabled","preventDefault","onLinkRemove","linkDestinations","title","__","icon","image","page","onSetHref","linkDestinationInput","onSetNewTab","updatedLinkTarget","onSetLinkRel","onSetLinkClass","advancedOptions","jsxs","__experimentalVStack","spacing","children","jsx","ToggleControl","__nextHasNoMarginBottom","label","onChange","checked","TextControl","__next40pxDefaultSize","linkEditorValue","hideLightboxPanel","showLinkEditor","urlLabel","PopoverChildren","className","Icon","fullscreen","Button","linkOff","onClick","size","default","LinkEditor","onChangeInputValue","onSubmit","Fragment","LinkViewer","onEditLinkClick","ToolbarButton","linkIcon","ref","isActive","anchor","onClose","renderSettings","additionalControls","NavigableMenu","map","link","MenuItem","iconPosition","info","offset","exports","__experimentalImageURLInputUI"],"sources":["@wordpress/block-editor/src/components/url-popover/image-url-input-ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport {\n\tToolbarButton,\n\tNavigableMenu,\n\tButton,\n\tMenuItem,\n\tToggleControl,\n\tTextControl,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport {\n\tIcon,\n\tlink as linkIcon,\n\timage,\n\tpage,\n\tfullscreen,\n\tlinkOff,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport URLPopover from './index';\n\nconst LINK_DESTINATION_NONE = 'none';\nconst LINK_DESTINATION_CUSTOM = 'custom';\nconst LINK_DESTINATION_MEDIA = 'media';\nconst LINK_DESTINATION_ATTACHMENT = 'attachment';\nconst NEW_TAB_REL = [ 'noreferrer', 'noopener' ];\n\nconst ImageURLInputUI = ( {\n\tlinkDestination,\n\tonChangeUrl,\n\turl,\n\tmediaType = 'image',\n\tmediaUrl,\n\tmediaLink,\n\tlinkTarget,\n\tlinkClass,\n\trel,\n\tshowLightboxSetting,\n\tlightboxEnabled,\n\tonSetLightbox,\n\tresetLightbox,\n} ) => {\n\tconst [ isOpen, setIsOpen ] = useState( false );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst openLinkUI = () => {\n\t\tsetIsOpen( true );\n\t};\n\n\tconst [ isEditingLink, setIsEditingLink ] = useState( false );\n\tconst [ urlInput, setUrlInput ] = useState( null );\n\n\tconst autocompleteRef = useRef( null );\n\tconst wrapperRef = useRef();\n\n\tuseEffect( () => {\n\t\tif ( ! wrapperRef.current ) {\n\t\t\treturn;\n\t\t}\n\t\tconst nextFocusTarget =\n\t\t\tfocus.focusable.find( wrapperRef.current )[ 0 ] ||\n\t\t\twrapperRef.current;\n\t\tnextFocusTarget.focus();\n\t}, [ isEditingLink, url, lightboxEnabled ] );\n\n\tconst startEditLink = () => {\n\t\tif (\n\t\t\tlinkDestination === LINK_DESTINATION_MEDIA ||\n\t\t\tlinkDestination === LINK_DESTINATION_ATTACHMENT\n\t\t) {\n\t\t\tsetUrlInput( '' );\n\t\t}\n\t\tsetIsEditingLink( true );\n\t};\n\n\tconst stopEditLink = () => {\n\t\tsetIsEditingLink( false );\n\t};\n\n\tconst closeLinkUI = () => {\n\t\tsetUrlInput( null );\n\t\tstopEditLink();\n\t\tsetIsOpen( false );\n\t};\n\n\tconst getUpdatedLinkTargetSettings = ( value ) => {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel;\n\t\tif ( newLinkTarget ) {\n\t\t\tconst rels = ( rel ?? '' ).split( ' ' );\n\t\t\tNEW_TAB_REL.forEach( ( relVal ) => {\n\t\t\t\tif ( ! rels.includes( relVal ) ) {\n\t\t\t\t\trels.push( relVal );\n\t\t\t\t}\n\t\t\t} );\n\t\t\tupdatedRel = rels.join( ' ' );\n\t\t} else {\n\t\t\tconst rels = ( rel ?? '' )\n\t\t\t\t.split( ' ' )\n\t\t\t\t.filter(\n\t\t\t\t\t( relVal ) => NEW_TAB_REL.includes( relVal ) === false\n\t\t\t\t);\n\t\t\tupdatedRel = rels.length ? rels.join( ' ' ) : undefined;\n\t\t}\n\n\t\treturn {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t};\n\t};\n\n\tconst onFocusOutside = () => {\n\t\treturn ( event ) => {\n\t\t\t// The autocomplete suggestions list renders in a separate popover (in a portal),\n\t\t\t// so onFocusOutside fails to detect that a click on a suggestion occurred in the\n\t\t\t// LinkContainer. Detect clicks on autocomplete suggestions using a ref here, and\n\t\t\t// return to avoid the popover being closed.\n\t\t\tconst autocompleteElement = autocompleteRef.current;\n\t\t\tif (\n\t\t\t\tautocompleteElement &&\n\t\t\t\tautocompleteElement.contains( event.target )\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsOpen( false );\n\t\t\tsetUrlInput( null );\n\t\t\tstopEditLink();\n\t\t};\n\t};\n\n\tconst onSubmitLinkChange = () => {\n\t\treturn ( event ) => {\n\t\t\tif ( urlInput ) {\n\t\t\t\t// It is possible the entered URL actually matches a named link destination.\n\t\t\t\t// This check will ensure our link destination is correct.\n\t\t\t\tconst selectedDestination =\n\t\t\t\t\tgetLinkDestinations().find(\n\t\t\t\t\t\t( destination ) => destination.url === urlInput\n\t\t\t\t\t)?.linkDestination || LINK_DESTINATION_CUSTOM;\n\n\t\t\t\tonChangeUrl( {\n\t\t\t\t\thref: urlInput,\n\t\t\t\t\tlinkDestination: selectedDestination,\n\t\t\t\t\tlightbox: { enabled: false },\n\t\t\t\t} );\n\t\t\t}\n\t\t\tstopEditLink();\n\t\t\tsetUrlInput( null );\n\t\t\tevent.preventDefault();\n\t\t};\n\t};\n\n\tconst onLinkRemove = () => {\n\t\tonChangeUrl( {\n\t\t\tlinkDestination: LINK_DESTINATION_NONE,\n\t\t\thref: '',\n\t\t} );\n\t};\n\n\tconst getLinkDestinations = () => {\n\t\tconst linkDestinations = [\n\t\t\t{\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t\ttitle: __( 'Link to image file' ),\n\t\t\t\turl: mediaType === 'image' ? mediaUrl : undefined,\n\t\t\t\ticon: image,\n\t\t\t},\n\t\t];\n\t\tif ( mediaType === 'image' && mediaLink ) {\n\t\t\tlinkDestinations.push( {\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t\ttitle: __( 'Link to attachment page' ),\n\t\t\t\turl: mediaType === 'image' ? mediaLink : undefined,\n\t\t\t\ticon: page,\n\t\t\t} );\n\t\t}\n\t\treturn linkDestinations;\n\t};\n\n\tconst onSetHref = ( value ) => {\n\t\tconst linkDestinations = getLinkDestinations();\n\t\tlet linkDestinationInput;\n\t\tif ( ! value ) {\n\t\t\tlinkDestinationInput = LINK_DESTINATION_NONE;\n\t\t} else {\n\t\t\tlinkDestinationInput = (\n\t\t\t\tlinkDestinations.find( ( destination ) => {\n\t\t\t\t\treturn destination.url === value;\n\t\t\t\t} ) || { linkDestination: LINK_DESTINATION_CUSTOM }\n\t\t\t).linkDestination;\n\t\t}\n\t\tonChangeUrl( {\n\t\t\tlinkDestination: linkDestinationInput,\n\t\t\thref: value,\n\t\t} );\n\t};\n\n\tconst onSetNewTab = ( value ) => {\n\t\tconst updatedLinkTarget = getUpdatedLinkTargetSettings( value );\n\t\tonChangeUrl( updatedLinkTarget );\n\t};\n\n\tconst onSetLinkRel = ( value ) => {\n\t\tonChangeUrl( { rel: value } );\n\t};\n\n\tconst onSetLinkClass = ( value ) => {\n\t\tonChangeUrl( { linkClass: value } );\n\t};\n\n\tconst advancedOptions = (\n\t\t<VStack spacing=\"3\">\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\tonChange={ onSetNewTab }\n\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\tvalue={ rel ?? '' }\n\t\t\t\tonChange={ onSetLinkRel }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Link CSS class' ) }\n\t\t\t\tvalue={ linkClass || '' }\n\t\t\t\tonChange={ onSetLinkClass }\n\t\t\t/>\n\t\t</VStack>\n\t);\n\n\tconst linkEditorValue = urlInput !== null ? urlInput : url;\n\tconst hideLightboxPanel =\n\t\t! lightboxEnabled || ( lightboxEnabled && ! showLightboxSetting );\n\tconst showLinkEditor = ! linkEditorValue && hideLightboxPanel;\n\n\tconst urlLabel = (\n\t\tgetLinkDestinations().find(\n\t\t\t( destination ) => destination.linkDestination === linkDestination\n\t\t) || {}\n\t).title;\n\n\tconst PopoverChildren = () => {\n\t\tif (\n\t\t\tlightboxEnabled &&\n\t\t\tshowLightboxSetting &&\n\t\t\t! url &&\n\t\t\t! isEditingLink\n\t\t) {\n\t\t\treturn (\n\t\t\t\t<div className=\"block-editor-url-popover__expand-on-click\">\n\t\t\t\t\t<Icon icon={ fullscreen } />\n\t\t\t\t\t<div className=\"text\">\n\t\t\t\t\t\t<p>{ __( 'Expand on click' ) }</p>\n\t\t\t\t\t\t<p className=\"description\">\n\t\t\t\t\t\t\t{ __( 'Scales the image with a lightbox effect' ) }\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<Button\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\tlabel={ __( 'Disable expand on click' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonSetLightbox?.( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t} else if ( ! url || isEditingLink ) {\n\t\t\treturn (\n\t\t\t\t<URLPopover.LinkEditor\n\t\t\t\t\tclassName=\"block-editor-format-toolbar__link-container-content\"\n\t\t\t\t\tvalue={ linkEditorValue }\n\t\t\t\t\tonChangeInputValue={ setUrlInput }\n\t\t\t\t\tonSubmit={ onSubmitLinkChange() }\n\t\t\t\t\tautocompleteRef={ autocompleteRef }\n\t\t\t\t/>\n\t\t\t);\n\t\t} else if ( url && ! isEditingLink ) {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t<URLPopover.LinkViewer\n\t\t\t\t\t\tclassName=\"block-editor-format-toolbar__link-container-content\"\n\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\tonEditLinkClick={ startEditLink }\n\t\t\t\t\t\turlLabel={ urlLabel }\n\t\t\t\t\t/>\n\t\t\t\t\t<Button\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\tlabel={ __( 'Remove link' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonLinkRemove();\n\t\t\t\t\t\t\tresetLightbox?.();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t);\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ linkIcon }\n\t\t\t\tclassName=\"components-toolbar__control\"\n\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\taria-expanded={ isOpen }\n\t\t\t\tonClick={ openLinkUI }\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\tisActive={\n\t\t\t\t\t!! url || ( lightboxEnabled && showLightboxSetting )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ isOpen && (\n\t\t\t\t<URLPopover\n\t\t\t\t\tref={ wrapperRef }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tonFocusOutside={ onFocusOutside() }\n\t\t\t\t\tonClose={ closeLinkUI }\n\t\t\t\t\trenderSettings={\n\t\t\t\t\t\thideLightboxPanel ? () => advancedOptions : null\n\t\t\t\t\t}\n\t\t\t\t\tadditionalControls={\n\t\t\t\t\t\tshowLinkEditor && (\n\t\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t\t{ getLinkDestinations().map( ( link ) => (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tkey={ link.linkDestination }\n\t\t\t\t\t\t\t\t\t\ticon={ link.icon }\n\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetUrlInput( null );\n\t\t\t\t\t\t\t\t\t\t\tonSetHref( link.url );\n\t\t\t\t\t\t\t\t\t\t\tstopEditLink();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ link.title }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t{ showLightboxSetting && (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tkey=\"expand-on-click\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-url-popover__expand-on-click\"\n\t\t\t\t\t\t\t\t\t\ticon={ fullscreen }\n\t\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Scale the image with a lightbox effect.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetUrlInput( null );\n\t\t\t\t\t\t\t\t\t\t\tonChangeUrl( {\n\t\t\t\t\t\t\t\t\t\t\t\tlinkDestination:\n\t\t\t\t\t\t\t\t\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t\t\t\t\t\t\t\t\t\thref: '',\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t\tonSetLightbox?.( true );\n\t\t\t\t\t\t\t\t\t\t\tstopEditLink();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Expand on click' ) }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t\toffset={ 13 }\n\t\t\t\t>\n\t\t\t\t\t{ PopoverChildren() }\n\t\t\t\t</URLPopover>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport { ImageURLInputUI as __experimentalImageURLInputUI };\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_blocks","_data","_commands","_icons","_blockIcon","_interopRequireDefault","_store","_jsxRuntime","getTransformCommands","useTransformCommands","replaceBlocks","multiSelect","useDispatch","blockEditorStore","blocks","clientIds","canRemove","possibleBlockTransformations","invalidSelection","useSelect","select","getBlockRootClientId","getBlockTransformItems","getSelectedBlockClientIds","getBlocksByClientId","canRemoveBlocks","selectedBlockClientIds","selectedBlocks","filter","block","length","rootClientId","isLoading","commands","isTemplate","isTemplatePart","selectForMultipleBlocks","insertedBlocks","clientId","onBlockTransform","name","newBlocks","switchToBlockType","hasPossibleBlockTransformations","map","transformation","title","icon","replace","label","sprintf","__","jsx","default","callback","close","getQuickActionsCommands","useQuickActionsCommands","isUngroupable","isGroupable","_isUngroupable","_isGroupable","canInsertBlockType","getDefaultBlockName","getGroupingBlockName","blocksStore","removeBlocks","duplicateBlocks","insertAfterBlock","insertBeforeBlock","onGroup","groupingBlockName","onUngroup","innerBlocks","canInsertDefaultBlock","canDuplicate","every","hasBlockSupport","push","copy","Array","isArray","add","group","ungroup","remove","command","useBlockCommands","useCommandLoader","hook","context","exports"],"sources":["@wordpress/block-editor/src/components/use-block-commands/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\thasBlockSupport,\n\tstore as blocksStore,\n\tswitchToBlockType,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useCommandLoader } from '@wordpress/commands';\nimport {\n\tcopy,\n\ttrash as remove,\n\tplus as add,\n\tgroup,\n\tungroup,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nconst getTransformCommands = () =>\n\tfunction useTransformCommands() {\n\t\tconst { replaceBlocks, multiSelect } = useDispatch( blockEditorStore );\n\t\tconst {\n\t\t\tblocks,\n\t\t\tclientIds,\n\t\t\tcanRemove,\n\t\t\tpossibleBlockTransformations,\n\t\t\tinvalidSelection,\n\t\t} = useSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\tgetBlocksByClientId,\n\t\t\t\tcanRemoveBlocks,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\t\tconst selectedBlocks = getBlocksByClientId(\n\t\t\t\tselectedBlockClientIds\n\t\t\t);\n\n\t\t\t// selectedBlocks can have `null`s when something tries to call `selectBlock` with an inexistent clientId.\n\t\t\t// These nulls will cause fatal errors down the line.\n\t\t\t// In order to prevent discrepancies between selectedBlockClientIds and selectedBlocks, we effectively treat the entire selection as invalid.\n\t\t\t// @see https://github.com/WordPress/gutenberg/pull/59410#issuecomment-2006304536\n\t\t\tif ( selectedBlocks.filter( ( block ) => ! block ).length > 0 ) {\n\t\t\t\treturn {\n\t\t\t\t\tinvalidSelection: true,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst rootClientId = getBlockRootClientId(\n\t\t\t\tselectedBlockClientIds[ 0 ]\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tblocks: selectedBlocks,\n\t\t\t\tclientIds: selectedBlockClientIds,\n\t\t\t\tpossibleBlockTransformations: getBlockTransformItems(\n\t\t\t\t\tselectedBlocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanRemove: canRemoveBlocks( selectedBlockClientIds ),\n\t\t\t\tinvalidSelection: false,\n\t\t\t};\n\t\t}, [] );\n\n\t\tif ( invalidSelection ) {\n\t\t\treturn {\n\t\t\t\tisLoading: false,\n\t\t\t\tcommands: [],\n\t\t\t};\n\t\t}\n\t\tconst isTemplate = blocks.length === 1 && isTemplatePart( blocks[ 0 ] );\n\n\t\tfunction selectForMultipleBlocks( insertedBlocks ) {\n\t\t\tif ( insertedBlocks.length > 1 ) {\n\t\t\t\tmultiSelect(\n\t\t\t\t\tinsertedBlocks[ 0 ].clientId,\n\t\t\t\t\tinsertedBlocks[ insertedBlocks.length - 1 ].clientId\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t// Simple block tranformation based on the `Block Transforms` API.\n\t\tfunction onBlockTransform( name ) {\n\t\t\tconst newBlocks = switchToBlockType( blocks, name );\n\t\t\treplaceBlocks( clientIds, newBlocks );\n\t\t\tselectForMultipleBlocks( newBlocks );\n\t\t}\n\n\t\t/**\n\t\t * The `isTemplate` check is a stopgap solution here.\n\t\t * Ideally, the Transforms API should handle this\n\t\t * by allowing to exclude blocks from wildcard transformations.\n\t\t */\n\t\tconst hasPossibleBlockTransformations =\n\t\t\t!! possibleBlockTransformations.length && canRemove && ! isTemplate;\n\n\t\tif (\n\t\t\t! clientIds ||\n\t\t\tclientIds.length < 1 ||\n\t\t\t! hasPossibleBlockTransformations\n\t\t) {\n\t\t\treturn { isLoading: false, commands: [] };\n\t\t}\n\n\t\tconst commands = possibleBlockTransformations.map(\n\t\t\t( transformation ) => {\n\t\t\t\tconst { name, title, icon } = transformation;\n\t\t\t\treturn {\n\t\t\t\t\tname:\n\t\t\t\t\t\t'core/block-editor/transform-to-' +\n\t\t\t\t\t\tname.replace( '/', '-' ),\n\t\t\t\t\t/* translators: %s: Block or block variation name. */\n\t\t\t\t\tlabel: sprintf( __( 'Transform to %s' ), title ),\n\t\t\t\t\ticon: <BlockIcon icon={ icon } />,\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tonBlockTransform( name );\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t);\n\n\t\treturn { isLoading: false, commands };\n\t};\n\nconst getQuickActionsCommands = () =>\n\tfunction useQuickActionsCommands() {\n\t\tconst { clientIds, isUngroupable, isGroupable } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\t\tisUngroupable: _isUngroupable,\n\t\t\t\t\tisGroupable: _isGroupable,\n\t\t\t\t} = select( blockEditorStore );\n\t\t\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\n\t\t\t\treturn {\n\t\t\t\t\tclientIds: selectedBlockClientIds,\n\t\t\t\t\tisUngroupable: _isUngroupable(),\n\t\t\t\t\tisGroupable: _isGroupable(),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst {\n\t\t\tcanInsertBlockType,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlocksByClientId,\n\t\t\tcanRemoveBlocks,\n\t\t} = useSelect( blockEditorStore );\n\t\tconst { getDefaultBlockName, getGroupingBlockName } =\n\t\t\tuseSelect( blocksStore );\n\n\t\tconst blocks = getBlocksByClientId( clientIds );\n\n\t\tconst {\n\t\t\tremoveBlocks,\n\t\t\treplaceBlocks,\n\t\t\tduplicateBlocks,\n\t\t\tinsertAfterBlock,\n\t\t\tinsertBeforeBlock,\n\t\t} = useDispatch( blockEditorStore );\n\n\t\tconst onGroup = () => {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst groupingBlockName = getGroupingBlockName();\n\n\t\t\t// Activate the `transform` on `core/group` which does the conversion.\n\t\t\tconst newBlocks = switchToBlockType( blocks, groupingBlockName );\n\n\t\t\tif ( ! newBlocks ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\treplaceBlocks( clientIds, newBlocks );\n\t\t};\n\t\tconst onUngroup = () => {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst innerBlocks = blocks[ 0 ].innerBlocks;\n\n\t\t\tif ( ! innerBlocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\treplaceBlocks( clientIds, innerBlocks );\n\t\t};\n\n\t\tif ( ! clientIds || clientIds.length < 1 ) {\n\t\t\treturn { isLoading: false, commands: [] };\n\t\t}\n\n\t\tconst rootClientId = getBlockRootClientId( clientIds[ 0 ] );\n\t\tconst canInsertDefaultBlock = canInsertBlockType(\n\t\t\tgetDefaultBlockName(),\n\t\t\trootClientId\n\t\t);\n\t\tconst canDuplicate = blocks.every( ( block ) => {\n\t\t\treturn (\n\t\t\t\t!! block &&\n\t\t\t\thasBlockSupport( block.name, 'multiple', true ) &&\n\t\t\t\tcanInsertBlockType( block.name, rootClientId )\n\t\t\t);\n\t\t} );\n\t\tconst canRemove = canRemoveBlocks( clientIds );\n\n\t\tconst commands = [];\n\n\t\tif ( canDuplicate ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'duplicate',\n\t\t\t\tlabel: __( 'Duplicate' ),\n\t\t\t\tcallback: () => duplicateBlocks( clientIds, true ),\n\t\t\t\ticon: copy,\n\t\t\t} );\n\t\t}\n\n\t\tif ( canInsertDefaultBlock ) {\n\t\t\tcommands.push(\n\t\t\t\t{\n\t\t\t\t\tname: 'add-before',\n\t\t\t\t\tlabel: __( 'Add before' ),\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t\t\t\t? clientIds[ 0 ]\n\t\t\t\t\t\t\t: clientId;\n\t\t\t\t\t\tinsertBeforeBlock( clientId );\n\t\t\t\t\t},\n\t\t\t\t\ticon: add,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tname: 'add-after',\n\t\t\t\t\tlabel: __( 'Add after' ),\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t\t\t\t? clientIds[ clientIds.length - 1 ]\n\t\t\t\t\t\t\t: clientId;\n\t\t\t\t\t\tinsertAfterBlock( clientId );\n\t\t\t\t\t},\n\t\t\t\t\ticon: add,\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif ( isGroupable ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'Group',\n\t\t\t\tlabel: __( 'Group' ),\n\t\t\t\tcallback: onGroup,\n\t\t\t\ticon: group,\n\t\t\t} );\n\t\t}\n\n\t\tif ( isUngroupable ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'ungroup',\n\t\t\t\tlabel: __( 'Ungroup' ),\n\t\t\t\tcallback: onUngroup,\n\t\t\t\ticon: ungroup,\n\t\t\t} );\n\t\t}\n\n\t\tif ( canRemove ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'remove',\n\t\t\t\tlabel: __( 'Delete' ),\n\t\t\t\tcallback: () => removeBlocks( clientIds, true ),\n\t\t\t\ticon: remove,\n\t\t\t} );\n\t\t}\n\n\t\treturn {\n\t\t\tisLoading: false,\n\t\t\tcommands: commands.map( ( command ) => ( {\n\t\t\t\t...command,\n\t\t\t\tname: 'core/block-editor/action-' + command.name,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tcommand.callback();\n\t\t\t\t\tclose();\n\t\t\t\t},\n\t\t\t} ) ),\n\t\t};\n\t};\n\nexport const useBlockCommands = () => {\n\tuseCommandLoader( {\n\t\tname: 'core/block-editor/blockTransforms',\n\t\thook: getTransformCommands(),\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/block-editor/blockQuickActions',\n\t\thook: getQuickActionsCommands(),\n\t\tcontext: 'block-selection-edit',\n\t} );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_blocks","_data","_commands","_icons","_blockIcon","_interopRequireDefault","_store","_jsxRuntime","getTransformCommands","useTransformCommands","replaceBlocks","multiSelect","useDispatch","blockEditorStore","blocks","clientIds","canRemove","possibleBlockTransformations","invalidSelection","useSelect","select","getBlockRootClientId","getBlockTransformItems","getSelectedBlockClientIds","getBlocksByClientId","canRemoveBlocks","selectedBlockClientIds","selectedBlocks","filter","block","length","rootClientId","isLoading","commands","isTemplate","isTemplatePart","selectForMultipleBlocks","insertedBlocks","clientId","onBlockTransform","name","newBlocks","switchToBlockType","hasPossibleBlockTransformations","map","transformation","title","icon","replace","label","sprintf","__","jsx","default","callback","close","getQuickActionsCommands","useQuickActionsCommands","isUngroupable","isGroupable","_isUngroupable","_isGroupable","canInsertBlockType","getDefaultBlockName","getGroupingBlockName","blocksStore","removeBlocks","duplicateBlocks","insertAfterBlock","insertBeforeBlock","onGroup","groupingBlockName","onUngroup","innerBlocks","canInsertDefaultBlock","canDuplicate","every","hasBlockSupport","push","copy","Array","isArray","add","group","ungroup","remove","command","useBlockCommands","useCommandLoader","hook","context","exports"],"sources":["@wordpress/block-editor/src/components/use-block-commands/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\thasBlockSupport,\n\tstore as blocksStore,\n\tswitchToBlockType,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useCommandLoader } from '@wordpress/commands';\nimport {\n\tcopy,\n\ttrash as remove,\n\tplus as add,\n\tgroup,\n\tungroup,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nconst getTransformCommands = () =>\n\tfunction useTransformCommands() {\n\t\tconst { replaceBlocks, multiSelect } = useDispatch( blockEditorStore );\n\t\tconst {\n\t\t\tblocks,\n\t\t\tclientIds,\n\t\t\tcanRemove,\n\t\t\tpossibleBlockTransformations,\n\t\t\tinvalidSelection,\n\t\t} = useSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\tgetBlocksByClientId,\n\t\t\t\tcanRemoveBlocks,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\t\tconst selectedBlocks = getBlocksByClientId(\n\t\t\t\tselectedBlockClientIds\n\t\t\t);\n\n\t\t\t// selectedBlocks can have `null`s when something tries to call `selectBlock` with an inexistent clientId.\n\t\t\t// These nulls will cause fatal errors down the line.\n\t\t\t// In order to prevent discrepancies between selectedBlockClientIds and selectedBlocks, we effectively treat the entire selection as invalid.\n\t\t\t// @see https://github.com/WordPress/gutenberg/pull/59410#issuecomment-2006304536\n\t\t\tif ( selectedBlocks.filter( ( block ) => ! block ).length > 0 ) {\n\t\t\t\treturn {\n\t\t\t\t\tinvalidSelection: true,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst rootClientId = getBlockRootClientId(\n\t\t\t\tselectedBlockClientIds[ 0 ]\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tblocks: selectedBlocks,\n\t\t\t\tclientIds: selectedBlockClientIds,\n\t\t\t\tpossibleBlockTransformations: getBlockTransformItems(\n\t\t\t\t\tselectedBlocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanRemove: canRemoveBlocks( selectedBlockClientIds ),\n\t\t\t\tinvalidSelection: false,\n\t\t\t};\n\t\t}, [] );\n\n\t\tif ( invalidSelection ) {\n\t\t\treturn {\n\t\t\t\tisLoading: false,\n\t\t\t\tcommands: [],\n\t\t\t};\n\t\t}\n\t\tconst isTemplate = blocks.length === 1 && isTemplatePart( blocks[ 0 ] );\n\n\t\tfunction selectForMultipleBlocks( insertedBlocks ) {\n\t\t\tif ( insertedBlocks.length > 1 ) {\n\t\t\t\tmultiSelect(\n\t\t\t\t\tinsertedBlocks[ 0 ].clientId,\n\t\t\t\t\tinsertedBlocks[ insertedBlocks.length - 1 ].clientId\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t// Simple block tranformation based on the `Block Transforms` API.\n\t\tfunction onBlockTransform( name ) {\n\t\t\tconst newBlocks = switchToBlockType( blocks, name );\n\t\t\treplaceBlocks( clientIds, newBlocks );\n\t\t\tselectForMultipleBlocks( newBlocks );\n\t\t}\n\n\t\t/**\n\t\t * The `isTemplate` check is a stopgap solution here.\n\t\t * Ideally, the Transforms API should handle this\n\t\t * by allowing to exclude blocks from wildcard transformations.\n\t\t */\n\t\tconst hasPossibleBlockTransformations =\n\t\t\t!! possibleBlockTransformations.length && canRemove && ! isTemplate;\n\n\t\tif (\n\t\t\t! clientIds ||\n\t\t\tclientIds.length < 1 ||\n\t\t\t! hasPossibleBlockTransformations\n\t\t) {\n\t\t\treturn { isLoading: false, commands: [] };\n\t\t}\n\n\t\tconst commands = possibleBlockTransformations.map(\n\t\t\t( transformation ) => {\n\t\t\t\tconst { name, title, icon } = transformation;\n\t\t\t\treturn {\n\t\t\t\t\tname:\n\t\t\t\t\t\t'core/block-editor/transform-to-' +\n\t\t\t\t\t\tname.replace( '/', '-' ),\n\t\t\t\t\t/* translators: %s: Block or block variation name. */\n\t\t\t\t\tlabel: sprintf( __( 'Transform to %s' ), title ),\n\t\t\t\t\ticon: <BlockIcon icon={ icon } />,\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tonBlockTransform( name );\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t);\n\n\t\treturn { isLoading: false, commands };\n\t};\n\nconst getQuickActionsCommands = () =>\n\tfunction useQuickActionsCommands() {\n\t\tconst { clientIds, isUngroupable, isGroupable } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\t\tisUngroupable: _isUngroupable,\n\t\t\t\t\tisGroupable: _isGroupable,\n\t\t\t\t} = select( blockEditorStore );\n\t\t\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\n\t\t\t\treturn {\n\t\t\t\t\tclientIds: selectedBlockClientIds,\n\t\t\t\t\tisUngroupable: _isUngroupable(),\n\t\t\t\t\tisGroupable: _isGroupable(),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst {\n\t\t\tcanInsertBlockType,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlocksByClientId,\n\t\t\tcanRemoveBlocks,\n\t\t} = useSelect( blockEditorStore );\n\t\tconst { getDefaultBlockName, getGroupingBlockName } =\n\t\t\tuseSelect( blocksStore );\n\n\t\tconst blocks = getBlocksByClientId( clientIds );\n\n\t\tconst {\n\t\t\tremoveBlocks,\n\t\t\treplaceBlocks,\n\t\t\tduplicateBlocks,\n\t\t\tinsertAfterBlock,\n\t\t\tinsertBeforeBlock,\n\t\t} = useDispatch( blockEditorStore );\n\n\t\tconst onGroup = () => {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst groupingBlockName = getGroupingBlockName();\n\n\t\t\t// Activate the `transform` on `core/group` which does the conversion.\n\t\t\tconst newBlocks = switchToBlockType( blocks, groupingBlockName );\n\n\t\t\tif ( ! newBlocks ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\treplaceBlocks( clientIds, newBlocks );\n\t\t};\n\t\tconst onUngroup = () => {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst innerBlocks = blocks[ 0 ].innerBlocks;\n\n\t\t\tif ( ! innerBlocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\treplaceBlocks( clientIds, innerBlocks );\n\t\t};\n\n\t\tif ( ! clientIds || clientIds.length < 1 ) {\n\t\t\treturn { isLoading: false, commands: [] };\n\t\t}\n\n\t\tconst rootClientId = getBlockRootClientId( clientIds[ 0 ] );\n\t\tconst canInsertDefaultBlock = canInsertBlockType(\n\t\t\tgetDefaultBlockName(),\n\t\t\trootClientId\n\t\t);\n\t\tconst canDuplicate = blocks.every( ( block ) => {\n\t\t\treturn (\n\t\t\t\t!! block &&\n\t\t\t\thasBlockSupport( block.name, 'multiple', true ) &&\n\t\t\t\tcanInsertBlockType( block.name, rootClientId )\n\t\t\t);\n\t\t} );\n\t\tconst canRemove = canRemoveBlocks( clientIds );\n\n\t\tconst commands = [];\n\n\t\tif ( canDuplicate ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'duplicate',\n\t\t\t\tlabel: __( 'Duplicate' ),\n\t\t\t\tcallback: () => duplicateBlocks( clientIds, true ),\n\t\t\t\ticon: copy,\n\t\t\t} );\n\t\t}\n\n\t\tif ( canInsertDefaultBlock ) {\n\t\t\tcommands.push(\n\t\t\t\t{\n\t\t\t\t\tname: 'add-before',\n\t\t\t\t\tlabel: __( 'Add before' ),\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t\t\t\t? clientIds[ 0 ]\n\t\t\t\t\t\t\t: clientId;\n\t\t\t\t\t\tinsertBeforeBlock( clientId );\n\t\t\t\t\t},\n\t\t\t\t\ticon: add,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tname: 'add-after',\n\t\t\t\t\tlabel: __( 'Add after' ),\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t\t\t\t? clientIds[ clientIds.length - 1 ]\n\t\t\t\t\t\t\t: clientId;\n\t\t\t\t\t\tinsertAfterBlock( clientId );\n\t\t\t\t\t},\n\t\t\t\t\ticon: add,\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif ( isGroupable ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'Group',\n\t\t\t\tlabel: __( 'Group' ),\n\t\t\t\tcallback: onGroup,\n\t\t\t\ticon: group,\n\t\t\t} );\n\t\t}\n\n\t\tif ( isUngroupable ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'ungroup',\n\t\t\t\tlabel: __( 'Ungroup' ),\n\t\t\t\tcallback: onUngroup,\n\t\t\t\ticon: ungroup,\n\t\t\t} );\n\t\t}\n\n\t\tif ( canRemove ) {\n\t\t\tcommands.push( {\n\t\t\t\tname: 'remove',\n\t\t\t\tlabel: __( 'Delete' ),\n\t\t\t\tcallback: () => removeBlocks( clientIds, true ),\n\t\t\t\ticon: remove,\n\t\t\t} );\n\t\t}\n\n\t\treturn {\n\t\t\tisLoading: false,\n\t\t\tcommands: commands.map( ( command ) => ( {\n\t\t\t\t...command,\n\t\t\t\tname: 'core/block-editor/action-' + command.name,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tcommand.callback();\n\t\t\t\t\tclose();\n\t\t\t\t},\n\t\t\t} ) ),\n\t\t};\n\t};\n\nexport const useBlockCommands = () => {\n\tuseCommandLoader( {\n\t\tname: 'core/block-editor/blockTransforms',\n\t\thook: getTransformCommands(),\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/block-editor/blockQuickActions',\n\t\thook: getQuickActionsCommands(),\n\t\tcontext: 'block-selection-edit',\n\t} );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -325,7 +326,8 @@ function useBlockDropZone({
325
326
  rootBlockIndex: getBlockIndex(targetRootClientId)
326
327
  });
327
328
  const [targetIndex, operation, nearestSide] = dropTargetPosition;
328
- if (isZoomOut() && operation !== 'insert') {
329
+ const isTargetIndexEmptyDefaultBlock = blocksData[targetIndex]?.isUnmodifiedDefaultBlock;
330
+ if (isZoomOut() && !isTargetIndexEmptyDefaultBlock && operation !== 'insert') {
329
331
  return;
330
332
  }
331
333
  if (operation === 'group') {