@wordpress/block-editor 14.8.1-next.a9f418477.0 → 14.9.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 (906) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +8 -0
  3. package/build/autocompleters/block.js +1 -0
  4. package/build/autocompleters/block.js.map +1 -1
  5. package/build/autocompleters/link.js +1 -0
  6. package/build/autocompleters/link.js.map +1 -1
  7. package/build/components/alignment-control/ui.js +1 -0
  8. package/build/components/alignment-control/ui.js.map +1 -1
  9. package/build/components/autocomplete/index.js +1 -0
  10. package/build/components/autocomplete/index.js.map +1 -1
  11. package/build/components/background-image-control/index.js +1 -0
  12. package/build/components/background-image-control/index.js.map +1 -1
  13. package/build/components/block-actions/index.js +1 -0
  14. package/build/components/block-actions/index.js.map +1 -1
  15. package/build/components/block-alignment-control/ui.js +1 -0
  16. package/build/components/block-alignment-control/ui.js.map +1 -1
  17. package/build/components/block-alignment-control/ui.native.js +1 -0
  18. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  19. package/build/components/block-alignment-control/use-available-alignments.js +1 -0
  20. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  21. package/build/components/block-breadcrumb/index.js +1 -0
  22. package/build/components/block-breadcrumb/index.js.map +1 -1
  23. package/build/components/block-compare/index.js +1 -0
  24. package/build/components/block-compare/index.js.map +1 -1
  25. package/build/components/block-controls/fill.js +1 -0
  26. package/build/components/block-controls/fill.js.map +1 -1
  27. package/build/components/block-edit/edit.js +1 -0
  28. package/build/components/block-edit/edit.js.map +1 -1
  29. package/build/components/block-edit/edit.native.js +1 -0
  30. package/build/components/block-edit/edit.native.js.map +1 -1
  31. package/build/components/block-heading-level-dropdown/index.js +1 -0
  32. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  33. package/build/components/block-heading-level-dropdown/index.native.js +1 -0
  34. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  35. package/build/components/block-inspector/index.js +1 -0
  36. package/build/components/block-inspector/index.js.map +1 -1
  37. package/build/components/block-list/block-invalid-warning.js +1 -0
  38. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  39. package/build/components/block-list/block-list-context.native.js +1 -0
  40. package/build/components/block-list/block-list-context.native.js.map +1 -1
  41. package/build/components/block-list/block.js +1 -0
  42. package/build/components/block-list/block.js.map +1 -1
  43. package/build/components/block-list/block.native.js +1 -0
  44. package/build/components/block-list/block.native.js.map +1 -1
  45. package/build/components/block-list/index.js +1 -0
  46. package/build/components/block-list/index.js.map +1 -1
  47. package/build/components/block-list/index.native.js +1 -0
  48. package/build/components/block-list/index.native.js.map +1 -1
  49. package/build/components/block-list/use-block-props/use-focus-first-element.js +1 -0
  50. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  51. package/build/components/block-list/use-in-between-inserter.js +1 -0
  52. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  53. package/build/components/block-lock/modal.js +1 -0
  54. package/build/components/block-lock/modal.js.map +1 -1
  55. package/build/components/block-manager/category.js +1 -0
  56. package/build/components/block-manager/category.js.map +1 -1
  57. package/build/components/block-manager/checklist.js +1 -0
  58. package/build/components/block-manager/checklist.js.map +1 -1
  59. package/build/components/block-manager/index.js +1 -0
  60. package/build/components/block-manager/index.js.map +1 -1
  61. package/build/components/block-media-update-progress/index.native.js +1 -0
  62. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  63. package/build/components/block-mover/index.native.js +1 -0
  64. package/build/components/block-mover/index.native.js.map +1 -1
  65. package/build/components/block-mover/mover-description.native.js +1 -0
  66. package/build/components/block-mover/mover-description.native.js.map +1 -1
  67. package/build/components/block-pattern-setup/index.js +1 -0
  68. package/build/components/block-pattern-setup/index.js.map +1 -1
  69. package/build/components/block-pattern-setup/use-patterns-setup.js +1 -0
  70. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  71. package/build/components/block-patterns-list/index.js +1 -0
  72. package/build/components/block-patterns-list/index.js.map +1 -1
  73. package/build/components/block-quick-navigation/index.js +1 -0
  74. package/build/components/block-quick-navigation/index.js.map +1 -1
  75. package/build/components/block-rename/rename-control.js +1 -0
  76. package/build/components/block-rename/rename-control.js.map +1 -1
  77. package/build/components/block-settings-menu/block-settings-dropdown.js +1 -0
  78. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  79. package/build/components/block-styles/index.js +1 -0
  80. package/build/components/block-styles/index.js.map +1 -1
  81. package/build/components/block-styles/index.native.js +1 -0
  82. package/build/components/block-styles/index.native.js.map +1 -1
  83. package/build/components/block-styles/menu-items.js +1 -0
  84. package/build/components/block-styles/menu-items.js.map +1 -1
  85. package/build/components/block-styles/preview.native.js +1 -0
  86. package/build/components/block-styles/preview.native.js.map +1 -1
  87. package/build/components/block-switcher/block-transformations-menu.js +1 -0
  88. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  89. package/build/components/block-switcher/block-transformations-menu.native.js +1 -0
  90. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  91. package/build/components/block-switcher/block-variation-transformations.js +1 -0
  92. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  93. package/build/components/block-switcher/index.js +1 -0
  94. package/build/components/block-switcher/index.js.map +1 -1
  95. package/build/components/block-switcher/pattern-transformations-menu.js +1 -0
  96. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  97. package/build/components/block-switcher/use-transformed-patterns.js +1 -0
  98. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  99. package/build/components/block-switcher/utils.js +1 -0
  100. package/build/components/block-switcher/utils.js.map +1 -1
  101. package/build/components/block-toolbar/block-toolbar-menu.native.js +1 -0
  102. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  103. package/build/components/block-toolbar/change-design.js +1 -0
  104. package/build/components/block-toolbar/change-design.js.map +1 -1
  105. package/build/components/block-toolbar/index.js +1 -0
  106. package/build/components/block-toolbar/index.js.map +1 -1
  107. package/build/components/block-tools/use-selected-block-tool-props.js +1 -0
  108. package/build/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  109. package/build/components/block-types-list/index.js +1 -0
  110. package/build/components/block-types-list/index.js.map +1 -1
  111. package/build/components/block-variation-picker/index.js +1 -0
  112. package/build/components/block-variation-picker/index.js.map +1 -1
  113. package/build/components/block-variation-picker/index.native.js +1 -0
  114. package/build/components/block-variation-picker/index.native.js.map +1 -1
  115. package/build/components/block-variation-transforms/index.js +1 -0
  116. package/build/components/block-variation-transforms/index.js.map +1 -1
  117. package/build/components/block-vertical-alignment-control/ui.js +1 -0
  118. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  119. package/build/components/border-radius-control/index.js +1 -0
  120. package/build/components/border-radius-control/index.js.map +1 -1
  121. package/build/components/border-radius-control/input-controls.js +1 -0
  122. package/build/components/border-radius-control/input-controls.js.map +1 -1
  123. package/build/components/border-radius-control/utils.js +1 -0
  124. package/build/components/border-radius-control/utils.js.map +1 -1
  125. package/build/components/colors/utils.js +1 -0
  126. package/build/components/colors/utils.js.map +1 -1
  127. package/build/components/colors/with-colors.js +1 -0
  128. package/build/components/colors/with-colors.js.map +1 -1
  129. package/build/components/colors-gradients/dropdown.js +1 -0
  130. package/build/components/colors-gradients/dropdown.js.map +1 -1
  131. package/build/components/colors-gradients/panel-color-gradient-settings.js +1 -0
  132. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  133. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +1 -0
  134. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  135. package/build/components/convert-to-group-buttons/toolbar.js +1 -0
  136. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  137. package/build/components/date-format-picker/index.js +1 -0
  138. package/build/components/date-format-picker/index.js.map +1 -1
  139. package/build/components/dimensions-tool/scale-tool.js +1 -0
  140. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  141. package/build/components/duotone/utils.js +1 -0
  142. package/build/components/duotone/utils.js.map +1 -1
  143. package/build/components/editor-styles/index.js +1 -0
  144. package/build/components/editor-styles/index.js.map +1 -1
  145. package/build/components/font-appearance-control/index.js +1 -0
  146. package/build/components/font-appearance-control/index.js.map +1 -1
  147. package/build/components/font-family/index.js +1 -0
  148. package/build/components/font-family/index.js.map +1 -1
  149. package/build/components/font-sizes/with-font-sizes.js +1 -0
  150. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  151. package/build/components/global-styles/border-panel.js +1 -0
  152. package/build/components/global-styles/border-panel.js.map +1 -1
  153. package/build/components/global-styles/color-panel.js +25 -8
  154. package/build/components/global-styles/color-panel.js.map +1 -1
  155. package/build/components/global-styles/color-panel.native.js +1 -0
  156. package/build/components/global-styles/color-panel.native.js.map +1 -1
  157. package/build/components/global-styles/dimensions-panel.js +1 -0
  158. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  159. package/build/components/global-styles/filters-panel.js +3 -2
  160. package/build/components/global-styles/filters-panel.js.map +1 -1
  161. package/build/components/global-styles/get-global-styles-changes.js +1 -0
  162. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  163. package/build/components/global-styles/shadow-panel-components.js +1 -0
  164. package/build/components/global-styles/shadow-panel-components.js.map +1 -1
  165. package/build/components/global-styles/typography-utils.js +1 -0
  166. package/build/components/global-styles/typography-utils.js.map +1 -1
  167. package/build/components/global-styles/use-global-styles-context.native.js +1 -0
  168. package/build/components/global-styles/use-global-styles-context.native.js.map +1 -1
  169. package/build/components/global-styles/use-global-styles-output.js +2 -1
  170. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  171. package/build/components/global-styles/utils.js +1 -0
  172. package/build/components/global-styles/utils.js.map +1 -1
  173. package/build/components/grid/grid-visualizer.js +1 -0
  174. package/build/components/grid/grid-visualizer.js.map +1 -1
  175. package/build/components/grid/use-grid-layout-sync.js +1 -0
  176. package/build/components/grid/use-grid-layout-sync.js.map +1 -1
  177. package/build/components/grid/utils.js +1 -0
  178. package/build/components/grid/utils.js.map +1 -1
  179. package/build/components/iframe/get-compatibility-styles.js +1 -0
  180. package/build/components/iframe/get-compatibility-styles.js.map +1 -1
  181. package/build/components/image-editor/aspect-ratio-dropdown.js +1 -0
  182. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  183. package/build/components/index.js +15 -8
  184. package/build/components/index.js.map +1 -1
  185. package/build/components/inner-blocks/use-block-context.js +1 -0
  186. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  187. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -0
  188. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  189. package/build/components/inserter/block-patterns-explorer/pattern-list.js +1 -0
  190. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  191. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -0
  192. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  193. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -0
  194. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  195. package/build/components/inserter/block-types-tab.js +2 -1
  196. package/build/components/inserter/block-types-tab.js.map +1 -1
  197. package/build/components/inserter/block-types-tab.native.js +1 -0
  198. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  199. package/build/components/inserter/category-tabs/index.js +1 -0
  200. package/build/components/inserter/category-tabs/index.js.map +1 -1
  201. package/build/components/inserter/hooks/use-block-type-impressions.native.js +1 -0
  202. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  203. package/build/components/inserter/hooks/use-patterns-state.js +1 -0
  204. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  205. package/build/components/inserter/index.js +1 -0
  206. package/build/components/inserter/index.js.map +1 -1
  207. package/build/components/inserter/index.native.js +1 -0
  208. package/build/components/inserter/index.native.js.map +1 -1
  209. package/build/components/inserter/media-tab/hooks.js +1 -0
  210. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  211. package/build/components/inserter/media-tab/media-list.js +1 -0
  212. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  213. package/build/components/inserter/media-tab/media-tab.js +1 -0
  214. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  215. package/build/components/inserter/menu.js +1 -0
  216. package/build/components/inserter/menu.js.map +1 -1
  217. package/build/components/inserter/mobile-tab-navigation.js +1 -0
  218. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  219. package/build/components/inserter/search-items.js +1 -0
  220. package/build/components/inserter/search-items.js.map +1 -1
  221. package/build/components/inserter/search-results.js +1 -0
  222. package/build/components/inserter/search-results.js.map +1 -1
  223. package/build/components/inserter/tabs.native.js +1 -0
  224. package/build/components/inserter/tabs.native.js.map +1 -1
  225. package/build/components/inserter/utils.native.js +1 -0
  226. package/build/components/inserter/utils.native.js.map +1 -1
  227. package/build/components/inspector-controls/block-support-tools-panel.js +1 -0
  228. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  229. package/build/components/inspector-controls/fill.js +1 -0
  230. package/build/components/inspector-controls/fill.js.map +1 -1
  231. package/build/components/inspector-controls-tabs/index.js +1 -0
  232. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  233. package/build/components/inspector-controls-tabs/position-controls-panel.js +1 -0
  234. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  235. package/build/components/inspector-popover-header/index.js +1 -0
  236. package/build/components/inspector-popover-header/index.js.map +1 -1
  237. package/build/components/justify-content-control/ui.js +1 -0
  238. package/build/components/justify-content-control/ui.js.map +1 -1
  239. package/build/components/link-control/index.js +13 -1
  240. package/build/components/link-control/index.js.map +1 -1
  241. package/build/components/link-control/search-input.js +11 -1
  242. package/build/components/link-control/search-input.js.map +1 -1
  243. package/build/components/link-control/search-item.js +12 -1
  244. package/build/components/link-control/search-item.js.map +1 -1
  245. package/build/components/link-control/search-results.js +13 -1
  246. package/build/components/link-control/search-results.js.map +1 -1
  247. package/build/components/link-control/settings.js +1 -0
  248. package/build/components/link-control/settings.js.map +1 -1
  249. package/build/components/link-control/use-internal-value.js +1 -0
  250. package/build/components/link-control/use-internal-value.js.map +1 -1
  251. package/build/components/link-control/use-search-handler.js +1 -0
  252. package/build/components/link-control/use-search-handler.js.map +1 -1
  253. package/build/components/list-view/block-select-button.js +1 -0
  254. package/build/components/list-view/block-select-button.js.map +1 -1
  255. package/build/components/list-view/block.js +1 -0
  256. package/build/components/list-view/block.js.map +1 -1
  257. package/build/components/list-view/branch.js +1 -0
  258. package/build/components/list-view/branch.js.map +1 -1
  259. package/build/components/list-view/index.js +1 -0
  260. package/build/components/list-view/index.js.map +1 -1
  261. package/build/components/list-view/use-block-selection.js +1 -0
  262. package/build/components/list-view/use-block-selection.js.map +1 -1
  263. package/build/components/list-view/use-clipboard-handler.js +1 -0
  264. package/build/components/list-view/use-clipboard-handler.js.map +1 -1
  265. package/build/components/list-view/use-list-view-block-indexes.js +1 -0
  266. package/build/components/list-view/use-list-view-block-indexes.js.map +1 -1
  267. package/build/components/list-view/use-list-view-drop-zone.js +1 -0
  268. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  269. package/build/components/list-view/utils.js +1 -0
  270. package/build/components/list-view/utils.js.map +1 -1
  271. package/build/components/media-placeholder/index.js +1 -0
  272. package/build/components/media-placeholder/index.js.map +1 -1
  273. package/build/components/media-placeholder/index.native.js +1 -0
  274. package/build/components/media-placeholder/index.native.js.map +1 -1
  275. package/build/components/media-replace-flow/index.js +1 -0
  276. package/build/components/media-replace-flow/index.js.map +1 -1
  277. package/build/components/media-upload/index.native.js +1 -0
  278. package/build/components/media-upload/index.native.js.map +1 -1
  279. package/build/components/navigable-toolbar/index.js +1 -0
  280. package/build/components/navigable-toolbar/index.js.map +1 -1
  281. package/build/components/panel-color-settings/index.js +1 -0
  282. package/build/components/panel-color-settings/index.js.map +1 -1
  283. package/build/components/provider/use-block-sync.js +1 -0
  284. package/build/components/provider/use-block-sync.js.map +1 -1
  285. package/build/components/responsive-block-control/index.js +1 -0
  286. package/build/components/responsive-block-control/index.js.map +1 -1
  287. package/build/components/rich-text/embed-handler-picker.native.js +1 -0
  288. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  289. package/build/components/rich-text/event-listeners/before-input-rules.js +1 -0
  290. package/build/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
  291. package/build/components/rich-text/event-listeners/index.js +1 -0
  292. package/build/components/rich-text/event-listeners/index.js.map +1 -1
  293. package/build/components/rich-text/event-listeners/input-rules.js +1 -0
  294. package/build/components/rich-text/event-listeners/input-rules.js.map +1 -1
  295. package/build/components/rich-text/event-listeners/paste-handler.js +1 -0
  296. package/build/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  297. package/build/components/rich-text/file-paste-handler.native.js +1 -0
  298. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  299. package/build/components/rich-text/format-edit.js +1 -0
  300. package/build/components/rich-text/format-edit.js.map +1 -1
  301. package/build/components/rich-text/format-toolbar/index.js +1 -0
  302. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  303. package/build/components/rich-text/index.js +1 -0
  304. package/build/components/rich-text/index.js.map +1 -1
  305. package/build/components/rich-text/index.native.js +1 -0
  306. package/build/components/rich-text/index.native.js.map +1 -1
  307. package/build/components/rich-text/multiline.js +1 -0
  308. package/build/components/rich-text/multiline.js.map +1 -1
  309. package/build/components/rich-text/native/format-edit.js +1 -0
  310. package/build/components/rich-text/native/format-edit.js.map +1 -1
  311. package/build/components/rich-text/native/get-format-colors.native.js +1 -0
  312. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  313. package/build/components/rich-text/native/index.native.js +1 -0
  314. package/build/components/rich-text/native/index.native.js.map +1 -1
  315. package/build/components/rich-text/native/toolbar-button-with-options.native.js +1 -0
  316. package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  317. package/build/components/rich-text/native/use-format-types.js +1 -0
  318. package/build/components/rich-text/native/use-format-types.js.map +1 -1
  319. package/build/components/rich-text/use-format-types.js +1 -0
  320. package/build/components/rich-text/use-format-types.js.map +1 -1
  321. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -0
  322. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  323. package/build/components/spacing-sizes-control/input-controls/axial.js +1 -0
  324. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  325. package/build/components/spacing-sizes-control/input-controls/separated.js +1 -0
  326. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  327. package/build/components/spacing-sizes-control/input-controls/single.js +1 -0
  328. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  329. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -0
  330. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  331. package/build/components/spacing-sizes-control/utils.js +1 -0
  332. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  333. package/build/components/tabbed-sidebar/index.js +1 -0
  334. package/build/components/tabbed-sidebar/index.js.map +1 -1
  335. package/build/components/text-alignment-control/index.js +1 -0
  336. package/build/components/text-alignment-control/index.js.map +1 -1
  337. package/build/components/text-decoration-control/index.js +1 -0
  338. package/build/components/text-decoration-control/index.js.map +1 -1
  339. package/build/components/text-transform-control/index.js +1 -0
  340. package/build/components/text-transform-control/index.js.map +1 -1
  341. package/build/components/unsupported-block-details/index.native.js +1 -0
  342. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  343. package/build/components/url-input/index.js +1 -0
  344. package/build/components/url-input/index.js.map +1 -1
  345. package/build/components/url-popover/image-url-input-ui.js +1 -0
  346. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  347. package/build/components/use-block-commands/index.js +1 -0
  348. package/build/components/use-block-commands/index.js.map +1 -1
  349. package/build/components/use-block-drop-zone/index.js +1 -0
  350. package/build/components/use-block-drop-zone/index.js.map +1 -1
  351. package/build/components/use-block-drop-zone/index.native.js +1 -0
  352. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  353. package/build/components/use-flash-editable-blocks/index.js +1 -0
  354. package/build/components/use-flash-editable-blocks/index.js.map +1 -1
  355. package/build/components/use-on-block-drop/index.js +1 -0
  356. package/build/components/use-on-block-drop/index.js.map +1 -1
  357. package/build/components/use-on-block-drop/index.native.js +1 -0
  358. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  359. package/build/components/use-paste-styles/index.js +1 -0
  360. package/build/components/use-paste-styles/index.js.map +1 -1
  361. package/build/components/warning/index.js +1 -0
  362. package/build/components/warning/index.js.map +1 -1
  363. package/build/components/writing-flow/use-arrow-nav.js +1 -0
  364. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  365. package/build/components/writing-flow/use-clipboard-handler.js +1 -0
  366. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
  367. package/build/components/writing-flow/use-input.js +1 -0
  368. package/build/components/writing-flow/use-input.js.map +1 -1
  369. package/build/components/writing-flow/use-tab-nav.js +1 -0
  370. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  371. package/build/components/writing-flow/utils.js +1 -0
  372. package/build/components/writing-flow/utils.js.map +1 -1
  373. package/build/components/writing-mode-control/index.js +1 -0
  374. package/build/components/writing-mode-control/index.js.map +1 -1
  375. package/build/hooks/align.js +1 -0
  376. package/build/hooks/align.js.map +1 -1
  377. package/build/hooks/align.native.js +1 -0
  378. package/build/hooks/align.native.js.map +1 -1
  379. package/build/hooks/block-bindings.js +1 -0
  380. package/build/hooks/block-bindings.js.map +1 -1
  381. package/build/hooks/block-hooks.js +1 -0
  382. package/build/hooks/block-hooks.js.map +1 -1
  383. package/build/hooks/block-style-variation.js +1 -0
  384. package/build/hooks/block-style-variation.js.map +1 -1
  385. package/build/hooks/border.js +1 -0
  386. package/build/hooks/border.js.map +1 -1
  387. package/build/hooks/duotone.js +1 -0
  388. package/build/hooks/duotone.js.map +1 -1
  389. package/build/hooks/index.js +1 -0
  390. package/build/hooks/index.js.map +1 -1
  391. package/build/hooks/layout.js +1 -0
  392. package/build/hooks/layout.js.map +1 -1
  393. package/build/hooks/position.js +1 -0
  394. package/build/hooks/position.js.map +1 -1
  395. package/build/hooks/style.js +2 -1
  396. package/build/hooks/style.js.map +1 -1
  397. package/build/hooks/supports.js +1 -0
  398. package/build/hooks/supports.js.map +1 -1
  399. package/build/hooks/text-align.js +1 -0
  400. package/build/hooks/text-align.js.map +1 -1
  401. package/build/hooks/typography.js +1 -0
  402. package/build/hooks/typography.js.map +1 -1
  403. package/build/hooks/use-bindings-attributes.js +1 -0
  404. package/build/hooks/use-bindings-attributes.js.map +1 -1
  405. package/build/hooks/utils.js +1 -0
  406. package/build/hooks/utils.js.map +1 -1
  407. package/build/layouts/constrained.js +1 -0
  408. package/build/layouts/constrained.js.map +1 -1
  409. package/build/layouts/flex.js +1 -0
  410. package/build/layouts/flex.js.map +1 -1
  411. package/build/layouts/flow.js +1 -0
  412. package/build/layouts/flow.js.map +1 -1
  413. package/build/layouts/index.js +1 -0
  414. package/build/layouts/index.js.map +1 -1
  415. package/build/layouts/utils.js +1 -0
  416. package/build/layouts/utils.js.map +1 -1
  417. package/build/store/actions.js +1 -0
  418. package/build/store/actions.js.map +1 -1
  419. package/build/store/get-block-settings.js +1 -0
  420. package/build/store/get-block-settings.js.map +1 -1
  421. package/build/store/private-actions.js +1 -0
  422. package/build/store/private-actions.js.map +1 -1
  423. package/build/store/private-selectors.js +1 -0
  424. package/build/store/private-selectors.js.map +1 -1
  425. package/build/store/reducer.js +1 -0
  426. package/build/store/reducer.js.map +1 -1
  427. package/build/store/selectors.js +13 -15
  428. package/build/store/selectors.js.map +1 -1
  429. package/build/store/utils.js +1 -0
  430. package/build/store/utils.js.map +1 -1
  431. package/build/utils/block-bindings.js +1 -0
  432. package/build/utils/block-bindings.js.map +1 -1
  433. package/build/utils/get-editor-region.js +1 -0
  434. package/build/utils/get-editor-region.js.map +1 -1
  435. package/build/utils/get-font-styles-and-weights.js +1 -0
  436. package/build/utils/get-font-styles-and-weights.js.map +1 -1
  437. package/build/utils/math.js +1 -0
  438. package/build/utils/math.js.map +1 -1
  439. package/build/utils/object.js +1 -0
  440. package/build/utils/object.js.map +1 -1
  441. package/build/utils/selection.js +1 -0
  442. package/build/utils/selection.js.map +1 -1
  443. package/build/utils/transform-styles/index.js +1 -0
  444. package/build/utils/transform-styles/index.js.map +1 -1
  445. package/build-module/autocompleters/block.js +1 -0
  446. package/build-module/autocompleters/block.js.map +1 -1
  447. package/build-module/autocompleters/link.js +1 -0
  448. package/build-module/autocompleters/link.js.map +1 -1
  449. package/build-module/components/alignment-control/ui.js +1 -0
  450. package/build-module/components/alignment-control/ui.js.map +1 -1
  451. package/build-module/components/autocomplete/index.js +1 -0
  452. package/build-module/components/autocomplete/index.js.map +1 -1
  453. package/build-module/components/background-image-control/index.js +1 -0
  454. package/build-module/components/background-image-control/index.js.map +1 -1
  455. package/build-module/components/block-actions/index.js +1 -0
  456. package/build-module/components/block-actions/index.js.map +1 -1
  457. package/build-module/components/block-alignment-control/ui.js +1 -0
  458. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  459. package/build-module/components/block-alignment-control/ui.native.js +1 -0
  460. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  461. package/build-module/components/block-alignment-control/use-available-alignments.js +1 -0
  462. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  463. package/build-module/components/block-breadcrumb/index.js +1 -0
  464. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  465. package/build-module/components/block-compare/index.js +1 -0
  466. package/build-module/components/block-compare/index.js.map +1 -1
  467. package/build-module/components/block-controls/fill.js +1 -0
  468. package/build-module/components/block-controls/fill.js.map +1 -1
  469. package/build-module/components/block-edit/edit.js +1 -0
  470. package/build-module/components/block-edit/edit.js.map +1 -1
  471. package/build-module/components/block-edit/edit.native.js +1 -0
  472. package/build-module/components/block-edit/edit.native.js.map +1 -1
  473. package/build-module/components/block-heading-level-dropdown/index.js +1 -0
  474. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  475. package/build-module/components/block-heading-level-dropdown/index.native.js +1 -0
  476. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  477. package/build-module/components/block-inspector/index.js +1 -0
  478. package/build-module/components/block-inspector/index.js.map +1 -1
  479. package/build-module/components/block-list/block-invalid-warning.js +1 -0
  480. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  481. package/build-module/components/block-list/block-list-context.native.js +1 -0
  482. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  483. package/build-module/components/block-list/block.js +1 -0
  484. package/build-module/components/block-list/block.js.map +1 -1
  485. package/build-module/components/block-list/block.native.js +1 -0
  486. package/build-module/components/block-list/block.native.js.map +1 -1
  487. package/build-module/components/block-list/index.js +1 -0
  488. package/build-module/components/block-list/index.js.map +1 -1
  489. package/build-module/components/block-list/index.native.js +1 -0
  490. package/build-module/components/block-list/index.native.js.map +1 -1
  491. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +1 -0
  492. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  493. package/build-module/components/block-list/use-in-between-inserter.js +1 -0
  494. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  495. package/build-module/components/block-lock/modal.js +1 -0
  496. package/build-module/components/block-lock/modal.js.map +1 -1
  497. package/build-module/components/block-manager/category.js +1 -0
  498. package/build-module/components/block-manager/category.js.map +1 -1
  499. package/build-module/components/block-manager/checklist.js +1 -0
  500. package/build-module/components/block-manager/checklist.js.map +1 -1
  501. package/build-module/components/block-manager/index.js +1 -0
  502. package/build-module/components/block-manager/index.js.map +1 -1
  503. package/build-module/components/block-media-update-progress/index.native.js +1 -0
  504. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  505. package/build-module/components/block-mover/index.native.js +1 -0
  506. package/build-module/components/block-mover/index.native.js.map +1 -1
  507. package/build-module/components/block-mover/mover-description.native.js +1 -0
  508. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  509. package/build-module/components/block-pattern-setup/index.js +1 -0
  510. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  511. package/build-module/components/block-pattern-setup/use-patterns-setup.js +1 -0
  512. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  513. package/build-module/components/block-patterns-list/index.js +1 -0
  514. package/build-module/components/block-patterns-list/index.js.map +1 -1
  515. package/build-module/components/block-quick-navigation/index.js +1 -0
  516. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  517. package/build-module/components/block-rename/rename-control.js +1 -0
  518. package/build-module/components/block-rename/rename-control.js.map +1 -1
  519. package/build-module/components/block-settings-menu/block-settings-dropdown.js +1 -0
  520. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  521. package/build-module/components/block-styles/index.js +1 -0
  522. package/build-module/components/block-styles/index.js.map +1 -1
  523. package/build-module/components/block-styles/index.native.js +1 -0
  524. package/build-module/components/block-styles/index.native.js.map +1 -1
  525. package/build-module/components/block-styles/menu-items.js +1 -0
  526. package/build-module/components/block-styles/menu-items.js.map +1 -1
  527. package/build-module/components/block-styles/preview.native.js +1 -0
  528. package/build-module/components/block-styles/preview.native.js.map +1 -1
  529. package/build-module/components/block-switcher/block-transformations-menu.js +1 -0
  530. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  531. package/build-module/components/block-switcher/block-transformations-menu.native.js +1 -0
  532. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  533. package/build-module/components/block-switcher/block-variation-transformations.js +1 -0
  534. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  535. package/build-module/components/block-switcher/index.js +1 -0
  536. package/build-module/components/block-switcher/index.js.map +1 -1
  537. package/build-module/components/block-switcher/pattern-transformations-menu.js +1 -0
  538. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  539. package/build-module/components/block-switcher/use-transformed-patterns.js +1 -0
  540. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  541. package/build-module/components/block-switcher/utils.js +1 -0
  542. package/build-module/components/block-switcher/utils.js.map +1 -1
  543. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -0
  544. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  545. package/build-module/components/block-toolbar/change-design.js +1 -0
  546. package/build-module/components/block-toolbar/change-design.js.map +1 -1
  547. package/build-module/components/block-toolbar/index.js +1 -0
  548. package/build-module/components/block-toolbar/index.js.map +1 -1
  549. package/build-module/components/block-tools/use-selected-block-tool-props.js +1 -0
  550. package/build-module/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  551. package/build-module/components/block-types-list/index.js +1 -0
  552. package/build-module/components/block-types-list/index.js.map +1 -1
  553. package/build-module/components/block-variation-picker/index.js +1 -0
  554. package/build-module/components/block-variation-picker/index.js.map +1 -1
  555. package/build-module/components/block-variation-picker/index.native.js +1 -0
  556. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  557. package/build-module/components/block-variation-transforms/index.js +1 -0
  558. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  559. package/build-module/components/block-vertical-alignment-control/ui.js +1 -0
  560. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  561. package/build-module/components/border-radius-control/index.js +1 -0
  562. package/build-module/components/border-radius-control/index.js.map +1 -1
  563. package/build-module/components/border-radius-control/input-controls.js +1 -0
  564. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  565. package/build-module/components/border-radius-control/utils.js +1 -0
  566. package/build-module/components/border-radius-control/utils.js.map +1 -1
  567. package/build-module/components/colors/utils.js +1 -0
  568. package/build-module/components/colors/utils.js.map +1 -1
  569. package/build-module/components/colors/with-colors.js +1 -0
  570. package/build-module/components/colors/with-colors.js.map +1 -1
  571. package/build-module/components/colors-gradients/dropdown.js +1 -0
  572. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  573. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +1 -0
  574. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  575. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +1 -0
  576. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  577. package/build-module/components/convert-to-group-buttons/toolbar.js +1 -0
  578. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  579. package/build-module/components/date-format-picker/index.js +1 -0
  580. package/build-module/components/date-format-picker/index.js.map +1 -1
  581. package/build-module/components/dimensions-tool/scale-tool.js +1 -0
  582. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  583. package/build-module/components/duotone/utils.js +1 -0
  584. package/build-module/components/duotone/utils.js.map +1 -1
  585. package/build-module/components/editor-styles/index.js +1 -0
  586. package/build-module/components/editor-styles/index.js.map +1 -1
  587. package/build-module/components/font-appearance-control/index.js +1 -0
  588. package/build-module/components/font-appearance-control/index.js.map +1 -1
  589. package/build-module/components/font-family/index.js +1 -0
  590. package/build-module/components/font-family/index.js.map +1 -1
  591. package/build-module/components/font-sizes/with-font-sizes.js +1 -0
  592. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  593. package/build-module/components/global-styles/border-panel.js +1 -0
  594. package/build-module/components/global-styles/border-panel.js.map +1 -1
  595. package/build-module/components/global-styles/color-panel.js +27 -10
  596. package/build-module/components/global-styles/color-panel.js.map +1 -1
  597. package/build-module/components/global-styles/color-panel.native.js +1 -0
  598. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  599. package/build-module/components/global-styles/dimensions-panel.js +1 -0
  600. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  601. package/build-module/components/global-styles/filters-panel.js +4 -3
  602. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  603. package/build-module/components/global-styles/get-global-styles-changes.js +1 -0
  604. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  605. package/build-module/components/global-styles/shadow-panel-components.js +1 -0
  606. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  607. package/build-module/components/global-styles/typography-utils.js +1 -0
  608. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  609. package/build-module/components/global-styles/use-global-styles-context.native.js +1 -0
  610. package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -1
  611. package/build-module/components/global-styles/use-global-styles-output.js +2 -1
  612. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  613. package/build-module/components/global-styles/utils.js +1 -0
  614. package/build-module/components/global-styles/utils.js.map +1 -1
  615. package/build-module/components/grid/grid-visualizer.js +1 -0
  616. package/build-module/components/grid/grid-visualizer.js.map +1 -1
  617. package/build-module/components/grid/use-grid-layout-sync.js +1 -0
  618. package/build-module/components/grid/use-grid-layout-sync.js.map +1 -1
  619. package/build-module/components/grid/utils.js +1 -0
  620. package/build-module/components/grid/utils.js.map +1 -1
  621. package/build-module/components/iframe/get-compatibility-styles.js +1 -0
  622. package/build-module/components/iframe/get-compatibility-styles.js.map +1 -1
  623. package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -0
  624. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  625. package/build-module/components/index.js +4 -4
  626. package/build-module/components/index.js.map +1 -1
  627. package/build-module/components/inner-blocks/use-block-context.js +1 -0
  628. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  629. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -0
  630. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  631. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +1 -0
  632. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  633. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -0
  634. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  635. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -0
  636. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  637. package/build-module/components/inserter/block-types-tab.js +2 -1
  638. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  639. package/build-module/components/inserter/block-types-tab.native.js +1 -0
  640. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  641. package/build-module/components/inserter/category-tabs/index.js +1 -0
  642. package/build-module/components/inserter/category-tabs/index.js.map +1 -1
  643. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +1 -0
  644. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  645. package/build-module/components/inserter/hooks/use-patterns-state.js +1 -0
  646. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  647. package/build-module/components/inserter/index.js +1 -0
  648. package/build-module/components/inserter/index.js.map +1 -1
  649. package/build-module/components/inserter/index.native.js +1 -0
  650. package/build-module/components/inserter/index.native.js.map +1 -1
  651. package/build-module/components/inserter/media-tab/hooks.js +1 -0
  652. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  653. package/build-module/components/inserter/media-tab/media-list.js +1 -0
  654. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  655. package/build-module/components/inserter/media-tab/media-tab.js +1 -0
  656. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  657. package/build-module/components/inserter/menu.js +1 -0
  658. package/build-module/components/inserter/menu.js.map +1 -1
  659. package/build-module/components/inserter/mobile-tab-navigation.js +1 -0
  660. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  661. package/build-module/components/inserter/search-items.js +1 -0
  662. package/build-module/components/inserter/search-items.js.map +1 -1
  663. package/build-module/components/inserter/search-results.js +1 -0
  664. package/build-module/components/inserter/search-results.js.map +1 -1
  665. package/build-module/components/inserter/tabs.native.js +1 -0
  666. package/build-module/components/inserter/tabs.native.js.map +1 -1
  667. package/build-module/components/inserter/utils.native.js +1 -0
  668. package/build-module/components/inserter/utils.native.js.map +1 -1
  669. package/build-module/components/inspector-controls/block-support-tools-panel.js +1 -0
  670. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  671. package/build-module/components/inspector-controls/fill.js +1 -0
  672. package/build-module/components/inspector-controls/fill.js.map +1 -1
  673. package/build-module/components/inspector-controls-tabs/index.js +1 -0
  674. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  675. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +1 -0
  676. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  677. package/build-module/components/inspector-popover-header/index.js +1 -0
  678. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  679. package/build-module/components/justify-content-control/ui.js +1 -0
  680. package/build-module/components/justify-content-control/ui.js.map +1 -1
  681. package/build-module/components/link-control/index.js +11 -0
  682. package/build-module/components/link-control/index.js.map +1 -1
  683. package/build-module/components/link-control/search-input.js +9 -0
  684. package/build-module/components/link-control/search-input.js.map +1 -1
  685. package/build-module/components/link-control/search-item.js +9 -0
  686. package/build-module/components/link-control/search-item.js.map +1 -1
  687. package/build-module/components/link-control/search-results.js +12 -1
  688. package/build-module/components/link-control/search-results.js.map +1 -1
  689. package/build-module/components/link-control/settings.js +1 -0
  690. package/build-module/components/link-control/settings.js.map +1 -1
  691. package/build-module/components/link-control/use-internal-value.js +1 -0
  692. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  693. package/build-module/components/link-control/use-search-handler.js +1 -0
  694. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  695. package/build-module/components/list-view/block-select-button.js +1 -0
  696. package/build-module/components/list-view/block-select-button.js.map +1 -1
  697. package/build-module/components/list-view/block.js +1 -0
  698. package/build-module/components/list-view/block.js.map +1 -1
  699. package/build-module/components/list-view/branch.js +1 -0
  700. package/build-module/components/list-view/branch.js.map +1 -1
  701. package/build-module/components/list-view/index.js +1 -0
  702. package/build-module/components/list-view/index.js.map +1 -1
  703. package/build-module/components/list-view/use-block-selection.js +1 -0
  704. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  705. package/build-module/components/list-view/use-clipboard-handler.js +1 -0
  706. package/build-module/components/list-view/use-clipboard-handler.js.map +1 -1
  707. package/build-module/components/list-view/use-list-view-block-indexes.js +1 -0
  708. package/build-module/components/list-view/use-list-view-block-indexes.js.map +1 -1
  709. package/build-module/components/list-view/use-list-view-drop-zone.js +1 -0
  710. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  711. package/build-module/components/list-view/utils.js +1 -0
  712. package/build-module/components/list-view/utils.js.map +1 -1
  713. package/build-module/components/media-placeholder/index.js +1 -0
  714. package/build-module/components/media-placeholder/index.js.map +1 -1
  715. package/build-module/components/media-placeholder/index.native.js +1 -0
  716. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  717. package/build-module/components/media-replace-flow/index.js +1 -0
  718. package/build-module/components/media-replace-flow/index.js.map +1 -1
  719. package/build-module/components/media-upload/index.native.js +1 -0
  720. package/build-module/components/media-upload/index.native.js.map +1 -1
  721. package/build-module/components/navigable-toolbar/index.js +1 -0
  722. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  723. package/build-module/components/panel-color-settings/index.js +1 -0
  724. package/build-module/components/panel-color-settings/index.js.map +1 -1
  725. package/build-module/components/provider/use-block-sync.js +1 -0
  726. package/build-module/components/provider/use-block-sync.js.map +1 -1
  727. package/build-module/components/responsive-block-control/index.js +1 -0
  728. package/build-module/components/responsive-block-control/index.js.map +1 -1
  729. package/build-module/components/rich-text/embed-handler-picker.native.js +1 -0
  730. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  731. package/build-module/components/rich-text/event-listeners/before-input-rules.js +1 -0
  732. package/build-module/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
  733. package/build-module/components/rich-text/event-listeners/index.js +1 -0
  734. package/build-module/components/rich-text/event-listeners/index.js.map +1 -1
  735. package/build-module/components/rich-text/event-listeners/input-rules.js +1 -0
  736. package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
  737. package/build-module/components/rich-text/event-listeners/paste-handler.js +1 -0
  738. package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  739. package/build-module/components/rich-text/file-paste-handler.native.js +1 -0
  740. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  741. package/build-module/components/rich-text/format-edit.js +1 -0
  742. package/build-module/components/rich-text/format-edit.js.map +1 -1
  743. package/build-module/components/rich-text/format-toolbar/index.js +1 -0
  744. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  745. package/build-module/components/rich-text/index.js +1 -0
  746. package/build-module/components/rich-text/index.js.map +1 -1
  747. package/build-module/components/rich-text/index.native.js +1 -0
  748. package/build-module/components/rich-text/index.native.js.map +1 -1
  749. package/build-module/components/rich-text/multiline.js +1 -0
  750. package/build-module/components/rich-text/multiline.js.map +1 -1
  751. package/build-module/components/rich-text/native/format-edit.js +1 -0
  752. package/build-module/components/rich-text/native/format-edit.js.map +1 -1
  753. package/build-module/components/rich-text/native/get-format-colors.native.js +1 -0
  754. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  755. package/build-module/components/rich-text/native/index.native.js +1 -0
  756. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  757. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +1 -0
  758. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  759. package/build-module/components/rich-text/native/use-format-types.js +1 -0
  760. package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
  761. package/build-module/components/rich-text/use-format-types.js +1 -0
  762. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  763. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -0
  764. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  765. package/build-module/components/spacing-sizes-control/input-controls/axial.js +1 -0
  766. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  767. package/build-module/components/spacing-sizes-control/input-controls/separated.js +1 -0
  768. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  769. package/build-module/components/spacing-sizes-control/input-controls/single.js +1 -0
  770. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  771. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -0
  772. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  773. package/build-module/components/spacing-sizes-control/utils.js +1 -0
  774. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  775. package/build-module/components/tabbed-sidebar/index.js +1 -0
  776. package/build-module/components/tabbed-sidebar/index.js.map +1 -1
  777. package/build-module/components/text-alignment-control/index.js +1 -0
  778. package/build-module/components/text-alignment-control/index.js.map +1 -1
  779. package/build-module/components/text-decoration-control/index.js +1 -0
  780. package/build-module/components/text-decoration-control/index.js.map +1 -1
  781. package/build-module/components/text-transform-control/index.js +1 -0
  782. package/build-module/components/text-transform-control/index.js.map +1 -1
  783. package/build-module/components/unsupported-block-details/index.native.js +1 -0
  784. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  785. package/build-module/components/url-input/index.js +1 -0
  786. package/build-module/components/url-input/index.js.map +1 -1
  787. package/build-module/components/url-popover/image-url-input-ui.js +1 -0
  788. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  789. package/build-module/components/use-block-commands/index.js +1 -0
  790. package/build-module/components/use-block-commands/index.js.map +1 -1
  791. package/build-module/components/use-block-drop-zone/index.js +1 -0
  792. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  793. package/build-module/components/use-block-drop-zone/index.native.js +1 -0
  794. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  795. package/build-module/components/use-flash-editable-blocks/index.js +1 -0
  796. package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
  797. package/build-module/components/use-on-block-drop/index.js +1 -0
  798. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  799. package/build-module/components/use-on-block-drop/index.native.js +1 -0
  800. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  801. package/build-module/components/use-paste-styles/index.js +1 -0
  802. package/build-module/components/use-paste-styles/index.js.map +1 -1
  803. package/build-module/components/warning/index.js +1 -0
  804. package/build-module/components/warning/index.js.map +1 -1
  805. package/build-module/components/writing-flow/use-arrow-nav.js +1 -0
  806. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  807. package/build-module/components/writing-flow/use-clipboard-handler.js +1 -0
  808. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
  809. package/build-module/components/writing-flow/use-input.js +1 -0
  810. package/build-module/components/writing-flow/use-input.js.map +1 -1
  811. package/build-module/components/writing-flow/use-tab-nav.js +1 -0
  812. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  813. package/build-module/components/writing-flow/utils.js +1 -0
  814. package/build-module/components/writing-flow/utils.js.map +1 -1
  815. package/build-module/components/writing-mode-control/index.js +1 -0
  816. package/build-module/components/writing-mode-control/index.js.map +1 -1
  817. package/build-module/hooks/align.js +1 -0
  818. package/build-module/hooks/align.js.map +1 -1
  819. package/build-module/hooks/align.native.js +1 -0
  820. package/build-module/hooks/align.native.js.map +1 -1
  821. package/build-module/hooks/block-bindings.js +1 -0
  822. package/build-module/hooks/block-bindings.js.map +1 -1
  823. package/build-module/hooks/block-hooks.js +1 -0
  824. package/build-module/hooks/block-hooks.js.map +1 -1
  825. package/build-module/hooks/block-style-variation.js +1 -0
  826. package/build-module/hooks/block-style-variation.js.map +1 -1
  827. package/build-module/hooks/border.js +1 -0
  828. package/build-module/hooks/border.js.map +1 -1
  829. package/build-module/hooks/duotone.js +1 -0
  830. package/build-module/hooks/duotone.js.map +1 -1
  831. package/build-module/hooks/index.js +1 -0
  832. package/build-module/hooks/index.js.map +1 -1
  833. package/build-module/hooks/layout.js +1 -0
  834. package/build-module/hooks/layout.js.map +1 -1
  835. package/build-module/hooks/position.js +1 -0
  836. package/build-module/hooks/position.js.map +1 -1
  837. package/build-module/hooks/style.js +2 -1
  838. package/build-module/hooks/style.js.map +1 -1
  839. package/build-module/hooks/supports.js +1 -0
  840. package/build-module/hooks/supports.js.map +1 -1
  841. package/build-module/hooks/text-align.js +1 -0
  842. package/build-module/hooks/text-align.js.map +1 -1
  843. package/build-module/hooks/typography.js +1 -0
  844. package/build-module/hooks/typography.js.map +1 -1
  845. package/build-module/hooks/use-bindings-attributes.js +1 -0
  846. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  847. package/build-module/hooks/utils.js +1 -0
  848. package/build-module/hooks/utils.js.map +1 -1
  849. package/build-module/layouts/constrained.js +1 -0
  850. package/build-module/layouts/constrained.js.map +1 -1
  851. package/build-module/layouts/flex.js +1 -0
  852. package/build-module/layouts/flex.js.map +1 -1
  853. package/build-module/layouts/flow.js +1 -0
  854. package/build-module/layouts/flow.js.map +1 -1
  855. package/build-module/layouts/index.js +1 -0
  856. package/build-module/layouts/index.js.map +1 -1
  857. package/build-module/layouts/utils.js +1 -0
  858. package/build-module/layouts/utils.js.map +1 -1
  859. package/build-module/store/actions.js +1 -0
  860. package/build-module/store/actions.js.map +1 -1
  861. package/build-module/store/get-block-settings.js +1 -0
  862. package/build-module/store/get-block-settings.js.map +1 -1
  863. package/build-module/store/private-actions.js +1 -0
  864. package/build-module/store/private-actions.js.map +1 -1
  865. package/build-module/store/private-selectors.js +1 -0
  866. package/build-module/store/private-selectors.js.map +1 -1
  867. package/build-module/store/reducer.js +1 -0
  868. package/build-module/store/reducer.js.map +1 -1
  869. package/build-module/store/selectors.js +13 -15
  870. package/build-module/store/selectors.js.map +1 -1
  871. package/build-module/store/utils.js +1 -0
  872. package/build-module/store/utils.js.map +1 -1
  873. package/build-module/utils/block-bindings.js +1 -0
  874. package/build-module/utils/block-bindings.js.map +1 -1
  875. package/build-module/utils/get-editor-region.js +1 -0
  876. package/build-module/utils/get-editor-region.js.map +1 -1
  877. package/build-module/utils/get-font-styles-and-weights.js +1 -0
  878. package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
  879. package/build-module/utils/math.js +1 -0
  880. package/build-module/utils/math.js.map +1 -1
  881. package/build-module/utils/object.js +1 -0
  882. package/build-module/utils/object.js.map +1 -1
  883. package/build-module/utils/selection.js +1 -0
  884. package/build-module/utils/selection.js.map +1 -1
  885. package/build-module/utils/transform-styles/index.js +1 -0
  886. package/build-module/utils/transform-styles/index.js.map +1 -1
  887. package/build-style/style-rtl.css +22 -0
  888. package/build-style/style.css +22 -0
  889. package/package.json +32 -32
  890. package/src/components/block-heading-level-dropdown/stories/index.story.js +61 -0
  891. package/src/components/colors-gradients/style.scss +21 -0
  892. package/src/components/global-styles/color-panel.js +26 -7
  893. package/src/components/global-styles/filters-panel.js +3 -6
  894. package/src/components/global-styles/use-global-styles-output.js +1 -1
  895. package/src/components/index.js +7 -4
  896. package/src/components/inserter/block-types-tab.js +1 -1
  897. package/src/components/inserter/menu.js +2 -0
  898. package/src/components/link-control/index.js +10 -0
  899. package/src/components/link-control/search-input.js +9 -0
  900. package/src/components/link-control/search-item.js +9 -0
  901. package/src/components/link-control/search-results.js +12 -1
  902. package/src/components/writing-mode-control/stories/index.story.js +56 -0
  903. package/src/hooks/style.js +1 -1
  904. package/src/hooks/test/font-size.js +15 -12
  905. package/src/store/selectors.js +26 -24
  906. package/src/store/test/selectors.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_i18n","_components","_element","_data","_compose","_blocks","_icons","_reactNativeBridge","_style","_interopRequireDefault","_menu","_insertionPoint","_store","_jsxRuntime","VOICE_OVER_ANNOUNCEMENT_DELAY","defaultRenderToggle","onToggle","disabled","iconStyle","buttonStyle","onLongPress","jsx","ToolbarButton","title","_x","icon","Icon","plus","style","onClick","extraProps","hint","__","testID","hitSlop","top","bottom","left","right","isDisabled","customContainerStyles","fixedRatio","Inserter","Component","announcementTimeout","constructor","arguments","bind","renderInserterToggle","renderContent","componentWillUnmount","clearTimeout","getInsertionOptions","addBeforeOption","value","label","plusCircle","replaceCurrentOption","plusCircleFilled","addAfterOption","addToBeginningOption","insertBefore","addToEndOption","insertAfter","isAnyBlockSelected","isSelectedBlockReplaceable","props","getInsertionIndex","insertionType","insertionIndexDefault","insertionIndexStart","insertionIndexBefore","insertionIndexAfter","insertionIndexEnd","shouldReplaceBlock","isOpen","blockTypeImpressions","updateSettings","impressionsRemain","Object","values","some","count","decrementedImpressions","entries","reduce","acc","blockName","Math","max","impressions","setBlockTypeImpressions","onInserterToggledAnnouncement","AccessibilityInfo","isScreenReaderEnabled","then","isEnabled","isIOS","Platform","OS","announcement","setTimeout","announceForAccessibility","renderToggle","getStylesFromColorScheme","showSeparator","default","styles","onPress","setState","destinationRootClientId","insertionIndex","picker","presentPicker","onPickerSelect","jsxs","Fragment","children","Picker","ref","instance","options","onChange","hideCancelButton","onClose","clientId","isAppender","state","onSelect","onDismiss","rootClientId","render","Dropdown","headerTitle","exports","_default","compose","withDispatch","dispatch","blockEditorStore","withSelect","select","getBlockRootClientId","getBlockSelectionEnd","getBlockOrder","getBlockIndex","getBlock","getSettings","getBlockEditorSettings","end","selectedBlockIndex","endOfRootIndex","length","isSelectedUnmodifiedDefaultBlock","isUnmodifiedDefaultBlock","undefined","getDefaultInsertionIndex","__experimentalShouldInsertAtTheTop","shouldInsertAtTheTop","withPreferredColorScheme"],"sources":["@wordpress/block-editor/src/components/inserter/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { AccessibilityInfo, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Dropdown, ToolbarButton, Picker } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { isUnmodifiedDefaultBlock } from '@wordpress/blocks';\nimport {\n\tIcon,\n\tplus,\n\tplusCircle,\n\tplusCircleFilled,\n\tinsertAfter,\n\tinsertBefore,\n} from '@wordpress/icons';\nimport { setBlockTypeImpressions } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport InserterMenu from './menu';\nimport BlockInsertionPoint from '../block-list/insertion-point';\nimport { store as blockEditorStore } from '../../store';\n\nconst VOICE_OVER_ANNOUNCEMENT_DELAY = 1000;\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\ticonStyle,\n\tbuttonStyle,\n\tonLongPress,\n} ) => {\n\treturn (\n\t\t<ToolbarButton\n\t\t\ttitle={ _x(\n\t\t\t\t'Add block',\n\t\t\t\t'Generic label for block inserter button'\n\t\t\t) }\n\t\t\ticon={ <Icon icon={ plus } style={ iconStyle } /> }\n\t\t\tonClick={ onToggle }\n\t\t\textraProps={ {\n\t\t\t\thint: __( 'Double tap to add a block' ),\n\t\t\t\t// testID is present to disambiguate this element for native UI tests. It's not\n\t\t\t\t// usually required for components. See: https://github.com/WordPress/gutenberg/pull/18832#issuecomment-561411389.\n\t\t\t\ttestID: 'add-block-button',\n\t\t\t\tonLongPress,\n\t\t\t\thitSlop: { top: 10, bottom: 10, left: 10, right: 10 },\n\t\t\t} }\n\t\t\tisDisabled={ disabled }\n\t\t\tcustomContainerStyles={ buttonStyle }\n\t\t\tfixedRatio={ false }\n\t\t/>\n\t);\n};\n\nexport class Inserter extends Component {\n\tannouncementTimeout;\n\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderInserterToggle = this.renderInserterToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.announcementTimeout );\n\t}\n\n\tgetInsertionOptions() {\n\t\tconst addBeforeOption = {\n\t\t\tvalue: 'before',\n\t\t\tlabel: __( 'Add Block Before' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst replaceCurrentOption = {\n\t\t\tvalue: 'replace',\n\t\t\tlabel: __( 'Replace Current Block' ),\n\t\t\ticon: plusCircleFilled,\n\t\t};\n\n\t\tconst addAfterOption = {\n\t\t\tvalue: 'after',\n\t\t\tlabel: __( 'Add Block After' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst addToBeginningOption = {\n\t\t\tvalue: 'start',\n\t\t\tlabel: __( 'Add To Beginning' ),\n\t\t\ticon: insertBefore,\n\t\t};\n\n\t\tconst addToEndOption = {\n\t\t\tvalue: 'end',\n\t\t\tlabel: __( 'Add To End' ),\n\t\t\ticon: insertAfter,\n\t\t};\n\n\t\tconst { isAnyBlockSelected, isSelectedBlockReplaceable } = this.props;\n\t\tif ( isAnyBlockSelected ) {\n\t\t\tif ( isSelectedBlockReplaceable ) {\n\t\t\t\treturn [\n\t\t\t\t\taddToBeginningOption,\n\t\t\t\t\taddBeforeOption,\n\t\t\t\t\treplaceCurrentOption,\n\t\t\t\t\taddAfterOption,\n\t\t\t\t\taddToEndOption,\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn [\n\t\t\t\taddToBeginningOption,\n\t\t\t\taddBeforeOption,\n\t\t\t\taddAfterOption,\n\t\t\t\taddToEndOption,\n\t\t\t];\n\t\t}\n\t\treturn [ addToBeginningOption, addToEndOption ];\n\t}\n\n\tgetInsertionIndex( insertionType ) {\n\t\tconst {\n\t\t\tinsertionIndexDefault,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexEnd,\n\t\t} = this.props;\n\t\tif ( insertionType === 'start' ) {\n\t\t\treturn insertionIndexStart;\n\t\t}\n\t\tif ( insertionType === 'before' || insertionType === 'replace' ) {\n\t\t\treturn insertionIndexBefore;\n\t\t}\n\t\tif ( insertionType === 'after' ) {\n\t\t\treturn insertionIndexAfter;\n\t\t}\n\t\tif ( insertionType === 'end' ) {\n\t\t\treturn insertionIndexEnd;\n\t\t}\n\t\treturn insertionIndexDefault;\n\t}\n\n\tshouldReplaceBlock( insertionType ) {\n\t\tconst { isSelectedBlockReplaceable } = this.props;\n\t\tif ( insertionType === 'replace' ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( insertionType === 'default' && isSelectedBlockReplaceable ) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { blockTypeImpressions, onToggle, updateSettings } = this.props;\n\n\t\tif ( ! isOpen ) {\n\t\t\tconst impressionsRemain = Object.values(\n\t\t\t\tblockTypeImpressions\n\t\t\t).some( ( count ) => count > 0 );\n\n\t\t\tif ( impressionsRemain ) {\n\t\t\t\tconst decrementedImpressions = Object.entries(\n\t\t\t\t\tblockTypeImpressions\n\t\t\t\t).reduce(\n\t\t\t\t\t( acc, [ blockName, count ] ) => ( {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ blockName ]: Math.max( count - 1, 0 ),\n\t\t\t\t\t} ),\n\t\t\t\t\t{}\n\t\t\t\t);\n\n\t\t\t\t// Persist block type impression to JavaScript store.\n\t\t\t\tupdateSettings( {\n\t\t\t\t\timpressions: decrementedImpressions,\n\t\t\t\t} );\n\n\t\t\t\t// Persist block type impression count to native app store.\n\t\t\t\tsetBlockTypeImpressions( decrementedImpressions );\n\t\t\t}\n\t\t}\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t\tthis.onInserterToggledAnnouncement( isOpen );\n\t}\n\n\tonInserterToggledAnnouncement( isOpen ) {\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( isEnabled ) => {\n\t\t\tif ( isEnabled ) {\n\t\t\t\tconst isIOS = Platform.OS === 'ios';\n\t\t\t\tconst announcement = isOpen\n\t\t\t\t\t? __( 'Scrollable block menu opened. Select a block.' )\n\t\t\t\t\t: __( 'Scrollable block menu closed.' );\n\t\t\t\tthis.announcementTimeout = setTimeout(\n\t\t\t\t\t() =>\n\t\t\t\t\t\tAccessibilityInfo.announceForAccessibility(\n\t\t\t\t\t\t\tannouncement\n\t\t\t\t\t\t),\n\t\t\t\t\tisIOS ? VOICE_OVER_ANNOUNCEMENT_DELAY : 0\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderInserterToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tshowSeparator,\n\t\t} = this.props;\n\t\tif ( showSeparator && isOpen ) {\n\t\t\treturn <BlockInsertionPoint />;\n\t\t}\n\n\t\tconst buttonStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button--dark' ]\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon--dark' ]\n\t\t);\n\n\t\tconst onPress = () => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock: this.shouldReplaceBlock( 'default' ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( 'default' ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\tconst onLongPress = () => {\n\t\t\tif ( this.picker ) {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t};\n\n\t\tconst onPickerSelect = ( insertionType ) => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock:\n\t\t\t\t\t\tthis.shouldReplaceBlock( insertionType ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( insertionType ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ renderToggle( {\n\t\t\t\t\tonToggle: onPress,\n\t\t\t\t\tisOpen,\n\t\t\t\t\tdisabled,\n\t\t\t\t\ticonStyle,\n\t\t\t\t\tbuttonStyle,\n\t\t\t\t\tonLongPress,\n\t\t\t\t} ) }\n\t\t\t\t<Picker\n\t\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\t\toptions={ this.getInsertionOptions() }\n\t\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose, isOpen } ) {\n\t\tconst { clientId, isAppender } = this.props;\n\t\tconst { destinationRootClientId, shouldReplaceBlock, insertionIndex } =\n\t\t\tthis.state;\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tisOpen={ isOpen }\n\t\t\t\tonSelect={ onClose }\n\t\t\t\tonDismiss={ onClose }\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshouldReplaceBlock={ shouldReplaceBlock }\n\t\t\t\tinsertionIndex={ insertionIndex }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderInserterToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { updateSettings } = dispatch( blockEditorStore );\n\t\treturn { updateSettings };\n\t} ),\n\twithSelect( ( select, { clientId, isAppender, rootClientId } ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockIndex,\n\t\t\tgetBlock,\n\t\t\tgetSettings: getBlockEditorSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst end = getBlockSelectionEnd();\n\t\t// `end` argument (id) can refer to the component which is removed\n\t\t// due to pressing `undo` button, that's why we need to check\n\t\t// if `getBlock( end) is valid, otherwise `null` is passed\n\t\tconst isAnyBlockSelected = ! isAppender && end && getBlock( end );\n\t\tconst destinationRootClientId = isAnyBlockSelected\n\t\t\t? getBlockRootClientId( end )\n\t\t\t: rootClientId;\n\t\tconst selectedBlockIndex = getBlockIndex( end );\n\t\tconst endOfRootIndex = getBlockOrder( rootClientId ).length;\n\t\tconst isSelectedUnmodifiedDefaultBlock = isAnyBlockSelected\n\t\t\t? isUnmodifiedDefaultBlock( getBlock( end ) )\n\t\t\t: undefined;\n\n\t\tfunction getDefaultInsertionIndex() {\n\t\t\tconst { __experimentalShouldInsertAtTheTop: shouldInsertAtTheTop } =\n\t\t\t\tgetBlockEditorSettings();\n\n\t\t\t// If post title is selected insert as first block.\n\t\t\tif ( shouldInsertAtTheTop ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\tif ( clientId ) {\n\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t}\n\n\t\t\t// If there is a selected block,\n\t\t\tif ( isAnyBlockSelected ) {\n\t\t\t\t// And the last selected block is unmodified (empty), it will be replaced.\n\t\t\t\tif ( isSelectedUnmodifiedDefaultBlock ) {\n\t\t\t\t\treturn selectedBlockIndex;\n\t\t\t\t}\n\n\t\t\t\t// We insert after the selected block.\n\t\t\t\treturn selectedBlockIndex + 1;\n\t\t\t}\n\n\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\treturn endOfRootIndex;\n\t\t}\n\n\t\tconst insertionIndexStart = 0;\n\n\t\tconst insertionIndexBefore = isAnyBlockSelected\n\t\t\t? selectedBlockIndex\n\t\t\t: insertionIndexStart;\n\n\t\tconst insertionIndexAfter = isAnyBlockSelected\n\t\t\t? selectedBlockIndex + 1\n\t\t\t: endOfRootIndex;\n\n\t\tconst insertionIndexEnd = endOfRootIndex;\n\n\t\treturn {\n\t\t\tblockTypeImpressions: getBlockEditorSettings().impressions,\n\t\t\tdestinationRootClientId,\n\t\t\tinsertionIndexDefault: getDefaultInsertionIndex(),\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexEnd,\n\t\t\tisAnyBlockSelected: !! isAnyBlockSelected,\n\t\t\tisSelectedBlockReplaceable: isSelectedUnmodifiedDefaultBlock,\n\t\t};\n\t} ),\n\n\twithPreferredColorScheme,\n] )( Inserter );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_i18n","_components","_element","_data","_compose","_blocks","_icons","_reactNativeBridge","_style","_interopRequireDefault","_menu","_insertionPoint","_store","_jsxRuntime","VOICE_OVER_ANNOUNCEMENT_DELAY","defaultRenderToggle","onToggle","disabled","iconStyle","buttonStyle","onLongPress","jsx","ToolbarButton","title","_x","icon","Icon","plus","style","onClick","extraProps","hint","__","testID","hitSlop","top","bottom","left","right","isDisabled","customContainerStyles","fixedRatio","Inserter","Component","announcementTimeout","constructor","arguments","bind","renderInserterToggle","renderContent","componentWillUnmount","clearTimeout","getInsertionOptions","addBeforeOption","value","label","plusCircle","replaceCurrentOption","plusCircleFilled","addAfterOption","addToBeginningOption","insertBefore","addToEndOption","insertAfter","isAnyBlockSelected","isSelectedBlockReplaceable","props","getInsertionIndex","insertionType","insertionIndexDefault","insertionIndexStart","insertionIndexBefore","insertionIndexAfter","insertionIndexEnd","shouldReplaceBlock","isOpen","blockTypeImpressions","updateSettings","impressionsRemain","Object","values","some","count","decrementedImpressions","entries","reduce","acc","blockName","Math","max","impressions","setBlockTypeImpressions","onInserterToggledAnnouncement","AccessibilityInfo","isScreenReaderEnabled","then","isEnabled","isIOS","Platform","OS","announcement","setTimeout","announceForAccessibility","renderToggle","getStylesFromColorScheme","showSeparator","default","styles","onPress","setState","destinationRootClientId","insertionIndex","picker","presentPicker","onPickerSelect","jsxs","Fragment","children","Picker","ref","instance","options","onChange","hideCancelButton","onClose","clientId","isAppender","state","onSelect","onDismiss","rootClientId","render","Dropdown","headerTitle","exports","_default","compose","withDispatch","dispatch","blockEditorStore","withSelect","select","getBlockRootClientId","getBlockSelectionEnd","getBlockOrder","getBlockIndex","getBlock","getSettings","getBlockEditorSettings","end","selectedBlockIndex","endOfRootIndex","length","isSelectedUnmodifiedDefaultBlock","isUnmodifiedDefaultBlock","undefined","getDefaultInsertionIndex","__experimentalShouldInsertAtTheTop","shouldInsertAtTheTop","withPreferredColorScheme"],"sources":["@wordpress/block-editor/src/components/inserter/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { AccessibilityInfo, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Dropdown, ToolbarButton, Picker } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { isUnmodifiedDefaultBlock } from '@wordpress/blocks';\nimport {\n\tIcon,\n\tplus,\n\tplusCircle,\n\tplusCircleFilled,\n\tinsertAfter,\n\tinsertBefore,\n} from '@wordpress/icons';\nimport { setBlockTypeImpressions } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport InserterMenu from './menu';\nimport BlockInsertionPoint from '../block-list/insertion-point';\nimport { store as blockEditorStore } from '../../store';\n\nconst VOICE_OVER_ANNOUNCEMENT_DELAY = 1000;\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\ticonStyle,\n\tbuttonStyle,\n\tonLongPress,\n} ) => {\n\treturn (\n\t\t<ToolbarButton\n\t\t\ttitle={ _x(\n\t\t\t\t'Add block',\n\t\t\t\t'Generic label for block inserter button'\n\t\t\t) }\n\t\t\ticon={ <Icon icon={ plus } style={ iconStyle } /> }\n\t\t\tonClick={ onToggle }\n\t\t\textraProps={ {\n\t\t\t\thint: __( 'Double tap to add a block' ),\n\t\t\t\t// testID is present to disambiguate this element for native UI tests. It's not\n\t\t\t\t// usually required for components. See: https://github.com/WordPress/gutenberg/pull/18832#issuecomment-561411389.\n\t\t\t\ttestID: 'add-block-button',\n\t\t\t\tonLongPress,\n\t\t\t\thitSlop: { top: 10, bottom: 10, left: 10, right: 10 },\n\t\t\t} }\n\t\t\tisDisabled={ disabled }\n\t\t\tcustomContainerStyles={ buttonStyle }\n\t\t\tfixedRatio={ false }\n\t\t/>\n\t);\n};\n\nexport class Inserter extends Component {\n\tannouncementTimeout;\n\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderInserterToggle = this.renderInserterToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.announcementTimeout );\n\t}\n\n\tgetInsertionOptions() {\n\t\tconst addBeforeOption = {\n\t\t\tvalue: 'before',\n\t\t\tlabel: __( 'Add Block Before' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst replaceCurrentOption = {\n\t\t\tvalue: 'replace',\n\t\t\tlabel: __( 'Replace Current Block' ),\n\t\t\ticon: plusCircleFilled,\n\t\t};\n\n\t\tconst addAfterOption = {\n\t\t\tvalue: 'after',\n\t\t\tlabel: __( 'Add Block After' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst addToBeginningOption = {\n\t\t\tvalue: 'start',\n\t\t\tlabel: __( 'Add To Beginning' ),\n\t\t\ticon: insertBefore,\n\t\t};\n\n\t\tconst addToEndOption = {\n\t\t\tvalue: 'end',\n\t\t\tlabel: __( 'Add To End' ),\n\t\t\ticon: insertAfter,\n\t\t};\n\n\t\tconst { isAnyBlockSelected, isSelectedBlockReplaceable } = this.props;\n\t\tif ( isAnyBlockSelected ) {\n\t\t\tif ( isSelectedBlockReplaceable ) {\n\t\t\t\treturn [\n\t\t\t\t\taddToBeginningOption,\n\t\t\t\t\taddBeforeOption,\n\t\t\t\t\treplaceCurrentOption,\n\t\t\t\t\taddAfterOption,\n\t\t\t\t\taddToEndOption,\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn [\n\t\t\t\taddToBeginningOption,\n\t\t\t\taddBeforeOption,\n\t\t\t\taddAfterOption,\n\t\t\t\taddToEndOption,\n\t\t\t];\n\t\t}\n\t\treturn [ addToBeginningOption, addToEndOption ];\n\t}\n\n\tgetInsertionIndex( insertionType ) {\n\t\tconst {\n\t\t\tinsertionIndexDefault,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexEnd,\n\t\t} = this.props;\n\t\tif ( insertionType === 'start' ) {\n\t\t\treturn insertionIndexStart;\n\t\t}\n\t\tif ( insertionType === 'before' || insertionType === 'replace' ) {\n\t\t\treturn insertionIndexBefore;\n\t\t}\n\t\tif ( insertionType === 'after' ) {\n\t\t\treturn insertionIndexAfter;\n\t\t}\n\t\tif ( insertionType === 'end' ) {\n\t\t\treturn insertionIndexEnd;\n\t\t}\n\t\treturn insertionIndexDefault;\n\t}\n\n\tshouldReplaceBlock( insertionType ) {\n\t\tconst { isSelectedBlockReplaceable } = this.props;\n\t\tif ( insertionType === 'replace' ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( insertionType === 'default' && isSelectedBlockReplaceable ) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { blockTypeImpressions, onToggle, updateSettings } = this.props;\n\n\t\tif ( ! isOpen ) {\n\t\t\tconst impressionsRemain = Object.values(\n\t\t\t\tblockTypeImpressions\n\t\t\t).some( ( count ) => count > 0 );\n\n\t\t\tif ( impressionsRemain ) {\n\t\t\t\tconst decrementedImpressions = Object.entries(\n\t\t\t\t\tblockTypeImpressions\n\t\t\t\t).reduce(\n\t\t\t\t\t( acc, [ blockName, count ] ) => ( {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ blockName ]: Math.max( count - 1, 0 ),\n\t\t\t\t\t} ),\n\t\t\t\t\t{}\n\t\t\t\t);\n\n\t\t\t\t// Persist block type impression to JavaScript store.\n\t\t\t\tupdateSettings( {\n\t\t\t\t\timpressions: decrementedImpressions,\n\t\t\t\t} );\n\n\t\t\t\t// Persist block type impression count to native app store.\n\t\t\t\tsetBlockTypeImpressions( decrementedImpressions );\n\t\t\t}\n\t\t}\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t\tthis.onInserterToggledAnnouncement( isOpen );\n\t}\n\n\tonInserterToggledAnnouncement( isOpen ) {\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( isEnabled ) => {\n\t\t\tif ( isEnabled ) {\n\t\t\t\tconst isIOS = Platform.OS === 'ios';\n\t\t\t\tconst announcement = isOpen\n\t\t\t\t\t? __( 'Scrollable block menu opened. Select a block.' )\n\t\t\t\t\t: __( 'Scrollable block menu closed.' );\n\t\t\t\tthis.announcementTimeout = setTimeout(\n\t\t\t\t\t() =>\n\t\t\t\t\t\tAccessibilityInfo.announceForAccessibility(\n\t\t\t\t\t\t\tannouncement\n\t\t\t\t\t\t),\n\t\t\t\t\tisIOS ? VOICE_OVER_ANNOUNCEMENT_DELAY : 0\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderInserterToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tshowSeparator,\n\t\t} = this.props;\n\t\tif ( showSeparator && isOpen ) {\n\t\t\treturn <BlockInsertionPoint />;\n\t\t}\n\n\t\tconst buttonStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button--dark' ]\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon--dark' ]\n\t\t);\n\n\t\tconst onPress = () => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock: this.shouldReplaceBlock( 'default' ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( 'default' ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\tconst onLongPress = () => {\n\t\t\tif ( this.picker ) {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t};\n\n\t\tconst onPickerSelect = ( insertionType ) => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock:\n\t\t\t\t\t\tthis.shouldReplaceBlock( insertionType ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( insertionType ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ renderToggle( {\n\t\t\t\t\tonToggle: onPress,\n\t\t\t\t\tisOpen,\n\t\t\t\t\tdisabled,\n\t\t\t\t\ticonStyle,\n\t\t\t\t\tbuttonStyle,\n\t\t\t\t\tonLongPress,\n\t\t\t\t} ) }\n\t\t\t\t<Picker\n\t\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\t\toptions={ this.getInsertionOptions() }\n\t\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose, isOpen } ) {\n\t\tconst { clientId, isAppender } = this.props;\n\t\tconst { destinationRootClientId, shouldReplaceBlock, insertionIndex } =\n\t\t\tthis.state;\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tisOpen={ isOpen }\n\t\t\t\tonSelect={ onClose }\n\t\t\t\tonDismiss={ onClose }\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshouldReplaceBlock={ shouldReplaceBlock }\n\t\t\t\tinsertionIndex={ insertionIndex }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderInserterToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { updateSettings } = dispatch( blockEditorStore );\n\t\treturn { updateSettings };\n\t} ),\n\twithSelect( ( select, { clientId, isAppender, rootClientId } ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockIndex,\n\t\t\tgetBlock,\n\t\t\tgetSettings: getBlockEditorSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst end = getBlockSelectionEnd();\n\t\t// `end` argument (id) can refer to the component which is removed\n\t\t// due to pressing `undo` button, that's why we need to check\n\t\t// if `getBlock( end) is valid, otherwise `null` is passed\n\t\tconst isAnyBlockSelected = ! isAppender && end && getBlock( end );\n\t\tconst destinationRootClientId = isAnyBlockSelected\n\t\t\t? getBlockRootClientId( end )\n\t\t\t: rootClientId;\n\t\tconst selectedBlockIndex = getBlockIndex( end );\n\t\tconst endOfRootIndex = getBlockOrder( rootClientId ).length;\n\t\tconst isSelectedUnmodifiedDefaultBlock = isAnyBlockSelected\n\t\t\t? isUnmodifiedDefaultBlock( getBlock( end ) )\n\t\t\t: undefined;\n\n\t\tfunction getDefaultInsertionIndex() {\n\t\t\tconst { __experimentalShouldInsertAtTheTop: shouldInsertAtTheTop } =\n\t\t\t\tgetBlockEditorSettings();\n\n\t\t\t// If post title is selected insert as first block.\n\t\t\tif ( shouldInsertAtTheTop ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\tif ( clientId ) {\n\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t}\n\n\t\t\t// If there is a selected block,\n\t\t\tif ( isAnyBlockSelected ) {\n\t\t\t\t// And the last selected block is unmodified (empty), it will be replaced.\n\t\t\t\tif ( isSelectedUnmodifiedDefaultBlock ) {\n\t\t\t\t\treturn selectedBlockIndex;\n\t\t\t\t}\n\n\t\t\t\t// We insert after the selected block.\n\t\t\t\treturn selectedBlockIndex + 1;\n\t\t\t}\n\n\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\treturn endOfRootIndex;\n\t\t}\n\n\t\tconst insertionIndexStart = 0;\n\n\t\tconst insertionIndexBefore = isAnyBlockSelected\n\t\t\t? selectedBlockIndex\n\t\t\t: insertionIndexStart;\n\n\t\tconst insertionIndexAfter = isAnyBlockSelected\n\t\t\t? selectedBlockIndex + 1\n\t\t\t: endOfRootIndex;\n\n\t\tconst insertionIndexEnd = endOfRootIndex;\n\n\t\treturn {\n\t\t\tblockTypeImpressions: getBlockEditorSettings().impressions,\n\t\t\tdestinationRootClientId,\n\t\t\tinsertionIndexDefault: getDefaultInsertionIndex(),\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexEnd,\n\t\t\tisAnyBlockSelected: !! isAnyBlockSelected,\n\t\t\tisSelectedBlockReplaceable: isSelectedUnmodifiedDefaultBlock,\n\t\t};\n\t} ),\n\n\twithPreferredColorScheme,\n] )( Inserter );\n"],"mappings":";;;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AAQA,IAAAQ,kBAAA,GAAAR,OAAA;AAKA,IAAAS,MAAA,GAAAC,sBAAA,CAAAV,OAAA;AACA,IAAAW,KAAA,GAAAD,sBAAA,CAAAV,OAAA;AACA,IAAAY,eAAA,GAAAF,sBAAA,CAAAV,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AAAwD,IAAAc,WAAA,GAAAd,OAAA;AA9BxD;AACA;AACA;;AAGA;AACA;AACA;;AAiBA;AACA;AACA;;AAMA,MAAMe,6BAA6B,GAAG,IAAI;AAE1C,MAAMC,mBAAmB,GAAGA,CAAE;EAC7BC,QAAQ;EACRC,QAAQ;EACRC,SAAS;EACTC,WAAW;EACXC;AACD,CAAC,KAAM;EACN,oBACC,IAAAP,WAAA,CAAAQ,GAAA,EAACpB,WAAA,CAAAqB,aAAa;IACbC,KAAK,EAAG,IAAAC,QAAE,EACT,WAAW,EACX,yCACD,CAAG;IACHC,IAAI,eAAG,IAAAZ,WAAA,CAAAQ,GAAA,EAACf,MAAA,CAAAoB,IAAI;MAACD,IAAI,EAAGE,WAAM;MAACC,KAAK,EAAGV;IAAW,CAAE,CAAG;IACnDW,OAAO,EAAGb,QAAU;IACpBc,UAAU,EAAG;MACZC,IAAI,EAAE,IAAAC,QAAE,EAAE,2BAA4B,CAAC;MACvC;MACA;MACAC,MAAM,EAAE,kBAAkB;MAC1Bb,WAAW;MACXc,OAAO,EAAE;QAAEC,GAAG,EAAE,EAAE;QAAEC,MAAM,EAAE,EAAE;QAAEC,IAAI,EAAE,EAAE;QAAEC,KAAK,EAAE;MAAG;IACrD,CAAG;IACHC,UAAU,EAAGtB,QAAU;IACvBuB,qBAAqB,EAAGrB,WAAa;IACrCsB,UAAU,EAAG;EAAO,CACpB,CAAC;AAEJ,CAAC;AAEM,MAAMC,QAAQ,SAASC,kBAAS,CAAC;EACvCC,mBAAmB;EAEnBC,WAAWA,CAAA,EAAG;IACb,KAAK,CAAE,GAAGC,SAAU,CAAC;IAErB,IAAI,CAAC9B,QAAQ,GAAG,IAAI,CAACA,QAAQ,CAAC+B,IAAI,CAAE,IAAK,CAAC;IAC1C,IAAI,CAACC,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACD,IAAI,CAAE,IAAK,CAAC;IAClE,IAAI,CAACE,aAAa,GAAG,IAAI,CAACA,aAAa,CAACF,IAAI,CAAE,IAAK,CAAC;EACrD;EAEAG,oBAAoBA,CAAA,EAAG;IACtBC,YAAY,CAAE,IAAI,CAACP,mBAAoB,CAAC;EACzC;EAEAQ,mBAAmBA,CAAA,EAAG;IACrB,MAAMC,eAAe,GAAG;MACvBC,KAAK,EAAE,QAAQ;MACfC,KAAK,EAAE,IAAAvB,QAAE,EAAE,kBAAmB,CAAC;MAC/BP,IAAI,EAAE+B;IACP,CAAC;IAED,MAAMC,oBAAoB,GAAG;MAC5BH,KAAK,EAAE,SAAS;MAChBC,KAAK,EAAE,IAAAvB,QAAE,EAAE,uBAAwB,CAAC;MACpCP,IAAI,EAAEiC;IACP,CAAC;IAED,MAAMC,cAAc,GAAG;MACtBL,KAAK,EAAE,OAAO;MACdC,KAAK,EAAE,IAAAvB,QAAE,EAAE,iBAAkB,CAAC;MAC9BP,IAAI,EAAE+B;IACP,CAAC;IAED,MAAMI,oBAAoB,GAAG;MAC5BN,KAAK,EAAE,OAAO;MACdC,KAAK,EAAE,IAAAvB,QAAE,EAAE,kBAAmB,CAAC;MAC/BP,IAAI,EAAEoC;IACP,CAAC;IAED,MAAMC,cAAc,GAAG;MACtBR,KAAK,EAAE,KAAK;MACZC,KAAK,EAAE,IAAAvB,QAAE,EAAE,YAAa,CAAC;MACzBP,IAAI,EAAEsC;IACP,CAAC;IAED,MAAM;MAAEC,kBAAkB;MAAEC;IAA2B,CAAC,GAAG,IAAI,CAACC,KAAK;IACrE,IAAKF,kBAAkB,EAAG;MACzB,IAAKC,0BAA0B,EAAG;QACjC,OAAO,CACNL,oBAAoB,EACpBP,eAAe,EACfI,oBAAoB,EACpBE,cAAc,EACdG,cAAc,CACd;MACF;MACA,OAAO,CACNF,oBAAoB,EACpBP,eAAe,EACfM,cAAc,EACdG,cAAc,CACd;IACF;IACA,OAAO,CAAEF,oBAAoB,EAAEE,cAAc,CAAE;EAChD;EAEAK,iBAAiBA,CAAEC,aAAa,EAAG;IAClC,MAAM;MACLC,qBAAqB;MACrBC,mBAAmB;MACnBC,oBAAoB;MACpBC,mBAAmB;MACnBC;IACD,CAAC,GAAG,IAAI,CAACP,KAAK;IACd,IAAKE,aAAa,KAAK,OAAO,EAAG;MAChC,OAAOE,mBAAmB;IAC3B;IACA,IAAKF,aAAa,KAAK,QAAQ,IAAIA,aAAa,KAAK,SAAS,EAAG;MAChE,OAAOG,oBAAoB;IAC5B;IACA,IAAKH,aAAa,KAAK,OAAO,EAAG;MAChC,OAAOI,mBAAmB;IAC3B;IACA,IAAKJ,aAAa,KAAK,KAAK,EAAG;MAC9B,OAAOK,iBAAiB;IACzB;IACA,OAAOJ,qBAAqB;EAC7B;EAEAK,kBAAkBA,CAAEN,aAAa,EAAG;IACnC,MAAM;MAAEH;IAA2B,CAAC,GAAG,IAAI,CAACC,KAAK;IACjD,IAAKE,aAAa,KAAK,SAAS,EAAG;MAClC,OAAO,IAAI;IACZ;IACA,IAAKA,aAAa,KAAK,SAAS,IAAIH,0BAA0B,EAAG;MAChE,OAAO,IAAI;IACZ;IACA,OAAO,KAAK;EACb;EAEAjD,QAAQA,CAAE2D,MAAM,EAAG;IAClB,MAAM;MAAEC,oBAAoB;MAAE5D,QAAQ;MAAE6D;IAAe,CAAC,GAAG,IAAI,CAACX,KAAK;IAErE,IAAK,CAAES,MAAM,EAAG;MACf,MAAMG,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CACtCJ,oBACD,CAAC,CAACK,IAAI,CAAIC,KAAK,IAAMA,KAAK,GAAG,CAAE,CAAC;MAEhC,IAAKJ,iBAAiB,EAAG;QACxB,MAAMK,sBAAsB,GAAGJ,MAAM,CAACK,OAAO,CAC5CR,oBACD,CAAC,CAACS,MAAM,CACP,CAAEC,GAAG,EAAE,CAAEC,SAAS,EAAEL,KAAK,CAAE,MAAQ;UAClC,GAAGI,GAAG;UACN,CAAEC,SAAS,GAAIC,IAAI,CAACC,GAAG,CAAEP,KAAK,GAAG,CAAC,EAAE,CAAE;QACvC,CAAC,CAAE,EACH,CAAC,CACF,CAAC;;QAED;QACAL,cAAc,CAAE;UACfa,WAAW,EAAEP;QACd,CAAE,CAAC;;QAEH;QACA,IAAAQ,0CAAuB,EAAER,sBAAuB,CAAC;MAClD;IACD;;IAEA;IACA,IAAKnE,QAAQ,EAAG;MACfA,QAAQ,CAAE2D,MAAO,CAAC;IACnB;IACA,IAAI,CAACiB,6BAA6B,CAAEjB,MAAO,CAAC;EAC7C;EAEAiB,6BAA6BA,CAAEjB,MAAM,EAAG;IACvCkB,8BAAiB,CAACC,qBAAqB,CAAC,CAAC,CAACC,IAAI,CAAIC,SAAS,IAAM;MAChE,IAAKA,SAAS,EAAG;QAChB,MAAMC,KAAK,GAAGC,qBAAQ,CAACC,EAAE,KAAK,KAAK;QACnC,MAAMC,YAAY,GAAGzB,MAAM,GACxB,IAAA3C,QAAE,EAAE,+CAAgD,CAAC,GACrD,IAAAA,QAAE,EAAE,+BAAgC,CAAC;QACxC,IAAI,CAACY,mBAAmB,GAAGyD,UAAU,CACpC,MACCR,8BAAiB,CAACS,wBAAwB,CACzCF,YACD,CAAC,EACFH,KAAK,GAAGnF,6BAA6B,GAAG,CACzC,CAAC;MACF;IACD,CAAE,CAAC;EACJ;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCkC,oBAAoBA,CAAE;IAAEhC,QAAQ;IAAE2D;EAAO,CAAC,EAAG;IAC5C,MAAM;MACL1D,QAAQ;MACRsF,YAAY,GAAGxF,mBAAmB;MAClCyF,wBAAwB;MACxBC;IACD,CAAC,GAAG,IAAI,CAACvC,KAAK;IACd,IAAKuC,aAAa,IAAI9B,MAAM,EAAG;MAC9B,oBAAO,IAAA9D,WAAA,CAAAQ,GAAA,EAACV,eAAA,CAAA+F,OAAmB,IAAE,CAAC;IAC/B;IAEA,MAAMvF,WAAW,GAAGqF,wBAAwB,CAC3CG,cAAM,CAAE,iCAAiC,CAAE,EAC3CA,cAAM,CAAE,uCAAuC,CAChD,CAAC;IAED,MAAMzF,SAAS,GAAGsF,wBAAwB,CACzCG,cAAM,CAAE,sCAAsC,CAAE,EAChDA,cAAM,CAAE,4CAA4C,CACrD,CAAC;IAED,MAAMC,OAAO,GAAGA,CAAA,KAAM;MACrB,IAAI,CAACC,QAAQ,CACZ;QACCC,uBAAuB,EAAE,IAAI,CAAC5C,KAAK,CAAC4C,uBAAuB;QAC3DpC,kBAAkB,EAAE,IAAI,CAACA,kBAAkB,CAAE,SAAU,CAAC;QACxDqC,cAAc,EAAE,IAAI,CAAC5C,iBAAiB,CAAE,SAAU;MACnD,CAAC,EACDnD,QACD,CAAC;IACF,CAAC;IAED,MAAMI,WAAW,GAAGA,CAAA,KAAM;MACzB,IAAK,IAAI,CAAC4F,MAAM,EAAG;QAClB,IAAI,CAACA,MAAM,CAACC,aAAa,CAAC,CAAC;MAC5B;IACD,CAAC;IAED,MAAMC,cAAc,GAAK9C,aAAa,IAAM;MAC3C,IAAI,CAACyC,QAAQ,CACZ;QACCC,uBAAuB,EAAE,IAAI,CAAC5C,KAAK,CAAC4C,uBAAuB;QAC3DpC,kBAAkB,EACjB,IAAI,CAACA,kBAAkB,CAAEN,aAAc,CAAC;QACzC2C,cAAc,EAAE,IAAI,CAAC5C,iBAAiB,CAAEC,aAAc;MACvD,CAAC,EACDpD,QACD,CAAC;IACF,CAAC;IAED,oBACC,IAAAH,WAAA,CAAAsG,IAAA,EAAAtG,WAAA,CAAAuG,QAAA;MAAAC,QAAA,GACGd,YAAY,CAAE;QACfvF,QAAQ,EAAE4F,OAAO;QACjBjC,MAAM;QACN1D,QAAQ;QACRC,SAAS;QACTC,WAAW;QACXC;MACD,CAAE,CAAC,eACH,IAAAP,WAAA,CAAAQ,GAAA,EAACpB,WAAA,CAAAqH,MAAM;QACNC,GAAG,EAAKC,QAAQ,IAAQ,IAAI,CAACR,MAAM,GAAGQ,QAAY;QAClDC,OAAO,EAAG,IAAI,CAACrE,mBAAmB,CAAC,CAAG;QACtCsE,QAAQ,EAAGR,cAAgB;QAC3BS,gBAAgB;MAAA,CAChB,CAAC;IAAA,CACD,CAAC;EAEL;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC1E,aAAaA,CAAE;IAAE2E,OAAO;IAAEjD;EAAO,CAAC,EAAG;IACpC,MAAM;MAAEkD,QAAQ;MAAEC;IAAW,CAAC,GAAG,IAAI,CAAC5D,KAAK;IAC3C,MAAM;MAAE4C,uBAAuB;MAAEpC,kBAAkB;MAAEqC;IAAe,CAAC,GACpE,IAAI,CAACgB,KAAK;IACX,oBACC,IAAAlH,WAAA,CAAAQ,GAAA,EAACX,KAAA,CAAAgG,OAAY;MACZ/B,MAAM,EAAGA,MAAQ;MACjBqD,QAAQ,EAAGJ,OAAS;MACpBK,SAAS,EAAGL,OAAS;MACrBM,YAAY,EAAGpB,uBAAyB;MACxCe,QAAQ,EAAGA,QAAU;MACrBC,UAAU,EAAGA,UAAY;MACzBpD,kBAAkB,EAAGA,kBAAoB;MACzCqC,cAAc,EAAGA;IAAgB,CACjC,CAAC;EAEJ;EAEAoB,MAAMA,CAAA,EAAG;IACR,oBACC,IAAAtH,WAAA,CAAAQ,GAAA,EAACpB,WAAA,CAAAmI,QAAQ;MACRpH,QAAQ,EAAG,IAAI,CAACA,QAAU;MAC1BqH,WAAW,EAAG,IAAArG,QAAE,EAAE,aAAc,CAAG;MACnCuE,YAAY,EAAG,IAAI,CAACvD,oBAAsB;MAC1CC,aAAa,EAAG,IAAI,CAACA;IAAe,CACpC,CAAC;EAEJ;AACD;AAACqF,OAAA,CAAA5F,QAAA,GAAAA,QAAA;AAAA,IAAA6F,QAAA,GAAAD,OAAA,CAAA5B,OAAA,GAEc,IAAA8B,gBAAO,EAAE,CACvB,IAAAC,kBAAY,EAAIC,QAAQ,IAAM;EAC7B,MAAM;IAAE7D;EAAe,CAAC,GAAG6D,QAAQ,CAAEC,YAAiB,CAAC;EACvD,OAAO;IAAE9D;EAAe,CAAC;AAC1B,CAAE,CAAC,EACH,IAAA+D,gBAAU,EAAE,CAAEC,MAAM,EAAE;EAAEhB,QAAQ;EAAEC,UAAU;EAAEI;AAAa,CAAC,KAAM;EACjE,MAAM;IACLY,oBAAoB;IACpBC,oBAAoB;IACpBC,aAAa;IACbC,aAAa;IACbC,QAAQ;IACRC,WAAW,EAAEC;EACd,CAAC,GAAGP,MAAM,CAAEF,YAAiB,CAAC;EAE9B,MAAMU,GAAG,GAAGN,oBAAoB,CAAC,CAAC;EAClC;EACA;EACA;EACA,MAAM/E,kBAAkB,GAAG,CAAE8D,UAAU,IAAIuB,GAAG,IAAIH,QAAQ,CAAEG,GAAI,CAAC;EACjE,MAAMvC,uBAAuB,GAAG9C,kBAAkB,GAC/C8E,oBAAoB,CAAEO,GAAI,CAAC,GAC3BnB,YAAY;EACf,MAAMoB,kBAAkB,GAAGL,aAAa,CAAEI,GAAI,CAAC;EAC/C,MAAME,cAAc,GAAGP,aAAa,CAAEd,YAAa,CAAC,CAACsB,MAAM;EAC3D,MAAMC,gCAAgC,GAAGzF,kBAAkB,GACxD,IAAA0F,gCAAwB,EAAER,QAAQ,CAAEG,GAAI,CAAE,CAAC,GAC3CM,SAAS;EAEZ,SAASC,wBAAwBA,CAAA,EAAG;IACnC,MAAM;MAAEC,kCAAkC,EAAEC;IAAqB,CAAC,GACjEV,sBAAsB,CAAC,CAAC;;IAEzB;IACA,IAAKU,oBAAoB,EAAG;MAC3B,OAAO,CAAC;IACT;;IAEA;IACA,IAAKjC,QAAQ,EAAG;MACf,OAAOoB,aAAa,CAAEpB,QAAS,CAAC;IACjC;;IAEA;IACA,IAAK7D,kBAAkB,EAAG;MACzB;MACA,IAAKyF,gCAAgC,EAAG;QACvC,OAAOH,kBAAkB;MAC1B;;MAEA;MACA,OAAOA,kBAAkB,GAAG,CAAC;IAC9B;;IAEA;IACA,OAAOC,cAAc;EACtB;EAEA,MAAMjF,mBAAmB,GAAG,CAAC;EAE7B,MAAMC,oBAAoB,GAAGP,kBAAkB,GAC5CsF,kBAAkB,GAClBhF,mBAAmB;EAEtB,MAAME,mBAAmB,GAAGR,kBAAkB,GAC3CsF,kBAAkB,GAAG,CAAC,GACtBC,cAAc;EAEjB,MAAM9E,iBAAiB,GAAG8E,cAAc;EAExC,OAAO;IACN3E,oBAAoB,EAAEwE,sBAAsB,CAAC,CAAC,CAAC1D,WAAW;IAC1DoB,uBAAuB;IACvBzC,qBAAqB,EAAEuF,wBAAwB,CAAC,CAAC;IACjDrF,oBAAoB;IACpBC,mBAAmB;IACnBF,mBAAmB;IACnBG,iBAAiB;IACjBT,kBAAkB,EAAE,CAAC,CAAEA,kBAAkB;IACzCC,0BAA0B,EAAEwF;EAC7B,CAAC;AACF,CAAE,CAAC,EAEHM,iCAAwB,CACvB,CAAC,CAAErH,QAAS,CAAC","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_data","_store","_lockUnlock","useMediaResults","category","query","mediaList","setMediaList","useState","isLoading","setIsLoading","lastRequestRef","useRef","useEffect","key","JSON","stringify","name","current","_media","fetch","Object","values","useMediaCategories","rootClientId","categories","setCategories","inserterMediaCategories","useSelect","select","unlock","blockEditorStore","getInserterMediaCategories","canInsertImage","canInsertVideo","canInsertAudio","canInsertBlockType","_categories","categoriesHaveMedia","Map","Promise","all","map","isExternalResource","results","per_page","e","length","canInsertMediaType","image","video","audio","forEach","mediaType","get","push"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\n/** @typedef {import('../../../store/actions').InserterMediaRequest} InserterMediaRequest */\n/** @typedef {import('../../../store/actions').InserterMediaItem} InserterMediaItem */\n\n/**\n * Fetches media items based on the provided category.\n * Each media category is responsible for providing a `fetch` function.\n *\n * @param {Object} category The media category to fetch results for.\n * @param {InserterMediaRequest} query The query args to use for the request.\n * @return {InserterMediaItem[]} The media results.\n */\nexport function useMediaResults( category, query = {} ) {\n\tconst [ mediaList, setMediaList ] = useState();\n\tconst [ isLoading, setIsLoading ] = useState( false );\n\t// We need to keep track of the last request made because\n\t// multiple request can be fired without knowing the order\n\t// of resolution, and we need to ensure we are showing\n\t// the results of the last request.\n\t// In the future we could use AbortController to cancel previous\n\t// requests, but we don't for now as it involves adding support\n\t// for this to `core-data` package.\n\tconst lastRequestRef = useRef();\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst key = JSON.stringify( {\n\t\t\t\tcategory: category.name,\n\t\t\t\t...query,\n\t\t\t} );\n\t\t\tlastRequestRef.current = key;\n\t\t\tsetIsLoading( true );\n\t\t\tsetMediaList( [] ); // Empty the previous results.\n\t\t\tconst _media = await category.fetch?.( query );\n\t\t\tif ( key === lastRequestRef.current ) {\n\t\t\t\tsetMediaList( _media );\n\t\t\t\tsetIsLoading( false );\n\t\t\t}\n\t\t} )();\n\t}, [ category.name, ...Object.values( query ) ] );\n\treturn { mediaList, isLoading };\n}\n\nexport function useMediaCategories( rootClientId ) {\n\tconst [ categories, setCategories ] = useState( [] );\n\n\tconst inserterMediaCategories = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( blockEditorStore ) ).getInserterMediaCategories(),\n\t\t[]\n\t);\n\tconst { canInsertImage, canInsertVideo, canInsertAudio } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType } = select( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tcanInsertImage: canInsertBlockType(\n\t\t\t\t\t'core/image',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertVideo: canInsertBlockType(\n\t\t\t\t\t'core/video',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertAudio: canInsertBlockType(\n\t\t\t\t\t'core/audio',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst _categories = [];\n\t\t\t// If `inserterMediaCategories` is not defined in\n\t\t\t// block editor settings, do not show any media categories.\n\t\t\tif ( ! inserterMediaCategories ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Loop through categories to check if they have at least one media item.\n\t\t\tconst categoriesHaveMedia = new Map(\n\t\t\t\tawait Promise.all(\n\t\t\t\t\tinserterMediaCategories.map( async ( category ) => {\n\t\t\t\t\t\t// Some sources are external and we don't need to make a request.\n\t\t\t\t\t\tif ( category.isExternalResource ) {\n\t\t\t\t\t\t\treturn [ category.name, true ];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet results = [];\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tresults = await category.fetch( {\n\t\t\t\t\t\t\t\tper_page: 1,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} catch ( e ) {\n\t\t\t\t\t\t\t// If the request fails, we shallow the error and just don't show\n\t\t\t\t\t\t\t// the category, in order to not break the media tab.\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn [ category.name, !! results.length ];\n\t\t\t\t\t} )\n\t\t\t\t)\n\t\t\t);\n\t\t\t// We need to filter out categories that don't have any media items or\n\t\t\t// whose corresponding block type is not allowed to be inserted, based\n\t\t\t// on the category's `mediaType`.\n\t\t\tconst canInsertMediaType = {\n\t\t\t\timage: canInsertImage,\n\t\t\t\tvideo: canInsertVideo,\n\t\t\t\taudio: canInsertAudio,\n\t\t\t};\n\t\t\tinserterMediaCategories.forEach( ( category ) => {\n\t\t\t\tif (\n\t\t\t\t\tcanInsertMediaType[ category.mediaType ] &&\n\t\t\t\t\tcategoriesHaveMedia.get( category.name )\n\t\t\t\t) {\n\t\t\t\t\t_categories.push( category );\n\t\t\t\t}\n\t\t\t} );\n\t\t\tif ( !! _categories.length ) {\n\t\t\t\tsetCategories( _categories );\n\t\t\t}\n\t\t} )();\n\t}, [\n\t\tcanInsertImage,\n\t\tcanInsertVideo,\n\t\tcanInsertAudio,\n\t\tinserterMediaCategories,\n\t] );\n\treturn categories;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_data","_store","_lockUnlock","useMediaResults","category","query","mediaList","setMediaList","useState","isLoading","setIsLoading","lastRequestRef","useRef","useEffect","key","JSON","stringify","name","current","_media","fetch","Object","values","useMediaCategories","rootClientId","categories","setCategories","inserterMediaCategories","useSelect","select","unlock","blockEditorStore","getInserterMediaCategories","canInsertImage","canInsertVideo","canInsertAudio","canInsertBlockType","_categories","categoriesHaveMedia","Map","Promise","all","map","isExternalResource","results","per_page","e","length","canInsertMediaType","image","video","audio","forEach","mediaType","get","push"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\n/** @typedef {import('../../../store/actions').InserterMediaRequest} InserterMediaRequest */\n/** @typedef {import('../../../store/actions').InserterMediaItem} InserterMediaItem */\n\n/**\n * Fetches media items based on the provided category.\n * Each media category is responsible for providing a `fetch` function.\n *\n * @param {Object} category The media category to fetch results for.\n * @param {InserterMediaRequest} query The query args to use for the request.\n * @return {InserterMediaItem[]} The media results.\n */\nexport function useMediaResults( category, query = {} ) {\n\tconst [ mediaList, setMediaList ] = useState();\n\tconst [ isLoading, setIsLoading ] = useState( false );\n\t// We need to keep track of the last request made because\n\t// multiple request can be fired without knowing the order\n\t// of resolution, and we need to ensure we are showing\n\t// the results of the last request.\n\t// In the future we could use AbortController to cancel previous\n\t// requests, but we don't for now as it involves adding support\n\t// for this to `core-data` package.\n\tconst lastRequestRef = useRef();\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst key = JSON.stringify( {\n\t\t\t\tcategory: category.name,\n\t\t\t\t...query,\n\t\t\t} );\n\t\t\tlastRequestRef.current = key;\n\t\t\tsetIsLoading( true );\n\t\t\tsetMediaList( [] ); // Empty the previous results.\n\t\t\tconst _media = await category.fetch?.( query );\n\t\t\tif ( key === lastRequestRef.current ) {\n\t\t\t\tsetMediaList( _media );\n\t\t\t\tsetIsLoading( false );\n\t\t\t}\n\t\t} )();\n\t}, [ category.name, ...Object.values( query ) ] );\n\treturn { mediaList, isLoading };\n}\n\nexport function useMediaCategories( rootClientId ) {\n\tconst [ categories, setCategories ] = useState( [] );\n\n\tconst inserterMediaCategories = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( blockEditorStore ) ).getInserterMediaCategories(),\n\t\t[]\n\t);\n\tconst { canInsertImage, canInsertVideo, canInsertAudio } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType } = select( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tcanInsertImage: canInsertBlockType(\n\t\t\t\t\t'core/image',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertVideo: canInsertBlockType(\n\t\t\t\t\t'core/video',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertAudio: canInsertBlockType(\n\t\t\t\t\t'core/audio',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst _categories = [];\n\t\t\t// If `inserterMediaCategories` is not defined in\n\t\t\t// block editor settings, do not show any media categories.\n\t\t\tif ( ! inserterMediaCategories ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Loop through categories to check if they have at least one media item.\n\t\t\tconst categoriesHaveMedia = new Map(\n\t\t\t\tawait Promise.all(\n\t\t\t\t\tinserterMediaCategories.map( async ( category ) => {\n\t\t\t\t\t\t// Some sources are external and we don't need to make a request.\n\t\t\t\t\t\tif ( category.isExternalResource ) {\n\t\t\t\t\t\t\treturn [ category.name, true ];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet results = [];\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tresults = await category.fetch( {\n\t\t\t\t\t\t\t\tper_page: 1,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} catch ( e ) {\n\t\t\t\t\t\t\t// If the request fails, we shallow the error and just don't show\n\t\t\t\t\t\t\t// the category, in order to not break the media tab.\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn [ category.name, !! results.length ];\n\t\t\t\t\t} )\n\t\t\t\t)\n\t\t\t);\n\t\t\t// We need to filter out categories that don't have any media items or\n\t\t\t// whose corresponding block type is not allowed to be inserted, based\n\t\t\t// on the category's `mediaType`.\n\t\t\tconst canInsertMediaType = {\n\t\t\t\timage: canInsertImage,\n\t\t\t\tvideo: canInsertVideo,\n\t\t\t\taudio: canInsertAudio,\n\t\t\t};\n\t\t\tinserterMediaCategories.forEach( ( category ) => {\n\t\t\t\tif (\n\t\t\t\t\tcanInsertMediaType[ category.mediaType ] &&\n\t\t\t\t\tcategoriesHaveMedia.get( category.name )\n\t\t\t\t) {\n\t\t\t\t\t_categories.push( category );\n\t\t\t\t}\n\t\t\t} );\n\t\t\tif ( !! _categories.length ) {\n\t\t\t\tsetCategories( _categories );\n\t\t\t}\n\t\t} )();\n\t}, [\n\t\tcanInsertImage,\n\t\tcanInsertVideo,\n\t\tcanInsertAudio,\n\t\tinserterMediaCategories,\n\t] );\n\treturn categories;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_i18n","_mediaPreview","_jsxRuntime","MediaList","mediaList","category","onClick","label","__","jsx","Composite","role","className","children","map","media","index","MediaPreview","id","sourceId","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-list.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Composite } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { MediaPreview } from './media-preview';\n\nfunction MediaList( {\n\tmediaList,\n\tcategory,\n\tonClick,\n\tlabel = __( 'Media List' ),\n} ) {\n\treturn (\n\t\t<Composite\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-inserter__media-list\"\n\t\t\taria-label={ label }\n\t\t>\n\t\t\t{ mediaList.map( ( media, index ) => (\n\t\t\t\t<MediaPreview\n\t\t\t\t\tkey={ media.id || media.sourceId || index }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t\tcategory={ category }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nexport default MediaList;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,aAAA,GAAAF,OAAA;AAA+C,IAAAG,WAAA,GAAAH,OAAA;AAT/C;AACA;AACA;;AAIA;AACA;AACA;;AAGA,SAASI,SAASA,CAAE;EACnBC,SAAS;EACTC,QAAQ;EACRC,OAAO;EACPC,KAAK,GAAG,IAAAC,QAAE,EAAE,YAAa;AAC1B,CAAC,EAAG;EACH,oBACC,IAAAN,WAAA,CAAAO,GAAA,EAACX,WAAA,CAAAY,SAAS;IACTC,IAAI,EAAC,SAAS;IACdC,SAAS,EAAC,mCAAmC;IAC7C,cAAaL,KAAO;IAAAM,QAAA,EAElBT,SAAS,CAACU,GAAG,CAAE,CAAEC,KAAK,EAAEC,KAAK,kBAC9B,IAAAd,WAAA,CAAAO,GAAA,EAACR,aAAA,CAAAgB,YAAY;MAEZF,KAAK,EAAGA,KAAO;MACfV,QAAQ,EAAGA,QAAU;MACrBC,OAAO,EAAGA;IAAS,GAHbS,KAAK,CAACG,EAAE,IAAIH,KAAK,CAACI,QAAQ,IAAIH,KAIpC,CACA;EAAC,CACO,CAAC;AAEd;AAAC,IAAAI,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcnB,SAAS","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_i18n","_mediaPreview","_jsxRuntime","MediaList","mediaList","category","onClick","label","__","jsx","Composite","role","className","children","map","media","index","MediaPreview","id","sourceId","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-list.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Composite } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { MediaPreview } from './media-preview';\n\nfunction MediaList( {\n\tmediaList,\n\tcategory,\n\tonClick,\n\tlabel = __( 'Media List' ),\n} ) {\n\treturn (\n\t\t<Composite\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-inserter__media-list\"\n\t\t\taria-label={ label }\n\t\t>\n\t\t\t{ mediaList.map( ( media, index ) => (\n\t\t\t\t<MediaPreview\n\t\t\t\t\tkey={ media.id || media.sourceId || index }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t\tcategory={ category }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nexport default MediaList;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,aAAA,GAAAF,OAAA;AAA+C,IAAAG,WAAA,GAAAH,OAAA;AAT/C;AACA;AACA;;AAIA;AACA;AACA;;AAGA,SAASI,SAASA,CAAE;EACnBC,SAAS;EACTC,QAAQ;EACRC,OAAO;EACPC,KAAK,GAAG,IAAAC,QAAE,EAAE,YAAa;AAC1B,CAAC,EAAG;EACH,oBACC,IAAAN,WAAA,CAAAO,GAAA,EAACX,WAAA,CAAAY,SAAS;IACTC,IAAI,EAAC,SAAS;IACdC,SAAS,EAAC,mCAAmC;IAC7C,cAAaL,KAAO;IAAAM,QAAA,EAElBT,SAAS,CAACU,GAAG,CAAE,CAAEC,KAAK,EAAEC,KAAK,kBAC9B,IAAAd,WAAA,CAAAO,GAAA,EAACR,aAAA,CAAAgB,YAAY;MAEZF,KAAK,EAAGA,KAAO;MACfV,QAAQ,EAAGA,QAAU;MACrBC,OAAO,EAAGA;IAAS,GAHbS,KAAK,CAACG,EAAE,IAAIH,KAAK,CAACI,QAAQ,IAAIH,KAIpC,CACA;EAAC,CACO,CAAC;AAEd;AAAC,IAAAI,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcnB,SAAS","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","_compose","_components","_element","_mediaPanel","_check","_interopRequireDefault","_mediaUpload","_hooks","_utils","_mobileTabNavigation","_categoryTabs","_noResults","_jsxRuntime","ALLOWED_MEDIA_TYPES","MediaTab","rootClientId","selectedCategory","onSelectCategory","onInsert","children","mediaCategories","useMediaCategories","isMobile","useViewportMatch","baseCssClass","onSelectMedia","useCallback","media","url","block","getBlockAndPreviewFromMedia","type","categories","useMemo","map","mediaCategory","label","labels","name","length","jsx","default","jsxs","Fragment","className","multiple","onSelect","allowedTypes","render","open","Button","__next40pxDefaultSize","onClick","event","target","focus","variant","__","category","MediaCategoryPanel","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { Button } from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { MediaCategoryPanel } from './media-panel';\nimport MediaUploadCheck from '../../media-upload/check';\nimport MediaUpload from '../../media-upload';\nimport { useMediaCategories } from './hooks';\nimport { getBlockAndPreviewFromMedia } from './utils';\nimport MobileTabNavigation from '../mobile-tab-navigation';\nimport CategoryTabs from '../category-tabs';\nimport InserterNoResults from '../no-results';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image', 'video', 'audio' ];\n\nfunction MediaTab( {\n\trootClientId,\n\tselectedCategory,\n\tonSelectCategory,\n\tonInsert,\n\tchildren,\n} ) {\n\tconst mediaCategories = useMediaCategories( rootClientId );\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\tconst baseCssClass = 'block-editor-inserter__media-tabs';\n\tconst onSelectMedia = useCallback(\n\t\t( media ) => {\n\t\t\tif ( ! media?.url ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst [ block ] = getBlockAndPreviewFromMedia( media, media.type );\n\t\t\tonInsert( block );\n\t\t},\n\t\t[ onInsert ]\n\t);\n\tconst categories = useMemo(\n\t\t() =>\n\t\t\tmediaCategories.map( ( mediaCategory ) => ( {\n\t\t\t\t...mediaCategory,\n\t\t\t\tlabel: mediaCategory.labels.name,\n\t\t\t} ) ),\n\t\t[ mediaCategories ]\n\t);\n\n\tif ( ! categories.length ) {\n\t\treturn <InserterNoResults />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isMobile && (\n\t\t\t\t<div className={ `${ baseCssClass }-container` }>\n\t\t\t\t\t<CategoryTabs\n\t\t\t\t\t\tcategories={ categories }\n\t\t\t\t\t\tselectedCategory={ selectedCategory }\n\t\t\t\t\t\tonSelectCategory={ onSelectCategory }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</CategoryTabs>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\tmultiple={ false }\n\t\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t// Safari doesn't emit a focus event on button elements when\n\t\t\t\t\t\t\t\t\t\t// clicked and we need to manually focus the button here.\n\t\t\t\t\t\t\t\t\t\t// The reason is that core's Media Library modal explicitly triggers a\n\t\t\t\t\t\t\t\t\t\t// focus event and therefore a `blur` event is triggered on a different\n\t\t\t\t\t\t\t\t\t\t// element, which doesn't contain the `data-unstable-ignore-focus-outside-for-relatedtarget`\n\t\t\t\t\t\t\t\t\t\t// attribute making the Inserter dialog to close.\n\t\t\t\t\t\t\t\t\t\tevent.target.focus();\n\t\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-inserter__media-library-button\"\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tdata-unstable-ignore-focus-outside-for-relatedtarget=\".media-modal\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isMobile && (\n\t\t\t\t<MobileTabNavigation categories={ categories }>\n\t\t\t\t\t{ ( category ) => (\n\t\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</MobileTabNavigation>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default MediaTab;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,YAAA,GAAAD,sBAAA,CAAAN,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,oBAAA,GAAAJ,sBAAA,CAAAN,OAAA;AACA,IAAAW,aAAA,GAAAL,sBAAA,CAAAN,OAAA;AACA,IAAAY,UAAA,GAAAN,sBAAA,CAAAN,OAAA;AAA8C,IAAAa,WAAA,GAAAb,OAAA;AAlB9C;AACA;AACA;;AAMA;AACA;AACA;;AAUA,MAAMc,mBAAmB,GAAG,CAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAE;AAEzD,SAASC,QAAQA,CAAE;EAClBC,YAAY;EACZC,gBAAgB;EAChBC,gBAAgB;EAChBC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAMC,eAAe,GAAG,IAAAC,yBAAkB,EAAEN,YAAa,CAAC;EAC1D,MAAMO,QAAQ,GAAG,IAAAC,yBAAgB,EAAE,QAAQ,EAAE,GAAI,CAAC;EAClD,MAAMC,YAAY,GAAG,mCAAmC;EACxD,MAAMC,aAAa,GAAG,IAAAC,oBAAW,EAC9BC,KAAK,IAAM;IACZ,IAAK,CAAEA,KAAK,EAAEC,GAAG,EAAG;MACnB;IACD;IACA,MAAM,CAAEC,KAAK,CAAE,GAAG,IAAAC,kCAA2B,EAAEH,KAAK,EAAEA,KAAK,CAACI,IAAK,CAAC;IAClEb,QAAQ,CAAEW,KAAM,CAAC;EAClB,CAAC,EACD,CAAEX,QAAQ,CACX,CAAC;EACD,MAAMc,UAAU,GAAG,IAAAC,gBAAO,EACzB,MACCb,eAAe,CAACc,GAAG,CAAIC,aAAa,KAAQ;IAC3C,GAAGA,aAAa;IAChBC,KAAK,EAAED,aAAa,CAACE,MAAM,CAACC;EAC7B,CAAC,CAAG,CAAC,EACN,CAAElB,eAAe,CAClB,CAAC;EAED,IAAK,CAAEY,UAAU,CAACO,MAAM,EAAG;IAC1B,oBAAO,IAAA3B,WAAA,CAAA4B,GAAA,EAAC7B,UAAA,CAAA8B,OAAiB,IAAE,CAAC;EAC7B;EAEA,oBACC,IAAA7B,WAAA,CAAA8B,IAAA,EAAA9B,WAAA,CAAA+B,QAAA;IAAAxB,QAAA,GACG,CAAEG,QAAQ,iBACX,IAAAV,WAAA,CAAA8B,IAAA;MAAKE,SAAS,EAAG,GAAIpB,YAAY,YAAe;MAAAL,QAAA,gBAC/C,IAAAP,WAAA,CAAA4B,GAAA,EAAC9B,aAAA,CAAA+B,OAAY;QACZT,UAAU,EAAGA,UAAY;QACzBhB,gBAAgB,EAAGA,gBAAkB;QACrCC,gBAAgB,EAAGA,gBAAkB;QAAAE,QAAA,EAEnCA;MAAQ,CACG,CAAC,eACf,IAAAP,WAAA,CAAA4B,GAAA,EAACpC,MAAA,CAAAqC,OAAgB;QAAAtB,QAAA,eAChB,IAAAP,WAAA,CAAA4B,GAAA,EAAClC,YAAA,CAAAmC,OAAW;UACXI,QAAQ,EAAG,KAAO;UAClBC,QAAQ,EAAGrB,aAAe;UAC1BsB,YAAY,EAAGlC,mBAAqB;UACpCmC,MAAM,EAAGA,CAAE;YAAEC;UAAK,CAAC,kBAClB,IAAArC,WAAA,CAAA4B,GAAA,EAACvC,WAAA,CAAAiD,MAAM;YACNC,qBAAqB;YACrBC,OAAO,EAAKC,KAAK,IAAM;cACtB;cACA;cACA;cACA;cACA;cACA;cACAA,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAC;cACpBN,IAAI,CAAC,CAAC;YACP,CAAG;YACHL,SAAS,EAAC,6CAA6C;YACvDY,OAAO,EAAC,WAAW;YACnB,wDAAqD,cAAc;YAAArC,QAAA,EAEjE,IAAAsC,QAAE,EAAE,oBAAqB;UAAC,CACrB;QACN,CACH;MAAC,CACe,CAAC;IAAA,CACf,CACL,EACCnC,QAAQ,iBACT,IAAAV,WAAA,CAAA4B,GAAA,EAAC/B,oBAAA,CAAAgC,OAAmB;MAACT,UAAU,EAAGA,UAAY;MAAAb,QAAA,EACzCuC,QAAQ,iBACX,IAAA9C,WAAA,CAAA4B,GAAA,EAACrC,WAAA,CAAAwD,kBAAkB;QAClBzC,QAAQ,EAAGA,QAAU;QACrBH,YAAY,EAAGA,YAAc;QAC7B2C,QAAQ,EAAGA;MAAU,CACrB;IACD,CACmB,CACrB;EAAA,CACA,CAAC;AAEL;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAApB,OAAA,GAEc3B,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_compose","_components","_element","_mediaPanel","_check","_interopRequireDefault","_mediaUpload","_hooks","_utils","_mobileTabNavigation","_categoryTabs","_noResults","_jsxRuntime","ALLOWED_MEDIA_TYPES","MediaTab","rootClientId","selectedCategory","onSelectCategory","onInsert","children","mediaCategories","useMediaCategories","isMobile","useViewportMatch","baseCssClass","onSelectMedia","useCallback","media","url","block","getBlockAndPreviewFromMedia","type","categories","useMemo","map","mediaCategory","label","labels","name","length","jsx","default","jsxs","Fragment","className","multiple","onSelect","allowedTypes","render","open","Button","__next40pxDefaultSize","onClick","event","target","focus","variant","__","category","MediaCategoryPanel","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { Button } from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { MediaCategoryPanel } from './media-panel';\nimport MediaUploadCheck from '../../media-upload/check';\nimport MediaUpload from '../../media-upload';\nimport { useMediaCategories } from './hooks';\nimport { getBlockAndPreviewFromMedia } from './utils';\nimport MobileTabNavigation from '../mobile-tab-navigation';\nimport CategoryTabs from '../category-tabs';\nimport InserterNoResults from '../no-results';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image', 'video', 'audio' ];\n\nfunction MediaTab( {\n\trootClientId,\n\tselectedCategory,\n\tonSelectCategory,\n\tonInsert,\n\tchildren,\n} ) {\n\tconst mediaCategories = useMediaCategories( rootClientId );\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\tconst baseCssClass = 'block-editor-inserter__media-tabs';\n\tconst onSelectMedia = useCallback(\n\t\t( media ) => {\n\t\t\tif ( ! media?.url ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst [ block ] = getBlockAndPreviewFromMedia( media, media.type );\n\t\t\tonInsert( block );\n\t\t},\n\t\t[ onInsert ]\n\t);\n\tconst categories = useMemo(\n\t\t() =>\n\t\t\tmediaCategories.map( ( mediaCategory ) => ( {\n\t\t\t\t...mediaCategory,\n\t\t\t\tlabel: mediaCategory.labels.name,\n\t\t\t} ) ),\n\t\t[ mediaCategories ]\n\t);\n\n\tif ( ! categories.length ) {\n\t\treturn <InserterNoResults />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isMobile && (\n\t\t\t\t<div className={ `${ baseCssClass }-container` }>\n\t\t\t\t\t<CategoryTabs\n\t\t\t\t\t\tcategories={ categories }\n\t\t\t\t\t\tselectedCategory={ selectedCategory }\n\t\t\t\t\t\tonSelectCategory={ onSelectCategory }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</CategoryTabs>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\tmultiple={ false }\n\t\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t// Safari doesn't emit a focus event on button elements when\n\t\t\t\t\t\t\t\t\t\t// clicked and we need to manually focus the button here.\n\t\t\t\t\t\t\t\t\t\t// The reason is that core's Media Library modal explicitly triggers a\n\t\t\t\t\t\t\t\t\t\t// focus event and therefore a `blur` event is triggered on a different\n\t\t\t\t\t\t\t\t\t\t// element, which doesn't contain the `data-unstable-ignore-focus-outside-for-relatedtarget`\n\t\t\t\t\t\t\t\t\t\t// attribute making the Inserter dialog to close.\n\t\t\t\t\t\t\t\t\t\tevent.target.focus();\n\t\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-inserter__media-library-button\"\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tdata-unstable-ignore-focus-outside-for-relatedtarget=\".media-modal\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isMobile && (\n\t\t\t\t<MobileTabNavigation categories={ categories }>\n\t\t\t\t\t{ ( category ) => (\n\t\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</MobileTabNavigation>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default MediaTab;\n"],"mappings":"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","ignoreList":[]}
@@ -67,6 +67,7 @@ function InserterMenu({
67
67
  if (isZoomOutMode) {
68
68
  return 'patterns';
69
69
  }
70
+ return 'blocks';
70
71
  }
71
72
  const [selectedTab, setSelectedTab] = (0, _element.useState)(getInitialTab());
72
73
  const shouldUseZoomOut = hasSectionRootClientId && (selectedTab === 'patterns' || selectedTab === 'media');
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_components","_i18n","_compose","_data","_tips","_previewPanel","_blockTypesTab","_blockPatternsTab","_patternCategoryPreviews","_mediaTab","_searchResults","_useInsertionPoint","_store","_tabbedSidebar","_useZoomOut","_lockUnlock","_jsxRuntime","NOOP","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","onPatternCategorySelection","onClose","__experimentalInitialTab","__experimentalInitialCategory","ref","isZoomOutMode","useSelect","select","unlock","blockEditorStore","isZoomOut","hasSectionRootClientId","getSectionRootClientId","filterValue","setFilterValue","delayedFilterValue","useDebouncedInput","hoveredItem","setHoveredItem","useState","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","isLargeViewport","useViewportMatch","getInitialTab","selectedTab","setSelectedTab","shouldUseZoomOut","useZoomOut","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","useInsertionPoint","insertionIndex","blockTypesTabRef","useRef","onInsert","useCallback","blocks","meta","shouldForceFocusBlock","_rootClientId","window","requestAnimationFrame","current","contains","ownerDocument","activeElement","querySelector","focus","onInsertPattern","patternName","args","onHover","item","onClickPatternCategory","patternCategory","filter","showPatternPanel","showMediaPanel","inserterSearch","useMemo","jsxs","Fragment","children","jsx","SearchControl","__nextHasNoMarginBottom","className","onChange","value","label","__","placeholder","default","showBlockDirectory","prioritizePatterns","blocksTab","VisuallyHidden","as","patternsTab","onSelectCategory","selectedCategory","PatternCategoryPreviews","category","showTitlesAsTooltip","mediaTab","MediaTab","MediaCategoryPanel","handleSetSelectedTab","tabsRef","useLayoutEffect","clsx","closeButtonLabel","tabs","name","title","panel","Popover","placement","offset","focusOnMount","animate","PrivateInserterMenu","exports","forwardRef","PublicInserterMenu","props","_default"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseLayoutEffect,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDebouncedInput, useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Tips from './tips';\nimport InserterPreviewPanel from './preview-panel';\nimport BlockTypesTab from './block-types-tab';\nimport BlockPatternsTab from './block-patterns-tab';\nimport { PatternCategoryPreviews } from './block-patterns-tab/pattern-category-previews';\nimport { MediaTab, MediaCategoryPanel } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport TabbedSidebar from '../tabbed-sidebar';\nimport { useZoomOut } from '../../hooks/use-zoom-out';\nimport { unlock } from '../../lock-unlock';\n\nconst NOOP = () => {};\nfunction InserterMenu(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\t__experimentalInsertionIndex,\n\t\tonSelect,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks,\n\t\t__experimentalFilterValue = '',\n\t\tshouldFocusBlock = true,\n\t\tonPatternCategorySelection,\n\t\tonClose,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t},\n\tref\n) {\n\tconst isZoomOutMode = useSelect(\n\t\t( select ) => unlock( select( blockEditorStore ) ).isZoomOut(),\n\t\t[]\n\t);\n\tconst hasSectionRootClientId = useSelect(\n\t\t( select ) =>\n\t\t\t!! unlock( select( blockEditorStore ) ).getSectionRootClientId(),\n\t\t[]\n\t);\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] = useState(\n\t\t__experimentalInitialCategory\n\t);\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\n\tfunction getInitialTab() {\n\t\tif ( __experimentalInitialTab ) {\n\t\t\treturn __experimentalInitialTab;\n\t\t}\n\n\t\tif ( isZoomOutMode ) {\n\t\t\treturn 'patterns';\n\t\t}\n\t}\n\tconst [ selectedTab, setSelectedTab ] = useState( getInitialTab() );\n\n\tconst shouldUseZoomOut =\n\t\thasSectionRootClientId &&\n\t\t( selectedTab === 'patterns' || selectedTab === 'media' );\n\n\tuseZoomOut( shouldUseZoomOut && isLargeViewport );\n\n\tconst [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =\n\t\tuseInsertionPoint( {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\t\tshouldFocusBlock,\n\t\t} );\n\tconst blockTypesTabRef = useRef();\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock, _rootClientId ) => {\n\t\t\tonInsertBlocks(\n\t\t\t\tblocks,\n\t\t\t\tmeta,\n\t\t\t\tshouldForceFocusBlock,\n\t\t\t\t_rootClientId\n\t\t\t);\n\t\t\tonSelect( blocks );\n\n\t\t\t// Check for focus loss due to filtering blocks by selected block type\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\tif (\n\t\t\t\t\t! shouldFocusBlock &&\n\t\t\t\t\t! blockTypesTabRef.current?.contains(\n\t\t\t\t\t\tref.current.ownerDocument.activeElement\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\t// There has been a focus loss, so focus the first button in the block types tab\n\t\t\t\t\tblockTypesTabRef.current?.querySelector( 'button' ).focus();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t\t[ onInsertBlocks, onSelect, shouldFocusBlock ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName, ...args ) => {\n\t\t\tonToggleInsertionPoint( false );\n\t\t\tonInsertBlocks( blocks, { patternName }, ...args );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\n\t);\n\n\tconst onHover = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( item );\n\t\t\tsetHoveredItem( item );\n\t\t},\n\t\t[ onToggleInsertionPoint, setHoveredItem ]\n\t);\n\n\tconst onClickPatternCategory = useCallback(\n\t\t( patternCategory, filter ) => {\n\t\t\tsetSelectedPatternCategory( patternCategory );\n\t\t\tsetPatternFilter( filter );\n\t\t\tonPatternCategorySelection?.();\n\t\t},\n\t\t[ setSelectedPatternCategory, onPatternCategorySelection ]\n\t);\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\t!! selectedPatternCategory;\n\n\tconst showMediaPanel = selectedTab === 'media' && !! selectedMediaCategory;\n\n\tconst inserterSearch = useMemo( () => {\n\t\tif ( selectedTab === 'media' ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-editor-inserter__search\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tif ( hoveredItem ) {\n\t\t\t\t\t\t\tsetHoveredItem( null );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetFilterValue( value );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\tlabel={ __( 'Search' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\tprioritizePatterns={ selectedTab === 'patterns' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tselectedTab,\n\t\thoveredItem,\n\t\tsetHoveredItem,\n\t\tsetFilterValue,\n\t\tfilterValue,\n\t\tdelayedFilterValue,\n\t\tonSelect,\n\t\tonHover,\n\t\tshouldFocusBlock,\n\t\tclientId,\n\t\trootClientId,\n\t\t__experimentalInsertionIndex,\n\t\tisAppender,\n\t] );\n\n\tconst blocksTab = useMemo( () => {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-inserter__block-list\">\n\t\t\t\t\t<BlockTypesTab\n\t\t\t\t\t\tref={ blockTypesTabRef }\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ showInserterHelpPanel && (\n\t\t\t\t\t<div className=\"block-editor-inserter__tips\">\n\t\t\t\t\t\t<VisuallyHidden as=\"h2\">\n\t\t\t\t\t\t\t{ __( 'A tip for using the block editor' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<Tips />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tonHover,\n\t\tshowMostUsedBlocks,\n\t\tshowInserterHelpPanel,\n\t] );\n\n\tconst patternsTab = useMemo( () => {\n\t\treturn (\n\t\t\t<BlockPatternsTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\tonSelectCategory={ onClickPatternCategory }\n\t\t\t\tselectedCategory={ selectedPatternCategory }\n\t\t\t>\n\t\t\t\t{ showPatternPanel && (\n\t\t\t\t\t<PatternCategoryPreviews\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockPatternsTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsertPattern,\n\t\tonClickPatternCategory,\n\t\tpatternFilter,\n\t\tselectedPatternCategory,\n\t\tshowPatternPanel,\n\t] );\n\n\tconst mediaTab = useMemo( () => {\n\t\treturn (\n\t\t\t<MediaTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tselectedCategory={ selectedMediaCategory }\n\t\t\t\tonSelectCategory={ setSelectedMediaCategory }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t>\n\t\t\t\t{ showMediaPanel && (\n\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</MediaTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tselectedMediaCategory,\n\t\tsetSelectedMediaCategory,\n\t\tshowMediaPanel,\n\t] );\n\n\tconst handleSetSelectedTab = ( value ) => {\n\t\t// If no longer on patterns tab remove the category setting.\n\t\tif ( value !== 'patterns' ) {\n\t\t\tsetSelectedPatternCategory( null );\n\t\t}\n\t\tsetSelectedTab( value );\n\t};\n\n\t// Focus first active tab, if any\n\tconst tabsRef = useRef();\n\tuseLayoutEffect( () => {\n\t\tif ( tabsRef.current ) {\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\ttabsRef.current\n\t\t\t\t\t.querySelector( '[role=\"tab\"][aria-selected=\"true\"]' )\n\t\t\t\t\t?.focus();\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'block-editor-inserter__menu', {\n\t\t\t\t'show-panel': showPatternPanel || showMediaPanel,\n\t\t\t\t'is-zoom-out': isZoomOutMode,\n\t\t\t} ) }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__main-area\">\n\t\t\t\t<TabbedSidebar\n\t\t\t\t\tref={ tabsRef }\n\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\tselectedTab={ selectedTab }\n\t\t\t\t\tcloseButtonLabel={ __( 'Close Block Inserter' ) }\n\t\t\t\t\ttabs={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'blocks',\n\t\t\t\t\t\t\ttitle: __( 'Blocks' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'blocks' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tblocksTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'patterns',\n\t\t\t\t\t\t\ttitle: __( 'Patterns' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'patterns' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tpatternsTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'media',\n\t\t\t\t\t\t\ttitle: __( 'Media' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ mediaTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-inserter__preview-container__popover\"\n\t\t\t\t\tplacement=\"right-start\"\n\t\t\t\t\toffset={ 16 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t\tanimate={ false }\n\t\t\t\t>\n\t\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport const PrivateInserterMenu = forwardRef( InserterMenu );\n\nfunction PublicInserterMenu( props, ref ) {\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ NOOP }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterMenu );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_components","_i18n","_compose","_data","_tips","_previewPanel","_blockTypesTab","_blockPatternsTab","_patternCategoryPreviews","_mediaTab","_searchResults","_useInsertionPoint","_store","_tabbedSidebar","_useZoomOut","_lockUnlock","_jsxRuntime","NOOP","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","onPatternCategorySelection","onClose","__experimentalInitialTab","__experimentalInitialCategory","ref","isZoomOutMode","useSelect","select","unlock","blockEditorStore","isZoomOut","hasSectionRootClientId","getSectionRootClientId","filterValue","setFilterValue","delayedFilterValue","useDebouncedInput","hoveredItem","setHoveredItem","useState","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","isLargeViewport","useViewportMatch","getInitialTab","selectedTab","setSelectedTab","shouldUseZoomOut","useZoomOut","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","useInsertionPoint","insertionIndex","blockTypesTabRef","useRef","onInsert","useCallback","blocks","meta","shouldForceFocusBlock","_rootClientId","window","requestAnimationFrame","current","contains","ownerDocument","activeElement","querySelector","focus","onInsertPattern","patternName","args","onHover","item","onClickPatternCategory","patternCategory","filter","showPatternPanel","showMediaPanel","inserterSearch","useMemo","jsxs","Fragment","children","jsx","SearchControl","__nextHasNoMarginBottom","className","onChange","value","label","__","placeholder","default","showBlockDirectory","prioritizePatterns","blocksTab","VisuallyHidden","as","patternsTab","onSelectCategory","selectedCategory","PatternCategoryPreviews","category","showTitlesAsTooltip","mediaTab","MediaTab","MediaCategoryPanel","handleSetSelectedTab","tabsRef","useLayoutEffect","clsx","closeButtonLabel","tabs","name","title","panel","Popover","placement","offset","focusOnMount","animate","PrivateInserterMenu","exports","forwardRef","PublicInserterMenu","props","_default"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseLayoutEffect,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDebouncedInput, useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Tips from './tips';\nimport InserterPreviewPanel from './preview-panel';\nimport BlockTypesTab from './block-types-tab';\nimport BlockPatternsTab from './block-patterns-tab';\nimport { PatternCategoryPreviews } from './block-patterns-tab/pattern-category-previews';\nimport { MediaTab, MediaCategoryPanel } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport TabbedSidebar from '../tabbed-sidebar';\nimport { useZoomOut } from '../../hooks/use-zoom-out';\nimport { unlock } from '../../lock-unlock';\n\nconst NOOP = () => {};\nfunction InserterMenu(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\t__experimentalInsertionIndex,\n\t\tonSelect,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks,\n\t\t__experimentalFilterValue = '',\n\t\tshouldFocusBlock = true,\n\t\tonPatternCategorySelection,\n\t\tonClose,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t},\n\tref\n) {\n\tconst isZoomOutMode = useSelect(\n\t\t( select ) => unlock( select( blockEditorStore ) ).isZoomOut(),\n\t\t[]\n\t);\n\tconst hasSectionRootClientId = useSelect(\n\t\t( select ) =>\n\t\t\t!! unlock( select( blockEditorStore ) ).getSectionRootClientId(),\n\t\t[]\n\t);\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] = useState(\n\t\t__experimentalInitialCategory\n\t);\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\n\tfunction getInitialTab() {\n\t\tif ( __experimentalInitialTab ) {\n\t\t\treturn __experimentalInitialTab;\n\t\t}\n\n\t\tif ( isZoomOutMode ) {\n\t\t\treturn 'patterns';\n\t\t}\n\n\t\treturn 'blocks';\n\t}\n\tconst [ selectedTab, setSelectedTab ] = useState( getInitialTab() );\n\n\tconst shouldUseZoomOut =\n\t\thasSectionRootClientId &&\n\t\t( selectedTab === 'patterns' || selectedTab === 'media' );\n\n\tuseZoomOut( shouldUseZoomOut && isLargeViewport );\n\n\tconst [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =\n\t\tuseInsertionPoint( {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\t\tshouldFocusBlock,\n\t\t} );\n\tconst blockTypesTabRef = useRef();\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock, _rootClientId ) => {\n\t\t\tonInsertBlocks(\n\t\t\t\tblocks,\n\t\t\t\tmeta,\n\t\t\t\tshouldForceFocusBlock,\n\t\t\t\t_rootClientId\n\t\t\t);\n\t\t\tonSelect( blocks );\n\n\t\t\t// Check for focus loss due to filtering blocks by selected block type\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\tif (\n\t\t\t\t\t! shouldFocusBlock &&\n\t\t\t\t\t! blockTypesTabRef.current?.contains(\n\t\t\t\t\t\tref.current.ownerDocument.activeElement\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\t// There has been a focus loss, so focus the first button in the block types tab\n\t\t\t\t\tblockTypesTabRef.current?.querySelector( 'button' ).focus();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t\t[ onInsertBlocks, onSelect, shouldFocusBlock ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName, ...args ) => {\n\t\t\tonToggleInsertionPoint( false );\n\t\t\tonInsertBlocks( blocks, { patternName }, ...args );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\n\t);\n\n\tconst onHover = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( item );\n\t\t\tsetHoveredItem( item );\n\t\t},\n\t\t[ onToggleInsertionPoint, setHoveredItem ]\n\t);\n\n\tconst onClickPatternCategory = useCallback(\n\t\t( patternCategory, filter ) => {\n\t\t\tsetSelectedPatternCategory( patternCategory );\n\t\t\tsetPatternFilter( filter );\n\t\t\tonPatternCategorySelection?.();\n\t\t},\n\t\t[ setSelectedPatternCategory, onPatternCategorySelection ]\n\t);\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\t!! selectedPatternCategory;\n\n\tconst showMediaPanel = selectedTab === 'media' && !! selectedMediaCategory;\n\n\tconst inserterSearch = useMemo( () => {\n\t\tif ( selectedTab === 'media' ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-editor-inserter__search\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tif ( hoveredItem ) {\n\t\t\t\t\t\t\tsetHoveredItem( null );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetFilterValue( value );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\tlabel={ __( 'Search' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\tprioritizePatterns={ selectedTab === 'patterns' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tselectedTab,\n\t\thoveredItem,\n\t\tsetHoveredItem,\n\t\tsetFilterValue,\n\t\tfilterValue,\n\t\tdelayedFilterValue,\n\t\tonSelect,\n\t\tonHover,\n\t\tshouldFocusBlock,\n\t\tclientId,\n\t\trootClientId,\n\t\t__experimentalInsertionIndex,\n\t\tisAppender,\n\t] );\n\n\tconst blocksTab = useMemo( () => {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-inserter__block-list\">\n\t\t\t\t\t<BlockTypesTab\n\t\t\t\t\t\tref={ blockTypesTabRef }\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ showInserterHelpPanel && (\n\t\t\t\t\t<div className=\"block-editor-inserter__tips\">\n\t\t\t\t\t\t<VisuallyHidden as=\"h2\">\n\t\t\t\t\t\t\t{ __( 'A tip for using the block editor' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<Tips />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tonHover,\n\t\tshowMostUsedBlocks,\n\t\tshowInserterHelpPanel,\n\t] );\n\n\tconst patternsTab = useMemo( () => {\n\t\treturn (\n\t\t\t<BlockPatternsTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\tonSelectCategory={ onClickPatternCategory }\n\t\t\t\tselectedCategory={ selectedPatternCategory }\n\t\t\t>\n\t\t\t\t{ showPatternPanel && (\n\t\t\t\t\t<PatternCategoryPreviews\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockPatternsTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsertPattern,\n\t\tonClickPatternCategory,\n\t\tpatternFilter,\n\t\tselectedPatternCategory,\n\t\tshowPatternPanel,\n\t] );\n\n\tconst mediaTab = useMemo( () => {\n\t\treturn (\n\t\t\t<MediaTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tselectedCategory={ selectedMediaCategory }\n\t\t\t\tonSelectCategory={ setSelectedMediaCategory }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t>\n\t\t\t\t{ showMediaPanel && (\n\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</MediaTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tselectedMediaCategory,\n\t\tsetSelectedMediaCategory,\n\t\tshowMediaPanel,\n\t] );\n\n\tconst handleSetSelectedTab = ( value ) => {\n\t\t// If no longer on patterns tab remove the category setting.\n\t\tif ( value !== 'patterns' ) {\n\t\t\tsetSelectedPatternCategory( null );\n\t\t}\n\t\tsetSelectedTab( value );\n\t};\n\n\t// Focus first active tab, if any\n\tconst tabsRef = useRef();\n\tuseLayoutEffect( () => {\n\t\tif ( tabsRef.current ) {\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\ttabsRef.current\n\t\t\t\t\t.querySelector( '[role=\"tab\"][aria-selected=\"true\"]' )\n\t\t\t\t\t?.focus();\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'block-editor-inserter__menu', {\n\t\t\t\t'show-panel': showPatternPanel || showMediaPanel,\n\t\t\t\t'is-zoom-out': isZoomOutMode,\n\t\t\t} ) }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__main-area\">\n\t\t\t\t<TabbedSidebar\n\t\t\t\t\tref={ tabsRef }\n\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\tselectedTab={ selectedTab }\n\t\t\t\t\tcloseButtonLabel={ __( 'Close Block Inserter' ) }\n\t\t\t\t\ttabs={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'blocks',\n\t\t\t\t\t\t\ttitle: __( 'Blocks' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'blocks' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tblocksTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'patterns',\n\t\t\t\t\t\t\ttitle: __( 'Patterns' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'patterns' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tpatternsTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'media',\n\t\t\t\t\t\t\ttitle: __( 'Media' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ mediaTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-inserter__preview-container__popover\"\n\t\t\t\t\tplacement=\"right-start\"\n\t\t\t\t\toffset={ 16 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t\tanimate={ false }\n\t\t\t\t>\n\t\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport const PrivateInserterMenu = forwardRef( InserterMenu );\n\nfunction PublicInserterMenu( props, ref ) {\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ NOOP }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterMenu );\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_icons","_jsxRuntime","ScreenHeader","title","jsx","__experimentalVStack","spacing","children","__experimentalView","__experimentalSpacer","marginBottom","paddingX","paddingY","jsxs","__experimentalHStack","Navigator","BackButton","style","minWidth","padding","icon","isRTL","chevronRight","chevronLeft","size","label","__","__experimentalHeading","level","MobileTabNavigation","categories","initialPath","className","Screen","path","__experimentalItemGroup","map","category","Button","name","as","Item","isAction","FlexBlock","Icon"],"sources":["@wordpress/block-editor/src/components/inserter/mobile-tab-navigation.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHeading as Heading,\n\t__experimentalView as View,\n\tNavigator,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { Icon, chevronRight, chevronLeft } from '@wordpress/icons';\n\nfunction ScreenHeader( { title } ) {\n\treturn (\n\t\t<VStack spacing={ 0 }>\n\t\t\t<View>\n\t\t\t\t<Spacer marginBottom={ 0 } paddingX={ 4 } paddingY={ 3 }>\n\t\t\t\t\t<HStack spacing={ 2 }>\n\t\t\t\t\t\t<Navigator.BackButton\n\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t// TODO: This style override is also used in ToolsPanelHeader.\n\t\t\t\t\t\t\t\t// It should be supported out-of-the-box by Button.\n\t\t\t\t\t\t\t\t{ minWidth: 24, padding: 0 }\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer>\n\t\t\t\t\t\t\t<Heading level={ 5 }>{ title }</Heading>\n\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t</HStack>\n\t\t\t\t</Spacer>\n\t\t\t</View>\n\t\t</VStack>\n\t);\n}\n\nexport default function MobileTabNavigation( { categories, children } ) {\n\treturn (\n\t\t<Navigator\n\t\t\tinitialPath=\"/\"\n\t\t\tclassName=\"block-editor-inserter__mobile-tab-navigation\"\n\t\t>\n\t\t\t<Navigator.Screen path=\"/\">\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t\t<Navigator.Button\n\t\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t\t\t\tas={ Item }\n\t\t\t\t\t\t\tisAction\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t\t<FlexBlock>{ category.label }</FlexBlock>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronLeft : chevronRight\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t</Navigator.Button>\n\t\t\t\t\t) ) }\n\t\t\t\t</ItemGroup>\n\t\t\t</Navigator.Screen>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Navigator.Screen\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t>\n\t\t\t\t\t<ScreenHeader title={ __( 'Back' ) } />\n\t\t\t\t\t{ children( category ) }\n\t\t\t\t</Navigator.Screen>\n\t\t\t) ) }\n\t\t</Navigator>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_icons","_jsxRuntime","ScreenHeader","title","jsx","__experimentalVStack","spacing","children","__experimentalView","__experimentalSpacer","marginBottom","paddingX","paddingY","jsxs","__experimentalHStack","Navigator","BackButton","style","minWidth","padding","icon","isRTL","chevronRight","chevronLeft","size","label","__","__experimentalHeading","level","MobileTabNavigation","categories","initialPath","className","Screen","path","__experimentalItemGroup","map","category","Button","name","as","Item","isAction","FlexBlock","Icon"],"sources":["@wordpress/block-editor/src/components/inserter/mobile-tab-navigation.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHeading as Heading,\n\t__experimentalView as View,\n\tNavigator,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { Icon, chevronRight, chevronLeft } from '@wordpress/icons';\n\nfunction ScreenHeader( { title } ) {\n\treturn (\n\t\t<VStack spacing={ 0 }>\n\t\t\t<View>\n\t\t\t\t<Spacer marginBottom={ 0 } paddingX={ 4 } paddingY={ 3 }>\n\t\t\t\t\t<HStack spacing={ 2 }>\n\t\t\t\t\t\t<Navigator.BackButton\n\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t// TODO: This style override is also used in ToolsPanelHeader.\n\t\t\t\t\t\t\t\t// It should be supported out-of-the-box by Button.\n\t\t\t\t\t\t\t\t{ minWidth: 24, padding: 0 }\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer>\n\t\t\t\t\t\t\t<Heading level={ 5 }>{ title }</Heading>\n\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t</HStack>\n\t\t\t\t</Spacer>\n\t\t\t</View>\n\t\t</VStack>\n\t);\n}\n\nexport default function MobileTabNavigation( { categories, children } ) {\n\treturn (\n\t\t<Navigator\n\t\t\tinitialPath=\"/\"\n\t\t\tclassName=\"block-editor-inserter__mobile-tab-navigation\"\n\t\t>\n\t\t\t<Navigator.Screen path=\"/\">\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t\t<Navigator.Button\n\t\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t\t\t\tas={ Item }\n\t\t\t\t\t\t\tisAction\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t\t<FlexBlock>{ category.label }</FlexBlock>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronLeft : chevronRight\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t</Navigator.Button>\n\t\t\t\t\t) ) }\n\t\t\t\t</ItemGroup>\n\t\t\t</Navigator.Screen>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Navigator.Screen\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t>\n\t\t\t\t\t<ScreenHeader title={ __( 'Back' ) } />\n\t\t\t\t\t{ children( category ) }\n\t\t\t\t</Navigator.Screen>\n\t\t\t) ) }\n\t\t</Navigator>\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");
@@ -1 +1 @@
1
- {"version":3,"names":["_removeAccents","_interopRequireDefault","require","_changeCase","defaultGetName","item","name","defaultGetTitle","title","defaultGetDescription","description","defaultGetKeywords","keywords","defaultGetCategory","category","defaultGetCollection","splitRegexp","stripRegexp","extractedWords","Map","normalizedStrings","extractWords","input","has","get","result","noCase","split","filter","Boolean","set","normalizeString","removeAccents","replace","toLowerCase","getNormalizedSearchTerms","exports","removeMatchingTerms","unmatchedTerms","unprocessedTerms","term","some","unprocessedTerm","includes","searchBlockItems","items","categories","collections","searchInput","normalizedSearchTerms","length","config","getCategory","find","slug","getCollection","searchItems","rankedItems","map","getItemSearchRank","rank","sort","rank1","rank2","searchTerm","getName","getTitle","getDescription","getKeywords","collection","normalizedSearchInput","normalizedTitle","startsWith","terms","join","isCoreBlockVariation","id"],"sources":["@wordpress/block-editor/src/components/inserter/search-items.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\nimport { noCase } from 'change-case';\n\n// Default search helpers.\nconst defaultGetName = ( item ) => item.name || '';\nconst defaultGetTitle = ( item ) => item.title;\nconst defaultGetDescription = ( item ) => item.description || '';\nconst defaultGetKeywords = ( item ) => item.keywords || [];\nconst defaultGetCategory = ( item ) => item.category;\nconst defaultGetCollection = () => null;\n\n// Normalization regexes\nconst splitRegexp = [\n\t/([\\p{Ll}\\p{Lo}\\p{N}])([\\p{Lu}\\p{Lt}])/gu, // One lowercase or digit, followed by one uppercase.\n\t/([\\p{Lu}\\p{Lt}])([\\p{Lu}\\p{Lt}][\\p{Ll}\\p{Lo}])/gu, // One uppercase followed by one uppercase and one lowercase.\n];\nconst stripRegexp = /(\\p{C}|\\p{P}|\\p{S})+/giu; // Anything that's not a punctuation, symbol or control/format character.\n\n// Normalization cache\nconst extractedWords = new Map();\nconst normalizedStrings = new Map();\n\n/**\n * Extracts words from an input string.\n *\n * @param {string} input The input string.\n *\n * @return {Array} Words, extracted from the input string.\n */\nexport function extractWords( input = '' ) {\n\tif ( extractedWords.has( input ) ) {\n\t\treturn extractedWords.get( input );\n\t}\n\n\tconst result = noCase( input, {\n\t\tsplitRegexp,\n\t\tstripRegexp,\n\t} )\n\t\t.split( ' ' )\n\t\t.filter( Boolean );\n\n\textractedWords.set( input, result );\n\n\treturn result;\n}\n\n/**\n * Sanitizes the search input string.\n *\n * @param {string} input The search input to normalize.\n *\n * @return {string} The normalized search input.\n */\nexport function normalizeString( input = '' ) {\n\tif ( normalizedStrings.has( input ) ) {\n\t\treturn normalizedStrings.get( input );\n\t}\n\n\t// Disregard diacritics.\n\t// Input: \"média\"\n\tlet result = removeAccents( input );\n\n\t// Accommodate leading slash, matching autocomplete expectations.\n\t// Input: \"/media\"\n\tresult = result.replace( /^\\//, '' );\n\n\t// Lowercase.\n\t// Input: \"MEDIA\"\n\tresult = result.toLowerCase();\n\n\tnormalizedStrings.set( input, result );\n\n\treturn result;\n}\n\n/**\n * Converts the search term into a list of normalized terms.\n *\n * @param {string} input The search term to normalize.\n *\n * @return {string[]} The normalized list of search terms.\n */\nexport const getNormalizedSearchTerms = ( input = '' ) => {\n\treturn extractWords( normalizeString( input ) );\n};\n\nconst removeMatchingTerms = ( unmatchedTerms, unprocessedTerms ) => {\n\treturn unmatchedTerms.filter(\n\t\t( term ) =>\n\t\t\t! getNormalizedSearchTerms( unprocessedTerms ).some(\n\t\t\t\t( unprocessedTerm ) => unprocessedTerm.includes( term )\n\t\t\t)\n\t);\n};\n\nexport const searchBlockItems = (\n\titems,\n\tcategories,\n\tcollections,\n\tsearchInput\n) => {\n\tconst normalizedSearchTerms = getNormalizedSearchTerms( searchInput );\n\tif ( normalizedSearchTerms.length === 0 ) {\n\t\treturn items;\n\t}\n\n\tconst config = {\n\t\tgetCategory: ( item ) =>\n\t\t\tcategories.find( ( { slug } ) => slug === item.category )?.title,\n\t\tgetCollection: ( item ) =>\n\t\t\tcollections[ item.name.split( '/' )[ 0 ] ]?.title,\n\t};\n\n\treturn searchItems( items, searchInput, config );\n};\n\n/**\n * Filters an item list given a search term.\n *\n * @param {Array} items Item list\n * @param {string} searchInput Search input.\n * @param {Object} config Search Config.\n *\n * @return {Array} Filtered item list.\n */\nexport const searchItems = ( items = [], searchInput = '', config = {} ) => {\n\tconst normalizedSearchTerms = getNormalizedSearchTerms( searchInput );\n\tif ( normalizedSearchTerms.length === 0 ) {\n\t\treturn items;\n\t}\n\n\tconst rankedItems = items\n\t\t.map( ( item ) => {\n\t\t\treturn [ item, getItemSearchRank( item, searchInput, config ) ];\n\t\t} )\n\t\t.filter( ( [ , rank ] ) => rank > 0 );\n\n\trankedItems.sort( ( [ , rank1 ], [ , rank2 ] ) => rank2 - rank1 );\n\treturn rankedItems.map( ( [ item ] ) => item );\n};\n\n/**\n * Get the search rank for a given item and a specific search term.\n * The better the match, the higher the rank.\n * If the rank equals 0, it should be excluded from the results.\n *\n * @param {Object} item Item to filter.\n * @param {string} searchTerm Search term.\n * @param {Object} config Search Config.\n *\n * @return {number} Search Rank.\n */\nexport function getItemSearchRank( item, searchTerm, config = {} ) {\n\tconst {\n\t\tgetName = defaultGetName,\n\t\tgetTitle = defaultGetTitle,\n\t\tgetDescription = defaultGetDescription,\n\t\tgetKeywords = defaultGetKeywords,\n\t\tgetCategory = defaultGetCategory,\n\t\tgetCollection = defaultGetCollection,\n\t} = config;\n\n\tconst name = getName( item );\n\tconst title = getTitle( item );\n\tconst description = getDescription( item );\n\tconst keywords = getKeywords( item );\n\tconst category = getCategory( item );\n\tconst collection = getCollection( item );\n\n\tconst normalizedSearchInput = normalizeString( searchTerm );\n\tconst normalizedTitle = normalizeString( title );\n\n\tlet rank = 0;\n\n\t// Prefers exact matches\n\t// Then prefers if the beginning of the title matches the search term\n\t// name, keywords, categories, collection, variations match come later.\n\tif ( normalizedSearchInput === normalizedTitle ) {\n\t\trank += 30;\n\t} else if ( normalizedTitle.startsWith( normalizedSearchInput ) ) {\n\t\trank += 20;\n\t} else {\n\t\tconst terms = [\n\t\t\tname,\n\t\t\ttitle,\n\t\t\tdescription,\n\t\t\t...keywords,\n\t\t\tcategory,\n\t\t\tcollection,\n\t\t].join( ' ' );\n\t\tconst normalizedSearchTerms = extractWords( normalizedSearchInput );\n\t\tconst unmatchedTerms = removeMatchingTerms(\n\t\t\tnormalizedSearchTerms,\n\t\t\tterms\n\t\t);\n\n\t\tif ( unmatchedTerms.length === 0 ) {\n\t\t\trank += 10;\n\t\t}\n\t}\n\n\t// Give a better rank to \"core\" namespaced items.\n\tif ( rank !== 0 && name.startsWith( 'core/' ) ) {\n\t\tconst isCoreBlockVariation = name !== item.id;\n\t\t// Give a bit better rank to \"core\" blocks over \"core\" block variations.\n\t\trank += isCoreBlockVariation ? 1 : 2;\n\t}\n\n\treturn rank;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_removeAccents","_interopRequireDefault","require","_changeCase","defaultGetName","item","name","defaultGetTitle","title","defaultGetDescription","description","defaultGetKeywords","keywords","defaultGetCategory","category","defaultGetCollection","splitRegexp","stripRegexp","extractedWords","Map","normalizedStrings","extractWords","input","has","get","result","noCase","split","filter","Boolean","set","normalizeString","removeAccents","replace","toLowerCase","getNormalizedSearchTerms","exports","removeMatchingTerms","unmatchedTerms","unprocessedTerms","term","some","unprocessedTerm","includes","searchBlockItems","items","categories","collections","searchInput","normalizedSearchTerms","length","config","getCategory","find","slug","getCollection","searchItems","rankedItems","map","getItemSearchRank","rank","sort","rank1","rank2","searchTerm","getName","getTitle","getDescription","getKeywords","collection","normalizedSearchInput","normalizedTitle","startsWith","terms","join","isCoreBlockVariation","id"],"sources":["@wordpress/block-editor/src/components/inserter/search-items.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\nimport { noCase } from 'change-case';\n\n// Default search helpers.\nconst defaultGetName = ( item ) => item.name || '';\nconst defaultGetTitle = ( item ) => item.title;\nconst defaultGetDescription = ( item ) => item.description || '';\nconst defaultGetKeywords = ( item ) => item.keywords || [];\nconst defaultGetCategory = ( item ) => item.category;\nconst defaultGetCollection = () => null;\n\n// Normalization regexes\nconst splitRegexp = [\n\t/([\\p{Ll}\\p{Lo}\\p{N}])([\\p{Lu}\\p{Lt}])/gu, // One lowercase or digit, followed by one uppercase.\n\t/([\\p{Lu}\\p{Lt}])([\\p{Lu}\\p{Lt}][\\p{Ll}\\p{Lo}])/gu, // One uppercase followed by one uppercase and one lowercase.\n];\nconst stripRegexp = /(\\p{C}|\\p{P}|\\p{S})+/giu; // Anything that's not a punctuation, symbol or control/format character.\n\n// Normalization cache\nconst extractedWords = new Map();\nconst normalizedStrings = new Map();\n\n/**\n * Extracts words from an input string.\n *\n * @param {string} input The input string.\n *\n * @return {Array} Words, extracted from the input string.\n */\nexport function extractWords( input = '' ) {\n\tif ( extractedWords.has( input ) ) {\n\t\treturn extractedWords.get( input );\n\t}\n\n\tconst result = noCase( input, {\n\t\tsplitRegexp,\n\t\tstripRegexp,\n\t} )\n\t\t.split( ' ' )\n\t\t.filter( Boolean );\n\n\textractedWords.set( input, result );\n\n\treturn result;\n}\n\n/**\n * Sanitizes the search input string.\n *\n * @param {string} input The search input to normalize.\n *\n * @return {string} The normalized search input.\n */\nexport function normalizeString( input = '' ) {\n\tif ( normalizedStrings.has( input ) ) {\n\t\treturn normalizedStrings.get( input );\n\t}\n\n\t// Disregard diacritics.\n\t// Input: \"média\"\n\tlet result = removeAccents( input );\n\n\t// Accommodate leading slash, matching autocomplete expectations.\n\t// Input: \"/media\"\n\tresult = result.replace( /^\\//, '' );\n\n\t// Lowercase.\n\t// Input: \"MEDIA\"\n\tresult = result.toLowerCase();\n\n\tnormalizedStrings.set( input, result );\n\n\treturn result;\n}\n\n/**\n * Converts the search term into a list of normalized terms.\n *\n * @param {string} input The search term to normalize.\n *\n * @return {string[]} The normalized list of search terms.\n */\nexport const getNormalizedSearchTerms = ( input = '' ) => {\n\treturn extractWords( normalizeString( input ) );\n};\n\nconst removeMatchingTerms = ( unmatchedTerms, unprocessedTerms ) => {\n\treturn unmatchedTerms.filter(\n\t\t( term ) =>\n\t\t\t! getNormalizedSearchTerms( unprocessedTerms ).some(\n\t\t\t\t( unprocessedTerm ) => unprocessedTerm.includes( term )\n\t\t\t)\n\t);\n};\n\nexport const searchBlockItems = (\n\titems,\n\tcategories,\n\tcollections,\n\tsearchInput\n) => {\n\tconst normalizedSearchTerms = getNormalizedSearchTerms( searchInput );\n\tif ( normalizedSearchTerms.length === 0 ) {\n\t\treturn items;\n\t}\n\n\tconst config = {\n\t\tgetCategory: ( item ) =>\n\t\t\tcategories.find( ( { slug } ) => slug === item.category )?.title,\n\t\tgetCollection: ( item ) =>\n\t\t\tcollections[ item.name.split( '/' )[ 0 ] ]?.title,\n\t};\n\n\treturn searchItems( items, searchInput, config );\n};\n\n/**\n * Filters an item list given a search term.\n *\n * @param {Array} items Item list\n * @param {string} searchInput Search input.\n * @param {Object} config Search Config.\n *\n * @return {Array} Filtered item list.\n */\nexport const searchItems = ( items = [], searchInput = '', config = {} ) => {\n\tconst normalizedSearchTerms = getNormalizedSearchTerms( searchInput );\n\tif ( normalizedSearchTerms.length === 0 ) {\n\t\treturn items;\n\t}\n\n\tconst rankedItems = items\n\t\t.map( ( item ) => {\n\t\t\treturn [ item, getItemSearchRank( item, searchInput, config ) ];\n\t\t} )\n\t\t.filter( ( [ , rank ] ) => rank > 0 );\n\n\trankedItems.sort( ( [ , rank1 ], [ , rank2 ] ) => rank2 - rank1 );\n\treturn rankedItems.map( ( [ item ] ) => item );\n};\n\n/**\n * Get the search rank for a given item and a specific search term.\n * The better the match, the higher the rank.\n * If the rank equals 0, it should be excluded from the results.\n *\n * @param {Object} item Item to filter.\n * @param {string} searchTerm Search term.\n * @param {Object} config Search Config.\n *\n * @return {number} Search Rank.\n */\nexport function getItemSearchRank( item, searchTerm, config = {} ) {\n\tconst {\n\t\tgetName = defaultGetName,\n\t\tgetTitle = defaultGetTitle,\n\t\tgetDescription = defaultGetDescription,\n\t\tgetKeywords = defaultGetKeywords,\n\t\tgetCategory = defaultGetCategory,\n\t\tgetCollection = defaultGetCollection,\n\t} = config;\n\n\tconst name = getName( item );\n\tconst title = getTitle( item );\n\tconst description = getDescription( item );\n\tconst keywords = getKeywords( item );\n\tconst category = getCategory( item );\n\tconst collection = getCollection( item );\n\n\tconst normalizedSearchInput = normalizeString( searchTerm );\n\tconst normalizedTitle = normalizeString( title );\n\n\tlet rank = 0;\n\n\t// Prefers exact matches\n\t// Then prefers if the beginning of the title matches the search term\n\t// name, keywords, categories, collection, variations match come later.\n\tif ( normalizedSearchInput === normalizedTitle ) {\n\t\trank += 30;\n\t} else if ( normalizedTitle.startsWith( normalizedSearchInput ) ) {\n\t\trank += 20;\n\t} else {\n\t\tconst terms = [\n\t\t\tname,\n\t\t\ttitle,\n\t\t\tdescription,\n\t\t\t...keywords,\n\t\t\tcategory,\n\t\t\tcollection,\n\t\t].join( ' ' );\n\t\tconst normalizedSearchTerms = extractWords( normalizedSearchInput );\n\t\tconst unmatchedTerms = removeMatchingTerms(\n\t\t\tnormalizedSearchTerms,\n\t\t\tterms\n\t\t);\n\n\t\tif ( unmatchedTerms.length === 0 ) {\n\t\t\trank += 10;\n\t\t}\n\t}\n\n\t// Give a better rank to \"core\" namespaced items.\n\tif ( rank !== 0 && name.startsWith( 'core/' ) ) {\n\t\tconst isCoreBlockVariation = name !== item.id;\n\t\t// Give a bit better rank to \"core\" blocks over \"core\" block variations.\n\t\trank += isCoreBlockVariation ? 1 : 2;\n\t}\n\n\treturn rank;\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");
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_i18n","_components","_compose","_a11y","_data","_blockTypesList","_interopRequireDefault","_blockPatternsList","_inserterMenuExtension","_panel","_noResults","_useInsertionPoint","_usePatternsState","_useBlockTypesState","_searchItems","_inserterListbox","_sorting","_orderInserterBlockItems","_store","_jsxRuntime","INITIAL_INSERTER_RESULTS","EMPTY_ARRAY","InserterSearchResults","filterValue","onSelect","onHover","onHoverPattern","rootClientId","clientId","isAppender","__experimentalInsertionIndex","maxBlockPatterns","maxBlockTypes","showBlockDirectory","isDraggable","shouldFocusBlock","prioritizePatterns","selectBlockOnInsert","isQuick","debouncedSpeak","useDebounce","speak","prioritizedBlocks","useSelect","select","blockListSettings","blockEditorStore","getBlockListSettings","prioritizedInserterBlocks","destinationRootClientId","onInsertBlocks","useInsertionPoint","insertionIndex","blockTypes","blockTypeCategories","blockTypeCollections","onSelectBlockType","useBlockTypesState","patterns","onClickPattern","usePatternsState","filteredBlockPatterns","useMemo","results","searchItems","undefined","slice","maxBlockTypesToShow","length","filteredBlockTypes","nonPatternBlockTypes","filter","blockType","name","orderedItems","orderBy","orderInserterBlockItems","searchBlockItems","useEffect","count","resultsFoundMessage","sprintf","_n","currentShownBlockTypes","useAsyncList","step","hasItems","blocksUI","jsx","default","title","VisuallyHidden","children","__","items","label","patternsUI","className","blockPatterns","jsxs","Slot","fillProps","fills","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/search-results.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useEffect } from '@wordpress/element';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { VisuallyHidden } from '@wordpress/components';\nimport { useDebounce, useAsyncList } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport BlockPatternsList from '../block-patterns-list';\nimport __unstableInserterMenuExtension from '../inserter-menu-extension';\nimport InserterPanel from './panel';\nimport InserterNoResults from './no-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport usePatternsState from './hooks/use-patterns-state';\nimport useBlockTypesState from './hooks/use-block-types-state';\nimport { searchBlockItems, searchItems } from './search-items';\nimport InserterListbox from '../inserter-listbox';\nimport { orderBy } from '../../utils/sorting';\nimport { orderInserterBlockItems } from '../../utils/order-inserter-block-items';\nimport { store as blockEditorStore } from '../../store';\n\nconst INITIAL_INSERTER_RESULTS = 9;\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation and rerendering the component.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nfunction InserterSearchResults( {\n\tfilterValue,\n\tonSelect,\n\tonHover,\n\tonHoverPattern,\n\trootClientId,\n\tclientId,\n\tisAppender,\n\t__experimentalInsertionIndex,\n\tmaxBlockPatterns,\n\tmaxBlockTypes,\n\tshowBlockDirectory = false,\n\tisDraggable = true,\n\tshouldFocusBlock = true,\n\tprioritizePatterns,\n\tselectBlockOnInsert,\n\tisQuick,\n} ) {\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\n\tconst { prioritizedBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst blockListSettings =\n\t\t\t\tselect( blockEditorStore ).getBlockListSettings( rootClientId );\n\n\t\t\treturn {\n\t\t\t\tprioritizedBlocks:\n\t\t\t\t\tblockListSettings?.prioritizedInserterBlocks || EMPTY_ARRAY,\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\tconst [ destinationRootClientId, onInsertBlocks ] = useInsertionPoint( {\n\t\tonSelect,\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\tshouldFocusBlock,\n\t\tselectBlockOnInsert,\n\t} );\n\tconst [\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tonSelectBlockType,\n\t] = useBlockTypesState( destinationRootClientId, onInsertBlocks, isQuick );\n\tconst [ patterns, , onClickPattern ] = usePatternsState(\n\t\tonInsertBlocks,\n\t\tdestinationRootClientId\n\t);\n\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\tif ( maxBlockPatterns === 0 ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst results = searchItems( patterns, filterValue );\n\t\treturn maxBlockPatterns !== undefined\n\t\t\t? results.slice( 0, maxBlockPatterns )\n\t\t\t: results;\n\t}, [ filterValue, patterns, maxBlockPatterns ] );\n\n\tlet maxBlockTypesToShow = maxBlockTypes;\n\tif ( prioritizePatterns && filteredBlockPatterns.length > 2 ) {\n\t\tmaxBlockTypesToShow = 0;\n\t}\n\n\tconst filteredBlockTypes = useMemo( () => {\n\t\tif ( maxBlockTypesToShow === 0 ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst nonPatternBlockTypes = blockTypes.filter(\n\t\t\t( blockType ) => blockType.name !== 'core/block'\n\t\t);\n\t\tlet orderedItems = orderBy( nonPatternBlockTypes, 'frecency', 'desc' );\n\n\t\tif ( ! filterValue && prioritizedBlocks.length ) {\n\t\t\torderedItems = orderInserterBlockItems(\n\t\t\t\torderedItems,\n\t\t\t\tprioritizedBlocks\n\t\t\t);\n\t\t}\n\n\t\tconst results = searchBlockItems(\n\t\t\torderedItems,\n\t\t\tblockTypeCategories,\n\t\t\tblockTypeCollections,\n\t\t\tfilterValue\n\t\t);\n\n\t\treturn maxBlockTypesToShow !== undefined\n\t\t\t? results.slice( 0, maxBlockTypesToShow )\n\t\t\t: results;\n\t}, [\n\t\tfilterValue,\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tmaxBlockTypesToShow,\n\t\tprioritizedBlocks,\n\t] );\n\n\t// Announce search results on change.\n\tuseEffect( () => {\n\t\tif ( ! filterValue ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = filteredBlockTypes.length + filteredBlockPatterns.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [\n\t\tfilterValue,\n\t\tdebouncedSpeak,\n\t\tfilteredBlockTypes,\n\t\tfilteredBlockPatterns,\n\t] );\n\n\tconst currentShownBlockTypes = useAsyncList( filteredBlockTypes, {\n\t\tstep: INITIAL_INSERTER_RESULTS,\n\t} );\n\n\tconst hasItems =\n\t\tfilteredBlockTypes.length > 0 || filteredBlockPatterns.length > 0;\n\n\tconst blocksUI = !! filteredBlockTypes.length && (\n\t\t<InserterPanel\n\t\t\ttitle={ <VisuallyHidden>{ __( 'Blocks' ) }</VisuallyHidden> }\n\t\t>\n\t\t\t<BlockTypesList\n\t\t\t\titems={ currentShownBlockTypes }\n\t\t\t\tonSelect={ onSelectBlockType }\n\t\t\t\tonHover={ onHover }\n\t\t\t\tlabel={ __( 'Blocks' ) }\n\t\t\t\tisDraggable={ isDraggable }\n\t\t\t/>\n\t\t</InserterPanel>\n\t);\n\n\tconst patternsUI = !! filteredBlockPatterns.length && (\n\t\t<InserterPanel\n\t\t\ttitle={\n\t\t\t\t<VisuallyHidden>{ __( 'Block patterns' ) }</VisuallyHidden>\n\t\t\t}\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__quick-inserter-patterns\">\n\t\t\t\t<BlockPatternsList\n\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\tonClickPattern={ onClickPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</InserterPanel>\n\t);\n\n\treturn (\n\t\t<InserterListbox>\n\t\t\t{ ! showBlockDirectory && ! hasItems && <InserterNoResults /> }\n\n\t\t\t{ prioritizePatterns ? patternsUI : blocksUI }\n\n\t\t\t{ !! filteredBlockTypes.length &&\n\t\t\t\t!! filteredBlockPatterns.length && (\n\t\t\t\t\t<div className=\"block-editor-inserter__quick-inserter-separator\" />\n\t\t\t\t) }\n\n\t\t\t{ prioritizePatterns ? blocksUI : patternsUI }\n\n\t\t\t{ showBlockDirectory && (\n\t\t\t\t<__unstableInserterMenuExtension.Slot\n\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\tonSelect: onSelectBlockType,\n\t\t\t\t\t\tonHover,\n\t\t\t\t\t\tfilterValue,\n\t\t\t\t\t\thasItems,\n\t\t\t\t\t\trootClientId: destinationRootClientId,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( fills ) => {\n\t\t\t\t\t\tif ( fills.length ) {\n\t\t\t\t\t\t\treturn fills;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( ! hasItems ) {\n\t\t\t\t\t\t\treturn <InserterNoResults />;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t} }\n\t\t\t\t</__unstableInserterMenuExtension.Slot>\n\t\t\t) }\n\t\t</InserterListbox>\n\t);\n}\n\nexport default InserterSearchResults;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_i18n","_components","_compose","_a11y","_data","_blockTypesList","_interopRequireDefault","_blockPatternsList","_inserterMenuExtension","_panel","_noResults","_useInsertionPoint","_usePatternsState","_useBlockTypesState","_searchItems","_inserterListbox","_sorting","_orderInserterBlockItems","_store","_jsxRuntime","INITIAL_INSERTER_RESULTS","EMPTY_ARRAY","InserterSearchResults","filterValue","onSelect","onHover","onHoverPattern","rootClientId","clientId","isAppender","__experimentalInsertionIndex","maxBlockPatterns","maxBlockTypes","showBlockDirectory","isDraggable","shouldFocusBlock","prioritizePatterns","selectBlockOnInsert","isQuick","debouncedSpeak","useDebounce","speak","prioritizedBlocks","useSelect","select","blockListSettings","blockEditorStore","getBlockListSettings","prioritizedInserterBlocks","destinationRootClientId","onInsertBlocks","useInsertionPoint","insertionIndex","blockTypes","blockTypeCategories","blockTypeCollections","onSelectBlockType","useBlockTypesState","patterns","onClickPattern","usePatternsState","filteredBlockPatterns","useMemo","results","searchItems","undefined","slice","maxBlockTypesToShow","length","filteredBlockTypes","nonPatternBlockTypes","filter","blockType","name","orderedItems","orderBy","orderInserterBlockItems","searchBlockItems","useEffect","count","resultsFoundMessage","sprintf","_n","currentShownBlockTypes","useAsyncList","step","hasItems","blocksUI","jsx","default","title","VisuallyHidden","children","__","items","label","patternsUI","className","blockPatterns","jsxs","Slot","fillProps","fills","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/search-results.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useEffect } from '@wordpress/element';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { VisuallyHidden } from '@wordpress/components';\nimport { useDebounce, useAsyncList } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport BlockPatternsList from '../block-patterns-list';\nimport __unstableInserterMenuExtension from '../inserter-menu-extension';\nimport InserterPanel from './panel';\nimport InserterNoResults from './no-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport usePatternsState from './hooks/use-patterns-state';\nimport useBlockTypesState from './hooks/use-block-types-state';\nimport { searchBlockItems, searchItems } from './search-items';\nimport InserterListbox from '../inserter-listbox';\nimport { orderBy } from '../../utils/sorting';\nimport { orderInserterBlockItems } from '../../utils/order-inserter-block-items';\nimport { store as blockEditorStore } from '../../store';\n\nconst INITIAL_INSERTER_RESULTS = 9;\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation and rerendering the component.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nfunction InserterSearchResults( {\n\tfilterValue,\n\tonSelect,\n\tonHover,\n\tonHoverPattern,\n\trootClientId,\n\tclientId,\n\tisAppender,\n\t__experimentalInsertionIndex,\n\tmaxBlockPatterns,\n\tmaxBlockTypes,\n\tshowBlockDirectory = false,\n\tisDraggable = true,\n\tshouldFocusBlock = true,\n\tprioritizePatterns,\n\tselectBlockOnInsert,\n\tisQuick,\n} ) {\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\n\tconst { prioritizedBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst blockListSettings =\n\t\t\t\tselect( blockEditorStore ).getBlockListSettings( rootClientId );\n\n\t\t\treturn {\n\t\t\t\tprioritizedBlocks:\n\t\t\t\t\tblockListSettings?.prioritizedInserterBlocks || EMPTY_ARRAY,\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\tconst [ destinationRootClientId, onInsertBlocks ] = useInsertionPoint( {\n\t\tonSelect,\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\tshouldFocusBlock,\n\t\tselectBlockOnInsert,\n\t} );\n\tconst [\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tonSelectBlockType,\n\t] = useBlockTypesState( destinationRootClientId, onInsertBlocks, isQuick );\n\tconst [ patterns, , onClickPattern ] = usePatternsState(\n\t\tonInsertBlocks,\n\t\tdestinationRootClientId\n\t);\n\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\tif ( maxBlockPatterns === 0 ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst results = searchItems( patterns, filterValue );\n\t\treturn maxBlockPatterns !== undefined\n\t\t\t? results.slice( 0, maxBlockPatterns )\n\t\t\t: results;\n\t}, [ filterValue, patterns, maxBlockPatterns ] );\n\n\tlet maxBlockTypesToShow = maxBlockTypes;\n\tif ( prioritizePatterns && filteredBlockPatterns.length > 2 ) {\n\t\tmaxBlockTypesToShow = 0;\n\t}\n\n\tconst filteredBlockTypes = useMemo( () => {\n\t\tif ( maxBlockTypesToShow === 0 ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst nonPatternBlockTypes = blockTypes.filter(\n\t\t\t( blockType ) => blockType.name !== 'core/block'\n\t\t);\n\t\tlet orderedItems = orderBy( nonPatternBlockTypes, 'frecency', 'desc' );\n\n\t\tif ( ! filterValue && prioritizedBlocks.length ) {\n\t\t\torderedItems = orderInserterBlockItems(\n\t\t\t\torderedItems,\n\t\t\t\tprioritizedBlocks\n\t\t\t);\n\t\t}\n\n\t\tconst results = searchBlockItems(\n\t\t\torderedItems,\n\t\t\tblockTypeCategories,\n\t\t\tblockTypeCollections,\n\t\t\tfilterValue\n\t\t);\n\n\t\treturn maxBlockTypesToShow !== undefined\n\t\t\t? results.slice( 0, maxBlockTypesToShow )\n\t\t\t: results;\n\t}, [\n\t\tfilterValue,\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tmaxBlockTypesToShow,\n\t\tprioritizedBlocks,\n\t] );\n\n\t// Announce search results on change.\n\tuseEffect( () => {\n\t\tif ( ! filterValue ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = filteredBlockTypes.length + filteredBlockPatterns.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [\n\t\tfilterValue,\n\t\tdebouncedSpeak,\n\t\tfilteredBlockTypes,\n\t\tfilteredBlockPatterns,\n\t] );\n\n\tconst currentShownBlockTypes = useAsyncList( filteredBlockTypes, {\n\t\tstep: INITIAL_INSERTER_RESULTS,\n\t} );\n\n\tconst hasItems =\n\t\tfilteredBlockTypes.length > 0 || filteredBlockPatterns.length > 0;\n\n\tconst blocksUI = !! filteredBlockTypes.length && (\n\t\t<InserterPanel\n\t\t\ttitle={ <VisuallyHidden>{ __( 'Blocks' ) }</VisuallyHidden> }\n\t\t>\n\t\t\t<BlockTypesList\n\t\t\t\titems={ currentShownBlockTypes }\n\t\t\t\tonSelect={ onSelectBlockType }\n\t\t\t\tonHover={ onHover }\n\t\t\t\tlabel={ __( 'Blocks' ) }\n\t\t\t\tisDraggable={ isDraggable }\n\t\t\t/>\n\t\t</InserterPanel>\n\t);\n\n\tconst patternsUI = !! filteredBlockPatterns.length && (\n\t\t<InserterPanel\n\t\t\ttitle={\n\t\t\t\t<VisuallyHidden>{ __( 'Block patterns' ) }</VisuallyHidden>\n\t\t\t}\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__quick-inserter-patterns\">\n\t\t\t\t<BlockPatternsList\n\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\tonClickPattern={ onClickPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</InserterPanel>\n\t);\n\n\treturn (\n\t\t<InserterListbox>\n\t\t\t{ ! showBlockDirectory && ! hasItems && <InserterNoResults /> }\n\n\t\t\t{ prioritizePatterns ? patternsUI : blocksUI }\n\n\t\t\t{ !! filteredBlockTypes.length &&\n\t\t\t\t!! filteredBlockPatterns.length && (\n\t\t\t\t\t<div className=\"block-editor-inserter__quick-inserter-separator\" />\n\t\t\t\t) }\n\n\t\t\t{ prioritizePatterns ? blocksUI : patternsUI }\n\n\t\t\t{ showBlockDirectory && (\n\t\t\t\t<__unstableInserterMenuExtension.Slot\n\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\tonSelect: onSelectBlockType,\n\t\t\t\t\t\tonHover,\n\t\t\t\t\t\tfilterValue,\n\t\t\t\t\t\thasItems,\n\t\t\t\t\t\trootClientId: destinationRootClientId,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( fills ) => {\n\t\t\t\t\t\tif ( fills.length ) {\n\t\t\t\t\t\t\treturn fills;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( ! hasItems ) {\n\t\t\t\t\t\t\treturn <InserterNoResults />;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t} }\n\t\t\t\t</__unstableInserterMenuExtension.Slot>\n\t\t\t) }\n\t\t</InserterListbox>\n\t);\n}\n\nexport default InserterSearchResults;\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");