@wordpress/block-library 7.17.0 → 7.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (374) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/audio/edit.js +44 -4
  3. package/build/audio/edit.js.map +1 -1
  4. package/build/button/deprecated.js +16 -2
  5. package/build/button/deprecated.js.map +1 -1
  6. package/build/button/edit.js +14 -8
  7. package/build/button/edit.js.map +1 -1
  8. package/build/button/index.js +4 -1
  9. package/build/button/index.js.map +1 -1
  10. package/build/button/save.js +2 -0
  11. package/build/button/save.js.map +1 -1
  12. package/build/buttons/edit.native.js +1 -1
  13. package/build/buttons/edit.native.js.map +1 -1
  14. package/build/columns/transforms.js +5 -0
  15. package/build/columns/transforms.js.map +1 -1
  16. package/build/comment-template/index.js +6 -2
  17. package/build/comment-template/index.js.map +1 -1
  18. package/build/cover/edit/index.js +3 -1
  19. package/build/cover/edit/index.js.map +1 -1
  20. package/build/cover/edit/inspector-controls.js +3 -7
  21. package/build/cover/edit/inspector-controls.js.map +1 -1
  22. package/build/embed/deprecated.js +43 -4
  23. package/build/embed/deprecated.js.map +1 -1
  24. package/build/file/deprecated.js +108 -4
  25. package/build/file/deprecated.js.map +1 -1
  26. package/build/file/transforms.js +3 -9
  27. package/build/file/transforms.js.map +1 -1
  28. package/build/gallery/deprecated.js +148 -23
  29. package/build/gallery/deprecated.js.map +1 -1
  30. package/build/gallery/gallery.js +3 -2
  31. package/build/gallery/gallery.js.map +1 -1
  32. package/build/gallery/use-image-sizes.js +2 -1
  33. package/build/gallery/use-image-sizes.js.map +1 -1
  34. package/build/gallery/v1/edit.js +6 -3
  35. package/build/gallery/v1/edit.js.map +1 -1
  36. package/build/group/edit.js +105 -48
  37. package/build/group/edit.js.map +1 -1
  38. package/build/group/index.js +3 -0
  39. package/build/group/index.js.map +1 -1
  40. package/build/group/placeholder.js +168 -0
  41. package/build/group/placeholder.js.map +1 -0
  42. package/build/group/variations.js +3 -3
  43. package/build/group/variations.js.map +1 -1
  44. package/build/image/edit.native.js +1 -1
  45. package/build/image/edit.native.js.map +1 -1
  46. package/build/image/image.js +6 -9
  47. package/build/image/image.js.map +1 -1
  48. package/build/latest-comments/edit.js +2 -1
  49. package/build/latest-comments/edit.js.map +1 -1
  50. package/build/latest-comments/index.js +5 -1
  51. package/build/latest-comments/index.js.map +1 -1
  52. package/build/latest-posts/deprecated.js +13 -0
  53. package/build/latest-posts/deprecated.js.map +1 -1
  54. package/build/latest-posts/edit.js +1 -1
  55. package/build/latest-posts/edit.js.map +1 -1
  56. package/build/latest-posts/index.js +13 -0
  57. package/build/latest-posts/index.js.map +1 -1
  58. package/build/list/utils.js +4 -8
  59. package/build/list/utils.js.map +1 -1
  60. package/build/list-item/edit.js +2 -1
  61. package/build/list-item/edit.js.map +1 -1
  62. package/build/list-item/hooks/use-outdent-list-item.js +5 -7
  63. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  64. package/build/navigation/edit/index.js +94 -103
  65. package/build/navigation/edit/index.js.map +1 -1
  66. package/build/navigation/edit/manage-menus-button.js +36 -0
  67. package/build/navigation/edit/manage-menus-button.js.map +1 -0
  68. package/build/navigation/edit/navigation-menu-selector.js +12 -5
  69. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  70. package/build/navigation/edit/responsive-wrapper.js +2 -6
  71. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  72. package/build/navigation/edit/unsaved-inner-blocks.js +5 -17
  73. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  74. package/build/navigation-link/edit.js +14 -3
  75. package/build/navigation-link/edit.js.map +1 -1
  76. package/build/navigation-submenu/edit.js +4 -4
  77. package/build/navigation-submenu/edit.js.map +1 -1
  78. package/build/page-list/edit.js +29 -10
  79. package/build/page-list/edit.js.map +1 -1
  80. package/build/post-author/edit.js +35 -20
  81. package/build/post-author/edit.js.map +1 -1
  82. package/build/post-comments-count/index.js +4 -0
  83. package/build/post-comments-count/index.js.map +1 -1
  84. package/build/post-comments-form/index.js +4 -0
  85. package/build/post-comments-form/index.js.map +1 -1
  86. package/build/post-comments-link/index.js +4 -0
  87. package/build/post-comments-link/index.js.map +1 -1
  88. package/build/post-content/edit.js +14 -6
  89. package/build/post-content/edit.js.map +1 -1
  90. package/build/post-content/index.js +3 -0
  91. package/build/post-content/index.js.map +1 -1
  92. package/build/pullquote/deprecated.js +6 -6
  93. package/build/pullquote/deprecated.js.map +1 -1
  94. package/build/search/edit.js +1 -3
  95. package/build/search/edit.js.map +1 -1
  96. package/build/site-logo/edit.js +2 -2
  97. package/build/site-logo/edit.js.map +1 -1
  98. package/build/site-tagline/edit.js +21 -9
  99. package/build/site-tagline/edit.js.map +1 -1
  100. package/build/site-title/edit/index.js +20 -8
  101. package/build/site-title/edit/index.js.map +1 -1
  102. package/build/social-link/edit.js +11 -2
  103. package/build/social-link/edit.js.map +1 -1
  104. package/build/social-link/index.js +3 -0
  105. package/build/social-link/index.js.map +1 -1
  106. package/build/spacer/controls.js +3 -7
  107. package/build/spacer/controls.js.map +1 -1
  108. package/build/table/deprecated.js +282 -27
  109. package/build/table/deprecated.js.map +1 -1
  110. package/build/table/state.js +1 -1
  111. package/build/table/state.js.map +1 -1
  112. package/build/template-part/variations.js +5 -0
  113. package/build/template-part/variations.js.map +1 -1
  114. package/build/utils/clean-empty-object.js +5 -4
  115. package/build/utils/clean-empty-object.js.map +1 -1
  116. package/build/video/deprecated.js +159 -0
  117. package/build/video/deprecated.js.map +1 -0
  118. package/build/video/edit.js +41 -5
  119. package/build/video/edit.js.map +1 -1
  120. package/build/video/index.js +3 -0
  121. package/build/video/index.js.map +1 -1
  122. package/build/video/tracks-editor.js +3 -28
  123. package/build/video/tracks-editor.js.map +1 -1
  124. package/build-module/audio/edit.js +46 -7
  125. package/build-module/audio/edit.js.map +1 -1
  126. package/build-module/button/deprecated.js +16 -2
  127. package/build-module/button/deprecated.js.map +1 -1
  128. package/build-module/button/edit.js +16 -10
  129. package/build-module/button/edit.js.map +1 -1
  130. package/build-module/button/index.js +4 -1
  131. package/build-module/button/index.js.map +1 -1
  132. package/build-module/button/save.js +2 -0
  133. package/build-module/button/save.js.map +1 -1
  134. package/build-module/buttons/edit.native.js +1 -1
  135. package/build-module/buttons/edit.native.js.map +1 -1
  136. package/build-module/columns/transforms.js +5 -0
  137. package/build-module/columns/transforms.js.map +1 -1
  138. package/build-module/comment-template/index.js +6 -2
  139. package/build-module/comment-template/index.js.map +1 -1
  140. package/build-module/cover/edit/index.js +3 -1
  141. package/build-module/cover/edit/index.js.map +1 -1
  142. package/build-module/cover/edit/inspector-controls.js +4 -8
  143. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  144. package/build-module/embed/deprecated.js +44 -5
  145. package/build-module/embed/deprecated.js.map +1 -1
  146. package/build-module/file/deprecated.js +108 -4
  147. package/build-module/file/deprecated.js.map +1 -1
  148. package/build-module/file/transforms.js +3 -8
  149. package/build-module/file/transforms.js.map +1 -1
  150. package/build-module/gallery/deprecated.js +147 -25
  151. package/build-module/gallery/deprecated.js.map +1 -1
  152. package/build-module/gallery/gallery.js +3 -2
  153. package/build-module/gallery/gallery.js.map +1 -1
  154. package/build-module/gallery/use-image-sizes.js +3 -2
  155. package/build-module/gallery/use-image-sizes.js.map +1 -1
  156. package/build-module/gallery/v1/edit.js +7 -4
  157. package/build-module/gallery/v1/edit.js.map +1 -1
  158. package/build-module/group/edit.js +101 -48
  159. package/build-module/group/edit.js.map +1 -1
  160. package/build-module/group/index.js +3 -0
  161. package/build-module/group/index.js.map +1 -1
  162. package/build-module/group/placeholder.js +154 -0
  163. package/build-module/group/placeholder.js.map +1 -0
  164. package/build-module/group/variations.js +3 -3
  165. package/build-module/group/variations.js.map +1 -1
  166. package/build-module/image/edit.native.js +1 -1
  167. package/build-module/image/edit.native.js.map +1 -1
  168. package/build-module/image/image.js +8 -11
  169. package/build-module/image/image.js.map +1 -1
  170. package/build-module/latest-comments/edit.js +2 -1
  171. package/build-module/latest-comments/edit.js.map +1 -1
  172. package/build-module/latest-comments/index.js +5 -1
  173. package/build-module/latest-comments/index.js.map +1 -1
  174. package/build-module/latest-posts/deprecated.js +13 -0
  175. package/build-module/latest-posts/deprecated.js.map +1 -1
  176. package/build-module/latest-posts/edit.js +2 -2
  177. package/build-module/latest-posts/edit.js.map +1 -1
  178. package/build-module/latest-posts/index.js +13 -0
  179. package/build-module/latest-posts/index.js.map +1 -1
  180. package/build-module/list/utils.js +5 -9
  181. package/build-module/list/utils.js.map +1 -1
  182. package/build-module/list-item/edit.js +2 -1
  183. package/build-module/list-item/edit.js.map +1 -1
  184. package/build-module/list-item/hooks/use-outdent-list-item.js +5 -6
  185. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  186. package/build-module/navigation/edit/index.js +96 -105
  187. package/build-module/navigation/edit/index.js.map +1 -1
  188. package/build-module/navigation/edit/manage-menus-button.js +26 -0
  189. package/build-module/navigation/edit/manage-menus-button.js.map +1 -0
  190. package/build-module/navigation/edit/navigation-menu-selector.js +13 -6
  191. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  192. package/build-module/navigation/edit/responsive-wrapper.js +2 -6
  193. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  194. package/build-module/navigation/edit/unsaved-inner-blocks.js +7 -18
  195. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  196. package/build-module/navigation-link/edit.js +14 -4
  197. package/build-module/navigation-link/edit.js.map +1 -1
  198. package/build-module/navigation-submenu/edit.js +4 -4
  199. package/build-module/navigation-submenu/edit.js.map +1 -1
  200. package/build-module/page-list/edit.js +29 -10
  201. package/build-module/page-list/edit.js.map +1 -1
  202. package/build-module/post-author/edit.js +35 -21
  203. package/build-module/post-author/edit.js.map +1 -1
  204. package/build-module/post-comments-count/index.js +4 -0
  205. package/build-module/post-comments-count/index.js.map +1 -1
  206. package/build-module/post-comments-form/index.js +4 -0
  207. package/build-module/post-comments-form/index.js.map +1 -1
  208. package/build-module/post-comments-link/index.js +4 -0
  209. package/build-module/post-comments-link/index.js.map +1 -1
  210. package/build-module/post-content/edit.js +14 -6
  211. package/build-module/post-content/edit.js.map +1 -1
  212. package/build-module/post-content/index.js +3 -0
  213. package/build-module/post-content/index.js.map +1 -1
  214. package/build-module/pullquote/deprecated.js +7 -7
  215. package/build-module/pullquote/deprecated.js.map +1 -1
  216. package/build-module/search/edit.js +1 -3
  217. package/build-module/search/edit.js.map +1 -1
  218. package/build-module/site-logo/edit.js +3 -3
  219. package/build-module/site-logo/edit.js.map +1 -1
  220. package/build-module/site-tagline/edit.js +23 -11
  221. package/build-module/site-tagline/edit.js.map +1 -1
  222. package/build-module/site-title/edit/index.js +22 -10
  223. package/build-module/site-title/edit/index.js.map +1 -1
  224. package/build-module/social-link/edit.js +11 -2
  225. package/build-module/social-link/edit.js.map +1 -1
  226. package/build-module/social-link/index.js +3 -0
  227. package/build-module/social-link/index.js.map +1 -1
  228. package/build-module/spacer/controls.js +4 -8
  229. package/build-module/spacer/controls.js.map +1 -1
  230. package/build-module/table/deprecated.js +282 -27
  231. package/build-module/table/deprecated.js.map +1 -1
  232. package/build-module/table/state.js +1 -1
  233. package/build-module/table/state.js.map +1 -1
  234. package/build-module/template-part/variations.js +5 -0
  235. package/build-module/template-part/variations.js.map +1 -1
  236. package/build-module/utils/clean-empty-object.js +5 -5
  237. package/build-module/utils/clean-empty-object.js.map +1 -1
  238. package/build-module/video/deprecated.js +147 -0
  239. package/build-module/video/deprecated.js.map +1 -0
  240. package/build-module/video/edit.js +45 -9
  241. package/build-module/video/edit.js.map +1 -1
  242. package/build-module/video/index.js +2 -0
  243. package/build-module/video/index.js.map +1 -1
  244. package/build-module/video/tracks-editor.js +4 -29
  245. package/build-module/video/tracks-editor.js.map +1 -1
  246. package/build-style/button/style-rtl.css +1 -0
  247. package/build-style/button/style.css +1 -0
  248. package/build-style/comment-template/style-rtl.css +1 -0
  249. package/build-style/comment-template/style.css +1 -0
  250. package/build-style/editor-rtl.css +80 -5
  251. package/build-style/editor.css +80 -5
  252. package/build-style/group/editor-rtl.css +44 -0
  253. package/build-style/group/editor.css +44 -0
  254. package/build-style/latest-comments/style-rtl.css +1 -0
  255. package/build-style/latest-comments/style.css +1 -0
  256. package/build-style/latest-posts/style-rtl.css +3 -0
  257. package/build-style/latest-posts/style.css +3 -0
  258. package/build-style/navigation/editor-rtl.css +27 -4
  259. package/build-style/navigation/editor.css +27 -4
  260. package/build-style/navigation/style-rtl.css +13 -1
  261. package/build-style/navigation/style.css +13 -1
  262. package/build-style/navigation-link/editor-rtl.css +8 -1
  263. package/build-style/navigation-link/editor.css +8 -1
  264. package/build-style/post-comments-form/style-rtl.css +3 -0
  265. package/build-style/post-comments-form/style.css +3 -0
  266. package/build-style/query/editor-rtl.css +1 -1
  267. package/build-style/query/editor.css +1 -1
  268. package/build-style/query-pagination/style-rtl.css +1 -1
  269. package/build-style/query-pagination/style.css +1 -1
  270. package/build-style/style-rtl.css +28 -2
  271. package/build-style/style.css +28 -2
  272. package/build-style/table/editor-rtl.css +1 -0
  273. package/build-style/table/editor.css +1 -0
  274. package/build-style/table/style-rtl.css +5 -0
  275. package/build-style/table/style.css +5 -0
  276. package/build-style/table/theme-rtl.css +1 -3
  277. package/build-style/table/theme.css +1 -3
  278. package/build-style/theme-rtl.css +1 -3
  279. package/build-style/theme.css +1 -3
  280. package/package.json +29 -28
  281. package/src/audio/edit.js +79 -24
  282. package/src/avatar/index.php +1 -1
  283. package/src/block/test/edit.native.js +8 -8
  284. package/src/button/block.json +4 -1
  285. package/src/button/deprecated.js +18 -2
  286. package/src/button/edit.js +12 -10
  287. package/src/button/save.js +12 -2
  288. package/src/button/style.scss +2 -0
  289. package/src/buttons/edit.native.js +1 -1
  290. package/src/buttons/test/edit.native.js +19 -19
  291. package/src/columns/test/edit.native.js +32 -32
  292. package/src/columns/transforms.js +8 -0
  293. package/src/comment-template/block.json +6 -2
  294. package/src/comment-template/style.scss +2 -0
  295. package/src/cover/edit/index.js +3 -1
  296. package/src/cover/edit/inspector-controls.js +11 -13
  297. package/src/cover/test/edit.native.js +26 -26
  298. package/src/embed/deprecated.js +53 -26
  299. package/src/embed/test/index.native.js +43 -43
  300. package/src/file/deprecated.js +130 -2
  301. package/src/file/transforms.js +3 -8
  302. package/src/gallery/deprecated.js +129 -4
  303. package/src/gallery/gallery.js +2 -0
  304. package/src/gallery/index.php +19 -10
  305. package/src/gallery/test/index.native.js +11 -11
  306. package/src/gallery/use-image-sizes.js +3 -2
  307. package/src/gallery/v1/edit.js +21 -25
  308. package/src/group/block.json +3 -0
  309. package/src/group/edit.js +105 -46
  310. package/src/group/editor.scss +48 -0
  311. package/src/group/placeholder.js +187 -0
  312. package/src/group/test/edit.native.js +3 -3
  313. package/src/group/test/placeholder.js +78 -0
  314. package/src/group/variations.js +3 -3
  315. package/src/image/edit.native.js +1 -1
  316. package/src/image/image.js +22 -10
  317. package/src/image/test/edit.native.js +17 -17
  318. package/src/latest-comments/block.json +5 -1
  319. package/src/latest-comments/edit.js +1 -0
  320. package/src/latest-comments/style.scss +3 -0
  321. package/src/latest-posts/block.json +13 -0
  322. package/src/latest-posts/edit.js +2 -2
  323. package/src/latest-posts/style.scss +3 -0
  324. package/src/list/test/edit.native.js +36 -36
  325. package/src/list/utils.js +3 -11
  326. package/src/list-item/edit.js +1 -0
  327. package/src/list-item/hooks/use-outdent-list-item.js +3 -6
  328. package/src/missing/test/edit-integration.native.js +5 -5
  329. package/src/navigation/edit/index.js +186 -161
  330. package/src/navigation/edit/manage-menus-button.js +21 -0
  331. package/src/navigation/edit/navigation-menu-selector.js +20 -5
  332. package/src/navigation/edit/responsive-wrapper.js +2 -10
  333. package/src/navigation/edit/unsaved-inner-blocks.js +5 -22
  334. package/src/navigation/editor.scss +29 -4
  335. package/src/navigation/style.scss +19 -1
  336. package/src/navigation-link/edit.js +13 -4
  337. package/src/navigation-link/editor.scss +8 -0
  338. package/src/navigation-submenu/edit.js +7 -5
  339. package/src/page-list/edit.js +36 -22
  340. package/src/post-author/edit.js +44 -20
  341. package/src/post-comments-count/block.json +4 -0
  342. package/src/post-comments-form/block.json +4 -0
  343. package/src/post-comments-form/style.scss +3 -0
  344. package/src/post-comments-link/block.json +4 -0
  345. package/src/post-content/block.json +3 -0
  346. package/src/post-content/edit.js +8 -4
  347. package/src/pullquote/deprecated.js +7 -7
  348. package/src/query/editor.scss +1 -1
  349. package/src/query-pagination/style.scss +1 -1
  350. package/src/read-more/index.php +9 -2
  351. package/src/search/edit.js +1 -1
  352. package/src/shortcode/test/edit.native.js +5 -5
  353. package/src/site-logo/edit.js +3 -3
  354. package/src/site-tagline/edit.js +25 -18
  355. package/src/site-title/edit/index.js +26 -12
  356. package/src/social-link/block.json +3 -0
  357. package/src/social-link/edit.js +8 -1
  358. package/src/social-link/index.php +11 -7
  359. package/src/social-link/test/index.native.js +10 -10
  360. package/src/social-links/test/edit.native.js +4 -4
  361. package/src/spacer/controls.js +10 -12
  362. package/src/spacer/test/index.native.js +17 -17
  363. package/src/table/deprecated.js +587 -348
  364. package/src/table/editor.scss +1 -0
  365. package/src/table/state.js +1 -1
  366. package/src/table/style.scss +7 -0
  367. package/src/table/theme.scss +1 -3
  368. package/src/template-part/index.php +5 -0
  369. package/src/template-part/variations.js +4 -0
  370. package/src/utils/clean-empty-object.js +5 -6
  371. package/src/video/deprecated.js +57 -0
  372. package/src/video/edit.js +71 -23
  373. package/src/video/index.js +2 -0
  374. package/src/video/tracks-editor.js +12 -28
@@ -20,20 +20,263 @@ var _blockEditor = require("@wordpress/block-editor");
20
20
  /**
21
21
  * WordPress dependencies
22
22
  */
23
- const supports = {
24
- align: true
25
- }; // As the previous arbitrary colors won't match theme color palettes, the hex
23
+ // As the previous arbitrary colors won't match theme color palettes, the hex
26
24
  // value will be mapped to the style.color.background attribute as if it was
27
25
  // a custom color selection.
28
-
29
26
  const oldColors = {
30
27
  'subtle-light-gray': '#f3f4f5',
31
28
  'subtle-pale-green': '#e9fbe5',
32
29
  'subtle-pale-blue': '#e7f5fe',
33
30
  'subtle-pale-pink': '#fcf0ef'
34
- };
35
- const deprecated = [// Deprecation migrating table block to use colors block support feature.
36
- {
31
+ }; // In #41140 support was added to global styles for caption elements which
32
+ // added a `wp-element-caption` classname to the embed figcaption element.
33
+
34
+ const v3 = {
35
+ attributes: {
36
+ hasFixedLayout: {
37
+ type: 'boolean',
38
+ default: false
39
+ },
40
+ caption: {
41
+ type: 'string',
42
+ source: 'html',
43
+ selector: 'figcaption',
44
+ default: ''
45
+ },
46
+ head: {
47
+ type: 'array',
48
+ default: [],
49
+ source: 'query',
50
+ selector: 'thead tr',
51
+ query: {
52
+ cells: {
53
+ type: 'array',
54
+ default: [],
55
+ source: 'query',
56
+ selector: 'td,th',
57
+ query: {
58
+ content: {
59
+ type: 'string',
60
+ source: 'html'
61
+ },
62
+ tag: {
63
+ type: 'string',
64
+ default: 'td',
65
+ source: 'tag'
66
+ },
67
+ scope: {
68
+ type: 'string',
69
+ source: 'attribute',
70
+ attribute: 'scope'
71
+ },
72
+ align: {
73
+ type: 'string',
74
+ source: 'attribute',
75
+ attribute: 'data-align'
76
+ }
77
+ }
78
+ }
79
+ }
80
+ },
81
+ body: {
82
+ type: 'array',
83
+ default: [],
84
+ source: 'query',
85
+ selector: 'tbody tr',
86
+ query: {
87
+ cells: {
88
+ type: 'array',
89
+ default: [],
90
+ source: 'query',
91
+ selector: 'td,th',
92
+ query: {
93
+ content: {
94
+ type: 'string',
95
+ source: 'html'
96
+ },
97
+ tag: {
98
+ type: 'string',
99
+ default: 'td',
100
+ source: 'tag'
101
+ },
102
+ scope: {
103
+ type: 'string',
104
+ source: 'attribute',
105
+ attribute: 'scope'
106
+ },
107
+ align: {
108
+ type: 'string',
109
+ source: 'attribute',
110
+ attribute: 'data-align'
111
+ }
112
+ }
113
+ }
114
+ }
115
+ },
116
+ foot: {
117
+ type: 'array',
118
+ default: [],
119
+ source: 'query',
120
+ selector: 'tfoot tr',
121
+ query: {
122
+ cells: {
123
+ type: 'array',
124
+ default: [],
125
+ source: 'query',
126
+ selector: 'td,th',
127
+ query: {
128
+ content: {
129
+ type: 'string',
130
+ source: 'html'
131
+ },
132
+ tag: {
133
+ type: 'string',
134
+ default: 'td',
135
+ source: 'tag'
136
+ },
137
+ scope: {
138
+ type: 'string',
139
+ source: 'attribute',
140
+ attribute: 'scope'
141
+ },
142
+ align: {
143
+ type: 'string',
144
+ source: 'attribute',
145
+ attribute: 'data-align'
146
+ }
147
+ }
148
+ }
149
+ }
150
+ }
151
+ },
152
+ supports: {
153
+ anchor: true,
154
+ align: true,
155
+ color: {
156
+ __experimentalSkipSerialization: true,
157
+ gradients: true,
158
+ __experimentalDefaultControls: {
159
+ background: true,
160
+ text: true
161
+ }
162
+ },
163
+ spacing: {
164
+ margin: true,
165
+ padding: true
166
+ },
167
+ typography: {
168
+ fontSize: true,
169
+ lineHeight: true,
170
+ __experimentalFontFamily: true,
171
+ __experimentalFontStyle: true,
172
+ __experimentalFontWeight: true,
173
+ __experimentalLetterSpacing: true,
174
+ __experimentalTextTransform: true,
175
+ __experimentalTextDecoration: true,
176
+ __experimentalDefaultControls: {
177
+ fontSize: true
178
+ }
179
+ },
180
+ __experimentalBorder: {
181
+ __experimentalSkipSerialization: true,
182
+ color: true,
183
+ style: true,
184
+ width: true,
185
+ __experimentalDefaultControls: {
186
+ color: true,
187
+ style: true,
188
+ width: true
189
+ }
190
+ },
191
+ __experimentalSelector: '.wp-block-table > table'
192
+ },
193
+
194
+ save(_ref) {
195
+ let {
196
+ attributes
197
+ } = _ref;
198
+ const {
199
+ hasFixedLayout,
200
+ head,
201
+ body,
202
+ foot,
203
+ caption
204
+ } = attributes;
205
+ const isEmpty = !head.length && !body.length && !foot.length;
206
+
207
+ if (isEmpty) {
208
+ return null;
209
+ }
210
+
211
+ const colorProps = (0, _blockEditor.__experimentalGetColorClassesAndStyles)(attributes);
212
+ const borderProps = (0, _blockEditor.__experimentalGetBorderClassesAndStyles)(attributes);
213
+ const classes = (0, _classnames.default)(colorProps.className, borderProps.className, {
214
+ 'has-fixed-layout': hasFixedLayout
215
+ });
216
+ const hasCaption = !_blockEditor.RichText.isEmpty(caption);
217
+
218
+ const Section = _ref2 => {
219
+ let {
220
+ type,
221
+ rows
222
+ } = _ref2;
223
+
224
+ if (!rows.length) {
225
+ return null;
226
+ }
227
+
228
+ const Tag = `t${type}`;
229
+ return (0, _element.createElement)(Tag, null, rows.map((_ref3, rowIndex) => {
230
+ let {
231
+ cells
232
+ } = _ref3;
233
+ return (0, _element.createElement)("tr", {
234
+ key: rowIndex
235
+ }, cells.map((_ref4, cellIndex) => {
236
+ let {
237
+ content,
238
+ tag,
239
+ scope,
240
+ align
241
+ } = _ref4;
242
+ const cellClasses = (0, _classnames.default)({
243
+ [`has-text-align-${align}`]: align
244
+ });
245
+ return (0, _element.createElement)(_blockEditor.RichText.Content, {
246
+ className: cellClasses ? cellClasses : undefined,
247
+ "data-align": align,
248
+ tagName: tag,
249
+ value: content,
250
+ key: cellIndex,
251
+ scope: tag === 'th' ? scope : undefined
252
+ });
253
+ }));
254
+ }));
255
+ };
256
+
257
+ return (0, _element.createElement)("figure", _blockEditor.useBlockProps.save(), (0, _element.createElement)("table", {
258
+ className: classes === '' ? undefined : classes,
259
+ style: { ...colorProps.style,
260
+ ...borderProps.style
261
+ }
262
+ }, (0, _element.createElement)(Section, {
263
+ type: "head",
264
+ rows: head
265
+ }), (0, _element.createElement)(Section, {
266
+ type: "body",
267
+ rows: body
268
+ }), (0, _element.createElement)(Section, {
269
+ type: "foot",
270
+ rows: foot
271
+ })), hasCaption && (0, _element.createElement)(_blockEditor.RichText.Content, {
272
+ tagName: "figcaption",
273
+ value: caption
274
+ }));
275
+ }
276
+
277
+ }; // Deprecation migrating table block to use colors block support feature.
278
+
279
+ const v2 = {
37
280
  attributes: {
38
281
  hasFixedLayout: {
39
282
  type: 'boolean',
@@ -159,10 +402,10 @@ const deprecated = [// Deprecation migrating table block to use colors block sup
159
402
  align: true,
160
403
  __experimentalSelector: '.wp-block-table > table'
161
404
  },
162
- save: _ref => {
405
+ save: _ref5 => {
163
406
  let {
164
407
  attributes
165
- } = _ref;
408
+ } = _ref5;
166
409
  const {
167
410
  hasFixedLayout,
168
411
  head,
@@ -184,30 +427,30 @@ const deprecated = [// Deprecation migrating table block to use colors block sup
184
427
  });
185
428
  const hasCaption = !_blockEditor.RichText.isEmpty(caption);
186
429
 
187
- const Section = _ref2 => {
430
+ const Section = _ref6 => {
188
431
  let {
189
432
  type,
190
433
  rows
191
- } = _ref2;
434
+ } = _ref6;
192
435
 
193
436
  if (!rows.length) {
194
437
  return null;
195
438
  }
196
439
 
197
440
  const Tag = `t${type}`;
198
- return (0, _element.createElement)(Tag, null, rows.map((_ref3, rowIndex) => {
441
+ return (0, _element.createElement)(Tag, null, rows.map((_ref7, rowIndex) => {
199
442
  let {
200
443
  cells
201
- } = _ref3;
444
+ } = _ref7;
202
445
  return (0, _element.createElement)("tr", {
203
446
  key: rowIndex
204
- }, cells.map((_ref4, cellIndex) => {
447
+ }, cells.map((_ref8, cellIndex) => {
205
448
  let {
206
449
  content,
207
450
  tag,
208
451
  scope,
209
452
  align
210
- } = _ref4;
453
+ } = _ref8;
211
454
  const cellClasses = (0, _classnames.default)({
212
455
  [`has-text-align-${align}`]: align
213
456
  });
@@ -254,7 +497,8 @@ const deprecated = [// Deprecation migrating table block to use colors block sup
254
497
  }
255
498
  };
256
499
  }
257
- }, {
500
+ };
501
+ const v1 = {
258
502
  attributes: {
259
503
  hasFixedLayout: {
260
504
  type: 'boolean',
@@ -354,12 +598,14 @@ const deprecated = [// Deprecation migrating table block to use colors block sup
354
598
  }
355
599
  }
356
600
  },
357
- supports,
601
+ supports: {
602
+ align: true
603
+ },
358
604
 
359
- save(_ref5) {
605
+ save(_ref9) {
360
606
  let {
361
607
  attributes
362
- } = _ref5;
608
+ } = _ref9;
363
609
  const {
364
610
  hasFixedLayout,
365
611
  head,
@@ -379,29 +625,29 @@ const deprecated = [// Deprecation migrating table block to use colors block sup
379
625
  'has-background': !!backgroundClass
380
626
  });
381
627
 
382
- const Section = _ref6 => {
628
+ const Section = _ref10 => {
383
629
  let {
384
630
  type,
385
631
  rows
386
- } = _ref6;
632
+ } = _ref10;
387
633
 
388
634
  if (!rows.length) {
389
635
  return null;
390
636
  }
391
637
 
392
638
  const Tag = `t${type}`;
393
- return (0, _element.createElement)(Tag, null, rows.map((_ref7, rowIndex) => {
639
+ return (0, _element.createElement)(Tag, null, rows.map((_ref11, rowIndex) => {
394
640
  let {
395
641
  cells
396
- } = _ref7;
642
+ } = _ref11;
397
643
  return (0, _element.createElement)("tr", {
398
644
  key: rowIndex
399
- }, cells.map((_ref8, cellIndex) => {
645
+ }, cells.map((_ref12, cellIndex) => {
400
646
  let {
401
647
  content,
402
648
  tag,
403
649
  scope
404
- } = _ref8;
650
+ } = _ref12;
405
651
  return (0, _element.createElement)(_blockEditor.RichText.Content, {
406
652
  tagName: tag,
407
653
  value: content,
@@ -426,7 +672,16 @@ const deprecated = [// Deprecation migrating table block to use colors block sup
426
672
  }));
427
673
  }
428
674
 
429
- }];
430
- var _default = deprecated;
675
+ };
676
+ /**
677
+ * New deprecations need to be placed first
678
+ * for them to have higher priority.
679
+ *
680
+ * Old deprecations may need to be updated as well.
681
+ *
682
+ * See block-deprecation.md
683
+ */
684
+
685
+ var _default = [v3, v2, v1];
431
686
  exports.default = _default;
432
687
  //# sourceMappingURL=deprecated.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/table/deprecated.js"],"names":["supports","align","oldColors","deprecated","attributes","hasFixedLayout","type","default","backgroundColor","caption","source","selector","head","query","cells","content","tag","scope","attribute","body","foot","anchor","__experimentalSelector","save","isEmpty","length","backgroundClass","classes","hasCaption","RichText","Section","rows","Tag","map","rowIndex","cellIndex","cellClasses","undefined","useBlockProps","isEligible","style","migrate","color","background"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tgetColorClassName,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\n\nconst supports = {\n\talign: true,\n};\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\nconst deprecated = [\n\t// Deprecation migrating table block to use colors block support feature.\n\t{\n\t\tattributes: {\n\t\t\thasFixedLayout: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcaption: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'html',\n\t\t\t\tselector: 'figcaption',\n\t\t\t\tdefault: '',\n\t\t\t},\n\t\t\thead: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'thead tr',\n\t\t\t\tquery: {\n\t\t\t\t\tcells: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tdefault: [],\n\t\t\t\t\t\tsource: 'query',\n\t\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tbody: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'tbody tr',\n\t\t\t\tquery: {\n\t\t\t\t\tcells: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tdefault: [],\n\t\t\t\t\t\tsource: 'query',\n\t\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tfoot: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'tfoot tr',\n\t\t\t\tquery: {\n\t\t\t\t\tcells: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tdefault: [],\n\t\t\t\t\t\tsource: 'query',\n\t\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\talign: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'data-align',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: true,\n\t\t\t__experimentalSelector: '.wp-block-table > table',\n\t\t},\n\t\tsave: ( { attributes } ) => {\n\t\t\tconst {\n\t\t\t\thasFixedLayout,\n\t\t\t\thead,\n\t\t\t\tbody,\n\t\t\t\tfoot,\n\t\t\t\tbackgroundColor,\n\t\t\t\tcaption,\n\t\t\t} = attributes;\n\t\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\t\tif ( isEmpty ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor\n\t\t\t);\n\n\t\t\tconst classes = classnames( backgroundClass, {\n\t\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t\t'has-background': !! backgroundClass,\n\t\t\t} );\n\n\t\t\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\t\t\tconst Section = ( { type, rows } ) => {\n\t\t\t\tif ( ! rows.length ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\tconst Tag = `t${ type }`;\n\n\t\t\t\treturn (\n\t\t\t\t\t<Tag>\n\t\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t{ content, tag, scope, align },\n\t\t\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\t\tconst cellClasses = classnames( {\n\t\t\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]:\n\t\t\t\t\t\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\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\t? cellClasses\n\t\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\t}\n\t\t\t\t\t\t\t\t\t\t\t\tdata-align={ align }\n\t\t\t\t\t\t\t\t\t\t\t\ttagName={ tag }\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ cellIndex }\n\t\t\t\t\t\t\t\t\t\t\t\tscope={\n\t\t\t\t\t\t\t\t\t\t\t\t\ttag === 'th'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? scope\n\t\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\t}\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</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</Tag>\n\t\t\t\t);\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<figure { ...useBlockProps.save() }>\n\t\t\t\t\t<table className={ classes === '' ? undefined : classes }>\n\t\t\t\t\t\t<Section type=\"head\" rows={ head } />\n\t\t\t\t\t\t<Section type=\"body\" rows={ body } />\n\t\t\t\t\t\t<Section type=\"foot\" rows={ foot } />\n\t\t\t\t\t</table>\n\t\t\t\t\t{ hasCaption && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t\tisEligible: ( attributes ) => {\n\t\t\treturn (\n\t\t\t\tattributes.backgroundColor &&\n\t\t\t\tattributes.backgroundColor in oldColors &&\n\t\t\t\t! attributes.style\n\t\t\t);\n\t\t},\n\n\t\t// This version is the first to introduce the style attribute to the\n\t\t// table block. As a result, we'll explicitly override that.\n\t\tmigrate: ( attributes ) => {\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\tbackgroundColor: undefined,\n\t\t\t\tstyle: {\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tbackground: oldColors[ attributes.backgroundColor ],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\thasFixedLayout: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\thead: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'thead tr',\n\t\t\t\tquery: {\n\t\t\t\t\tcells: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tdefault: [],\n\t\t\t\t\t\tsource: 'query',\n\t\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tbody: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'tbody tr',\n\t\t\t\tquery: {\n\t\t\t\t\tcells: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tdefault: [],\n\t\t\t\t\t\tsource: 'query',\n\t\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tfoot: {\n\t\t\t\ttype: 'array',\n\t\t\t\tdefault: [],\n\t\t\t\tsource: 'query',\n\t\t\t\tselector: 'tfoot tr',\n\t\t\t\tquery: {\n\t\t\t\t\tcells: {\n\t\t\t\t\t\ttype: 'array',\n\t\t\t\t\t\tdefault: [],\n\t\t\t\t\t\tsource: 'query',\n\t\t\t\t\t\tselector: 'td,th',\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\ttag: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: 'td',\n\t\t\t\t\t\t\t\tsource: 'tag',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tscope: {\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\t\t\t\tattribute: 'scope',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tsupports,\n\t\tsave( { attributes } ) {\n\t\t\tconst { hasFixedLayout, head, body, foot, backgroundColor } =\n\t\t\t\tattributes;\n\t\t\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\t\t\tif ( isEmpty ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor\n\t\t\t);\n\n\t\t\tconst classes = classnames( backgroundClass, {\n\t\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t\t'has-background': !! backgroundClass,\n\t\t\t} );\n\n\t\t\tconst Section = ( { type, rows } ) => {\n\t\t\t\tif ( ! rows.length ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\tconst Tag = `t${ type }`;\n\n\t\t\t\treturn (\n\t\t\t\t\t<Tag>\n\t\t\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t\t\t\t( { content, tag, scope }, cellIndex ) => (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\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</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</Tag>\n\t\t\t\t);\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<table className={ 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);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/table/deprecated.js"],"names":["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","borderProps","classes","className","hasCaption","RichText","Section","rows","Tag","map","rowIndex","cellIndex","cellClasses","undefined","useBlockProps","v2","backgroundColor","backgroundClass","isEligible","migrate","v1"],"mappings":"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","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"]}
@@ -291,7 +291,7 @@ function deleteColumn(state, _ref5) {
291
291
  });
292
292
  }
293
293
  /**
294
- * Toggles the existance of a section.
294
+ * Toggles the existence of a section.
295
295
  *
296
296
  * @param {Object} state Current table state.
297
297
  * @param {string} sectionName Name of the section to toggle.
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/table/state.js"],"names":["INHERITED_COLUMN_ATTRIBUTES","createTable","rowCount","columnCount","body","Array","from","length","map","cells","content","tag","getFirstRow","state","isEmptyTableSection","head","foot","getCellAttribute","cellLocation","attributeName","sectionName","rowIndex","columnIndex","updateSelectedCell","selection","updateCell","tableSections","selectionSectionName","selectionRowIndex","section","row","cellAttributes","isCellSelected","type","insertRow","firstRow","cellCount","undefined","slice","_","index","firstCellInColumn","inheritedAttributes","deleteRow","filter","insertColumn","isEmptyRow","deleteColumn","cell","toggleSection","every"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, mapValues, pick } from 'lodash';\n\nconst INHERITED_COLUMN_ATTRIBUTES = [ 'align' ];\n\n/**\n * Creates a table state.\n *\n * @param {Object} options\n * @param {number} options.rowCount Row count for the table to create.\n * @param {number} options.columnCount Column count for the table to create.\n *\n * @return {Object} New table state.\n */\nexport function createTable( { rowCount, columnCount } ) {\n\treturn {\n\t\tbody: Array.from( { length: rowCount } ).map( () => ( {\n\t\t\tcells: Array.from( { length: columnCount } ).map( () => ( {\n\t\t\t\tcontent: '',\n\t\t\t\ttag: 'td',\n\t\t\t} ) ),\n\t\t} ) ),\n\t};\n}\n\n/**\n * Returns the first row in the table.\n *\n * @param {Object} state Current table state.\n *\n * @return {Object} The first table row.\n */\nexport function getFirstRow( state ) {\n\tif ( ! isEmptyTableSection( state.head ) ) {\n\t\treturn state.head[ 0 ];\n\t}\n\tif ( ! isEmptyTableSection( state.body ) ) {\n\t\treturn state.body[ 0 ];\n\t}\n\tif ( ! isEmptyTableSection( state.foot ) ) {\n\t\treturn state.foot[ 0 ];\n\t}\n}\n\n/**\n * Gets an attribute for a cell.\n *\n * @param {Object} state Current table state.\n * @param {Object} cellLocation The location of the cell\n * @param {string} attributeName The name of the attribute to get the value of.\n *\n * @return {*} The attribute value.\n */\nexport function getCellAttribute( state, cellLocation, attributeName ) {\n\tconst { sectionName, rowIndex, columnIndex } = cellLocation;\n\treturn get( state, [\n\t\tsectionName,\n\t\trowIndex,\n\t\t'cells',\n\t\tcolumnIndex,\n\t\tattributeName,\n\t] );\n}\n\n/**\n * Returns updated cell attributes after applying the `updateCell` function to the selection.\n *\n * @param {Object} state The block attributes.\n * @param {Object} selection The selection of cells to update.\n * @param {Function} updateCell A function to update the selected cell attributes.\n *\n * @return {Object} New table state including the updated cells.\n */\nexport function updateSelectedCell( state, selection, updateCell ) {\n\tif ( ! selection ) {\n\t\treturn state;\n\t}\n\n\tconst tableSections = pick( state, [ 'head', 'body', 'foot' ] );\n\tconst { sectionName: selectionSectionName, rowIndex: selectionRowIndex } =\n\t\tselection;\n\n\treturn mapValues( tableSections, ( section, sectionName ) => {\n\t\tif ( selectionSectionName && selectionSectionName !== sectionName ) {\n\t\t\treturn section;\n\t\t}\n\n\t\treturn section.map( ( row, rowIndex ) => {\n\t\t\tif ( selectionRowIndex && selectionRowIndex !== rowIndex ) {\n\t\t\t\treturn row;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tcells: row.cells.map( ( cellAttributes, columnIndex ) => {\n\t\t\t\t\tconst cellLocation = {\n\t\t\t\t\t\tsectionName,\n\t\t\t\t\t\tcolumnIndex,\n\t\t\t\t\t\trowIndex,\n\t\t\t\t\t};\n\n\t\t\t\t\tif ( ! isCellSelected( cellLocation, selection ) ) {\n\t\t\t\t\t\treturn cellAttributes;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn updateCell( cellAttributes );\n\t\t\t\t} ),\n\t\t\t};\n\t\t} );\n\t} );\n}\n\n/**\n * Returns whether the cell at `cellLocation` is included in the selection `selection`.\n *\n * @param {Object} cellLocation An object containing cell location properties.\n * @param {Object} selection An object containing selection properties.\n *\n * @return {boolean} True if the cell is selected, false otherwise.\n */\nexport function isCellSelected( cellLocation, selection ) {\n\tif ( ! cellLocation || ! selection ) {\n\t\treturn false;\n\t}\n\n\tswitch ( selection.type ) {\n\t\tcase 'column':\n\t\t\treturn (\n\t\t\t\tselection.type === 'column' &&\n\t\t\t\tcellLocation.columnIndex === selection.columnIndex\n\t\t\t);\n\t\tcase 'cell':\n\t\t\treturn (\n\t\t\t\tselection.type === 'cell' &&\n\t\t\t\tcellLocation.sectionName === selection.sectionName &&\n\t\t\t\tcellLocation.columnIndex === selection.columnIndex &&\n\t\t\t\tcellLocation.rowIndex === selection.rowIndex\n\t\t\t);\n\t}\n}\n\n/**\n * Inserts a row in the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {string} options.sectionName Section in which to insert the row.\n * @param {number} options.rowIndex Row index at which to insert the row.\n * @param {number} options.columnCount Column count for the table to create.\n *\n * @return {Object} New table state.\n */\nexport function insertRow( state, { sectionName, rowIndex, columnCount } ) {\n\tconst firstRow = getFirstRow( state );\n\tconst cellCount =\n\t\tcolumnCount === undefined\n\t\t\t? get( firstRow, [ 'cells', 'length' ] )\n\t\t\t: columnCount;\n\n\t// Bail early if the function cannot determine how many cells to add.\n\tif ( ! cellCount ) {\n\t\treturn state;\n\t}\n\n\treturn {\n\t\t[ sectionName ]: [\n\t\t\t...state[ sectionName ].slice( 0, rowIndex ),\n\t\t\t{\n\t\t\t\tcells: Array.from( { length: cellCount } ).map(\n\t\t\t\t\t( _, index ) => {\n\t\t\t\t\t\tconst firstCellInColumn = get(\n\t\t\t\t\t\t\tfirstRow,\n\t\t\t\t\t\t\t[ 'cells', index ],\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst inheritedAttributes = pick(\n\t\t\t\t\t\t\tfirstCellInColumn,\n\t\t\t\t\t\t\tINHERITED_COLUMN_ATTRIBUTES\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...inheritedAttributes,\n\t\t\t\t\t\t\tcontent: '',\n\t\t\t\t\t\t\ttag: sectionName === 'head' ? 'th' : 'td',\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\t...state[ sectionName ].slice( rowIndex ),\n\t\t],\n\t};\n}\n\n/**\n * Deletes a row from the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {string} options.sectionName Section in which to delete the row.\n * @param {number} options.rowIndex Row index to delete.\n *\n * @return {Object} New table state.\n */\nexport function deleteRow( state, { sectionName, rowIndex } ) {\n\treturn {\n\t\t[ sectionName ]: state[ sectionName ].filter(\n\t\t\t( row, index ) => index !== rowIndex\n\t\t),\n\t};\n}\n\n/**\n * Inserts a column in the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {number} options.columnIndex Column index at which to insert the column.\n *\n * @return {Object} New table state.\n */\nexport function insertColumn( state, { columnIndex } ) {\n\tconst tableSections = pick( state, [ 'head', 'body', 'foot' ] );\n\n\treturn mapValues( tableSections, ( section, sectionName ) => {\n\t\t// Bail early if the table section is empty.\n\t\tif ( isEmptyTableSection( section ) ) {\n\t\t\treturn section;\n\t\t}\n\n\t\treturn section.map( ( row ) => {\n\t\t\t// Bail early if the row is empty or it's an attempt to insert past\n\t\t\t// the last possible index of the array.\n\t\t\tif ( isEmptyRow( row ) || row.cells.length < columnIndex ) {\n\t\t\t\treturn row;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tcells: [\n\t\t\t\t\t...row.cells.slice( 0, columnIndex ),\n\t\t\t\t\t{\n\t\t\t\t\t\tcontent: '',\n\t\t\t\t\t\ttag: sectionName === 'head' ? 'th' : 'td',\n\t\t\t\t\t},\n\t\t\t\t\t...row.cells.slice( columnIndex ),\n\t\t\t\t],\n\t\t\t};\n\t\t} );\n\t} );\n}\n\n/**\n * Deletes a column from the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {number} options.columnIndex Column index to delete.\n *\n * @return {Object} New table state.\n */\nexport function deleteColumn( state, { columnIndex } ) {\n\tconst tableSections = pick( state, [ 'head', 'body', 'foot' ] );\n\n\treturn mapValues( tableSections, ( section ) => {\n\t\t// Bail early if the table section is empty.\n\t\tif ( isEmptyTableSection( section ) ) {\n\t\t\treturn section;\n\t\t}\n\n\t\treturn section\n\t\t\t.map( ( row ) => ( {\n\t\t\t\tcells:\n\t\t\t\t\trow.cells.length >= columnIndex\n\t\t\t\t\t\t? row.cells.filter(\n\t\t\t\t\t\t\t\t( cell, index ) => index !== columnIndex\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: row.cells,\n\t\t\t} ) )\n\t\t\t.filter( ( row ) => row.cells.length );\n\t} );\n}\n\n/**\n * Toggles the existance of a section.\n *\n * @param {Object} state Current table state.\n * @param {string} sectionName Name of the section to toggle.\n *\n * @return {Object} New table state.\n */\nexport function toggleSection( state, sectionName ) {\n\t// Section exists, replace it with an empty row to remove it.\n\tif ( ! isEmptyTableSection( state[ sectionName ] ) ) {\n\t\treturn { [ sectionName ]: [] };\n\t}\n\n\t// Get the length of the first row of the body to use when creating the header.\n\tconst columnCount = get( state, [ 'body', 0, 'cells', 'length' ], 1 );\n\n\t// Section doesn't exist, insert an empty row to create the section.\n\treturn insertRow( state, { sectionName, rowIndex: 0, columnCount } );\n}\n\n/**\n * Determines whether a table section is empty.\n *\n * @param {Object} section Table section state.\n *\n * @return {boolean} True if the table section is empty, false otherwise.\n */\nexport function isEmptyTableSection( section ) {\n\treturn ! section || ! section.length || section.every( isEmptyRow );\n}\n\n/**\n * Determines whether a table row is empty.\n *\n * @param {Object} row Table row state.\n *\n * @return {boolean} True if the table section is empty, false otherwise.\n */\nexport function isEmptyRow( row ) {\n\treturn ! ( row.cells && row.cells.length );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/table/state.js"],"names":["INHERITED_COLUMN_ATTRIBUTES","createTable","rowCount","columnCount","body","Array","from","length","map","cells","content","tag","getFirstRow","state","isEmptyTableSection","head","foot","getCellAttribute","cellLocation","attributeName","sectionName","rowIndex","columnIndex","updateSelectedCell","selection","updateCell","tableSections","selectionSectionName","selectionRowIndex","section","row","cellAttributes","isCellSelected","type","insertRow","firstRow","cellCount","undefined","slice","_","index","firstCellInColumn","inheritedAttributes","deleteRow","filter","insertColumn","isEmptyRow","deleteColumn","cell","toggleSection","every"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, mapValues, pick } from 'lodash';\n\nconst INHERITED_COLUMN_ATTRIBUTES = [ 'align' ];\n\n/**\n * Creates a table state.\n *\n * @param {Object} options\n * @param {number} options.rowCount Row count for the table to create.\n * @param {number} options.columnCount Column count for the table to create.\n *\n * @return {Object} New table state.\n */\nexport function createTable( { rowCount, columnCount } ) {\n\treturn {\n\t\tbody: Array.from( { length: rowCount } ).map( () => ( {\n\t\t\tcells: Array.from( { length: columnCount } ).map( () => ( {\n\t\t\t\tcontent: '',\n\t\t\t\ttag: 'td',\n\t\t\t} ) ),\n\t\t} ) ),\n\t};\n}\n\n/**\n * Returns the first row in the table.\n *\n * @param {Object} state Current table state.\n *\n * @return {Object} The first table row.\n */\nexport function getFirstRow( state ) {\n\tif ( ! isEmptyTableSection( state.head ) ) {\n\t\treturn state.head[ 0 ];\n\t}\n\tif ( ! isEmptyTableSection( state.body ) ) {\n\t\treturn state.body[ 0 ];\n\t}\n\tif ( ! isEmptyTableSection( state.foot ) ) {\n\t\treturn state.foot[ 0 ];\n\t}\n}\n\n/**\n * Gets an attribute for a cell.\n *\n * @param {Object} state Current table state.\n * @param {Object} cellLocation The location of the cell\n * @param {string} attributeName The name of the attribute to get the value of.\n *\n * @return {*} The attribute value.\n */\nexport function getCellAttribute( state, cellLocation, attributeName ) {\n\tconst { sectionName, rowIndex, columnIndex } = cellLocation;\n\treturn get( state, [\n\t\tsectionName,\n\t\trowIndex,\n\t\t'cells',\n\t\tcolumnIndex,\n\t\tattributeName,\n\t] );\n}\n\n/**\n * Returns updated cell attributes after applying the `updateCell` function to the selection.\n *\n * @param {Object} state The block attributes.\n * @param {Object} selection The selection of cells to update.\n * @param {Function} updateCell A function to update the selected cell attributes.\n *\n * @return {Object} New table state including the updated cells.\n */\nexport function updateSelectedCell( state, selection, updateCell ) {\n\tif ( ! selection ) {\n\t\treturn state;\n\t}\n\n\tconst tableSections = pick( state, [ 'head', 'body', 'foot' ] );\n\tconst { sectionName: selectionSectionName, rowIndex: selectionRowIndex } =\n\t\tselection;\n\n\treturn mapValues( tableSections, ( section, sectionName ) => {\n\t\tif ( selectionSectionName && selectionSectionName !== sectionName ) {\n\t\t\treturn section;\n\t\t}\n\n\t\treturn section.map( ( row, rowIndex ) => {\n\t\t\tif ( selectionRowIndex && selectionRowIndex !== rowIndex ) {\n\t\t\t\treturn row;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tcells: row.cells.map( ( cellAttributes, columnIndex ) => {\n\t\t\t\t\tconst cellLocation = {\n\t\t\t\t\t\tsectionName,\n\t\t\t\t\t\tcolumnIndex,\n\t\t\t\t\t\trowIndex,\n\t\t\t\t\t};\n\n\t\t\t\t\tif ( ! isCellSelected( cellLocation, selection ) ) {\n\t\t\t\t\t\treturn cellAttributes;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn updateCell( cellAttributes );\n\t\t\t\t} ),\n\t\t\t};\n\t\t} );\n\t} );\n}\n\n/**\n * Returns whether the cell at `cellLocation` is included in the selection `selection`.\n *\n * @param {Object} cellLocation An object containing cell location properties.\n * @param {Object} selection An object containing selection properties.\n *\n * @return {boolean} True if the cell is selected, false otherwise.\n */\nexport function isCellSelected( cellLocation, selection ) {\n\tif ( ! cellLocation || ! selection ) {\n\t\treturn false;\n\t}\n\n\tswitch ( selection.type ) {\n\t\tcase 'column':\n\t\t\treturn (\n\t\t\t\tselection.type === 'column' &&\n\t\t\t\tcellLocation.columnIndex === selection.columnIndex\n\t\t\t);\n\t\tcase 'cell':\n\t\t\treturn (\n\t\t\t\tselection.type === 'cell' &&\n\t\t\t\tcellLocation.sectionName === selection.sectionName &&\n\t\t\t\tcellLocation.columnIndex === selection.columnIndex &&\n\t\t\t\tcellLocation.rowIndex === selection.rowIndex\n\t\t\t);\n\t}\n}\n\n/**\n * Inserts a row in the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {string} options.sectionName Section in which to insert the row.\n * @param {number} options.rowIndex Row index at which to insert the row.\n * @param {number} options.columnCount Column count for the table to create.\n *\n * @return {Object} New table state.\n */\nexport function insertRow( state, { sectionName, rowIndex, columnCount } ) {\n\tconst firstRow = getFirstRow( state );\n\tconst cellCount =\n\t\tcolumnCount === undefined\n\t\t\t? get( firstRow, [ 'cells', 'length' ] )\n\t\t\t: columnCount;\n\n\t// Bail early if the function cannot determine how many cells to add.\n\tif ( ! cellCount ) {\n\t\treturn state;\n\t}\n\n\treturn {\n\t\t[ sectionName ]: [\n\t\t\t...state[ sectionName ].slice( 0, rowIndex ),\n\t\t\t{\n\t\t\t\tcells: Array.from( { length: cellCount } ).map(\n\t\t\t\t\t( _, index ) => {\n\t\t\t\t\t\tconst firstCellInColumn = get(\n\t\t\t\t\t\t\tfirstRow,\n\t\t\t\t\t\t\t[ 'cells', index ],\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst inheritedAttributes = pick(\n\t\t\t\t\t\t\tfirstCellInColumn,\n\t\t\t\t\t\t\tINHERITED_COLUMN_ATTRIBUTES\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...inheritedAttributes,\n\t\t\t\t\t\t\tcontent: '',\n\t\t\t\t\t\t\ttag: sectionName === 'head' ? 'th' : 'td',\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\t...state[ sectionName ].slice( rowIndex ),\n\t\t],\n\t};\n}\n\n/**\n * Deletes a row from the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {string} options.sectionName Section in which to delete the row.\n * @param {number} options.rowIndex Row index to delete.\n *\n * @return {Object} New table state.\n */\nexport function deleteRow( state, { sectionName, rowIndex } ) {\n\treturn {\n\t\t[ sectionName ]: state[ sectionName ].filter(\n\t\t\t( row, index ) => index !== rowIndex\n\t\t),\n\t};\n}\n\n/**\n * Inserts a column in the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {number} options.columnIndex Column index at which to insert the column.\n *\n * @return {Object} New table state.\n */\nexport function insertColumn( state, { columnIndex } ) {\n\tconst tableSections = pick( state, [ 'head', 'body', 'foot' ] );\n\n\treturn mapValues( tableSections, ( section, sectionName ) => {\n\t\t// Bail early if the table section is empty.\n\t\tif ( isEmptyTableSection( section ) ) {\n\t\t\treturn section;\n\t\t}\n\n\t\treturn section.map( ( row ) => {\n\t\t\t// Bail early if the row is empty or it's an attempt to insert past\n\t\t\t// the last possible index of the array.\n\t\t\tif ( isEmptyRow( row ) || row.cells.length < columnIndex ) {\n\t\t\t\treturn row;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tcells: [\n\t\t\t\t\t...row.cells.slice( 0, columnIndex ),\n\t\t\t\t\t{\n\t\t\t\t\t\tcontent: '',\n\t\t\t\t\t\ttag: sectionName === 'head' ? 'th' : 'td',\n\t\t\t\t\t},\n\t\t\t\t\t...row.cells.slice( columnIndex ),\n\t\t\t\t],\n\t\t\t};\n\t\t} );\n\t} );\n}\n\n/**\n * Deletes a column from the table state.\n *\n * @param {Object} state Current table state.\n * @param {Object} options\n * @param {number} options.columnIndex Column index to delete.\n *\n * @return {Object} New table state.\n */\nexport function deleteColumn( state, { columnIndex } ) {\n\tconst tableSections = pick( state, [ 'head', 'body', 'foot' ] );\n\n\treturn mapValues( tableSections, ( section ) => {\n\t\t// Bail early if the table section is empty.\n\t\tif ( isEmptyTableSection( section ) ) {\n\t\t\treturn section;\n\t\t}\n\n\t\treturn section\n\t\t\t.map( ( row ) => ( {\n\t\t\t\tcells:\n\t\t\t\t\trow.cells.length >= columnIndex\n\t\t\t\t\t\t? row.cells.filter(\n\t\t\t\t\t\t\t\t( cell, index ) => index !== columnIndex\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: row.cells,\n\t\t\t} ) )\n\t\t\t.filter( ( row ) => row.cells.length );\n\t} );\n}\n\n/**\n * Toggles the existence of a section.\n *\n * @param {Object} state Current table state.\n * @param {string} sectionName Name of the section to toggle.\n *\n * @return {Object} New table state.\n */\nexport function toggleSection( state, sectionName ) {\n\t// Section exists, replace it with an empty row to remove it.\n\tif ( ! isEmptyTableSection( state[ sectionName ] ) ) {\n\t\treturn { [ sectionName ]: [] };\n\t}\n\n\t// Get the length of the first row of the body to use when creating the header.\n\tconst columnCount = get( state, [ 'body', 0, 'cells', 'length' ], 1 );\n\n\t// Section doesn't exist, insert an empty row to create the section.\n\treturn insertRow( state, { sectionName, rowIndex: 0, columnCount } );\n}\n\n/**\n * Determines whether a table section is empty.\n *\n * @param {Object} section Table section state.\n *\n * @return {boolean} True if the table section is empty, false otherwise.\n */\nexport function isEmptyTableSection( section ) {\n\treturn ! section || ! section.length || section.every( isEmptyRow );\n}\n\n/**\n * Determines whether a table row is empty.\n *\n * @param {Object} row Table row state.\n *\n * @return {boolean} True if the table section is empty, false otherwise.\n */\nexport function isEmptyRow( row ) {\n\treturn ! ( row.cells && row.cells.length );\n}\n"]}
@@ -45,6 +45,11 @@ function enhanceTemplatePartVariations(settings, name) {
45
45
 
46
46
  if (!slug) return false;
47
47
  const entity = (0, _data.select)(_coreData.store).getEntityRecord('postType', 'wp_template_part', `${theme}//${slug}`);
48
+
49
+ if (entity !== null && entity !== void 0 && entity.slug) {
50
+ return entity.slug === variationAttributes.slug;
51
+ }
52
+
48
53
  return (entity === null || entity === void 0 ? void 0 : entity.area) === variationAttributes.area;
49
54
  };
50
55
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/variations.js"],"names":["getTemplatePartIcon","iconName","headerIcon","footerIcon","sidebarIcon","symbolFilledIcon","enhanceTemplatePartVariations","settings","name","variations","isActive","blockAttributes","variationAttributes","area","theme","slug","entity","coreDataStore","getEntityRecord","map","variation","icon"],"mappings":";;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AAUA,SAASA,mBAAT,CAA8BC,QAA9B,EAAyC;AACxC,MAAK,aAAaA,QAAlB,EAA6B;AAC5B,WAAOC,aAAP;AACA,GAFD,MAEO,IAAK,aAAaD,QAAlB,EAA6B;AACnC,WAAOE,aAAP;AACA,GAFM,MAEA,IAAK,cAAcF,QAAnB,EAA8B;AACpC,WAAOG,cAAP;AACA;;AACD,SAAOC,mBAAP;AACA;;AAEM,SAASC,6BAAT,CAAwCC,QAAxC,EAAkDC,IAAlD,EAAyD;AAC/D,MAAKA,IAAI,KAAK,oBAAd,EAAqC;AACpC,WAAOD,QAAP;AACA;;AAED,MAAKA,QAAQ,CAACE,UAAd,EAA2B;AAC1B,UAAMC,QAAQ,GAAG,CAAEC,eAAF,EAAmBC,mBAAnB,KAA4C;AAC5D,YAAM;AAAEC,QAAAA,IAAF;AAAQC,QAAAA,KAAR;AAAeC,QAAAA;AAAf,UAAwBJ,eAA9B,CAD4D,CAE5D;AACA;;AACA,UAAKE,IAAL,EAAY,OAAOA,IAAI,KAAKD,mBAAmB,CAACC,IAApC,CAJgD,CAK5D;AACA;;AACA,UAAK,CAAEE,IAAP,EAAc,OAAO,KAAP;AACd,YAAMC,MAAM,GAAG,kBAAQC,eAAR,EAAwBC,eAAxB,CACd,UADc,EAEd,kBAFc,EAGb,GAAGJ,KAAO,KAAKC,IAAM,EAHR,CAAf;AAKA,aAAO,CAAAC,MAAM,SAAN,IAAAA,MAAM,WAAN,YAAAA,MAAM,CAAEH,IAAR,MAAiBD,mBAAmB,CAACC,IAA5C;AACA,KAdD;;AAgBA,UAAMJ,UAAU,GAAGF,QAAQ,CAACE,UAAT,CAAoBU,GAApB,CAA2BC,SAAF,IAAiB;AAC5D,aAAO,EACN,GAAGA,SADG;AAEN,YAAK,CAAEA,SAAS,CAACV,QAAZ,IAAwB;AAAEA,UAAAA;AAAF,SAA7B,CAFM;AAGN,YAAK,OAAOU,SAAS,CAACC,IAAjB,KAA0B,QAA1B,IAAsC;AAC1CA,UAAAA,IAAI,EAAErB,mBAAmB,CAAEoB,SAAS,CAACC,IAAZ;AADiB,SAA3C;AAHM,OAAP;AAOA,KARkB,CAAnB;AAUA,WAAO,EACN,GAAGd,QADG;AAENE,MAAAA;AAFM,KAAP;AAIA;;AACD,SAAOF,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { select } from '@wordpress/data';\nimport {\n\theader as headerIcon,\n\tfooter as footerIcon,\n\tsidebar as sidebarIcon,\n\tsymbolFilled as symbolFilledIcon,\n} from '@wordpress/icons';\n\nfunction getTemplatePartIcon( iconName ) {\n\tif ( 'header' === iconName ) {\n\t\treturn headerIcon;\n\t} else if ( 'footer' === iconName ) {\n\t\treturn footerIcon;\n\t} else if ( 'sidebar' === iconName ) {\n\t\treturn sidebarIcon;\n\t}\n\treturn symbolFilledIcon;\n}\n\nexport function enhanceTemplatePartVariations( settings, name ) {\n\tif ( name !== 'core/template-part' ) {\n\t\treturn settings;\n\t}\n\n\tif ( settings.variations ) {\n\t\tconst isActive = ( blockAttributes, variationAttributes ) => {\n\t\t\tconst { area, theme, slug } = blockAttributes;\n\t\t\t// We first check the `area` block attribute which is set during insertion.\n\t\t\t// This property is removed on the creation of a template part.\n\t\t\tif ( area ) return area === variationAttributes.area;\n\t\t\t// Find a matching variation from the created template part\n\t\t\t// by checking the entity's `area` property.\n\t\t\tif ( ! slug ) return false;\n\t\t\tconst entity = select( coreDataStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\t`${ theme }//${ slug }`\n\t\t\t);\n\t\t\treturn entity?.area === variationAttributes.area;\n\t\t};\n\n\t\tconst variations = settings.variations.map( ( variation ) => {\n\t\t\treturn {\n\t\t\t\t...variation,\n\t\t\t\t...( ! variation.isActive && { isActive } ),\n\t\t\t\t...( typeof variation.icon === 'string' && {\n\t\t\t\t\ticon: getTemplatePartIcon( variation.icon ),\n\t\t\t\t} ),\n\t\t\t};\n\t\t} );\n\n\t\treturn {\n\t\t\t...settings,\n\t\t\tvariations,\n\t\t};\n\t}\n\treturn settings;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/variations.js"],"names":["getTemplatePartIcon","iconName","headerIcon","footerIcon","sidebarIcon","symbolFilledIcon","enhanceTemplatePartVariations","settings","name","variations","isActive","blockAttributes","variationAttributes","area","theme","slug","entity","coreDataStore","getEntityRecord","map","variation","icon"],"mappings":";;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AAUA,SAASA,mBAAT,CAA8BC,QAA9B,EAAyC;AACxC,MAAK,aAAaA,QAAlB,EAA6B;AAC5B,WAAOC,aAAP;AACA,GAFD,MAEO,IAAK,aAAaD,QAAlB,EAA6B;AACnC,WAAOE,aAAP;AACA,GAFM,MAEA,IAAK,cAAcF,QAAnB,EAA8B;AACpC,WAAOG,cAAP;AACA;;AACD,SAAOC,mBAAP;AACA;;AAEM,SAASC,6BAAT,CAAwCC,QAAxC,EAAkDC,IAAlD,EAAyD;AAC/D,MAAKA,IAAI,KAAK,oBAAd,EAAqC;AACpC,WAAOD,QAAP;AACA;;AAED,MAAKA,QAAQ,CAACE,UAAd,EAA2B;AAC1B,UAAMC,QAAQ,GAAG,CAAEC,eAAF,EAAmBC,mBAAnB,KAA4C;AAC5D,YAAM;AAAEC,QAAAA,IAAF;AAAQC,QAAAA,KAAR;AAAeC,QAAAA;AAAf,UAAwBJ,eAA9B,CAD4D,CAE5D;AACA;;AACA,UAAKE,IAAL,EAAY,OAAOA,IAAI,KAAKD,mBAAmB,CAACC,IAApC,CAJgD,CAK5D;AACA;;AACA,UAAK,CAAEE,IAAP,EAAc,OAAO,KAAP;AACd,YAAMC,MAAM,GAAG,kBAAQC,eAAR,EAAwBC,eAAxB,CACd,UADc,EAEd,kBAFc,EAGb,GAAGJ,KAAO,KAAKC,IAAM,EAHR,CAAf;;AAMA,UAAKC,MAAL,aAAKA,MAAL,eAAKA,MAAM,CAAED,IAAb,EAAoB;AACnB,eAAOC,MAAM,CAACD,IAAP,KAAgBH,mBAAmB,CAACG,IAA3C;AACA;;AACD,aAAO,CAAAC,MAAM,SAAN,IAAAA,MAAM,WAAN,YAAAA,MAAM,CAAEH,IAAR,MAAiBD,mBAAmB,CAACC,IAA5C;AACA,KAlBD;;AAoBA,UAAMJ,UAAU,GAAGF,QAAQ,CAACE,UAAT,CAAoBU,GAApB,CAA2BC,SAAF,IAAiB;AAC5D,aAAO,EACN,GAAGA,SADG;AAEN,YAAK,CAAEA,SAAS,CAACV,QAAZ,IAAwB;AAAEA,UAAAA;AAAF,SAA7B,CAFM;AAGN,YAAK,OAAOU,SAAS,CAACC,IAAjB,KAA0B,QAA1B,IAAsC;AAC1CA,UAAAA,IAAI,EAAErB,mBAAmB,CAAEoB,SAAS,CAACC,IAAZ;AADiB,SAA3C;AAHM,OAAP;AAOA,KARkB,CAAnB;AAUA,WAAO,EACN,GAAGd,QADG;AAENE,MAAAA;AAFM,KAAP;AAIA;;AACD,SAAOF,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { select } from '@wordpress/data';\nimport {\n\theader as headerIcon,\n\tfooter as footerIcon,\n\tsidebar as sidebarIcon,\n\tsymbolFilled as symbolFilledIcon,\n} from '@wordpress/icons';\n\nfunction getTemplatePartIcon( iconName ) {\n\tif ( 'header' === iconName ) {\n\t\treturn headerIcon;\n\t} else if ( 'footer' === iconName ) {\n\t\treturn footerIcon;\n\t} else if ( 'sidebar' === iconName ) {\n\t\treturn sidebarIcon;\n\t}\n\treturn symbolFilledIcon;\n}\n\nexport function enhanceTemplatePartVariations( settings, name ) {\n\tif ( name !== 'core/template-part' ) {\n\t\treturn settings;\n\t}\n\n\tif ( settings.variations ) {\n\t\tconst isActive = ( blockAttributes, variationAttributes ) => {\n\t\t\tconst { area, theme, slug } = blockAttributes;\n\t\t\t// We first check the `area` block attribute which is set during insertion.\n\t\t\t// This property is removed on the creation of a template part.\n\t\t\tif ( area ) return area === variationAttributes.area;\n\t\t\t// Find a matching variation from the created template part\n\t\t\t// by checking the entity's `area` property.\n\t\t\tif ( ! slug ) return false;\n\t\t\tconst entity = select( coreDataStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\t`${ theme }//${ slug }`\n\t\t\t);\n\n\t\t\tif ( entity?.slug ) {\n\t\t\t\treturn entity.slug === variationAttributes.slug;\n\t\t\t}\n\t\t\treturn entity?.area === variationAttributes.area;\n\t\t};\n\n\t\tconst variations = settings.variations.map( ( variation ) => {\n\t\t\treturn {\n\t\t\t\t...variation,\n\t\t\t\t...( ! variation.isActive && { isActive } ),\n\t\t\t\t...( typeof variation.icon === 'string' && {\n\t\t\t\t\ticon: getTemplatePartIcon( variation.icon ),\n\t\t\t\t} ),\n\t\t\t};\n\t\t} );\n\n\t\treturn {\n\t\t\t...settings,\n\t\t\tvariations,\n\t\t};\n\t}\n\treturn settings;\n}\n"]}