@wordpress/block-library 8.30.0 → 8.32.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 (362) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/block/edit.js +22 -16
  3. package/build/block/edit.js.map +1 -1
  4. package/build/button/edit.native.js +1 -1
  5. package/build/button/edit.native.js.map +1 -1
  6. package/build/code/save.js +3 -1
  7. package/build/code/save.js.map +1 -1
  8. package/build/cover/edit/index.js +2 -1
  9. package/build/cover/edit/index.js.map +1 -1
  10. package/build/details/edit.js +1 -0
  11. package/build/details/edit.js.map +1 -1
  12. package/build/file/edit.js +2 -0
  13. package/build/file/edit.js.map +1 -1
  14. package/build/heading/index.js +4 -3
  15. package/build/heading/index.js.map +1 -1
  16. package/build/image/edit.js +10 -39
  17. package/build/image/edit.js.map +1 -1
  18. package/build/image/image.js +27 -6
  19. package/build/image/image.js.map +1 -1
  20. package/build/media-text/edit.js +33 -9
  21. package/build/media-text/edit.js.map +1 -1
  22. package/build/media-text/index.js +5 -0
  23. package/build/media-text/index.js.map +1 -1
  24. package/build/media-text/media-container.js +30 -11
  25. package/build/media-text/media-container.js.map +1 -1
  26. package/build/media-text/save.js +2 -2
  27. package/build/media-text/save.js.map +1 -1
  28. package/build/navigation/edit/index.js +23 -29
  29. package/build/navigation/edit/index.js.map +1 -1
  30. package/build/navigation/edit/navigation-menu-delete-control.js +12 -20
  31. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  32. package/build/navigation/edit/navigation-menu-selector.js +24 -23
  33. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  34. package/build/navigation/edit/placeholder/index.js +4 -4
  35. package/build/navigation/edit/placeholder/index.js.map +1 -1
  36. package/build/navigation/use-navigation-menu.js +15 -12
  37. package/build/navigation/use-navigation-menu.js.map +1 -1
  38. package/build/navigation/view.js +12 -2
  39. package/build/navigation/view.js.map +1 -1
  40. package/build/navigation-link/edit.js +52 -27
  41. package/build/navigation-link/edit.js.map +1 -1
  42. package/build/navigation-submenu/edit.js +31 -9
  43. package/build/navigation-submenu/edit.js.map +1 -1
  44. package/build/pattern/edit.js +3 -1
  45. package/build/pattern/edit.js.map +1 -1
  46. package/build/post-author/edit.js +1 -0
  47. package/build/post-author/edit.js.map +1 -1
  48. package/build/post-excerpt/edit.js +1 -0
  49. package/build/post-excerpt/edit.js.map +1 -1
  50. package/build/post-featured-image/edit.js +16 -4
  51. package/build/post-featured-image/edit.js.map +1 -1
  52. package/build/post-featured-image/index.js +13 -2
  53. package/build/post-featured-image/index.js.map +1 -1
  54. package/build/post-featured-image/overlay-controls.js +82 -0
  55. package/build/post-featured-image/overlay-controls.js.map +1 -0
  56. package/build/post-featured-image/overlay.js +5 -54
  57. package/build/post-featured-image/overlay.js.map +1 -1
  58. package/build/post-navigation-link/edit.js +1 -0
  59. package/build/post-navigation-link/edit.js.map +1 -1
  60. package/build/post-terms/edit.js +2 -0
  61. package/build/post-terms/edit.js.map +1 -1
  62. package/build/quote/edit.js +18 -23
  63. package/build/quote/edit.js.map +1 -1
  64. package/build/read-more/edit.js +1 -0
  65. package/build/read-more/edit.js.map +1 -1
  66. package/build/search/edit.js +2 -0
  67. package/build/search/edit.js.map +1 -1
  68. package/build/search/edit.native.js +2 -2
  69. package/build/search/edit.native.js.map +1 -1
  70. package/build/site-tagline/edit.js +13 -4
  71. package/build/site-tagline/edit.js.map +1 -1
  72. package/build/site-tagline/index.js +4 -0
  73. package/build/site-tagline/index.js.map +1 -1
  74. package/build/social-link/edit.js +1 -1
  75. package/build/social-link/edit.js.map +1 -1
  76. package/build/social-link/icons/medium.js +1 -1
  77. package/build/social-link/icons/medium.js.map +1 -1
  78. package/build/social-link/icons/reddit.js +1 -1
  79. package/build/social-link/icons/reddit.js.map +1 -1
  80. package/build/table/deprecated.js +285 -175
  81. package/build/table/deprecated.js.map +1 -1
  82. package/build/table/index.js +1 -1
  83. package/build/template-part/edit/index.js +55 -47
  84. package/build/template-part/edit/index.js.map +1 -1
  85. package/build/template-part/edit/inner-blocks.js +106 -10
  86. package/build/template-part/edit/inner-blocks.js.map +1 -1
  87. package/build/template-part/edit/selection-modal.js +1 -9
  88. package/build/template-part/edit/selection-modal.js.map +1 -1
  89. package/build/utils/caption.js +19 -13
  90. package/build/utils/caption.js.map +1 -1
  91. package/build/utils/hooks.js +1 -0
  92. package/build/utils/hooks.js.map +1 -1
  93. package/build/video/edit.native.js +1 -1
  94. package/build/video/edit.native.js.map +1 -1
  95. package/build-module/block/edit.js +23 -17
  96. package/build-module/block/edit.js.map +1 -1
  97. package/build-module/button/edit.native.js +1 -1
  98. package/build-module/button/edit.native.js.map +1 -1
  99. package/build-module/code/save.js +3 -1
  100. package/build-module/code/save.js.map +1 -1
  101. package/build-module/cover/edit/index.js +2 -1
  102. package/build-module/cover/edit/index.js.map +1 -1
  103. package/build-module/details/edit.js +1 -0
  104. package/build-module/details/edit.js.map +1 -1
  105. package/build-module/file/edit.js +2 -0
  106. package/build-module/file/edit.js.map +1 -1
  107. package/build-module/heading/index.js +4 -3
  108. package/build-module/heading/index.js.map +1 -1
  109. package/build-module/image/edit.js +11 -40
  110. package/build-module/image/edit.js.map +1 -1
  111. package/build-module/image/image.js +27 -6
  112. package/build-module/image/image.js.map +1 -1
  113. package/build-module/media-text/edit.js +34 -10
  114. package/build-module/media-text/edit.js.map +1 -1
  115. package/build-module/media-text/index.js +5 -0
  116. package/build-module/media-text/index.js.map +1 -1
  117. package/build-module/media-text/media-container.js +31 -12
  118. package/build-module/media-text/media-container.js.map +1 -1
  119. package/build-module/media-text/save.js +2 -2
  120. package/build-module/media-text/save.js.map +1 -1
  121. package/build-module/navigation/edit/index.js +24 -30
  122. package/build-module/navigation/edit/index.js.map +1 -1
  123. package/build-module/navigation/edit/navigation-menu-delete-control.js +15 -23
  124. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  125. package/build-module/navigation/edit/navigation-menu-selector.js +24 -23
  126. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  127. package/build-module/navigation/edit/placeholder/index.js +4 -4
  128. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  129. package/build-module/navigation/use-navigation-menu.js +15 -12
  130. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  131. package/build-module/navigation/view.js +12 -2
  132. package/build-module/navigation/view.js.map +1 -1
  133. package/build-module/navigation-link/edit.js +55 -30
  134. package/build-module/navigation-link/edit.js.map +1 -1
  135. package/build-module/navigation-submenu/edit.js +31 -9
  136. package/build-module/navigation-submenu/edit.js.map +1 -1
  137. package/build-module/pattern/edit.js +3 -1
  138. package/build-module/pattern/edit.js.map +1 -1
  139. package/build-module/post-author/edit.js +1 -0
  140. package/build-module/post-author/edit.js.map +1 -1
  141. package/build-module/post-excerpt/edit.js +1 -0
  142. package/build-module/post-excerpt/edit.js.map +1 -1
  143. package/build-module/post-featured-image/edit.js +17 -5
  144. package/build-module/post-featured-image/edit.js.map +1 -1
  145. package/build-module/post-featured-image/index.js +13 -2
  146. package/build-module/post-featured-image/index.js.map +1 -1
  147. package/build-module/post-featured-image/overlay-controls.js +75 -0
  148. package/build-module/post-featured-image/overlay-controls.js.map +1 -0
  149. package/build-module/post-featured-image/overlay.js +7 -56
  150. package/build-module/post-featured-image/overlay.js.map +1 -1
  151. package/build-module/post-navigation-link/edit.js +1 -0
  152. package/build-module/post-navigation-link/edit.js.map +1 -1
  153. package/build-module/post-terms/edit.js +2 -0
  154. package/build-module/post-terms/edit.js.map +1 -1
  155. package/build-module/quote/edit.js +20 -25
  156. package/build-module/quote/edit.js.map +1 -1
  157. package/build-module/read-more/edit.js +1 -0
  158. package/build-module/read-more/edit.js.map +1 -1
  159. package/build-module/search/edit.js +2 -0
  160. package/build-module/search/edit.js.map +1 -1
  161. package/build-module/search/edit.native.js +2 -2
  162. package/build-module/search/edit.native.js.map +1 -1
  163. package/build-module/site-tagline/edit.js +14 -5
  164. package/build-module/site-tagline/edit.js.map +1 -1
  165. package/build-module/site-tagline/index.js +4 -0
  166. package/build-module/site-tagline/index.js.map +1 -1
  167. package/build-module/social-link/edit.js +1 -1
  168. package/build-module/social-link/edit.js.map +1 -1
  169. package/build-module/social-link/icons/medium.js +1 -1
  170. package/build-module/social-link/icons/medium.js.map +1 -1
  171. package/build-module/social-link/icons/reddit.js +1 -1
  172. package/build-module/social-link/icons/reddit.js.map +1 -1
  173. package/build-module/table/deprecated.js +286 -176
  174. package/build-module/table/deprecated.js.map +1 -1
  175. package/build-module/table/index.js +1 -1
  176. package/build-module/template-part/edit/index.js +58 -50
  177. package/build-module/template-part/edit/index.js.map +1 -1
  178. package/build-module/template-part/edit/inner-blocks.js +108 -12
  179. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  180. package/build-module/template-part/edit/selection-modal.js +2 -10
  181. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  182. package/build-module/utils/caption.js +19 -13
  183. package/build-module/utils/caption.js.map +1 -1
  184. package/build-module/utils/hooks.js +1 -0
  185. package/build-module/utils/hooks.js.map +1 -1
  186. package/build-module/video/edit.native.js +1 -1
  187. package/build-module/video/edit.native.js.map +1 -1
  188. package/build-style/audio/theme-rtl.css +1 -1
  189. package/build-style/audio/theme.css +1 -1
  190. package/build-style/cover/style-rtl.css +5 -2
  191. package/build-style/cover/style.css +5 -2
  192. package/build-style/editor-rtl.css +22 -12
  193. package/build-style/editor.css +22 -12
  194. package/build-style/embed/theme-rtl.css +1 -1
  195. package/build-style/embed/theme.css +1 -1
  196. package/build-style/file/editor-rtl.css +3 -0
  197. package/build-style/file/editor.css +3 -0
  198. package/build-style/image/editor-rtl.css +0 -3
  199. package/build-style/image/editor.css +0 -3
  200. package/build-style/image/theme-rtl.css +1 -1
  201. package/build-style/image/theme.css +1 -1
  202. package/build-style/media-text/editor-rtl.css +7 -1
  203. package/build-style/media-text/editor.css +7 -1
  204. package/build-style/pullquote/theme-rtl.css +2 -1
  205. package/build-style/pullquote/theme.css +2 -1
  206. package/build-style/quote/theme-rtl.css +6 -6
  207. package/build-style/quote/theme.css +6 -6
  208. package/build-style/search/style-rtl.css +10 -0
  209. package/build-style/search/style.css +10 -0
  210. package/build-style/social-links/editor-rtl.css +0 -4
  211. package/build-style/social-links/editor.css +0 -4
  212. package/build-style/social-links/style-rtl.css +2 -2
  213. package/build-style/social-links/style.css +2 -2
  214. package/build-style/style-rtl.css +17 -4
  215. package/build-style/style.css +17 -4
  216. package/build-style/table/theme-rtl.css +4 -3
  217. package/build-style/table/theme.css +4 -3
  218. package/build-style/template-part/editor-rtl.css +12 -4
  219. package/build-style/template-part/editor.css +12 -4
  220. package/build-style/template-part/theme-rtl.css +1 -1
  221. package/build-style/template-part/theme.css +1 -1
  222. package/build-style/theme-rtl.css +17 -15
  223. package/build-style/theme.css +17 -15
  224. package/build-style/video/theme-rtl.css +1 -1
  225. package/build-style/video/theme.css +1 -1
  226. package/package.json +34 -34
  227. package/src/archives/index.php +4 -0
  228. package/src/audio/theme.scss +1 -1
  229. package/src/avatar/index.php +6 -0
  230. package/src/block/edit.js +43 -32
  231. package/src/block/index.php +4 -0
  232. package/src/block/test/edit.native.js +67 -0
  233. package/src/button/edit.native.js +1 -1
  234. package/src/calendar/index.php +12 -0
  235. package/src/categories/index.php +6 -0
  236. package/src/code/save.js +7 -1
  237. package/src/comment-author-name/index.php +4 -0
  238. package/src/comment-content/index.php +4 -0
  239. package/src/comment-date/index.php +4 -0
  240. package/src/comment-edit-link/index.php +4 -0
  241. package/src/comment-reply-link/index.php +4 -0
  242. package/src/comment-template/index.php +4 -0
  243. package/src/comments/index.php +10 -0
  244. package/src/comments-pagination/index.php +4 -0
  245. package/src/comments-pagination-next/index.php +4 -0
  246. package/src/comments-pagination-numbers/index.php +4 -0
  247. package/src/comments-pagination-previous/index.php +4 -0
  248. package/src/comments-title/index.php +4 -0
  249. package/src/cover/edit/index.js +4 -1
  250. package/src/cover/index.php +4 -0
  251. package/src/cover/style.scss +6 -2
  252. package/src/details/edit.js +1 -0
  253. package/src/embed/theme.scss +1 -1
  254. package/src/file/edit.js +2 -0
  255. package/src/file/editor.scss +3 -0
  256. package/src/file/index.php +4 -0
  257. package/src/gallery/editor.scss +1 -1
  258. package/src/gallery/index.php +7 -1
  259. package/src/heading/index.js +4 -3
  260. package/src/heading/index.php +4 -0
  261. package/src/home-link/index.php +10 -0
  262. package/src/image/edit.js +11 -40
  263. package/src/image/editor.scss +2 -7
  264. package/src/image/image.js +25 -7
  265. package/src/image/index.php +12 -1
  266. package/src/image/theme.scss +1 -1
  267. package/src/latest-comments/index.php +4 -0
  268. package/src/latest-posts/index.php +8 -0
  269. package/src/loginout/index.php +4 -0
  270. package/src/media-text/block.json +5 -0
  271. package/src/media-text/edit.js +70 -19
  272. package/src/media-text/editor.scss +7 -1
  273. package/src/media-text/index.php +70 -0
  274. package/src/media-text/media-container.js +49 -9
  275. package/src/media-text/save.js +2 -2
  276. package/src/navigation/edit/index.js +67 -71
  277. package/src/navigation/edit/navigation-menu-delete-control.js +22 -49
  278. package/src/navigation/edit/navigation-menu-selector.js +39 -21
  279. package/src/navigation/edit/placeholder/index.js +4 -4
  280. package/src/navigation/edit/test/navigation-menu-selector.js +75 -53
  281. package/src/navigation/index.php +109 -26
  282. package/src/navigation/test/use-navigation-menu.js +21 -21
  283. package/src/navigation/use-navigation-menu.js +23 -9
  284. package/src/navigation/view.js +11 -2
  285. package/src/navigation-link/edit.js +64 -39
  286. package/src/navigation-link/index.php +14 -0
  287. package/src/navigation-submenu/edit.js +34 -10
  288. package/src/navigation-submenu/index.php +8 -0
  289. package/src/page-list/index.php +12 -0
  290. package/src/page-list-item/index.php +2 -0
  291. package/src/pattern/edit.js +4 -0
  292. package/src/pattern/index.php +2 -0
  293. package/src/post-author/edit.js +1 -0
  294. package/src/post-author/index.php +4 -0
  295. package/src/post-author-biography/index.php +4 -0
  296. package/src/post-author-name/index.php +4 -0
  297. package/src/post-comments-form/index.php +6 -0
  298. package/src/post-content/index.php +4 -0
  299. package/src/post-date/index.php +4 -0
  300. package/src/post-excerpt/edit.js +1 -0
  301. package/src/post-excerpt/index.php +4 -0
  302. package/src/post-featured-image/block.json +13 -2
  303. package/src/post-featured-image/edit.js +16 -1
  304. package/src/post-featured-image/editor.scss +1 -1
  305. package/src/post-featured-image/index.php +15 -0
  306. package/src/post-featured-image/overlay-controls.js +88 -0
  307. package/src/post-featured-image/overlay.js +17 -84
  308. package/src/post-navigation-link/edit.js +1 -0
  309. package/src/post-navigation-link/index.php +4 -0
  310. package/src/post-template/index.php +4 -0
  311. package/src/post-terms/edit.js +2 -0
  312. package/src/post-terms/index.php +6 -0
  313. package/src/post-title/index.php +2 -0
  314. package/src/pullquote/theme.scss +3 -1
  315. package/src/query/index.php +2 -0
  316. package/src/query-no-results/index.php +6 -0
  317. package/src/query-pagination/index.php +4 -0
  318. package/src/query-pagination-next/index.php +6 -0
  319. package/src/query-pagination-numbers/index.php +6 -0
  320. package/src/query-pagination-previous/index.php +4 -0
  321. package/src/query-title/index.php +4 -0
  322. package/src/quote/edit.js +27 -37
  323. package/src/quote/test/edit.native.js +4 -6
  324. package/src/quote/theme.scss +1 -2
  325. package/src/read-more/edit.js +1 -0
  326. package/src/read-more/index.php +4 -0
  327. package/src/rss/index.php +4 -0
  328. package/src/search/edit.js +2 -0
  329. package/src/search/edit.native.js +2 -2
  330. package/src/search/index.php +19 -1
  331. package/src/search/style.scss +11 -0
  332. package/src/shortcode/index.php +4 -0
  333. package/src/site-logo/editor.scss +2 -2
  334. package/src/site-logo/index.php +20 -0
  335. package/src/site-tagline/block.json +4 -0
  336. package/src/site-tagline/edit.js +16 -3
  337. package/src/site-tagline/index.php +13 -1
  338. package/src/site-title/index.php +4 -0
  339. package/src/social-link/edit.js +1 -1
  340. package/src/social-link/icons/medium.js +1 -1
  341. package/src/social-link/icons/reddit.js +1 -1
  342. package/src/social-link/index.php +22 -9
  343. package/src/social-link/socials-with-bg.scss +1 -1
  344. package/src/social-link/socials-without-bg.scss +1 -1
  345. package/src/social-links/editor.scss +1 -9
  346. package/src/table/block.json +1 -1
  347. package/src/table/deprecated.js +308 -175
  348. package/src/table/theme.scss +4 -2
  349. package/src/tag-cloud/index.php +4 -0
  350. package/src/template-part/edit/index.js +87 -79
  351. package/src/template-part/edit/inner-blocks.js +126 -13
  352. package/src/template-part/edit/selection-modal.js +1 -22
  353. package/src/template-part/editor.scss +11 -3
  354. package/src/template-part/index.php +12 -0
  355. package/src/template-part/theme.scss +1 -1
  356. package/src/term-description/index.php +4 -0
  357. package/src/utils/caption.js +19 -16
  358. package/src/utils/hooks.js +1 -0
  359. package/src/video/edit.native.js +2 -0
  360. package/src/video/editor.scss +2 -2
  361. package/src/video/theme.scss +1 -1
  362. package/tsconfig.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","oldColors","v3","attributes","hasFixedLayout","type","default","caption","source","selector","head","query","cells","content","tag","scope","attribute","align","body","foot","supports","anchor","color","__experimentalSkipSerialization","gradients","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","__experimentalBorder","style","width","__experimentalSelector","save","isEmpty","length","colorProps","getColorClassesAndStyles","borderProps","getBorderClassesAndStyles","classes","classnames","className","hasCaption","RichText","Section","rows","Tag","_react","createElement","map","rowIndex","key","cellIndex","cellClasses","Content","undefined","tagName","value","useBlockProps","v2","backgroundColor","backgroundClass","getColorClassName","isEligible","migrate","v1","_default","exports"],"sources":["@wordpress/block-library/src/table/deprecated.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tgetColorClassName,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n} from '@wordpress/block-editor';\n\n// As the previous arbitrary colors won't match theme color palettes, the hex\n// value will be mapped to the style.color.background attribute as if it was\n// a custom color selection.\nconst oldColors = {\n\t'subtle-light-gray': '#f3f4f5',\n\t'subtle-pale-green': '#e9fbe5',\n\t'subtle-pale-blue': '#e7f5fe',\n\t'subtle-pale-pink': '#fcf0ef',\n};\n\n// In #41140 support was added to global styles for caption elements which\n// added a `wp-element-caption` classname to the embed figcaption element.\nconst v3 = {\n\tattributes: {\n\t\thasFixedLayout: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\tdefault: '',\n\t\t},\n\t\thead: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'thead tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbody: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tbody tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfoot: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tfoot tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\tcolor: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tgradients: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tmargin: true,\n\t\t\tpadding: true,\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalLetterSpacing: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tcolor: true,\n\t\t\tstyle: true,\n\t\t\twidth: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tstyle: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalSelector: '.wp-block-table > table',\n\t},\n\tsave( { attributes } ) {\n\t\tconst { hasFixedLayout, head, body, foot, caption } = attributes;\n\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\tif ( isEmpty ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames(\n\t\t\tcolorProps.className,\n\t\t\tborderProps.className,\n\t\t\t{\n\t\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t}\n\t\t);\n\n\t\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\t\tconst Section = ( { type, rows } ) => {\n\t\t\tif ( ! rows.length ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst Tag = `t${ type }`;\n\n\t\t\treturn (\n\t\t\t\t<Tag>\n\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t{ content, tag, scope, align },\n\t\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\tconst cellClasses = classnames( {\n\t\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\tcellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t? cellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdata-align={ align }\n\t\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\t\ttag === 'th' ? scope : undefined\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) }\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</Tag>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save() }>\n\t\t\t\t<table\n\t\t\t\t\tclassName={ classes === '' ? undefined : classes }\n\t\t\t\t\tstyle={ { ...colorProps.style, ...borderProps.style } }\n\t\t\t\t>\n\t\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t\t</table>\n\t\t\t\t{ hasCaption && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n// Deprecation migrating table block to use colors block support feature.\nconst v2 = {\n\tattributes: {\n\t\thasFixedLayout: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\tdefault: '',\n\t\t},\n\t\thead: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'thead tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbody: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tbody tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfoot: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tfoot tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\t__experimentalSelector: '.wp-block-table > table',\n\t},\n\tsave: ( { attributes } ) => {\n\t\tconst { hasFixedLayout, head, body, foot, backgroundColor, caption } =\n\t\t\tattributes;\n\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\tif ( isEmpty ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst backgroundClass = getColorClassName(\n\t\t\t'background-color',\n\t\t\tbackgroundColor\n\t\t);\n\n\t\tconst classes = classnames( backgroundClass, {\n\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t'has-background': !! backgroundClass,\n\t\t} );\n\n\t\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\t\tconst Section = ( { type, rows } ) => {\n\t\t\tif ( ! rows.length ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst Tag = `t${ type }`;\n\n\t\t\treturn (\n\t\t\t\t<Tag>\n\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t{ content, tag, scope, align },\n\t\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\tconst cellClasses = classnames( {\n\t\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\tcellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t? cellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdata-align={ align }\n\t\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\t\ttag === 'th' ? scope : undefined\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) }\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</Tag>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save() }>\n\t\t\t\t<table className={ classes === '' ? undefined : classes }>\n\t\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t\t</table>\n\t\t\t\t{ hasCaption && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n\tisEligible: ( attributes ) => {\n\t\treturn (\n\t\t\tattributes.backgroundColor &&\n\t\t\tattributes.backgroundColor in oldColors &&\n\t\t\t! attributes.style\n\t\t);\n\t},\n\n\t// This version is the first to introduce the style attribute to the\n\t// table block. As a result, we'll explicitly override that.\n\tmigrate: ( attributes ) => {\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tbackgroundColor: undefined,\n\t\t\tstyle: {\n\t\t\t\tcolor: {\n\t\t\t\t\tbackground: oldColors[ attributes.backgroundColor ],\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t},\n};\n\nconst v1 = {\n\tattributes: {\n\t\thasFixedLayout: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\thead: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'thead tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbody: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tbody tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfoot: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tfoot tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst { hasFixedLayout, head, body, foot, backgroundColor } =\n\t\t\tattributes;\n\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\tif ( isEmpty ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst backgroundClass = getColorClassName(\n\t\t\t'background-color',\n\t\t\tbackgroundColor\n\t\t);\n\n\t\tconst classes = classnames( backgroundClass, {\n\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t'has-background': !! backgroundClass,\n\t\t} );\n\n\t\tconst Section = ( { type, rows } ) => {\n\t\t\tif ( ! rows.length ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst Tag = `t${ type }`;\n\n\t\t\treturn (\n\t\t\t\t<Tag>\n\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t( { content, tag, scope }, cellIndex ) => (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\ttag === 'th' ? scope : undefined\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</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</Tag>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<table className={ classes }>\n\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t</table>\n\t\t);\n\t},\n};\n\n/**\n * New deprecations need to be placed first\n * for them to have higher priority.\n *\n * Old deprecations may need to be updated as well.\n *\n * See block-deprecation.md\n */\nexport default [ v3, v2, v1 ];\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","oldColors","v4Query","content","type","source","tag","default","scope","attribute","align","colspan","rowspan","v4","attributes","hasFixedLayout","caption","selector","head","query","cells","body","foot","supports","anchor","color","__experimentalSkipSerialization","gradients","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","__experimentalBorder","style","width","__experimentalSelector","interactivity","clientNavigation","save","isEmpty","length","colorProps","getColorClassesAndStyles","borderProps","getBorderClassesAndStyles","classes","classnames","className","hasCaption","RichText","Section","rows","Tag","_react","createElement","map","rowIndex","key","cellIndex","cellClasses","Content","undefined","tagName","value","colSpan","rowSpan","useBlockProps","__experimentalGetElementClassName","v3Query","v3","v2Query","v2","backgroundColor","backgroundClass","getColorClassName","isEligible","migrate","v1Query","v1","_default","exports"],"sources":["@wordpress/block-library/src/table/deprecated.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tgetColorClassName,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\n// As the previous arbitrary colors won't match theme color palettes, the hex\n// value will be mapped to the style.color.background attribute as if it was\n// a custom color selection.\nconst oldColors = {\n\t'subtle-light-gray': '#f3f4f5',\n\t'subtle-pale-green': '#e9fbe5',\n\t'subtle-pale-blue': '#e7f5fe',\n\t'subtle-pale-pink': '#fcf0ef',\n};\n\n// Fixed width table cells on by default.\nconst v4Query = {\n\tcontent: {\n\t\ttype: 'rich-text',\n\t\tsource: 'rich-text',\n\t},\n\ttag: {\n\t\ttype: 'string',\n\t\tdefault: 'td',\n\t\tsource: 'tag',\n\t},\n\tscope: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'scope',\n\t},\n\talign: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'data-align',\n\t},\n\tcolspan: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'colspan',\n\t},\n\trowspan: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'rowspan',\n\t},\n};\n\nconst v4 = {\n\tattributes: {\n\t\thasFixedLayout: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'rich-text',\n\t\t\tsource: 'rich-text',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\thead: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'thead tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v4Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbody: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tbody tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v4Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfoot: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tfoot tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v4Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\tcolor: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tgradients: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tmargin: true,\n\t\t\tpadding: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tmargin: false,\n\t\t\t\tpadding: false,\n\t\t\t},\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalLetterSpacing: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tcolor: true,\n\t\t\tstyle: true,\n\t\t\twidth: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tstyle: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalSelector: '.wp-block-table > table',\n\t\tinteractivity: {\n\t\t\tclientNavigation: true,\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { hasFixedLayout, head, body, foot, caption } = attributes;\n\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\tif ( isEmpty ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames(\n\t\t\tcolorProps.className,\n\t\t\tborderProps.className,\n\t\t\t{\n\t\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t}\n\t\t);\n\n\t\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\t\tconst Section = ( { type, rows } ) => {\n\t\t\tif ( ! rows.length ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst Tag = `t${ type }`;\n\n\t\t\treturn (\n\t\t\t\t<Tag>\n\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\t\t\ttag,\n\t\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\t\t\t\tcolspan,\n\t\t\t\t\t\t\t\t\t\trowspan,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\tconst cellClasses = classnames( {\n\t\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\tcellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t? cellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdata-align={ align }\n\t\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\t\ttag === 'th' ? scope : undefined\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tcolSpan={ colspan }\n\t\t\t\t\t\t\t\t\t\t\trowSpan={ rowspan }\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</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</Tag>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save() }>\n\t\t\t\t<table\n\t\t\t\t\tclassName={ classes === '' ? undefined : classes }\n\t\t\t\t\tstyle={ { ...colorProps.style, ...borderProps.style } }\n\t\t\t\t>\n\t\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t\t</table>\n\t\t\t\t{ hasCaption && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n// In #41140 support was added to global styles for caption elements which\n// added a `wp-element-caption` classname to the embed figcaption element.\nconst v3Query = {\n\tcontent: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t},\n\ttag: {\n\t\ttype: 'string',\n\t\tdefault: 'td',\n\t\tsource: 'tag',\n\t},\n\tscope: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'scope',\n\t},\n\talign: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'data-align',\n\t},\n};\n\nconst v3 = {\n\tattributes: {\n\t\thasFixedLayout: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\tdefault: '',\n\t\t},\n\t\thead: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'thead tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v3Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbody: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tbody tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v3Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfoot: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tfoot tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v3Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\tcolor: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tgradients: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tmargin: true,\n\t\t\tpadding: true,\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalLetterSpacing: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tcolor: true,\n\t\t\tstyle: true,\n\t\t\twidth: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tstyle: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalSelector: '.wp-block-table > table',\n\t},\n\tsave( { attributes } ) {\n\t\tconst { hasFixedLayout, head, body, foot, caption } = attributes;\n\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\tif ( isEmpty ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames(\n\t\t\tcolorProps.className,\n\t\t\tborderProps.className,\n\t\t\t{\n\t\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t}\n\t\t);\n\n\t\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\t\tconst Section = ( { type, rows } ) => {\n\t\t\tif ( ! rows.length ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst Tag = `t${ type }`;\n\n\t\t\treturn (\n\t\t\t\t<Tag>\n\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t{ content, tag, scope, align },\n\t\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\tconst cellClasses = classnames( {\n\t\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\tcellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t? cellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdata-align={ align }\n\t\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\t\ttag === 'th' ? scope : undefined\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) }\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</Tag>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save() }>\n\t\t\t\t<table\n\t\t\t\t\tclassName={ classes === '' ? undefined : classes }\n\t\t\t\t\tstyle={ { ...colorProps.style, ...borderProps.style } }\n\t\t\t\t>\n\t\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t\t</table>\n\t\t\t\t{ hasCaption && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n// Deprecation migrating table block to use colors block support feature.\nconst v2Query = {\n\tcontent: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t},\n\ttag: {\n\t\ttype: 'string',\n\t\tdefault: 'td',\n\t\tsource: 'tag',\n\t},\n\tscope: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'scope',\n\t},\n\talign: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'data-align',\n\t},\n};\n\nconst v2 = {\n\tattributes: {\n\t\thasFixedLayout: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\tdefault: '',\n\t\t},\n\t\thead: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'thead tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v2Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbody: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tbody tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v2Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfoot: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tfoot tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v2Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\t__experimentalSelector: '.wp-block-table > table',\n\t},\n\tsave: ( { attributes } ) => {\n\t\tconst { hasFixedLayout, head, body, foot, backgroundColor, caption } =\n\t\t\tattributes;\n\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\tif ( isEmpty ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst backgroundClass = getColorClassName(\n\t\t\t'background-color',\n\t\t\tbackgroundColor\n\t\t);\n\n\t\tconst classes = classnames( backgroundClass, {\n\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t'has-background': !! backgroundClass,\n\t\t} );\n\n\t\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\t\tconst Section = ( { type, rows } ) => {\n\t\t\tif ( ! rows.length ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst Tag = `t${ type }`;\n\n\t\t\treturn (\n\t\t\t\t<Tag>\n\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t{ content, tag, scope, align },\n\t\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\tconst cellClasses = classnames( {\n\t\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\tcellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t? cellClasses\n\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdata-align={ align }\n\t\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\t\ttag === 'th' ? scope : undefined\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) }\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</Tag>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save() }>\n\t\t\t\t<table className={ classes === '' ? undefined : classes }>\n\t\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t\t</table>\n\t\t\t\t{ hasCaption && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n\tisEligible: ( attributes ) => {\n\t\treturn (\n\t\t\tattributes.backgroundColor &&\n\t\t\tattributes.backgroundColor in oldColors &&\n\t\t\t! attributes.style\n\t\t);\n\t},\n\n\t// This version is the first to introduce the style attribute to the\n\t// table block. As a result, we'll explicitly override that.\n\tmigrate: ( attributes ) => {\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tbackgroundColor: undefined,\n\t\t\tstyle: {\n\t\t\t\tcolor: {\n\t\t\t\t\tbackground: oldColors[ attributes.backgroundColor ],\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t},\n};\n\nconst v1Query = {\n\tcontent: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t},\n\ttag: {\n\t\ttype: 'string',\n\t\tdefault: 'td',\n\t\tsource: 'tag',\n\t},\n\tscope: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tattribute: 'scope',\n\t},\n};\n\nconst v1 = {\n\tattributes: {\n\t\thasFixedLayout: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\thead: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'thead tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v1Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbody: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tbody tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v1Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfoot: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'tfoot tr',\n\t\t\tquery: {\n\t\t\t\tcells: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tdefault: [],\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\tquery: v1Query,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst { hasFixedLayout, head, body, foot, backgroundColor } =\n\t\t\tattributes;\n\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\tif ( isEmpty ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst backgroundClass = getColorClassName(\n\t\t\t'background-color',\n\t\t\tbackgroundColor\n\t\t);\n\n\t\tconst classes = classnames( backgroundClass, {\n\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t'has-background': !! backgroundClass,\n\t\t} );\n\n\t\tconst Section = ( { type, rows } ) => {\n\t\t\tif ( ! rows.length ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst Tag = `t${ type }`;\n\n\t\t\treturn (\n\t\t\t\t<Tag>\n\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t( { content, tag, scope }, cellIndex ) => (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\ttag === 'th' ? scope : undefined\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</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</Tag>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<table className={ classes }>\n\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t</table>\n\t\t);\n\t},\n};\n\n/**\n * New deprecations need to be placed first\n * for them to have higher priority.\n *\n * Old deprecations may need to be updated as well.\n *\n * See block-deprecation.md\n */\nexport default [ v4, v3, v2, v1 ];\n"],"mappings":"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"}
@@ -29,7 +29,7 @@ const metadata = exports.metadata = {
29
29
  attributes: {
30
30
  hasFixedLayout: {
31
31
  type: "boolean",
32
- "default": false
32
+ "default": true
33
33
  },
34
34
  caption: {
35
35
  type: "rich-text",
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = TemplatePartEdit;
8
8
  var _react = require("react");
9
+ var _blocks = require("@wordpress/blocks");
9
10
  var _data = require("@wordpress/data");
10
11
  var _blockEditor = require("@wordpress/block-editor");
11
12
  var _components = require("@wordpress/components");
@@ -19,7 +20,6 @@ var _selectionModal = _interopRequireDefault(require("./selection-modal"));
19
20
  var _advancedControls = require("./advanced-controls");
20
21
  var _innerBlocks = _interopRequireDefault(require("./inner-blocks"));
21
22
  var _createTemplatePartId = require("./utils/create-template-part-id");
22
- var _mapTemplatePartToBlockPattern = require("./utils/map-template-part-to-block-pattern");
23
23
  var _hooks = require("./utils/hooks");
24
24
  /**
25
25
  * WordPress dependencies
@@ -32,16 +32,16 @@ var _hooks = require("./utils/hooks");
32
32
  function ReplaceButton({
33
33
  isEntityAvailable,
34
34
  area,
35
- clientId,
36
35
  templatePartId,
37
36
  isTemplatePartSelectionOpen,
38
37
  setIsTemplatePartSelectionOpen
39
38
  }) {
39
+ // This hook fetches patterns, so don't run it unconditionally in the main
40
+ // edit function!
40
41
  const {
41
42
  templateParts
42
43
  } = (0, _hooks.useAlternativeTemplateParts)(area, templatePartId);
43
- const blockPatterns = (0, _hooks.useAlternativeBlockPatterns)(area, clientId);
44
- const hasReplacements = !!templateParts.length || !!blockPatterns.length;
44
+ const hasReplacements = !!templateParts.length;
45
45
  const canReplace = isEntityAvailable && hasReplacements && (area === 'header' || area === 'footer');
46
46
  if (!canReplace) {
47
47
  return null;
@@ -55,19 +55,28 @@ function ReplaceButton({
55
55
  }, (0, _i18n.__)('Replace'));
56
56
  }
57
57
  function TemplatesList({
58
- availableTemplates,
58
+ area,
59
+ clientId,
60
+ isEntityAvailable,
59
61
  onSelect
60
62
  }) {
61
- const shownTemplates = (0, _compose.useAsyncList)(availableTemplates);
62
- if (!availableTemplates) {
63
+ // This hook fetches patterns, so don't run it unconditionally in the main
64
+ // edit function!
65
+ const blockPatterns = (0, _hooks.useAlternativeBlockPatterns)(area, clientId);
66
+ const canReplace = isEntityAvailable && !!blockPatterns.length && (area === 'header' || area === 'footer');
67
+ const shownTemplates = (0, _compose.useAsyncList)(blockPatterns);
68
+ if (!canReplace) {
63
69
  return null;
64
70
  }
65
- return (0, _react.createElement)(_blockEditor.__experimentalBlockPatternsList, {
71
+ return (0, _react.createElement)(_components.PanelBody, {
72
+ title: (0, _i18n.__)('Design')
73
+ }, (0, _react.createElement)(_blockEditor.__experimentalBlockPatternsList, {
66
74
  label: (0, _i18n.__)('Templates'),
67
- blockPatterns: availableTemplates,
75
+ blockPatterns: blockPatterns,
68
76
  shownPatterns: shownTemplates,
69
- onClickPattern: onSelect
70
- });
77
+ onClickPattern: onSelect,
78
+ showTitle: false
79
+ }));
71
80
  }
72
81
  function TemplatePartEdit({
73
82
  attributes,
@@ -77,6 +86,9 @@ function TemplatePartEdit({
77
86
  const {
78
87
  createSuccessNotice
79
88
  } = (0, _data.useDispatch)(_notices.store);
89
+ const {
90
+ editEntityRecord
91
+ } = (0, _data.useDispatch)(_coreData.store);
80
92
  const currentTheme = (0, _data.useSelect)(select => select(_coreData.store).getCurrentTheme()?.stylesheet, []);
81
93
  const {
82
94
  slug,
@@ -91,14 +103,17 @@ function TemplatePartEdit({
91
103
  isResolved,
92
104
  hasInnerBlocks,
93
105
  isMissing,
94
- area
106
+ area,
107
+ onNavigateToEntityRecord,
108
+ title
95
109
  } = (0, _data.useSelect)(select => {
96
110
  const {
97
111
  getEditedEntityRecord,
98
112
  hasFinishedResolution
99
113
  } = select(_coreData.store);
100
114
  const {
101
- getBlockCount
115
+ getBlockCount,
116
+ getSettings
102
117
  } = select(_blockEditor.store);
103
118
  const getEntityArgs = ['postType', 'wp_template_part', templatePartId];
104
119
  const entityRecord = templatePartId ? getEditedEntityRecord(...getEntityArgs) : null;
@@ -108,21 +123,26 @@ function TemplatePartEdit({
108
123
  hasInnerBlocks: getBlockCount(clientId) > 0,
109
124
  isResolved: hasResolvedEntity,
110
125
  isMissing: hasResolvedEntity && (!entityRecord || Object.keys(entityRecord).length === 0),
111
- area: _area
126
+ area: _area,
127
+ onNavigateToEntityRecord: getSettings().onNavigateToEntityRecord,
128
+ title: entityRecord?.title
112
129
  };
113
130
  }, [templatePartId, attributes.area, clientId]);
114
- const {
115
- templateParts
116
- } = (0, _hooks.useAlternativeTemplateParts)(area, templatePartId);
117
- const blockPatterns = (0, _hooks.useAlternativeBlockPatterns)(area, clientId);
118
- const hasReplacements = !!templateParts.length || !!blockPatterns.length;
119
131
  const areaObject = (0, _hooks.useTemplatePartArea)(area);
120
132
  const blockProps = (0, _blockEditor.useBlockProps)();
121
133
  const isPlaceholder = !slug;
122
134
  const isEntityAvailable = !isPlaceholder && !isMissing && isResolved;
123
135
  const TagName = tagName || areaObject.tagName;
124
- const canReplace = isEntityAvailable && hasReplacements && (area === 'header' || area === 'footer');
125
- const createFromBlocks = (0, _hooks.useCreateTemplatePartFromBlocks)(area, setAttributes);
136
+ const onPatternSelect = async pattern => {
137
+ await editEntityRecord('postType', 'wp_template_part', templatePartId, {
138
+ blocks: pattern.blocks,
139
+ content: (0, _blocks.serialize)(pattern.blocks)
140
+ });
141
+ createSuccessNotice((0, _i18n.sprintf)( /* translators: %s: template part title. */
142
+ (0, _i18n.__)('Template Part "%s" updated.'), title || slug), {
143
+ type: 'snackbar'
144
+ });
145
+ };
126
146
 
127
147
  // We don't want to render a missing state if we have any inner blocks.
128
148
  // A new template part is automatically created if we have any inner blocks but no entity.
@@ -137,21 +157,16 @@ function TemplatePartEdit({
137
157
  ...blockProps
138
158
  }, (0, _react.createElement)(_blockEditor.Warning, null, (0, _i18n.__)('Block cannot be rendered inside itself.')));
139
159
  }
140
- const partsAsPatterns = templateParts.map(templatePart => (0, _mapTemplatePartToBlockPattern.mapTemplatePartToBlockPattern)(templatePart));
141
- const onTemplatePartSelect = templatePart => {
142
- setAttributes({
143
- slug: templatePart.slug,
144
- theme: templatePart.theme,
145
- area: undefined
146
- });
147
- createSuccessNotice((0, _i18n.sprintf)( /* translators: %s: template part title. */
148
- (0, _i18n.__)('Template Part "%s" replaceed.'), templatePart.title?.rendered || templatePart.slug), {
149
- type: 'snackbar'
150
- });
151
- };
152
160
  return (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_blockEditor.RecursionProvider, {
153
161
  uniqueId: templatePartId
154
- }, (0, _react.createElement)(_blockEditor.InspectorControls, {
162
+ }, isEntityAvailable && onNavigateToEntityRecord && (0, _react.createElement)(_blockEditor.BlockControls, {
163
+ group: "other"
164
+ }, (0, _react.createElement)(_components.ToolbarButton, {
165
+ onClick: () => onNavigateToEntityRecord({
166
+ postId: templatePartId,
167
+ postType: 'wp_template_part'
168
+ })
169
+ }, (0, _i18n.__)('Edit'))), (0, _react.createElement)(_blockEditor.InspectorControls, {
155
170
  group: "advanced"
156
171
  }, (0, _react.createElement)(_advancedControls.TemplatePartAdvancedControls, {
157
172
  tagName: tagName,
@@ -184,19 +199,12 @@ function TemplatePartEdit({
184
199
  isTemplatePartSelectionOpen,
185
200
  setIsTemplatePartSelectionOpen
186
201
  });
187
- }), canReplace && (partsAsPatterns.length > 0 || blockPatterns.length > 0) && (0, _react.createElement)(_blockEditor.InspectorControls, null, (0, _react.createElement)(_components.PanelBody, {
188
- title: (0, _i18n.__)('Replace')
189
- }, (0, _react.createElement)(TemplatesList, {
190
- availableTemplates: partsAsPatterns,
191
- onSelect: pattern => {
192
- onTemplatePartSelect(pattern.templatePart);
193
- }
194
- }), (0, _react.createElement)(TemplatesList, {
195
- availableTemplates: blockPatterns,
196
- onSelect: (pattern, blocks) => {
197
- createFromBlocks(blocks, pattern.title);
198
- }
199
- }))), isEntityAvailable && (0, _react.createElement)(_innerBlocks.default, {
202
+ }), (0, _react.createElement)(_blockEditor.InspectorControls, null, (0, _react.createElement)(TemplatesList, {
203
+ area: area,
204
+ clientId: clientId,
205
+ isEntityAvailable: isEntityAvailable,
206
+ onSelect: pattern => onPatternSelect(pattern)
207
+ })), isEntityAvailable && (0, _react.createElement)(_innerBlocks.default, {
200
208
  tagName: TagName,
201
209
  blockProps: blockProps,
202
210
  postId: templatePartId,
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_blockEditor","_components","_compose","_i18n","_coreData","_element","_notices","_placeholder","_interopRequireDefault","_selectionModal","_advancedControls","_innerBlocks","_createTemplatePartId","_mapTemplatePartToBlockPattern","_hooks","ReplaceButton","isEntityAvailable","area","clientId","templatePartId","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","templateParts","useAlternativeTemplateParts","blockPatterns","useAlternativeBlockPatterns","hasReplacements","length","canReplace","_react","createElement","MenuItem","onClick","__","TemplatesList","availableTemplates","onSelect","shownTemplates","useAsyncList","__experimentalBlockPatternsList","label","shownPatterns","onClickPattern","TemplatePartEdit","attributes","setAttributes","createSuccessNotice","useDispatch","noticesStore","currentTheme","useSelect","select","coreStore","getCurrentTheme","stylesheet","slug","theme","tagName","layout","createTemplatePartId","hasAlreadyRendered","useHasRecursion","useState","isResolved","hasInnerBlocks","isMissing","getEditedEntityRecord","hasFinishedResolution","getBlockCount","blockEditorStore","getEntityArgs","entityRecord","_area","hasResolvedEntity","Object","keys","areaObject","useTemplatePartArea","blockProps","useBlockProps","isPlaceholder","TagName","createFromBlocks","useCreateTemplatePartFromBlocks","Warning","sprintf","partsAsPatterns","map","templatePart","mapTemplatePartToBlockPattern","onTemplatePartSelect","undefined","title","rendered","type","Fragment","RecursionProvider","uniqueId","InspectorControls","group","TemplatePartAdvancedControls","defaultWrapper","default","onOpenSelectionModal","BlockSettingsMenuControls","selectedClientIds","PanelBody","pattern","blocks","postId","Spinner","Modal","overlayClassName","toLowerCase","onRequestClose","isFullScreen","onClose"],"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tInspectorControls,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { PanelBody, Spinner, Modal, MenuItem } from '@wordpress/components';\nimport { useAsyncList } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\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 { mapTemplatePartToBlockPattern } from './utils/map-template-part-to-block-pattern';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n\tuseCreateTemplatePartFromBlocks,\n} from './utils/hooks';\n\nfunction ReplaceButton( {\n\tisEntityAvailable,\n\tarea,\n\tclientId,\n\ttemplatePartId,\n\tisTemplatePartSelectionOpen,\n\tsetIsTemplatePartSelectionOpen,\n} ) {\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 canReplace =\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\tif ( ! canReplace ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () => {\n\t\t\t\tsetIsTemplatePartSelectionOpen( true );\n\t\t\t} }\n\t\t\taria-expanded={ isTemplatePartSelectionOpen }\n\t\t\taria-haspopup=\"dialog\"\n\t\t>\n\t\t\t{ __( 'Replace' ) }\n\t\t</MenuItem>\n\t);\n}\n\nfunction TemplatesList( { availableTemplates, onSelect } ) {\n\tconst shownTemplates = useAsyncList( availableTemplates );\n\n\tif ( ! availableTemplates ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tlabel={ __( 'Templates' ) }\n\t\t\tblockPatterns={ availableTemplates }\n\t\t\tshownPatterns={ shownTemplates }\n\t\t\tonClickPattern={ onSelect }\n\t\t/>\n\t);\n}\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst currentTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme()?.stylesheet,\n\t\t[]\n\t);\n\tconst { slug, theme = currentTheme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\tconst { isResolved, hasInnerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlockCount } = 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\thasInnerBlocks: getBlockCount( clientId ) > 0,\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing:\n\t\t\t\t\thasResolvedEntity &&\n\t\t\t\t\t( ! entityRecord ||\n\t\t\t\t\t\tObject.keys( entityRecord ).length === 0 ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, attributes.area, clientId ]\n\t);\n\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\tconst canReplace =\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\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\t! hasInnerBlocks &&\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\tconst partsAsPatterns = templateParts.map( ( templatePart ) =>\n\t\tmapTemplatePartToBlockPattern( templatePart )\n\t);\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\" replaceed.' ),\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};\n\n\treturn (\n\t\t<>\n\t\t\t<RecursionProvider uniqueId={ templatePartId }>\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t\t\thasInnerBlocks={ hasInnerBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\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<BlockSettingsMenuControls>\n\t\t\t\t\t{ ( { selectedClientIds } ) => {\n\t\t\t\t\t\t// Only enable for single selection that matches the current block.\n\t\t\t\t\t\t// Ensures menu item doesn't render multiple times.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! (\n\t\t\t\t\t\t\t\tselectedClientIds.length === 1 &&\n\t\t\t\t\t\t\t\tclientId === selectedClientIds[ 0 ]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<ReplaceButton\n\t\t\t\t\t\t\t\t{ ...{\n\t\t\t\t\t\t\t\t\tisEntityAvailable,\n\t\t\t\t\t\t\t\t\tarea,\n\t\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\t\ttemplatePartId,\n\t\t\t\t\t\t\t\t\tisTemplatePartSelectionOpen,\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t</BlockSettingsMenuControls>\n\n\t\t\t\t{ canReplace &&\n\t\t\t\t\t( partsAsPatterns.length > 0 ||\n\t\t\t\t\t\tblockPatterns.length > 0 ) && (\n\t\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t\t<PanelBody title={ __( 'Replace' ) }>\n\t\t\t\t\t\t\t\t<TemplatesList\n\t\t\t\t\t\t\t\t\tavailableTemplates={ partsAsPatterns }\n\t\t\t\t\t\t\t\t\tonSelect={ ( pattern ) => {\n\t\t\t\t\t\t\t\t\t\tonTemplatePartSelect(\n\t\t\t\t\t\t\t\t\t\t\tpattern.templatePart\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\t<TemplatesList\n\t\t\t\t\t\t\t\t\tavailableTemplates={ blockPatterns }\n\t\t\t\t\t\t\t\t\tonSelect={ ( pattern, blocks ) => {\n\t\t\t\t\t\t\t\t\t\tcreateFromBlocks(\n\t\t\t\t\t\t\t\t\t\t\tblocks,\n\t\t\t\t\t\t\t\t\t\t\tpattern.title\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</PanelBody>\n\t\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t) }\n\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={ hasInnerBlocks }\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\tisFullScreen\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"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAUA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AAKA,IAAAQ,YAAA,GAAAC,sBAAA,CAAAT,OAAA;AACA,IAAAU,eAAA,GAAAD,sBAAA,CAAAT,OAAA;AACA,IAAAW,iBAAA,GAAAX,OAAA;AACA,IAAAY,YAAA,GAAAH,sBAAA,CAAAT,OAAA;AACA,IAAAa,qBAAA,GAAAb,OAAA;AACA,IAAAc,8BAAA,GAAAd,OAAA;AACA,IAAAe,MAAA,GAAAf,OAAA;AA9BA;AACA;AACA;;AAmBA;AACA;AACA;;AAcA,SAASgB,aAAaA,CAAE;EACvBC,iBAAiB;EACjBC,IAAI;EACJC,QAAQ;EACRC,cAAc;EACdC,2BAA2B;EAC3BC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAC,kCAA2B,EACpDN,IAAI,EACJE,cACD,CAAC;EACD,MAAMK,aAAa,GAAG,IAAAC,kCAA2B,EAAER,IAAI,EAAEC,QAAS,CAAC;EACnE,MAAMQ,eAAe,GAAG,CAAC,CAAEJ,aAAa,CAACK,MAAM,IAAI,CAAC,CAAEH,aAAa,CAACG,MAAM;EAC1E,MAAMC,UAAU,GACfZ,iBAAiB,IACjBU,eAAe,KACbT,IAAI,KAAK,QAAQ,IAAIA,IAAI,KAAK,QAAQ,CAAE;EAE3C,IAAK,CAAEW,UAAU,EAAG;IACnB,OAAO,IAAI;EACZ;EAEA,OACC,IAAAC,MAAA,CAAAC,aAAA,EAAC7B,WAAA,CAAA8B,QAAQ;IACRC,OAAO,EAAGA,CAAA,KAAM;MACfX,8BAA8B,CAAE,IAAK,CAAC;IACvC,CAAG;IACH,iBAAgBD,2BAA6B;IAC7C,iBAAc;EAAQ,GAEpB,IAAAa,QAAE,EAAE,SAAU,CACP,CAAC;AAEb;AAEA,SAASC,aAAaA,CAAE;EAAEC,kBAAkB;EAAEC;AAAS,CAAC,EAAG;EAC1D,MAAMC,cAAc,GAAG,IAAAC,qBAAY,EAAEH,kBAAmB,CAAC;EAEzD,IAAK,CAAEA,kBAAkB,EAAG;IAC3B,OAAO,IAAI;EACZ;EAEA,OACC,IAAAN,MAAA,CAAAC,aAAA,EAAC9B,YAAA,CAAAuC,+BAAiB;IACjBC,KAAK,EAAG,IAAAP,QAAE,EAAE,WAAY,CAAG;IAC3BT,aAAa,EAAGW,kBAAoB;IACpCM,aAAa,EAAGJ,cAAgB;IAChCK,cAAc,EAAGN;EAAU,CAC3B,CAAC;AAEJ;AAEe,SAASO,gBAAgBA,CAAE;EACzCC,UAAU;EACVC,aAAa;EACb3B;AACD,CAAC,EAAG;EACH,MAAM;IAAE4B;EAAoB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,cAAa,CAAC;EAC3D,MAAMC,YAAY,GAAG,IAAAC,eAAS,EAC3BC,MAAM,IAAMA,MAAM,CAAEC,eAAU,CAAC,CAACC,eAAe,CAAC,CAAC,EAAEC,UAAU,EAC/D,EACD,CAAC;EACD,MAAM;IAAEC,IAAI;IAAEC,KAAK,GAAGP,YAAY;IAAEQ,OAAO;IAAEC,MAAM,GAAG,CAAC;EAAE,CAAC,GAAGd,UAAU;EACvE,MAAMzB,cAAc,GAAG,IAAAwC,0CAAoB,EAAEH,KAAK,EAAED,IAAK,CAAC;EAC1D,MAAMK,kBAAkB,GAAG,IAAAC,4BAAe,EAAE1C,cAAe,CAAC;EAC5D,MAAM,CAAEC,2BAA2B,EAAEC,8BAA8B,CAAE,GACpE,IAAAyC,iBAAQ,EAAE,KAAM,CAAC;EAElB,MAAM;IAAEC,UAAU;IAAEC,cAAc;IAAEC,SAAS;IAAEhD;EAAK,CAAC,GAAG,IAAAiC,eAAS,EAC9DC,MAAM,IAAM;IACb,MAAM;MAAEe,qBAAqB;MAAEC;IAAsB,CAAC,GACrDhB,MAAM,CAAEC,eAAU,CAAC;IACpB,MAAM;MAAEgB;IAAc,CAAC,GAAGjB,MAAM,CAAEkB,kBAAiB,CAAC;IAEpD,MAAMC,aAAa,GAAG,CACrB,UAAU,EACV,kBAAkB,EAClBnD,cAAc,CACd;IACD,MAAMoD,YAAY,GAAGpD,cAAc,GAChC+C,qBAAqB,CAAE,GAAGI,aAAc,CAAC,GACzC,IAAI;IACP,MAAME,KAAK,GAAGD,YAAY,EAAEtD,IAAI,IAAI2B,UAAU,CAAC3B,IAAI;IACnD,MAAMwD,iBAAiB,GAAGtD,cAAc,GACrCgD,qBAAqB,CACrB,uBAAuB,EACvBG,aACA,CAAC,GACD,KAAK;IAER,OAAO;MACNN,cAAc,EAAEI,aAAa,CAAElD,QAAS,CAAC,GAAG,CAAC;MAC7C6C,UAAU,EAAEU,iBAAiB;MAC7BR,SAAS,EACRQ,iBAAiB,KACf,CAAEF,YAAY,IACfG,MAAM,CAACC,IAAI,CAAEJ,YAAa,CAAC,CAAC5C,MAAM,KAAK,CAAC,CAAE;MAC5CV,IAAI,EAAEuD;IACP,CAAC;EACF,CAAC,EACD,CAAErD,cAAc,EAAEyB,UAAU,CAAC3B,IAAI,EAAEC,QAAQ,CAC5C,CAAC;EAED,MAAM;IAAEI;EAAc,CAAC,GAAG,IAAAC,kCAA2B,EACpDN,IAAI,EACJE,cACD,CAAC;EACD,MAAMK,aAAa,GAAG,IAAAC,kCAA2B,EAAER,IAAI,EAAEC,QAAS,CAAC;EACnE,MAAMQ,eAAe,GAAG,CAAC,CAAEJ,aAAa,CAACK,MAAM,IAAI,CAAC,CAAEH,aAAa,CAACG,MAAM;EAC1E,MAAMiD,UAAU,GAAG,IAAAC,0BAAmB,EAAE5D,IAAK,CAAC;EAC9C,MAAM6D,UAAU,GAAG,IAAAC,0BAAa,EAAC,CAAC;EAClC,MAAMC,aAAa,GAAG,CAAEzB,IAAI;EAC5B,MAAMvC,iBAAiB,GAAG,CAAEgE,aAAa,IAAI,CAAEf,SAAS,IAAIF,UAAU;EACtE,MAAMkB,OAAO,GAAGxB,OAAO,IAAImB,UAAU,CAACnB,OAAO;EAE7C,MAAM7B,UAAU,GACfZ,iBAAiB,IACjBU,eAAe,KACbT,IAAI,KAAK,QAAQ,IAAIA,IAAI,KAAK,QAAQ,CAAE;EAE3C,MAAMiE,gBAAgB,GAAG,IAAAC,sCAA+B,EACvDlE,IAAI,EACJ4B,aACD,CAAC;;EAED;EACA;EACA,IACC,CAAEmB,cAAc,KACZT,IAAI,IAAI,CAAEC,KAAK,IAAQD,IAAI,IAAIU,SAAW,CAAE,EAC/C;IACD,OACC,IAAApC,MAAA,CAAAC,aAAA,EAACmD,OAAO;MAAA,GAAMH;IAAU,GACvB,IAAAjD,MAAA,CAAAC,aAAA,EAAC9B,YAAA,CAAAoF,OAAO,QACL,IAAAC,aAAO,GACR;IACA,IAAApD,QAAE,EACD,sDACD,CAAC,EACDsB,IACD,CACQ,CACD,CAAC;EAEZ;EAEA,IAAKvC,iBAAiB,IAAI4C,kBAAkB,EAAG;IAC9C,OACC,IAAA/B,MAAA,CAAAC,aAAA,EAACmD,OAAO;MAAA,GAAMH;IAAU,GACvB,IAAAjD,MAAA,CAAAC,aAAA,EAAC9B,YAAA,CAAAoF,OAAO,QACL,IAAAnD,QAAE,EAAE,yCAA0C,CACxC,CACD,CAAC;EAEZ;EAEA,MAAMqD,eAAe,GAAGhE,aAAa,CAACiE,GAAG,CAAIC,YAAY,IACxD,IAAAC,4DAA6B,EAAED,YAAa,CAC7C,CAAC;EAED,MAAME,oBAAoB,GAAKF,YAAY,IAAM;IAChD3C,aAAa,CAAE;MACdU,IAAI,EAAEiC,YAAY,CAACjC,IAAI;MACvBC,KAAK,EAAEgC,YAAY,CAAChC,KAAK;MACzBvC,IAAI,EAAE0E;IACP,CAAE,CAAC;IACH7C,mBAAmB,CAClB,IAAAuC,aAAO,GACN;IACA,IAAApD,QAAE,EAAE,+BAAgC,CAAC,EACrCuD,YAAY,CAACI,KAAK,EAAEC,QAAQ,IAAIL,YAAY,CAACjC,IAC9C,CAAC,EACD;MACCuC,IAAI,EAAE;IACP,CACD,CAAC;EACF,CAAC;EAED,OACC,IAAAjE,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAkE,QAAA,QACC,IAAAlE,MAAA,CAAAC,aAAA,EAAC9B,YAAA,CAAAgG,iBAAiB;IAACC,QAAQ,EAAG9E;EAAgB,GAC7C,IAAAU,MAAA,CAAAC,aAAA,EAAC9B,YAAA,CAAAkG,iBAAiB;IAACC,KAAK,EAAC;EAAU,GAClC,IAAAtE,MAAA,CAAAC,aAAA,EAACpB,iBAAA,CAAA0F,4BAA4B;IAC5B3C,OAAO,EAAGA,OAAS;IACnBZ,aAAa,EAAGA,aAAe;IAC/B7B,iBAAiB,EAAGA,iBAAmB;IACvCG,cAAc,EAAGA,cAAgB;IACjCkF,cAAc,EAAGzB,UAAU,CAACnB,OAAS;IACrCO,cAAc,EAAGA;EAAgB,CACjC,CACiB,CAAC,EAClBgB,aAAa,IACd,IAAAnD,MAAA,CAAAC,aAAA,EAACmD,OAAO;IAAA,GAAMH;EAAU,GACvB,IAAAjD,MAAA,CAAAC,aAAA,EAACvB,YAAA,CAAA+F,OAAuB;IACvBrF,IAAI,EAAG2B,UAAU,CAAC3B,IAAM;IACxBE,cAAc,EAAGA,cAAgB;IACjCD,QAAQ,EAAGA,QAAU;IACrB2B,aAAa,EAAGA,aAAe;IAC/B0D,oBAAoB,EAAGA,CAAA,KACtBlF,8BAA8B,CAAE,IAAK;EACrC,CACD,CACO,CACT,EACD,IAAAQ,MAAA,CAAAC,aAAA,EAAC9B,YAAA,CAAAwG,yBAAyB,QACvB,CAAE;IAAEC;EAAkB,CAAC,KAAM;IAC9B;IACA;IACA,IACC,EACCA,iBAAiB,CAAC9E,MAAM,KAAK,CAAC,IAC9BT,QAAQ,KAAKuF,iBAAiB,CAAE,CAAC,CAAE,CACnC,EACA;MACD,OAAO,IAAI;IACZ;IAEA,OACC,IAAA5E,MAAA,CAAAC,aAAA,EAACf,aAAa;MAEZC,iBAAiB;MACjBC,IAAI;MACJC,QAAQ;MACRC,cAAc;MACdC,2BAA2B;MAC3BC;IAA8B,CAE/B,CAAC;EAEJ,CAC0B,CAAC,EAE1BO,UAAU,KACT0D,eAAe,CAAC3D,MAAM,GAAG,CAAC,IAC3BH,aAAa,CAACG,MAAM,GAAG,CAAC,CAAE,IAC1B,IAAAE,MAAA,CAAAC,aAAA,EAAC9B,YAAA,CAAAkG,iBAAiB,QACjB,IAAArE,MAAA,CAAAC,aAAA,EAAC7B,WAAA,CAAAyG,SAAS;IAACd,KAAK,EAAG,IAAA3D,QAAE,EAAE,SAAU;EAAG,GACnC,IAAAJ,MAAA,CAAAC,aAAA,EAACI,aAAa;IACbC,kBAAkB,EAAGmD,eAAiB;IACtClD,QAAQ,EAAKuE,OAAO,IAAM;MACzBjB,oBAAoB,CACnBiB,OAAO,CAACnB,YACT,CAAC;IACF;EAAG,CACH,CAAC,EACF,IAAA3D,MAAA,CAAAC,aAAA,EAACI,aAAa;IACbC,kBAAkB,EAAGX,aAAe;IACpCY,QAAQ,EAAGA,CAAEuE,OAAO,EAAEC,MAAM,KAAM;MACjC1B,gBAAgB,CACf0B,MAAM,EACND,OAAO,CAACf,KACT,CAAC;IACF;EAAG,CACH,CACS,CACO,CACnB,EAEA5E,iBAAiB,IAClB,IAAAa,MAAA,CAAAC,aAAA,EAACnB,YAAA,CAAA2F,OAAuB;IACvB7C,OAAO,EAAGwB,OAAS;IACnBH,UAAU,EAAGA,UAAY;IACzB+B,MAAM,EAAG1F,cAAgB;IACzB6C,cAAc,EAAGA,cAAgB;IACjCN,MAAM,EAAGA;EAAQ,CACjB,CACD,EACC,CAAEsB,aAAa,IAAI,CAAEjB,UAAU,IAChC,IAAAlC,MAAA,CAAAC,aAAA,EAACmD,OAAO;IAAA,GAAMH;EAAU,GACvB,IAAAjD,MAAA,CAAAC,aAAA,EAAC7B,WAAA,CAAA6G,OAAO,MAAE,CACF,CAEQ,CAAC,EAClB1F,2BAA2B,IAC5B,IAAAS,MAAA,CAAAC,aAAA,EAAC7B,WAAA,CAAA8G,KAAK;IACLC,gBAAgB,EAAC,6CAA6C;IAC9DpB,KAAK,EAAG,IAAAP,aAAO;IACd;IACA,IAAApD,QAAE,EAAE,aAAc,CAAC,EACnB2C,UAAU,CAACpC,KAAK,CAACyE,WAAW,CAAC,CAC9B,CAAG;IACHC,cAAc,EAAGA,CAAA,KAChB7F,8BAA8B,CAAE,KAAM,CACtC;IACD8F,YAAY;EAAA,GAEZ,IAAAtF,MAAA,CAAAC,aAAA,EAACrB,eAAA,CAAA6F,OAA0B;IAC1BnF,cAAc,EAAGA,cAAgB;IACjCD,QAAQ,EAAGA,QAAU;IACrBD,IAAI,EAAGA,IAAM;IACb4B,aAAa,EAAGA,aAAe;IAC/BuE,OAAO,EAAGA,CAAA,KACT/F,8BAA8B,CAAE,KAAM;EACtC,CACD,CACK,CAEP,CAAC;AAEL"}
1
+ {"version":3,"names":["_blocks","require","_data","_blockEditor","_components","_compose","_i18n","_coreData","_element","_notices","_placeholder","_interopRequireDefault","_selectionModal","_advancedControls","_innerBlocks","_createTemplatePartId","_hooks","ReplaceButton","isEntityAvailable","area","templatePartId","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","templateParts","useAlternativeTemplateParts","hasReplacements","length","canReplace","_react","createElement","MenuItem","onClick","__","TemplatesList","clientId","onSelect","blockPatterns","useAlternativeBlockPatterns","shownTemplates","useAsyncList","PanelBody","title","__experimentalBlockPatternsList","label","shownPatterns","onClickPattern","showTitle","TemplatePartEdit","attributes","setAttributes","createSuccessNotice","useDispatch","noticesStore","editEntityRecord","coreStore","currentTheme","useSelect","select","getCurrentTheme","stylesheet","slug","theme","tagName","layout","createTemplatePartId","hasAlreadyRendered","useHasRecursion","useState","isResolved","hasInnerBlocks","isMissing","onNavigateToEntityRecord","getEditedEntityRecord","hasFinishedResolution","getBlockCount","getSettings","blockEditorStore","getEntityArgs","entityRecord","_area","hasResolvedEntity","Object","keys","areaObject","useTemplatePartArea","blockProps","useBlockProps","isPlaceholder","TagName","onPatternSelect","pattern","blocks","content","serialize","sprintf","type","Warning","Fragment","RecursionProvider","uniqueId","BlockControls","group","ToolbarButton","postId","postType","InspectorControls","TemplatePartAdvancedControls","defaultWrapper","default","onOpenSelectionModal","BlockSettingsMenuControls","selectedClientIds","Spinner","Modal","overlayClassName","toLowerCase","onRequestClose","isFullScreen","onClose"],"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { serialize } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tInspectorControls,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tSpinner,\n\tModal,\n\tMenuItem,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useAsyncList } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\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\nfunction ReplaceButton( {\n\tisEntityAvailable,\n\tarea,\n\ttemplatePartId,\n\tisTemplatePartSelectionOpen,\n\tsetIsTemplatePartSelectionOpen,\n} ) {\n\t// This hook fetches patterns, so don't run it unconditionally in the main\n\t// edit function!\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst hasReplacements = !! templateParts.length;\n\tconst canReplace =\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\tif ( ! canReplace ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () => {\n\t\t\t\tsetIsTemplatePartSelectionOpen( true );\n\t\t\t} }\n\t\t\taria-expanded={ isTemplatePartSelectionOpen }\n\t\t\taria-haspopup=\"dialog\"\n\t\t>\n\t\t\t{ __( 'Replace' ) }\n\t\t</MenuItem>\n\t);\n}\n\nfunction TemplatesList( { area, clientId, isEntityAvailable, onSelect } ) {\n\t// This hook fetches patterns, so don't run it unconditionally in the main\n\t// edit function!\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst canReplace =\n\t\tisEntityAvailable &&\n\t\t!! blockPatterns.length &&\n\t\t( area === 'header' || area === 'footer' );\n\tconst shownTemplates = useAsyncList( blockPatterns );\n\n\tif ( ! canReplace ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Design' ) }>\n\t\t\t<BlockPatternsList\n\t\t\t\tlabel={ __( 'Templates' ) }\n\t\t\t\tblockPatterns={ blockPatterns }\n\t\t\t\tshownPatterns={ shownTemplates }\n\t\t\t\tonClickPattern={ onSelect }\n\t\t\t\tshowTitle={ false }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst currentTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme()?.stylesheet,\n\t\t[]\n\t);\n\tconst { slug, theme = currentTheme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\tconst {\n\t\tisResolved,\n\t\thasInnerBlocks,\n\t\tisMissing,\n\t\tarea,\n\t\tonNavigateToEntityRecord,\n\t\ttitle,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlockCount, getSettings } = 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\thasInnerBlocks: getBlockCount( clientId ) > 0,\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing:\n\t\t\t\t\thasResolvedEntity &&\n\t\t\t\t\t( ! entityRecord ||\n\t\t\t\t\t\tObject.keys( entityRecord ).length === 0 ),\n\t\t\t\tarea: _area,\n\t\t\t\tonNavigateToEntityRecord:\n\t\t\t\t\tgetSettings().onNavigateToEntityRecord,\n\t\t\t\ttitle: entityRecord?.title,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, attributes.area, clientId ]\n\t);\n\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\tconst onPatternSelect = async ( pattern ) => {\n\t\tawait editEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\ttemplatePartId,\n\t\t\t{\n\t\t\t\tblocks: pattern.blocks,\n\t\t\t\tcontent: serialize( pattern.blocks ),\n\t\t\t}\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\" updated.' ),\n\t\t\t\ttitle || slug\n\t\t\t),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t};\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\t! hasInnerBlocks &&\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{ isEntityAvailable && onNavigateToEntityRecord && (\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tonNavigateToEntityRecord( {\n\t\t\t\t\t\t\t\t\tpostId: templatePartId,\n\t\t\t\t\t\t\t\t\tpostType: 'wp_template_part',\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t) }\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t\t\thasInnerBlocks={ hasInnerBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\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<BlockSettingsMenuControls>\n\t\t\t\t\t{ ( { selectedClientIds } ) => {\n\t\t\t\t\t\t// Only enable for single selection that matches the current block.\n\t\t\t\t\t\t// Ensures menu item doesn't render multiple times.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! (\n\t\t\t\t\t\t\t\tselectedClientIds.length === 1 &&\n\t\t\t\t\t\t\t\tclientId === selectedClientIds[ 0 ]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<ReplaceButton\n\t\t\t\t\t\t\t\t{ ...{\n\t\t\t\t\t\t\t\t\tisEntityAvailable,\n\t\t\t\t\t\t\t\t\tarea,\n\t\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\t\ttemplatePartId,\n\t\t\t\t\t\t\t\t\tisTemplatePartSelectionOpen,\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t</BlockSettingsMenuControls>\n\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<TemplatesList\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\t\tonSelect={ ( pattern ) => onPatternSelect( pattern ) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\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={ hasInnerBlocks }\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\tisFullScreen\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"],"mappings":"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"}
@@ -8,17 +8,26 @@ var _react = require("react");
8
8
  var _coreData = require("@wordpress/core-data");
9
9
  var _blockEditor = require("@wordpress/block-editor");
10
10
  var _data = require("@wordpress/data");
11
+ var _element = require("@wordpress/element");
12
+ var _blocks = require("@wordpress/blocks");
11
13
  /**
12
14
  * WordPress dependencies
13
15
  */
14
16
 
15
- function TemplatePartInnerBlocks({
16
- postId: id,
17
- hasInnerBlocks,
18
- layout,
19
- tagName: TagName,
20
- blockProps
21
- }) {
17
+ function useRenderAppender(hasInnerBlocks) {
18
+ const blockEditingMode = (0, _blockEditor.useBlockEditingMode)();
19
+ // Disable appending when the editing mode is 'contentOnly'. This is so that the user can't
20
+ // append into a template part when editing a page in the site editor. See
21
+ // DisableNonPageContentBlocks. Ideally instead of (mis)using editing mode there would be a
22
+ // block editor API for achieving this.
23
+ if (blockEditingMode === 'contentOnly') {
24
+ return false;
25
+ }
26
+ if (!hasInnerBlocks) {
27
+ return _blockEditor.InnerBlocks.ButtonBlockAppender;
28
+ }
29
+ }
30
+ function useLayout(layout) {
22
31
  const themeSupportsLayout = (0, _data.useSelect)(select => {
23
32
  const {
24
33
  getSettings
@@ -26,7 +35,65 @@ function TemplatePartInnerBlocks({
26
35
  return getSettings()?.supportsLayout;
27
36
  }, []);
28
37
  const [defaultLayout] = (0, _blockEditor.useSettings)('layout');
29
- const usedLayout = layout?.inherit ? defaultLayout || {} : layout;
38
+ if (themeSupportsLayout) {
39
+ return layout?.inherit ? defaultLayout || {} : layout;
40
+ }
41
+ }
42
+ function NonEditableTemplatePartPreview({
43
+ postId: id,
44
+ layout,
45
+ tagName: TagName,
46
+ blockProps
47
+ }) {
48
+ (0, _blockEditor.useBlockEditingMode)('disabled');
49
+ const {
50
+ content,
51
+ editedBlocks
52
+ } = (0, _data.useSelect)(select => {
53
+ if (!id) {
54
+ return {};
55
+ }
56
+ const {
57
+ getEditedEntityRecord
58
+ } = select(_coreData.store);
59
+ const editedRecord = getEditedEntityRecord('postType', 'wp_template_part', id, {
60
+ context: 'view'
61
+ });
62
+ return {
63
+ editedBlocks: editedRecord.blocks,
64
+ content: editedRecord.content
65
+ };
66
+ }, [id]);
67
+ const blocks = (0, _element.useMemo)(() => {
68
+ if (!id) {
69
+ return undefined;
70
+ }
71
+ if (editedBlocks) {
72
+ return editedBlocks;
73
+ }
74
+ if (!content || typeof content !== 'string') {
75
+ return [];
76
+ }
77
+ return (0, _blocks.parse)(content);
78
+ }, [id, editedBlocks, content]);
79
+ const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
80
+ value: blocks,
81
+ onInput: () => {},
82
+ onChange: () => {},
83
+ renderAppender: false,
84
+ layout: useLayout(layout)
85
+ });
86
+ return (0, _react.createElement)(TagName, {
87
+ ...innerBlocksProps
88
+ });
89
+ }
90
+ function EditableTemplatePartInnerBlocks({
91
+ postId: id,
92
+ hasInnerBlocks,
93
+ layout,
94
+ tagName: TagName,
95
+ blockProps
96
+ }) {
30
97
  const [blocks, onInput, onChange] = (0, _coreData.useEntityBlockEditor)('postType', 'wp_template_part', {
31
98
  id
32
99
  });
@@ -34,11 +101,40 @@ function TemplatePartInnerBlocks({
34
101
  value: blocks,
35
102
  onInput,
36
103
  onChange,
37
- renderAppender: hasInnerBlocks ? undefined : _blockEditor.InnerBlocks.ButtonBlockAppender,
38
- layout: themeSupportsLayout ? usedLayout : undefined
104
+ renderAppender: useRenderAppender(hasInnerBlocks),
105
+ layout: useLayout(layout)
39
106
  });
40
107
  return (0, _react.createElement)(TagName, {
41
108
  ...innerBlocksProps
42
109
  });
43
110
  }
111
+ function TemplatePartInnerBlocks({
112
+ postId: id,
113
+ hasInnerBlocks,
114
+ layout,
115
+ tagName: TagName,
116
+ blockProps
117
+ }) {
118
+ const {
119
+ canViewTemplatePart,
120
+ canEditTemplatePart
121
+ } = (0, _data.useSelect)(select => {
122
+ var _select$canUser, _select$canUser2;
123
+ return {
124
+ canViewTemplatePart: (_select$canUser = select(_coreData.store).canUser('read', 'templates')) !== null && _select$canUser !== void 0 ? _select$canUser : false,
125
+ canEditTemplatePart: (_select$canUser2 = select(_coreData.store).canUser('create', 'templates')) !== null && _select$canUser2 !== void 0 ? _select$canUser2 : false
126
+ };
127
+ }, []);
128
+ if (!canViewTemplatePart) {
129
+ return null;
130
+ }
131
+ const TemplatePartInnerBlocksComponent = canEditTemplatePart ? EditableTemplatePartInnerBlocks : NonEditableTemplatePartPreview;
132
+ return (0, _react.createElement)(TemplatePartInnerBlocksComponent, {
133
+ postId: id,
134
+ hasInnerBlocks: hasInnerBlocks,
135
+ layout: layout,
136
+ tagName: TagName,
137
+ blockProps: blockProps
138
+ });
139
+ }
44
140
  //# sourceMappingURL=inner-blocks.js.map