@wordpress/block-library 8.2.0 → 8.3.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 (783) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/babel-plugin.js +1 -1
  3. package/build/archives/index.js +1 -0
  4. package/build/archives/index.js.map +1 -1
  5. package/build/avatar/index.js +1 -0
  6. package/build/avatar/index.js.map +1 -1
  7. package/build/block/edit.js +1 -0
  8. package/build/block/edit.js.map +1 -1
  9. package/build/button/edit.js +2 -1
  10. package/build/button/edit.js.map +1 -1
  11. package/build/button/index.js +1 -0
  12. package/build/button/index.js.map +1 -1
  13. package/build/buttons/edit.js +0 -2
  14. package/build/buttons/edit.js.map +1 -1
  15. package/build/calendar/index.js +1 -0
  16. package/build/calendar/index.js.map +1 -1
  17. package/build/categories/edit.js +3 -3
  18. package/build/categories/edit.js.map +1 -1
  19. package/build/categories/index.js +1 -0
  20. package/build/categories/index.js.map +1 -1
  21. package/build/column/edit.native.js +2 -1
  22. package/build/column/edit.native.js.map +1 -1
  23. package/build/columns/deprecated.js +1 -1
  24. package/build/columns/deprecated.js.map +1 -1
  25. package/build/comment-author-avatar/index.js +1 -0
  26. package/build/comment-author-avatar/index.js.map +1 -1
  27. package/build/comment-author-name/index.js +1 -0
  28. package/build/comment-author-name/index.js.map +1 -1
  29. package/build/comment-content/index.js +1 -0
  30. package/build/comment-content/index.js.map +1 -1
  31. package/build/comment-date/index.js +1 -0
  32. package/build/comment-date/index.js.map +1 -1
  33. package/build/comment-edit-link/index.js +1 -0
  34. package/build/comment-edit-link/index.js.map +1 -1
  35. package/build/comment-reply-link/index.js +1 -0
  36. package/build/comment-reply-link/index.js.map +1 -1
  37. package/build/comment-template/index.js +1 -0
  38. package/build/comment-template/index.js.map +1 -1
  39. package/build/comments/edit/comments-inspector-controls.js +1 -1
  40. package/build/comments/edit/comments-inspector-controls.js.map +1 -1
  41. package/build/comments/index.js +2 -1
  42. package/build/comments/index.js.map +1 -1
  43. package/build/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  44. package/build/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  45. package/build/comments-pagination/edit.js +3 -14
  46. package/build/comments-pagination/edit.js.map +1 -1
  47. package/build/comments-pagination/index.js +1 -0
  48. package/build/comments-pagination/index.js.map +1 -1
  49. package/build/comments-pagination-next/index.js +1 -0
  50. package/build/comments-pagination-next/index.js.map +1 -1
  51. package/build/comments-pagination-numbers/index.js +1 -0
  52. package/build/comments-pagination-numbers/index.js.map +1 -1
  53. package/build/comments-pagination-previous/index.js +1 -0
  54. package/build/comments-pagination-previous/index.js.map +1 -1
  55. package/build/cover/deprecated.js +153 -30
  56. package/build/cover/deprecated.js.map +1 -1
  57. package/build/cover/edit/index.js +4 -3
  58. package/build/cover/edit/index.js.map +1 -1
  59. package/build/cover/edit/inspector-controls.js +45 -4
  60. package/build/cover/edit/inspector-controls.js.map +1 -1
  61. package/build/cover/edit.native.js +0 -4
  62. package/build/cover/edit.native.js.map +1 -1
  63. package/build/cover/index.js +4 -0
  64. package/build/cover/index.js.map +1 -1
  65. package/build/cover/save.js +3 -2
  66. package/build/cover/save.js.map +1 -1
  67. package/build/embed/variations.js +1 -1
  68. package/build/embed/variations.js.map +1 -1
  69. package/build/experiments.js +19 -0
  70. package/build/experiments.js.map +1 -0
  71. package/build/gallery/deprecated.js +6 -4
  72. package/build/gallery/deprecated.js.map +1 -1
  73. package/build/gallery/edit.js +48 -7
  74. package/build/gallery/edit.js.map +1 -1
  75. package/build/gallery/gallery.js +8 -34
  76. package/build/gallery/gallery.js.map +1 -1
  77. package/build/gallery/v1/edit.js +5 -5
  78. package/build/gallery/v1/edit.js.map +1 -1
  79. package/build/group/deprecated.js +1 -1
  80. package/build/group/deprecated.js.map +1 -1
  81. package/build/group/edit.js +1 -2
  82. package/build/group/edit.js.map +1 -1
  83. package/build/heading/index.js +1 -7
  84. package/build/heading/index.js.map +1 -1
  85. package/build/home-link/index.js +1 -0
  86. package/build/home-link/index.js.map +1 -1
  87. package/build/image/edit.native.js +2 -2
  88. package/build/image/edit.native.js.map +1 -1
  89. package/build/image/image.js +12 -15
  90. package/build/image/image.js.map +1 -1
  91. package/build/latest-comments/index.js +1 -0
  92. package/build/latest-comments/index.js.map +1 -1
  93. package/build/latest-posts/deprecated.js +1 -0
  94. package/build/latest-posts/deprecated.js.map +1 -1
  95. package/build/latest-posts/index.js +1 -0
  96. package/build/latest-posts/index.js.map +1 -1
  97. package/build/list/ordered-list-settings.js +1 -0
  98. package/build/list/ordered-list-settings.js.map +1 -1
  99. package/build/loginout/index.js +1 -0
  100. package/build/loginout/index.js.map +1 -1
  101. package/build/media-text/edit.js +2 -4
  102. package/build/media-text/edit.js.map +1 -1
  103. package/build/missing/edit.native.js +4 -4
  104. package/build/missing/edit.native.js.map +1 -1
  105. package/build/navigation/edit/deleted-navigation-warning.js +31 -0
  106. package/build/navigation/edit/deleted-navigation-warning.js.map +1 -0
  107. package/build/navigation/edit/index.js +19 -11
  108. package/build/navigation/edit/index.js.map +1 -1
  109. package/build/navigation/edit/inner-blocks.js +0 -5
  110. package/build/navigation/edit/inner-blocks.js.map +1 -1
  111. package/build/navigation/edit/manage-menus-button.js +9 -2
  112. package/build/navigation/edit/manage-menus-button.js.map +1 -1
  113. package/build/navigation/edit/menu-inspector-controls.js +29 -47
  114. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  115. package/build/navigation/edit/navigation-menu-delete-control.js +0 -1
  116. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  117. package/build/navigation/edit/navigation-menu-name-control.js +1 -0
  118. package/build/navigation/edit/navigation-menu-name-control.js.map +1 -1
  119. package/build/navigation/edit/navigation-menu-selector.js +11 -52
  120. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  121. package/build/navigation/edit/overlay-menu-preview.js +1 -0
  122. package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
  123. package/build/navigation/edit/placeholder/index.js +1 -6
  124. package/build/navigation/edit/placeholder/index.js.map +1 -1
  125. package/build/navigation/index.js +5 -0
  126. package/build/navigation/index.js.map +1 -1
  127. package/build/navigation/menu-items-to-blocks.js +0 -2
  128. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  129. package/build/navigation-link/edit.js +17 -8
  130. package/build/navigation-link/edit.js.map +1 -1
  131. package/build/navigation-submenu/edit.js +4 -0
  132. package/build/navigation-submenu/edit.js.map +1 -1
  133. package/build/navigation-submenu/index.js +13 -3
  134. package/build/navigation-submenu/index.js.map +1 -1
  135. package/build/page-list/edit.js +153 -132
  136. package/build/page-list/edit.js.map +1 -1
  137. package/build/page-list/index.js +2 -11
  138. package/build/page-list/index.js.map +1 -1
  139. package/build/page-list/{convert-to-navigation-links.js → use-convert-to-navigation-links.js} +41 -9
  140. package/build/page-list/use-convert-to-navigation-links.js.map +1 -0
  141. package/build/page-list-item/edit.js +4 -2
  142. package/build/page-list-item/edit.js.map +1 -1
  143. package/build/page-list-item/index.js +1 -1
  144. package/build/page-list-item/index.js.map +1 -1
  145. package/build/paragraph/edit.js +1 -1
  146. package/build/paragraph/edit.js.map +1 -1
  147. package/build/paragraph/index.js +1 -7
  148. package/build/paragraph/index.js.map +1 -1
  149. package/build/post-author/index.js +1 -0
  150. package/build/post-author/index.js.map +1 -1
  151. package/build/post-author-biography/index.js +1 -0
  152. package/build/post-author-biography/index.js.map +1 -1
  153. package/build/post-author-name/index.js +1 -1
  154. package/build/post-comment/edit.js +1 -0
  155. package/build/post-comment/edit.js.map +1 -1
  156. package/build/post-comments-count/index.js +1 -0
  157. package/build/post-comments-count/index.js.map +1 -1
  158. package/build/post-comments-form/index.js +1 -0
  159. package/build/post-comments-form/index.js.map +1 -1
  160. package/build/post-comments-link/index.js +1 -0
  161. package/build/post-comments-link/index.js.map +1 -1
  162. package/build/post-content/edit.js +1 -20
  163. package/build/post-content/edit.js.map +1 -1
  164. package/build/post-content/index.js +1 -0
  165. package/build/post-content/index.js.map +1 -1
  166. package/build/post-date/index.js +1 -0
  167. package/build/post-date/index.js.map +1 -1
  168. package/build/post-excerpt/edit.js +6 -1
  169. package/build/post-excerpt/edit.js.map +1 -1
  170. package/build/post-excerpt/index.js +1 -0
  171. package/build/post-excerpt/index.js.map +1 -1
  172. package/build/post-featured-image/dimension-controls.js +2 -1
  173. package/build/post-featured-image/dimension-controls.js.map +1 -1
  174. package/build/post-featured-image/edit.js +39 -22
  175. package/build/post-featured-image/edit.js.map +1 -1
  176. package/build/post-featured-image/index.js +1 -0
  177. package/build/post-featured-image/index.js.map +1 -1
  178. package/build/post-featured-image/overlay.js +1 -1
  179. package/build/post-featured-image/overlay.js.map +1 -1
  180. package/build/post-navigation-link/edit.js +1 -0
  181. package/build/post-navigation-link/edit.js.map +1 -1
  182. package/build/post-navigation-link/index.js +1 -0
  183. package/build/post-navigation-link/index.js.map +1 -1
  184. package/build/post-template/edit.js +6 -4
  185. package/build/post-template/edit.js.map +1 -1
  186. package/build/post-template/index.js +1 -0
  187. package/build/post-template/index.js.map +1 -1
  188. package/build/post-terms/edit.js +5 -4
  189. package/build/post-terms/edit.js.map +1 -1
  190. package/build/post-terms/index.js +1 -0
  191. package/build/post-terms/index.js.map +1 -1
  192. package/build/post-title/edit.js +1 -0
  193. package/build/post-title/edit.js.map +1 -1
  194. package/build/post-title/index.js +1 -0
  195. package/build/post-title/index.js.map +1 -1
  196. package/build/query/deprecated.js +90 -1
  197. package/build/query/deprecated.js.map +1 -1
  198. package/build/query/edit/index.js +2 -50
  199. package/build/query/edit/index.js.map +1 -1
  200. package/build/query/edit/inspector-controls/index.js +1 -0
  201. package/build/query/edit/inspector-controls/index.js.map +1 -1
  202. package/build/query/edit/pattern-selection-modal.js +88 -0
  203. package/build/query/edit/pattern-selection-modal.js.map +1 -0
  204. package/build/query/edit/query-content.js +3 -24
  205. package/build/query/edit/query-content.js.map +1 -1
  206. package/build/query/edit/query-placeholder.js +2 -2
  207. package/build/query/edit/query-placeholder.js.map +1 -1
  208. package/build/query/edit/query-toolbar.js +6 -11
  209. package/build/query/edit/query-toolbar.js.map +1 -1
  210. package/build/query/index.js +1 -0
  211. package/build/query/index.js.map +1 -1
  212. package/build/query/utils.js +25 -3
  213. package/build/query/utils.js.map +1 -1
  214. package/build/query-no-results/index.js +1 -0
  215. package/build/query-no-results/index.js.map +1 -1
  216. package/build/query-pagination/edit.js +3 -14
  217. package/build/query-pagination/edit.js.map +1 -1
  218. package/build/query-pagination/index.js +1 -0
  219. package/build/query-pagination/index.js.map +1 -1
  220. package/build/query-pagination/query-pagination-arrow-controls.js +1 -0
  221. package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  222. package/build/query-pagination-next/index.js +1 -0
  223. package/build/query-pagination-next/index.js.map +1 -1
  224. package/build/query-pagination-numbers/index.js +1 -0
  225. package/build/query-pagination-numbers/index.js.map +1 -1
  226. package/build/query-pagination-previous/index.js +1 -0
  227. package/build/query-pagination-previous/index.js.map +1 -1
  228. package/build/query-title/index.js +1 -0
  229. package/build/query-title/index.js.map +1 -1
  230. package/build/read-more/index.js +1 -0
  231. package/build/read-more/index.js.map +1 -1
  232. package/build/rss/edit.js +5 -2
  233. package/build/rss/edit.js.map +1 -1
  234. package/build/rss/index.js +1 -0
  235. package/build/rss/index.js.map +1 -1
  236. package/build/search/index.js +1 -0
  237. package/build/search/index.js.map +1 -1
  238. package/build/site-logo/edit.js +9 -13
  239. package/build/site-logo/edit.js.map +1 -1
  240. package/build/site-logo/index.js +1 -0
  241. package/build/site-logo/index.js.map +1 -1
  242. package/build/site-tagline/index.js +1 -0
  243. package/build/site-tagline/index.js.map +1 -1
  244. package/build/site-title/index.js +1 -0
  245. package/build/site-title/index.js.map +1 -1
  246. package/build/social-link/edit.js +3 -1
  247. package/build/social-link/edit.js.map +1 -1
  248. package/build/social-link/index.js +1 -0
  249. package/build/social-link/index.js.map +1 -1
  250. package/build/social-links/edit.js +3 -14
  251. package/build/social-links/edit.js.map +1 -1
  252. package/build/table/edit.js +9 -5
  253. package/build/table/edit.js.map +1 -1
  254. package/build/table/index.js +15 -0
  255. package/build/table/index.js.map +1 -1
  256. package/build/table/save.js +4 -2
  257. package/build/table/save.js.map +1 -1
  258. package/build/table/state.js +1 -1
  259. package/build/table/state.js.map +1 -1
  260. package/build/table/transforms.js +47 -3
  261. package/build/table/transforms.js.map +1 -1
  262. package/build/table/utils.js +26 -0
  263. package/build/table/utils.js.map +1 -0
  264. package/build/tag-cloud/edit.js +3 -9
  265. package/build/tag-cloud/edit.js.map +1 -1
  266. package/build/tag-cloud/index.js +1 -0
  267. package/build/tag-cloud/index.js.map +1 -1
  268. package/build/template-part/edit/advanced-controls.js +2 -1
  269. package/build/template-part/edit/advanced-controls.js.map +1 -1
  270. package/build/template-part/edit/index.js +0 -1
  271. package/build/template-part/edit/index.js.map +1 -1
  272. package/build/template-part/edit/selection-modal.js +3 -3
  273. package/build/template-part/edit/selection-modal.js.map +1 -1
  274. package/build/template-part/edit/title-modal.js +6 -5
  275. package/build/template-part/edit/title-modal.js.map +1 -1
  276. package/build/template-part/edit/utils/hooks.js +2 -2
  277. package/build/template-part/edit/utils/hooks.js.map +1 -1
  278. package/build/template-part/index.js +1 -0
  279. package/build/template-part/index.js.map +1 -1
  280. package/build/term-description/index.js +1 -0
  281. package/build/term-description/index.js.map +1 -1
  282. package/build/utils/init-block.js +1 -1
  283. package/build/utils/init-block.js.map +1 -1
  284. package/build/utils/init-block.native.js +1 -1
  285. package/build/utils/init-block.native.js.map +1 -1
  286. package/build/{template-part/edit/utils/search.js → utils/search-patterns.js} +3 -1
  287. package/build/utils/search-patterns.js.map +1 -0
  288. package/build/video/tracks-editor.js +17 -11
  289. package/build/video/tracks-editor.js.map +1 -1
  290. package/build-module/archives/index.js +1 -0
  291. package/build-module/archives/index.js.map +1 -1
  292. package/build-module/avatar/index.js +1 -0
  293. package/build-module/avatar/index.js.map +1 -1
  294. package/build-module/block/edit.js +1 -0
  295. package/build-module/block/edit.js.map +1 -1
  296. package/build-module/button/edit.js +2 -1
  297. package/build-module/button/edit.js.map +1 -1
  298. package/build-module/button/index.js +1 -0
  299. package/build-module/button/index.js.map +1 -1
  300. package/build-module/buttons/edit.js +0 -2
  301. package/build-module/buttons/edit.js.map +1 -1
  302. package/build-module/calendar/index.js +1 -0
  303. package/build-module/calendar/index.js.map +1 -1
  304. package/build-module/categories/edit.js +2 -2
  305. package/build-module/categories/edit.js.map +1 -1
  306. package/build-module/categories/index.js +1 -0
  307. package/build-module/categories/index.js.map +1 -1
  308. package/build-module/column/edit.native.js +2 -1
  309. package/build-module/column/edit.native.js.map +1 -1
  310. package/build-module/columns/deprecated.js +1 -1
  311. package/build-module/columns/deprecated.js.map +1 -1
  312. package/build-module/comment-author-avatar/index.js +1 -0
  313. package/build-module/comment-author-avatar/index.js.map +1 -1
  314. package/build-module/comment-author-name/index.js +1 -0
  315. package/build-module/comment-author-name/index.js.map +1 -1
  316. package/build-module/comment-content/index.js +1 -0
  317. package/build-module/comment-content/index.js.map +1 -1
  318. package/build-module/comment-date/index.js +1 -0
  319. package/build-module/comment-date/index.js.map +1 -1
  320. package/build-module/comment-edit-link/index.js +1 -0
  321. package/build-module/comment-edit-link/index.js.map +1 -1
  322. package/build-module/comment-reply-link/index.js +1 -0
  323. package/build-module/comment-reply-link/index.js.map +1 -1
  324. package/build-module/comment-template/index.js +1 -0
  325. package/build-module/comment-template/index.js.map +1 -1
  326. package/build-module/comments/edit/comments-inspector-controls.js +1 -1
  327. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
  328. package/build-module/comments/index.js +2 -1
  329. package/build-module/comments/index.js.map +1 -1
  330. package/build-module/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  331. package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  332. package/build-module/comments-pagination/edit.js +3 -14
  333. package/build-module/comments-pagination/edit.js.map +1 -1
  334. package/build-module/comments-pagination/index.js +1 -0
  335. package/build-module/comments-pagination/index.js.map +1 -1
  336. package/build-module/comments-pagination-next/index.js +1 -0
  337. package/build-module/comments-pagination-next/index.js.map +1 -1
  338. package/build-module/comments-pagination-numbers/index.js +1 -0
  339. package/build-module/comments-pagination-numbers/index.js.map +1 -1
  340. package/build-module/comments-pagination-previous/index.js +1 -0
  341. package/build-module/comments-pagination-previous/index.js.map +1 -1
  342. package/build-module/cover/deprecated.js +155 -31
  343. package/build-module/cover/deprecated.js.map +1 -1
  344. package/build-module/cover/edit/index.js +4 -3
  345. package/build-module/cover/edit/index.js.map +1 -1
  346. package/build-module/cover/edit/inspector-controls.js +46 -5
  347. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  348. package/build-module/cover/edit.native.js +0 -4
  349. package/build-module/cover/edit.native.js.map +1 -1
  350. package/build-module/cover/index.js +4 -0
  351. package/build-module/cover/index.js.map +1 -1
  352. package/build-module/cover/save.js +3 -2
  353. package/build-module/cover/save.js.map +1 -1
  354. package/build-module/embed/variations.js +1 -1
  355. package/build-module/embed/variations.js.map +1 -1
  356. package/build-module/experiments.js +9 -0
  357. package/build-module/experiments.js.map +1 -0
  358. package/build-module/gallery/deprecated.js +6 -3
  359. package/build-module/gallery/deprecated.js.map +1 -1
  360. package/build-module/gallery/edit.js +50 -10
  361. package/build-module/gallery/edit.js.map +1 -1
  362. package/build-module/gallery/gallery.js +9 -35
  363. package/build-module/gallery/gallery.js.map +1 -1
  364. package/build-module/gallery/v1/edit.js +6 -6
  365. package/build-module/gallery/v1/edit.js.map +1 -1
  366. package/build-module/group/deprecated.js +1 -1
  367. package/build-module/group/deprecated.js.map +1 -1
  368. package/build-module/group/edit.js +1 -2
  369. package/build-module/group/edit.js.map +1 -1
  370. package/build-module/heading/index.js +1 -6
  371. package/build-module/heading/index.js.map +1 -1
  372. package/build-module/home-link/index.js +1 -0
  373. package/build-module/home-link/index.js.map +1 -1
  374. package/build-module/image/edit.native.js +2 -2
  375. package/build-module/image/edit.native.js.map +1 -1
  376. package/build-module/image/image.js +14 -17
  377. package/build-module/image/image.js.map +1 -1
  378. package/build-module/latest-comments/index.js +1 -0
  379. package/build-module/latest-comments/index.js.map +1 -1
  380. package/build-module/latest-posts/deprecated.js +1 -0
  381. package/build-module/latest-posts/deprecated.js.map +1 -1
  382. package/build-module/latest-posts/index.js +1 -0
  383. package/build-module/latest-posts/index.js.map +1 -1
  384. package/build-module/list/ordered-list-settings.js +1 -0
  385. package/build-module/list/ordered-list-settings.js.map +1 -1
  386. package/build-module/loginout/index.js +1 -0
  387. package/build-module/loginout/index.js.map +1 -1
  388. package/build-module/media-text/edit.js +2 -3
  389. package/build-module/media-text/edit.js.map +1 -1
  390. package/build-module/missing/edit.native.js +4 -4
  391. package/build-module/missing/edit.native.js.map +1 -1
  392. package/build-module/navigation/edit/deleted-navigation-warning.js +21 -0
  393. package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -0
  394. package/build-module/navigation/edit/index.js +18 -11
  395. package/build-module/navigation/edit/index.js.map +1 -1
  396. package/build-module/navigation/edit/inner-blocks.js +0 -5
  397. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  398. package/build-module/navigation/edit/manage-menus-button.js +10 -3
  399. package/build-module/navigation/edit/manage-menus-button.js.map +1 -1
  400. package/build-module/navigation/edit/menu-inspector-controls.js +28 -47
  401. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  402. package/build-module/navigation/edit/navigation-menu-delete-control.js +0 -1
  403. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  404. package/build-module/navigation/edit/navigation-menu-name-control.js +1 -0
  405. package/build-module/navigation/edit/navigation-menu-name-control.js.map +1 -1
  406. package/build-module/navigation/edit/navigation-menu-selector.js +13 -54
  407. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  408. package/build-module/navigation/edit/overlay-menu-preview.js +1 -0
  409. package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
  410. package/build-module/navigation/edit/placeholder/index.js +1 -6
  411. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  412. package/build-module/navigation/index.js +5 -0
  413. package/build-module/navigation/index.js.map +1 -1
  414. package/build-module/navigation/menu-items-to-blocks.js +0 -2
  415. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  416. package/build-module/navigation-link/edit.js +16 -7
  417. package/build-module/navigation-link/edit.js.map +1 -1
  418. package/build-module/navigation-submenu/edit.js +4 -0
  419. package/build-module/navigation-submenu/edit.js.map +1 -1
  420. package/build-module/navigation-submenu/index.js +14 -4
  421. package/build-module/navigation-submenu/index.js.map +1 -1
  422. package/build-module/page-list/edit.js +155 -132
  423. package/build-module/page-list/edit.js.map +1 -1
  424. package/build-module/page-list/index.js +3 -12
  425. package/build-module/page-list/index.js.map +1 -1
  426. package/build-module/page-list/{convert-to-navigation-links.js → use-convert-to-navigation-links.js} +37 -7
  427. package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -0
  428. package/build-module/page-list-item/edit.js +3 -2
  429. package/build-module/page-list-item/edit.js.map +1 -1
  430. package/build-module/page-list-item/index.js +1 -1
  431. package/build-module/page-list-item/index.js.map +1 -1
  432. package/build-module/paragraph/edit.js +1 -1
  433. package/build-module/paragraph/edit.js.map +1 -1
  434. package/build-module/paragraph/index.js +1 -6
  435. package/build-module/paragraph/index.js.map +1 -1
  436. package/build-module/post-author/index.js +1 -0
  437. package/build-module/post-author/index.js.map +1 -1
  438. package/build-module/post-author-biography/index.js +1 -0
  439. package/build-module/post-author-biography/index.js.map +1 -1
  440. package/build-module/post-author-name/index.js +1 -1
  441. package/build-module/post-comment/edit.js +1 -0
  442. package/build-module/post-comment/edit.js.map +1 -1
  443. package/build-module/post-comments-count/index.js +1 -0
  444. package/build-module/post-comments-count/index.js.map +1 -1
  445. package/build-module/post-comments-form/index.js +1 -0
  446. package/build-module/post-comments-form/index.js.map +1 -1
  447. package/build-module/post-comments-link/index.js +1 -0
  448. package/build-module/post-comments-link/index.js.map +1 -1
  449. package/build-module/post-content/edit.js +2 -20
  450. package/build-module/post-content/edit.js.map +1 -1
  451. package/build-module/post-content/index.js +1 -0
  452. package/build-module/post-content/index.js.map +1 -1
  453. package/build-module/post-date/index.js +1 -0
  454. package/build-module/post-date/index.js.map +1 -1
  455. package/build-module/post-excerpt/edit.js +6 -1
  456. package/build-module/post-excerpt/edit.js.map +1 -1
  457. package/build-module/post-excerpt/index.js +1 -0
  458. package/build-module/post-excerpt/index.js.map +1 -1
  459. package/build-module/post-featured-image/dimension-controls.js +2 -1
  460. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  461. package/build-module/post-featured-image/edit.js +39 -22
  462. package/build-module/post-featured-image/edit.js.map +1 -1
  463. package/build-module/post-featured-image/index.js +1 -0
  464. package/build-module/post-featured-image/index.js.map +1 -1
  465. package/build-module/post-featured-image/overlay.js +1 -1
  466. package/build-module/post-featured-image/overlay.js.map +1 -1
  467. package/build-module/post-navigation-link/edit.js +1 -0
  468. package/build-module/post-navigation-link/edit.js.map +1 -1
  469. package/build-module/post-navigation-link/index.js +1 -0
  470. package/build-module/post-navigation-link/index.js.map +1 -1
  471. package/build-module/post-template/edit.js +6 -4
  472. package/build-module/post-template/edit.js.map +1 -1
  473. package/build-module/post-template/index.js +1 -0
  474. package/build-module/post-template/index.js.map +1 -1
  475. package/build-module/post-terms/edit.js +4 -3
  476. package/build-module/post-terms/edit.js.map +1 -1
  477. package/build-module/post-terms/index.js +1 -0
  478. package/build-module/post-terms/index.js.map +1 -1
  479. package/build-module/post-title/edit.js +1 -0
  480. package/build-module/post-title/edit.js.map +1 -1
  481. package/build-module/post-title/index.js +1 -0
  482. package/build-module/post-title/index.js.map +1 -1
  483. package/build-module/query/deprecated.js +87 -1
  484. package/build-module/query/deprecated.js.map +1 -1
  485. package/build-module/query/edit/index.js +4 -50
  486. package/build-module/query/edit/index.js.map +1 -1
  487. package/build-module/query/edit/inspector-controls/index.js +1 -0
  488. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  489. package/build-module/query/edit/pattern-selection-modal.js +75 -0
  490. package/build-module/query/edit/pattern-selection-modal.js.map +1 -0
  491. package/build-module/query/edit/query-content.js +4 -25
  492. package/build-module/query/edit/query-content.js.map +1 -1
  493. package/build-module/query/edit/query-placeholder.js +2 -2
  494. package/build-module/query/edit/query-placeholder.js.map +1 -1
  495. package/build-module/query/edit/query-toolbar.js +6 -10
  496. package/build-module/query/edit/query-toolbar.js.map +1 -1
  497. package/build-module/query/index.js +1 -0
  498. package/build-module/query/index.js.map +1 -1
  499. package/build-module/query/utils.js +21 -2
  500. package/build-module/query/utils.js.map +1 -1
  501. package/build-module/query-no-results/index.js +1 -0
  502. package/build-module/query-no-results/index.js.map +1 -1
  503. package/build-module/query-pagination/edit.js +3 -14
  504. package/build-module/query-pagination/edit.js.map +1 -1
  505. package/build-module/query-pagination/index.js +1 -0
  506. package/build-module/query-pagination/index.js.map +1 -1
  507. package/build-module/query-pagination/query-pagination-arrow-controls.js +1 -0
  508. package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  509. package/build-module/query-pagination-next/index.js +1 -0
  510. package/build-module/query-pagination-next/index.js.map +1 -1
  511. package/build-module/query-pagination-numbers/index.js +1 -0
  512. package/build-module/query-pagination-numbers/index.js.map +1 -1
  513. package/build-module/query-pagination-previous/index.js +1 -0
  514. package/build-module/query-pagination-previous/index.js.map +1 -1
  515. package/build-module/query-title/index.js +1 -0
  516. package/build-module/query-title/index.js.map +1 -1
  517. package/build-module/read-more/index.js +1 -0
  518. package/build-module/read-more/index.js.map +1 -1
  519. package/build-module/rss/edit.js +6 -3
  520. package/build-module/rss/edit.js.map +1 -1
  521. package/build-module/rss/index.js +1 -0
  522. package/build-module/rss/index.js.map +1 -1
  523. package/build-module/search/index.js +1 -0
  524. package/build-module/search/index.js.map +1 -1
  525. package/build-module/site-logo/edit.js +10 -14
  526. package/build-module/site-logo/edit.js.map +1 -1
  527. package/build-module/site-logo/index.js +1 -0
  528. package/build-module/site-logo/index.js.map +1 -1
  529. package/build-module/site-tagline/index.js +1 -0
  530. package/build-module/site-tagline/index.js.map +1 -1
  531. package/build-module/site-title/index.js +1 -0
  532. package/build-module/site-title/index.js.map +1 -1
  533. package/build-module/social-link/edit.js +3 -1
  534. package/build-module/social-link/edit.js.map +1 -1
  535. package/build-module/social-link/index.js +1 -0
  536. package/build-module/social-link/index.js.map +1 -1
  537. package/build-module/social-links/edit.js +3 -14
  538. package/build-module/social-links/edit.js.map +1 -1
  539. package/build-module/table/edit.js +9 -5
  540. package/build-module/table/edit.js.map +1 -1
  541. package/build-module/table/index.js +15 -0
  542. package/build-module/table/index.js.map +1 -1
  543. package/build-module/table/save.js +4 -2
  544. package/build-module/table/save.js.map +1 -1
  545. package/build-module/table/state.js +1 -1
  546. package/build-module/table/state.js.map +1 -1
  547. package/build-module/table/transforms.js +46 -3
  548. package/build-module/table/transforms.js.map +1 -1
  549. package/build-module/table/utils.js +19 -0
  550. package/build-module/table/utils.js.map +1 -0
  551. package/build-module/tag-cloud/edit.js +4 -9
  552. package/build-module/tag-cloud/edit.js.map +1 -1
  553. package/build-module/tag-cloud/index.js +1 -0
  554. package/build-module/tag-cloud/index.js.map +1 -1
  555. package/build-module/template-part/edit/advanced-controls.js +2 -1
  556. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  557. package/build-module/template-part/edit/index.js +0 -1
  558. package/build-module/template-part/edit/index.js.map +1 -1
  559. package/build-module/template-part/edit/selection-modal.js +1 -1
  560. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  561. package/build-module/template-part/edit/title-modal.js +7 -6
  562. package/build-module/template-part/edit/title-modal.js.map +1 -1
  563. package/build-module/template-part/edit/utils/hooks.js +2 -2
  564. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  565. package/build-module/template-part/index.js +1 -0
  566. package/build-module/template-part/index.js.map +1 -1
  567. package/build-module/term-description/index.js +1 -0
  568. package/build-module/term-description/index.js.map +1 -1
  569. package/build-module/utils/init-block.js +1 -1
  570. package/build-module/utils/init-block.js.map +1 -1
  571. package/build-module/utils/init-block.native.js +1 -1
  572. package/build-module/utils/init-block.native.js.map +1 -1
  573. package/build-module/{template-part/edit/utils/search.js → utils/search-patterns.js} +3 -5
  574. package/build-module/utils/search-patterns.js.map +1 -0
  575. package/build-module/video/tracks-editor.js +18 -12
  576. package/build-module/video/tracks-editor.js.map +1 -1
  577. package/build-style/editor-rtl.css +14 -67
  578. package/build-style/editor.css +14 -67
  579. package/build-style/query/editor-rtl.css +11 -14
  580. package/build-style/query/editor.css +11 -14
  581. package/build-style/rss/editor-rtl.css +3 -16
  582. package/build-style/rss/editor.css +3 -16
  583. package/build-style/table/editor-rtl.css +0 -3
  584. package/build-style/table/editor.css +0 -3
  585. package/build-style/video/editor-rtl.css +0 -34
  586. package/build-style/video/editor.css +0 -34
  587. package/package.json +30 -29
  588. package/src/archives/block.json +1 -0
  589. package/src/avatar/block.json +1 -0
  590. package/src/block/edit.js +1 -0
  591. package/src/button/block.json +1 -0
  592. package/src/button/edit.js +2 -1
  593. package/src/buttons/edit.js +2 -2
  594. package/src/calendar/block.json +1 -0
  595. package/src/calendar/index.php +3 -1
  596. package/src/categories/block.json +1 -0
  597. package/src/categories/edit.js +2 -2
  598. package/src/column/edit.native.js +6 -1
  599. package/src/columns/deprecated.js +1 -1
  600. package/src/comment-author-avatar/block.json +1 -0
  601. package/src/comment-author-name/block.json +1 -0
  602. package/src/comment-author-name/index.php +6 -3
  603. package/src/comment-content/block.json +1 -0
  604. package/src/comment-content/index.php +6 -3
  605. package/src/comment-date/block.json +1 -0
  606. package/src/comment-date/index.php +1 -1
  607. package/src/comment-edit-link/block.json +1 -0
  608. package/src/comment-edit-link/index.php +6 -3
  609. package/src/comment-reply-link/block.json +1 -0
  610. package/src/comment-reply-link/index.php +6 -3
  611. package/src/comment-template/block.json +1 -0
  612. package/src/comments/block.json +2 -1
  613. package/src/comments/edit/comments-inspector-controls.js +1 -1
  614. package/src/comments-pagination/block.json +1 -0
  615. package/src/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  616. package/src/comments-pagination/edit.js +1 -13
  617. package/src/comments-pagination/index.php +4 -1
  618. package/src/comments-pagination-next/block.json +1 -0
  619. package/src/comments-pagination-numbers/block.json +1 -0
  620. package/src/comments-pagination-previous/block.json +1 -0
  621. package/src/cover/block.json +4 -0
  622. package/src/cover/deprecated.js +173 -6
  623. package/src/cover/edit/index.js +5 -4
  624. package/src/cover/edit/inspector-controls.js +45 -2
  625. package/src/cover/edit.native.js +0 -3
  626. package/src/cover/save.js +3 -2
  627. package/src/embed/variations.js +1 -1
  628. package/src/experiments.js +10 -0
  629. package/src/gallery/deprecated.js +2 -3
  630. package/src/gallery/edit.js +66 -5
  631. package/src/gallery/gallery.js +27 -44
  632. package/src/gallery/v1/edit.js +8 -9
  633. package/src/group/deprecated.js +3 -1
  634. package/src/group/edit.js +1 -2
  635. package/src/heading/index.js +1 -6
  636. package/src/home-link/block.json +1 -0
  637. package/src/image/edit.native.js +2 -3
  638. package/src/image/image.js +17 -22
  639. package/src/latest-comments/block.json +1 -0
  640. package/src/latest-posts/block.json +1 -0
  641. package/src/latest-posts/index.php +9 -10
  642. package/src/list/ordered-list-settings.js +1 -0
  643. package/src/loginout/block.json +1 -0
  644. package/src/media-text/edit.js +3 -7
  645. package/src/missing/edit.native.js +3 -4
  646. package/src/missing/test/edit.native.js +2 -2
  647. package/src/navigation/block.json +2 -0
  648. package/src/navigation/edit/deleted-navigation-warning.js +19 -0
  649. package/src/navigation/edit/index.js +22 -24
  650. package/src/navigation/edit/inner-blocks.js +0 -6
  651. package/src/navigation/edit/manage-menus-button.js +24 -13
  652. package/src/navigation/edit/menu-inspector-controls.js +38 -73
  653. package/src/navigation/edit/navigation-menu-delete-control.js +0 -1
  654. package/src/navigation/edit/navigation-menu-name-control.js +1 -0
  655. package/src/navigation/edit/navigation-menu-selector.js +12 -77
  656. package/src/navigation/edit/overlay-menu-preview.js +1 -0
  657. package/src/navigation/edit/placeholder/index.js +0 -6
  658. package/src/navigation/index.js +3 -0
  659. package/src/navigation/index.php +25 -7
  660. package/src/navigation/menu-items-to-blocks.js +0 -2
  661. package/src/navigation-link/edit.js +16 -7
  662. package/src/navigation-link/index.php +0 -32
  663. package/src/navigation-submenu/edit.js +4 -0
  664. package/src/navigation-submenu/index.js +8 -2
  665. package/src/navigation-submenu/index.php +0 -32
  666. package/src/page-list/block.json +1 -0
  667. package/src/page-list/edit.js +196 -161
  668. package/src/page-list/index.js +2 -8
  669. package/src/page-list/test/convert-to-links-modal.js +1 -1
  670. package/src/page-list/{convert-to-navigation-links.js → use-convert-to-navigation-links.js} +36 -6
  671. package/src/page-list-item/edit.js +3 -2
  672. package/src/page-list-item/index.js +1 -1
  673. package/src/paragraph/edit.js +1 -1
  674. package/src/paragraph/index.js +1 -6
  675. package/src/post-author/block.json +1 -0
  676. package/src/post-author/index.php +10 -4
  677. package/src/post-author-biography/block.json +1 -0
  678. package/src/post-author-name/block.json +1 -1
  679. package/src/post-author-name/index.php +9 -4
  680. package/src/post-comment/edit.js +1 -0
  681. package/src/post-comments-count/block.json +1 -0
  682. package/src/post-comments-form/block.json +1 -0
  683. package/src/post-comments-form/index.php +6 -4
  684. package/src/post-comments-link/block.json +1 -0
  685. package/src/post-comments-link/index.php +8 -2
  686. package/src/post-content/block.json +1 -0
  687. package/src/post-content/edit.js +2 -13
  688. package/src/post-date/block.json +1 -0
  689. package/src/post-date/index.php +10 -3
  690. package/src/post-excerpt/block.json +1 -0
  691. package/src/post-excerpt/edit.js +22 -12
  692. package/src/post-excerpt/index.php +6 -3
  693. package/src/post-featured-image/block.json +1 -0
  694. package/src/post-featured-image/dimension-controls.js +2 -1
  695. package/src/post-featured-image/edit.js +46 -27
  696. package/src/post-featured-image/index.php +19 -6
  697. package/src/post-featured-image/overlay.js +1 -1
  698. package/src/post-navigation-link/block.json +1 -0
  699. package/src/post-navigation-link/edit.js +1 -0
  700. package/src/post-template/block.json +1 -0
  701. package/src/post-template/edit.js +4 -3
  702. package/src/post-template/index.php +4 -1
  703. package/src/post-terms/block.json +1 -0
  704. package/src/post-terms/edit.js +4 -3
  705. package/src/post-terms/index.php +6 -3
  706. package/src/post-title/block.json +1 -0
  707. package/src/post-title/edit.js +1 -0
  708. package/src/post-title/index.php +10 -4
  709. package/src/preformatted/test/__snapshots__/edit.native.js.snap +0 -2
  710. package/src/query/block.json +1 -0
  711. package/src/query/deprecated.js +77 -1
  712. package/src/query/edit/index.js +4 -60
  713. package/src/query/edit/inspector-controls/index.js +1 -0
  714. package/src/query/edit/pattern-selection-modal.js +86 -0
  715. package/src/query/edit/query-content.js +1 -12
  716. package/src/query/edit/query-placeholder.js +4 -8
  717. package/src/query/edit/query-toolbar.js +6 -16
  718. package/src/query/editor.scss +21 -19
  719. package/src/query/utils.js +22 -8
  720. package/src/query-no-results/block.json +1 -0
  721. package/src/query-no-results/index.php +3 -1
  722. package/src/query-pagination/block.json +1 -0
  723. package/src/query-pagination/edit.js +1 -13
  724. package/src/query-pagination/index.php +2 -0
  725. package/src/query-pagination/query-pagination-arrow-controls.js +1 -0
  726. package/src/query-pagination-next/block.json +1 -0
  727. package/src/query-pagination-numbers/block.json +1 -0
  728. package/src/query-pagination-previous/block.json +1 -0
  729. package/src/query-title/block.json +1 -0
  730. package/src/read-more/block.json +1 -0
  731. package/src/rss/block.json +1 -0
  732. package/src/rss/edit.js +16 -12
  733. package/src/rss/editor.scss +4 -15
  734. package/src/search/block.json +1 -0
  735. package/src/search/index.php +2 -2
  736. package/src/site-logo/block.json +1 -0
  737. package/src/site-logo/edit.js +9 -16
  738. package/src/site-tagline/block.json +1 -0
  739. package/src/site-title/block.json +1 -0
  740. package/src/site-title/index.php +6 -3
  741. package/src/social-link/block.json +1 -0
  742. package/src/social-link/edit.js +3 -1
  743. package/src/social-links/edit.js +1 -14
  744. package/src/table/block.json +15 -0
  745. package/src/table/edit.js +38 -26
  746. package/src/table/editor.scss +0 -6
  747. package/src/table/save.js +9 -1
  748. package/src/table/state.js +1 -1
  749. package/src/table/test/utils.js +20 -0
  750. package/src/table/transforms.js +65 -2
  751. package/src/table/utils.js +18 -0
  752. package/src/tag-cloud/block.json +1 -0
  753. package/src/tag-cloud/edit.js +12 -15
  754. package/src/template-part/block.json +1 -0
  755. package/src/template-part/edit/advanced-controls.js +2 -1
  756. package/src/template-part/edit/index.js +0 -1
  757. package/src/template-part/edit/selection-modal.js +1 -1
  758. package/src/template-part/edit/title-modal.js +12 -15
  759. package/src/template-part/edit/utils/hooks.js +3 -8
  760. package/src/template-part/index.php +19 -7
  761. package/src/term-description/block.json +1 -0
  762. package/src/term-description/index.php +8 -4
  763. package/src/utils/init-block.js +1 -1
  764. package/src/utils/init-block.native.js +1 -1
  765. package/src/{template-part/edit/utils/search.js → utils/search-patterns.js} +2 -2
  766. package/src/utils/test/search-patterns.js +58 -0
  767. package/src/video/editor.scss +0 -35
  768. package/src/video/tracks-editor.js +65 -51
  769. package/tsconfig.tsbuildinfo +1 -1
  770. package/build/page-list/constants.js +0 -15
  771. package/build/page-list/constants.js.map +0 -1
  772. package/build/page-list/convert-to-links-modal.js +0 -83
  773. package/build/page-list/convert-to-links-modal.js.map +0 -1
  774. package/build/page-list/convert-to-navigation-links.js.map +0 -1
  775. package/build/template-part/edit/utils/search.js.map +0 -1
  776. package/build-module/page-list/constants.js +0 -6
  777. package/build-module/page-list/constants.js.map +0 -1
  778. package/build-module/page-list/convert-to-links-modal.js +0 -68
  779. package/build-module/page-list/convert-to-links-modal.js.map +0 -1
  780. package/build-module/page-list/convert-to-navigation-links.js.map +0 -1
  781. package/build-module/template-part/edit/utils/search.js.map +0 -1
  782. package/src/page-list/constants.js +0 -8
  783. package/src/page-list/convert-to-links-modal.js +0 -70
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Normalize the rowspan/colspan value.
3
+ * Returns undefined if the parameter is not a positive number
4
+ * or the default value (1) for rowspan/colspan.
5
+ *
6
+ * @param {number|undefined} rowColSpan rowspan/colspan value.
7
+ *
8
+ * @return {string|undefined} normalized rowspan/colspan value.
9
+ */
10
+ export function normalizeRowColSpan(rowColSpan) {
11
+ const parsedValue = parseInt(rowColSpan, 10);
12
+
13
+ if (!Number.isInteger(parsedValue)) {
14
+ return undefined;
15
+ }
16
+
17
+ return parsedValue < 0 || parsedValue === 1 ? undefined : parsedValue.toString();
18
+ }
19
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/table/utils.js"],"names":["normalizeRowColSpan","rowColSpan","parsedValue","parseInt","Number","isInteger","undefined","toString"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,mBAAT,CAA8BC,UAA9B,EAA2C;AACjD,QAAMC,WAAW,GAAGC,QAAQ,CAAEF,UAAF,EAAc,EAAd,CAA5B;;AACA,MAAK,CAAEG,MAAM,CAACC,SAAP,CAAkBH,WAAlB,CAAP,EAAyC;AACxC,WAAOI,SAAP;AACA;;AACD,SAAOJ,WAAW,GAAG,CAAd,IAAmBA,WAAW,KAAK,CAAnC,GACJI,SADI,GAEJJ,WAAW,CAACK,QAAZ,EAFH;AAGA","sourcesContent":["/**\n * Normalize the rowspan/colspan value.\n * Returns undefined if the parameter is not a positive number\n * or the default value (1) for rowspan/colspan.\n *\n * @param {number|undefined} rowColSpan rowspan/colspan value.\n *\n * @return {string|undefined} normalized rowspan/colspan value.\n */\nexport function normalizeRowColSpan( rowColSpan ) {\n\tconst parsedValue = parseInt( rowColSpan, 10 );\n\tif ( ! Number.isInteger( parsedValue ) ) {\n\t\treturn undefined;\n\t}\n\treturn parsedValue < 0 || parsedValue === 1\n\t\t? undefined\n\t\t: parsedValue.toString();\n}\n"]}
@@ -1,14 +1,9 @@
1
1
  import { createElement, Fragment } from "@wordpress/element";
2
2
 
3
- /**
4
- * External dependencies
5
- */
6
- import { map } from 'lodash';
7
3
  /**
8
4
  * WordPress dependencies
9
5
  */
10
-
11
- import { Flex, FlexItem, PanelBody, ToggleControl, SelectControl, RangeControl, __experimentalUnitControl as UnitControl, __experimentalUseCustomUnits as useCustomUnits, __experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue } from '@wordpress/components';
6
+ import { Flex, FlexItem, PanelBody, ToggleControl, SelectControl, RangeControl, __experimentalUnitControl as UnitControl, __experimentalUseCustomUnits as useCustomUnits, __experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue, Disabled } from '@wordpress/components';
12
7
  import { withSelect } from '@wordpress/data';
13
8
  import { __ } from '@wordpress/i18n';
14
9
  import { InspectorControls, useBlockProps, useSetting } from '@wordpress/block-editor';
@@ -54,7 +49,7 @@ function TagCloudEdit(_ref) {
54
49
  value: '',
55
50
  disabled: true
56
51
  };
57
- const taxonomyOptions = map(taxonomies === null || taxonomies === void 0 ? void 0 : taxonomies.filter(tax => !!tax.show_cloud), item => {
52
+ const taxonomyOptions = (taxonomies !== null && taxonomies !== void 0 ? taxonomies : []).filter(tax => !!tax.show_cloud).map(item => {
58
53
  return {
59
54
  value: item.slug,
60
55
  label: item.name
@@ -139,11 +134,11 @@ function TagCloudEdit(_ref) {
139
134
  min: MIN_FONT_SIZE,
140
135
  max: MAX_FONT_SIZE
141
136
  })))));
142
- return createElement(Fragment, null, inspectorControls, createElement("div", useBlockProps(), createElement(ServerSideRender, {
137
+ return createElement(Fragment, null, inspectorControls, createElement("div", useBlockProps(), createElement(Disabled, null, createElement(ServerSideRender, {
143
138
  skipBlockSupportAttributes: true,
144
139
  block: "core/tag-cloud",
145
140
  attributes: attributes
146
- })));
141
+ }))));
147
142
  }
148
143
 
149
144
  export default withSelect(select => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/tag-cloud/edit.js"],"names":["map","Flex","FlexItem","PanelBody","ToggleControl","SelectControl","RangeControl","__experimentalUnitControl","UnitControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","withSelect","__","InspectorControls","useBlockProps","useSetting","ServerSideRender","store","coreStore","MIN_TAGS","MAX_TAGS","MIN_FONT_SIZE","MAX_FONT_SIZE","TagCloudEdit","attributes","setAttributes","taxonomies","taxonomy","showTagCounts","numberOfTags","smallestFontSize","largestFontSize","units","availableUnits","getTaxonomyOptions","selectOption","label","value","disabled","taxonomyOptions","filter","tax","show_cloud","item","slug","name","onFontSizeChange","fontSizeLabel","newValue","quantity","newUnit","Number","isFinite","updateObj","Object","entries","forEach","attribute","currentValue","currentQuantity","currentUnit","inspectorControls","selectedTaxonomy","select","getTaxonomies","per_page"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { map } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tFlex,\n\tFlexItem,\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSetting,\n} from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Minimum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MIN_TAGS = 1;\n\n/**\n * Maximum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MAX_TAGS = 100;\n\nconst MIN_FONT_SIZE = 0.1;\nconst MAX_FONT_SIZE = 100;\n\nfunction TagCloudEdit( { attributes, setAttributes, taxonomies } ) {\n\tconst {\n\t\ttaxonomy,\n\t\tshowTagCounts,\n\t\tnumberOfTags,\n\t\tsmallestFontSize,\n\t\tlargestFontSize,\n\t} = attributes;\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t],\n\t} );\n\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( '- Select -' ),\n\t\t\tvalue: '',\n\t\t\tdisabled: true,\n\t\t};\n\t\tconst taxonomyOptions = map(\n\t\t\ttaxonomies?.filter( ( tax ) => !! tax.show_cloud ),\n\t\t\t( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t}\n\t\t);\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\tconst onFontSizeChange = ( fontSizeLabel, newValue ) => {\n\t\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\t\tconst [ quantity, newUnit ] =\n\t\t\tparseQuantityAndUnitFromRawValue( newValue );\n\t\tif ( ! Number.isFinite( quantity ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updateObj = { [ fontSizeLabel ]: newValue };\n\t\t// We need to keep in sync the `unit` changes to both `smallestFontSize`\n\t\t// and `largestFontSize` attributes.\n\t\tObject.entries( {\n\t\t\tsmallestFontSize,\n\t\t\tlargestFontSize,\n\t\t} ).forEach( ( [ attribute, currentValue ] ) => {\n\t\t\tconst [ currentQuantity, currentUnit ] =\n\t\t\t\tparseQuantityAndUnitFromRawValue( currentValue );\n\t\t\t// Only add an update if the other font size attribute has a different unit.\n\t\t\tif ( attribute !== fontSizeLabel && currentUnit !== newUnit ) {\n\t\t\t\tupdateObj[ attribute ] = `${ currentQuantity }${ newUnit }`;\n\t\t\t}\n\t\t} );\n\t\tsetAttributes( updateObj );\n\t};\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Taxonomy' ) }\n\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\tonChange={ ( selectedTaxonomy ) =>\n\t\t\t\t\t\tsetAttributes( { taxonomy: selectedTaxonomy } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\tchecked={ showTagCounts }\n\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\tsetAttributes( { showTagCounts: ! showTagCounts } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<RangeControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Number of tags' ) }\n\t\t\t\t\tvalue={ numberOfTags }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { numberOfTags: value } )\n\t\t\t\t\t}\n\t\t\t\t\tmin={ MIN_TAGS }\n\t\t\t\t\tmax={ MAX_TAGS }\n\t\t\t\t\trequired\n\t\t\t\t/>\n\t\t\t\t<Flex>\n\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Smallest size' ) }\n\t\t\t\t\t\t\tvalue={ smallestFontSize }\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonFontSizeChange( 'smallestFontSize', value );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Largest size' ) }\n\t\t\t\t\t\t\tvalue={ largestFontSize }\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonFontSizeChange( 'largestFontSize', value );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<ServerSideRender\n\t\t\t\t\tskipBlockSupportAttributes\n\t\t\t\t\tblock=\"core/tag-cloud\"\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default withSelect( ( select ) => {\n\treturn {\n\t\ttaxonomies: select( coreStore ).getTaxonomies( { per_page: -1 } ),\n\t};\n} )( TagCloudEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/tag-cloud/edit.js"],"names":["Flex","FlexItem","PanelBody","ToggleControl","SelectControl","RangeControl","__experimentalUnitControl","UnitControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","Disabled","withSelect","__","InspectorControls","useBlockProps","useSetting","ServerSideRender","store","coreStore","MIN_TAGS","MAX_TAGS","MIN_FONT_SIZE","MAX_FONT_SIZE","TagCloudEdit","attributes","setAttributes","taxonomies","taxonomy","showTagCounts","numberOfTags","smallestFontSize","largestFontSize","units","availableUnits","getTaxonomyOptions","selectOption","label","value","disabled","taxonomyOptions","filter","tax","show_cloud","map","item","slug","name","onFontSizeChange","fontSizeLabel","newValue","quantity","newUnit","Number","isFinite","updateObj","Object","entries","forEach","attribute","currentValue","currentQuantity","currentUnit","inspectorControls","selectedTaxonomy","select","getTaxonomies","per_page"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,IADD,EAECC,QAFD,EAGCC,SAHD,EAICC,aAJD,EAKCC,aALD,EAMCC,YAND,EAOCC,yBAAyB,IAAIC,WAP9B,EAQCC,4BAA4B,IAAIC,cARjC,EASCC,8CAA8C,IAAIC,gCATnD,EAUCC,QAVD,QAWO,uBAXP;AAYA,SAASC,UAAT,QAA2B,iBAA3B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SACCC,iBADD,EAECC,aAFD,EAGCC,UAHD,QAIO,yBAJP;AAKA,OAAOC,gBAAP,MAA6B,+BAA7B;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AAEA;AACA;AACA;AACA;AACA;;AACA,MAAMC,QAAQ,GAAG,CAAjB;AAEA;AACA;AACA;AACA;AACA;;AACA,MAAMC,QAAQ,GAAG,GAAjB;AAEA,MAAMC,aAAa,GAAG,GAAtB;AACA,MAAMC,aAAa,GAAG,GAAtB;;AAEA,SAASC,YAAT,OAAmE;AAAA,MAA5C;AAAEC,IAAAA,UAAF;AAAcC,IAAAA,aAAd;AAA6BC,IAAAA;AAA7B,GAA4C;AAClE,QAAM;AACLC,IAAAA,QADK;AAELC,IAAAA,aAFK;AAGLC,IAAAA,YAHK;AAILC,IAAAA,gBAJK;AAKLC,IAAAA;AALK,MAMFP,UANJ;AAQA,QAAMQ,KAAK,GAAGzB,cAAc,CAAE;AAC7B0B,IAAAA,cAAc,EAAElB,UAAU,CAAE,eAAF,CAAV,IAAiC,CAChD,GADgD,EAEhD,IAFgD,EAGhD,IAHgD,EAIhD,KAJgD;AADpB,GAAF,CAA5B;;AASA,QAAMmB,kBAAkB,GAAG,MAAM;AAChC,UAAMC,YAAY,GAAG;AACpBC,MAAAA,KAAK,EAAExB,EAAE,CAAE,YAAF,CADW;AAEpByB,MAAAA,KAAK,EAAE,EAFa;AAGpBC,MAAAA,QAAQ,EAAE;AAHU,KAArB;AAKA,UAAMC,eAAe,GAAG,CAAEb,UAAF,aAAEA,UAAF,cAAEA,UAAF,GAAgB,EAAhB,EACtBc,MADsB,CACZC,GAAF,IAAW,CAAC,CAAEA,GAAG,CAACC,UADJ,EAEtBC,GAFsB,CAEfC,IAAF,IAAY;AACjB,aAAO;AACNP,QAAAA,KAAK,EAAEO,IAAI,CAACC,IADN;AAENT,QAAAA,KAAK,EAAEQ,IAAI,CAACE;AAFN,OAAP;AAIA,KAPsB,CAAxB;AASA,WAAO,CAAEX,YAAF,EAAgB,GAAGI,eAAnB,CAAP;AACA,GAhBD;;AAkBA,QAAMQ,gBAAgB,GAAG,CAAEC,aAAF,EAAiBC,QAAjB,KAA+B;AACvD;AACA,UAAM,CAAEC,QAAF,EAAYC,OAAZ,IACL1C,gCAAgC,CAAEwC,QAAF,CADjC;;AAEA,QAAK,CAAEG,MAAM,CAACC,QAAP,CAAiBH,QAAjB,CAAP,EAAqC;AACpC;AACA;;AACD,UAAMI,SAAS,GAAG;AAAE,OAAEN,aAAF,GAAmBC;AAArB,KAAlB,CAPuD,CAQvD;AACA;;AACAM,IAAAA,MAAM,CAACC,OAAP,CAAgB;AACf1B,MAAAA,gBADe;AAEfC,MAAAA;AAFe,KAAhB,EAGI0B,OAHJ,CAGa,SAAmC;AAAA,UAAjC,CAAEC,SAAF,EAAaC,YAAb,CAAiC;AAC/C,YAAM,CAAEC,eAAF,EAAmBC,WAAnB,IACLpD,gCAAgC,CAAEkD,YAAF,CADjC,CAD+C,CAG/C;;AACA,UAAKD,SAAS,KAAKV,aAAd,IAA+Ba,WAAW,KAAKV,OAApD,EAA8D;AAC7DG,QAAAA,SAAS,CAAEI,SAAF,CAAT,GAA0B,GAAGE,eAAiB,GAAGT,OAAS,EAA1D;AACA;AACD,KAVD;AAWA1B,IAAAA,aAAa,CAAE6B,SAAF,CAAb;AACA,GAtBD;;AAwBA,QAAMQ,iBAAiB,GACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGlD,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,UAAF,CAFX;AAGC,IAAA,OAAO,EAAGsB,kBAAkB,EAH7B;AAIC,IAAA,KAAK,EAAGP,QAJT;AAKC,IAAA,QAAQ,EAAKoC,gBAAF,IACVtC,aAAa,CAAE;AAAEE,MAAAA,QAAQ,EAAEoC;AAAZ,KAAF;AANf,IADD,EAUC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGnD,EAAE,CAAE,kBAAF,CADX;AAEC,IAAA,OAAO,EAAGgB,aAFX;AAGC,IAAA,QAAQ,EAAG,MACVH,aAAa,CAAE;AAAEG,MAAAA,aAAa,EAAE,CAAEA;AAAnB,KAAF;AAJf,IAVD,EAiBC,cAAC,YAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGhB,EAAE,CAAE,gBAAF,CAFX;AAGC,IAAA,KAAK,EAAGiB,YAHT;AAIC,IAAA,QAAQ,EAAKQ,KAAF,IACVZ,aAAa,CAAE;AAAEI,MAAAA,YAAY,EAAEQ;AAAhB,KAAF,CALf;AAOC,IAAA,GAAG,EAAGlB,QAPP;AAQC,IAAA,GAAG,EAAGC,QARP;AASC,IAAA,QAAQ;AATT,IAjBD,EA4BC,cAAC,IAAD,QACC,cAAC,QAAD;AAAU,IAAA,OAAO;AAAjB,KACC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGR,EAAE,CAAE,eAAF,CADX;AAEC,IAAA,KAAK,EAAGkB,gBAFT;AAGC,IAAA,QAAQ,EAAKO,KAAF,IAAa;AACvBU,MAAAA,gBAAgB,CAAE,kBAAF,EAAsBV,KAAtB,CAAhB;AACA,KALF;AAMC,IAAA,KAAK,EAAGL,KANT;AAOC,IAAA,GAAG,EAAGX,aAPP;AAQC,IAAA,GAAG,EAAGC;AARP,IADD,CADD,EAaC,cAAC,QAAD;AAAU,IAAA,OAAO;AAAjB,KACC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGV,EAAE,CAAE,cAAF,CADX;AAEC,IAAA,KAAK,EAAGmB,eAFT;AAGC,IAAA,QAAQ,EAAKM,KAAF,IAAa;AACvBU,MAAAA,gBAAgB,CAAE,iBAAF,EAAqBV,KAArB,CAAhB;AACA,KALF;AAMC,IAAA,KAAK,EAAGL,KANT;AAOC,IAAA,GAAG,EAAGX,aAPP;AAQC,IAAA,GAAG,EAAGC;AARP,IADD,CAbD,CA5BD,CADD,CADD;AA4DA,SACC,8BACGwC,iBADH,EAEC,qBAAUhD,aAAa,EAAvB,EACC,cAAC,QAAD,QACC,cAAC,gBAAD;AACC,IAAA,0BAA0B,MAD3B;AAEC,IAAA,KAAK,EAAC,gBAFP;AAGC,IAAA,UAAU,EAAGU;AAHd,IADD,CADD,CAFD,CADD;AAcA;;AAED,eAAeb,UAAU,CAAIqD,MAAF,IAAc;AACxC,SAAO;AACNtC,IAAAA,UAAU,EAAEsC,MAAM,CAAE9C,SAAF,CAAN,CAAoB+C,aAApB,CAAmC;AAAEC,MAAAA,QAAQ,EAAE,CAAC;AAAb,KAAnC;AADN,GAAP;AAGA,CAJwB,CAAV,CAIV3C,YAJU,CAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFlex,\n\tFlexItem,\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\tDisabled,\n} from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSetting,\n} from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Minimum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MIN_TAGS = 1;\n\n/**\n * Maximum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MAX_TAGS = 100;\n\nconst MIN_FONT_SIZE = 0.1;\nconst MAX_FONT_SIZE = 100;\n\nfunction TagCloudEdit( { attributes, setAttributes, taxonomies } ) {\n\tconst {\n\t\ttaxonomy,\n\t\tshowTagCounts,\n\t\tnumberOfTags,\n\t\tsmallestFontSize,\n\t\tlargestFontSize,\n\t} = attributes;\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t],\n\t} );\n\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( '- Select -' ),\n\t\t\tvalue: '',\n\t\t\tdisabled: true,\n\t\t};\n\t\tconst taxonomyOptions = ( taxonomies ?? [] )\n\t\t\t.filter( ( tax ) => !! tax.show_cloud )\n\t\t\t.map( ( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\tconst onFontSizeChange = ( fontSizeLabel, newValue ) => {\n\t\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\t\tconst [ quantity, newUnit ] =\n\t\t\tparseQuantityAndUnitFromRawValue( newValue );\n\t\tif ( ! Number.isFinite( quantity ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updateObj = { [ fontSizeLabel ]: newValue };\n\t\t// We need to keep in sync the `unit` changes to both `smallestFontSize`\n\t\t// and `largestFontSize` attributes.\n\t\tObject.entries( {\n\t\t\tsmallestFontSize,\n\t\t\tlargestFontSize,\n\t\t} ).forEach( ( [ attribute, currentValue ] ) => {\n\t\t\tconst [ currentQuantity, currentUnit ] =\n\t\t\t\tparseQuantityAndUnitFromRawValue( currentValue );\n\t\t\t// Only add an update if the other font size attribute has a different unit.\n\t\t\tif ( attribute !== fontSizeLabel && currentUnit !== newUnit ) {\n\t\t\t\tupdateObj[ attribute ] = `${ currentQuantity }${ newUnit }`;\n\t\t\t}\n\t\t} );\n\t\tsetAttributes( updateObj );\n\t};\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Taxonomy' ) }\n\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\tonChange={ ( selectedTaxonomy ) =>\n\t\t\t\t\t\tsetAttributes( { taxonomy: selectedTaxonomy } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\tchecked={ showTagCounts }\n\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\tsetAttributes( { showTagCounts: ! showTagCounts } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<RangeControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Number of tags' ) }\n\t\t\t\t\tvalue={ numberOfTags }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { numberOfTags: value } )\n\t\t\t\t\t}\n\t\t\t\t\tmin={ MIN_TAGS }\n\t\t\t\t\tmax={ MAX_TAGS }\n\t\t\t\t\trequired\n\t\t\t\t/>\n\t\t\t\t<Flex>\n\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Smallest size' ) }\n\t\t\t\t\t\t\tvalue={ smallestFontSize }\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonFontSizeChange( 'smallestFontSize', value );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Largest size' ) }\n\t\t\t\t\t\t\tvalue={ largestFontSize }\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonFontSizeChange( 'largestFontSize', value );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tskipBlockSupportAttributes\n\t\t\t\t\t\tblock=\"core/tag-cloud\"\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default withSelect( ( select ) => {\n\treturn {\n\t\ttaxonomies: select( coreStore ).getTaxonomies( { per_page: -1 } ),\n\t};\n} )( TagCloudEdit );\n"]}
@@ -50,6 +50,7 @@ const metadata = {
50
50
  }],
51
51
  supports: {
52
52
  html: false,
53
+ anchor: true,
53
54
  align: true,
54
55
  spacing: {
55
56
  margin: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/tag-cloud/index.js"],"names":["tag","icon","initBlock","transforms","edit","name","metadata","settings","example","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,GAAG,IAAIC,IAAhB,QAA4B,kBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;AACA,OAAOC,UAAP,MAAuB,cAAvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBN,EAAAA,IADuB;AAEvBO,EAAAA,OAAO,EAAE,EAFc;AAGvBJ,EAAAA,IAHuB;AAIvBD,EAAAA;AAJuB,CAAjB;AAOP,OAAO,MAAMM,IAAI,GAAG,MAAMP,SAAS,CAAE;AAAEG,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { tag as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport transforms from './transforms';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {},\n\tedit,\n\ttransforms,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/tag-cloud/index.js"],"names":["tag","icon","initBlock","transforms","edit","name","metadata","settings","example","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,GAAG,IAAIC,IAAhB,QAA4B,kBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;AACA,OAAOC,UAAP,MAAuB,cAAvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBN,EAAAA,IADuB;AAEvBO,EAAAA,OAAO,EAAE,EAFc;AAGvBJ,EAAAA,IAHuB;AAIvBD,EAAAA;AAJuB,CAAjB;AAOP,OAAO,MAAMM,IAAI,GAAG,MAAMP,SAAS,CAAE;AAAEG,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { tag as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport transforms from './transforms';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {},\n\tedit,\n\ttransforms,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
@@ -57,8 +57,9 @@ export function TemplatePartAdvancedControls(_ref) {
57
57
  footer: __('The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).')
58
58
  };
59
59
  return createElement(InspectorControls, {
60
- __experimentalGroup: "advanced"
60
+ group: "advanced"
61
61
  }, isEntityAvailable && createElement(Fragment, null, createElement(TextControl, {
62
+ __nextHasNoMarginBottom: true,
62
63
  label: __('Title'),
63
64
  value: title,
64
65
  onChange: value => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"names":["useEntityProp","SelectControl","TextControl","sprintf","__","InspectorControls","useSelect","TemplatePartImportControls","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","title","setTitle","areaOptions","select","definedAreas","__experimentalGetDefaultTemplatePartAreas","map","label","_area","value","htmlElementMessages","header","main","section","article","aside","footer","event","target"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst { areaOptions } = useSelect( ( select ) => {\n\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t/* eslint-disable @wordpress/data-no-store-string-literals */\n\t\tconst definedAreas =\n\t\t\tselect( 'core/editor' ).__experimentalGetDefaultTemplatePartAreas();\n\t\t/* eslint-enable @wordpress/data-no-store-string-literals */\n\t\treturn {\n\t\t\tareaOptions: definedAreas.map( ( { label, area: _area } ) => ( {\n\t\t\t\tlabel,\n\t\t\t\tvalue: _area,\n\t\t\t} ) ),\n\t\t};\n\t}, [] );\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only. '\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\treturn (\n\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\toptions={ areaOptions }\n\t\t\t\t\t\tvalue={ area }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: HTML tag based on area. */\n\t\t\t\t\t\t\t__( 'Default based on area (%s)' ),\n\t\t\t\t\t\t\t`<${ defaultWrapper }>`\n\t\t\t\t\t\t),\n\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t},\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName || '' }\n\t\t\t\tonChange={ ( value ) => setAttributes( { tagName: value } ) }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t\t{ ! hasInnerBlocks && (\n\t\t\t\t<TemplatePartImportControls\n\t\t\t\t\tarea={ area }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</InspectorControls>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"names":["useEntityProp","SelectControl","TextControl","sprintf","__","InspectorControls","useSelect","TemplatePartImportControls","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","title","setTitle","areaOptions","select","definedAreas","__experimentalGetDefaultTemplatePartAreas","map","label","_area","value","htmlElementMessages","header","main","section","article","aside","footer","event","target"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst { areaOptions } = useSelect( ( select ) => {\n\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t/* eslint-disable @wordpress/data-no-store-string-literals */\n\t\tconst definedAreas =\n\t\t\tselect( 'core/editor' ).__experimentalGetDefaultTemplatePartAreas();\n\t\t/* eslint-enable @wordpress/data-no-store-string-literals */\n\t\treturn {\n\t\t\tareaOptions: definedAreas.map( ( { label, area: _area } ) => ( {\n\t\t\t\tlabel,\n\t\t\t\tvalue: _area,\n\t\t\t} ) ),\n\t\t};\n\t}, [] );\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only. '\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\treturn (\n\t\t<InspectorControls group=\"advanced\">\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\toptions={ areaOptions }\n\t\t\t\t\t\tvalue={ area }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: HTML tag based on area. */\n\t\t\t\t\t\t\t__( 'Default based on area (%s)' ),\n\t\t\t\t\t\t\t`<${ defaultWrapper }>`\n\t\t\t\t\t\t),\n\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t},\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName || '' }\n\t\t\t\tonChange={ ( value ) => setAttributes( { tagName: value } ) }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t\t{ ! hasInnerBlocks && (\n\t\t\t\t<TemplatePartImportControls\n\t\t\t\t\tarea={ area }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</InspectorControls>\n\t);\n}\n"]}
@@ -128,7 +128,6 @@ export default function TemplatePartEdit(_ref) {
128
128
  overlayClassName: "block-editor-template-part__selection-modal",
129
129
  title: sprintf( // Translators: %s as template part area title ("Header", "Footer", etc.).
130
130
  __('Choose a %s'), areaObject.label.toLowerCase()),
131
- closeLabel: __('Cancel'),
132
131
  onRequestClose: () => setIsTemplatePartSelectionOpen(false)
133
132
  }, createElement(TemplatePartSelectionModal, {
134
133
  templatePartId: templatePartId,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"names":["isEmpty","useSelect","BlockSettingsMenuControls","BlockTitle","useBlockProps","Warning","store","blockEditorStore","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","Spinner","Modal","MenuItem","__","sprintf","coreStore","useState","createInterpolateElement","TemplatePartPlaceholder","TemplatePartSelectionModal","TemplatePartAdvancedControls","TemplatePartInnerBlocks","createTemplatePartId","useAlternativeBlockPatterns","useAlternativeTemplateParts","useTemplatePartArea","TemplatePartEdit","attributes","setAttributes","clientId","isSelected","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","blockProps","isPlaceholder","isEntityAvailable","TagName","canReplace","label","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tBlockTitle,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n} from '@wordpress/block-editor';\nimport { Spinner, Modal, MenuItem } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing: hasResolvedEntity && isEmpty( entityRecord ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst blockProps = useBlockProps();\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\t// The `isSelected` check ensures the `BlockSettingsMenuControls` fill\n\t// doesn't render multiple times. The block controls has similar internal check.\n\tconst canReplace =\n\t\tisSelected &&\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<RecursionProvider uniqueId={ templatePartId }>\n\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t/>\n\t\t\t\t{ isPlaceholder && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t\t{ canReplace && (\n\t\t\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t\t\t{ () => (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__( 'Replace <BlockTitle />' ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tBlockTitle: (\n\t\t\t\t\t\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\t\t\tmaximumLength={ 25 }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</BlockSettingsMenuControls>\n\t\t\t\t) }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\toverlayClassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"names":["isEmpty","useSelect","BlockSettingsMenuControls","BlockTitle","useBlockProps","Warning","store","blockEditorStore","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","Spinner","Modal","MenuItem","__","sprintf","coreStore","useState","createInterpolateElement","TemplatePartPlaceholder","TemplatePartSelectionModal","TemplatePartAdvancedControls","TemplatePartInnerBlocks","createTemplatePartId","useAlternativeBlockPatterns","useAlternativeTemplateParts","useTemplatePartArea","TemplatePartEdit","attributes","setAttributes","clientId","isSelected","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","blockProps","isPlaceholder","isEntityAvailable","TagName","canReplace","label","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tBlockTitle,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n} from '@wordpress/block-editor';\nimport { Spinner, Modal, MenuItem } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing: hasResolvedEntity && isEmpty( entityRecord ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst blockProps = useBlockProps();\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\t// The `isSelected` check ensures the `BlockSettingsMenuControls` fill\n\t// doesn't render multiple times. The block controls has similar internal check.\n\tconst canReplace =\n\t\tisSelected &&\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<RecursionProvider uniqueId={ templatePartId }>\n\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t/>\n\t\t\t\t{ isPlaceholder && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t\t{ canReplace && (\n\t\t\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t\t\t{ () => (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__( 'Replace <BlockTitle />' ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tBlockTitle: (\n\t\t\t\t\t\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\t\t\tmaximumLength={ 25 }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</BlockSettingsMenuControls>\n\t\t\t\t) }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\toverlayClassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -17,7 +17,7 @@ import { SearchControl, __experimentalHStack as HStack } from '@wordpress/compon
17
17
 
18
18
  import { useAlternativeBlockPatterns, useAlternativeTemplateParts, useCreateTemplatePartFromBlocks } from './utils/hooks';
19
19
  import { createTemplatePartId } from './utils/create-template-part-id';
20
- import { searchPatterns } from './utils/search';
20
+ import { searchPatterns } from '../../utils/search-patterns';
21
21
  export default function TemplatePartSelectionModal(_ref) {
22
22
  let {
23
23
  setAttributes,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/selection-modal.js"],"names":["useMemo","useState","__","sprintf","store","noticesStore","useDispatch","parse","useAsyncList","__experimentalBlockPatternsList","BlockPatternsList","SearchControl","__experimentalHStack","HStack","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","createTemplatePartId","searchPatterns","TemplatePartSelectionModal","setAttributes","onClose","templatePartId","area","clientId","searchValue","setSearchValue","templateParts","filteredTemplateParts","partsAsPatterns","map","templatePart","name","theme","slug","title","rendered","blocks","content","raw","shownTemplateParts","blockPatterns","filteredBlockPatterns","shownBlockPatterns","createSuccessNotice","onTemplatePartSelect","undefined","type","createFromBlocks","hasTemplateParts","length","hasBlockPatterns","pattern"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useDispatch } from '@wordpress/data';\nimport { parse } from '@wordpress/blocks';\nimport { useAsyncList } from '@wordpress/compose';\nimport { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';\nimport {\n\tSearchControl,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseCreateTemplatePartFromBlocks,\n} from './utils/hooks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport { searchPatterns } from './utils/search';\n\nexport default function TemplatePartSelectionModal( {\n\tsetAttributes,\n\tonClose,\n\ttemplatePartId = null,\n\tarea,\n\tclientId,\n} ) {\n\tconst [ searchValue, setSearchValue ] = useState( '' );\n\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\t// We can map template parts to block patters to reuse the BlockPatternsList UI\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tconst partsAsPatterns = templateParts.map( ( templatePart ) => ( {\n\t\t\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\t\t\ttitle: templatePart.title.rendered,\n\t\t\tblocks: parse( templatePart.content.raw ),\n\t\t\ttemplatePart,\n\t\t} ) );\n\n\t\treturn searchPatterns( partsAsPatterns, searchValue );\n\t}, [ templateParts, searchValue ] );\n\tconst shownTemplateParts = useAsyncList( filteredTemplateParts );\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\treturn searchPatterns( blockPatterns, searchValue );\n\t}, [ blockPatterns, searchValue ] );\n\tconst shownBlockPatterns = useAsyncList( filteredBlockPatterns );\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst onTemplatePartSelect = ( templatePart ) => {\n\t\tsetAttributes( {\n\t\t\tslug: templatePart.slug,\n\t\t\ttheme: templatePart.theme,\n\t\t\tarea: undefined,\n\t\t} );\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: template part title. */\n\t\t\t\t__( 'Template Part \"%s\" inserted.' ),\n\t\t\t\ttemplatePart.title?.rendered || templatePart.slug\n\t\t\t),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t\tonClose();\n\t};\n\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\tconst hasTemplateParts = !! filteredTemplateParts.length;\n\tconst hasBlockPatterns = !! filteredBlockPatterns.length;\n\n\treturn (\n\t\t<div className=\"block-library-template-part__selection-content\">\n\t\t\t<div className=\"block-library-template-part__selection-search\">\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tonChange={ setSearchValue }\n\t\t\t\t\tvalue={ searchValue }\n\t\t\t\t\tlabel={ __( 'Search for replacements' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ hasTemplateParts && (\n\t\t\t\t<div>\n\t\t\t\t\t<h2>{ __( 'Existing template parts' ) }</h2>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tblockPatterns={ filteredTemplateParts }\n\t\t\t\t\t\tshownPatterns={ shownTemplateParts }\n\t\t\t\t\t\tonClickPattern={ ( pattern ) => {\n\t\t\t\t\t\t\tonTemplatePartSelect( pattern.templatePart );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ hasBlockPatterns && (\n\t\t\t\t<div>\n\t\t\t\t\t<h2>{ __( 'Patterns' ) }</h2>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\t\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\t\t\t\tcreateFromBlocks( blocks, pattern.title );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ ! hasTemplateParts && ! hasBlockPatterns && (\n\t\t\t\t<HStack alignment=\"center\">\n\t\t\t\t\t<p>{ __( 'No results found.' ) }</p>\n\t\t\t\t</HStack>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/selection-modal.js"],"names":["useMemo","useState","__","sprintf","store","noticesStore","useDispatch","parse","useAsyncList","__experimentalBlockPatternsList","BlockPatternsList","SearchControl","__experimentalHStack","HStack","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","createTemplatePartId","searchPatterns","TemplatePartSelectionModal","setAttributes","onClose","templatePartId","area","clientId","searchValue","setSearchValue","templateParts","filteredTemplateParts","partsAsPatterns","map","templatePart","name","theme","slug","title","rendered","blocks","content","raw","shownTemplateParts","blockPatterns","filteredBlockPatterns","shownBlockPatterns","createSuccessNotice","onTemplatePartSelect","undefined","type","createFromBlocks","hasTemplateParts","length","hasBlockPatterns","pattern"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useDispatch } from '@wordpress/data';\nimport { parse } from '@wordpress/blocks';\nimport { useAsyncList } from '@wordpress/compose';\nimport { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';\nimport {\n\tSearchControl,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseCreateTemplatePartFromBlocks,\n} from './utils/hooks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport { searchPatterns } from '../../utils/search-patterns';\n\nexport default function TemplatePartSelectionModal( {\n\tsetAttributes,\n\tonClose,\n\ttemplatePartId = null,\n\tarea,\n\tclientId,\n} ) {\n\tconst [ searchValue, setSearchValue ] = useState( '' );\n\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\t// We can map template parts to block patters to reuse the BlockPatternsList UI\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tconst partsAsPatterns = templateParts.map( ( templatePart ) => ( {\n\t\t\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\t\t\ttitle: templatePart.title.rendered,\n\t\t\tblocks: parse( templatePart.content.raw ),\n\t\t\ttemplatePart,\n\t\t} ) );\n\n\t\treturn searchPatterns( partsAsPatterns, searchValue );\n\t}, [ templateParts, searchValue ] );\n\tconst shownTemplateParts = useAsyncList( filteredTemplateParts );\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\treturn searchPatterns( blockPatterns, searchValue );\n\t}, [ blockPatterns, searchValue ] );\n\tconst shownBlockPatterns = useAsyncList( filteredBlockPatterns );\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst onTemplatePartSelect = ( templatePart ) => {\n\t\tsetAttributes( {\n\t\t\tslug: templatePart.slug,\n\t\t\ttheme: templatePart.theme,\n\t\t\tarea: undefined,\n\t\t} );\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: template part title. */\n\t\t\t\t__( 'Template Part \"%s\" inserted.' ),\n\t\t\t\ttemplatePart.title?.rendered || templatePart.slug\n\t\t\t),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t\tonClose();\n\t};\n\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\tconst hasTemplateParts = !! filteredTemplateParts.length;\n\tconst hasBlockPatterns = !! filteredBlockPatterns.length;\n\n\treturn (\n\t\t<div className=\"block-library-template-part__selection-content\">\n\t\t\t<div className=\"block-library-template-part__selection-search\">\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tonChange={ setSearchValue }\n\t\t\t\t\tvalue={ searchValue }\n\t\t\t\t\tlabel={ __( 'Search for replacements' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ hasTemplateParts && (\n\t\t\t\t<div>\n\t\t\t\t\t<h2>{ __( 'Existing template parts' ) }</h2>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tblockPatterns={ filteredTemplateParts }\n\t\t\t\t\t\tshownPatterns={ shownTemplateParts }\n\t\t\t\t\t\tonClickPattern={ ( pattern ) => {\n\t\t\t\t\t\t\tonTemplatePartSelect( pattern.templatePart );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ hasBlockPatterns && (\n\t\t\t\t<div>\n\t\t\t\t\t<h2>{ __( 'Patterns' ) }</h2>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\t\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\t\t\t\tcreateFromBlocks( blocks, pattern.title );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ ! hasTemplateParts && ! hasBlockPatterns && (\n\t\t\t\t<HStack alignment=\"center\">\n\t\t\t\t\t<p>{ __( 'No results found.' ) }</p>\n\t\t\t\t</HStack>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"]}
@@ -5,7 +5,7 @@ import { createElement } from "@wordpress/element";
5
5
  */
6
6
  import { useState } from '@wordpress/element';
7
7
  import { __, sprintf } from '@wordpress/i18n';
8
- import { TextControl, Flex, FlexItem, Button, Modal } from '@wordpress/components';
8
+ import { TextControl, Button, Modal, __experimentalHStack as HStack, __experimentalVStack as VStack } from '@wordpress/components';
9
9
  export default function TitleModal(_ref) {
10
10
  let {
11
11
  areaLabel,
@@ -24,19 +24,20 @@ export default function TitleModal(_ref) {
24
24
  return createElement(Modal, {
25
25
  title: sprintf( // Translators: %s as template part area title ("Header", "Footer", etc.).
26
26
  __('Name and create your new %s'), areaLabel.toLowerCase()),
27
- closeLabel: __('Cancel'),
28
27
  overlayClassName: "wp-block-template-part__placeholder-create-new__title-form",
29
28
  onRequestClose: onClose
30
29
  }, createElement("form", {
31
30
  onSubmit: submitForCreation
31
+ }, createElement(VStack, {
32
+ spacing: "5"
32
33
  }, createElement(TextControl, {
34
+ __nextHasNoMarginBottom: true,
33
35
  label: __('Name'),
34
36
  value: title,
35
37
  onChange: setTitle
36
- }), createElement(Flex, {
37
- className: "wp-block-template-part__placeholder-create-new__title-form-actions",
38
- justify: "flex-end"
39
- }, createElement(FlexItem, null, createElement(Button, {
38
+ }), createElement(HStack, {
39
+ justify: "right"
40
+ }, createElement(Button, {
40
41
  variant: "primary",
41
42
  type: "submit",
42
43
  disabled: !title.length,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/title-modal.js"],"names":["useState","__","sprintf","TextControl","Flex","FlexItem","Button","Modal","TitleModal","areaLabel","onClose","onSubmit","title","setTitle","submitForCreation","event","preventDefault","toLowerCase","length"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,QAAT,QAAyB,oBAAzB;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SACCC,WADD,EAECC,IAFD,EAGCC,QAHD,EAICC,MAJD,EAKCC,KALD,QAMO,uBANP;AAQA,eAAe,SAASC,UAAT,OAAwD;AAAA,MAAnC;AAAEC,IAAAA,SAAF;AAAaC,IAAAA,OAAb;AAAsBC,IAAAA;AAAtB,GAAmC;AACtE;AACA;AACA,QAAM,CAAEC,KAAF,EAASC,QAAT,IAAsBb,QAAQ,CAAEC,EAAE,CAAE,wBAAF,CAAJ,CAApC;;AAEA,QAAMa,iBAAiB,GAAKC,KAAF,IAAa;AACtCA,IAAAA,KAAK,CAACC,cAAN;AACAL,IAAAA,QAAQ,CAAEC,KAAF,CAAR;AACA,GAHD;;AAKA,SACC,cAAC,KAAD;AACC,IAAA,KAAK,EAAGV,OAAO,EACd;AACAD,IAAAA,EAAE,CAAE,6BAAF,CAFY,EAGdQ,SAAS,CAACQ,WAAV,EAHc,CADhB;AAMC,IAAA,UAAU,EAAGhB,EAAE,CAAE,QAAF,CANhB;AAOC,IAAA,gBAAgB,EAAC,4DAPlB;AAQC,IAAA,cAAc,EAAGS;AARlB,KAUC;AAAM,IAAA,QAAQ,EAAGI;AAAjB,KACC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGb,EAAE,CAAE,MAAF,CADX;AAEC,IAAA,KAAK,EAAGW,KAFT;AAGC,IAAA,QAAQ,EAAGC;AAHZ,IADD,EAMC,cAAC,IAAD;AACC,IAAA,SAAS,EAAC,oEADX;AAEC,IAAA,OAAO,EAAC;AAFT,KAIC,cAAC,QAAD,QACC,cAAC,MAAD;AACC,IAAA,OAAO,EAAC,SADT;AAEC,IAAA,IAAI,EAAC,QAFN;AAGC,IAAA,QAAQ,EAAG,CAAED,KAAK,CAACM,MAHpB;AAIC,qBAAgB,CAAEN,KAAK,CAACM;AAJzB,KAMGjB,EAAE,CAAE,QAAF,CANL,CADD,CAJD,CAND,CAVD,CADD;AAmCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tTextControl,\n\tFlex,\n\tFlexItem,\n\tButton,\n\tModal,\n} from '@wordpress/components';\n\nexport default function TitleModal( { areaLabel, onClose, onSubmit } ) {\n\t// Restructure onCreate to set the blocks on local state.\n\t// Add modal to confirm title and trigger onCreate.\n\tconst [ title, setTitle ] = useState( __( 'Untitled Template Part' ) );\n\n\tconst submitForCreation = ( event ) => {\n\t\tevent.preventDefault();\n\t\tonSubmit( title );\n\t};\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ sprintf(\n\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t__( 'Name and create your new %s' ),\n\t\t\t\tareaLabel.toLowerCase()\n\t\t\t) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\toverlayClassName=\"wp-block-template-part__placeholder-create-new__title-form\"\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<form onSubmit={ submitForCreation }>\n\t\t\t\t<TextControl\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t/>\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"wp-block-template-part__placeholder-create-new__title-form-actions\"\n\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\tdisabled={ ! title.length }\n\t\t\t\t\t\t\taria-disabled={ ! title.length }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/title-modal.js"],"names":["useState","__","sprintf","TextControl","Button","Modal","__experimentalHStack","HStack","__experimentalVStack","VStack","TitleModal","areaLabel","onClose","onSubmit","title","setTitle","submitForCreation","event","preventDefault","toLowerCase","length"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,QAAT,QAAyB,oBAAzB;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SACCC,WADD,EAECC,MAFD,EAGCC,KAHD,EAICC,oBAAoB,IAAIC,MAJzB,EAKCC,oBAAoB,IAAIC,MALzB,QAMO,uBANP;AAQA,eAAe,SAASC,UAAT,OAAwD;AAAA,MAAnC;AAAEC,IAAAA,SAAF;AAAaC,IAAAA,OAAb;AAAsBC,IAAAA;AAAtB,GAAmC;AACtE;AACA;AACA,QAAM,CAAEC,KAAF,EAASC,QAAT,IAAsBf,QAAQ,CAAEC,EAAE,CAAE,wBAAF,CAAJ,CAApC;;AAEA,QAAMe,iBAAiB,GAAKC,KAAF,IAAa;AACtCA,IAAAA,KAAK,CAACC,cAAN;AACAL,IAAAA,QAAQ,CAAEC,KAAF,CAAR;AACA,GAHD;;AAKA,SACC,cAAC,KAAD;AACC,IAAA,KAAK,EAAGZ,OAAO,EACd;AACAD,IAAAA,EAAE,CAAE,6BAAF,CAFY,EAGdU,SAAS,CAACQ,WAAV,EAHc,CADhB;AAMC,IAAA,gBAAgB,EAAC,4DANlB;AAOC,IAAA,cAAc,EAAGP;AAPlB,KASC;AAAM,IAAA,QAAQ,EAAGI;AAAjB,KACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC;AAAhB,KACC,cAAC,WAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGf,EAAE,CAAE,MAAF,CAFX;AAGC,IAAA,KAAK,EAAGa,KAHT;AAIC,IAAA,QAAQ,EAAGC;AAJZ,IADD,EAOC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC;AAAhB,KACC,cAAC,MAAD;AACC,IAAA,OAAO,EAAC,SADT;AAEC,IAAA,IAAI,EAAC,QAFN;AAGC,IAAA,QAAQ,EAAG,CAAED,KAAK,CAACM,MAHpB;AAIC,qBAAgB,CAAEN,KAAK,CAACM;AAJzB,KAMGnB,EAAE,CAAE,QAAF,CANL,CADD,CAPD,CADD,CATD,CADD;AAgCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tTextControl,\n\tButton,\n\tModal,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\nexport default function TitleModal( { areaLabel, onClose, onSubmit } ) {\n\t// Restructure onCreate to set the blocks on local state.\n\t// Add modal to confirm title and trigger onCreate.\n\tconst [ title, setTitle ] = useState( __( 'Untitled Template Part' ) );\n\n\tconst submitForCreation = ( event ) => {\n\t\tevent.preventDefault();\n\t\tonSubmit( title );\n\t};\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ sprintf(\n\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t__( 'Name and create your new %s' ),\n\t\t\t\tareaLabel.toLowerCase()\n\t\t\t) }\n\t\t\toverlayClassName=\"wp-block-template-part__placeholder-create-new__title-form\"\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<form onSubmit={ submitForCreation }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\tdisabled={ ! title.length }\n\t\t\t\t\t\t\taria-disabled={ ! title.length }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"]}
@@ -69,10 +69,10 @@ export function useAlternativeBlockPatterns(area, clientId) {
69
69
  const blockNameWithArea = area ? `core/template-part/${area}` : 'core/template-part';
70
70
  const {
71
71
  getBlockRootClientId,
72
- __experimentalGetPatternsByBlockTypes
72
+ getPatternsByBlockTypes
73
73
  } = select(blockEditorStore);
74
74
  const rootClientId = getBlockRootClientId(clientId);
75
- return __experimentalGetPatternsByBlockTypes(blockNameWithArea, rootClientId);
75
+ return getPatternsByBlockTypes(blockNameWithArea, rootClientId);
76
76
  }, [area, clientId]);
77
77
  }
78
78
  export function useCreateTemplatePartFromBlocks(area, setAttributes) {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/utils/hooks.js"],"names":["kebabCase","useDispatch","useSelect","store","coreStore","blockEditorStore","useMemo","serialize","__","createTemplatePartId","useAlternativeTemplateParts","area","excludedId","templateParts","isResolving","select","getEntityRecords","_isResolving","query","per_page","isLoading","filteredTemplateParts","filter","templatePart","theme","slug","useAlternativeBlockPatterns","clientId","blockNameWithArea","getBlockRootClientId","__experimentalGetPatternsByBlockTypes","rootClientId","useCreateTemplatePartFromBlocks","setAttributes","saveEntityRecord","blocks","title","cleanSlug","replace","record","content","undefined","useTemplatePartArea","definedAreas","__experimentalGetDefaultTemplatePartAreas","selectedArea","find","definedArea","defaultArea","icon","label","tagName","area_tag"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { serialize } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { createTemplatePartId } from './create-template-part-id';\n\n/**\n * Retrieves the available template parts for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} excludedId Template part ID to exclude.\n *\n * @return {{ templateParts: Array, isResolving: boolean }} array of template parts.\n */\nexport function useAlternativeTemplateParts( area, excludedId ) {\n\tconst { templateParts, isResolving } = useSelect( ( select ) => {\n\t\tconst { getEntityRecords, isResolving: _isResolving } =\n\t\t\tselect( coreStore );\n\t\tconst query = { per_page: -1 };\n\t\treturn {\n\t\t\ttemplateParts: getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery\n\t\t\t),\n\t\t\tisLoading: _isResolving( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery,\n\t\t\t] ),\n\t\t};\n\t}, [] );\n\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tif ( ! templateParts ) {\n\t\t\treturn [];\n\t\t}\n\t\treturn (\n\t\t\ttemplateParts.filter(\n\t\t\t\t( templatePart ) =>\n\t\t\t\t\tcreateTemplatePartId(\n\t\t\t\t\t\ttemplatePart.theme,\n\t\t\t\t\t\ttemplatePart.slug\n\t\t\t\t\t) !== excludedId &&\n\t\t\t\t\t( ! area ||\n\t\t\t\t\t\t'uncategorized' === area ||\n\t\t\t\t\t\ttemplatePart.area === area )\n\t\t\t) || []\n\t\t);\n\t}, [ templateParts, area ] );\n\n\treturn {\n\t\ttemplateParts: filteredTemplateParts,\n\t\tisResolving,\n\t};\n}\n\n/**\n * Retrieves the available block patterns for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} clientId Block Client ID. (The container of the block can impact allowed blocks).\n *\n * @return {Array} array of block patterns.\n */\nexport function useAlternativeBlockPatterns( area, clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst blockNameWithArea = area\n\t\t\t\t? `core/template-part/${ area }`\n\t\t\t\t: 'core/template-part';\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\t__experimentalGetPatternsByBlockTypes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn __experimentalGetPatternsByBlockTypes(\n\t\t\t\tblockNameWithArea,\n\t\t\t\trootClientId\n\t\t\t);\n\t\t},\n\t\t[ area, clientId ]\n\t);\n}\n\nexport function useCreateTemplatePartFromBlocks( area, setAttributes ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\treturn async ( blocks = [], title = __( 'Untitled Template Part' ) ) => {\n\t\t// Currently template parts only allow latin chars.\n\t\t// Fallback slug will receive suffix by default.\n\t\tconst cleanSlug =\n\t\t\tkebabCase( title ).replace( /[^\\w-]+/g, '' ) || 'wp-custom-part';\n\n\t\t// If we have `area` set from block attributes, means an exposed\n\t\t// block variation was inserted. So add this prop to the template\n\t\t// part entity on creation. Afterwards remove `area` value from\n\t\t// block attributes.\n\t\tconst record = {\n\t\t\ttitle,\n\t\t\tslug: cleanSlug,\n\t\t\tcontent: serialize( blocks ),\n\t\t\t// `area` is filterable on the server and defaults to `UNCATEGORIZED`\n\t\t\t// if provided value is not allowed.\n\t\t\tarea,\n\t\t};\n\t\tconst templatePart = await saveEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\trecord\n\t\t);\n\t\tsetAttributes( {\n\t\t\tslug: templatePart.slug,\n\t\t\ttheme: templatePart.theme,\n\t\t\tarea: undefined,\n\t\t} );\n\t};\n}\n\n/**\n * Retrieves the template part area object.\n *\n * @param {string} area Template part area identifier.\n *\n * @return {{icon: Object, label: string, tagName: string}} Template Part area.\n */\nexport function useTemplatePartArea( area ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t\t/* eslint-disable @wordpress/data-no-store-string-literals */\n\t\t\tconst definedAreas =\n\t\t\t\tselect(\n\t\t\t\t\t'core/editor'\n\t\t\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t\t\t/* eslint-enable @wordpress/data-no-store-string-literals */\n\n\t\t\tconst selectedArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === area\n\t\t\t);\n\t\t\tconst defaultArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === 'uncategorized'\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\ticon: selectedArea?.icon || defaultArea?.icon,\n\t\t\t\tlabel: selectedArea?.label || __( 'Template Part' ),\n\t\t\t\ttagName: selectedArea?.area_tag ?? 'div',\n\t\t\t};\n\t\t},\n\t\t[ area ]\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/utils/hooks.js"],"names":["kebabCase","useDispatch","useSelect","store","coreStore","blockEditorStore","useMemo","serialize","__","createTemplatePartId","useAlternativeTemplateParts","area","excludedId","templateParts","isResolving","select","getEntityRecords","_isResolving","query","per_page","isLoading","filteredTemplateParts","filter","templatePart","theme","slug","useAlternativeBlockPatterns","clientId","blockNameWithArea","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","useCreateTemplatePartFromBlocks","setAttributes","saveEntityRecord","blocks","title","cleanSlug","replace","record","content","undefined","useTemplatePartArea","definedAreas","__experimentalGetDefaultTemplatePartAreas","selectedArea","find","definedArea","defaultArea","icon","label","tagName","area_tag"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { serialize } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { createTemplatePartId } from './create-template-part-id';\n\n/**\n * Retrieves the available template parts for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} excludedId Template part ID to exclude.\n *\n * @return {{ templateParts: Array, isResolving: boolean }} array of template parts.\n */\nexport function useAlternativeTemplateParts( area, excludedId ) {\n\tconst { templateParts, isResolving } = useSelect( ( select ) => {\n\t\tconst { getEntityRecords, isResolving: _isResolving } =\n\t\t\tselect( coreStore );\n\t\tconst query = { per_page: -1 };\n\t\treturn {\n\t\t\ttemplateParts: getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery\n\t\t\t),\n\t\t\tisLoading: _isResolving( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery,\n\t\t\t] ),\n\t\t};\n\t}, [] );\n\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tif ( ! templateParts ) {\n\t\t\treturn [];\n\t\t}\n\t\treturn (\n\t\t\ttemplateParts.filter(\n\t\t\t\t( templatePart ) =>\n\t\t\t\t\tcreateTemplatePartId(\n\t\t\t\t\t\ttemplatePart.theme,\n\t\t\t\t\t\ttemplatePart.slug\n\t\t\t\t\t) !== excludedId &&\n\t\t\t\t\t( ! area ||\n\t\t\t\t\t\t'uncategorized' === area ||\n\t\t\t\t\t\ttemplatePart.area === area )\n\t\t\t) || []\n\t\t);\n\t}, [ templateParts, area ] );\n\n\treturn {\n\t\ttemplateParts: filteredTemplateParts,\n\t\tisResolving,\n\t};\n}\n\n/**\n * Retrieves the available block patterns for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} clientId Block Client ID. (The container of the block can impact allowed blocks).\n *\n * @return {Array} array of block patterns.\n */\nexport function useAlternativeBlockPatterns( area, clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst blockNameWithArea = area\n\t\t\t\t? `core/template-part/${ area }`\n\t\t\t\t: 'core/template-part';\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn getPatternsByBlockTypes( blockNameWithArea, rootClientId );\n\t\t},\n\t\t[ area, clientId ]\n\t);\n}\n\nexport function useCreateTemplatePartFromBlocks( area, setAttributes ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\treturn async ( blocks = [], title = __( 'Untitled Template Part' ) ) => {\n\t\t// Currently template parts only allow latin chars.\n\t\t// Fallback slug will receive suffix by default.\n\t\tconst cleanSlug =\n\t\t\tkebabCase( title ).replace( /[^\\w-]+/g, '' ) || 'wp-custom-part';\n\n\t\t// If we have `area` set from block attributes, means an exposed\n\t\t// block variation was inserted. So add this prop to the template\n\t\t// part entity on creation. Afterwards remove `area` value from\n\t\t// block attributes.\n\t\tconst record = {\n\t\t\ttitle,\n\t\t\tslug: cleanSlug,\n\t\t\tcontent: serialize( blocks ),\n\t\t\t// `area` is filterable on the server and defaults to `UNCATEGORIZED`\n\t\t\t// if provided value is not allowed.\n\t\t\tarea,\n\t\t};\n\t\tconst templatePart = await saveEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\trecord\n\t\t);\n\t\tsetAttributes( {\n\t\t\tslug: templatePart.slug,\n\t\t\ttheme: templatePart.theme,\n\t\t\tarea: undefined,\n\t\t} );\n\t};\n}\n\n/**\n * Retrieves the template part area object.\n *\n * @param {string} area Template part area identifier.\n *\n * @return {{icon: Object, label: string, tagName: string}} Template Part area.\n */\nexport function useTemplatePartArea( area ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t\t/* eslint-disable @wordpress/data-no-store-string-literals */\n\t\t\tconst definedAreas =\n\t\t\t\tselect(\n\t\t\t\t\t'core/editor'\n\t\t\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t\t\t/* eslint-enable @wordpress/data-no-store-string-literals */\n\n\t\t\tconst selectedArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === area\n\t\t\t);\n\t\t\tconst defaultArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === 'uncategorized'\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\ticon: selectedArea?.icon || defaultArea?.icon,\n\t\t\t\tlabel: selectedArea?.label || __( 'Template Part' ),\n\t\t\t\ttagName: selectedArea?.area_tag ?? 'div',\n\t\t\t};\n\t\t},\n\t\t[ area ]\n\t);\n}\n"]}
@@ -39,6 +39,7 @@ const metadata = {
39
39
  }
40
40
  },
41
41
  supports: {
42
+ anchor: true,
42
43
  align: true,
43
44
  html: false,
44
45
  reusable: false
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/index.js"],"names":["capitalCase","store","coreDataStore","select","symbolFilled","addFilter","decodeEntities","initBlock","edit","enhanceTemplatePartVariations","name","metadata","settings","icon","__experimentalLabel","slug","theme","entity","getEntityRecord","title","rendered","init","DISALLOWED_PARENTS","canInsert","blockType","rootClientId","getBlock","getBlockParentsByBlockName","disallowedParentType","hasDisallowedParent","length"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,QAA4B,aAA5B;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,sBAAvC;AACA,SAASC,MAAT,QAAuB,iBAAvB;AACA,SAASC,YAAT,QAA6B,kBAA7B;AACA,SAASC,SAAT,QAA0B,kBAA1B;AACA,SAASC,cAAT,QAA+B,0BAA/B;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,SAASC,6BAAT,QAA8C,cAA9C;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAET,YADiB;AAEvBU,EAAAA,mBAAmB,EAAE,QAAuB;AAAA;;AAAA,QAArB;AAAEC,MAAAA,IAAF;AAAQC,MAAAA;AAAR,KAAqB;;AAC3C;AACA;AACA,QAAK,CAAED,IAAP,EAAc;AACb;AACA;;AAED,UAAME,MAAM,GAAGd,MAAM,CAAED,aAAF,CAAN,CAAwBgB,eAAxB,CACd,UADc,EAEd,kBAFc,EAGdF,KAAK,GAAG,IAAR,GAAeD,IAHD,CAAf;;AAKA,QAAK,CAAEE,MAAP,EAAgB;AACf;AACA;;AAED,WACCX,cAAc,kBAAEW,MAAM,CAACE,KAAT,kDAAE,cAAcC,QAAhB,CAAd,IACApB,WAAW,CAAEiB,MAAM,CAACF,IAAT,CAFZ;AAIA,GAtBsB;AAuBvBP,EAAAA;AAvBuB,CAAjB;AA0BP,OAAO,MAAMa,IAAI,GAAG,MAAM;AACzBhB,EAAAA,SAAS,CACR,0BADQ,EAER,oBAFQ,EAGRI,6BAHQ,CAAT,CADyB,CAOzB;;AACA,QAAMa,kBAAkB,GAAG,CAAE,oBAAF,EAAwB,mBAAxB,CAA3B;AACAjB,EAAAA,SAAS,CACR,0CADQ,EAER,sCAFQ,EAGR,CACCkB,SADD,EAECC,SAFD,EAGCC,YAHD,YAKK;AAAA,QADJ;AAAEC,MAAAA,QAAF;AAAYC,MAAAA;AAAZ,KACI;;AACJ,QAAKH,SAAS,CAACd,IAAV,KAAmB,oBAAxB,EAA+C;AAC9C,aAAOa,SAAP;AACA;;AAED,SAAM,MAAMK,oBAAZ,IAAoCN,kBAApC,EAAyD;AAAA;;AACxD,YAAMO,mBAAmB,GACxB,cAAAH,QAAQ,CAAED,YAAF,CAAR,wDAA0Bf,IAA1B,MAAmCkB,oBAAnC,IACAD,0BAA0B,CACzBF,YADyB,EAEzBG,oBAFyB,CAA1B,CAGEE,MALH;;AAMA,UAAKD,mBAAL,EAA2B;AAC1B,eAAO,KAAP;AACA;AACD;;AACD,WAAO,IAAP;AACA,GAzBO,CAAT;AA4BA,SAAOtB,SAAS,CAAE;AAAEG,IAAAA,IAAF;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,GAAF,CAAhB;AACA,CAtCM","sourcesContent":["/**\n * External dependencies\n */\nimport { capitalCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { select } from '@wordpress/data';\nimport { symbolFilled } from '@wordpress/icons';\nimport { addFilter } from '@wordpress/hooks';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport { enhanceTemplatePartVariations } from './variations';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon: symbolFilled,\n\t__experimentalLabel: ( { slug, theme } ) => {\n\t\t// Attempt to find entity title if block is a template part.\n\t\t// Require slug to request, otherwise entity is uncreated and will throw 404.\n\t\tif ( ! slug ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst entity = select( coreDataStore ).getEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\ttheme + '//' + slug\n\t\t);\n\t\tif ( ! entity ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn (\n\t\t\tdecodeEntities( entity.title?.rendered ) ||\n\t\t\tcapitalCase( entity.slug )\n\t\t);\n\t},\n\tedit,\n};\n\nexport const init = () => {\n\taddFilter(\n\t\t'blocks.registerBlockType',\n\t\t'core/template-part',\n\t\tenhanceTemplatePartVariations\n\t);\n\n\t// Prevent adding template parts inside post templates.\n\tconst DISALLOWED_PARENTS = [ 'core/post-template', 'core/post-content' ];\n\taddFilter(\n\t\t'blockEditor.__unstableCanInsertBlockType',\n\t\t'removeTemplatePartsFromPostTemplates',\n\t\t(\n\t\t\tcanInsert,\n\t\t\tblockType,\n\t\t\trootClientId,\n\t\t\t{ getBlock, getBlockParentsByBlockName }\n\t\t) => {\n\t\t\tif ( blockType.name !== 'core/template-part' ) {\n\t\t\t\treturn canInsert;\n\t\t\t}\n\n\t\t\tfor ( const disallowedParentType of DISALLOWED_PARENTS ) {\n\t\t\t\tconst hasDisallowedParent =\n\t\t\t\t\tgetBlock( rootClientId )?.name === disallowedParentType ||\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\tdisallowedParentType\n\t\t\t\t\t).length;\n\t\t\t\tif ( hasDisallowedParent ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t);\n\n\treturn initBlock( { name, metadata, settings } );\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/index.js"],"names":["capitalCase","store","coreDataStore","select","symbolFilled","addFilter","decodeEntities","initBlock","edit","enhanceTemplatePartVariations","name","metadata","settings","icon","__experimentalLabel","slug","theme","entity","getEntityRecord","title","rendered","init","DISALLOWED_PARENTS","canInsert","blockType","rootClientId","getBlock","getBlockParentsByBlockName","disallowedParentType","hasDisallowedParent","length"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,QAA4B,aAA5B;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,sBAAvC;AACA,SAASC,MAAT,QAAuB,iBAAvB;AACA,SAASC,YAAT,QAA6B,kBAA7B;AACA,SAASC,SAAT,QAA0B,kBAA1B;AACA,SAASC,cAAT,QAA+B,0BAA/B;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,SAASC,6BAAT,QAA8C,cAA9C;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAET,YADiB;AAEvBU,EAAAA,mBAAmB,EAAE,QAAuB;AAAA;;AAAA,QAArB;AAAEC,MAAAA,IAAF;AAAQC,MAAAA;AAAR,KAAqB;;AAC3C;AACA;AACA,QAAK,CAAED,IAAP,EAAc;AACb;AACA;;AAED,UAAME,MAAM,GAAGd,MAAM,CAAED,aAAF,CAAN,CAAwBgB,eAAxB,CACd,UADc,EAEd,kBAFc,EAGdF,KAAK,GAAG,IAAR,GAAeD,IAHD,CAAf;;AAKA,QAAK,CAAEE,MAAP,EAAgB;AACf;AACA;;AAED,WACCX,cAAc,kBAAEW,MAAM,CAACE,KAAT,kDAAE,cAAcC,QAAhB,CAAd,IACApB,WAAW,CAAEiB,MAAM,CAACF,IAAT,CAFZ;AAIA,GAtBsB;AAuBvBP,EAAAA;AAvBuB,CAAjB;AA0BP,OAAO,MAAMa,IAAI,GAAG,MAAM;AACzBhB,EAAAA,SAAS,CACR,0BADQ,EAER,oBAFQ,EAGRI,6BAHQ,CAAT,CADyB,CAOzB;;AACA,QAAMa,kBAAkB,GAAG,CAAE,oBAAF,EAAwB,mBAAxB,CAA3B;AACAjB,EAAAA,SAAS,CACR,0CADQ,EAER,sCAFQ,EAGR,CACCkB,SADD,EAECC,SAFD,EAGCC,YAHD,YAKK;AAAA,QADJ;AAAEC,MAAAA,QAAF;AAAYC,MAAAA;AAAZ,KACI;;AACJ,QAAKH,SAAS,CAACd,IAAV,KAAmB,oBAAxB,EAA+C;AAC9C,aAAOa,SAAP;AACA;;AAED,SAAM,MAAMK,oBAAZ,IAAoCN,kBAApC,EAAyD;AAAA;;AACxD,YAAMO,mBAAmB,GACxB,cAAAH,QAAQ,CAAED,YAAF,CAAR,wDAA0Bf,IAA1B,MAAmCkB,oBAAnC,IACAD,0BAA0B,CACzBF,YADyB,EAEzBG,oBAFyB,CAA1B,CAGEE,MALH;;AAMA,UAAKD,mBAAL,EAA2B;AAC1B,eAAO,KAAP;AACA;AACD;;AACD,WAAO,IAAP;AACA,GAzBO,CAAT;AA4BA,SAAOtB,SAAS,CAAE;AAAEG,IAAAA,IAAF;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,GAAF,CAAhB;AACA,CAtCM","sourcesContent":["/**\n * External dependencies\n */\nimport { capitalCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { select } from '@wordpress/data';\nimport { symbolFilled } from '@wordpress/icons';\nimport { addFilter } from '@wordpress/hooks';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport { enhanceTemplatePartVariations } from './variations';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon: symbolFilled,\n\t__experimentalLabel: ( { slug, theme } ) => {\n\t\t// Attempt to find entity title if block is a template part.\n\t\t// Require slug to request, otherwise entity is uncreated and will throw 404.\n\t\tif ( ! slug ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst entity = select( coreDataStore ).getEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\ttheme + '//' + slug\n\t\t);\n\t\tif ( ! entity ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn (\n\t\t\tdecodeEntities( entity.title?.rendered ) ||\n\t\t\tcapitalCase( entity.slug )\n\t\t);\n\t},\n\tedit,\n};\n\nexport const init = () => {\n\taddFilter(\n\t\t'blocks.registerBlockType',\n\t\t'core/template-part',\n\t\tenhanceTemplatePartVariations\n\t);\n\n\t// Prevent adding template parts inside post templates.\n\tconst DISALLOWED_PARENTS = [ 'core/post-template', 'core/post-content' ];\n\taddFilter(\n\t\t'blockEditor.__unstableCanInsertBlockType',\n\t\t'removeTemplatePartsFromPostTemplates',\n\t\t(\n\t\t\tcanInsert,\n\t\t\tblockType,\n\t\t\trootClientId,\n\t\t\t{ getBlock, getBlockParentsByBlockName }\n\t\t) => {\n\t\t\tif ( blockType.name !== 'core/template-part' ) {\n\t\t\t\treturn canInsert;\n\t\t\t}\n\n\t\t\tfor ( const disallowedParentType of DISALLOWED_PARENTS ) {\n\t\t\t\tconst hasDisallowedParent =\n\t\t\t\t\tgetBlock( rootClientId )?.name === disallowedParentType ||\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\tdisallowedParentType\n\t\t\t\t\t).length;\n\t\t\t\tif ( hasDisallowedParent ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t);\n\n\treturn initBlock( { name, metadata, settings } );\n};\n"]}
@@ -21,6 +21,7 @@ const metadata = {
21
21
  }
22
22
  },
23
23
  supports: {
24
+ anchor: true,
24
25
  align: ["wide", "full"],
25
26
  html: false,
26
27
  color: {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/term-description/index.js"],"names":["termDescription","icon","initBlock","edit","name","metadata","settings","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,eAAe,IAAIC,IAA5B,QAAwC,kBAAxC;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBL,EAAAA,IADuB;AAEvBE,EAAAA;AAFuB,CAAjB;AAKP,OAAO,MAAMI,IAAI,GAAG,MAAML,SAAS,CAAE;AAAEE,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { termDescription as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/term-description/index.js"],"names":["termDescription","icon","initBlock","edit","name","metadata","settings","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,eAAe,IAAIC,IAA5B,QAAwC,kBAAxC;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBL,EAAAA,IADuB;AAEvBE,EAAAA;AAFuB,CAAjB;AAKP,OAAO,MAAMI,IAAI,GAAG,MAAML,SAAS,CAAE;AAAEE,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { termDescription as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
@@ -7,7 +7,7 @@ import { registerBlockType } from '@wordpress/blocks';
7
7
  *
8
8
  * @param {Object} block The block to be registered.
9
9
  *
10
- * @return {?WPBlockType} The block, if it has been successfully registered;
10
+ * @return {WPBlockType | undefined} The block, if it has been successfully registered;
11
11
  * otherwise `undefined`.
12
12
  */
13
13
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/utils/init-block.js"],"names":["registerBlockType","initBlock","block","metadata","settings","name"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,iBAAT,QAAkC,mBAAlC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,SAAT,CAAoBC,KAApB,EAA4B;AAC1C,MAAK,CAAEA,KAAP,EAAe;AACd;AACA;;AACD,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,QAAZ;AAAsBC,IAAAA;AAAtB,MAA+BH,KAArC;AACA,SAAOF,iBAAiB,CAAE;AAAEK,IAAAA,IAAF;AAAQ,OAAGF;AAAX,GAAF,EAAyBC,QAAzB,CAAxB;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { registerBlockType } from '@wordpress/blocks';\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n * @return {?WPBlockType} The block, if it has been successfully registered;\n * otherwise `undefined`.\n */\nexport default function initBlock( block ) {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\treturn registerBlockType( { name, ...metadata }, settings );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/utils/init-block.js"],"names":["registerBlockType","initBlock","block","metadata","settings","name"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,iBAAT,QAAkC,mBAAlC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,SAAT,CAAoBC,KAApB,EAA4B;AAC1C,MAAK,CAAEA,KAAP,EAAe;AACd;AACA;;AACD,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,QAAZ;AAAsBC,IAAAA;AAAtB,MAA+BH,KAArC;AACA,SAAOF,iBAAiB,CAAE;AAAEK,IAAAA,IAAF;AAAQ,OAAGF;AAAX,GAAF,EAAyBC,QAAzB,CAAxB;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { registerBlockType } from '@wordpress/blocks';\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n * @return {WPBlockType | undefined} The block, if it has been successfully registered;\n * otherwise `undefined`.\n */\nexport default function initBlock( block ) {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\treturn registerBlockType( { name, ...metadata }, settings );\n}\n"]}
@@ -8,7 +8,7 @@ const ALLOWED_BLOCKS_GRADIENT_SUPPORT = ['core/button'];
8
8
  *
9
9
  * @param {Object} block The block to be registered.
10
10
  *
11
- * @return {?WPBlockType} The block, if it has been successfully registered;
11
+ * @return {WPBlockType | undefined} The block, if it has been successfully registered;
12
12
  * otherwise `undefined`.
13
13
  */
14
14
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/utils/init-block.native.js"],"names":["registerBlockType","ALLOWED_BLOCKS_GRADIENT_SUPPORT","initBlock","block","metadata","settings","name","supports","includes","color","gradients"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,iBAAT,QAAkC,mBAAlC;AAEA,MAAMC,+BAA+B,GAAG,CAAE,aAAF,CAAxC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,SAAT,CAAoBC,KAApB,EAA4B;AAAA;;AAC1C,MAAK,CAAEA,KAAP,EAAe;AACd;AACA;;AACD,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,QAAZ;AAAsBC,IAAAA;AAAtB,MAA+BH,KAArC;AACA,QAAM;AAAEI,IAAAA;AAAF,MAAeH,QAArB;AAEA,SAAOJ,iBAAiB,CACvB;AACCM,IAAAA,IADD;AAEC,OAAGF,QAFJ;AAGC;AACA,QAAK,CAAEH,+BAA+B,CAACO,QAAhC,CAA0CF,IAA1C,CAAF,IACLC,QADK,aACLA,QADK,kCACLA,QAAQ,CAAEE,KADL,4CACL,gBAAiBC,SADZ,GAEF;AACAH,MAAAA,QAAQ,EAAE,EACT,GAAGA,QADM;AAETE,QAAAA,KAAK,EAAE,EAAE,GAAGF,QAAQ,CAACE,KAAd;AAAqBC,UAAAA,SAAS,EAAE;AAAhC;AAFE;AADV,KAFE,GAQF,EARH;AAJD,GADuB,EAevBL,QAfuB,CAAxB;AAiBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { registerBlockType } from '@wordpress/blocks';\n\nconst ALLOWED_BLOCKS_GRADIENT_SUPPORT = [ 'core/button' ];\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n * @return {?WPBlockType} The block, if it has been successfully registered;\n * otherwise `undefined`.\n */\nexport default function initBlock( block ) {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tconst { supports } = metadata;\n\n\treturn registerBlockType(\n\t\t{\n\t\t\tname,\n\t\t\t...metadata,\n\t\t\t// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT.\n\t\t\t...( ! ALLOWED_BLOCKS_GRADIENT_SUPPORT.includes( name ) &&\n\t\t\tsupports?.color?.gradients\n\t\t\t\t? {\n\t\t\t\t\t\tsupports: {\n\t\t\t\t\t\t\t...supports,\n\t\t\t\t\t\t\tcolor: { ...supports.color, gradients: false },\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t},\n\t\tsettings\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/utils/init-block.native.js"],"names":["registerBlockType","ALLOWED_BLOCKS_GRADIENT_SUPPORT","initBlock","block","metadata","settings","name","supports","includes","color","gradients"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,iBAAT,QAAkC,mBAAlC;AAEA,MAAMC,+BAA+B,GAAG,CAAE,aAAF,CAAxC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,SAAT,CAAoBC,KAApB,EAA4B;AAAA;;AAC1C,MAAK,CAAEA,KAAP,EAAe;AACd;AACA;;AACD,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,QAAZ;AAAsBC,IAAAA;AAAtB,MAA+BH,KAArC;AACA,QAAM;AAAEI,IAAAA;AAAF,MAAeH,QAArB;AAEA,SAAOJ,iBAAiB,CACvB;AACCM,IAAAA,IADD;AAEC,OAAGF,QAFJ;AAGC;AACA,QAAK,CAAEH,+BAA+B,CAACO,QAAhC,CAA0CF,IAA1C,CAAF,IACLC,QADK,aACLA,QADK,kCACLA,QAAQ,CAAEE,KADL,4CACL,gBAAiBC,SADZ,GAEF;AACAH,MAAAA,QAAQ,EAAE,EACT,GAAGA,QADM;AAETE,QAAAA,KAAK,EAAE,EAAE,GAAGF,QAAQ,CAACE,KAAd;AAAqBC,UAAAA,SAAS,EAAE;AAAhC;AAFE;AADV,KAFE,GAQF,EARH;AAJD,GADuB,EAevBL,QAfuB,CAAxB;AAiBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { registerBlockType } from '@wordpress/blocks';\n\nconst ALLOWED_BLOCKS_GRADIENT_SUPPORT = [ 'core/button' ];\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n * @return {WPBlockType | undefined} The block, if it has been successfully registered;\n * otherwise `undefined`.\n */\nexport default function initBlock( block ) {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tconst { supports } = metadata;\n\n\treturn registerBlockType(\n\t\t{\n\t\t\tname,\n\t\t\t...metadata,\n\t\t\t// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT.\n\t\t\t...( ! ALLOWED_BLOCKS_GRADIENT_SUPPORT.includes( name ) &&\n\t\t\tsupports?.color?.gradients\n\t\t\t\t? {\n\t\t\t\t\t\tsupports: {\n\t\t\t\t\t\t\t...supports,\n\t\t\t\t\t\t\tcolor: { ...supports.color, gradients: false },\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t},\n\t\tsettings\n\t);\n}\n"]}
@@ -10,7 +10,7 @@ import removeAccents from 'remove-accents';
10
10
  * @return {string} The normalized search input.
11
11
  */
12
12
 
13
- function normalizeSearchInput() {
13
+ export function normalizeSearchInput() {
14
14
  let input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
15
15
  // Disregard diacritics.
16
16
  input = removeAccents(input); // Trim & Lowercase.
@@ -26,8 +26,7 @@ function normalizeSearchInput() {
26
26
  * @return {number} A pattern search rank
27
27
  */
28
28
 
29
-
30
- function getPatternSearchRank(pattern, searchValue) {
29
+ export function getPatternSearchRank(pattern, searchValue) {
31
30
  const normalizedSearchValue = normalizeSearchInput(searchValue);
32
31
  const normalizedTitle = normalizeSearchInput(pattern.title);
33
32
  let rank = 0;
@@ -56,7 +55,6 @@ function getPatternSearchRank(pattern, searchValue) {
56
55
  * @return {Array} Filtered pattern list.
57
56
  */
58
57
 
59
-
60
58
  export function searchPatterns() {
61
59
  let patterns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
62
60
  let searchValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
@@ -81,4 +79,4 @@ export function searchPatterns() {
81
79
  return pattern;
82
80
  });
83
81
  }
84
- //# sourceMappingURL=search.js.map
82
+ //# sourceMappingURL=search-patterns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/utils/search-patterns.js"],"names":["removeAccents","normalizeSearchInput","input","trim","toLowerCase","getPatternSearchRank","pattern","searchValue","normalizedSearchValue","normalizedTitle","title","rank","startsWith","searchTerms","split","hasMatchedTerms","every","searchTerm","includes","searchPatterns","patterns","rankedPatterns","map","filter","sort","rank1","rank2"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,aAAP,MAA0B,gBAA1B;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,oBAAT,GAA4C;AAAA,MAAbC,KAAa,uEAAL,EAAK;AAClD;AACAA,EAAAA,KAAK,GAAGF,aAAa,CAAEE,KAAF,CAArB,CAFkD,CAIlD;;AACAA,EAAAA,KAAK,GAAGA,KAAK,CAACC,IAAN,GAAaC,WAAb,EAAR;AAEA,SAAOF,KAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASG,oBAAT,CAA+BC,OAA/B,EAAwCC,WAAxC,EAAsD;AAC5D,QAAMC,qBAAqB,GAAGP,oBAAoB,CAAEM,WAAF,CAAlD;AACA,QAAME,eAAe,GAAGR,oBAAoB,CAAEK,OAAO,CAACI,KAAV,CAA5C;AAEA,MAAIC,IAAI,GAAG,CAAX;;AAEA,MAAKH,qBAAqB,KAAKC,eAA/B,EAAiD;AAChDE,IAAAA,IAAI,IAAI,EAAR;AACA,GAFD,MAEO,IAAKF,eAAe,CAACG,UAAhB,CAA4BJ,qBAA5B,CAAL,EAA2D;AACjEG,IAAAA,IAAI,IAAI,EAAR;AACA,GAFM,MAEA;AACN,UAAME,WAAW,GAAGL,qBAAqB,CAACM,KAAtB,CAA6B,GAA7B,CAApB;AACA,UAAMC,eAAe,GAAGF,WAAW,CAACG,KAAZ,CAAqBC,UAAF,IAC1CR,eAAe,CAACS,QAAhB,CAA0BD,UAA1B,CADuB,CAAxB,CAFM,CAMN;;AACA,QAAKF,eAAL,EAAuB;AACtBJ,MAAAA,IAAI,IAAI,EAAR;AACA;AACD;;AAED,SAAOA,IAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASQ,cAAT,GAA2D;AAAA,MAAlCC,QAAkC,uEAAvB,EAAuB;AAAA,MAAnBb,WAAmB,uEAAL,EAAK;;AACjE,MAAK,CAAEA,WAAP,EAAqB;AACpB,WAAOa,QAAP;AACA;;AAED,QAAMC,cAAc,GAAGD,QAAQ,CAC7BE,GADqB,CACdhB,OAAF,IAAe;AACpB,WAAO,CAAEA,OAAF,EAAWD,oBAAoB,CAAEC,OAAF,EAAWC,WAAX,CAA/B,CAAP;AACA,GAHqB,EAIrBgB,MAJqB,CAIb;AAAA,QAAE,GAAIZ,IAAJ,CAAF;AAAA,WAAkBA,IAAI,GAAG,CAAzB;AAAA,GAJa,CAAvB;AAMAU,EAAAA,cAAc,CAACG,IAAf,CAAqB;AAAA,QAAE,GAAIC,KAAJ,CAAF;AAAA,QAAe,GAAIC,KAAJ,CAAf;AAAA,WAAgCA,KAAK,GAAGD,KAAxC;AAAA,GAArB;AACA,SAAOJ,cAAc,CAACC,GAAf,CAAoB;AAAA,QAAE,CAAEhB,OAAF,CAAF;AAAA,WAAmBA,OAAnB;AAAA,GAApB,CAAP;AACA","sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * Sanitizes the search input string.\n *\n * @param {string} input The search input to normalize.\n *\n * @return {string} The normalized search input.\n */\nexport function normalizeSearchInput( input = '' ) {\n\t// Disregard diacritics.\n\tinput = removeAccents( input );\n\n\t// Trim & Lowercase.\n\tinput = input.trim().toLowerCase();\n\n\treturn input;\n}\n\n/**\n * Get the search rank for a given pattern and a specific search term.\n *\n * @param {Object} pattern Pattern to rank\n * @param {string} searchValue Search term\n * @return {number} A pattern search rank\n */\nexport function getPatternSearchRank( pattern, searchValue ) {\n\tconst normalizedSearchValue = normalizeSearchInput( searchValue );\n\tconst normalizedTitle = normalizeSearchInput( pattern.title );\n\n\tlet rank = 0;\n\n\tif ( normalizedSearchValue === normalizedTitle ) {\n\t\trank += 30;\n\t} else if ( normalizedTitle.startsWith( normalizedSearchValue ) ) {\n\t\trank += 20;\n\t} else {\n\t\tconst searchTerms = normalizedSearchValue.split( ' ' );\n\t\tconst hasMatchedTerms = searchTerms.every( ( searchTerm ) =>\n\t\t\tnormalizedTitle.includes( searchTerm )\n\t\t);\n\n\t\t// Prefer pattern with every search word in the title.\n\t\tif ( hasMatchedTerms ) {\n\t\t\trank += 10;\n\t\t}\n\t}\n\n\treturn rank;\n}\n\n/**\n * Filters an pattern list given a search term.\n *\n * @param {Array} patterns Item list\n * @param {string} searchValue Search input.\n *\n * @return {Array} Filtered pattern list.\n */\nexport function searchPatterns( patterns = [], searchValue = '' ) {\n\tif ( ! searchValue ) {\n\t\treturn patterns;\n\t}\n\n\tconst rankedPatterns = patterns\n\t\t.map( ( pattern ) => {\n\t\t\treturn [ pattern, getPatternSearchRank( pattern, searchValue ) ];\n\t\t} )\n\t\t.filter( ( [ , rank ] ) => rank > 0 );\n\n\trankedPatterns.sort( ( [ , rank1 ], [ , rank2 ] ) => rank2 - rank1 );\n\treturn rankedPatterns.map( ( [ pattern ] ) => pattern );\n}\n"]}