@wordpress/block-library 7.10.0 → 7.11.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 (374) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/button/edit.js +2 -1
  3. package/build/button/edit.js.map +1 -1
  4. package/build/buttons/edit.js +1 -1
  5. package/build/buttons/edit.js.map +1 -1
  6. package/build/columns/edit.native.js +1 -1
  7. package/build/columns/edit.native.js.map +1 -1
  8. package/build/comments/edit/comments-legacy.js +73 -0
  9. package/build/comments/edit/comments-legacy.js.map +1 -0
  10. package/build/comments/{edit.js → edit/index.js} +17 -38
  11. package/build/comments/edit/index.js.map +1 -0
  12. package/build/comments/edit/placeholder.js +117 -0
  13. package/build/comments/edit/placeholder.js.map +1 -0
  14. package/build/comments/edit/template.js +39 -0
  15. package/build/comments/edit/template.js.map +1 -0
  16. package/build/comments/index.js +6 -1
  17. package/build/comments/index.js.map +1 -1
  18. package/build/comments/save.js +12 -4
  19. package/build/comments/save.js.map +1 -1
  20. package/build/cover/transforms.js +3 -2
  21. package/build/cover/transforms.js.map +1 -1
  22. package/build/embed/embed-placeholder.native.js +1 -3
  23. package/build/embed/embed-placeholder.native.js.map +1 -1
  24. package/build/gallery/edit.js +2 -2
  25. package/build/gallery/edit.js.map +1 -1
  26. package/build/gallery/use-get-media.native.js +59 -0
  27. package/build/gallery/use-get-media.native.js.map +1 -0
  28. package/build/group/index.js +1 -0
  29. package/build/group/index.js.map +1 -1
  30. package/build/group/variations.js +1 -1
  31. package/build/group/variations.js.map +1 -1
  32. package/build/image/deprecated.js +77 -9
  33. package/build/image/deprecated.js.map +1 -1
  34. package/build/image/edit.js +3 -1
  35. package/build/image/edit.js.map +1 -1
  36. package/build/image/edit.native.js +18 -8
  37. package/build/image/edit.native.js.map +1 -1
  38. package/build/image/image.js +27 -20
  39. package/build/image/image.js.map +1 -1
  40. package/build/image/index.js +7 -1
  41. package/build/image/index.js.map +1 -1
  42. package/build/image/save.js +8 -2
  43. package/build/image/save.js.map +1 -1
  44. package/build/index.js +1 -3
  45. package/build/index.js.map +1 -1
  46. package/build/index.native.js +3 -13
  47. package/build/index.native.js.map +1 -1
  48. package/build/list/transforms.js +4 -63
  49. package/build/list/transforms.js.map +1 -1
  50. package/build/list/v2/transforms.js +0 -27
  51. package/build/list/v2/transforms.js.map +1 -1
  52. package/build/list-item/edit.js +14 -9
  53. package/build/list-item/edit.js.map +1 -1
  54. package/build/list-item/hooks/index.js +8 -8
  55. package/build/list-item/hooks/index.js.map +1 -1
  56. package/build/list-item/hooks/use-merge.js +174 -0
  57. package/build/list-item/hooks/use-merge.js.map +1 -0
  58. package/build/list-item/hooks/use-outdent-list-item.js +86 -50
  59. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  60. package/build/list-item/utils.js +125 -1
  61. package/build/list-item/utils.js.map +1 -1
  62. package/build/media-text/deprecated.js +134 -7
  63. package/build/media-text/deprecated.js.map +1 -1
  64. package/build/media-text/edit.js +2 -2
  65. package/build/media-text/edit.js.map +1 -1
  66. package/build/media-text/save.js +13 -0
  67. package/build/media-text/save.js.map +1 -1
  68. package/build/more/save.js +1 -7
  69. package/build/more/save.js.map +1 -1
  70. package/build/navigation-link/edit.js +5 -4
  71. package/build/navigation-link/edit.js.map +1 -1
  72. package/build/navigation-submenu/edit.js +2 -1
  73. package/build/navigation-submenu/edit.js.map +1 -1
  74. package/build/page-list/edit.js +8 -1
  75. package/build/page-list/edit.js.map +1 -1
  76. package/build/paragraph/edit.js +7 -11
  77. package/build/paragraph/edit.js.map +1 -1
  78. package/build/post-comments-form/edit.js +4 -45
  79. package/build/post-comments-form/edit.js.map +1 -1
  80. package/build/post-comments-form/form.js +47 -3
  81. package/build/post-comments-form/form.js.map +1 -1
  82. package/build/post-terms/edit.js +3 -2
  83. package/build/post-terms/edit.js.map +1 -1
  84. package/build/query-no-results/edit.js +1 -1
  85. package/build/query-no-results/edit.js.map +1 -1
  86. package/build/query-pagination-next/edit.js +2 -1
  87. package/build/query-pagination-next/edit.js.map +1 -1
  88. package/build/query-pagination-previous/edit.js +2 -1
  89. package/build/query-pagination-previous/edit.js.map +1 -1
  90. package/build/quote/deprecated.js +168 -36
  91. package/build/quote/deprecated.js.map +1 -1
  92. package/build/quote/edit.js +76 -39
  93. package/build/quote/edit.js.map +1 -1
  94. package/build/quote/index.js +9 -45
  95. package/build/quote/index.js.map +1 -1
  96. package/build/quote/save.js +1 -5
  97. package/build/quote/save.js.map +1 -1
  98. package/build/quote/transforms.js +110 -158
  99. package/build/quote/transforms.js.map +1 -1
  100. package/build/social-link/icons/index.js +13 -0
  101. package/build/social-link/icons/index.js.map +1 -1
  102. package/build/social-link/icons/whatsapp.js +25 -0
  103. package/build/social-link/icons/whatsapp.js.map +1 -0
  104. package/build/social-link/variations.js +7 -0
  105. package/build/social-link/variations.js.map +1 -1
  106. package/build/template-part/edit/index.js +17 -8
  107. package/build/template-part/edit/index.js.map +1 -1
  108. package/build/template-part/edit/selection-modal.js +33 -13
  109. package/build/template-part/edit/selection-modal.js.map +1 -1
  110. package/build/template-part/edit/utils/search.js +94 -0
  111. package/build/template-part/edit/utils/search.js.map +1 -0
  112. package/build-module/button/edit.js +2 -1
  113. package/build-module/button/edit.js.map +1 -1
  114. package/build-module/buttons/edit.js +2 -2
  115. package/build-module/buttons/edit.js.map +1 -1
  116. package/build-module/columns/edit.native.js +2 -2
  117. package/build-module/columns/edit.native.js.map +1 -1
  118. package/build-module/comments/edit/comments-legacy.js +59 -0
  119. package/build-module/comments/edit/comments-legacy.js.map +1 -0
  120. package/build-module/comments/edit/index.js +37 -0
  121. package/build-module/comments/edit/index.js.map +1 -0
  122. package/build-module/comments/edit/placeholder.js +102 -0
  123. package/build-module/comments/edit/placeholder.js.map +1 -0
  124. package/build-module/comments/edit/template.js +32 -0
  125. package/build-module/comments/edit/template.js.map +1 -0
  126. package/build-module/comments/index.js +6 -1
  127. package/build-module/comments/index.js.map +1 -1
  128. package/build-module/comments/save.js +9 -4
  129. package/build-module/comments/save.js.map +1 -1
  130. package/build-module/cover/transforms.js +3 -2
  131. package/build-module/cover/transforms.js.map +1 -1
  132. package/build-module/embed/embed-placeholder.native.js +1 -2
  133. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  134. package/build-module/gallery/edit.js +2 -2
  135. package/build-module/gallery/edit.js.map +1 -1
  136. package/build-module/gallery/use-get-media.native.js +50 -0
  137. package/build-module/gallery/use-get-media.native.js.map +1 -0
  138. package/build-module/group/index.js +1 -0
  139. package/build-module/group/index.js.map +1 -1
  140. package/build-module/group/variations.js +2 -2
  141. package/build-module/group/variations.js.map +1 -1
  142. package/build-module/image/deprecated.js +77 -9
  143. package/build-module/image/deprecated.js.map +1 -1
  144. package/build-module/image/edit.js +5 -3
  145. package/build-module/image/edit.js.map +1 -1
  146. package/build-module/image/edit.native.js +18 -8
  147. package/build-module/image/edit.native.js.map +1 -1
  148. package/build-module/image/image.js +29 -22
  149. package/build-module/image/image.js.map +1 -1
  150. package/build-module/image/index.js +7 -1
  151. package/build-module/image/index.js.map +1 -1
  152. package/build-module/image/save.js +9 -3
  153. package/build-module/image/save.js.map +1 -1
  154. package/build-module/index.js +1 -2
  155. package/build-module/index.js.map +1 -1
  156. package/build-module/index.native.js +3 -13
  157. package/build-module/index.native.js.map +1 -1
  158. package/build-module/list/transforms.js +4 -63
  159. package/build-module/list/transforms.js.map +1 -1
  160. package/build-module/list/v2/transforms.js +2 -29
  161. package/build-module/list/v2/transforms.js.map +1 -1
  162. package/build-module/list-item/edit.js +14 -10
  163. package/build-module/list-item/edit.js.map +1 -1
  164. package/build-module/list-item/hooks/index.js +1 -1
  165. package/build-module/list-item/hooks/index.js.map +1 -1
  166. package/build-module/list-item/hooks/use-merge.js +160 -0
  167. package/build-module/list-item/hooks/use-merge.js.map +1 -0
  168. package/build-module/list-item/hooks/use-outdent-list-item.js +82 -46
  169. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  170. package/build-module/list-item/utils.js +123 -2
  171. package/build-module/list-item/utils.js.map +1 -1
  172. package/build-module/media-text/deprecated.js +134 -8
  173. package/build-module/media-text/deprecated.js.map +1 -1
  174. package/build-module/media-text/edit.js +2 -2
  175. package/build-module/media-text/edit.js.map +1 -1
  176. package/build-module/media-text/save.js +13 -0
  177. package/build-module/media-text/save.js.map +1 -1
  178. package/build-module/more/save.js +1 -6
  179. package/build-module/more/save.js.map +1 -1
  180. package/build-module/navigation-link/edit.js +5 -4
  181. package/build-module/navigation-link/edit.js.map +1 -1
  182. package/build-module/navigation-submenu/edit.js +2 -1
  183. package/build-module/navigation-submenu/edit.js.map +1 -1
  184. package/build-module/page-list/edit.js +8 -1
  185. package/build-module/page-list/edit.js.map +1 -1
  186. package/build-module/paragraph/edit.js +8 -12
  187. package/build-module/paragraph/edit.js.map +1 -1
  188. package/build-module/post-comments-form/edit.js +5 -42
  189. package/build-module/post-comments-form/edit.js.map +1 -1
  190. package/build-module/post-comments-form/form.js +46 -5
  191. package/build-module/post-comments-form/form.js.map +1 -1
  192. package/build-module/post-terms/edit.js +3 -2
  193. package/build-module/post-terms/edit.js.map +1 -1
  194. package/build-module/query-no-results/edit.js +2 -2
  195. package/build-module/query-no-results/edit.js.map +1 -1
  196. package/build-module/query-pagination-next/edit.js +2 -1
  197. package/build-module/query-pagination-next/edit.js.map +1 -1
  198. package/build-module/query-pagination-previous/edit.js +2 -1
  199. package/build-module/query-pagination-previous/edit.js.map +1 -1
  200. package/build-module/quote/deprecated.js +162 -36
  201. package/build-module/quote/deprecated.js.map +1 -1
  202. package/build-module/quote/edit.js +77 -43
  203. package/build-module/quote/edit.js.map +1 -1
  204. package/build-module/quote/index.js +9 -39
  205. package/build-module/quote/index.js.map +1 -1
  206. package/build-module/quote/save.js +4 -8
  207. package/build-module/quote/save.js.map +1 -1
  208. package/build-module/quote/transforms.js +111 -158
  209. package/build-module/quote/transforms.js.map +1 -1
  210. package/build-module/social-link/icons/index.js +1 -0
  211. package/build-module/social-link/icons/index.js.map +1 -1
  212. package/build-module/social-link/icons/whatsapp.js +15 -0
  213. package/build-module/social-link/icons/whatsapp.js.map +1 -0
  214. package/build-module/social-link/variations.js +8 -1
  215. package/build-module/social-link/variations.js.map +1 -1
  216. package/build-module/template-part/edit/index.js +20 -11
  217. package/build-module/template-part/edit/index.js.map +1 -1
  218. package/build-module/template-part/edit/selection-modal.js +33 -15
  219. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  220. package/build-module/template-part/edit/utils/search.js +84 -0
  221. package/build-module/template-part/edit/utils/search.js.map +1 -0
  222. package/build-style/button/style-rtl.css +1 -1
  223. package/build-style/button/style.css +1 -1
  224. package/build-style/comments/editor-rtl.css +122 -0
  225. package/build-style/comments/editor.css +122 -0
  226. package/build-style/{post-comments → comments}/style-rtl.css +1 -0
  227. package/build-style/{post-comments → comments}/style.css +1 -0
  228. package/build-style/common-rtl.css +7 -0
  229. package/build-style/common.css +7 -0
  230. package/build-style/cover/style-rtl.css +2 -2
  231. package/build-style/cover/style.css +2 -2
  232. package/build-style/{post-comments/editor.css → editor-elements-rtl.css} +8 -2
  233. package/build-style/{post-comments/editor-rtl.css → editor-elements.css} +8 -2
  234. package/build-style/editor-rtl.css +151 -10
  235. package/build-style/editor.css +151 -10
  236. package/build-style/gallery/style-rtl.css +7 -2
  237. package/build-style/gallery/style.css +7 -2
  238. package/build-style/image/editor-rtl.css +4 -3
  239. package/build-style/image/editor.css +4 -3
  240. package/build-style/image/style-rtl.css +33 -3
  241. package/build-style/image/style.css +33 -3
  242. package/build-style/post-comments-form/style-rtl.css +0 -1
  243. package/build-style/post-comments-form/style.css +0 -1
  244. package/build-style/social-link/editor-rtl.css +1 -0
  245. package/build-style/social-link/editor.css +1 -0
  246. package/build-style/social-links/style-rtl.css +8 -0
  247. package/build-style/social-links/style.css +8 -0
  248. package/build-style/style-rtl.css +170 -127
  249. package/build-style/style.css +170 -127
  250. package/build-style/template-part/editor-rtl.css +14 -3
  251. package/build-style/template-part/editor.css +14 -3
  252. package/package.json +28 -28
  253. package/src/button/edit.js +1 -0
  254. package/src/button/style.scss +3 -1
  255. package/src/buttons/edit.js +1 -5
  256. package/src/columns/edit.native.js +2 -2
  257. package/src/comments/block.json +6 -1
  258. package/src/comments/edit/comments-legacy.js +71 -0
  259. package/src/comments/edit/index.js +35 -0
  260. package/src/comments/edit/placeholder.js +124 -0
  261. package/src/comments/{edit.js → edit/template.js} +1 -28
  262. package/src/comments/editor.scss +9 -0
  263. package/src/comments/index.php +219 -0
  264. package/src/comments/save.js +8 -7
  265. package/src/{post-comments → comments}/style.scss +7 -0
  266. package/src/common.scss +2 -0
  267. package/src/cover/style.scss +2 -2
  268. package/src/cover/transforms.js +2 -2
  269. package/src/editor-elements.scss +10 -0
  270. package/src/editor.scss +2 -1
  271. package/src/embed/embed-placeholder.native.js +2 -3
  272. package/src/gallery/edit.js +4 -2
  273. package/src/gallery/style.scss +10 -1
  274. package/src/gallery/use-get-media.native.js +44 -0
  275. package/src/group/block.json +1 -0
  276. package/src/group/variations.js +2 -2
  277. package/src/image/block.json +7 -1
  278. package/src/image/deprecated.js +86 -0
  279. package/src/image/edit.js +6 -1
  280. package/src/image/edit.native.js +18 -7
  281. package/src/image/editor.scss +9 -4
  282. package/src/image/image.js +26 -16
  283. package/src/image/save.js +10 -1
  284. package/src/image/style.scss +39 -3
  285. package/src/index.js +0 -2
  286. package/src/index.native.js +2 -11
  287. package/src/list/transforms.js +0 -47
  288. package/src/list/v2/transforms.js +2 -40
  289. package/src/list-item/edit.js +10 -12
  290. package/src/list-item/hooks/index.js +1 -1
  291. package/src/list-item/hooks/use-merge.js +141 -0
  292. package/src/list-item/hooks/use-outdent-list-item.js +72 -74
  293. package/src/list-item/utils.js +27 -3
  294. package/src/media-text/deprecated.js +148 -1
  295. package/src/media-text/edit.js +2 -1
  296. package/src/media-text/save.js +18 -0
  297. package/src/more/save.js +3 -6
  298. package/src/navigation-link/edit.js +4 -3
  299. package/src/navigation-submenu/edit.js +1 -0
  300. package/src/page-list/edit.js +9 -0
  301. package/src/paragraph/edit.js +8 -14
  302. package/src/post-comments-form/edit.js +2 -71
  303. package/src/post-comments-form/form.js +80 -5
  304. package/src/post-comments-form/index.php +1 -1
  305. package/src/post-comments-form/style.scss +0 -1
  306. package/src/post-terms/edit.js +3 -2
  307. package/src/query-no-results/edit.js +2 -5
  308. package/src/query-pagination-next/edit.js +1 -0
  309. package/src/query-pagination-previous/edit.js +1 -0
  310. package/src/quote/deprecated.js +213 -99
  311. package/src/quote/edit.js +77 -52
  312. package/src/quote/index.js +10 -33
  313. package/src/quote/save.js +5 -5
  314. package/src/quote/{v2/test → test}/migrate.js +2 -7
  315. package/src/quote/transforms.js +117 -147
  316. package/src/social-link/editor.scss +3 -0
  317. package/src/social-link/icons/index.js +1 -0
  318. package/src/social-link/icons/whatsapp.js +10 -0
  319. package/src/social-link/index.php +4 -0
  320. package/src/social-link/socials-with-bg.scss +5 -0
  321. package/src/social-link/socials-without-bg.scss +5 -0
  322. package/src/social-link/variations.js +7 -0
  323. package/src/style.scss +1 -2
  324. package/src/template-part/edit/index.js +37 -24
  325. package/src/template-part/edit/selection-modal.js +68 -40
  326. package/src/template-part/edit/utils/search.js +76 -0
  327. package/src/template-part/editor.scss +21 -9
  328. package/src/template-part/index.php +56 -2
  329. package/build/comments/edit.js.map +0 -1
  330. package/build/list-item/hooks/use-backspace.js +0 -59
  331. package/build/list-item/hooks/use-backspace.js.map +0 -1
  332. package/build/post-comments/edit.js +0 -184
  333. package/build/post-comments/edit.js.map +0 -1
  334. package/build/post-comments/index.js +0 -72
  335. package/build/post-comments/index.js.map +0 -1
  336. package/build/quote/v2/deprecated.js +0 -133
  337. package/build/quote/v2/deprecated.js.map +0 -1
  338. package/build/quote/v2/edit.js +0 -139
  339. package/build/quote/v2/edit.js.map +0 -1
  340. package/build/quote/v2/index.js +0 -49
  341. package/build/quote/v2/index.js.map +0 -1
  342. package/build/quote/v2/save.js +0 -43
  343. package/build/quote/v2/save.js.map +0 -1
  344. package/build/quote/v2/transforms.js +0 -156
  345. package/build/quote/v2/transforms.js.map +0 -1
  346. package/build-module/comments/edit.js +0 -59
  347. package/build-module/comments/edit.js.map +0 -1
  348. package/build-module/list-item/hooks/use-backspace.js +0 -44
  349. package/build-module/list-item/hooks/use-backspace.js.map +0 -1
  350. package/build-module/post-comments/edit.js +0 -171
  351. package/build-module/post-comments/edit.js.map +0 -1
  352. package/build-module/post-comments/index.js +0 -59
  353. package/build-module/post-comments/index.js.map +0 -1
  354. package/build-module/quote/v2/deprecated.js +0 -116
  355. package/build-module/quote/v2/deprecated.js.map +0 -1
  356. package/build-module/quote/v2/edit.js +0 -122
  357. package/build-module/quote/v2/edit.js.map +0 -1
  358. package/build-module/quote/v2/index.js +0 -33
  359. package/build-module/quote/v2/index.js.map +0 -1
  360. package/build-module/quote/v2/save.js +0 -30
  361. package/build-module/quote/v2/save.js.map +0 -1
  362. package/build-module/quote/v2/transforms.js +0 -147
  363. package/build-module/quote/v2/transforms.js.map +0 -1
  364. package/src/list-item/hooks/use-backspace.js +0 -51
  365. package/src/post-comments/block.json +0 -45
  366. package/src/post-comments/edit.js +0 -247
  367. package/src/post-comments/editor.scss +0 -3
  368. package/src/post-comments/index.js +0 -18
  369. package/src/post-comments/index.php +0 -87
  370. package/src/quote/v2/deprecated.js +0 -107
  371. package/src/quote/v2/edit.js +0 -139
  372. package/src/quote/v2/index.js +0 -36
  373. package/src/quote/v2/save.js +0 -26
  374. package/src/quote/v2/transforms.js +0 -155
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/social-link/variations.js"],"names":["AmazonIcon","BandcampIcon","BehanceIcon","ChainIcon","CodepenIcon","DeviantArtIcon","DribbbleIcon","DropboxIcon","EtsyIcon","FacebookIcon","FeedIcon","FivehundredpxIcon","FlickrIcon","FoursquareIcon","GoodreadsIcon","GoogleIcon","GitHubIcon","InstagramIcon","LastfmIcon","LinkedInIcon","MailIcon","MastodonIcon","MeetupIcon","MediumIcon","PatreonIcon","PinterestIcon","PocketIcon","RedditIcon","SkypeIcon","SnapchatIcon","SoundCloudIcon","SpotifyIcon","TelegramIcon","TiktokIcon","TumblrIcon","TwitchIcon","TwitterIcon","VimeoIcon","VkIcon","WordPressIcon","YelpIcon","YouTubeIcon","variations","isDefault","name","attributes","service","title","icon","keywords","forEach","variation","isActive","blockAttributes","variationAttributes"],"mappings":"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","sourcesContent":["/**\n * Internal dependencies\n */\nimport {\n\tAmazonIcon,\n\tBandcampIcon,\n\tBehanceIcon,\n\tChainIcon,\n\tCodepenIcon,\n\tDeviantArtIcon,\n\tDribbbleIcon,\n\tDropboxIcon,\n\tEtsyIcon,\n\tFacebookIcon,\n\tFeedIcon,\n\tFivehundredpxIcon,\n\tFlickrIcon,\n\tFoursquareIcon,\n\tGoodreadsIcon,\n\tGoogleIcon,\n\tGitHubIcon,\n\tInstagramIcon,\n\tLastfmIcon,\n\tLinkedInIcon,\n\tMailIcon,\n\tMastodonIcon,\n\tMeetupIcon,\n\tMediumIcon,\n\tPatreonIcon,\n\tPinterestIcon,\n\tPocketIcon,\n\tRedditIcon,\n\tSkypeIcon,\n\tSnapchatIcon,\n\tSoundCloudIcon,\n\tSpotifyIcon,\n\tTelegramIcon,\n\tTiktokIcon,\n\tTumblrIcon,\n\tTwitchIcon,\n\tTwitterIcon,\n\tVimeoIcon,\n\tVkIcon,\n\tWordPressIcon,\n\tYelpIcon,\n\tYouTubeIcon,\n} from './icons';\n\nconst variations = [\n\t{\n\t\tisDefault: true,\n\t\tname: 'wordpress',\n\t\tattributes: { service: 'wordpress' },\n\t\ttitle: 'WordPress',\n\t\ticon: WordPressIcon,\n\t},\n\n\t{\n\t\tname: 'fivehundredpx',\n\t\tattributes: { service: 'fivehundredpx' },\n\t\ttitle: '500px',\n\t\ticon: FivehundredpxIcon,\n\t},\n\t{\n\t\tname: 'amazon',\n\t\tattributes: { service: 'amazon' },\n\t\ttitle: 'Amazon',\n\t\ticon: AmazonIcon,\n\t},\n\t{\n\t\tname: 'bandcamp',\n\t\tattributes: { service: 'bandcamp' },\n\t\ttitle: 'Bandcamp',\n\t\ticon: BandcampIcon,\n\t},\n\t{\n\t\tname: 'behance',\n\t\tattributes: { service: 'behance' },\n\t\ttitle: 'Behance',\n\t\ticon: BehanceIcon,\n\t},\n\t{\n\t\tname: 'chain',\n\t\tattributes: { service: 'chain' },\n\t\ttitle: 'Link',\n\t\ticon: ChainIcon,\n\t},\n\t{\n\t\tname: 'codepen',\n\t\tattributes: { service: 'codepen' },\n\t\ttitle: 'CodePen',\n\t\ticon: CodepenIcon,\n\t},\n\t{\n\t\tname: 'deviantart',\n\t\tattributes: { service: 'deviantart' },\n\t\ttitle: 'DeviantArt',\n\t\ticon: DeviantArtIcon,\n\t},\n\t{\n\t\tname: 'dribbble',\n\t\tattributes: { service: 'dribbble' },\n\t\ttitle: 'Dribbble',\n\t\ticon: DribbbleIcon,\n\t},\n\t{\n\t\tname: 'dropbox',\n\t\tattributes: { service: 'dropbox' },\n\t\ttitle: 'Dropbox',\n\t\ticon: DropboxIcon,\n\t},\n\t{\n\t\tname: 'etsy',\n\t\tattributes: { service: 'etsy' },\n\t\ttitle: 'Etsy',\n\t\ticon: EtsyIcon,\n\t},\n\t{\n\t\tname: 'facebook',\n\t\tattributes: { service: 'facebook' },\n\t\ttitle: 'Facebook',\n\t\ticon: FacebookIcon,\n\t},\n\t{\n\t\tname: 'feed',\n\t\tattributes: { service: 'feed' },\n\t\ttitle: 'RSS Feed',\n\t\ticon: FeedIcon,\n\t},\n\t{\n\t\tname: 'flickr',\n\t\tattributes: { service: 'flickr' },\n\t\ttitle: 'Flickr',\n\t\ticon: FlickrIcon,\n\t},\n\t{\n\t\tname: 'foursquare',\n\t\tattributes: { service: 'foursquare' },\n\t\ttitle: 'Foursquare',\n\t\ticon: FoursquareIcon,\n\t},\n\t{\n\t\tname: 'goodreads',\n\t\tattributes: { service: 'goodreads' },\n\t\ttitle: 'Goodreads',\n\t\ticon: GoodreadsIcon,\n\t},\n\t{\n\t\tname: 'google',\n\t\tattributes: { service: 'google' },\n\t\ttitle: 'Google',\n\t\ticon: GoogleIcon,\n\t},\n\t{\n\t\tname: 'github',\n\t\tattributes: { service: 'github' },\n\t\ttitle: 'GitHub',\n\t\ticon: GitHubIcon,\n\t},\n\t{\n\t\tname: 'instagram',\n\t\tattributes: { service: 'instagram' },\n\t\ttitle: 'Instagram',\n\t\ticon: InstagramIcon,\n\t},\n\t{\n\t\tname: 'lastfm',\n\t\tattributes: { service: 'lastfm' },\n\t\ttitle: 'Last.fm',\n\t\ticon: LastfmIcon,\n\t},\n\t{\n\t\tname: 'linkedin',\n\t\tattributes: { service: 'linkedin' },\n\t\ttitle: 'LinkedIn',\n\t\ticon: LinkedInIcon,\n\t},\n\t{\n\t\tname: 'mail',\n\t\tattributes: { service: 'mail' },\n\t\ttitle: 'Mail',\n\t\tkeywords: [ 'email', 'e-mail' ],\n\t\ticon: MailIcon,\n\t},\n\t{\n\t\tname: 'mastodon',\n\t\tattributes: { service: 'mastodon' },\n\t\ttitle: 'Mastodon',\n\t\ticon: MastodonIcon,\n\t},\n\t{\n\t\tname: 'meetup',\n\t\tattributes: { service: 'meetup' },\n\t\ttitle: 'Meetup',\n\t\ticon: MeetupIcon,\n\t},\n\t{\n\t\tname: 'medium',\n\t\tattributes: { service: 'medium' },\n\t\ttitle: 'Medium',\n\t\ticon: MediumIcon,\n\t},\n\t{\n\t\tname: 'patreon',\n\t\tattributes: { service: 'patreon' },\n\t\ttitle: 'Patreon',\n\t\ticon: PatreonIcon,\n\t},\n\t{\n\t\tname: 'pinterest',\n\t\tattributes: { service: 'pinterest' },\n\t\ttitle: 'Pinterest',\n\t\ticon: PinterestIcon,\n\t},\n\t{\n\t\tname: 'pocket',\n\t\tattributes: { service: 'pocket' },\n\t\ttitle: 'Pocket',\n\t\ticon: PocketIcon,\n\t},\n\t{\n\t\tname: 'reddit',\n\t\tattributes: { service: 'reddit' },\n\t\ttitle: 'Reddit',\n\t\ticon: RedditIcon,\n\t},\n\t{\n\t\tname: 'skype',\n\t\tattributes: { service: 'skype' },\n\t\ttitle: 'Skype',\n\t\ticon: SkypeIcon,\n\t},\n\t{\n\t\tname: 'snapchat',\n\t\tattributes: { service: 'snapchat' },\n\t\ttitle: 'Snapchat',\n\t\ticon: SnapchatIcon,\n\t},\n\t{\n\t\tname: 'soundcloud',\n\t\tattributes: { service: 'soundcloud' },\n\t\ttitle: 'SoundCloud',\n\t\ticon: SoundCloudIcon,\n\t},\n\t{\n\t\tname: 'spotify',\n\t\tattributes: { service: 'spotify' },\n\t\ttitle: 'Spotify',\n\t\ticon: SpotifyIcon,\n\t},\n\t{\n\t\tname: 'telegram',\n\t\tattributes: { service: 'telegram' },\n\t\ttitle: 'Telegram',\n\t\ticon: TelegramIcon,\n\t},\n\t{\n\t\tname: 'tiktok',\n\t\tattributes: { service: 'tiktok' },\n\t\ttitle: 'TikTok',\n\t\ticon: TiktokIcon,\n\t},\n\t{\n\t\tname: 'tumblr',\n\t\tattributes: { service: 'tumblr' },\n\t\ttitle: 'Tumblr',\n\t\ticon: TumblrIcon,\n\t},\n\t{\n\t\tname: 'twitch',\n\t\tattributes: { service: 'twitch' },\n\t\ttitle: 'Twitch',\n\t\ticon: TwitchIcon,\n\t},\n\t{\n\t\tname: 'twitter',\n\t\tattributes: { service: 'twitter' },\n\t\ttitle: 'Twitter',\n\t\ticon: TwitterIcon,\n\t},\n\t{\n\t\tname: 'vimeo',\n\t\tattributes: { service: 'vimeo' },\n\t\ttitle: 'Vimeo',\n\t\ticon: VimeoIcon,\n\t},\n\t{\n\t\tname: 'vk',\n\t\tattributes: { service: 'vk' },\n\t\ttitle: 'VK',\n\t\ticon: VkIcon,\n\t},\n\t{\n\t\tname: 'yelp',\n\t\tattributes: { service: 'yelp' },\n\t\ttitle: 'Yelp',\n\t\ticon: YelpIcon,\n\t},\n\t{\n\t\tname: 'youtube',\n\t\tattributes: { service: 'youtube' },\n\t\ttitle: 'YouTube',\n\t\ticon: YouTubeIcon,\n\t},\n];\n\n/**\n * Add `isActive` function to all `social link` variations, if not defined.\n * `isActive` function is used to find a variation match from a created\n * Block by providing its attributes.\n */\nvariations.forEach( ( variation ) => {\n\tif ( variation.isActive ) return;\n\tvariation.isActive = ( blockAttributes, variationAttributes ) =>\n\t\tblockAttributes.service === variationAttributes.service;\n} );\n\nexport default variations;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/social-link/variations.js"],"names":["AmazonIcon","BandcampIcon","BehanceIcon","ChainIcon","CodepenIcon","DeviantArtIcon","DribbbleIcon","DropboxIcon","EtsyIcon","FacebookIcon","FeedIcon","FivehundredpxIcon","FlickrIcon","FoursquareIcon","GoodreadsIcon","GoogleIcon","GitHubIcon","InstagramIcon","LastfmIcon","LinkedInIcon","MailIcon","MastodonIcon","MeetupIcon","MediumIcon","PatreonIcon","PinterestIcon","PocketIcon","RedditIcon","SkypeIcon","SnapchatIcon","SoundCloudIcon","SpotifyIcon","TelegramIcon","TiktokIcon","TumblrIcon","TwitchIcon","TwitterIcon","VimeoIcon","VkIcon","WhatsAppIcon","WordPressIcon","YelpIcon","YouTubeIcon","variations","isDefault","name","attributes","service","title","icon","keywords","forEach","variation","isActive","blockAttributes","variationAttributes"],"mappings":"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","sourcesContent":["/**\n * Internal dependencies\n */\nimport {\n\tAmazonIcon,\n\tBandcampIcon,\n\tBehanceIcon,\n\tChainIcon,\n\tCodepenIcon,\n\tDeviantArtIcon,\n\tDribbbleIcon,\n\tDropboxIcon,\n\tEtsyIcon,\n\tFacebookIcon,\n\tFeedIcon,\n\tFivehundredpxIcon,\n\tFlickrIcon,\n\tFoursquareIcon,\n\tGoodreadsIcon,\n\tGoogleIcon,\n\tGitHubIcon,\n\tInstagramIcon,\n\tLastfmIcon,\n\tLinkedInIcon,\n\tMailIcon,\n\tMastodonIcon,\n\tMeetupIcon,\n\tMediumIcon,\n\tPatreonIcon,\n\tPinterestIcon,\n\tPocketIcon,\n\tRedditIcon,\n\tSkypeIcon,\n\tSnapchatIcon,\n\tSoundCloudIcon,\n\tSpotifyIcon,\n\tTelegramIcon,\n\tTiktokIcon,\n\tTumblrIcon,\n\tTwitchIcon,\n\tTwitterIcon,\n\tVimeoIcon,\n\tVkIcon,\n\tWhatsAppIcon,\n\tWordPressIcon,\n\tYelpIcon,\n\tYouTubeIcon,\n} from './icons';\n\nconst variations = [\n\t{\n\t\tisDefault: true,\n\t\tname: 'wordpress',\n\t\tattributes: { service: 'wordpress' },\n\t\ttitle: 'WordPress',\n\t\ticon: WordPressIcon,\n\t},\n\n\t{\n\t\tname: 'fivehundredpx',\n\t\tattributes: { service: 'fivehundredpx' },\n\t\ttitle: '500px',\n\t\ticon: FivehundredpxIcon,\n\t},\n\t{\n\t\tname: 'amazon',\n\t\tattributes: { service: 'amazon' },\n\t\ttitle: 'Amazon',\n\t\ticon: AmazonIcon,\n\t},\n\t{\n\t\tname: 'bandcamp',\n\t\tattributes: { service: 'bandcamp' },\n\t\ttitle: 'Bandcamp',\n\t\ticon: BandcampIcon,\n\t},\n\t{\n\t\tname: 'behance',\n\t\tattributes: { service: 'behance' },\n\t\ttitle: 'Behance',\n\t\ticon: BehanceIcon,\n\t},\n\t{\n\t\tname: 'chain',\n\t\tattributes: { service: 'chain' },\n\t\ttitle: 'Link',\n\t\ticon: ChainIcon,\n\t},\n\t{\n\t\tname: 'codepen',\n\t\tattributes: { service: 'codepen' },\n\t\ttitle: 'CodePen',\n\t\ticon: CodepenIcon,\n\t},\n\t{\n\t\tname: 'deviantart',\n\t\tattributes: { service: 'deviantart' },\n\t\ttitle: 'DeviantArt',\n\t\ticon: DeviantArtIcon,\n\t},\n\t{\n\t\tname: 'dribbble',\n\t\tattributes: { service: 'dribbble' },\n\t\ttitle: 'Dribbble',\n\t\ticon: DribbbleIcon,\n\t},\n\t{\n\t\tname: 'dropbox',\n\t\tattributes: { service: 'dropbox' },\n\t\ttitle: 'Dropbox',\n\t\ticon: DropboxIcon,\n\t},\n\t{\n\t\tname: 'etsy',\n\t\tattributes: { service: 'etsy' },\n\t\ttitle: 'Etsy',\n\t\ticon: EtsyIcon,\n\t},\n\t{\n\t\tname: 'facebook',\n\t\tattributes: { service: 'facebook' },\n\t\ttitle: 'Facebook',\n\t\ticon: FacebookIcon,\n\t},\n\t{\n\t\tname: 'feed',\n\t\tattributes: { service: 'feed' },\n\t\ttitle: 'RSS Feed',\n\t\ticon: FeedIcon,\n\t},\n\t{\n\t\tname: 'flickr',\n\t\tattributes: { service: 'flickr' },\n\t\ttitle: 'Flickr',\n\t\ticon: FlickrIcon,\n\t},\n\t{\n\t\tname: 'foursquare',\n\t\tattributes: { service: 'foursquare' },\n\t\ttitle: 'Foursquare',\n\t\ticon: FoursquareIcon,\n\t},\n\t{\n\t\tname: 'goodreads',\n\t\tattributes: { service: 'goodreads' },\n\t\ttitle: 'Goodreads',\n\t\ticon: GoodreadsIcon,\n\t},\n\t{\n\t\tname: 'google',\n\t\tattributes: { service: 'google' },\n\t\ttitle: 'Google',\n\t\ticon: GoogleIcon,\n\t},\n\t{\n\t\tname: 'github',\n\t\tattributes: { service: 'github' },\n\t\ttitle: 'GitHub',\n\t\ticon: GitHubIcon,\n\t},\n\t{\n\t\tname: 'instagram',\n\t\tattributes: { service: 'instagram' },\n\t\ttitle: 'Instagram',\n\t\ticon: InstagramIcon,\n\t},\n\t{\n\t\tname: 'lastfm',\n\t\tattributes: { service: 'lastfm' },\n\t\ttitle: 'Last.fm',\n\t\ticon: LastfmIcon,\n\t},\n\t{\n\t\tname: 'linkedin',\n\t\tattributes: { service: 'linkedin' },\n\t\ttitle: 'LinkedIn',\n\t\ticon: LinkedInIcon,\n\t},\n\t{\n\t\tname: 'mail',\n\t\tattributes: { service: 'mail' },\n\t\ttitle: 'Mail',\n\t\tkeywords: [ 'email', 'e-mail' ],\n\t\ticon: MailIcon,\n\t},\n\t{\n\t\tname: 'mastodon',\n\t\tattributes: { service: 'mastodon' },\n\t\ttitle: 'Mastodon',\n\t\ticon: MastodonIcon,\n\t},\n\t{\n\t\tname: 'meetup',\n\t\tattributes: { service: 'meetup' },\n\t\ttitle: 'Meetup',\n\t\ticon: MeetupIcon,\n\t},\n\t{\n\t\tname: 'medium',\n\t\tattributes: { service: 'medium' },\n\t\ttitle: 'Medium',\n\t\ticon: MediumIcon,\n\t},\n\t{\n\t\tname: 'patreon',\n\t\tattributes: { service: 'patreon' },\n\t\ttitle: 'Patreon',\n\t\ticon: PatreonIcon,\n\t},\n\t{\n\t\tname: 'pinterest',\n\t\tattributes: { service: 'pinterest' },\n\t\ttitle: 'Pinterest',\n\t\ticon: PinterestIcon,\n\t},\n\t{\n\t\tname: 'pocket',\n\t\tattributes: { service: 'pocket' },\n\t\ttitle: 'Pocket',\n\t\ticon: PocketIcon,\n\t},\n\t{\n\t\tname: 'reddit',\n\t\tattributes: { service: 'reddit' },\n\t\ttitle: 'Reddit',\n\t\ticon: RedditIcon,\n\t},\n\t{\n\t\tname: 'skype',\n\t\tattributes: { service: 'skype' },\n\t\ttitle: 'Skype',\n\t\ticon: SkypeIcon,\n\t},\n\t{\n\t\tname: 'snapchat',\n\t\tattributes: { service: 'snapchat' },\n\t\ttitle: 'Snapchat',\n\t\ticon: SnapchatIcon,\n\t},\n\t{\n\t\tname: 'soundcloud',\n\t\tattributes: { service: 'soundcloud' },\n\t\ttitle: 'SoundCloud',\n\t\ticon: SoundCloudIcon,\n\t},\n\t{\n\t\tname: 'spotify',\n\t\tattributes: { service: 'spotify' },\n\t\ttitle: 'Spotify',\n\t\ticon: SpotifyIcon,\n\t},\n\t{\n\t\tname: 'telegram',\n\t\tattributes: { service: 'telegram' },\n\t\ttitle: 'Telegram',\n\t\ticon: TelegramIcon,\n\t},\n\t{\n\t\tname: 'tiktok',\n\t\tattributes: { service: 'tiktok' },\n\t\ttitle: 'TikTok',\n\t\ticon: TiktokIcon,\n\t},\n\t{\n\t\tname: 'tumblr',\n\t\tattributes: { service: 'tumblr' },\n\t\ttitle: 'Tumblr',\n\t\ticon: TumblrIcon,\n\t},\n\t{\n\t\tname: 'twitch',\n\t\tattributes: { service: 'twitch' },\n\t\ttitle: 'Twitch',\n\t\ticon: TwitchIcon,\n\t},\n\t{\n\t\tname: 'twitter',\n\t\tattributes: { service: 'twitter' },\n\t\ttitle: 'Twitter',\n\t\ticon: TwitterIcon,\n\t},\n\t{\n\t\tname: 'vimeo',\n\t\tattributes: { service: 'vimeo' },\n\t\ttitle: 'Vimeo',\n\t\ticon: VimeoIcon,\n\t},\n\t{\n\t\tname: 'vk',\n\t\tattributes: { service: 'vk' },\n\t\ttitle: 'VK',\n\t\ticon: VkIcon,\n\t},\n\t{\n\t\tname: 'whatsapp',\n\t\tattributes: { service: 'whatsapp' },\n\t\ttitle: 'WhatsApp',\n\t\ticon: WhatsAppIcon,\n\t},\n\t{\n\t\tname: 'yelp',\n\t\tattributes: { service: 'yelp' },\n\t\ttitle: 'Yelp',\n\t\ticon: YelpIcon,\n\t},\n\t{\n\t\tname: 'youtube',\n\t\tattributes: { service: 'youtube' },\n\t\ttitle: 'YouTube',\n\t\ticon: YouTubeIcon,\n\t},\n];\n\n/**\n * Add `isActive` function to all `social link` variations, if not defined.\n * `isActive` function is used to find a variation match from a created\n * Block by providing its attributes.\n */\nvariations.forEach( ( variation ) => {\n\tif ( variation.isActive ) return;\n\tvariation.isActive = ( blockAttributes, variationAttributes ) =>\n\t\tblockAttributes.service === variationAttributes.service;\n} );\n\nexport default variations;\n"]}
@@ -9,11 +9,11 @@ import { isEmpty } from 'lodash';
9
9
  */
10
10
 
11
11
  import { useSelect } from '@wordpress/data';
12
- import { BlockControls, useBlockProps, __experimentalUseNoRecursiveRenders as useNoRecursiveRenders, Warning, store as blockEditorStore, __experimentalUseBlockOverlayActive as useBlockOverlayActive } from '@wordpress/block-editor';
13
- import { ToolbarGroup, ToolbarButton, Spinner, Modal } from '@wordpress/components';
12
+ import { BlockSettingsMenuControls, BlockTitle, useBlockProps, Warning, store as blockEditorStore, __experimentalUseNoRecursiveRenders as useNoRecursiveRenders, __experimentalUseBlockOverlayActive as useBlockOverlayActive } from '@wordpress/block-editor';
13
+ import { Spinner, Modal, MenuItem } from '@wordpress/components';
14
14
  import { __, sprintf } from '@wordpress/i18n';
15
15
  import { store as coreStore } from '@wordpress/core-data';
16
- import { useState } from '@wordpress/element';
16
+ import { useState, createInterpolateElement } from '@wordpress/element';
17
17
  /**
18
18
  * Internal dependencies
19
19
  */
@@ -28,7 +28,8 @@ export default function TemplatePartEdit(_ref) {
28
28
  let {
29
29
  attributes,
30
30
  setAttributes,
31
- clientId
31
+ clientId,
32
+ isSelected
32
33
  } = _ref;
33
34
  const {
34
35
  slug,
@@ -82,7 +83,10 @@ export default function TemplatePartEdit(_ref) {
82
83
  });
83
84
  const isPlaceholder = !slug;
84
85
  const isEntityAvailable = !isPlaceholder && !isMissing && isResolved;
85
- const TagName = tagName || areaObject.tagName; // We don't want to render a missing state if we have any inner blocks.
86
+ const TagName = tagName || areaObject.tagName; // The `isSelected` check ensures the `BlockSettingsMenuControls` fill
87
+ // doesn't render multiple times. The block controls has similar internal check.
88
+
89
+ const canReplace = isSelected && isEntityAvailable && hasReplacements && (area === 'header' || area === 'footer'); // We don't want to render a missing state if we have any inner blocks.
86
90
  // A new template part is automatically created if we have any inner blocks but no entity.
87
91
 
88
92
  if (innerBlocks.length === 0 && (slug && !theme || slug && isMissing)) {
@@ -107,18 +111,23 @@ export default function TemplatePartEdit(_ref) {
107
111
  clientId: clientId,
108
112
  setAttributes: setAttributes,
109
113
  onOpenSelectionModal: () => setIsTemplatePartSelectionOpen(true)
110
- })), isEntityAvailable && hasReplacements && (area === 'header' || area === 'footer') && createElement(BlockControls, null, createElement(ToolbarGroup, {
111
- className: "wp-block-template-part__block-control-group"
112
- }, createElement(ToolbarButton, {
113
- onClick: () => setIsTemplatePartSelectionOpen(true)
114
- }, __('Replace')))), isEntityAvailable && createElement(TemplatePartInnerBlocks, {
114
+ })), canReplace && createElement(BlockSettingsMenuControls, null, () => createElement(MenuItem, {
115
+ onClick: () => {
116
+ setIsTemplatePartSelectionOpen(true);
117
+ }
118
+ }, createInterpolateElement(__('Replace <BlockTitle />'), {
119
+ BlockTitle: createElement(BlockTitle, {
120
+ clientId: clientId,
121
+ maximumLength: 25
122
+ })
123
+ }))), isEntityAvailable && createElement(TemplatePartInnerBlocks, {
115
124
  tagName: TagName,
116
125
  blockProps: blockProps,
117
126
  postId: templatePartId,
118
127
  hasInnerBlocks: innerBlocks.length > 0,
119
128
  layout: layout
120
129
  }), !isPlaceholder && !isResolved && createElement(TagName, blockProps, createElement(Spinner, null)), isTemplatePartSelectionOpen && createElement(Modal, {
121
- className: "block-editor-template-part__selection-modal",
130
+ overlayClassName: "block-editor-template-part__selection-modal",
122
131
  title: sprintf( // Translators: %s as template part area title ("Header", "Footer", etc.).
123
132
  __('Choose a %s'), areaObject.label.toLowerCase()),
124
133
  closeLabel: __('Cancel'),
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"names":["isEmpty","useSelect","BlockControls","useBlockProps","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","Warning","store","blockEditorStore","__experimentalUseBlockOverlayActive","useBlockOverlayActive","ToolbarGroup","ToolbarButton","Spinner","Modal","__","sprintf","coreStore","useState","TemplatePartPlaceholder","TemplatePartSelectionModal","TemplatePartAdvancedControls","TemplatePartInnerBlocks","createTemplatePartId","useAlternativeBlockPatterns","useAlternativeTemplateParts","useTemplatePartArea","TemplatePartEdit","attributes","setAttributes","clientId","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","RecursionProvider","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","hasBlockOverlay","blockProps","className","undefined","__unstableIsDisabled","isPlaceholder","isEntityAvailable","TagName","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\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n} from '@wordpress/block-editor';\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tSpinner,\n\tModal,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState } 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} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst [ hasAlreadyRendered, RecursionProvider ] =\n\t\tuseNoRecursiveRenders( 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 hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps(\n\t\t{\n\t\t\tclassName: hasBlockOverlay\n\t\t\t\t? 'block-editor-block-content-overlay'\n\t\t\t\t: undefined,\n\t\t},\n\t\t{ __unstableIsDisabled: hasBlockOverlay }\n\t);\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\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<RecursionProvider>\n\t\t\t<TemplatePartAdvancedControls\n\t\t\t\ttagName={ tagName }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t/>\n\t\t\t{ isPlaceholder && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t\t{ isEntityAvailable &&\n\t\t\t\thasReplacements &&\n\t\t\t\t( area === 'header' || area === 'footer' ) && (\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup className=\"wp-block-template-part__block-control-group\">\n\t\t\t\t\t\t\t<ToolbarButton\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{ __( 'Replace' ) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t) }\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\tclassName=\"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</RecursionProvider>\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","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","__experimentalUseBlockOverlayActive","useBlockOverlayActive","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","RecursionProvider","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","hasBlockOverlay","blockProps","className","undefined","__unstableIsDisabled","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__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\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, RecursionProvider ] =\n\t\tuseNoRecursiveRenders( 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 hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps(\n\t\t{\n\t\t\tclassName: hasBlockOverlay\n\t\t\t\t? 'block-editor-block-content-overlay'\n\t\t\t\t: undefined,\n\t\t},\n\t\t{ __unstableIsDisabled: hasBlockOverlay }\n\t);\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<RecursionProvider>\n\t\t\t<TemplatePartAdvancedControls\n\t\t\t\ttagName={ tagName }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t/>\n\t\t\t{ isPlaceholder && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t\t{ canReplace && (\n\t\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t\t{ () => (\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tonClick={ () => {\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\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t__( 'Replace <BlockTitle />' ),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tBlockTitle: (\n\t\t\t\t\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\t\tmaximumLength={ 25 }\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) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t) }\n\t\t\t\t</BlockSettingsMenuControls>\n\t\t\t) }\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</TagName>\n\t\t\t) }\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</RecursionProvider>\n\t);\n}\n"]}
@@ -1,21 +1,23 @@
1
- import { createElement, Fragment } from "@wordpress/element";
1
+ import { createElement } from "@wordpress/element";
2
2
 
3
3
  /**
4
4
  * WordPress dependencies
5
5
  */
6
- import { useCallback, useMemo } from '@wordpress/element';
6
+ import { useCallback, useMemo, useState } from '@wordpress/element';
7
7
  import { __, sprintf } from '@wordpress/i18n';
8
8
  import { store as noticesStore } from '@wordpress/notices';
9
9
  import { useDispatch } from '@wordpress/data';
10
10
  import { parse } from '@wordpress/blocks';
11
11
  import { useAsyncList } from '@wordpress/compose';
12
12
  import { __experimentalBlockPatternsList as BlockPatternsList, store as blockEditorStore } from '@wordpress/block-editor';
13
+ import { SearchControl, __experimentalHStack as HStack } from '@wordpress/components';
13
14
  /**
14
15
  * Internal dependencies
15
16
  */
16
17
 
17
18
  import { useAlternativeBlockPatterns, useAlternativeTemplateParts, useCreateTemplatePartFromBlocks } from './utils/hooks';
18
19
  import { createTemplatePartId } from './utils/create-template-part-id';
20
+ import { searchPatterns } from './utils/search';
19
21
  export default function TemplatePartSelectionModal(_ref) {
20
22
  let {
21
23
  setAttributes,
@@ -24,27 +26,32 @@ export default function TemplatePartSelectionModal(_ref) {
24
26
  area,
25
27
  clientId
26
28
  } = _ref;
27
- // When the templatePartId is undefined,
29
+ const [searchValue, setSearchValue] = useState(''); // When the templatePartId is undefined,
28
30
  // it means the user is creating a new one from the placeholder.
31
+
29
32
  const isReplacingTemplatePartContent = !!templatePartId;
30
33
  const {
31
34
  templateParts
32
35
  } = useAlternativeTemplateParts(area, templatePartId); // We can map template parts to block patters to reuse the BlockPatternsList UI
33
36
 
34
- const templartPartsAsBlockPatterns = useMemo(() => {
35
- return templateParts.map(templatePart => ({
37
+ const filteredTemplateParts = useMemo(() => {
38
+ const partsAsPatterns = templateParts.map(templatePart => ({
36
39
  name: createTemplatePartId(templatePart.theme, templatePart.slug),
37
40
  title: templatePart.title.rendered,
38
41
  blocks: parse(templatePart.content.raw),
39
42
  templatePart
40
43
  }));
41
- }, [templateParts]);
42
- const shownTemplateParts = useAsyncList(templartPartsAsBlockPatterns);
44
+ return searchPatterns(partsAsPatterns, searchValue);
45
+ }, [templateParts, searchValue]);
46
+ const shownTemplateParts = useAsyncList(filteredTemplateParts);
47
+ const blockPatterns = useAlternativeBlockPatterns(area, clientId);
48
+ const filteredBlockPatterns = useMemo(() => {
49
+ return searchPatterns(blockPatterns, searchValue);
50
+ }, [blockPatterns, searchValue]);
51
+ const shownBlockPatterns = useAsyncList(filteredBlockPatterns);
43
52
  const {
44
53
  createSuccessNotice
45
54
  } = useDispatch(noticesStore);
46
- const blockPatterns = useAlternativeBlockPatterns(area, clientId);
47
- const shownBlockPatterns = useAsyncList(blockPatterns);
48
55
  const {
49
56
  replaceInnerBlocks
50
57
  } = useDispatch(blockEditorStore);
@@ -64,16 +71,25 @@ export default function TemplatePartSelectionModal(_ref) {
64
71
  onClose();
65
72
  }, []);
66
73
  const createFromBlocks = useCreateTemplatePartFromBlocks(area, setAttributes);
67
- return createElement(Fragment, null, createElement("div", {
74
+ const hasTemplateParts = !!filteredTemplateParts.length;
75
+ const hasBlockPatterns = !!filteredBlockPatterns.length;
76
+ return createElement("div", {
68
77
  className: "block-library-template-part__selection-content"
69
- }, !!templartPartsAsBlockPatterns.length && createElement("div", null, createElement("h2", null, __('Existing template parts')), createElement(BlockPatternsList, {
70
- blockPatterns: templartPartsAsBlockPatterns,
78
+ }, createElement("div", {
79
+ className: "block-library-template-part__selection-search"
80
+ }, createElement(SearchControl, {
81
+ onChange: setSearchValue,
82
+ value: searchValue,
83
+ label: __('Search for replacements'),
84
+ placeholder: __('Search')
85
+ })), hasTemplateParts && createElement("div", null, createElement("h2", null, __('Existing template parts')), createElement(BlockPatternsList, {
86
+ blockPatterns: filteredTemplateParts,
71
87
  shownPatterns: shownTemplateParts,
72
88
  onClickPattern: pattern => {
73
89
  onTemplatePartSelect(pattern.templatePart);
74
90
  }
75
- })), !!blockPatterns.length && createElement("div", null, createElement("h2", null, __('Patterns')), createElement(BlockPatternsList, {
76
- blockPatterns: blockPatterns,
91
+ })), hasBlockPatterns && createElement("div", null, createElement("h2", null, __('Patterns')), createElement(BlockPatternsList, {
92
+ blockPatterns: filteredBlockPatterns,
77
93
  shownPatterns: shownBlockPatterns,
78
94
  onClickPattern: (pattern, blocks) => {
79
95
  if (isReplacingTemplatePartContent) {
@@ -84,6 +100,8 @@ export default function TemplatePartSelectionModal(_ref) {
84
100
 
85
101
  onClose();
86
102
  }
87
- }))));
103
+ })), !hasTemplateParts && !hasBlockPatterns && createElement(HStack, {
104
+ alignment: "center"
105
+ }, createElement("p", null, __('No results found.'))));
88
106
  }
89
107
  //# sourceMappingURL=selection-modal.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/selection-modal.js"],"names":["useCallback","useMemo","__","sprintf","store","noticesStore","useDispatch","parse","useAsyncList","__experimentalBlockPatternsList","BlockPatternsList","blockEditorStore","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","createTemplatePartId","TemplatePartSelectionModal","setAttributes","onClose","templatePartId","area","clientId","isReplacingTemplatePartContent","templateParts","templartPartsAsBlockPatterns","map","templatePart","name","theme","slug","title","rendered","blocks","content","raw","shownTemplateParts","createSuccessNotice","blockPatterns","shownBlockPatterns","replaceInnerBlocks","onTemplatePartSelect","undefined","type","createFromBlocks","length","pattern"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback, useMemo } 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 {\n\t__experimentalBlockPatternsList as BlockPatternsList,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\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';\n\nexport default function TemplatePartSelectionModal( {\n\tsetAttributes,\n\tonClose,\n\ttemplatePartId = null,\n\tarea,\n\tclientId,\n} ) {\n\t// When the templatePartId is undefined,\n\t// it means the user is creating a new one from the placeholder.\n\tconst isReplacingTemplatePartContent = !! templatePartId;\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 templartPartsAsBlockPatterns = useMemo( () => {\n\t\treturn 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\t}, [ templateParts ] );\n\tconst shownTemplateParts = useAsyncList( templartPartsAsBlockPatterns );\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\n\tconst onTemplatePartSelect = useCallback( ( 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\treturn (\n\t\t<>\n\t\t\t<div className=\"block-library-template-part__selection-content\">\n\t\t\t\t{ !! templartPartsAsBlockPatterns.length && (\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2>{ __( 'Existing template parts' ) }</h2>\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tblockPatterns={ templartPartsAsBlockPatterns }\n\t\t\t\t\t\t\tshownPatterns={ shownTemplateParts }\n\t\t\t\t\t\t\tonClickPattern={ ( pattern ) => {\n\t\t\t\t\t\t\t\tonTemplatePartSelect( pattern.templatePart );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\n\t\t\t\t{ !! blockPatterns.length && (\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2>{ __( 'Patterns' ) }</h2>\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tblockPatterns={ blockPatterns }\n\t\t\t\t\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\t\t\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\t\t\t\t\tif ( isReplacingTemplatePartContent ) {\n\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, blocks );\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tcreateFromBlocks( blocks, pattern.title );\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/selection-modal.js"],"names":["useCallback","useMemo","useState","__","sprintf","store","noticesStore","useDispatch","parse","useAsyncList","__experimentalBlockPatternsList","BlockPatternsList","blockEditorStore","SearchControl","__experimentalHStack","HStack","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","createTemplatePartId","searchPatterns","TemplatePartSelectionModal","setAttributes","onClose","templatePartId","area","clientId","searchValue","setSearchValue","isReplacingTemplatePartContent","templateParts","filteredTemplateParts","partsAsPatterns","map","templatePart","name","theme","slug","title","rendered","blocks","content","raw","shownTemplateParts","blockPatterns","filteredBlockPatterns","shownBlockPatterns","createSuccessNotice","replaceInnerBlocks","onTemplatePartSelect","undefined","type","createFromBlocks","hasTemplateParts","length","hasBlockPatterns","pattern"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback, 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 {\n\t__experimentalBlockPatternsList as BlockPatternsList,\n\tstore as blockEditorStore,\n} 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\t// When the templatePartId is undefined,\n\t// it means the user is creating a new one from the placeholder.\n\tconst isReplacingTemplatePartContent = !! templatePartId;\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\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\n\tconst onTemplatePartSelect = useCallback( ( 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\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\tif ( isReplacingTemplatePartContent ) {\n\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, blocks );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tcreateFromBlocks( blocks, pattern.title );\n\t\t\t\t\t\t\t}\n\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"]}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * External dependencies
3
+ */
4
+ import removeAccents from 'remove-accents';
5
+ /**
6
+ * Sanitizes the search input string.
7
+ *
8
+ * @param {string} input The search input to normalize.
9
+ *
10
+ * @return {string} The normalized search input.
11
+ */
12
+
13
+ function normalizeSearchInput() {
14
+ let input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
15
+ // Disregard diacritics.
16
+ input = removeAccents(input); // Trim & Lowercase.
17
+
18
+ input = input.trim().toLowerCase();
19
+ return input;
20
+ }
21
+ /**
22
+ * Get the search rank for a given pattern and a specific search term.
23
+ *
24
+ * @param {Object} pattern Pattern to rank
25
+ * @param {string} searchValue Search term
26
+ * @return {number} A pattern search rank
27
+ */
28
+
29
+
30
+ function getPatternSearchRank(pattern, searchValue) {
31
+ const normalizedSearchValue = normalizeSearchInput(searchValue);
32
+ const normalizedTitle = normalizeSearchInput(pattern.title);
33
+ let rank = 0;
34
+
35
+ if (normalizedSearchValue === normalizedTitle) {
36
+ rank += 30;
37
+ } else if (normalizedTitle.startsWith(normalizedSearchValue)) {
38
+ rank += 20;
39
+ } else {
40
+ const searchTerms = normalizedSearchValue.split(' ');
41
+ const hasMatchedTerms = searchTerms.every(searchTerm => normalizedTitle.includes(searchTerm)); // Prefer pattern with every search word in the title.
42
+
43
+ if (hasMatchedTerms) {
44
+ rank += 10;
45
+ }
46
+ }
47
+
48
+ return rank;
49
+ }
50
+ /**
51
+ * Filters an pattern list given a search term.
52
+ *
53
+ * @param {Array} patterns Item list
54
+ * @param {string} searchValue Search input.
55
+ *
56
+ * @return {Array} Filtered pattern list.
57
+ */
58
+
59
+
60
+ export function searchPatterns() {
61
+ let patterns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
62
+ let searchValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
63
+
64
+ if (!searchValue) {
65
+ return patterns;
66
+ }
67
+
68
+ const rankedPatterns = patterns.map(pattern => {
69
+ return [pattern, getPatternSearchRank(pattern, searchValue)];
70
+ }).filter(_ref => {
71
+ let [, rank] = _ref;
72
+ return rank > 0;
73
+ });
74
+ rankedPatterns.sort((_ref2, _ref3) => {
75
+ let [, rank1] = _ref2;
76
+ let [, rank2] = _ref3;
77
+ return rank2 - rank1;
78
+ });
79
+ return rankedPatterns.map(_ref4 => {
80
+ let [pattern] = _ref4;
81
+ return pattern;
82
+ });
83
+ }
84
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/utils/search.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,SAASC,oBAAT,GAA4C;AAAA,MAAbC,KAAa,uEAAL,EAAK;AAC3C;AACAA,EAAAA,KAAK,GAAGF,aAAa,CAAEE,KAAF,CAArB,CAF2C,CAI3C;;AACAA,EAAAA,KAAK,GAAGA,KAAK,CAACC,IAAN,GAAaC,WAAb,EAAR;AAEA,SAAOF,KAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASG,oBAAT,CAA+BC,OAA/B,EAAwCC,WAAxC,EAAsD;AACrD,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 */\nfunction 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 */\nfunction 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"]}
@@ -79,7 +79,6 @@
79
79
  cursor: pointer;
80
80
  display: inline-block;
81
81
  text-align: center;
82
- text-decoration: none;
83
82
  word-break: break-word;
84
83
  box-sizing: border-box;
85
84
  }
@@ -94,6 +93,7 @@
94
93
  }
95
94
 
96
95
  :where(.wp-block-button__link) {
96
+ text-decoration: none;
97
97
  border-radius: 9999px;
98
98
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
99
99
  }
@@ -79,7 +79,6 @@
79
79
  cursor: pointer;
80
80
  display: inline-block;
81
81
  text-align: center;
82
- text-decoration: none;
83
82
  word-break: break-word;
84
83
  box-sizing: border-box;
85
84
  }
@@ -95,6 +94,7 @@
95
94
  }
96
95
 
97
96
  :where(.wp-block-button__link) {
97
+ text-decoration: none;
98
98
  border-radius: 9999px;
99
99
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
100
100
  }
@@ -74,6 +74,128 @@
74
74
  /**
75
75
  * Reset the WP Admin page styles for Gutenberg-like pages.
76
76
  */
77
+ /* Styles for backwards compatibility with the legacy `post-comments` block */
78
+ .wp-block-post-comments, .wp-block-comments__legacy-placeholder {
79
+ /* utility classes */
80
+ /* end utility classes */
81
+ }
82
+ .wp-block-post-comments .alignleft, .wp-block-comments__legacy-placeholder .alignleft {
83
+ float: right;
84
+ }
85
+ .wp-block-post-comments .alignright, .wp-block-comments__legacy-placeholder .alignright {
86
+ float: left;
87
+ }
88
+ .wp-block-post-comments .navigation::after, .wp-block-comments__legacy-placeholder .navigation::after {
89
+ content: "";
90
+ display: table;
91
+ clear: both;
92
+ }
93
+ .wp-block-post-comments .commentlist, .wp-block-comments__legacy-placeholder .commentlist {
94
+ clear: both;
95
+ list-style: none;
96
+ margin: 0;
97
+ padding: 0;
98
+ }
99
+ .wp-block-post-comments .commentlist .comment, .wp-block-comments__legacy-placeholder .commentlist .comment {
100
+ min-height: 2.25em;
101
+ padding-right: 3.25em;
102
+ }
103
+ .wp-block-post-comments .commentlist .comment p, .wp-block-comments__legacy-placeholder .commentlist .comment p {
104
+ font-size: 1em;
105
+ line-height: 1.8;
106
+ margin: 1em 0;
107
+ }
108
+ .wp-block-post-comments .commentlist .children, .wp-block-comments__legacy-placeholder .commentlist .children {
109
+ list-style: none;
110
+ margin: 0;
111
+ padding: 0;
112
+ }
113
+ .wp-block-post-comments .comment-author, .wp-block-comments__legacy-placeholder .comment-author {
114
+ line-height: 1.5;
115
+ }
116
+ .wp-block-post-comments .comment-author .avatar, .wp-block-comments__legacy-placeholder .comment-author .avatar {
117
+ border-radius: 1.5em;
118
+ display: block;
119
+ float: right;
120
+ height: 2.5em;
121
+ margin-top: 0.5em;
122
+ margin-left: 0.75em;
123
+ width: 2.5em;
124
+ }
125
+ .wp-block-post-comments .comment-author cite, .wp-block-comments__legacy-placeholder .comment-author cite {
126
+ font-style: normal;
127
+ }
128
+ .wp-block-post-comments .comment-meta, .wp-block-comments__legacy-placeholder .comment-meta {
129
+ font-size: 0.875em;
130
+ line-height: 1.5;
131
+ }
132
+ .wp-block-post-comments .comment-meta b, .wp-block-comments__legacy-placeholder .comment-meta b {
133
+ font-weight: normal;
134
+ }
135
+ .wp-block-post-comments .comment-meta .comment-awaiting-moderation, .wp-block-comments__legacy-placeholder .comment-meta .comment-awaiting-moderation {
136
+ margin-top: 1em;
137
+ margin-bottom: 1em;
138
+ display: block;
139
+ }
140
+ .wp-block-post-comments .comment-body .commentmetadata, .wp-block-comments__legacy-placeholder .comment-body .commentmetadata {
141
+ font-size: 0.875em;
142
+ }
143
+ .wp-block-post-comments .comment-form-comment label, .wp-block-comments__legacy-placeholder .comment-form-comment label,
144
+ .wp-block-post-comments .comment-form-author label,
145
+ .wp-block-comments__legacy-placeholder .comment-form-author label,
146
+ .wp-block-post-comments .comment-form-email label,
147
+ .wp-block-comments__legacy-placeholder .comment-form-email label,
148
+ .wp-block-post-comments .comment-form-url label,
149
+ .wp-block-comments__legacy-placeholder .comment-form-url label {
150
+ display: block;
151
+ margin-bottom: 0.25em;
152
+ }
153
+ .wp-block-post-comments .comment-form textarea, .wp-block-comments__legacy-placeholder .comment-form textarea,
154
+ .wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]),
155
+ .wp-block-comments__legacy-placeholder .comment-form input:not([type=submit]):not([type=checkbox]) {
156
+ display: block;
157
+ box-sizing: border-box;
158
+ width: 100%;
159
+ }
160
+ .wp-block-post-comments .comment-form-cookies-consent, .wp-block-comments__legacy-placeholder .comment-form-cookies-consent {
161
+ display: flex;
162
+ gap: 0.25em;
163
+ }
164
+ .wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent, .wp-block-comments__legacy-placeholder .comment-form-cookies-consent #wp-comment-cookies-consent {
165
+ margin-top: 0.35em;
166
+ }
167
+ .wp-block-post-comments .comment-reply-title, .wp-block-comments__legacy-placeholder .comment-reply-title {
168
+ margin-bottom: 0;
169
+ }
170
+ .wp-block-post-comments .comment-reply-title :where(small), .wp-block-comments__legacy-placeholder .comment-reply-title :where(small) {
171
+ font-size: var(--wp--preset--font-size--medium, smaller);
172
+ margin-right: 0.5em;
173
+ }
174
+ .wp-block-post-comments .reply, .wp-block-comments__legacy-placeholder .reply {
175
+ font-size: 0.875em;
176
+ margin-bottom: 1.4em;
177
+ }
178
+ .wp-block-post-comments textarea, .wp-block-comments__legacy-placeholder textarea,
179
+ .wp-block-post-comments input:not([type=submit]),
180
+ .wp-block-comments__legacy-placeholder input:not([type=submit]) {
181
+ border: 1px solid #949494;
182
+ font-size: 1em;
183
+ font-family: inherit;
184
+ }
185
+ .wp-block-post-comments textarea, .wp-block-comments__legacy-placeholder textarea,
186
+ .wp-block-post-comments input:not([type=submit]):not([type=checkbox]),
187
+ .wp-block-comments__legacy-placeholder input:not([type=submit]):not([type=checkbox]) {
188
+ padding: calc(0.667em + 2px);
189
+ }
190
+
191
+ :where(.wp-block-post-comments input[type="submit"]) {
192
+ border: none;
193
+ }
194
+
77
195
  .block-library-comments-toolbar__popover .components-popover__content {
78
196
  min-width: 230px;
197
+ }
198
+
199
+ .wp-block-comments__legacy-placeholder * {
200
+ pointer-events: none;
79
201
  }