@wordpress/block-editor 12.15.0 → 12.16.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 (500) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +9 -4
  3. package/build/components/block-canvas/index.js +22 -6
  4. package/build/components/block-canvas/index.js.map +1 -1
  5. package/build/components/block-card/index.js +1 -1
  6. package/build/components/block-card/index.js.map +1 -1
  7. package/build/components/block-controls/hook.js +3 -23
  8. package/build/components/block-controls/hook.js.map +1 -1
  9. package/build/components/block-edit/context.js +5 -1
  10. package/build/components/block-edit/context.js.map +1 -1
  11. package/build/components/block-edit/index.js +18 -9
  12. package/build/components/block-edit/index.js.map +1 -1
  13. package/build/components/block-info-slot-fill/index.js +3 -4
  14. package/build/components/block-info-slot-fill/index.js.map +1 -1
  15. package/build/components/block-list/block.js +28 -9
  16. package/build/components/block-list/block.js.map +1 -1
  17. package/build/components/block-list/block.native.js +14 -5
  18. package/build/components/block-list/block.native.js.map +1 -1
  19. package/build/components/block-list/use-block-props/index.js +61 -18
  20. package/build/components/block-list/use-block-props/index.js.map +1 -1
  21. package/build/components/block-list/use-block-props/use-focus-first-element.js +4 -29
  22. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  23. package/build/components/block-list/use-block-props/use-is-hovered.js +4 -14
  24. package/build/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  25. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +4 -2
  26. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  27. package/build/components/block-patterns-list/index.js +1 -1
  28. package/build/components/block-patterns-list/index.js.map +1 -1
  29. package/build/components/block-removal-warning-modal/index.js +2 -9
  30. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  31. package/build/components/block-rename/modal.js +3 -0
  32. package/build/components/block-rename/modal.js.map +1 -1
  33. package/build/components/block-settings/container.native.js +6 -4
  34. package/build/components/block-settings/container.native.js.map +1 -1
  35. package/build/components/block-styles/index.js +1 -1
  36. package/build/components/block-styles/index.js.map +1 -1
  37. package/build/components/block-styles/index.native.js +3 -2
  38. package/build/components/block-styles/index.native.js.map +1 -1
  39. package/build/components/block-toolbar/index.js +89 -27
  40. package/build/components/block-toolbar/index.js.map +1 -1
  41. package/build/components/block-tools/block-toolbar-breadcrumb.js +49 -0
  42. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -0
  43. package/build/components/block-tools/block-toolbar-popover.js +86 -0
  44. package/build/components/block-tools/block-toolbar-popover.js.map +1 -0
  45. package/build/components/block-tools/index.js +27 -24
  46. package/build/components/block-tools/index.js.map +1 -1
  47. package/build/components/block-types-list/index.native.js +4 -3
  48. package/build/components/block-types-list/index.native.js.map +1 -1
  49. package/build/components/block-variation-picker/index.native.js +2 -1
  50. package/build/components/block-variation-picker/index.native.js.map +1 -1
  51. package/build/components/colors-gradients/control.js +28 -17
  52. package/build/components/colors-gradients/control.js.map +1 -1
  53. package/build/components/duotone-control/index.js +1 -4
  54. package/build/components/duotone-control/index.js.map +1 -1
  55. package/build/components/global-styles/color-panel.js +22 -20
  56. package/build/components/global-styles/color-panel.js.map +1 -1
  57. package/build/components/global-styles/filters-panel.js +9 -3
  58. package/build/components/global-styles/filters-panel.js.map +1 -1
  59. package/build/components/global-styles/typography-panel.js +20 -31
  60. package/build/components/global-styles/typography-panel.js.map +1 -1
  61. package/build/components/image-link-destinations/index.native.js +118 -0
  62. package/build/components/image-link-destinations/index.native.js.map +1 -0
  63. package/build/components/index.native.js +8 -0
  64. package/build/components/index.native.js.map +1 -1
  65. package/build/components/inserter/media-tab/media-panel.js +2 -2
  66. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  67. package/build/components/inserter/menu.js +14 -7
  68. package/build/components/inserter/menu.js.map +1 -1
  69. package/build/components/inserter/preview-panel.js +2 -2
  70. package/build/components/inserter/preview-panel.js.map +1 -1
  71. package/build/components/inserter-button/index.native.js +98 -0
  72. package/build/components/inserter-button/index.native.js.map +1 -0
  73. package/build/components/inserter-button/sparkles.js +23 -0
  74. package/build/components/inserter-button/sparkles.js.map +1 -0
  75. package/build/components/inserter-draggable-blocks/index.js +8 -4
  76. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  77. package/build/components/inspector-controls/fill.js +3 -3
  78. package/build/components/inspector-controls/fill.js.map +1 -1
  79. package/build/components/inspector-controls/fill.native.js +3 -3
  80. package/build/components/inspector-controls/fill.native.js.map +1 -1
  81. package/build/components/navigable-toolbar/index.js +2 -2
  82. package/build/components/navigable-toolbar/index.js.map +1 -1
  83. package/build/components/preview-options/index.js +6 -62
  84. package/build/components/preview-options/index.js.map +1 -1
  85. package/build/components/rich-text/content.js +26 -23
  86. package/build/components/rich-text/content.js.map +1 -1
  87. package/build/components/rich-text/get-rich-text-values.js +2 -1
  88. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  89. package/build/components/rich-text/index.js +2 -30
  90. package/build/components/rich-text/index.js.map +1 -1
  91. package/build/components/rich-text/index.native.js +9 -16
  92. package/build/components/rich-text/index.native.js.map +1 -1
  93. package/build/components/rich-text/native/get-format-colors.native.js +22 -24
  94. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  95. package/build/components/rich-text/native/index.native.js +7 -34
  96. package/build/components/rich-text/native/index.native.js.map +1 -1
  97. package/build/components/rich-text/use-input-rules.js +5 -1
  98. package/build/components/rich-text/use-input-rules.js.map +1 -1
  99. package/build/components/rich-text/with-deprecations.js +50 -0
  100. package/build/components/rich-text/with-deprecations.js.map +1 -0
  101. package/build/components/use-block-drop-zone/index.js +70 -8
  102. package/build/components/use-block-drop-zone/index.js.map +1 -1
  103. package/build/components/use-on-block-drop/index.js +1 -1
  104. package/build/components/use-on-block-drop/index.js.map +1 -1
  105. package/build/components/use-resize-canvas/index.js +4 -1
  106. package/build/components/use-resize-canvas/index.js.map +1 -1
  107. package/build/components/use-settings/index.js +14 -0
  108. package/build/components/use-settings/index.js.map +1 -1
  109. package/build/hooks/align.js +20 -68
  110. package/build/hooks/align.js.map +1 -1
  111. package/build/hooks/align.native.js +11 -1
  112. package/build/hooks/align.native.js.map +1 -1
  113. package/build/hooks/anchor.js +13 -29
  114. package/build/hooks/anchor.js.map +1 -1
  115. package/build/hooks/background.js +28 -31
  116. package/build/hooks/background.js.map +1 -1
  117. package/build/hooks/block-hooks.js +24 -32
  118. package/build/hooks/block-hooks.js.map +1 -1
  119. package/build/hooks/block-renaming.js +18 -22
  120. package/build/hooks/block-renaming.js.map +1 -1
  121. package/build/hooks/border.js +58 -80
  122. package/build/hooks/border.js.map +1 -1
  123. package/build/hooks/color.js +76 -89
  124. package/build/hooks/color.js.map +1 -1
  125. package/build/hooks/content-lock-ui.js +29 -29
  126. package/build/hooks/content-lock-ui.js.map +1 -1
  127. package/build/hooks/custom-class-name.js +12 -29
  128. package/build/hooks/custom-class-name.js.map +1 -1
  129. package/build/hooks/custom-fields.js +24 -38
  130. package/build/hooks/custom-fields.js.map +1 -1
  131. package/build/hooks/dimensions.js +21 -17
  132. package/build/hooks/dimensions.js.map +1 -1
  133. package/build/hooks/duotone.js +31 -61
  134. package/build/hooks/duotone.js.map +1 -1
  135. package/build/hooks/font-family.js +16 -25
  136. package/build/hooks/font-family.js.map +1 -1
  137. package/build/hooks/font-size.js +51 -119
  138. package/build/hooks/font-size.js.map +1 -1
  139. package/build/hooks/index.js +25 -14
  140. package/build/hooks/index.js.map +1 -1
  141. package/build/hooks/index.native.js +10 -3
  142. package/build/hooks/index.native.js.map +1 -1
  143. package/build/hooks/layout-child.js +68 -0
  144. package/build/hooks/layout-child.js.map +1 -0
  145. package/build/hooks/layout.js +16 -101
  146. package/build/hooks/layout.js.map +1 -1
  147. package/build/hooks/padding.js +2 -2
  148. package/build/hooks/padding.js.map +1 -1
  149. package/build/hooks/position.js +40 -62
  150. package/build/hooks/position.js.map +1 -1
  151. package/build/hooks/style.js +51 -88
  152. package/build/hooks/style.js.map +1 -1
  153. package/build/hooks/typography.js +34 -14
  154. package/build/hooks/typography.js.map +1 -1
  155. package/build/hooks/utils.js +154 -7
  156. package/build/hooks/utils.js.map +1 -1
  157. package/build/private-apis.js +0 -2
  158. package/build/private-apis.js.map +1 -1
  159. package/build/store/private-actions.js +8 -0
  160. package/build/store/private-actions.js.map +1 -1
  161. package/build/store/private-selectors.js +34 -0
  162. package/build/store/private-selectors.js.map +1 -1
  163. package/build/store/reducer.js +8 -0
  164. package/build/store/reducer.js.map +1 -1
  165. package/build/store/selectors.js +10 -60
  166. package/build/store/selectors.js.map +1 -1
  167. package/build/store/utils.js +66 -0
  168. package/build/store/utils.js.map +1 -0
  169. package/build/utils/object.js +21 -61
  170. package/build/utils/object.js.map +1 -1
  171. package/build/utils/selection.js +9 -1
  172. package/build/utils/selection.js.map +1 -1
  173. package/build-module/components/block-canvas/index.js +23 -7
  174. package/build-module/components/block-canvas/index.js.map +1 -1
  175. package/build-module/components/block-card/index.js +1 -1
  176. package/build-module/components/block-card/index.js.map +1 -1
  177. package/build-module/components/block-controls/hook.js +4 -24
  178. package/build-module/components/block-controls/hook.js.map +1 -1
  179. package/build-module/components/block-edit/context.js +2 -0
  180. package/build-module/components/block-edit/context.js.map +1 -1
  181. package/build-module/components/block-edit/index.js +19 -10
  182. package/build-module/components/block-edit/index.js.map +1 -1
  183. package/build-module/components/block-info-slot-fill/index.js +3 -3
  184. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  185. package/build-module/components/block-list/block.js +29 -10
  186. package/build-module/components/block-list/block.js.map +1 -1
  187. package/build-module/components/block-list/block.native.js +14 -5
  188. package/build-module/components/block-list/block.native.js.map +1 -1
  189. package/build-module/components/block-list/use-block-props/index.js +62 -19
  190. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  191. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +4 -29
  192. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  193. package/build-module/components/block-list/use-block-props/use-is-hovered.js +4 -14
  194. package/build-module/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  195. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +4 -2
  196. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  197. package/build-module/components/block-patterns-list/index.js +1 -1
  198. package/build-module/components/block-patterns-list/index.js.map +1 -1
  199. package/build-module/components/block-removal-warning-modal/index.js +3 -10
  200. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  201. package/build-module/components/block-rename/modal.js +3 -0
  202. package/build-module/components/block-rename/modal.js.map +1 -1
  203. package/build-module/components/block-settings/container.native.js +4 -2
  204. package/build-module/components/block-settings/container.native.js.map +1 -1
  205. package/build-module/components/block-styles/index.js +1 -1
  206. package/build-module/components/block-styles/index.js.map +1 -1
  207. package/build-module/components/block-styles/index.native.js +3 -2
  208. package/build-module/components/block-styles/index.native.js.map +1 -1
  209. package/build-module/components/block-toolbar/index.js +88 -25
  210. package/build-module/components/block-toolbar/index.js.map +1 -1
  211. package/build-module/components/block-tools/block-toolbar-breadcrumb.js +41 -0
  212. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -0
  213. package/build-module/components/block-tools/block-toolbar-popover.js +76 -0
  214. package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -0
  215. package/build-module/components/block-tools/index.js +27 -24
  216. package/build-module/components/block-tools/index.js.map +1 -1
  217. package/build-module/components/block-types-list/index.native.js +2 -1
  218. package/build-module/components/block-types-list/index.native.js.map +1 -1
  219. package/build-module/components/block-variation-picker/index.native.js +2 -1
  220. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  221. package/build-module/components/colors-gradients/control.js +29 -18
  222. package/build-module/components/colors-gradients/control.js.map +1 -1
  223. package/build-module/components/duotone-control/index.js +1 -4
  224. package/build-module/components/duotone-control/index.js.map +1 -1
  225. package/build-module/components/global-styles/color-panel.js +23 -21
  226. package/build-module/components/global-styles/color-panel.js.map +1 -1
  227. package/build-module/components/global-styles/filters-panel.js +10 -4
  228. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  229. package/build-module/components/global-styles/typography-panel.js +20 -31
  230. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  231. package/build-module/components/image-link-destinations/index.native.js +109 -0
  232. package/build-module/components/image-link-destinations/index.native.js.map +1 -0
  233. package/build-module/components/index.native.js +1 -0
  234. package/build-module/components/index.native.js.map +1 -1
  235. package/build-module/components/inserter/media-tab/media-panel.js +1 -1
  236. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  237. package/build-module/components/inserter/menu.js +14 -7
  238. package/build-module/components/inserter/menu.js.map +1 -1
  239. package/build-module/components/inserter/preview-panel.js +2 -2
  240. package/build-module/components/inserter/preview-panel.js.map +1 -1
  241. package/build-module/components/inserter-button/index.native.js +89 -0
  242. package/build-module/components/inserter-button/index.native.js.map +1 -0
  243. package/build-module/components/inserter-button/sparkles.js +15 -0
  244. package/build-module/components/inserter-button/sparkles.js.map +1 -0
  245. package/build-module/components/inserter-draggable-blocks/index.js +9 -5
  246. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  247. package/build-module/components/inspector-controls/fill.js +3 -3
  248. package/build-module/components/inspector-controls/fill.js.map +1 -1
  249. package/build-module/components/inspector-controls/fill.native.js +3 -3
  250. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  251. package/build-module/components/navigable-toolbar/index.js +2 -2
  252. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  253. package/build-module/components/preview-options/index.js +6 -62
  254. package/build-module/components/preview-options/index.js.map +1 -1
  255. package/build-module/components/rich-text/content.js +25 -21
  256. package/build-module/components/rich-text/content.js.map +1 -1
  257. package/build-module/components/rich-text/get-rich-text-values.js +2 -1
  258. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  259. package/build-module/components/rich-text/index.js +4 -32
  260. package/build-module/components/rich-text/index.js.map +1 -1
  261. package/build-module/components/rich-text/index.native.js +10 -18
  262. package/build-module/components/rich-text/index.native.js.map +1 -1
  263. package/build-module/components/rich-text/native/get-format-colors.native.js +22 -24
  264. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  265. package/build-module/components/rich-text/native/index.native.js +7 -34
  266. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  267. package/build-module/components/rich-text/use-input-rules.js +5 -1
  268. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  269. package/build-module/components/rich-text/with-deprecations.js +42 -0
  270. package/build-module/components/rich-text/with-deprecations.js.map +1 -0
  271. package/build-module/components/use-block-drop-zone/index.js +69 -8
  272. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  273. package/build-module/components/use-on-block-drop/index.js +1 -1
  274. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  275. package/build-module/components/use-resize-canvas/index.js +4 -1
  276. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  277. package/build-module/components/use-settings/index.js +13 -1
  278. package/build-module/components/use-settings/index.js.map +1 -1
  279. package/build-module/hooks/align.js +19 -66
  280. package/build-module/hooks/align.js.map +1 -1
  281. package/build-module/hooks/align.native.js +1 -0
  282. package/build-module/hooks/align.native.js.map +1 -1
  283. package/build-module/hooks/anchor.js +11 -26
  284. package/build-module/hooks/anchor.js.map +1 -1
  285. package/build-module/hooks/background.js +26 -28
  286. package/build-module/hooks/background.js.map +1 -1
  287. package/build-module/hooks/block-hooks.js +22 -30
  288. package/build-module/hooks/block-hooks.js.map +1 -1
  289. package/build-module/hooks/block-renaming.js +17 -21
  290. package/build-module/hooks/block-renaming.js.map +1 -1
  291. package/build-module/hooks/border.js +57 -78
  292. package/build-module/hooks/border.js.map +1 -1
  293. package/build-module/hooks/color.js +74 -86
  294. package/build-module/hooks/color.js.map +1 -1
  295. package/build-module/hooks/content-lock-ui.js +27 -27
  296. package/build-module/hooks/content-lock-ui.js.map +1 -1
  297. package/build-module/hooks/custom-class-name.js +11 -27
  298. package/build-module/hooks/custom-class-name.js.map +1 -1
  299. package/build-module/hooks/custom-fields.js +20 -39
  300. package/build-module/hooks/custom-fields.js.map +1 -1
  301. package/build-module/hooks/dimensions.js +21 -16
  302. package/build-module/hooks/dimensions.js.map +1 -1
  303. package/build-module/hooks/duotone.js +30 -61
  304. package/build-module/hooks/duotone.js.map +1 -1
  305. package/build-module/hooks/font-family.js +14 -23
  306. package/build-module/hooks/font-family.js.map +1 -1
  307. package/build-module/hooks/font-size.js +49 -119
  308. package/build-module/hooks/font-size.js.map +1 -1
  309. package/build-module/hooks/index.js +18 -14
  310. package/build-module/hooks/index.js.map +1 -1
  311. package/build-module/hooks/index.native.js +5 -3
  312. package/build-module/hooks/index.native.js.map +1 -1
  313. package/build-module/hooks/layout-child.js +60 -0
  314. package/build-module/hooks/layout-child.js.map +1 -0
  315. package/build-module/hooks/layout.js +13 -98
  316. package/build-module/hooks/layout.js.map +1 -1
  317. package/build-module/hooks/padding.js +2 -2
  318. package/build-module/hooks/padding.js.map +1 -1
  319. package/build-module/hooks/position.js +38 -59
  320. package/build-module/hooks/position.js.map +1 -1
  321. package/build-module/hooks/style.js +51 -84
  322. package/build-module/hooks/style.js.map +1 -1
  323. package/build-module/hooks/typography.js +33 -12
  324. package/build-module/hooks/typography.js.map +1 -1
  325. package/build-module/hooks/utils.js +149 -6
  326. package/build-module/hooks/utils.js.map +1 -1
  327. package/build-module/private-apis.js +0 -2
  328. package/build-module/private-apis.js.map +1 -1
  329. package/build-module/store/private-actions.js +7 -0
  330. package/build-module/store/private-actions.js.map +1 -1
  331. package/build-module/store/private-selectors.js +33 -1
  332. package/build-module/store/private-selectors.js.map +1 -1
  333. package/build-module/store/reducer.js +8 -0
  334. package/build-module/store/reducer.js.map +1 -1
  335. package/build-module/store/selectors.js +3 -53
  336. package/build-module/store/selectors.js.map +1 -1
  337. package/build-module/store/utils.js +56 -0
  338. package/build-module/store/utils.js.map +1 -0
  339. package/build-module/utils/object.js +21 -60
  340. package/build-module/utils/object.js.map +1 -1
  341. package/build-module/utils/selection.js +9 -1
  342. package/build-module/utils/selection.js.map +1 -1
  343. package/build-style/style-rtl.css +113 -293
  344. package/build-style/style.css +113 -293
  345. package/package.json +31 -31
  346. package/src/components/block-canvas/index.js +31 -17
  347. package/src/components/block-caption/README.md +2 -2
  348. package/src/components/block-card/index.js +5 -3
  349. package/src/components/block-card/style.scss +7 -3
  350. package/src/components/block-controls/hook.js +8 -30
  351. package/src/components/block-controls/test/index.js +3 -3
  352. package/src/components/block-edit/context.js +3 -0
  353. package/src/components/block-edit/index.js +36 -10
  354. package/src/components/block-info-slot-fill/index.js +6 -3
  355. package/src/components/block-inspector/style.scss +0 -4
  356. package/src/components/block-list/block.js +39 -5
  357. package/src/components/block-list/block.native.js +18 -4
  358. package/src/components/block-list/use-block-props/index.js +74 -21
  359. package/src/components/block-list/use-block-props/use-focus-first-element.js +1 -34
  360. package/src/components/block-list/use-block-props/use-is-hovered.js +2 -13
  361. package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +1 -5
  362. package/src/components/block-patterns-list/index.js +1 -1
  363. package/src/components/block-removal-warning-modal/index.js +7 -14
  364. package/src/components/block-rename/modal.js +7 -1
  365. package/src/components/block-settings/container.native.js +3 -5
  366. package/src/components/block-styles/index.js +1 -1
  367. package/src/components/block-styles/index.native.js +4 -2
  368. package/src/components/block-styles/style.scss +0 -11
  369. package/src/components/block-switcher/test/__snapshots__/index.js.snap +3 -1
  370. package/src/components/block-toolbar/index.js +180 -95
  371. package/src/components/block-toolbar/style.scss +50 -66
  372. package/src/components/block-tools/block-toolbar-breadcrumb.js +46 -0
  373. package/src/components/block-tools/block-toolbar-popover.js +90 -0
  374. package/src/components/block-tools/index.js +42 -29
  375. package/src/components/block-tools/style.scss +60 -172
  376. package/src/components/block-types-list/index.native.js +2 -1
  377. package/src/components/block-variation-picker/index.native.js +1 -1
  378. package/src/components/colors-gradients/control.js +49 -30
  379. package/src/components/colors-gradients/style.scss +0 -7
  380. package/src/components/duotone-control/index.js +2 -5
  381. package/src/components/duotone-control/style.scss +1 -6
  382. package/src/components/global-styles/color-panel.js +34 -25
  383. package/src/components/global-styles/filters-panel.js +8 -4
  384. package/src/components/global-styles/typography-panel.js +23 -43
  385. package/src/components/image-link-destinations/index.native.js +152 -0
  386. package/src/components/image-link-destinations/style.native.scss +16 -0
  387. package/src/components/index.native.js +1 -0
  388. package/src/components/inner-blocks/README.md +13 -2
  389. package/src/components/inserter/media-tab/media-panel.js +1 -1
  390. package/src/components/inserter/menu.js +16 -8
  391. package/src/components/inserter/preview-panel.js +2 -2
  392. package/src/components/inserter/style.scss +15 -17
  393. package/src/components/inserter-button/README.md +62 -0
  394. package/src/components/inserter-button/index.native.js +116 -0
  395. package/src/components/inserter-button/sparkles.js +15 -0
  396. package/src/components/inserter-button/style.native.scss +72 -0
  397. package/src/components/inserter-draggable-blocks/index.js +18 -5
  398. package/src/components/inspector-controls/fill.js +6 -3
  399. package/src/components/inspector-controls/fill.native.js +6 -3
  400. package/src/components/link-control/style.scss +1 -1
  401. package/src/components/link-control/test/index.js +1 -1
  402. package/src/components/navigable-toolbar/README.md +2 -0
  403. package/src/components/navigable-toolbar/index.js +2 -2
  404. package/src/components/preview-options/index.js +6 -86
  405. package/src/components/rich-text/content.js +27 -20
  406. package/src/components/rich-text/get-rich-text-values.js +6 -1
  407. package/src/components/rich-text/index.js +5 -46
  408. package/src/components/rich-text/index.native.js +8 -25
  409. package/src/components/rich-text/native/get-format-colors.native.js +33 -40
  410. package/src/components/rich-text/native/index.native.js +7 -48
  411. package/src/components/rich-text/use-input-rules.js +6 -1
  412. package/src/components/rich-text/with-deprecations.js +51 -0
  413. package/src/components/use-block-drop-zone/index.js +114 -14
  414. package/src/components/use-on-block-drop/index.js +2 -1
  415. package/src/components/use-resize-canvas/README.md +3 -3
  416. package/src/components/use-resize-canvas/index.js +4 -1
  417. package/src/components/use-settings/index.js +15 -1
  418. package/src/hooks/align.js +15 -76
  419. package/src/hooks/align.native.js +1 -0
  420. package/src/hooks/anchor.js +13 -33
  421. package/src/hooks/background.js +28 -23
  422. package/src/hooks/block-hooks.js +22 -51
  423. package/src/hooks/block-renaming.js +23 -37
  424. package/src/hooks/border.js +67 -118
  425. package/src/hooks/color.js +100 -132
  426. package/src/hooks/content-lock-ui.js +110 -122
  427. package/src/hooks/custom-class-name.js +8 -40
  428. package/src/hooks/custom-fields.js +20 -47
  429. package/src/hooks/dimensions.js +20 -16
  430. package/src/hooks/duotone.js +70 -127
  431. package/src/hooks/font-family.js +10 -29
  432. package/src/hooks/font-size.js +66 -162
  433. package/src/hooks/index.js +42 -14
  434. package/src/hooks/index.native.js +6 -3
  435. package/src/hooks/layout-child.js +53 -0
  436. package/src/hooks/layout.js +13 -102
  437. package/src/hooks/padding.js +2 -2
  438. package/src/hooks/position.js +50 -90
  439. package/src/hooks/style.js +117 -187
  440. package/src/hooks/test/align.js +1 -178
  441. package/src/hooks/typography.js +20 -16
  442. package/src/hooks/utils.js +187 -6
  443. package/src/private-apis.js +0 -2
  444. package/src/store/private-actions.js +8 -0
  445. package/src/store/private-selectors.js +45 -0
  446. package/src/store/reducer.js +8 -0
  447. package/src/store/selectors.js +5 -69
  448. package/src/store/utils.js +74 -0
  449. package/src/style.scss +0 -2
  450. package/src/utils/object.js +18 -69
  451. package/src/utils/selection.js +9 -2
  452. package/build/components/block-list/use-block-props/use-block-class-names.js +0 -67
  453. package/build/components/block-list/use-block-props/use-block-class-names.js.map +0 -1
  454. package/build/components/block-list/use-block-props/use-block-custom-class-name.js +0 -46
  455. package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +0 -1
  456. package/build/components/block-list/use-block-props/use-block-default-class-name.js +0 -37
  457. package/build/components/block-list/use-block-props/use-block-default-class-name.js.map +0 -1
  458. package/build/components/block-tools/back-compat.js +0 -45
  459. package/build/components/block-tools/back-compat.js.map +0 -1
  460. package/build/components/block-tools/block-contextual-toolbar.js +0 -91
  461. package/build/components/block-tools/block-contextual-toolbar.js.map +0 -1
  462. package/build/components/block-tools/selected-block-tools.js +0 -113
  463. package/build/components/block-tools/selected-block-tools.js.map +0 -1
  464. package/build/components/inserter/hooks/use-debounced-input.js +0 -22
  465. package/build/components/inserter/hooks/use-debounced-input.js.map +0 -1
  466. package/build/components/use-display-block-controls/index.js +0 -39
  467. package/build/components/use-display-block-controls/index.js.map +0 -1
  468. package/build/components/use-display-block-controls/index.native.js +0 -39
  469. package/build/components/use-display-block-controls/index.native.js.map +0 -1
  470. package/build-module/components/block-list/use-block-props/use-block-class-names.js +0 -60
  471. package/build-module/components/block-list/use-block-props/use-block-class-names.js.map +0 -1
  472. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js +0 -40
  473. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +0 -1
  474. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js +0 -31
  475. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js.map +0 -1
  476. package/build-module/components/block-tools/back-compat.js +0 -35
  477. package/build-module/components/block-tools/back-compat.js.map +0 -1
  478. package/build-module/components/block-tools/block-contextual-toolbar.js +0 -83
  479. package/build-module/components/block-tools/block-contextual-toolbar.js.map +0 -1
  480. package/build-module/components/block-tools/selected-block-tools.js +0 -105
  481. package/build-module/components/block-tools/selected-block-tools.js.map +0 -1
  482. package/build-module/components/inserter/hooks/use-debounced-input.js +0 -15
  483. package/build-module/components/inserter/hooks/use-debounced-input.js.map +0 -1
  484. package/build-module/components/use-display-block-controls/index.js +0 -32
  485. package/build-module/components/use-display-block-controls/index.js.map +0 -1
  486. package/build-module/components/use-display-block-controls/index.native.js +0 -32
  487. package/build-module/components/use-display-block-controls/index.native.js.map +0 -1
  488. package/src/components/block-list/use-block-props/use-block-class-names.js +0 -66
  489. package/src/components/block-list/use-block-props/use-block-custom-class-name.js +0 -44
  490. package/src/components/block-list/use-block-props/use-block-default-class-name.js +0 -35
  491. package/src/components/block-parent-selector/style.scss +0 -11
  492. package/src/components/block-tools/back-compat.js +0 -35
  493. package/src/components/block-tools/block-contextual-toolbar.js +0 -100
  494. package/src/components/block-tools/selected-block-tools.js +0 -127
  495. package/src/components/inserter/hooks/use-debounced-input.js +0 -18
  496. package/src/components/preview-options/README.md +0 -94
  497. package/src/components/preview-options/style.scss +0 -64
  498. package/src/components/use-display-block-controls/index.js +0 -36
  499. package/src/components/use-display-block-controls/index.native.js +0 -37
  500. package/src/hooks/test/color.js +0 -112
@@ -0,0 +1,109 @@
1
+ import { createElement, Fragment } from "react";
2
+ /**
3
+ * External dependencies
4
+ */
5
+ import { useNavigation, useRoute } from '@react-navigation/native';
6
+ import { StyleSheet } from 'react-native';
7
+
8
+ /**
9
+ * WordPress dependencies
10
+ */
11
+ import { __ } from '@wordpress/i18n';
12
+ import { Icon, check, chevronRight } from '@wordpress/icons';
13
+ import { usePreferredColorSchemeStyle } from '@wordpress/compose';
14
+ import { BottomSheet, PanelBody } from '@wordpress/components';
15
+
16
+ /**
17
+ * Internal dependencies
18
+ */
19
+ import styles from './style.native.scss';
20
+ import { blockSettingsScreens } from '../block-settings';
21
+ const LINK_DESTINATION_NONE = 'none';
22
+ const LINK_DESTINATION_MEDIA = 'media';
23
+ const LINK_DESTINATION_ATTACHMENT = 'attachment';
24
+ const LINK_DESTINATION_CUSTOM = 'custom';
25
+ function LinkDestination({
26
+ children,
27
+ isSelected,
28
+ label,
29
+ onPress,
30
+ value,
31
+ valueStyle
32
+ }) {
33
+ const optionIcon = usePreferredColorSchemeStyle(styles.optionIcon, styles.optionIconDark);
34
+ return createElement(BottomSheet.Cell, {
35
+ icon: check,
36
+ iconStyle: StyleSheet.flatten([optionIcon, !isSelected && styles.unselectedOptionIcon]),
37
+ label: label,
38
+ leftAlign: true,
39
+ onPress: onPress,
40
+ value: value,
41
+ valueStyle: valueStyle,
42
+ separatorType: "leftMargin"
43
+ }, children);
44
+ }
45
+ function ImageLinkDestinationsScreen(props) {
46
+ const navigation = useNavigation();
47
+ const route = useRoute();
48
+ const {
49
+ url = ''
50
+ } = props;
51
+ const {
52
+ inputValue = url,
53
+ imageUrl,
54
+ attachmentPageUrl,
55
+ linkDestination
56
+ } = route.params || {};
57
+ function goToLinkPicker() {
58
+ navigation.navigate(blockSettingsScreens.linkPicker, {
59
+ inputValue: linkDestination === LINK_DESTINATION_CUSTOM ? inputValue : ''
60
+ });
61
+ }
62
+ const setLinkDestination = newLinkDestination => () => {
63
+ let newUrl;
64
+ switch (newLinkDestination) {
65
+ case LINK_DESTINATION_MEDIA:
66
+ newUrl = imageUrl;
67
+ break;
68
+ case LINK_DESTINATION_ATTACHMENT:
69
+ newUrl = attachmentPageUrl;
70
+ break;
71
+ default:
72
+ newUrl = '';
73
+ break;
74
+ }
75
+ navigation.navigate(blockSettingsScreens.settings, {
76
+ // The `inputValue` name is reused from LinkPicker, as it helps avoid
77
+ // bugs from stale values remaining in the React Navigation route
78
+ // parameters.
79
+ inputValue: newUrl,
80
+ // Clear link text value that may be set from LinkPicker.
81
+ text: ''
82
+ });
83
+ };
84
+ return createElement(Fragment, null, createElement(BottomSheet.NavBar, null, createElement(BottomSheet.NavBar.BackButton, {
85
+ onPress: navigation.goBack
86
+ }), createElement(BottomSheet.NavBar.Heading, null, __('Link To'))), createElement(PanelBody, null, createElement(LinkDestination, {
87
+ isSelected: linkDestination === LINK_DESTINATION_NONE,
88
+ label: __('None'),
89
+ onPress: setLinkDestination(LINK_DESTINATION_NONE)
90
+ }), createElement(LinkDestination, {
91
+ isSelected: linkDestination === LINK_DESTINATION_MEDIA,
92
+ label: __('Media File'),
93
+ onPress: setLinkDestination(LINK_DESTINATION_MEDIA)
94
+ }), !!attachmentPageUrl && createElement(LinkDestination, {
95
+ isSelected: linkDestination === LINK_DESTINATION_ATTACHMENT,
96
+ label: __('Attachment Page'),
97
+ onPress: setLinkDestination(LINK_DESTINATION_ATTACHMENT)
98
+ }), createElement(LinkDestination, {
99
+ isSelected: linkDestination === LINK_DESTINATION_CUSTOM,
100
+ label: __('Custom URL'),
101
+ onPress: goToLinkPicker,
102
+ value: linkDestination === LINK_DESTINATION_CUSTOM ? inputValue : '',
103
+ valueStyle: linkDestination === LINK_DESTINATION_CUSTOM ? undefined : styles.placeholderTextColor
104
+ }, createElement(Icon, {
105
+ icon: chevronRight
106
+ }))));
107
+ }
108
+ export default ImageLinkDestinationsScreen;
109
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useNavigation","useRoute","StyleSheet","__","Icon","check","chevronRight","usePreferredColorSchemeStyle","BottomSheet","PanelBody","styles","blockSettingsScreens","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","LinkDestination","children","isSelected","label","onPress","value","valueStyle","optionIcon","optionIconDark","createElement","Cell","icon","iconStyle","flatten","unselectedOptionIcon","leftAlign","separatorType","ImageLinkDestinationsScreen","props","navigation","route","url","inputValue","imageUrl","attachmentPageUrl","linkDestination","params","goToLinkPicker","navigate","linkPicker","setLinkDestination","newLinkDestination","newUrl","settings","text","Fragment","NavBar","BackButton","goBack","Heading","undefined","placeholderTextColor"],"sources":["@wordpress/block-editor/src/components/image-link-destinations/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { useNavigation, useRoute } from '@react-navigation/native';\nimport { StyleSheet } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Icon, check, chevronRight } from '@wordpress/icons';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { BottomSheet, PanelBody } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.native.scss';\nimport { blockSettingsScreens } from '../block-settings';\n\nconst LINK_DESTINATION_NONE = 'none';\nconst LINK_DESTINATION_MEDIA = 'media';\nconst LINK_DESTINATION_ATTACHMENT = 'attachment';\nconst LINK_DESTINATION_CUSTOM = 'custom';\n\nfunction LinkDestination( {\n\tchildren,\n\tisSelected,\n\tlabel,\n\tonPress,\n\tvalue,\n\tvalueStyle,\n} ) {\n\tconst optionIcon = usePreferredColorSchemeStyle(\n\t\tstyles.optionIcon,\n\t\tstyles.optionIconDark\n\t);\n\n\treturn (\n\t\t<BottomSheet.Cell\n\t\t\ticon={ check }\n\t\t\ticonStyle={ StyleSheet.flatten( [\n\t\t\t\toptionIcon,\n\t\t\t\t! isSelected && styles.unselectedOptionIcon,\n\t\t\t] ) }\n\t\t\tlabel={ label }\n\t\t\tleftAlign\n\t\t\tonPress={ onPress }\n\t\t\tvalue={ value }\n\t\t\tvalueStyle={ valueStyle }\n\t\t\tseparatorType=\"leftMargin\"\n\t\t>\n\t\t\t{ children }\n\t\t</BottomSheet.Cell>\n\t);\n}\n\nfunction ImageLinkDestinationsScreen( props ) {\n\tconst navigation = useNavigation();\n\tconst route = useRoute();\n\tconst { url = '' } = props;\n\tconst {\n\t\tinputValue = url,\n\t\timageUrl,\n\t\tattachmentPageUrl,\n\t\tlinkDestination,\n\t} = route.params || {};\n\n\tfunction goToLinkPicker() {\n\t\tnavigation.navigate( blockSettingsScreens.linkPicker, {\n\t\t\tinputValue:\n\t\t\t\tlinkDestination === LINK_DESTINATION_CUSTOM ? inputValue : '',\n\t\t} );\n\t}\n\n\tconst setLinkDestination = ( newLinkDestination ) => () => {\n\t\tlet newUrl;\n\t\tswitch ( newLinkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\tnewUrl = imageUrl;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\tnewUrl = attachmentPageUrl;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tnewUrl = '';\n\t\t\t\tbreak;\n\t\t}\n\n\t\tnavigation.navigate( blockSettingsScreens.settings, {\n\t\t\t// The `inputValue` name is reused from LinkPicker, as it helps avoid\n\t\t\t// bugs from stale values remaining in the React Navigation route\n\t\t\t// parameters.\n\t\t\tinputValue: newUrl,\n\t\t\t// Clear link text value that may be set from LinkPicker.\n\t\t\ttext: '',\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<BottomSheet.NavBar>\n\t\t\t\t<BottomSheet.NavBar.BackButton onPress={ navigation.goBack } />\n\t\t\t\t<BottomSheet.NavBar.Heading>\n\t\t\t\t\t{ __( 'Link To' ) }\n\t\t\t\t</BottomSheet.NavBar.Heading>\n\t\t\t</BottomSheet.NavBar>\n\t\t\t<PanelBody>\n\t\t\t\t<LinkDestination\n\t\t\t\t\tisSelected={ linkDestination === LINK_DESTINATION_NONE }\n\t\t\t\t\tlabel={ __( 'None' ) }\n\t\t\t\t\tonPress={ setLinkDestination( LINK_DESTINATION_NONE ) }\n\t\t\t\t/>\n\t\t\t\t<LinkDestination\n\t\t\t\t\tisSelected={ linkDestination === LINK_DESTINATION_MEDIA }\n\t\t\t\t\tlabel={ __( 'Media File' ) }\n\t\t\t\t\tonPress={ setLinkDestination( LINK_DESTINATION_MEDIA ) }\n\t\t\t\t/>\n\t\t\t\t{ !! attachmentPageUrl && (\n\t\t\t\t\t<LinkDestination\n\t\t\t\t\t\tisSelected={\n\t\t\t\t\t\t\tlinkDestination === LINK_DESTINATION_ATTACHMENT\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Attachment Page' ) }\n\t\t\t\t\t\tonPress={ setLinkDestination(\n\t\t\t\t\t\t\tLINK_DESTINATION_ATTACHMENT\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<LinkDestination\n\t\t\t\t\tisSelected={ linkDestination === LINK_DESTINATION_CUSTOM }\n\t\t\t\t\tlabel={ __( 'Custom URL' ) }\n\t\t\t\t\tonPress={ goToLinkPicker }\n\t\t\t\t\tvalue={\n\t\t\t\t\t\tlinkDestination === LINK_DESTINATION_CUSTOM\n\t\t\t\t\t\t\t? inputValue\n\t\t\t\t\t\t\t: ''\n\t\t\t\t\t}\n\t\t\t\t\tvalueStyle={\n\t\t\t\t\t\tlinkDestination === LINK_DESTINATION_CUSTOM\n\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t: styles.placeholderTextColor\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={ chevronRight }></Icon>\n\t\t\t\t</LinkDestination>\n\t\t\t</PanelBody>\n\t\t</>\n\t);\n}\n\nexport default ImageLinkDestinationsScreen;\n"],"mappings":"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"}
@@ -46,6 +46,7 @@ export { default as BlockStyles } from './block-styles';
46
46
  export { default as DefaultBlockAppender } from './default-block-appender';
47
47
  export { default as __unstableEditorStyles } from './editor-styles';
48
48
  export { default as Inserter } from './inserter';
49
+ export { default as InserterButton } from './inserter-button';
49
50
  export { useBlockProps } from './block-list/use-block-props';
50
51
  export { default as FloatingToolbar } from './floating-toolbar';
51
52
 
@@ -1 +1 @@
1
- {"version":3,"names":["BlockAlignmentControl","BlockAlignmentToolbar","BlockContextProvider","default","BlockControls","BlockFormatControls","BlockEdit","useBlockEditContext","BlockIcon","BlockVerticalAlignmentToolbar","BlockVerticalAlignmentControl","AlignmentControl","AlignmentToolbar","InnerBlocks","useInnerBlocksProps","InspectorControls","InspectorAdvancedControls","JustifyToolbar","JustifyContentControl","LineHeightControl","HeadingLevelDropdown","PlainText","RichText","RichTextShortcut","RichTextToolbarButton","__unstableRichTextInputEvent","MediaReplaceFlow","MediaPlaceholder","MediaUpload","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","MEDIA_TYPE_AUDIO","MEDIA_TYPE_ANY","MediaUploadProgress","MEDIA_UPLOAD_STATE_UPLOADING","MEDIA_UPLOAD_STATE_SUCCEEDED","MEDIA_UPLOAD_STATE_FAILED","MEDIA_UPLOAD_STATE_RESET","BlockMediaUpdateProgress","URLInput","BlockInvalidWarning","BlockCaption","Caption","PanelColorSettings","__experimentalPanelColorGradientSettings","useSettings","useSetting","RecursionProvider","__experimentalRecursionProvider","useHasRecursion","__experimentalUseHasRecursion","Warning","ContrastChecker","useMultipleOriginColorsAndGradients","UnsupportedBlockDetails","BottomSheetSettings","BlockSettingsButton","blockSettingsScreens","VideoPlayer","VIDEO_ASPECT_RATIO","getSpacingPresetCssVar","getCustomValueFromPreset","isValueSpacingPreset","BlockList","BlockMover","BlockToolbar","BlockVariationPicker","BlockStyles","DefaultBlockAppender","__unstableEditorStyles","Inserter","useBlockProps","FloatingToolbar","BlockEditorProvider"],"sources":["@wordpress/block-editor/src/components/index.native.js"],"sourcesContent":["// Block Creation Components.\nexport {\n\tBlockAlignmentControl,\n\tBlockAlignmentToolbar,\n} from './block-alignment-control';\nexport { BlockContextProvider } from './block-context';\nexport {\n\tdefault as BlockControls,\n\tBlockFormatControls,\n} from './block-controls';\nexport { default as BlockEdit, useBlockEditContext } from './block-edit';\nexport { default as BlockIcon } from './block-icon';\nexport {\n\tBlockVerticalAlignmentToolbar,\n\tBlockVerticalAlignmentControl,\n} from './block-vertical-alignment-control';\nexport * from './colors';\nexport * from './gradients';\nexport * from './font-sizes';\nexport { AlignmentControl, AlignmentToolbar } from './alignment-control';\nexport { default as InnerBlocks, useInnerBlocksProps } from './inner-blocks';\nexport {\n\tdefault as InspectorControls,\n\tInspectorAdvancedControls,\n} from './inspector-controls';\nexport {\n\tJustifyToolbar,\n\tJustifyContentControl,\n} from './justify-content-control';\nexport { default as LineHeightControl } from './line-height-control';\nexport { default as HeadingLevelDropdown } from './block-heading-level-dropdown';\nexport { default as PlainText } from './plain-text';\nexport {\n\tdefault as RichText,\n\tRichTextShortcut,\n\tRichTextToolbarButton,\n\t__unstableRichTextInputEvent,\n} from './rich-text';\nexport { default as MediaReplaceFlow } from './media-replace-flow';\nexport { default as MediaPlaceholder } from './media-placeholder';\nexport { default as MediaUpload } from './media-upload';\nexport {\n\tMEDIA_TYPE_IMAGE,\n\tMEDIA_TYPE_VIDEO,\n\tMEDIA_TYPE_AUDIO,\n\tMEDIA_TYPE_ANY,\n} from './media-upload/constants';\nexport {\n\tdefault as MediaUploadProgress,\n\tMEDIA_UPLOAD_STATE_UPLOADING,\n\tMEDIA_UPLOAD_STATE_SUCCEEDED,\n\tMEDIA_UPLOAD_STATE_FAILED,\n\tMEDIA_UPLOAD_STATE_RESET,\n} from './media-upload-progress';\nexport { default as BlockMediaUpdateProgress } from './block-media-update-progress';\nexport { default as URLInput } from './url-input';\nexport { default as BlockInvalidWarning } from './block-list/block-invalid-warning';\nexport { default as BlockCaption } from './block-caption';\nexport { default as Caption } from './caption';\nexport { default as PanelColorSettings } from './panel-color-settings';\nexport { default as __experimentalPanelColorGradientSettings } from './colors-gradients/panel-color-gradient-settings';\nexport { useSettings, default as useSetting } from './use-settings';\nexport {\n\tRecursionProvider as __experimentalRecursionProvider,\n\tuseHasRecursion as __experimentalUseHasRecursion,\n} from './recursion-provider';\nexport { default as Warning } from './warning';\nexport { default as ContrastChecker } from './contrast-checker';\nexport { default as useMultipleOriginColorsAndGradients } from './colors-gradients/use-multiple-origin-colors-and-gradients';\nexport { default as UnsupportedBlockDetails } from './unsupported-block-details';\n\nexport {\n\tBottomSheetSettings,\n\tBlockSettingsButton,\n\tblockSettingsScreens,\n} from './block-settings';\nexport { default as VideoPlayer, VIDEO_ASPECT_RATIO } from './video-player';\n\nexport {\n\tgetSpacingPresetCssVar,\n\tgetCustomValueFromPreset,\n\tisValueSpacingPreset,\n} from './spacing-sizes-control/utils';\n// Content Related Components.\nexport { default as BlockList } from './block-list';\nexport { default as BlockMover } from './block-mover';\nexport { default as BlockToolbar } from './block-toolbar';\nexport { default as BlockVariationPicker } from './block-variation-picker';\nexport { default as BlockStyles } from './block-styles';\nexport { default as DefaultBlockAppender } from './default-block-appender';\nexport { default as __unstableEditorStyles } from './editor-styles';\nexport { default as Inserter } from './inserter';\nexport { useBlockProps } from './block-list/use-block-props';\nexport { default as FloatingToolbar } from './floating-toolbar';\n\n// State Related Components.\nexport { default as BlockEditorProvider } from './provider';\n"],"mappings":"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"}
1
+ {"version":3,"names":["BlockAlignmentControl","BlockAlignmentToolbar","BlockContextProvider","default","BlockControls","BlockFormatControls","BlockEdit","useBlockEditContext","BlockIcon","BlockVerticalAlignmentToolbar","BlockVerticalAlignmentControl","AlignmentControl","AlignmentToolbar","InnerBlocks","useInnerBlocksProps","InspectorControls","InspectorAdvancedControls","JustifyToolbar","JustifyContentControl","LineHeightControl","HeadingLevelDropdown","PlainText","RichText","RichTextShortcut","RichTextToolbarButton","__unstableRichTextInputEvent","MediaReplaceFlow","MediaPlaceholder","MediaUpload","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","MEDIA_TYPE_AUDIO","MEDIA_TYPE_ANY","MediaUploadProgress","MEDIA_UPLOAD_STATE_UPLOADING","MEDIA_UPLOAD_STATE_SUCCEEDED","MEDIA_UPLOAD_STATE_FAILED","MEDIA_UPLOAD_STATE_RESET","BlockMediaUpdateProgress","URLInput","BlockInvalidWarning","BlockCaption","Caption","PanelColorSettings","__experimentalPanelColorGradientSettings","useSettings","useSetting","RecursionProvider","__experimentalRecursionProvider","useHasRecursion","__experimentalUseHasRecursion","Warning","ContrastChecker","useMultipleOriginColorsAndGradients","UnsupportedBlockDetails","BottomSheetSettings","BlockSettingsButton","blockSettingsScreens","VideoPlayer","VIDEO_ASPECT_RATIO","getSpacingPresetCssVar","getCustomValueFromPreset","isValueSpacingPreset","BlockList","BlockMover","BlockToolbar","BlockVariationPicker","BlockStyles","DefaultBlockAppender","__unstableEditorStyles","Inserter","InserterButton","useBlockProps","FloatingToolbar","BlockEditorProvider"],"sources":["@wordpress/block-editor/src/components/index.native.js"],"sourcesContent":["// Block Creation Components.\nexport {\n\tBlockAlignmentControl,\n\tBlockAlignmentToolbar,\n} from './block-alignment-control';\nexport { BlockContextProvider } from './block-context';\nexport {\n\tdefault as BlockControls,\n\tBlockFormatControls,\n} from './block-controls';\nexport { default as BlockEdit, useBlockEditContext } from './block-edit';\nexport { default as BlockIcon } from './block-icon';\nexport {\n\tBlockVerticalAlignmentToolbar,\n\tBlockVerticalAlignmentControl,\n} from './block-vertical-alignment-control';\nexport * from './colors';\nexport * from './gradients';\nexport * from './font-sizes';\nexport { AlignmentControl, AlignmentToolbar } from './alignment-control';\nexport { default as InnerBlocks, useInnerBlocksProps } from './inner-blocks';\nexport {\n\tdefault as InspectorControls,\n\tInspectorAdvancedControls,\n} from './inspector-controls';\nexport {\n\tJustifyToolbar,\n\tJustifyContentControl,\n} from './justify-content-control';\nexport { default as LineHeightControl } from './line-height-control';\nexport { default as HeadingLevelDropdown } from './block-heading-level-dropdown';\nexport { default as PlainText } from './plain-text';\nexport {\n\tdefault as RichText,\n\tRichTextShortcut,\n\tRichTextToolbarButton,\n\t__unstableRichTextInputEvent,\n} from './rich-text';\nexport { default as MediaReplaceFlow } from './media-replace-flow';\nexport { default as MediaPlaceholder } from './media-placeholder';\nexport { default as MediaUpload } from './media-upload';\nexport {\n\tMEDIA_TYPE_IMAGE,\n\tMEDIA_TYPE_VIDEO,\n\tMEDIA_TYPE_AUDIO,\n\tMEDIA_TYPE_ANY,\n} from './media-upload/constants';\nexport {\n\tdefault as MediaUploadProgress,\n\tMEDIA_UPLOAD_STATE_UPLOADING,\n\tMEDIA_UPLOAD_STATE_SUCCEEDED,\n\tMEDIA_UPLOAD_STATE_FAILED,\n\tMEDIA_UPLOAD_STATE_RESET,\n} from './media-upload-progress';\nexport { default as BlockMediaUpdateProgress } from './block-media-update-progress';\nexport { default as URLInput } from './url-input';\nexport { default as BlockInvalidWarning } from './block-list/block-invalid-warning';\nexport { default as BlockCaption } from './block-caption';\nexport { default as Caption } from './caption';\nexport { default as PanelColorSettings } from './panel-color-settings';\nexport { default as __experimentalPanelColorGradientSettings } from './colors-gradients/panel-color-gradient-settings';\nexport { useSettings, default as useSetting } from './use-settings';\nexport {\n\tRecursionProvider as __experimentalRecursionProvider,\n\tuseHasRecursion as __experimentalUseHasRecursion,\n} from './recursion-provider';\nexport { default as Warning } from './warning';\nexport { default as ContrastChecker } from './contrast-checker';\nexport { default as useMultipleOriginColorsAndGradients } from './colors-gradients/use-multiple-origin-colors-and-gradients';\nexport { default as UnsupportedBlockDetails } from './unsupported-block-details';\n\nexport {\n\tBottomSheetSettings,\n\tBlockSettingsButton,\n\tblockSettingsScreens,\n} from './block-settings';\nexport { default as VideoPlayer, VIDEO_ASPECT_RATIO } from './video-player';\n\nexport {\n\tgetSpacingPresetCssVar,\n\tgetCustomValueFromPreset,\n\tisValueSpacingPreset,\n} from './spacing-sizes-control/utils';\n// Content Related Components.\nexport { default as BlockList } from './block-list';\nexport { default as BlockMover } from './block-mover';\nexport { default as BlockToolbar } from './block-toolbar';\nexport { default as BlockVariationPicker } from './block-variation-picker';\nexport { default as BlockStyles } from './block-styles';\nexport { default as DefaultBlockAppender } from './default-block-appender';\nexport { default as __unstableEditorStyles } from './editor-styles';\nexport { default as Inserter } from './inserter';\nexport { default as InserterButton } from './inserter-button';\nexport { useBlockProps } from './block-list/use-block-props';\nexport { default as FloatingToolbar } from './floating-toolbar';\n\n// State Related Components.\nexport { default as BlockEditorProvider } from './provider';\n"],"mappings":"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"}
@@ -6,12 +6,12 @@ import { useRef, useEffect } from '@wordpress/element';
6
6
  import { Spinner, SearchControl } from '@wordpress/components';
7
7
  import { focus } from '@wordpress/dom';
8
8
  import { __ } from '@wordpress/i18n';
9
+ import { useDebouncedInput } from '@wordpress/compose';
9
10
 
10
11
  /**
11
12
  * Internal dependencies
12
13
  */
13
14
  import MediaList from './media-list';
14
- import useDebouncedInput from '../hooks/use-debounced-input';
15
15
  import { useMediaResults } from './hooks';
16
16
  import InserterNoResults from '../no-results';
17
17
  const INITIAL_MEDIA_ITEMS_PER_PAGE = 10;
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useEffect","Spinner","SearchControl","focus","__","MediaList","useDebouncedInput","useMediaResults","InserterNoResults","INITIAL_MEDIA_ITEMS_PER_PAGE","MediaCategoryDialog","rootClientId","onInsert","category","container","timeout","setTimeout","firstTabbable","tabbable","find","current","clearTimeout","createElement","ref","className","MediaCategoryPanel","search","setSearch","debouncedSearch","mediaList","isLoading","per_page","baseCssClass","searchLabel","labels","search_items","onChange","value","label","placeholder","length","onClick"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useEffect } from '@wordpress/element';\nimport { Spinner, SearchControl } from '@wordpress/components';\nimport { focus } from '@wordpress/dom';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport MediaList from './media-list';\nimport useDebouncedInput from '../hooks/use-debounced-input';\nimport { useMediaResults } from './hooks';\nimport InserterNoResults from '../no-results';\n\nconst INITIAL_MEDIA_ITEMS_PER_PAGE = 10;\n\nexport function MediaCategoryDialog( { rootClientId, onInsert, category } ) {\n\tconst container = useRef();\n\tuseEffect( () => {\n\t\tconst timeout = setTimeout( () => {\n\t\t\tconst [ firstTabbable ] = focus.tabbable.find( container.current );\n\t\t\tfirstTabbable?.focus();\n\t\t} );\n\t\treturn () => clearTimeout( timeout );\n\t}, [ category ] );\n\treturn (\n\t\t<div ref={ container } className=\"block-editor-inserter__media-dialog\">\n\t\t\t<MediaCategoryPanel\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t\tcategory={ category }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport function MediaCategoryPanel( { rootClientId, onInsert, category } ) {\n\tconst [ search, setSearch, debouncedSearch ] = useDebouncedInput();\n\tconst { mediaList, isLoading } = useMediaResults( category, {\n\t\tper_page: !! debouncedSearch ? 20 : INITIAL_MEDIA_ITEMS_PER_PAGE,\n\t\tsearch: debouncedSearch,\n\t} );\n\tconst baseCssClass = 'block-editor-inserter__media-panel';\n\tconst searchLabel = category.labels.search_items || __( 'Search' );\n\treturn (\n\t\t<div className={ baseCssClass }>\n\t\t\t<SearchControl\n\t\t\t\tclassName={ `${ baseCssClass }-search` }\n\t\t\t\tonChange={ setSearch }\n\t\t\t\tvalue={ search }\n\t\t\t\tlabel={ searchLabel }\n\t\t\t\tplaceholder={ searchLabel }\n\t\t\t/>\n\t\t\t{ isLoading && (\n\t\t\t\t<div className={ `${ baseCssClass }-spinner` }>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ ! isLoading && ! mediaList?.length && <InserterNoResults /> }\n\t\t\t{ ! isLoading && !! mediaList?.length && (\n\t\t\t\t<MediaList\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tonClick={ onInsert }\n\t\t\t\t\tmediaList={ mediaList }\n\t\t\t\t\tcategory={ category }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AACtD,SAASC,OAAO,EAAEC,aAAa,QAAQ,uBAAuB;AAC9D,SAASC,KAAK,QAAQ,gBAAgB;AACtC,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,SAAS,MAAM,cAAc;AACpC,OAAOC,iBAAiB,MAAM,8BAA8B;AAC5D,SAASC,eAAe,QAAQ,SAAS;AACzC,OAAOC,iBAAiB,MAAM,eAAe;AAE7C,MAAMC,4BAA4B,GAAG,EAAE;AAEvC,OAAO,SAASC,mBAAmBA,CAAE;EAAEC,YAAY;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAC3E,MAAMC,SAAS,GAAGf,MAAM,CAAC,CAAC;EAC1BC,SAAS,CAAE,MAAM;IAChB,MAAMe,OAAO,GAAGC,UAAU,CAAE,MAAM;MACjC,MAAM,CAAEC,aAAa,CAAE,GAAGd,KAAK,CAACe,QAAQ,CAACC,IAAI,CAAEL,SAAS,CAACM,OAAQ,CAAC;MAClEH,aAAa,EAAEd,KAAK,CAAC,CAAC;IACvB,CAAE,CAAC;IACH,OAAO,MAAMkB,YAAY,CAAEN,OAAQ,CAAC;EACrC,CAAC,EAAE,CAAEF,QAAQ,CAAG,CAAC;EACjB,OACCS,aAAA;IAAKC,GAAG,EAAGT,SAAW;IAACU,SAAS,EAAC;EAAqC,GACrEF,aAAA,CAACG,kBAAkB;IAClBd,YAAY,EAAGA,YAAc;IAC7BC,QAAQ,EAAGA,QAAU;IACrBC,QAAQ,EAAGA;EAAU,CACrB,CACG,CAAC;AAER;AAEA,OAAO,SAASY,kBAAkBA,CAAE;EAAEd,YAAY;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAC1E,MAAM,CAAEa,MAAM,EAAEC,SAAS,EAAEC,eAAe,CAAE,GAAGtB,iBAAiB,CAAC,CAAC;EAClE,MAAM;IAAEuB,SAAS;IAAEC;EAAU,CAAC,GAAGvB,eAAe,CAAEM,QAAQ,EAAE;IAC3DkB,QAAQ,EAAE,CAAC,CAAEH,eAAe,GAAG,EAAE,GAAGnB,4BAA4B;IAChEiB,MAAM,EAAEE;EACT,CAAE,CAAC;EACH,MAAMI,YAAY,GAAG,oCAAoC;EACzD,MAAMC,WAAW,GAAGpB,QAAQ,CAACqB,MAAM,CAACC,YAAY,IAAI/B,EAAE,CAAE,QAAS,CAAC;EAClE,OACCkB,aAAA;IAAKE,SAAS,EAAGQ;EAAc,GAC9BV,aAAA,CAACpB,aAAa;IACbsB,SAAS,EAAI,GAAGQ,YAAc,SAAU;IACxCI,QAAQ,EAAGT,SAAW;IACtBU,KAAK,EAAGX,MAAQ;IAChBY,KAAK,EAAGL,WAAa;IACrBM,WAAW,EAAGN;EAAa,CAC3B,CAAC,EACAH,SAAS,IACVR,aAAA;IAAKE,SAAS,EAAI,GAAGQ,YAAc;EAAW,GAC7CV,aAAA,CAACrB,OAAO,MAAE,CACN,CACL,EACC,CAAE6B,SAAS,IAAI,CAAED,SAAS,EAAEW,MAAM,IAAIlB,aAAA,CAACd,iBAAiB,MAAE,CAAC,EAC3D,CAAEsB,SAAS,IAAI,CAAC,CAAED,SAAS,EAAEW,MAAM,IACpClB,aAAA,CAACjB,SAAS;IACTM,YAAY,EAAGA,YAAc;IAC7B8B,OAAO,EAAG7B,QAAU;IACpBiB,SAAS,EAAGA,SAAW;IACvBhB,QAAQ,EAAGA;EAAU,CACrB,CAEE,CAAC;AAER"}
1
+ {"version":3,"names":["useRef","useEffect","Spinner","SearchControl","focus","__","useDebouncedInput","MediaList","useMediaResults","InserterNoResults","INITIAL_MEDIA_ITEMS_PER_PAGE","MediaCategoryDialog","rootClientId","onInsert","category","container","timeout","setTimeout","firstTabbable","tabbable","find","current","clearTimeout","createElement","ref","className","MediaCategoryPanel","search","setSearch","debouncedSearch","mediaList","isLoading","per_page","baseCssClass","searchLabel","labels","search_items","onChange","value","label","placeholder","length","onClick"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useEffect } from '@wordpress/element';\nimport { Spinner, SearchControl } from '@wordpress/components';\nimport { focus } from '@wordpress/dom';\nimport { __ } from '@wordpress/i18n';\nimport { useDebouncedInput } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport MediaList from './media-list';\nimport { useMediaResults } from './hooks';\nimport InserterNoResults from '../no-results';\n\nconst INITIAL_MEDIA_ITEMS_PER_PAGE = 10;\n\nexport function MediaCategoryDialog( { rootClientId, onInsert, category } ) {\n\tconst container = useRef();\n\tuseEffect( () => {\n\t\tconst timeout = setTimeout( () => {\n\t\t\tconst [ firstTabbable ] = focus.tabbable.find( container.current );\n\t\t\tfirstTabbable?.focus();\n\t\t} );\n\t\treturn () => clearTimeout( timeout );\n\t}, [ category ] );\n\treturn (\n\t\t<div ref={ container } className=\"block-editor-inserter__media-dialog\">\n\t\t\t<MediaCategoryPanel\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t\tcategory={ category }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport function MediaCategoryPanel( { rootClientId, onInsert, category } ) {\n\tconst [ search, setSearch, debouncedSearch ] = useDebouncedInput();\n\tconst { mediaList, isLoading } = useMediaResults( category, {\n\t\tper_page: !! debouncedSearch ? 20 : INITIAL_MEDIA_ITEMS_PER_PAGE,\n\t\tsearch: debouncedSearch,\n\t} );\n\tconst baseCssClass = 'block-editor-inserter__media-panel';\n\tconst searchLabel = category.labels.search_items || __( 'Search' );\n\treturn (\n\t\t<div className={ baseCssClass }>\n\t\t\t<SearchControl\n\t\t\t\tclassName={ `${ baseCssClass }-search` }\n\t\t\t\tonChange={ setSearch }\n\t\t\t\tvalue={ search }\n\t\t\t\tlabel={ searchLabel }\n\t\t\t\tplaceholder={ searchLabel }\n\t\t\t/>\n\t\t\t{ isLoading && (\n\t\t\t\t<div className={ `${ baseCssClass }-spinner` }>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ ! isLoading && ! mediaList?.length && <InserterNoResults /> }\n\t\t\t{ ! isLoading && !! mediaList?.length && (\n\t\t\t\t<MediaList\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tonClick={ onInsert }\n\t\t\t\t\tmediaList={ mediaList }\n\t\t\t\t\tcategory={ category }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AACtD,SAASC,OAAO,EAAEC,aAAa,QAAQ,uBAAuB;AAC9D,SAASC,KAAK,QAAQ,gBAAgB;AACtC,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,iBAAiB,QAAQ,oBAAoB;;AAEtD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,cAAc;AACpC,SAASC,eAAe,QAAQ,SAAS;AACzC,OAAOC,iBAAiB,MAAM,eAAe;AAE7C,MAAMC,4BAA4B,GAAG,EAAE;AAEvC,OAAO,SAASC,mBAAmBA,CAAE;EAAEC,YAAY;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAC3E,MAAMC,SAAS,GAAGf,MAAM,CAAC,CAAC;EAC1BC,SAAS,CAAE,MAAM;IAChB,MAAMe,OAAO,GAAGC,UAAU,CAAE,MAAM;MACjC,MAAM,CAAEC,aAAa,CAAE,GAAGd,KAAK,CAACe,QAAQ,CAACC,IAAI,CAAEL,SAAS,CAACM,OAAQ,CAAC;MAClEH,aAAa,EAAEd,KAAK,CAAC,CAAC;IACvB,CAAE,CAAC;IACH,OAAO,MAAMkB,YAAY,CAAEN,OAAQ,CAAC;EACrC,CAAC,EAAE,CAAEF,QAAQ,CAAG,CAAC;EACjB,OACCS,aAAA;IAAKC,GAAG,EAAGT,SAAW;IAACU,SAAS,EAAC;EAAqC,GACrEF,aAAA,CAACG,kBAAkB;IAClBd,YAAY,EAAGA,YAAc;IAC7BC,QAAQ,EAAGA,QAAU;IACrBC,QAAQ,EAAGA;EAAU,CACrB,CACG,CAAC;AAER;AAEA,OAAO,SAASY,kBAAkBA,CAAE;EAAEd,YAAY;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAC1E,MAAM,CAAEa,MAAM,EAAEC,SAAS,EAAEC,eAAe,CAAE,GAAGvB,iBAAiB,CAAC,CAAC;EAClE,MAAM;IAAEwB,SAAS;IAAEC;EAAU,CAAC,GAAGvB,eAAe,CAAEM,QAAQ,EAAE;IAC3DkB,QAAQ,EAAE,CAAC,CAAEH,eAAe,GAAG,EAAE,GAAGnB,4BAA4B;IAChEiB,MAAM,EAAEE;EACT,CAAE,CAAC;EACH,MAAMI,YAAY,GAAG,oCAAoC;EACzD,MAAMC,WAAW,GAAGpB,QAAQ,CAACqB,MAAM,CAACC,YAAY,IAAI/B,EAAE,CAAE,QAAS,CAAC;EAClE,OACCkB,aAAA;IAAKE,SAAS,EAAGQ;EAAc,GAC9BV,aAAA,CAACpB,aAAa;IACbsB,SAAS,EAAI,GAAGQ,YAAc,SAAU;IACxCI,QAAQ,EAAGT,SAAW;IACtBU,KAAK,EAAGX,MAAQ;IAChBY,KAAK,EAAGL,WAAa;IACrBM,WAAW,EAAGN;EAAa,CAC3B,CAAC,EACAH,SAAS,IACVR,aAAA;IAAKE,SAAS,EAAI,GAAGQ,YAAc;EAAW,GAC7CV,aAAA,CAACrB,OAAO,MAAE,CACN,CACL,EACC,CAAE6B,SAAS,IAAI,CAAED,SAAS,EAAEW,MAAM,IAAIlB,aAAA,CAACd,iBAAiB,MAAE,CAAC,EAC3D,CAAEsB,SAAS,IAAI,CAAC,CAAED,SAAS,EAAEW,MAAM,IACpClB,aAAA,CAAChB,SAAS;IACTK,YAAY,EAAGA,YAAc;IAC7B8B,OAAO,EAAG7B,QAAU;IACpBiB,SAAS,EAAGA,SAAW;IACvBhB,QAAQ,EAAGA;EAAU,CACrB,CAEE,CAAC;AAER"}
@@ -8,13 +8,15 @@ import classnames from 'classnames';
8
8
  * WordPress dependencies
9
9
  */
10
10
  import { forwardRef, useState, useCallback, useMemo, useImperativeHandle, useRef } from '@wordpress/element';
11
- import { VisuallyHidden, SearchControl } from '@wordpress/components';
11
+ import { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';
12
12
  import { __ } from '@wordpress/i18n';
13
13
  import { useSelect } from '@wordpress/data';
14
+ import { useDebouncedInput } from '@wordpress/compose';
14
15
 
15
16
  /**
16
17
  * Internal dependencies
17
18
  */
19
+ import { unlock } from '../../lock-unlock';
18
20
  import Tips from './tips';
19
21
  import InserterPreviewPanel from './preview-panel';
20
22
  import BlockTypesTab from './block-types-tab';
@@ -22,7 +24,6 @@ import BlockPatternsTab from './block-patterns-tab';
22
24
  import { PatternCategoryPreviewPanel } from './block-patterns-tab/pattern-category-preview-panel';
23
25
  import { MediaTab, MediaCategoryDialog, useMediaCategories } from './media-tab';
24
26
  import InserterSearchResults from './search-results';
25
- import useDebouncedInput from './hooks/use-debounced-input';
26
27
  import useInsertionPoint from './hooks/use-insertion-point';
27
28
  import InserterTabs from './tabs';
28
29
  import { store as blockEditorStore } from '../../store';
@@ -56,11 +57,11 @@ function InserterMenu({
56
57
  inserterItems
57
58
  } = useSelect(select => {
58
59
  const {
59
- __experimentalGetAllowedPatterns,
60
+ hasAllowedPatterns,
60
61
  getInserterItems
61
- } = select(blockEditorStore);
62
+ } = unlock(select(blockEditorStore));
62
63
  return {
63
- showPatterns: !!__experimentalGetAllowedPatterns(destinationRootClientId).length,
64
+ showPatterns: hasAllowedPatterns(destinationRootClientId),
64
65
  inserterItems: getInserterItems(destinationRootClientId)
65
66
  };
66
67
  }, [destinationRootClientId]);
@@ -183,9 +184,15 @@ function InserterMenu({
183
184
  rootClientId: destinationRootClientId,
184
185
  onInsert: onInsert,
185
186
  category: selectedMediaCategory
186
- }), showInserterHelpPanel && hoveredItem && createElement(InserterPreviewPanel, {
187
+ }), showInserterHelpPanel && hoveredItem && createElement(Popover, {
188
+ className: "block-editor-inserter__preview-container__popover",
189
+ placement: "right-start",
190
+ offset: 16,
191
+ focusOnMount: false,
192
+ animate: false
193
+ }, createElement(InserterPreviewPanel, {
187
194
  item: hoveredItem
188
- }), showPatternPanel && createElement(PatternCategoryPreviewPanel, {
195
+ })), showPatternPanel && createElement(PatternCategoryPreviewPanel, {
189
196
  rootClientId: destinationRootClientId,
190
197
  onInsert: onInsertPattern,
191
198
  onHover: onHoverPattern,
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","forwardRef","useState","useCallback","useMemo","useImperativeHandle","useRef","VisuallyHidden","SearchControl","__","useSelect","Tips","InserterPreviewPanel","BlockTypesTab","BlockPatternsTab","PatternCategoryPreviewPanel","MediaTab","MediaCategoryDialog","useMediaCategories","InserterSearchResults","useDebouncedInput","useInsertionPoint","InserterTabs","store","blockEditorStore","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","prioritizePatterns","ref","filterValue","setFilterValue","delayedFilterValue","hoveredItem","setHoveredItem","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","selectedTab","setSelectedTab","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","insertionIndex","showPatterns","inserterItems","select","__experimentalGetAllowedPatterns","getInserterItems","length","hasReusableBlocks","some","category","mediaCategories","showMedia","onInsert","blocks","meta","shouldForceFocusBlock","onInsertPattern","patternName","onHover","item","onHoverPattern","onClickPatternCategory","patternCategory","filter","blocksTab","createElement","Fragment","className","as","patternsTab","onSelectCategory","selectedCategory","mediaTab","getCurrentTab","tab","name","searchRef","focusSearch","current","focus","showPatternPanel","showAsTabs","showMediaPanel","handleSetSelectedTab","value","__nextHasNoMarginBottom","onChange","label","placeholder","showBlockDirectory","showReusableBlocks","showTitlesAsTooltip"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseImperativeHandle,\n\tuseRef,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\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 { PatternCategoryPreviewPanel } from './block-patterns-tab/pattern-category-preview-panel';\nimport { MediaTab, MediaCategoryDialog, useMediaCategories } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useDebouncedInput from './hooks/use-debounced-input';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport InserterTabs from './tabs';\nimport { store as blockEditorStore } from '../../store';\n\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\tprioritizePatterns,\n\t},\n\tref\n) {\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] =\n\t\tuseState( null );\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst [ selectedTab, setSelectedTab ] = useState( null );\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 { showPatterns, inserterItems } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __experimentalGetAllowedPatterns, getInserterItems } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tshowPatterns: !! __experimentalGetAllowedPatterns(\n\t\t\t\t\tdestinationRootClientId\n\t\t\t\t).length,\n\t\t\t\tinserterItems: getInserterItems( destinationRootClientId ),\n\t\t\t};\n\t\t},\n\t\t[ destinationRootClientId ]\n\t);\n\tconst hasReusableBlocks = useMemo( () => {\n\t\treturn inserterItems.some(\n\t\t\t( { category } ) => category === 'reusable'\n\t\t);\n\t}, [ inserterItems ] );\n\n\tconst mediaCategories = useMediaCategories( destinationRootClientId );\n\tconst showMedia = !! mediaCategories.length;\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock ) => {\n\t\t\tonInsertBlocks( blocks, meta, shouldForceFocusBlock );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName ) => {\n\t\t\tonInsertBlocks( blocks, { patternName } );\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 onHoverPattern = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( !! item );\n\t\t},\n\t\t[ onToggleInsertionPoint ]\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},\n\t\t[ setSelectedPatternCategory ]\n\t);\n\n\tconst blocksTab = useMemo(\n\t\t() => (\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\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\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tonHover,\n\t\t\tshowMostUsedBlocks,\n\t\t\tshowInserterHelpPanel,\n\t\t]\n\t);\n\n\tconst patternsTab = useMemo(\n\t\t() => (\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsertPattern,\n\t\t\tonClickPatternCategory,\n\t\t\tselectedPatternCategory,\n\t\t]\n\t);\n\n\tconst mediaTab = useMemo(\n\t\t() => (\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tselectedMediaCategory,\n\t\t\tsetSelectedMediaCategory,\n\t\t]\n\t);\n\n\tconst getCurrentTab = useCallback(\n\t\t( tab ) => {\n\t\t\tif ( tab.name === 'blocks' ) {\n\t\t\t\treturn blocksTab;\n\t\t\t} else if ( tab.name === 'patterns' ) {\n\t\t\t\treturn patternsTab;\n\t\t\t} else if ( tab.name === 'media' ) {\n\t\t\t\treturn mediaTab;\n\t\t\t}\n\t\t},\n\t\t[ blocksTab, patternsTab, mediaTab ]\n\t);\n\n\tconst searchRef = useRef();\n\tuseImperativeHandle( ref, () => ( {\n\t\tfocusSearch: () => {\n\t\t\tsearchRef.current.focus();\n\t\t},\n\t} ) );\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\tselectedPatternCategory;\n\tconst showAsTabs =\n\t\t! delayedFilterValue &&\n\t\t( showPatterns || hasReusableBlocks || showMedia );\n\tconst showMediaPanel =\n\t\tselectedTab === 'media' &&\n\t\t! delayedFilterValue &&\n\t\tselectedMediaCategory;\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\treturn (\n\t\t<div className=\"block-editor-inserter__menu\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'block-editor-inserter__main-area', {\n\t\t\t\t\t'show-as-tabs': showAsTabs,\n\t\t\t\t} ) }\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 ) setHoveredItem( null );\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 for blocks and patterns' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t\tref={ searchRef }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tonHoverPattern={ onHoverPattern }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t{ showAsTabs && (\n\t\t\t\t\t<InserterTabs\n\t\t\t\t\t\tshowPatterns={ showPatterns }\n\t\t\t\t\t\tshowReusableBlocks={ hasReusableBlocks }\n\t\t\t\t\t\tshowMedia={ showMedia }\n\t\t\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ getCurrentTab }\n\t\t\t\t\t</InserterTabs>\n\t\t\t\t) }\n\t\t\t\t{ ! delayedFilterValue && ! showAsTabs && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t{ blocksTab }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ showMediaPanel && (\n\t\t\t\t<MediaCategoryDialog\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t) }\n\t\t\t{ showPatternPanel && (\n\t\t\t\t<PatternCategoryPreviewPanel\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( InserterMenu );\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","forwardRef","useState","useCallback","useMemo","useImperativeHandle","useRef","VisuallyHidden","SearchControl","Popover","__","useSelect","useDebouncedInput","unlock","Tips","InserterPreviewPanel","BlockTypesTab","BlockPatternsTab","PatternCategoryPreviewPanel","MediaTab","MediaCategoryDialog","useMediaCategories","InserterSearchResults","useInsertionPoint","InserterTabs","store","blockEditorStore","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","prioritizePatterns","ref","filterValue","setFilterValue","delayedFilterValue","hoveredItem","setHoveredItem","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","selectedTab","setSelectedTab","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","insertionIndex","showPatterns","inserterItems","select","hasAllowedPatterns","getInserterItems","hasReusableBlocks","some","category","mediaCategories","showMedia","length","onInsert","blocks","meta","shouldForceFocusBlock","onInsertPattern","patternName","onHover","item","onHoverPattern","onClickPatternCategory","patternCategory","filter","blocksTab","createElement","Fragment","className","as","patternsTab","onSelectCategory","selectedCategory","mediaTab","getCurrentTab","tab","name","searchRef","focusSearch","current","focus","showPatternPanel","showAsTabs","showMediaPanel","handleSetSelectedTab","value","__nextHasNoMarginBottom","onChange","label","placeholder","showBlockDirectory","showReusableBlocks","placement","offset","focusOnMount","animate","showTitlesAsTooltip"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseImperativeHandle,\n\tuseRef,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useDebouncedInput } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Tips from './tips';\nimport InserterPreviewPanel from './preview-panel';\nimport BlockTypesTab from './block-types-tab';\nimport BlockPatternsTab from './block-patterns-tab';\nimport { PatternCategoryPreviewPanel } from './block-patterns-tab/pattern-category-preview-panel';\nimport { MediaTab, MediaCategoryDialog, useMediaCategories } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport InserterTabs from './tabs';\nimport { store as blockEditorStore } from '../../store';\n\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\tprioritizePatterns,\n\t},\n\tref\n) {\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] =\n\t\tuseState( null );\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst [ selectedTab, setSelectedTab ] = useState( null );\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 { showPatterns, inserterItems } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { hasAllowedPatterns, getInserterItems } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tshowPatterns: hasAllowedPatterns( destinationRootClientId ),\n\t\t\t\tinserterItems: getInserterItems( destinationRootClientId ),\n\t\t\t};\n\t\t},\n\t\t[ destinationRootClientId ]\n\t);\n\tconst hasReusableBlocks = useMemo( () => {\n\t\treturn inserterItems.some(\n\t\t\t( { category } ) => category === 'reusable'\n\t\t);\n\t}, [ inserterItems ] );\n\n\tconst mediaCategories = useMediaCategories( destinationRootClientId );\n\tconst showMedia = !! mediaCategories.length;\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock ) => {\n\t\t\tonInsertBlocks( blocks, meta, shouldForceFocusBlock );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName ) => {\n\t\t\tonInsertBlocks( blocks, { patternName } );\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 onHoverPattern = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( !! item );\n\t\t},\n\t\t[ onToggleInsertionPoint ]\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},\n\t\t[ setSelectedPatternCategory ]\n\t);\n\n\tconst blocksTab = useMemo(\n\t\t() => (\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\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\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tonHover,\n\t\t\tshowMostUsedBlocks,\n\t\t\tshowInserterHelpPanel,\n\t\t]\n\t);\n\n\tconst patternsTab = useMemo(\n\t\t() => (\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsertPattern,\n\t\t\tonClickPatternCategory,\n\t\t\tselectedPatternCategory,\n\t\t]\n\t);\n\n\tconst mediaTab = useMemo(\n\t\t() => (\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tselectedMediaCategory,\n\t\t\tsetSelectedMediaCategory,\n\t\t]\n\t);\n\n\tconst getCurrentTab = useCallback(\n\t\t( tab ) => {\n\t\t\tif ( tab.name === 'blocks' ) {\n\t\t\t\treturn blocksTab;\n\t\t\t} else if ( tab.name === 'patterns' ) {\n\t\t\t\treturn patternsTab;\n\t\t\t} else if ( tab.name === 'media' ) {\n\t\t\t\treturn mediaTab;\n\t\t\t}\n\t\t},\n\t\t[ blocksTab, patternsTab, mediaTab ]\n\t);\n\n\tconst searchRef = useRef();\n\tuseImperativeHandle( ref, () => ( {\n\t\tfocusSearch: () => {\n\t\t\tsearchRef.current.focus();\n\t\t},\n\t} ) );\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\tselectedPatternCategory;\n\tconst showAsTabs =\n\t\t! delayedFilterValue &&\n\t\t( showPatterns || hasReusableBlocks || showMedia );\n\tconst showMediaPanel =\n\t\tselectedTab === 'media' &&\n\t\t! delayedFilterValue &&\n\t\tselectedMediaCategory;\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\treturn (\n\t\t<div className=\"block-editor-inserter__menu\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'block-editor-inserter__main-area', {\n\t\t\t\t\t'show-as-tabs': showAsTabs,\n\t\t\t\t} ) }\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 ) setHoveredItem( null );\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 for blocks and patterns' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t\tref={ searchRef }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tonHoverPattern={ onHoverPattern }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t{ showAsTabs && (\n\t\t\t\t\t<InserterTabs\n\t\t\t\t\t\tshowPatterns={ showPatterns }\n\t\t\t\t\t\tshowReusableBlocks={ hasReusableBlocks }\n\t\t\t\t\t\tshowMedia={ showMedia }\n\t\t\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ getCurrentTab }\n\t\t\t\t\t</InserterTabs>\n\t\t\t\t) }\n\t\t\t\t{ ! delayedFilterValue && ! showAsTabs && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t{ blocksTab }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ showMediaPanel && (\n\t\t\t\t<MediaCategoryDialog\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t/>\n\t\t\t) }\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\t{ showPatternPanel && (\n\t\t\t\t<PatternCategoryPreviewPanel\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( InserterMenu );\n"],"mappings":"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"}
@@ -46,11 +46,11 @@ function InserterPreviewPanel({
46
46
  blocks: blocks,
47
47
  viewportWidth: (_example$viewportWidt = example?.viewportWidth) !== null && _example$viewportWidt !== void 0 ? _example$viewportWidt : 500,
48
48
  additionalStyles: [{
49
- css: 'body { padding: 16px; }'
49
+ css: 'body { padding: 24px; }'
50
50
  }]
51
51
  })) : createElement("div", {
52
52
  className: "block-editor-inserter__preview-content-missing"
53
- }, __('No Preview Available.'))), !isReusable && createElement(BlockCard, {
53
+ }, __('No preview available.'))), !isReusable && createElement(BlockCard, {
54
54
  title: title,
55
55
  icon: icon,
56
56
  description: description
@@ -1 +1 @@
1
- {"version":3,"names":["isReusableBlock","createBlock","getBlockFromExample","useMemo","__","BlockCard","BlockPreview","InserterPreviewPanel","item","_example$viewportWidt","name","title","icon","description","initialAttributes","example","isReusable","blocks","attributes","innerBlocks","createElement","className","viewportWidth","additionalStyles","css"],"sources":["@wordpress/block-editor/src/components/inserter/preview-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tisReusableBlock,\n\tcreateBlock,\n\tgetBlockFromExample,\n} from '@wordpress/blocks';\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockCard from '../block-card';\nimport BlockPreview from '../block-preview';\n\nfunction InserterPreviewPanel( { item } ) {\n\tconst { name, title, icon, description, initialAttributes, example } = item;\n\tconst isReusable = isReusableBlock( item );\n\tconst blocks = useMemo( () => {\n\t\tif ( ! example ) {\n\t\t\treturn createBlock( name, initialAttributes );\n\t\t}\n\t\treturn getBlockFromExample( name, {\n\t\t\tattributes: {\n\t\t\t\t...example.attributes,\n\t\t\t\t...initialAttributes,\n\t\t\t},\n\t\t\tinnerBlocks: example.innerBlocks,\n\t\t} );\n\t}, [ name, example, initialAttributes ] );\n\n\treturn (\n\t\t<div className=\"block-editor-inserter__preview-container\">\n\t\t\t<div className=\"block-editor-inserter__preview\">\n\t\t\t\t{ isReusable || example ? (\n\t\t\t\t\t<div className=\"block-editor-inserter__preview-content\">\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\tviewportWidth={ example?.viewportWidth ?? 500 }\n\t\t\t\t\t\t\tadditionalStyles={ [\n\t\t\t\t\t\t\t\t{ css: 'body { padding: 16px; }' },\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<div className=\"block-editor-inserter__preview-content-missing\">\n\t\t\t\t\t\t{ __( 'No Preview Available.' ) }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ ! isReusable && (\n\t\t\t\t<BlockCard\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tdescription={ description }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default InserterPreviewPanel;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,eAAe,EACfC,WAAW,EACXC,mBAAmB,QACb,mBAAmB;AAC1B,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,SAAS,MAAM,eAAe;AACrC,OAAOC,YAAY,MAAM,kBAAkB;AAE3C,SAASC,oBAAoBA,CAAE;EAAEC;AAAK,CAAC,EAAG;EAAA,IAAAC,qBAAA;EACzC,MAAM;IAAEC,IAAI;IAAEC,KAAK;IAAEC,IAAI;IAAEC,WAAW;IAAEC,iBAAiB;IAAEC;EAAQ,CAAC,GAAGP,IAAI;EAC3E,MAAMQ,UAAU,GAAGhB,eAAe,CAAEQ,IAAK,CAAC;EAC1C,MAAMS,MAAM,GAAGd,OAAO,CAAE,MAAM;IAC7B,IAAK,CAAEY,OAAO,EAAG;MAChB,OAAOd,WAAW,CAAES,IAAI,EAAEI,iBAAkB,CAAC;IAC9C;IACA,OAAOZ,mBAAmB,CAAEQ,IAAI,EAAE;MACjCQ,UAAU,EAAE;QACX,GAAGH,OAAO,CAACG,UAAU;QACrB,GAAGJ;MACJ,CAAC;MACDK,WAAW,EAAEJ,OAAO,CAACI;IACtB,CAAE,CAAC;EACJ,CAAC,EAAE,CAAET,IAAI,EAAEK,OAAO,EAAED,iBAAiB,CAAG,CAAC;EAEzC,OACCM,aAAA;IAAKC,SAAS,EAAC;EAA0C,GACxDD,aAAA;IAAKC,SAAS,EAAC;EAAgC,GAC5CL,UAAU,IAAID,OAAO,GACtBK,aAAA;IAAKC,SAAS,EAAC;EAAwC,GACtDD,aAAA,CAACd,YAAY;IACZW,MAAM,EAAGA,MAAQ;IACjBK,aAAa,GAAAb,qBAAA,GAAGM,OAAO,EAAEO,aAAa,cAAAb,qBAAA,cAAAA,qBAAA,GAAI,GAAK;IAC/Cc,gBAAgB,EAAG,CAClB;MAAEC,GAAG,EAAE;IAA0B,CAAC;EAChC,CACH,CACG,CAAC,GAENJ,aAAA;IAAKC,SAAS,EAAC;EAAgD,GAC5DjB,EAAE,CAAE,uBAAwB,CAC1B,CAEF,CAAC,EACJ,CAAEY,UAAU,IACbI,aAAA,CAACf,SAAS;IACTM,KAAK,EAAGA,KAAO;IACfC,IAAI,EAAGA,IAAM;IACbC,WAAW,EAAGA;EAAa,CAC3B,CAEE,CAAC;AAER;AAEA,eAAeN,oBAAoB"}
1
+ {"version":3,"names":["isReusableBlock","createBlock","getBlockFromExample","useMemo","__","BlockCard","BlockPreview","InserterPreviewPanel","item","_example$viewportWidt","name","title","icon","description","initialAttributes","example","isReusable","blocks","attributes","innerBlocks","createElement","className","viewportWidth","additionalStyles","css"],"sources":["@wordpress/block-editor/src/components/inserter/preview-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tisReusableBlock,\n\tcreateBlock,\n\tgetBlockFromExample,\n} from '@wordpress/blocks';\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockCard from '../block-card';\nimport BlockPreview from '../block-preview';\n\nfunction InserterPreviewPanel( { item } ) {\n\tconst { name, title, icon, description, initialAttributes, example } = item;\n\tconst isReusable = isReusableBlock( item );\n\tconst blocks = useMemo( () => {\n\t\tif ( ! example ) {\n\t\t\treturn createBlock( name, initialAttributes );\n\t\t}\n\t\treturn getBlockFromExample( name, {\n\t\t\tattributes: {\n\t\t\t\t...example.attributes,\n\t\t\t\t...initialAttributes,\n\t\t\t},\n\t\t\tinnerBlocks: example.innerBlocks,\n\t\t} );\n\t}, [ name, example, initialAttributes ] );\n\n\treturn (\n\t\t<div className=\"block-editor-inserter__preview-container\">\n\t\t\t<div className=\"block-editor-inserter__preview\">\n\t\t\t\t{ isReusable || example ? (\n\t\t\t\t\t<div className=\"block-editor-inserter__preview-content\">\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\tviewportWidth={ example?.viewportWidth ?? 500 }\n\t\t\t\t\t\t\tadditionalStyles={ [\n\t\t\t\t\t\t\t\t{ css: 'body { padding: 24px; }' },\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<div className=\"block-editor-inserter__preview-content-missing\">\n\t\t\t\t\t\t{ __( 'No preview available.' ) }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ ! isReusable && (\n\t\t\t\t<BlockCard\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tdescription={ description }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default InserterPreviewPanel;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,eAAe,EACfC,WAAW,EACXC,mBAAmB,QACb,mBAAmB;AAC1B,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,SAAS,MAAM,eAAe;AACrC,OAAOC,YAAY,MAAM,kBAAkB;AAE3C,SAASC,oBAAoBA,CAAE;EAAEC;AAAK,CAAC,EAAG;EAAA,IAAAC,qBAAA;EACzC,MAAM;IAAEC,IAAI;IAAEC,KAAK;IAAEC,IAAI;IAAEC,WAAW;IAAEC,iBAAiB;IAAEC;EAAQ,CAAC,GAAGP,IAAI;EAC3E,MAAMQ,UAAU,GAAGhB,eAAe,CAAEQ,IAAK,CAAC;EAC1C,MAAMS,MAAM,GAAGd,OAAO,CAAE,MAAM;IAC7B,IAAK,CAAEY,OAAO,EAAG;MAChB,OAAOd,WAAW,CAAES,IAAI,EAAEI,iBAAkB,CAAC;IAC9C;IACA,OAAOZ,mBAAmB,CAAEQ,IAAI,EAAE;MACjCQ,UAAU,EAAE;QACX,GAAGH,OAAO,CAACG,UAAU;QACrB,GAAGJ;MACJ,CAAC;MACDK,WAAW,EAAEJ,OAAO,CAACI;IACtB,CAAE,CAAC;EACJ,CAAC,EAAE,CAAET,IAAI,EAAEK,OAAO,EAAED,iBAAiB,CAAG,CAAC;EAEzC,OACCM,aAAA;IAAKC,SAAS,EAAC;EAA0C,GACxDD,aAAA;IAAKC,SAAS,EAAC;EAAgC,GAC5CL,UAAU,IAAID,OAAO,GACtBK,aAAA;IAAKC,SAAS,EAAC;EAAwC,GACtDD,aAAA,CAACd,YAAY;IACZW,MAAM,EAAGA,MAAQ;IACjBK,aAAa,GAAAb,qBAAA,GAAGM,OAAO,EAAEO,aAAa,cAAAb,qBAAA,cAAAA,qBAAA,GAAI,GAAK;IAC/Cc,gBAAgB,EAAG,CAClB;MAAEC,GAAG,EAAE;IAA0B,CAAC;EAChC,CACH,CACG,CAAC,GAENJ,aAAA;IAAKC,SAAS,EAAC;EAAgD,GAC5DjB,EAAE,CAAE,uBAAwB,CAC1B,CAEF,CAAC,EACJ,CAAEY,UAAU,IACbI,aAAA,CAACf,SAAS;IACTM,KAAK,EAAGA,KAAO;IACfC,IAAI,EAAGA,IAAM;IACbC,WAAW,EAAGA;EAAa,CAC3B,CAEE,CAAC;AAER;AAEA,eAAeN,oBAAoB"}
@@ -0,0 +1,89 @@
1
+ import { createElement } from "react";
2
+ /**
3
+ * External dependencies
4
+ */
5
+ import { View, TouchableHighlight, Text } from 'react-native';
6
+
7
+ /**
8
+ * WordPress dependencies
9
+ */
10
+ import { Component } from '@wordpress/element';
11
+ import { Icon } from '@wordpress/components';
12
+ import { withPreferredColorScheme } from '@wordpress/compose';
13
+ import { __, sprintf } from '@wordpress/i18n';
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+ import { BlockIcon } from '../block-icon';
19
+ import styles from './style.scss';
20
+ import sparkles from './sparkles';
21
+ class MenuItem extends Component {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.onPress = this.onPress.bind(this);
25
+ }
26
+ onPress() {
27
+ const {
28
+ onSelect,
29
+ item
30
+ } = this.props;
31
+ onSelect(item);
32
+ }
33
+ render() {
34
+ const {
35
+ getStylesFromColorScheme,
36
+ item,
37
+ itemWidth,
38
+ maxWidth
39
+ } = this.props;
40
+ const modalIconWrapperStyle = getStylesFromColorScheme(styles.modalIconWrapper, styles.modalIconWrapperDark);
41
+ const modalIconStyle = styles.modalIcon;
42
+ const modalItemLabelStyle = getStylesFromColorScheme(styles.modalItemLabel, styles.modalItemLabelDark);
43
+ const clipboardBlockStyles = getStylesFromColorScheme(styles.clipboardBlock, styles.clipboardBlockDark);
44
+ const isClipboardBlock = item.id === 'clipboard';
45
+ const blockTitle = isClipboardBlock ? __('Copied block') : item.title;
46
+ const blockIsNew = item.isNew === true;
47
+ const accessibilityLabelFormat = blockIsNew ?
48
+ // translators: Newly available block name. %s: The localized block name
49
+ __('%s block, newly available') :
50
+ // translators: Block name. %s: The localized block name
51
+ __('%s block');
52
+ const accessibilityLabel = sprintf(accessibilityLabelFormat, item.title);
53
+ return createElement(TouchableHighlight, {
54
+ style: [styles.touchableArea, item.isDisabled ? styles.disabled : null],
55
+ underlayColor: "transparent",
56
+ activeOpacity: 0.5,
57
+ accessibilityRole: "button",
58
+ accessibilityLabel: accessibilityLabel,
59
+ onPress: this.onPress,
60
+ disabled: item.isDisabled
61
+ }, createElement(View, {
62
+ style: [styles.modalItem, {
63
+ width: maxWidth
64
+ }]
65
+ }, createElement(View, {
66
+ style: [modalIconWrapperStyle, itemWidth && {
67
+ width: itemWidth
68
+ }, isClipboardBlock && clipboardBlockStyles]
69
+ }, blockIsNew && createElement(Icon, {
70
+ icon: sparkles,
71
+ style: styles.newIndicator
72
+ }), createElement(View, {
73
+ style: modalIconStyle
74
+ }, createElement(BlockIcon, {
75
+ icon: item.icon,
76
+ size: modalIconStyle.width
77
+ }))), createElement(Text, {
78
+ numberOfLines: 3,
79
+ style: modalItemLabelStyle
80
+ }, blockTitle)));
81
+ }
82
+ }
83
+ const InserterButton = withPreferredColorScheme(MenuItem);
84
+ InserterButton.Styles = {
85
+ modalItem: styles.modalItem,
86
+ modalIconWrapper: styles.modalIconWrapper
87
+ };
88
+ export default InserterButton;
89
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","TouchableHighlight","Text","Component","Icon","withPreferredColorScheme","__","sprintf","BlockIcon","styles","sparkles","MenuItem","constructor","arguments","onPress","bind","onSelect","item","props","render","getStylesFromColorScheme","itemWidth","maxWidth","modalIconWrapperStyle","modalIconWrapper","modalIconWrapperDark","modalIconStyle","modalIcon","modalItemLabelStyle","modalItemLabel","modalItemLabelDark","clipboardBlockStyles","clipboardBlock","clipboardBlockDark","isClipboardBlock","id","blockTitle","title","blockIsNew","isNew","accessibilityLabelFormat","accessibilityLabel","createElement","style","touchableArea","isDisabled","disabled","underlayColor","activeOpacity","accessibilityRole","modalItem","width","icon","newIndicator","size","numberOfLines","InserterButton","Styles"],"sources":["@wordpress/block-editor/src/components/inserter-button/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, TouchableHighlight, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { Icon } from '@wordpress/components';\nimport { withPreferredColorScheme } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { BlockIcon } from '../block-icon';\nimport styles from './style.scss';\nimport sparkles from './sparkles';\nclass MenuItem extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onPress = this.onPress.bind( this );\n\t}\n\n\tonPress() {\n\t\tconst { onSelect, item } = this.props;\n\t\tonSelect( item );\n\t}\n\n\trender() {\n\t\tconst { getStylesFromColorScheme, item, itemWidth, maxWidth } =\n\t\t\tthis.props;\n\n\t\tconst modalIconWrapperStyle = getStylesFromColorScheme(\n\t\t\tstyles.modalIconWrapper,\n\t\t\tstyles.modalIconWrapperDark\n\t\t);\n\t\tconst modalIconStyle = styles.modalIcon;\n\t\tconst modalItemLabelStyle = getStylesFromColorScheme(\n\t\t\tstyles.modalItemLabel,\n\t\t\tstyles.modalItemLabelDark\n\t\t);\n\n\t\tconst clipboardBlockStyles = getStylesFromColorScheme(\n\t\t\tstyles.clipboardBlock,\n\t\t\tstyles.clipboardBlockDark\n\t\t);\n\n\t\tconst isClipboardBlock = item.id === 'clipboard';\n\t\tconst blockTitle = isClipboardBlock ? __( 'Copied block' ) : item.title;\n\t\tconst blockIsNew = item.isNew === true;\n\t\tconst accessibilityLabelFormat = blockIsNew\n\t\t\t? // translators: Newly available block name. %s: The localized block name\n\t\t\t __( '%s block, newly available' )\n\t\t\t: // translators: Block name. %s: The localized block name\n\t\t\t __( '%s block' );\n\t\tconst accessibilityLabel = sprintf(\n\t\t\taccessibilityLabelFormat,\n\t\t\titem.title\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tstyle={ [\n\t\t\t\t\tstyles.touchableArea,\n\t\t\t\t\titem.isDisabled ? styles.disabled : null,\n\t\t\t\t] }\n\t\t\t\tunderlayColor=\"transparent\"\n\t\t\t\tactiveOpacity={ 0.5 }\n\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\tonPress={ this.onPress }\n\t\t\t\tdisabled={ item.isDisabled }\n\t\t\t>\n\t\t\t\t<View style={ [ styles.modalItem, { width: maxWidth } ] }>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tmodalIconWrapperStyle,\n\t\t\t\t\t\t\titemWidth && {\n\t\t\t\t\t\t\t\twidth: itemWidth,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tisClipboardBlock && clipboardBlockStyles,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ blockIsNew && (\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ sparkles }\n\t\t\t\t\t\t\t\tstyle={ styles.newIndicator }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<View style={ modalIconStyle }>\n\t\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\t\ticon={ item.icon }\n\t\t\t\t\t\t\t\tsize={ modalIconStyle.width }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t\t<Text numberOfLines={ 3 } style={ modalItemLabelStyle }>\n\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n}\n\nconst InserterButton = withPreferredColorScheme( MenuItem );\n\nInserterButton.Styles = {\n\tmodalItem: styles.modalItem,\n\tmodalIconWrapper: styles.modalIconWrapper,\n};\n\nexport default InserterButton;\n"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { createElement } from "react";
2
+ /**
3
+ * WordPress dependencies
4
+ */
5
+ import { SVG, Path } from '@wordpress/components';
6
+ const sparkles = createElement(SVG, {
7
+ viewBox: "0 0 24 24",
8
+ fill: "none",
9
+ xmlns: "http://www.w3.org/2000/svg"
10
+ }, createElement(Path, {
11
+ d: "M10 11c-1.588-.479-4-.91-4-.91s2-.241 4-.454c1.8-.191 3.365-.502 4-3.181C14.635 3.775 15 1 15 1s.365 2.775 1 5.455c.635 2.679 2 2.969 4 3.181 2 .213 4 .455 4 .455s-2.412.43-4 .909c-1.588.479-3 1-4 4.546-.746 2.643-.893 4.948-1 5.454-.107-.506-.167-2.5-1-5.454C13 12 11.588 11.479 10 11zM7.333 3.5C6.803 3.333 6 3.182 6 3.182s.667-.085 1.333-.16c.6-.066 1.122-.175 1.334-1.113C8.878.971 9 0 9 0s.122.971.333 1.91c.212.937.667 1.038 1.334 1.113.666.074 1.333.159 1.333.159s-.804.15-1.333.318c-.53.167-1 .35-1.334 1.59C9.085 6.017 9.036 6.824 9 7c-.036-.177-.056-.875-.333-1.91-.334-1.24-.804-1.423-1.334-1.59zM2.444 18C1.474 17.713 0 17.454 0 17.454s1.222-.145 2.444-.272c1.1-.115 2.057-.302 2.445-1.91C5.277 13.666 5.5 12 5.5 12s.223 1.665.611 3.273c.388 1.607 1.222 1.781 2.445 1.909 1.222.127 2.444.273 2.444.273s-1.474.258-2.444.545c-.971.287-1.834.6-2.445 2.727-.456 1.586-.546 2.97-.611 3.273-.065-.304-.102-1.5-.611-3.273C4.278 18.6 3.415 18.287 2.444 18z",
12
+ fill: "#F0C930"
13
+ }));
14
+ export default sparkles;
15
+ //# sourceMappingURL=sparkles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SVG","Path","sparkles","createElement","viewBox","fill","xmlns","d"],"sources":["@wordpress/block-editor/src/components/inserter-button/sparkles.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SVG, Path } from '@wordpress/components';\n\nconst sparkles = (\n\t<SVG viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<Path\n\t\t\td=\"M10 11c-1.588-.479-4-.91-4-.91s2-.241 4-.454c1.8-.191 3.365-.502 4-3.181C14.635 3.775 15 1 15 1s.365 2.775 1 5.455c.635 2.679 2 2.969 4 3.181 2 .213 4 .455 4 .455s-2.412.43-4 .909c-1.588.479-3 1-4 4.546-.746 2.643-.893 4.948-1 5.454-.107-.506-.167-2.5-1-5.454C13 12 11.588 11.479 10 11zM7.333 3.5C6.803 3.333 6 3.182 6 3.182s.667-.085 1.333-.16c.6-.066 1.122-.175 1.334-1.113C8.878.971 9 0 9 0s.122.971.333 1.91c.212.937.667 1.038 1.334 1.113.666.074 1.333.159 1.333.159s-.804.15-1.333.318c-.53.167-1 .35-1.334 1.59C9.085 6.017 9.036 6.824 9 7c-.036-.177-.056-.875-.333-1.91-.334-1.24-.804-1.423-1.334-1.59zM2.444 18C1.474 17.713 0 17.454 0 17.454s1.222-.145 2.444-.272c1.1-.115 2.057-.302 2.445-1.91C5.277 13.666 5.5 12 5.5 12s.223 1.665.611 3.273c.388 1.607 1.222 1.781 2.445 1.909 1.222.127 2.444.273 2.444.273s-1.474.258-2.444.545c-.971.287-1.834.6-2.445 2.727-.456 1.586-.546 2.97-.611 3.273-.065-.304-.102-1.5-.611-3.273C4.278 18.6 3.415 18.287 2.444 18z\"\n\t\t\tfill=\"#F0C930\"\n\t\t/>\n\t</SVG>\n);\n\nexport default sparkles;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,GAAG,EAAEC,IAAI,QAAQ,uBAAuB;AAEjD,MAAMC,QAAQ,GACbC,aAAA,CAACH,GAAG;EAACI,OAAO,EAAC,WAAW;EAACC,IAAI,EAAC,MAAM;EAACC,KAAK,EAAC;AAA4B,GACtEH,aAAA,CAACF,IAAI;EACJM,CAAC,EAAC,k8BAAk8B;EACp8BF,IAAI,EAAC;AAAS,CACd,CACG,CACL;AAED,eAAeH,QAAQ"}
@@ -3,18 +3,19 @@ import { createElement } from "react";
3
3
  * WordPress dependencies
4
4
  */
5
5
  import { Draggable } from '@wordpress/components';
6
- import { serialize, store as blocksStore } from '@wordpress/blocks';
6
+ import { createBlock, serialize, store as blocksStore } from '@wordpress/blocks';
7
7
  import { useSelect } from '@wordpress/data';
8
8
  /**
9
9
  * Internal dependencies
10
10
  */
11
11
  import BlockDraggableChip from '../block-draggable/draggable-chip';
12
+ import { PATTERN_TYPES } from '../inserter/block-patterns-tab/utils';
12
13
  const InserterDraggableBlocks = ({
13
14
  isEnabled,
14
15
  blocks,
15
16
  icon,
16
17
  children,
17
- isPattern
18
+ pattern
18
19
  }) => {
19
20
  const transferData = {
20
21
  type: 'inserter',
@@ -30,12 +31,15 @@ const InserterDraggableBlocks = ({
30
31
  __experimentalTransferDataType: "wp-blocks",
31
32
  transferData: transferData,
32
33
  onDragStart: event => {
33
- event.dataTransfer.setData('text/html', serialize(blocks));
34
+ const parsedBlocks = pattern?.type === PATTERN_TYPES.user && pattern?.syncStatus !== 'unsynced' ? [createBlock('core/block', {
35
+ ref: pattern.id
36
+ })] : blocks;
37
+ event.dataTransfer.setData('text/html', serialize(parsedBlocks));
34
38
  },
35
39
  __experimentalDragComponent: createElement(BlockDraggableChip, {
36
40
  count: blocks.length,
37
- icon: icon || !isPattern && blockTypeIcon,
38
- isPattern: isPattern
41
+ icon: icon || !pattern && blockTypeIcon,
42
+ isPattern: !!pattern
39
43
  })
40
44
  }, ({
41
45
  onDraggableStart,
@@ -1 +1 @@
1
- {"version":3,"names":["Draggable","serialize","store","blocksStore","useSelect","BlockDraggableChip","InserterDraggableBlocks","isEnabled","blocks","icon","children","isPattern","transferData","type","blockTypeIcon","select","getBlockType","length","name","createElement","__experimentalTransferDataType","onDragStart","event","dataTransfer","setData","__experimentalDragComponent","count","onDraggableStart","onDraggableEnd","draggable","undefined","onDragEnd"],"sources":["@wordpress/block-editor/src/components/inserter-draggable-blocks/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Draggable } from '@wordpress/components';\nimport { serialize, store as blocksStore } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\n/**\n * Internal dependencies\n */\nimport BlockDraggableChip from '../block-draggable/draggable-chip';\n\nconst InserterDraggableBlocks = ( {\n\tisEnabled,\n\tblocks,\n\ticon,\n\tchildren,\n\tisPattern,\n} ) => {\n\tconst transferData = {\n\t\ttype: 'inserter',\n\t\tblocks,\n\t};\n\n\tconst blockTypeIcon = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockType } = select( blocksStore );\n\t\t\treturn (\n\t\t\t\tblocks.length === 1 && getBlockType( blocks[ 0 ].name )?.icon\n\t\t\t);\n\t\t},\n\t\t[ blocks ]\n\t);\n\n\treturn (\n\t\t<Draggable\n\t\t\t__experimentalTransferDataType=\"wp-blocks\"\n\t\t\ttransferData={ transferData }\n\t\t\tonDragStart={ ( event ) => {\n\t\t\t\tevent.dataTransfer.setData( 'text/html', serialize( blocks ) );\n\t\t\t} }\n\t\t\t__experimentalDragComponent={\n\t\t\t\t<BlockDraggableChip\n\t\t\t\t\tcount={ blocks.length }\n\t\t\t\t\ticon={ icon || ( ! isPattern && blockTypeIcon ) }\n\t\t\t\t\tisPattern={ isPattern }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ ( { onDraggableStart, onDraggableEnd } ) => {\n\t\t\t\treturn children( {\n\t\t\t\t\tdraggable: isEnabled,\n\t\t\t\t\tonDragStart: isEnabled ? onDraggableStart : undefined,\n\t\t\t\t\tonDragEnd: isEnabled ? onDraggableEnd : undefined,\n\t\t\t\t} );\n\t\t\t} }\n\t\t</Draggable>\n\t);\n};\n\nexport default InserterDraggableBlocks;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,uBAAuB;AACjD,SAASC,SAAS,EAAEC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;AACnE,SAASC,SAAS,QAAQ,iBAAiB;AAC3C;AACA;AACA;AACA,OAAOC,kBAAkB,MAAM,mCAAmC;AAElE,MAAMC,uBAAuB,GAAGA,CAAE;EACjCC,SAAS;EACTC,MAAM;EACNC,IAAI;EACJC,QAAQ;EACRC;AACD,CAAC,KAAM;EACN,MAAMC,YAAY,GAAG;IACpBC,IAAI,EAAE,UAAU;IAChBL;EACD,CAAC;EAED,MAAMM,aAAa,GAAGV,SAAS,CAC5BW,MAAM,IAAM;IACb,MAAM;MAAEC;IAAa,CAAC,GAAGD,MAAM,CAAEZ,WAAY,CAAC;IAC9C,OACCK,MAAM,CAACS,MAAM,KAAK,CAAC,IAAID,YAAY,CAAER,MAAM,CAAE,CAAC,CAAE,CAACU,IAAK,CAAC,EAAET,IAAI;EAE/D,CAAC,EACD,CAAED,MAAM,CACT,CAAC;EAED,OACCW,aAAA,CAACnB,SAAS;IACToB,8BAA8B,EAAC,WAAW;IAC1CR,YAAY,EAAGA,YAAc;IAC7BS,WAAW,EAAKC,KAAK,IAAM;MAC1BA,KAAK,CAACC,YAAY,CAACC,OAAO,CAAE,WAAW,EAAEvB,SAAS,CAAEO,MAAO,CAAE,CAAC;IAC/D,CAAG;IACHiB,2BAA2B,EAC1BN,aAAA,CAACd,kBAAkB;MAClBqB,KAAK,EAAGlB,MAAM,CAACS,MAAQ;MACvBR,IAAI,EAAGA,IAAI,IAAM,CAAEE,SAAS,IAAIG,aAAiB;MACjDH,SAAS,EAAGA;IAAW,CACvB;EACD,GAEC,CAAE;IAAEgB,gBAAgB;IAAEC;EAAe,CAAC,KAAM;IAC7C,OAAOlB,QAAQ,CAAE;MAChBmB,SAAS,EAAEtB,SAAS;MACpBc,WAAW,EAAEd,SAAS,GAAGoB,gBAAgB,GAAGG,SAAS;MACrDC,SAAS,EAAExB,SAAS,GAAGqB,cAAc,GAAGE;IACzC,CAAE,CAAC;EACJ,CACU,CAAC;AAEd,CAAC;AAED,eAAexB,uBAAuB"}
1
+ {"version":3,"names":["Draggable","createBlock","serialize","store","blocksStore","useSelect","BlockDraggableChip","PATTERN_TYPES","InserterDraggableBlocks","isEnabled","blocks","icon","children","pattern","transferData","type","blockTypeIcon","select","getBlockType","length","name","createElement","__experimentalTransferDataType","onDragStart","event","parsedBlocks","user","syncStatus","ref","id","dataTransfer","setData","__experimentalDragComponent","count","isPattern","onDraggableStart","onDraggableEnd","draggable","undefined","onDragEnd"],"sources":["@wordpress/block-editor/src/components/inserter-draggable-blocks/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Draggable } from '@wordpress/components';\nimport {\n\tcreateBlock,\n\tserialize,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\n/**\n * Internal dependencies\n */\nimport BlockDraggableChip from '../block-draggable/draggable-chip';\nimport { PATTERN_TYPES } from '../inserter/block-patterns-tab/utils';\n\nconst InserterDraggableBlocks = ( {\n\tisEnabled,\n\tblocks,\n\ticon,\n\tchildren,\n\tpattern,\n} ) => {\n\tconst transferData = {\n\t\ttype: 'inserter',\n\t\tblocks,\n\t};\n\n\tconst blockTypeIcon = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockType } = select( blocksStore );\n\t\t\treturn (\n\t\t\t\tblocks.length === 1 && getBlockType( blocks[ 0 ].name )?.icon\n\t\t\t);\n\t\t},\n\t\t[ blocks ]\n\t);\n\n\treturn (\n\t\t<Draggable\n\t\t\t__experimentalTransferDataType=\"wp-blocks\"\n\t\t\ttransferData={ transferData }\n\t\t\tonDragStart={ ( event ) => {\n\t\t\t\tconst parsedBlocks =\n\t\t\t\t\tpattern?.type === PATTERN_TYPES.user &&\n\t\t\t\t\tpattern?.syncStatus !== 'unsynced'\n\t\t\t\t\t\t? [ createBlock( 'core/block', { ref: pattern.id } ) ]\n\t\t\t\t\t\t: blocks;\n\t\t\t\tevent.dataTransfer.setData(\n\t\t\t\t\t'text/html',\n\t\t\t\t\tserialize( parsedBlocks )\n\t\t\t\t);\n\t\t\t} }\n\t\t\t__experimentalDragComponent={\n\t\t\t\t<BlockDraggableChip\n\t\t\t\t\tcount={ blocks.length }\n\t\t\t\t\ticon={ icon || ( ! pattern && blockTypeIcon ) }\n\t\t\t\t\tisPattern={ !! pattern }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ ( { onDraggableStart, onDraggableEnd } ) => {\n\t\t\t\treturn children( {\n\t\t\t\t\tdraggable: isEnabled,\n\t\t\t\t\tonDragStart: isEnabled ? onDraggableStart : undefined,\n\t\t\t\t\tonDragEnd: isEnabled ? onDraggableEnd : undefined,\n\t\t\t\t} );\n\t\t\t} }\n\t\t</Draggable>\n\t);\n};\n\nexport default InserterDraggableBlocks;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,uBAAuB;AACjD,SACCC,WAAW,EACXC,SAAS,EACTC,KAAK,IAAIC,WAAW,QACd,mBAAmB;AAC1B,SAASC,SAAS,QAAQ,iBAAiB;AAC3C;AACA;AACA;AACA,OAAOC,kBAAkB,MAAM,mCAAmC;AAClE,SAASC,aAAa,QAAQ,sCAAsC;AAEpE,MAAMC,uBAAuB,GAAGA,CAAE;EACjCC,SAAS;EACTC,MAAM;EACNC,IAAI;EACJC,QAAQ;EACRC;AACD,CAAC,KAAM;EACN,MAAMC,YAAY,GAAG;IACpBC,IAAI,EAAE,UAAU;IAChBL;EACD,CAAC;EAED,MAAMM,aAAa,GAAGX,SAAS,CAC5BY,MAAM,IAAM;IACb,MAAM;MAAEC;IAAa,CAAC,GAAGD,MAAM,CAAEb,WAAY,CAAC;IAC9C,OACCM,MAAM,CAACS,MAAM,KAAK,CAAC,IAAID,YAAY,CAAER,MAAM,CAAE,CAAC,CAAE,CAACU,IAAK,CAAC,EAAET,IAAI;EAE/D,CAAC,EACD,CAAED,MAAM,CACT,CAAC;EAED,OACCW,aAAA,CAACrB,SAAS;IACTsB,8BAA8B,EAAC,WAAW;IAC1CR,YAAY,EAAGA,YAAc;IAC7BS,WAAW,EAAKC,KAAK,IAAM;MAC1B,MAAMC,YAAY,GACjBZ,OAAO,EAAEE,IAAI,KAAKR,aAAa,CAACmB,IAAI,IACpCb,OAAO,EAAEc,UAAU,KAAK,UAAU,GAC/B,CAAE1B,WAAW,CAAE,YAAY,EAAE;QAAE2B,GAAG,EAAEf,OAAO,CAACgB;MAAG,CAAE,CAAC,CAAE,GACpDnB,MAAM;MACVc,KAAK,CAACM,YAAY,CAACC,OAAO,CACzB,WAAW,EACX7B,SAAS,CAAEuB,YAAa,CACzB,CAAC;IACF,CAAG;IACHO,2BAA2B,EAC1BX,aAAA,CAACf,kBAAkB;MAClB2B,KAAK,EAAGvB,MAAM,CAACS,MAAQ;MACvBR,IAAI,EAAGA,IAAI,IAAM,CAAEE,OAAO,IAAIG,aAAiB;MAC/CkB,SAAS,EAAG,CAAC,CAAErB;IAAS,CACxB;EACD,GAEC,CAAE;IAAEsB,gBAAgB;IAAEC;EAAe,CAAC,KAAM;IAC7C,OAAOxB,QAAQ,CAAE;MAChByB,SAAS,EAAE5B,SAAS;MACpBc,WAAW,EAAEd,SAAS,GAAG0B,gBAAgB,GAAGG,SAAS;MACrDC,SAAS,EAAE9B,SAAS,GAAG2B,cAAc,GAAGE;IACzC,CAAE,CAAC;EACJ,CACU,CAAC;AAEd,CAAC;AAED,eAAe9B,uBAAuB"}