@wordpress/block-library 9.9.0 → 9.10.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 (705) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/audio/edit.native.js +1 -1
  3. package/build/audio/edit.native.js.map +1 -1
  4. package/build/block/edit.js.map +1 -1
  5. package/build/block/edit.native.js +2 -2
  6. package/build/block/edit.native.js.map +1 -1
  7. package/build/block-keyboard-shortcuts/index.js.map +1 -1
  8. package/build/button/deprecated.js.map +1 -1
  9. package/build/button/edit.js.map +1 -1
  10. package/build/button/edit.native.js.map +1 -1
  11. package/build/button/get-updated-link-attributes.js.map +1 -1
  12. package/build/button/save.js.map +1 -1
  13. package/build/buttons/deprecated.js.map +1 -1
  14. package/build/categories/edit.js +1 -1
  15. package/build/categories/edit.js.map +1 -1
  16. package/build/column/deprecated.js.map +1 -1
  17. package/build/column/edit.js +1 -1
  18. package/build/column/edit.js.map +1 -1
  19. package/build/column/edit.native.js.map +1 -1
  20. package/build/column/save.js.map +1 -1
  21. package/build/columns/deprecated.js.map +1 -1
  22. package/build/columns/edit.js.map +1 -1
  23. package/build/columns/edit.native.js +1 -1
  24. package/build/columns/edit.native.js.map +1 -1
  25. package/build/columns/save.js.map +1 -1
  26. package/build/columns/transforms.js.map +1 -1
  27. package/build/columns/utils.js.map +1 -1
  28. package/build/comment-author-avatar/edit.js.map +1 -1
  29. package/build/comment-author-name/edit.js.map +1 -1
  30. package/build/comment-content/edit.js.map +1 -1
  31. package/build/comment-edit-link/edit.js.map +1 -1
  32. package/build/comment-reply-link/edit.js.map +1 -1
  33. package/build/comment-template/hooks.js.map +1 -1
  34. package/build/comments/edit/comments-legacy.js.map +1 -1
  35. package/build/comments-pagination-next/edit.js.map +1 -1
  36. package/build/comments-pagination-numbers/edit.js.map +1 -1
  37. package/build/comments-pagination-previous/edit.js.map +1 -1
  38. package/build/comments-title/edit.js +2 -2
  39. package/build/comments-title/edit.js.map +1 -1
  40. package/build/cover/controls.native.js.map +1 -1
  41. package/build/cover/deprecated.js.map +1 -1
  42. package/build/cover/edit/index.js.map +1 -1
  43. package/build/cover/edit/inspector-controls.js +74 -30
  44. package/build/cover/edit/inspector-controls.js.map +1 -1
  45. package/build/cover/save.js.map +1 -1
  46. package/build/cover/shared.js.map +1 -1
  47. package/build/embed/deprecated.js.map +1 -1
  48. package/build/embed/edit.js +16 -3
  49. package/build/embed/edit.js.map +1 -1
  50. package/build/embed/embed-preview.js +5 -19
  51. package/build/embed/embed-preview.js.map +1 -1
  52. package/build/embed/embed-preview.native.js +1 -1
  53. package/build/embed/embed-preview.native.js.map +1 -1
  54. package/build/embed/save.js.map +1 -1
  55. package/build/embed/transforms.js.map +1 -1
  56. package/build/embed/variations.js +1 -1
  57. package/build/embed/variations.js.map +1 -1
  58. package/build/embed/wp-embed-preview.native.js.map +1 -1
  59. package/build/file/deprecated.js +3 -3
  60. package/build/file/deprecated.js.map +1 -1
  61. package/build/file/edit.js.map +1 -1
  62. package/build/file/save.js.map +1 -1
  63. package/build/footnotes/edit.js.map +1 -1
  64. package/build/footnotes/format.js.map +1 -1
  65. package/build/form/edit.js.map +1 -1
  66. package/build/form-submission-notification/edit.js.map +1 -1
  67. package/build/form-submission-notification/save.js.map +1 -1
  68. package/build/freeform/edit.js.map +1 -1
  69. package/build/freeform/modal.js.map +1 -1
  70. package/build/gallery/deprecated.js.map +1 -1
  71. package/build/gallery/edit.js +2 -2
  72. package/build/gallery/edit.js.map +1 -1
  73. package/build/gallery/gallery.js.map +1 -1
  74. package/build/gallery/gallery.native.js +1 -1
  75. package/build/gallery/gallery.native.js.map +1 -1
  76. package/build/gallery/gap-styles.js.map +1 -1
  77. package/build/gallery/save.js.map +1 -1
  78. package/build/group/placeholder.js.map +1 -1
  79. package/build/heading/deprecated.js.map +1 -1
  80. package/build/heading/edit.js.map +1 -1
  81. package/build/heading/edit.native.js.map +1 -1
  82. package/build/heading/index.js +2 -2
  83. package/build/heading/index.js.map +1 -1
  84. package/build/heading/save.js.map +1 -1
  85. package/build/heading/transforms.js.map +1 -1
  86. package/build/home-link/edit.js.map +1 -1
  87. package/build/html/preview.js.map +1 -1
  88. package/build/image/deprecated.js.map +1 -1
  89. package/build/image/edit.js +1 -1
  90. package/build/image/edit.js.map +1 -1
  91. package/build/image/edit.native.js +1 -1
  92. package/build/image/edit.native.js.map +1 -1
  93. package/build/image/image.js +3 -3
  94. package/build/image/image.js.map +1 -1
  95. package/build/image/save.js.map +1 -1
  96. package/build/image/view.js.map +1 -1
  97. package/build/index.native.js.map +1 -1
  98. package/build/latest-posts/edit.js +2 -2
  99. package/build/latest-posts/edit.js.map +1 -1
  100. package/build/media-text/deprecated.js.map +1 -1
  101. package/build/media-text/edit.js.map +1 -1
  102. package/build/media-text/edit.native.js.map +1 -1
  103. package/build/media-text/image-fill.js.map +1 -1
  104. package/build/media-text/save.js.map +1 -1
  105. package/build/missing/edit.js +2 -2
  106. package/build/missing/edit.js.map +1 -1
  107. package/build/more/edit.js.map +1 -1
  108. package/build/more/save.js.map +1 -1
  109. package/build/navigation/edit/accessible-menu-description.js.map +1 -1
  110. package/build/navigation/edit/index.js.map +1 -1
  111. package/build/navigation/edit/leaf-more-menu.js +1 -1
  112. package/build/navigation/edit/leaf-more-menu.js.map +1 -1
  113. package/build/navigation/edit/menu-inspector-controls.js +1 -1
  114. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  115. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  116. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  117. package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
  118. package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  119. package/build/navigation/edit/utils.js.map +1 -1
  120. package/build/navigation/use-navigation-menu.js.map +1 -1
  121. package/build/navigation-link/edit.js.map +1 -1
  122. package/build/navigation-link/link-ui.js.map +1 -1
  123. package/build/nextpage/edit.native.js +1 -1
  124. package/build/nextpage/edit.native.js.map +1 -1
  125. package/build/page-list-item/edit.js +1 -1
  126. package/build/page-list-item/edit.js.map +1 -1
  127. package/build/paragraph/deprecated.js.map +1 -1
  128. package/build/paragraph/edit.js.map +1 -1
  129. package/build/paragraph/save.js.map +1 -1
  130. package/build/pattern/recursion-detector.js +1 -0
  131. package/build/pattern/recursion-detector.js.map +1 -1
  132. package/build/post-author/edit.js.map +1 -1
  133. package/build/post-author-biography/edit.js.map +1 -1
  134. package/build/post-author-name/edit.js.map +1 -1
  135. package/build/post-comments-count/edit.js.map +1 -1
  136. package/build/post-comments-form/edit.js.map +1 -1
  137. package/build/post-comments-form/form.js +1 -1
  138. package/build/post-comments-form/form.js.map +1 -1
  139. package/build/post-comments-link/edit.js +1 -1
  140. package/build/post-comments-link/edit.js.map +1 -1
  141. package/build/post-content/edit.js +29 -2
  142. package/build/post-content/edit.js.map +1 -1
  143. package/build/post-date/edit.js.map +1 -1
  144. package/build/post-excerpt/edit.js.map +1 -1
  145. package/build/post-navigation-link/edit.js.map +1 -1
  146. package/build/post-template/edit.js.map +1 -1
  147. package/build/post-terms/edit.js.map +1 -1
  148. package/build/post-time-to-read/edit.js +1 -1
  149. package/build/post-time-to-read/edit.js.map +1 -1
  150. package/build/post-title/edit.js.map +1 -1
  151. package/build/pullquote/deprecated.js.map +1 -1
  152. package/build/pullquote/edit.js.map +1 -1
  153. package/build/pullquote/save.js.map +1 -1
  154. package/build/pullquote/shared.js.map +1 -1
  155. package/build/query/edit/inspector-controls/author-control.js +1 -0
  156. package/build/query/edit/inspector-controls/author-control.js.map +1 -1
  157. package/build/query/edit/inspector-controls/index.js +8 -11
  158. package/build/query/edit/inspector-controls/index.js.map +1 -1
  159. package/build/query/edit/inspector-controls/order-control.js.map +1 -1
  160. package/build/query/edit/inspector-controls/parent-control.js +1 -0
  161. package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
  162. package/build/query/edit/inspector-controls/taxonomy-controls.js +1 -0
  163. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  164. package/build/query/edit/pattern-selection-modal.js +1 -1
  165. package/build/query/edit/pattern-selection-modal.js.map +1 -1
  166. package/build/query/utils.js.map +1 -1
  167. package/build/query/view.js.map +1 -1
  168. package/build/query-pagination-next/edit.js.map +1 -1
  169. package/build/query-pagination-numbers/edit.js.map +1 -1
  170. package/build/query-pagination-previous/edit.js.map +1 -1
  171. package/build/query-title/edit.js +3 -3
  172. package/build/query-title/edit.js.map +1 -1
  173. package/build/quote/deprecated.js.map +1 -1
  174. package/build/quote/edit.js.map +1 -1
  175. package/build/quote/save.js.map +1 -1
  176. package/build/quote/transforms.js.map +1 -1
  177. package/build/search/edit.js.map +1 -1
  178. package/build/search/edit.native.js.map +1 -1
  179. package/build/shortcode/edit.js.map +1 -1
  180. package/build/site-tagline/edit.js.map +1 -1
  181. package/build/site-title/edit.js.map +1 -1
  182. package/build/social-link/edit.js.map +1 -1
  183. package/build/social-link/edit.native.js.map +1 -1
  184. package/build/social-links/deprecated.js.map +1 -1
  185. package/build/social-links/edit.js.map +1 -1
  186. package/build/spacer/controls.native.js.map +1 -1
  187. package/build/spacer/deprecated.js.map +1 -1
  188. package/build/spacer/edit.js.map +1 -1
  189. package/build/table/deprecated.js.map +1 -1
  190. package/build/table/edit.js.map +1 -1
  191. package/build/table/save.js.map +1 -1
  192. package/build/table-of-contents/edit.js +1 -1
  193. package/build/table-of-contents/edit.js.map +1 -1
  194. package/build/table-of-contents/hooks.js.map +1 -1
  195. package/build/tag-cloud/edit.js.map +1 -1
  196. package/build/template-part/edit/advanced-controls.js +1 -1
  197. package/build/template-part/edit/advanced-controls.js.map +1 -1
  198. package/build/template-part/edit/import-controls.js +2 -1
  199. package/build/template-part/edit/import-controls.js.map +1 -1
  200. package/build/template-part/edit/index.js +2 -2
  201. package/build/template-part/edit/index.js.map +1 -1
  202. package/build/template-part/edit/selection-modal.js +2 -2
  203. package/build/template-part/edit/selection-modal.js.map +1 -1
  204. package/build/template-part/edit/utils/hooks.js.map +1 -1
  205. package/build/template-part/variations.js.map +1 -1
  206. package/build/term-description/edit.js.map +1 -1
  207. package/build/text-columns/edit.js.map +1 -1
  208. package/build/text-columns/save.js.map +1 -1
  209. package/build/verse/deprecated.js.map +1 -1
  210. package/build/verse/edit.js.map +1 -1
  211. package/build/verse/save.js.map +1 -1
  212. package/build/video/edit.js +1 -1
  213. package/build/video/edit.js.map +1 -1
  214. package/build/video/edit.native.js +1 -1
  215. package/build/video/edit.native.js.map +1 -1
  216. package/build/video/tracks-editor.js +1 -1
  217. package/build/video/tracks-editor.js.map +1 -1
  218. package/build-module/archives/edit.js +1 -3
  219. package/build-module/archives/edit.js.map +1 -1
  220. package/build-module/audio/deprecated.js +1 -2
  221. package/build-module/audio/deprecated.js.map +1 -1
  222. package/build-module/audio/edit.js +1 -3
  223. package/build-module/audio/edit.js.map +1 -1
  224. package/build-module/audio/edit.native.js +2 -4
  225. package/build-module/audio/edit.native.js.map +1 -1
  226. package/build-module/audio/save.js +1 -2
  227. package/build-module/audio/save.js.map +1 -1
  228. package/build-module/avatar/edit.js +1 -3
  229. package/build-module/avatar/edit.js.map +1 -1
  230. package/build-module/block/edit-title.native.js +1 -2
  231. package/build-module/block/edit-title.native.js.map +1 -1
  232. package/build-module/block/edit.js +1 -3
  233. package/build-module/block/edit.js.map +1 -1
  234. package/build-module/block/edit.native.js +3 -4
  235. package/build-module/block/edit.native.js.map +1 -1
  236. package/build-module/block-keyboard-shortcuts/index.js.map +1 -1
  237. package/build-module/button/color-background.native.js +1 -2
  238. package/build-module/button/color-background.native.js.map +1 -1
  239. package/build-module/button/deprecated.js.map +1 -1
  240. package/build-module/button/edit.js +1 -3
  241. package/build-module/button/edit.js.map +1 -1
  242. package/build-module/button/edit.native.js +1 -3
  243. package/build-module/button/edit.native.js.map +1 -1
  244. package/build-module/button/get-updated-link-attributes.js.map +1 -1
  245. package/build-module/button/save.js.map +1 -1
  246. package/build-module/buttons/deprecated.js.map +1 -1
  247. package/build-module/buttons/edit.native.js +1 -3
  248. package/build-module/buttons/edit.native.js.map +1 -1
  249. package/build-module/categories/edit.js +2 -4
  250. package/build-module/categories/edit.js.map +1 -1
  251. package/build-module/column/deprecated.js.map +1 -1
  252. package/build-module/column/edit.js +2 -4
  253. package/build-module/column/edit.js.map +1 -1
  254. package/build-module/column/edit.native.js +1 -3
  255. package/build-module/column/edit.native.js.map +1 -1
  256. package/build-module/column/save.js.map +1 -1
  257. package/build-module/columns/deprecated.js.map +1 -1
  258. package/build-module/columns/edit.js +1 -3
  259. package/build-module/columns/edit.js.map +1 -1
  260. package/build-module/columns/edit.native.js +2 -4
  261. package/build-module/columns/edit.native.js.map +1 -1
  262. package/build-module/columns/save.js.map +1 -1
  263. package/build-module/columns/transforms.js.map +1 -1
  264. package/build-module/columns/utils.js.map +1 -1
  265. package/build-module/comment-author-avatar/edit.js +1 -3
  266. package/build-module/comment-author-avatar/edit.js.map +1 -1
  267. package/build-module/comment-author-name/edit.js +1 -3
  268. package/build-module/comment-author-name/edit.js.map +1 -1
  269. package/build-module/comment-content/edit.js +1 -3
  270. package/build-module/comment-content/edit.js.map +1 -1
  271. package/build-module/comment-date/edit.js +1 -3
  272. package/build-module/comment-date/edit.js.map +1 -1
  273. package/build-module/comment-edit-link/edit.js +1 -3
  274. package/build-module/comment-edit-link/edit.js.map +1 -1
  275. package/build-module/comment-reply-link/edit.js +1 -3
  276. package/build-module/comment-reply-link/edit.js.map +1 -1
  277. package/build-module/comment-template/edit.js +1 -2
  278. package/build-module/comment-template/edit.js.map +1 -1
  279. package/build-module/comment-template/hooks.js.map +1 -1
  280. package/build-module/comments/edit/comments-legacy.js +1 -3
  281. package/build-module/comments/edit/comments-legacy.js.map +1 -1
  282. package/build-module/comments/edit/index.js +1 -3
  283. package/build-module/comments/edit/index.js.map +1 -1
  284. package/build-module/comments/edit/placeholder.js +1 -2
  285. package/build-module/comments/edit/placeholder.js.map +1 -1
  286. package/build-module/comments-pagination/comments-pagination-arrow-controls.js +1 -2
  287. package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  288. package/build-module/comments-pagination/edit.js +1 -3
  289. package/build-module/comments-pagination/edit.js.map +1 -1
  290. package/build-module/comments-pagination-next/edit.js +1 -2
  291. package/build-module/comments-pagination-next/edit.js.map +1 -1
  292. package/build-module/comments-pagination-numbers/edit.js +1 -2
  293. package/build-module/comments-pagination-numbers/edit.js.map +1 -1
  294. package/build-module/comments-pagination-previous/edit.js +1 -2
  295. package/build-module/comments-pagination-previous/edit.js.map +1 -1
  296. package/build-module/comments-title/edit.js +3 -5
  297. package/build-module/comments-title/edit.js.map +1 -1
  298. package/build-module/cover/controls.native.js +1 -3
  299. package/build-module/cover/controls.native.js.map +1 -1
  300. package/build-module/cover/deprecated.js +1 -2
  301. package/build-module/cover/deprecated.js.map +1 -1
  302. package/build-module/cover/edit/block-controls.js +1 -3
  303. package/build-module/cover/edit/block-controls.js.map +1 -1
  304. package/build-module/cover/edit/index.js +1 -3
  305. package/build-module/cover/edit/index.js.map +1 -1
  306. package/build-module/cover/edit/inspector-controls.js +76 -34
  307. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  308. package/build-module/cover/edit.native.js +1 -3
  309. package/build-module/cover/edit.native.js.map +1 -1
  310. package/build-module/cover/save.js +1 -2
  311. package/build-module/cover/save.js.map +1 -1
  312. package/build-module/cover/shared.js.map +1 -1
  313. package/build-module/details/edit.js +1 -3
  314. package/build-module/details/edit.js.map +1 -1
  315. package/build-module/details/save.js +1 -2
  316. package/build-module/details/save.js.map +1 -1
  317. package/build-module/embed/deprecated.js +1 -2
  318. package/build-module/embed/deprecated.js.map +1 -1
  319. package/build-module/embed/edit.js +17 -6
  320. package/build-module/embed/edit.js.map +1 -1
  321. package/build-module/embed/edit.native.js +1 -3
  322. package/build-module/embed/edit.native.js.map +1 -1
  323. package/build-module/embed/embed-controls.js +1 -3
  324. package/build-module/embed/embed-controls.js.map +1 -1
  325. package/build-module/embed/embed-controls.native.js +1 -3
  326. package/build-module/embed/embed-controls.native.js.map +1 -1
  327. package/build-module/embed/embed-no-preview.native.js +1 -3
  328. package/build-module/embed/embed-no-preview.native.js.map +1 -1
  329. package/build-module/embed/embed-placeholder.js +1 -2
  330. package/build-module/embed/embed-placeholder.js.map +1 -1
  331. package/build-module/embed/embed-placeholder.native.js +1 -3
  332. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  333. package/build-module/embed/embed-preview.js +6 -21
  334. package/build-module/embed/embed-preview.js.map +1 -1
  335. package/build-module/embed/embed-preview.native.js +2 -4
  336. package/build-module/embed/embed-preview.native.js.map +1 -1
  337. package/build-module/embed/icons.js +1 -2
  338. package/build-module/embed/icons.js.map +1 -1
  339. package/build-module/embed/save.js +1 -2
  340. package/build-module/embed/save.js.map +1 -1
  341. package/build-module/embed/transforms.js.map +1 -1
  342. package/build-module/embed/variations.js +1 -1
  343. package/build-module/embed/variations.js.map +1 -1
  344. package/build-module/embed/wp-embed-preview.native.js.map +1 -1
  345. package/build-module/file/deprecated.js +4 -6
  346. package/build-module/file/deprecated.js.map +1 -1
  347. package/build-module/file/edit.js +1 -3
  348. package/build-module/file/edit.js.map +1 -1
  349. package/build-module/file/edit.native.js +1 -2
  350. package/build-module/file/edit.native.js.map +1 -1
  351. package/build-module/file/inspector.js +1 -3
  352. package/build-module/file/inspector.js.map +1 -1
  353. package/build-module/file/save.js +1 -3
  354. package/build-module/file/save.js.map +1 -1
  355. package/build-module/footnotes/edit.js +1 -2
  356. package/build-module/footnotes/edit.js.map +1 -1
  357. package/build-module/footnotes/format.js.map +1 -1
  358. package/build-module/form/edit.js +1 -3
  359. package/build-module/form/edit.js.map +1 -1
  360. package/build-module/form-input/deprecated.js +1 -2
  361. package/build-module/form-input/deprecated.js.map +1 -1
  362. package/build-module/form-input/edit.js +1 -3
  363. package/build-module/form-input/edit.js.map +1 -1
  364. package/build-module/form-input/save.js +1 -2
  365. package/build-module/form-input/save.js.map +1 -1
  366. package/build-module/form-submission-notification/edit.js.map +1 -1
  367. package/build-module/form-submission-notification/save.js.map +1 -1
  368. package/build-module/freeform/edit.js +1 -3
  369. package/build-module/freeform/edit.js.map +1 -1
  370. package/build-module/freeform/modal.js +1 -3
  371. package/build-module/freeform/modal.js.map +1 -1
  372. package/build-module/gallery/deprecated.js +1 -2
  373. package/build-module/gallery/deprecated.js.map +1 -1
  374. package/build-module/gallery/edit.js +3 -5
  375. package/build-module/gallery/edit.js.map +1 -1
  376. package/build-module/gallery/gallery.js +1 -2
  377. package/build-module/gallery/gallery.js.map +1 -1
  378. package/build-module/gallery/gallery.native.js +2 -3
  379. package/build-module/gallery/gallery.native.js.map +1 -1
  380. package/build-module/gallery/gap-styles.js.map +1 -1
  381. package/build-module/gallery/save.js +1 -2
  382. package/build-module/gallery/save.js.map +1 -1
  383. package/build-module/group/edit.js +1 -3
  384. package/build-module/group/edit.js.map +1 -1
  385. package/build-module/group/edit.native.js +1 -2
  386. package/build-module/group/edit.native.js.map +1 -1
  387. package/build-module/group/placeholder.js.map +1 -1
  388. package/build-module/heading/deprecated.js.map +1 -1
  389. package/build-module/heading/edit.js +1 -3
  390. package/build-module/heading/edit.js.map +1 -1
  391. package/build-module/heading/edit.native.js +1 -3
  392. package/build-module/heading/edit.native.js.map +1 -1
  393. package/build-module/heading/index.js +2 -2
  394. package/build-module/heading/index.js.map +1 -1
  395. package/build-module/heading/save.js.map +1 -1
  396. package/build-module/heading/transforms.js.map +1 -1
  397. package/build-module/home-link/edit.js +1 -2
  398. package/build-module/home-link/edit.js.map +1 -1
  399. package/build-module/html/edit.js +1 -3
  400. package/build-module/html/edit.js.map +1 -1
  401. package/build-module/html/preview.js +1 -3
  402. package/build-module/html/preview.js.map +1 -1
  403. package/build-module/image/deprecated.js +1 -3
  404. package/build-module/image/deprecated.js.map +1 -1
  405. package/build-module/image/edit.js +2 -4
  406. package/build-module/image/edit.js.map +1 -1
  407. package/build-module/image/edit.native.js +2 -4
  408. package/build-module/image/edit.native.js.map +1 -1
  409. package/build-module/image/image.js +4 -6
  410. package/build-module/image/image.js.map +1 -1
  411. package/build-module/image/save.js +1 -3
  412. package/build-module/image/save.js.map +1 -1
  413. package/build-module/image/view.js.map +1 -1
  414. package/build-module/index.native.js.map +1 -1
  415. package/build-module/latest-comments/edit.js +1 -2
  416. package/build-module/latest-comments/edit.js.map +1 -1
  417. package/build-module/latest-posts/edit.js +3 -5
  418. package/build-module/latest-posts/edit.js.map +1 -1
  419. package/build-module/latest-posts/edit.native.js +1 -3
  420. package/build-module/latest-posts/edit.native.js.map +1 -1
  421. package/build-module/list/edit.js +1 -3
  422. package/build-module/list/edit.js.map +1 -1
  423. package/build-module/list/ordered-list-settings.js +1 -2
  424. package/build-module/list/ordered-list-settings.js.map +1 -1
  425. package/build-module/list-item/edit.js +1 -3
  426. package/build-module/list-item/edit.js.map +1 -1
  427. package/build-module/list-item/edit.native.js +1 -2
  428. package/build-module/list-item/edit.native.js.map +1 -1
  429. package/build-module/list-item/list-style-type.native.js +1 -2
  430. package/build-module/list-item/list-style-type.native.js.map +1 -1
  431. package/build-module/list-item/save.js +1 -2
  432. package/build-module/list-item/save.js.map +1 -1
  433. package/build-module/loginout/edit.js +1 -3
  434. package/build-module/loginout/edit.js.map +1 -1
  435. package/build-module/media-text/deprecated.js +1 -2
  436. package/build-module/media-text/deprecated.js.map +1 -1
  437. package/build-module/media-text/edit.js +1 -3
  438. package/build-module/media-text/edit.js.map +1 -1
  439. package/build-module/media-text/edit.native.js +1 -3
  440. package/build-module/media-text/edit.native.js.map +1 -1
  441. package/build-module/media-text/icon-retry.native.js +1 -2
  442. package/build-module/media-text/icon-retry.native.js.map +1 -1
  443. package/build-module/media-text/image-fill.js.map +1 -1
  444. package/build-module/media-text/media-container.js +1 -2
  445. package/build-module/media-text/media-container.js.map +1 -1
  446. package/build-module/media-text/media-container.native.js +1 -3
  447. package/build-module/media-text/media-container.native.js.map +1 -1
  448. package/build-module/media-text/save.js +1 -2
  449. package/build-module/media-text/save.js.map +1 -1
  450. package/build-module/missing/edit.js +3 -4
  451. package/build-module/missing/edit.js.map +1 -1
  452. package/build-module/missing/edit.native.js +1 -2
  453. package/build-module/missing/edit.native.js.map +1 -1
  454. package/build-module/more/edit.js +1 -3
  455. package/build-module/more/edit.js.map +1 -1
  456. package/build-module/more/save.js.map +1 -1
  457. package/build-module/navigation/edit/accessible-menu-description.js.map +1 -1
  458. package/build-module/navigation/edit/index.js +1 -3
  459. package/build-module/navigation/edit/index.js.map +1 -1
  460. package/build-module/navigation/edit/leaf-more-menu.js +2 -4
  461. package/build-module/navigation/edit/leaf-more-menu.js.map +1 -1
  462. package/build-module/navigation/edit/menu-inspector-controls.js +2 -3
  463. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  464. package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -3
  465. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  466. package/build-module/navigation/edit/navigation-menu-selector.js +1 -3
  467. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  468. package/build-module/navigation/edit/overlay-menu-icon.js +1 -2
  469. package/build-module/navigation/edit/overlay-menu-icon.js.map +1 -1
  470. package/build-module/navigation/edit/overlay-menu-preview.js +1 -3
  471. package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
  472. package/build-module/navigation/edit/placeholder/index.js +1 -3
  473. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  474. package/build-module/navigation/edit/placeholder/placeholder-preview.js +1 -2
  475. package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
  476. package/build-module/navigation/edit/responsive-wrapper.js +1 -3
  477. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  478. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  479. package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
  480. package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  481. package/build-module/navigation/edit/utils.js.map +1 -1
  482. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  483. package/build-module/navigation-link/edit.js +1 -3
  484. package/build-module/navigation-link/edit.js.map +1 -1
  485. package/build-module/navigation-link/link-ui.js +1 -2
  486. package/build-module/navigation-link/link-ui.js.map +1 -1
  487. package/build-module/navigation-submenu/edit.js +1 -3
  488. package/build-module/navigation-submenu/edit.js.map +1 -1
  489. package/build-module/nextpage/edit.native.js +1 -1
  490. package/build-module/nextpage/edit.native.js.map +1 -1
  491. package/build-module/page-list/convert-to-links-modal.js +1 -2
  492. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  493. package/build-module/page-list/edit.js +1 -3
  494. package/build-module/page-list/edit.js.map +1 -1
  495. package/build-module/page-list-item/edit.js +2 -4
  496. package/build-module/page-list-item/edit.js.map +1 -1
  497. package/build-module/paragraph/deprecated.js.map +1 -1
  498. package/build-module/paragraph/edit.js +1 -3
  499. package/build-module/paragraph/edit.js.map +1 -1
  500. package/build-module/paragraph/edit.native.js +1 -3
  501. package/build-module/paragraph/edit.native.js.map +1 -1
  502. package/build-module/paragraph/save.js.map +1 -1
  503. package/build-module/pattern/recursion-detector.js +1 -0
  504. package/build-module/pattern/recursion-detector.js.map +1 -1
  505. package/build-module/post-author/edit.js +1 -3
  506. package/build-module/post-author/edit.js.map +1 -1
  507. package/build-module/post-author-biography/edit.js +1 -3
  508. package/build-module/post-author-biography/edit.js.map +1 -1
  509. package/build-module/post-author-name/edit.js +1 -3
  510. package/build-module/post-author-name/edit.js.map +1 -1
  511. package/build-module/post-comment/edit.js +1 -2
  512. package/build-module/post-comment/edit.js.map +1 -1
  513. package/build-module/post-comments-count/edit.js +1 -3
  514. package/build-module/post-comments-count/edit.js.map +1 -1
  515. package/build-module/post-comments-form/edit.js +1 -3
  516. package/build-module/post-comments-form/edit.js.map +1 -1
  517. package/build-module/post-comments-form/form.js +2 -3
  518. package/build-module/post-comments-form/form.js.map +1 -1
  519. package/build-module/post-comments-link/edit.js +2 -4
  520. package/build-module/post-comments-link/edit.js.map +1 -1
  521. package/build-module/post-content/edit.js +32 -5
  522. package/build-module/post-content/edit.js.map +1 -1
  523. package/build-module/post-date/edit.js +1 -3
  524. package/build-module/post-date/edit.js.map +1 -1
  525. package/build-module/post-excerpt/edit.js +1 -3
  526. package/build-module/post-excerpt/edit.js.map +1 -1
  527. package/build-module/post-featured-image/dimension-controls.js +1 -3
  528. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  529. package/build-module/post-featured-image/edit.js +1 -3
  530. package/build-module/post-featured-image/edit.js.map +1 -1
  531. package/build-module/post-featured-image/overlay-controls.js +1 -3
  532. package/build-module/post-featured-image/overlay-controls.js.map +1 -1
  533. package/build-module/post-navigation-link/edit.js +1 -3
  534. package/build-module/post-navigation-link/edit.js.map +1 -1
  535. package/build-module/post-template/edit.js +1 -3
  536. package/build-module/post-template/edit.js.map +1 -1
  537. package/build-module/post-terms/edit.js +1 -3
  538. package/build-module/post-terms/edit.js.map +1 -1
  539. package/build-module/post-time-to-read/edit.js +2 -4
  540. package/build-module/post-time-to-read/edit.js.map +1 -1
  541. package/build-module/post-title/edit.js +1 -3
  542. package/build-module/post-title/edit.js.map +1 -1
  543. package/build-module/pullquote/deprecated.js +1 -2
  544. package/build-module/pullquote/deprecated.js.map +1 -1
  545. package/build-module/pullquote/edit.js +1 -3
  546. package/build-module/pullquote/edit.js.map +1 -1
  547. package/build-module/pullquote/edit.native.js +1 -3
  548. package/build-module/pullquote/edit.native.js.map +1 -1
  549. package/build-module/pullquote/save.js +1 -2
  550. package/build-module/pullquote/save.js.map +1 -1
  551. package/build-module/pullquote/shared.js.map +1 -1
  552. package/build-module/query/edit/enhanced-pagination-modal.js +1 -2
  553. package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -1
  554. package/build-module/query/edit/index.js +1 -3
  555. package/build-module/query/edit/index.js.map +1 -1
  556. package/build-module/query/edit/inspector-controls/author-control.js +1 -0
  557. package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
  558. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +1 -2
  559. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
  560. package/build-module/query/edit/inspector-controls/index.js +9 -14
  561. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  562. package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
  563. package/build-module/query/edit/inspector-controls/parent-control.js +1 -0
  564. package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
  565. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +1 -0
  566. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  567. package/build-module/query/edit/pattern-selection-modal.js +2 -3
  568. package/build-module/query/edit/pattern-selection-modal.js.map +1 -1
  569. package/build-module/query/edit/query-content.js +1 -3
  570. package/build-module/query/edit/query-content.js.map +1 -1
  571. package/build-module/query/edit/query-placeholder.js +1 -2
  572. package/build-module/query/edit/query-placeholder.js.map +1 -1
  573. package/build-module/query/edit/query-toolbar.js +1 -2
  574. package/build-module/query/edit/query-toolbar.js.map +1 -1
  575. package/build-module/query/utils.js.map +1 -1
  576. package/build-module/query/view.js.map +1 -1
  577. package/build-module/query-pagination/edit.js +1 -3
  578. package/build-module/query-pagination/edit.js.map +1 -1
  579. package/build-module/query-pagination/query-pagination-arrow-controls.js +1 -2
  580. package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  581. package/build-module/query-pagination-next/edit.js +1 -2
  582. package/build-module/query-pagination-next/edit.js.map +1 -1
  583. package/build-module/query-pagination-numbers/edit.js +1 -3
  584. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  585. package/build-module/query-pagination-previous/edit.js +1 -2
  586. package/build-module/query-pagination-previous/edit.js.map +1 -1
  587. package/build-module/query-title/edit.js +4 -6
  588. package/build-module/query-title/edit.js.map +1 -1
  589. package/build-module/quote/deprecated.js +1 -2
  590. package/build-module/quote/deprecated.js.map +1 -1
  591. package/build-module/quote/edit.js +1 -3
  592. package/build-module/quote/edit.js.map +1 -1
  593. package/build-module/quote/save.js +1 -2
  594. package/build-module/quote/save.js.map +1 -1
  595. package/build-module/quote/transforms.js.map +1 -1
  596. package/build-module/read-more/edit.js +1 -3
  597. package/build-module/read-more/edit.js.map +1 -1
  598. package/build-module/rss/edit.js +1 -3
  599. package/build-module/rss/edit.js.map +1 -1
  600. package/build-module/search/edit.js +1 -3
  601. package/build-module/search/edit.js.map +1 -1
  602. package/build-module/search/edit.native.js +1 -2
  603. package/build-module/search/edit.native.js.map +1 -1
  604. package/build-module/search/icons.js +1 -2
  605. package/build-module/search/icons.js.map +1 -1
  606. package/build-module/separator/edit.js +1 -2
  607. package/build-module/separator/edit.js.map +1 -1
  608. package/build-module/shortcode/edit.js.map +1 -1
  609. package/build-module/shortcode/edit.native.js +1 -2
  610. package/build-module/shortcode/edit.native.js.map +1 -1
  611. package/build-module/site-logo/edit.js +1 -3
  612. package/build-module/site-logo/edit.js.map +1 -1
  613. package/build-module/site-tagline/edit.js +1 -3
  614. package/build-module/site-tagline/edit.js.map +1 -1
  615. package/build-module/site-title/edit.js +1 -3
  616. package/build-module/site-title/edit.js.map +1 -1
  617. package/build-module/social-link/edit.js +1 -3
  618. package/build-module/social-link/edit.js.map +1 -1
  619. package/build-module/social-link/edit.native.js +1 -3
  620. package/build-module/social-link/edit.native.js.map +1 -1
  621. package/build-module/social-links/deprecated.js.map +1 -1
  622. package/build-module/social-links/edit.js +1 -3
  623. package/build-module/social-links/edit.js.map +1 -1
  624. package/build-module/spacer/controls.js +1 -3
  625. package/build-module/spacer/controls.js.map +1 -1
  626. package/build-module/spacer/controls.native.js +1 -2
  627. package/build-module/spacer/controls.native.js.map +1 -1
  628. package/build-module/spacer/deprecated.js.map +1 -1
  629. package/build-module/spacer/edit.js +1 -3
  630. package/build-module/spacer/edit.js.map +1 -1
  631. package/build-module/table/deprecated.js +1 -2
  632. package/build-module/table/deprecated.js.map +1 -1
  633. package/build-module/table/edit.js +1 -3
  634. package/build-module/table/edit.js.map +1 -1
  635. package/build-module/table/save.js +1 -2
  636. package/build-module/table/save.js.map +1 -1
  637. package/build-module/table-of-contents/edit.js +2 -4
  638. package/build-module/table-of-contents/edit.js.map +1 -1
  639. package/build-module/table-of-contents/hooks.js.map +1 -1
  640. package/build-module/table-of-contents/list.js +1 -3
  641. package/build-module/table-of-contents/list.js.map +1 -1
  642. package/build-module/tag-cloud/edit.js +1 -3
  643. package/build-module/tag-cloud/edit.js.map +1 -1
  644. package/build-module/template-part/edit/advanced-controls.js +2 -4
  645. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  646. package/build-module/template-part/edit/import-controls.js +3 -3
  647. package/build-module/template-part/edit/import-controls.js.map +1 -1
  648. package/build-module/template-part/edit/index.js +3 -5
  649. package/build-module/template-part/edit/index.js.map +1 -1
  650. package/build-module/template-part/edit/placeholder.js +1 -2
  651. package/build-module/template-part/edit/placeholder.js.map +1 -1
  652. package/build-module/template-part/edit/selection-modal.js +3 -4
  653. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  654. package/build-module/template-part/edit/title-modal.js +1 -2
  655. package/build-module/template-part/edit/title-modal.js.map +1 -1
  656. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  657. package/build-module/template-part/variations.js.map +1 -1
  658. package/build-module/term-description/edit.js +1 -3
  659. package/build-module/term-description/edit.js.map +1 -1
  660. package/build-module/text-columns/edit.js +1 -3
  661. package/build-module/text-columns/edit.js.map +1 -1
  662. package/build-module/text-columns/save.js.map +1 -1
  663. package/build-module/utils/caption.js +1 -3
  664. package/build-module/utils/caption.js.map +1 -1
  665. package/build-module/verse/deprecated.js.map +1 -1
  666. package/build-module/verse/edit.js +1 -3
  667. package/build-module/verse/edit.js.map +1 -1
  668. package/build-module/verse/save.js.map +1 -1
  669. package/build-module/video/deprecated.js +1 -2
  670. package/build-module/video/deprecated.js.map +1 -1
  671. package/build-module/video/edit-common-settings.js +1 -3
  672. package/build-module/video/edit-common-settings.js.map +1 -1
  673. package/build-module/video/edit.js +2 -4
  674. package/build-module/video/edit.js.map +1 -1
  675. package/build-module/video/edit.native.js +2 -3
  676. package/build-module/video/edit.native.js.map +1 -1
  677. package/build-module/video/icon-retry.native.js +1 -2
  678. package/build-module/video/icon-retry.native.js.map +1 -1
  679. package/build-module/video/save.js +1 -2
  680. package/build-module/video/save.js.map +1 -1
  681. package/build-module/video/tracks-editor.js +2 -4
  682. package/build-module/video/tracks-editor.js.map +1 -1
  683. package/build-style/code/style-rtl.css +2 -0
  684. package/build-style/code/style.css +4 -0
  685. package/build-style/common-rtl.css +0 -2
  686. package/build-style/common.css +0 -2
  687. package/build-style/post-content/style-rtl.css +2 -4
  688. package/build-style/post-content/style.css +2 -4
  689. package/build-style/style-rtl.css +4 -6
  690. package/build-style/style.css +6 -6
  691. package/package.json +36 -36
  692. package/src/code/style.scss +5 -0
  693. package/src/common.scss +0 -3
  694. package/src/cover/edit/inspector-controls.js +103 -44
  695. package/src/cover/index.php +38 -19
  696. package/src/cover/test/edit.js +2 -2
  697. package/src/embed/edit.js +19 -2
  698. package/src/embed/embed-preview.js +2 -18
  699. package/src/image/index.php +1 -1
  700. package/src/post-content/edit.js +30 -1
  701. package/src/post-content/style.scss +2 -4
  702. package/src/post-terms/index.php +7 -6
  703. package/src/query/edit/inspector-controls/index.js +10 -16
  704. package/src/query/edit/pattern-selection-modal.js +1 -1
  705. package/src/template-part/edit/selection-modal.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","useEffect","useRef","useState","InspectorControls","BlockControls","RichText","BlockIcon","AlignmentControl","useBlockProps","__experimentalUseColorProps","useColorProps","__experimentalUseBorderProps","useBorderProps","__","Button","PanelBody","Placeholder","TextControl","ToggleControl","ToolbarDropdownMenu","__experimentalHasSplitBorders","hasSplitBorders","alignLeft","alignRight","alignCenter","blockTable","icon","tableColumnAfter","tableColumnBefore","tableColumnDelete","tableRowAfter","tableRowBefore","tableRowDelete","table","createTable","updateSelectedCell","getCellAttribute","insertRow","deleteRow","insertColumn","deleteColumn","toggleSection","isEmptyTableSection","Caption","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALIGNMENT_CONTROLS","title","align","cellAriaLabel","head","body","foot","placeholder","TSection","name","props","TagName","TableEdit","attributes","setAttributes","insertBlocksAfter","isSelected","isSingleSelected","hasFixedLayout","initialRowCount","setInitialRowCount","initialColumnCount","setInitialColumnCount","selectedCell","setSelectedCell","colorProps","borderProps","tableRef","hasTableCreated","setHasTableCreated","onChangeInitialColumnCount","count","onChangeInitialRowCount","onCreateTable","event","preventDefault","rowCount","parseInt","columnCount","onChangeFixedLayout","onChange","content","cellAttributes","onChangeColumnAlignment","columnSelection","type","columnIndex","newAttributes","getCellAlignment","onToggleHeaderSection","onToggleFooterSection","onInsertRow","delta","sectionName","rowIndex","newRowIndex","onInsertRowBefore","onInsertRowAfter","onDeleteRow","onInsertColumn","newColumnIndex","onInsertColumnBefore","onInsertColumnAfter","onDeleteColumn","current","querySelector","focus","sections","filter","tableControls","isDisabled","onClick","renderedSections","map","children","cells","tag","CellTag","scope","colspan","rowspan","undefined","colSpan","rowSpan","className","value","onFocus","isEmpty","length","ref","group","label","alignmentControls","nextAlign","hasArrowIndicator","controls","__nextHasNoMarginBottom","checked","style","border","showColors","instructions","onSubmit","__next40pxDefaultSize","min","variant","showToolbarButton"],"sources":["@wordpress/block-library/src/table/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tRichText,\n\tBlockIcon,\n\tAlignmentControl,\n\tuseBlockProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tPanelBody,\n\tPlaceholder,\n\tTextControl,\n\tToggleControl,\n\tToolbarDropdownMenu,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n} from '@wordpress/components';\nimport {\n\talignLeft,\n\talignRight,\n\talignCenter,\n\tblockTable as icon,\n\ttableColumnAfter,\n\ttableColumnBefore,\n\ttableColumnDelete,\n\ttableRowAfter,\n\ttableRowBefore,\n\ttableRowDelete,\n\ttable,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport {\n\tcreateTable,\n\tupdateSelectedCell,\n\tgetCellAttribute,\n\tinsertRow,\n\tdeleteRow,\n\tinsertColumn,\n\tdeleteColumn,\n\ttoggleSection,\n\tisEmptyTableSection,\n} from './state';\nimport { Caption } from '../utils/caption';\n\nconst ALIGNMENT_CONTROLS = [\n\t{\n\t\ticon: alignLeft,\n\t\ttitle: __( 'Align column left' ),\n\t\talign: 'left',\n\t},\n\t{\n\t\ticon: alignCenter,\n\t\ttitle: __( 'Align column center' ),\n\t\talign: 'center',\n\t},\n\t{\n\t\ticon: alignRight,\n\t\ttitle: __( 'Align column right' ),\n\t\talign: 'right',\n\t},\n];\n\nconst cellAriaLabel = {\n\thead: __( 'Header cell text' ),\n\tbody: __( 'Body cell text' ),\n\tfoot: __( 'Footer cell text' ),\n};\n\nconst placeholder = {\n\thead: __( 'Header label' ),\n\tfoot: __( 'Footer label' ),\n};\n\nfunction TSection( { name, ...props } ) {\n\tconst TagName = `t${ name }`;\n\treturn <TagName { ...props } />;\n}\n\nfunction TableEdit( {\n\tattributes,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tisSelected: isSingleSelected,\n} ) {\n\tconst { hasFixedLayout, head, foot } = attributes;\n\tconst [ initialRowCount, setInitialRowCount ] = useState( 2 );\n\tconst [ initialColumnCount, setInitialColumnCount ] = useState( 2 );\n\tconst [ selectedCell, setSelectedCell ] = useState();\n\n\tconst colorProps = useColorProps( attributes );\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst tableRef = useRef();\n\tconst [ hasTableCreated, setHasTableCreated ] = useState( false );\n\n\t/**\n\t * Updates the initial column count used for table creation.\n\t *\n\t * @param {number} count New initial column count.\n\t */\n\tfunction onChangeInitialColumnCount( count ) {\n\t\tsetInitialColumnCount( count );\n\t}\n\n\t/**\n\t * Updates the initial row count used for table creation.\n\t *\n\t * @param {number} count New initial row count.\n\t */\n\tfunction onChangeInitialRowCount( count ) {\n\t\tsetInitialRowCount( count );\n\t}\n\n\t/**\n\t * Creates a table based on dimensions in local state.\n\t *\n\t * @param {Object} event Form submit event.\n\t */\n\tfunction onCreateTable( event ) {\n\t\tevent.preventDefault();\n\n\t\tsetAttributes(\n\t\t\tcreateTable( {\n\t\t\t\trowCount: parseInt( initialRowCount, 10 ) || 2,\n\t\t\t\tcolumnCount: parseInt( initialColumnCount, 10 ) || 2,\n\t\t\t} )\n\t\t);\n\t\tsetHasTableCreated( true );\n\t}\n\n\t/**\n\t * Toggles whether the table has a fixed layout or not.\n\t */\n\tfunction onChangeFixedLayout() {\n\t\tsetAttributes( { hasFixedLayout: ! hasFixedLayout } );\n\t}\n\n\t/**\n\t * Changes the content of the currently selected cell.\n\t *\n\t * @param {Array} content A RichText content value.\n\t */\n\tfunction onChange( content ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetAttributes(\n\t\t\tupdateSelectedCell(\n\t\t\t\tattributes,\n\t\t\t\tselectedCell,\n\t\t\t\t( cellAttributes ) => ( {\n\t\t\t\t\t...cellAttributes,\n\t\t\t\t\tcontent,\n\t\t\t\t} )\n\t\t\t)\n\t\t);\n\t}\n\n\t/**\n\t * Align text within the a column.\n\t *\n\t * @param {string} align The new alignment to apply to the column.\n\t */\n\tfunction onChangeColumnAlignment( align ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Convert the cell selection to a column selection so that alignment\n\t\t// is applied to the entire column.\n\t\tconst columnSelection = {\n\t\t\ttype: 'column',\n\t\t\tcolumnIndex: selectedCell.columnIndex,\n\t\t};\n\n\t\tconst newAttributes = updateSelectedCell(\n\t\t\tattributes,\n\t\t\tcolumnSelection,\n\t\t\t( cellAttributes ) => ( {\n\t\t\t\t...cellAttributes,\n\t\t\t\talign,\n\t\t\t} )\n\t\t);\n\t\tsetAttributes( newAttributes );\n\t}\n\n\t/**\n\t * Get the alignment of the currently selected cell.\n\t *\n\t * @return {string | undefined} The new alignment to apply to the column.\n\t */\n\tfunction getCellAlignment() {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn getCellAttribute( attributes, selectedCell, 'align' );\n\t}\n\n\t/**\n\t * Add or remove a `head` table section.\n\t */\n\tfunction onToggleHeaderSection() {\n\t\tsetAttributes( toggleSection( attributes, 'head' ) );\n\t}\n\n\t/**\n\t * Add or remove a `foot` table section.\n\t */\n\tfunction onToggleFooterSection() {\n\t\tsetAttributes( toggleSection( attributes, 'foot' ) );\n\t}\n\n\t/**\n\t * Inserts a row at the currently selected row index, plus `delta`.\n\t *\n\t * @param {number} delta Offset for selected row index at which to insert.\n\t */\n\tfunction onInsertRow( delta ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { sectionName, rowIndex } = selectedCell;\n\t\tconst newRowIndex = rowIndex + delta;\n\n\t\tsetAttributes(\n\t\t\tinsertRow( attributes, {\n\t\t\t\tsectionName,\n\t\t\t\trowIndex: newRowIndex,\n\t\t\t} )\n\t\t);\n\t\t// Select the first cell of the new row.\n\t\tsetSelectedCell( {\n\t\t\tsectionName,\n\t\t\trowIndex: newRowIndex,\n\t\t\tcolumnIndex: 0,\n\t\t\ttype: 'cell',\n\t\t} );\n\t}\n\n\t/**\n\t * Inserts a row before the currently selected row.\n\t */\n\tfunction onInsertRowBefore() {\n\t\tonInsertRow( 0 );\n\t}\n\n\t/**\n\t * Inserts a row after the currently selected row.\n\t */\n\tfunction onInsertRowAfter() {\n\t\tonInsertRow( 1 );\n\t}\n\n\t/**\n\t * Deletes the currently selected row.\n\t */\n\tfunction onDeleteRow() {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { sectionName, rowIndex } = selectedCell;\n\n\t\tsetSelectedCell();\n\t\tsetAttributes( deleteRow( attributes, { sectionName, rowIndex } ) );\n\t}\n\n\t/**\n\t * Inserts a column at the currently selected column index, plus `delta`.\n\t *\n\t * @param {number} delta Offset for selected column index at which to insert.\n\t */\n\tfunction onInsertColumn( delta = 0 ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { columnIndex } = selectedCell;\n\t\tconst newColumnIndex = columnIndex + delta;\n\n\t\tsetAttributes(\n\t\t\tinsertColumn( attributes, {\n\t\t\t\tcolumnIndex: newColumnIndex,\n\t\t\t} )\n\t\t);\n\t\t// Select the first cell of the new column.\n\t\tsetSelectedCell( {\n\t\t\trowIndex: 0,\n\t\t\tcolumnIndex: newColumnIndex,\n\t\t\ttype: 'cell',\n\t\t} );\n\t}\n\n\t/**\n\t * Inserts a column before the currently selected column.\n\t */\n\tfunction onInsertColumnBefore() {\n\t\tonInsertColumn( 0 );\n\t}\n\n\t/**\n\t * Inserts a column after the currently selected column.\n\t */\n\tfunction onInsertColumnAfter() {\n\t\tonInsertColumn( 1 );\n\t}\n\n\t/**\n\t * Deletes the currently selected column.\n\t */\n\tfunction onDeleteColumn() {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { sectionName, columnIndex } = selectedCell;\n\n\t\tsetSelectedCell();\n\t\tsetAttributes(\n\t\t\tdeleteColumn( attributes, { sectionName, columnIndex } )\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetSelectedCell();\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tuseEffect( () => {\n\t\tif ( hasTableCreated ) {\n\t\t\ttableRef?.current\n\t\t\t\t?.querySelector( 'td div[contentEditable=\"true\"]' )\n\t\t\t\t?.focus();\n\t\t\tsetHasTableCreated( false );\n\t\t}\n\t}, [ hasTableCreated ] );\n\n\tconst sections = [ 'head', 'body', 'foot' ].filter(\n\t\t( name ) => ! isEmptyTableSection( attributes[ name ] )\n\t);\n\n\tconst tableControls = [\n\t\t{\n\t\t\ticon: tableRowBefore,\n\t\t\ttitle: __( 'Insert row before' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertRowBefore,\n\t\t},\n\t\t{\n\t\t\ticon: tableRowAfter,\n\t\t\ttitle: __( 'Insert row after' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertRowAfter,\n\t\t},\n\t\t{\n\t\t\ticon: tableRowDelete,\n\t\t\ttitle: __( 'Delete row' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onDeleteRow,\n\t\t},\n\t\t{\n\t\t\ticon: tableColumnBefore,\n\t\t\ttitle: __( 'Insert column before' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertColumnBefore,\n\t\t},\n\t\t{\n\t\t\ticon: tableColumnAfter,\n\t\t\ttitle: __( 'Insert column after' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertColumnAfter,\n\t\t},\n\t\t{\n\t\t\ticon: tableColumnDelete,\n\t\t\ttitle: __( 'Delete column' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onDeleteColumn,\n\t\t},\n\t];\n\n\tconst renderedSections = sections.map( ( name ) => (\n\t\t<TSection name={ name } key={ name }>\n\t\t\t{ attributes[ name ].map( ( { cells }, rowIndex ) => (\n\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\ttag: CellTag,\n\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\t\tcolspan,\n\t\t\t\t\t\t\t\trowspan,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tcolumnIndex\n\t\t\t\t\t\t) => (\n\t\t\t\t\t\t\t<CellTag\n\t\t\t\t\t\t\t\tkey={ columnIndex }\n\t\t\t\t\t\t\t\tscope={ CellTag === 'th' ? scope : undefined }\n\t\t\t\t\t\t\t\tcolSpan={ colspan }\n\t\t\t\t\t\t\t\trowSpan={ rowspan }\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t{\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\t\t\t\t\t\t\t\t\t'wp-block-table__cell-content'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t\t\tonFocus={ () => {\n\t\t\t\t\t\t\t\t\t\tsetSelectedCell( {\n\t\t\t\t\t\t\t\t\t\t\tsectionName: name,\n\t\t\t\t\t\t\t\t\t\t\trowIndex,\n\t\t\t\t\t\t\t\t\t\t\tcolumnIndex,\n\t\t\t\t\t\t\t\t\t\t\ttype: 'cell',\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\taria-label={ cellAriaLabel[ name ] }\n\t\t\t\t\t\t\t\t\tplaceholder={ placeholder[ name ] }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</CellTag>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</tr>\n\t\t\t) ) }\n\t\t</TSection>\n\t) );\n\n\tconst isEmpty = ! sections.length;\n\n\treturn (\n\t\t<figure { ...useBlockProps( { ref: tableRef } ) }>\n\t\t\t{ ! isEmpty && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t\t<AlignmentControl\n\t\t\t\t\t\t\tlabel={ __( 'Change column alignment' ) }\n\t\t\t\t\t\t\talignmentControls={ ALIGNMENT_CONTROLS }\n\t\t\t\t\t\t\tvalue={ getCellAlignment() }\n\t\t\t\t\t\t\tonChange={ ( nextAlign ) =>\n\t\t\t\t\t\t\t\tonChangeColumnAlignment( nextAlign )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\t\thasArrowIndicator\n\t\t\t\t\t\t\ticon={ table }\n\t\t\t\t\t\t\tlabel={ __( 'Edit table' ) }\n\t\t\t\t\t\t\tcontrols={ tableControls }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\t\tclassName=\"blocks-table-settings\"\n\t\t\t\t>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Fixed width table cells' ) }\n\t\t\t\t\t\tchecked={ !! hasFixedLayout }\n\t\t\t\t\t\tonChange={ onChangeFixedLayout }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Header section' ) }\n\t\t\t\t\t\t\t\tchecked={ !! ( head && head.length ) }\n\t\t\t\t\t\t\t\tonChange={ onToggleHeaderSection }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Footer section' ) }\n\t\t\t\t\t\t\t\tchecked={ !! ( foot && foot.length ) }\n\t\t\t\t\t\t\t\tonChange={ onToggleFooterSection }\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ ! isEmpty && (\n\t\t\t\t<table\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t\t\t\t\t// This is required in the editor only to overcome\n\t\t\t\t\t\t\t// the fact the editor rewrites individual border\n\t\t\t\t\t\t\t// widths into a shorthand format.\n\t\t\t\t\t\t\t'has-individual-borders': hasSplitBorders(\n\t\t\t\t\t\t\t\tattributes?.style?.border\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\tstyle={ { ...colorProps.style, ...borderProps.style } }\n\t\t\t\t>\n\t\t\t\t\t{ renderedSections }\n\t\t\t\t</table>\n\t\t\t) }\n\t\t\t{ isEmpty ? (\n\t\t\t\t<Placeholder\n\t\t\t\t\tlabel={ __( 'Table' ) }\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } showColors /> }\n\t\t\t\t\tinstructions={ __( 'Insert a table for sharing data.' ) }\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tclassName=\"blocks-table__placeholder-form\"\n\t\t\t\t\t\tonSubmit={ onCreateTable }\n\t\t\t\t\t>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tlabel={ __( 'Column count' ) }\n\t\t\t\t\t\t\tvalue={ initialColumnCount }\n\t\t\t\t\t\t\tonChange={ onChangeInitialColumnCount }\n\t\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\t\tclassName=\"blocks-table__placeholder-input\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tlabel={ __( 'Row count' ) }\n\t\t\t\t\t\t\tvalue={ initialRowCount }\n\t\t\t\t\t\t\tonChange={ onChangeInitialRowCount }\n\t\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\t\tclassName=\"blocks-table__placeholder-input\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create Table' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</form>\n\t\t\t\t</Placeholder>\n\t\t\t) : (\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Table caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</figure>\n\t);\n}\n\nexport default TableEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","useEffect","useRef","useState","InspectorControls","BlockControls","RichText","BlockIcon","AlignmentControl","useBlockProps","__experimentalUseColorProps","useColorProps","__experimentalUseBorderProps","useBorderProps","__","Button","PanelBody","Placeholder","TextControl","ToggleControl","ToolbarDropdownMenu","__experimentalHasSplitBorders","hasSplitBorders","alignLeft","alignRight","alignCenter","blockTable","icon","tableColumnAfter","tableColumnBefore","tableColumnDelete","tableRowAfter","tableRowBefore","tableRowDelete","table","createTable","updateSelectedCell","getCellAttribute","insertRow","deleteRow","insertColumn","deleteColumn","toggleSection","isEmptyTableSection","Caption","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALIGNMENT_CONTROLS","title","align","cellAriaLabel","head","body","foot","placeholder","TSection","name","props","TagName","TableEdit","attributes","setAttributes","insertBlocksAfter","isSelected","isSingleSelected","hasFixedLayout","initialRowCount","setInitialRowCount","initialColumnCount","setInitialColumnCount","selectedCell","setSelectedCell","colorProps","borderProps","tableRef","hasTableCreated","setHasTableCreated","onChangeInitialColumnCount","count","onChangeInitialRowCount","onCreateTable","event","preventDefault","rowCount","parseInt","columnCount","onChangeFixedLayout","onChange","content","cellAttributes","onChangeColumnAlignment","columnSelection","type","columnIndex","newAttributes","getCellAlignment","onToggleHeaderSection","onToggleFooterSection","onInsertRow","delta","sectionName","rowIndex","newRowIndex","onInsertRowBefore","onInsertRowAfter","onDeleteRow","onInsertColumn","newColumnIndex","onInsertColumnBefore","onInsertColumnAfter","onDeleteColumn","current","querySelector","focus","sections","filter","tableControls","isDisabled","onClick","renderedSections","map","children","cells","tag","CellTag","scope","colspan","rowspan","undefined","colSpan","rowSpan","className","value","onFocus","isEmpty","length","ref","group","label","alignmentControls","nextAlign","hasArrowIndicator","controls","__nextHasNoMarginBottom","checked","style","border","showColors","instructions","onSubmit","__next40pxDefaultSize","min","variant","showToolbarButton"],"sources":["@wordpress/block-library/src/table/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tRichText,\n\tBlockIcon,\n\tAlignmentControl,\n\tuseBlockProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tPanelBody,\n\tPlaceholder,\n\tTextControl,\n\tToggleControl,\n\tToolbarDropdownMenu,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n} from '@wordpress/components';\nimport {\n\talignLeft,\n\talignRight,\n\talignCenter,\n\tblockTable as icon,\n\ttableColumnAfter,\n\ttableColumnBefore,\n\ttableColumnDelete,\n\ttableRowAfter,\n\ttableRowBefore,\n\ttableRowDelete,\n\ttable,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport {\n\tcreateTable,\n\tupdateSelectedCell,\n\tgetCellAttribute,\n\tinsertRow,\n\tdeleteRow,\n\tinsertColumn,\n\tdeleteColumn,\n\ttoggleSection,\n\tisEmptyTableSection,\n} from './state';\nimport { Caption } from '../utils/caption';\n\nconst ALIGNMENT_CONTROLS = [\n\t{\n\t\ticon: alignLeft,\n\t\ttitle: __( 'Align column left' ),\n\t\talign: 'left',\n\t},\n\t{\n\t\ticon: alignCenter,\n\t\ttitle: __( 'Align column center' ),\n\t\talign: 'center',\n\t},\n\t{\n\t\ticon: alignRight,\n\t\ttitle: __( 'Align column right' ),\n\t\talign: 'right',\n\t},\n];\n\nconst cellAriaLabel = {\n\thead: __( 'Header cell text' ),\n\tbody: __( 'Body cell text' ),\n\tfoot: __( 'Footer cell text' ),\n};\n\nconst placeholder = {\n\thead: __( 'Header label' ),\n\tfoot: __( 'Footer label' ),\n};\n\nfunction TSection( { name, ...props } ) {\n\tconst TagName = `t${ name }`;\n\treturn <TagName { ...props } />;\n}\n\nfunction TableEdit( {\n\tattributes,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tisSelected: isSingleSelected,\n} ) {\n\tconst { hasFixedLayout, head, foot } = attributes;\n\tconst [ initialRowCount, setInitialRowCount ] = useState( 2 );\n\tconst [ initialColumnCount, setInitialColumnCount ] = useState( 2 );\n\tconst [ selectedCell, setSelectedCell ] = useState();\n\n\tconst colorProps = useColorProps( attributes );\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst tableRef = useRef();\n\tconst [ hasTableCreated, setHasTableCreated ] = useState( false );\n\n\t/**\n\t * Updates the initial column count used for table creation.\n\t *\n\t * @param {number} count New initial column count.\n\t */\n\tfunction onChangeInitialColumnCount( count ) {\n\t\tsetInitialColumnCount( count );\n\t}\n\n\t/**\n\t * Updates the initial row count used for table creation.\n\t *\n\t * @param {number} count New initial row count.\n\t */\n\tfunction onChangeInitialRowCount( count ) {\n\t\tsetInitialRowCount( count );\n\t}\n\n\t/**\n\t * Creates a table based on dimensions in local state.\n\t *\n\t * @param {Object} event Form submit event.\n\t */\n\tfunction onCreateTable( event ) {\n\t\tevent.preventDefault();\n\n\t\tsetAttributes(\n\t\t\tcreateTable( {\n\t\t\t\trowCount: parseInt( initialRowCount, 10 ) || 2,\n\t\t\t\tcolumnCount: parseInt( initialColumnCount, 10 ) || 2,\n\t\t\t} )\n\t\t);\n\t\tsetHasTableCreated( true );\n\t}\n\n\t/**\n\t * Toggles whether the table has a fixed layout or not.\n\t */\n\tfunction onChangeFixedLayout() {\n\t\tsetAttributes( { hasFixedLayout: ! hasFixedLayout } );\n\t}\n\n\t/**\n\t * Changes the content of the currently selected cell.\n\t *\n\t * @param {Array} content A RichText content value.\n\t */\n\tfunction onChange( content ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetAttributes(\n\t\t\tupdateSelectedCell(\n\t\t\t\tattributes,\n\t\t\t\tselectedCell,\n\t\t\t\t( cellAttributes ) => ( {\n\t\t\t\t\t...cellAttributes,\n\t\t\t\t\tcontent,\n\t\t\t\t} )\n\t\t\t)\n\t\t);\n\t}\n\n\t/**\n\t * Align text within the a column.\n\t *\n\t * @param {string} align The new alignment to apply to the column.\n\t */\n\tfunction onChangeColumnAlignment( align ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Convert the cell selection to a column selection so that alignment\n\t\t// is applied to the entire column.\n\t\tconst columnSelection = {\n\t\t\ttype: 'column',\n\t\t\tcolumnIndex: selectedCell.columnIndex,\n\t\t};\n\n\t\tconst newAttributes = updateSelectedCell(\n\t\t\tattributes,\n\t\t\tcolumnSelection,\n\t\t\t( cellAttributes ) => ( {\n\t\t\t\t...cellAttributes,\n\t\t\t\talign,\n\t\t\t} )\n\t\t);\n\t\tsetAttributes( newAttributes );\n\t}\n\n\t/**\n\t * Get the alignment of the currently selected cell.\n\t *\n\t * @return {string | undefined} The new alignment to apply to the column.\n\t */\n\tfunction getCellAlignment() {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn getCellAttribute( attributes, selectedCell, 'align' );\n\t}\n\n\t/**\n\t * Add or remove a `head` table section.\n\t */\n\tfunction onToggleHeaderSection() {\n\t\tsetAttributes( toggleSection( attributes, 'head' ) );\n\t}\n\n\t/**\n\t * Add or remove a `foot` table section.\n\t */\n\tfunction onToggleFooterSection() {\n\t\tsetAttributes( toggleSection( attributes, 'foot' ) );\n\t}\n\n\t/**\n\t * Inserts a row at the currently selected row index, plus `delta`.\n\t *\n\t * @param {number} delta Offset for selected row index at which to insert.\n\t */\n\tfunction onInsertRow( delta ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { sectionName, rowIndex } = selectedCell;\n\t\tconst newRowIndex = rowIndex + delta;\n\n\t\tsetAttributes(\n\t\t\tinsertRow( attributes, {\n\t\t\t\tsectionName,\n\t\t\t\trowIndex: newRowIndex,\n\t\t\t} )\n\t\t);\n\t\t// Select the first cell of the new row.\n\t\tsetSelectedCell( {\n\t\t\tsectionName,\n\t\t\trowIndex: newRowIndex,\n\t\t\tcolumnIndex: 0,\n\t\t\ttype: 'cell',\n\t\t} );\n\t}\n\n\t/**\n\t * Inserts a row before the currently selected row.\n\t */\n\tfunction onInsertRowBefore() {\n\t\tonInsertRow( 0 );\n\t}\n\n\t/**\n\t * Inserts a row after the currently selected row.\n\t */\n\tfunction onInsertRowAfter() {\n\t\tonInsertRow( 1 );\n\t}\n\n\t/**\n\t * Deletes the currently selected row.\n\t */\n\tfunction onDeleteRow() {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { sectionName, rowIndex } = selectedCell;\n\n\t\tsetSelectedCell();\n\t\tsetAttributes( deleteRow( attributes, { sectionName, rowIndex } ) );\n\t}\n\n\t/**\n\t * Inserts a column at the currently selected column index, plus `delta`.\n\t *\n\t * @param {number} delta Offset for selected column index at which to insert.\n\t */\n\tfunction onInsertColumn( delta = 0 ) {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { columnIndex } = selectedCell;\n\t\tconst newColumnIndex = columnIndex + delta;\n\n\t\tsetAttributes(\n\t\t\tinsertColumn( attributes, {\n\t\t\t\tcolumnIndex: newColumnIndex,\n\t\t\t} )\n\t\t);\n\t\t// Select the first cell of the new column.\n\t\tsetSelectedCell( {\n\t\t\trowIndex: 0,\n\t\t\tcolumnIndex: newColumnIndex,\n\t\t\ttype: 'cell',\n\t\t} );\n\t}\n\n\t/**\n\t * Inserts a column before the currently selected column.\n\t */\n\tfunction onInsertColumnBefore() {\n\t\tonInsertColumn( 0 );\n\t}\n\n\t/**\n\t * Inserts a column after the currently selected column.\n\t */\n\tfunction onInsertColumnAfter() {\n\t\tonInsertColumn( 1 );\n\t}\n\n\t/**\n\t * Deletes the currently selected column.\n\t */\n\tfunction onDeleteColumn() {\n\t\tif ( ! selectedCell ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { sectionName, columnIndex } = selectedCell;\n\n\t\tsetSelectedCell();\n\t\tsetAttributes(\n\t\t\tdeleteColumn( attributes, { sectionName, columnIndex } )\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetSelectedCell();\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tuseEffect( () => {\n\t\tif ( hasTableCreated ) {\n\t\t\ttableRef?.current\n\t\t\t\t?.querySelector( 'td div[contentEditable=\"true\"]' )\n\t\t\t\t?.focus();\n\t\t\tsetHasTableCreated( false );\n\t\t}\n\t}, [ hasTableCreated ] );\n\n\tconst sections = [ 'head', 'body', 'foot' ].filter(\n\t\t( name ) => ! isEmptyTableSection( attributes[ name ] )\n\t);\n\n\tconst tableControls = [\n\t\t{\n\t\t\ticon: tableRowBefore,\n\t\t\ttitle: __( 'Insert row before' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertRowBefore,\n\t\t},\n\t\t{\n\t\t\ticon: tableRowAfter,\n\t\t\ttitle: __( 'Insert row after' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertRowAfter,\n\t\t},\n\t\t{\n\t\t\ticon: tableRowDelete,\n\t\t\ttitle: __( 'Delete row' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onDeleteRow,\n\t\t},\n\t\t{\n\t\t\ticon: tableColumnBefore,\n\t\t\ttitle: __( 'Insert column before' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertColumnBefore,\n\t\t},\n\t\t{\n\t\t\ticon: tableColumnAfter,\n\t\t\ttitle: __( 'Insert column after' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onInsertColumnAfter,\n\t\t},\n\t\t{\n\t\t\ticon: tableColumnDelete,\n\t\t\ttitle: __( 'Delete column' ),\n\t\t\tisDisabled: ! selectedCell,\n\t\t\tonClick: onDeleteColumn,\n\t\t},\n\t];\n\n\tconst renderedSections = sections.map( ( name ) => (\n\t\t<TSection name={ name } key={ name }>\n\t\t\t{ attributes[ name ].map( ( { cells }, rowIndex ) => (\n\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t{ cells.map(\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\ttag: CellTag,\n\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\t\tcolspan,\n\t\t\t\t\t\t\t\trowspan,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tcolumnIndex\n\t\t\t\t\t\t) => (\n\t\t\t\t\t\t\t<CellTag\n\t\t\t\t\t\t\t\tkey={ columnIndex }\n\t\t\t\t\t\t\t\tscope={ CellTag === 'th' ? scope : undefined }\n\t\t\t\t\t\t\t\tcolSpan={ colspan }\n\t\t\t\t\t\t\t\trowSpan={ rowspan }\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t{\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\t\t\t\t\t\t\t\t\t'wp-block-table__cell-content'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t\t\tonFocus={ () => {\n\t\t\t\t\t\t\t\t\t\tsetSelectedCell( {\n\t\t\t\t\t\t\t\t\t\t\tsectionName: name,\n\t\t\t\t\t\t\t\t\t\t\trowIndex,\n\t\t\t\t\t\t\t\t\t\t\tcolumnIndex,\n\t\t\t\t\t\t\t\t\t\t\ttype: 'cell',\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\taria-label={ cellAriaLabel[ name ] }\n\t\t\t\t\t\t\t\t\tplaceholder={ placeholder[ name ] }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</CellTag>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</tr>\n\t\t\t) ) }\n\t\t</TSection>\n\t) );\n\n\tconst isEmpty = ! sections.length;\n\n\treturn (\n\t\t<figure { ...useBlockProps( { ref: tableRef } ) }>\n\t\t\t{ ! isEmpty && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t\t<AlignmentControl\n\t\t\t\t\t\t\tlabel={ __( 'Change column alignment' ) }\n\t\t\t\t\t\t\talignmentControls={ ALIGNMENT_CONTROLS }\n\t\t\t\t\t\t\tvalue={ getCellAlignment() }\n\t\t\t\t\t\t\tonChange={ ( nextAlign ) =>\n\t\t\t\t\t\t\t\tonChangeColumnAlignment( nextAlign )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\t\thasArrowIndicator\n\t\t\t\t\t\t\ticon={ table }\n\t\t\t\t\t\t\tlabel={ __( 'Edit table' ) }\n\t\t\t\t\t\t\tcontrols={ tableControls }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\t\tclassName=\"blocks-table-settings\"\n\t\t\t\t>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Fixed width table cells' ) }\n\t\t\t\t\t\tchecked={ !! hasFixedLayout }\n\t\t\t\t\t\tonChange={ onChangeFixedLayout }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Header section' ) }\n\t\t\t\t\t\t\t\tchecked={ !! ( head && head.length ) }\n\t\t\t\t\t\t\t\tonChange={ onToggleHeaderSection }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Footer section' ) }\n\t\t\t\t\t\t\t\tchecked={ !! ( foot && foot.length ) }\n\t\t\t\t\t\t\t\tonChange={ onToggleFooterSection }\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ ! isEmpty && (\n\t\t\t\t<table\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t'has-fixed-layout': hasFixedLayout,\n\t\t\t\t\t\t\t// This is required in the editor only to overcome\n\t\t\t\t\t\t\t// the fact the editor rewrites individual border\n\t\t\t\t\t\t\t// widths into a shorthand format.\n\t\t\t\t\t\t\t'has-individual-borders': hasSplitBorders(\n\t\t\t\t\t\t\t\tattributes?.style?.border\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\tstyle={ { ...colorProps.style, ...borderProps.style } }\n\t\t\t\t>\n\t\t\t\t\t{ renderedSections }\n\t\t\t\t</table>\n\t\t\t) }\n\t\t\t{ isEmpty ? (\n\t\t\t\t<Placeholder\n\t\t\t\t\tlabel={ __( 'Table' ) }\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } showColors /> }\n\t\t\t\t\tinstructions={ __( 'Insert a table for sharing data.' ) }\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tclassName=\"blocks-table__placeholder-form\"\n\t\t\t\t\t\tonSubmit={ onCreateTable }\n\t\t\t\t\t>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tlabel={ __( 'Column count' ) }\n\t\t\t\t\t\t\tvalue={ initialColumnCount }\n\t\t\t\t\t\t\tonChange={ onChangeInitialColumnCount }\n\t\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\t\tclassName=\"blocks-table__placeholder-input\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tlabel={ __( 'Row count' ) }\n\t\t\t\t\t\t\tvalue={ initialRowCount }\n\t\t\t\t\t\t\tonChange={ onChangeInitialRowCount }\n\t\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\t\tclassName=\"blocks-table__placeholder-input\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create Table' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</form>\n\t\t\t\t</Placeholder>\n\t\t\t) : (\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Table caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</figure>\n\t);\n}\n\nexport default TableEdit;\n"],"mappings":"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","ignoreList":[]}
@@ -7,8 +7,7 @@ import clsx from 'clsx';
7
7
  * WordPress dependencies
8
8
  */
9
9
  import { RichText, useBlockProps, __experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles, __experimentalGetColorClassesAndStyles as getColorClassesAndStyles, __experimentalGetElementClassName } from '@wordpress/block-editor';
10
- import { jsx as _jsx } from "react/jsx-runtime";
11
- import { jsxs as _jsxs } from "react/jsx-runtime";
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
11
  export default function save({
13
12
  attributes
14
13
  }) {
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","RichText","useBlockProps","__experimentalGetBorderClassesAndStyles","getBorderClassesAndStyles","__experimentalGetColorClassesAndStyles","getColorClassesAndStyles","__experimentalGetElementClassName","jsx","_jsx","jsxs","_jsxs","save","attributes","hasFixedLayout","head","body","foot","caption","isEmpty","length","colorProps","borderProps","classes","className","hasCaption","Section","type","rows","Tag","children","map","cells","rowIndex","content","tag","scope","align","colspan","rowspan","cellIndex","cellClasses","Content","undefined","tagName","value","colSpan","rowSpan","style"],"sources":["@wordpress/block-library/src/table/save.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tconst { hasFixedLayout, head, body, foot, caption } = attributes;\n\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\tif ( isEmpty ) {\n\t\treturn null;\n\t}\n\n\tconst colorProps = getColorClassesAndStyles( attributes );\n\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\tconst classes = clsx( colorProps.className, borderProps.className, {\n\t\t'has-fixed-layout': hasFixedLayout,\n\t} );\n\n\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\tconst Section = ( { type, rows } ) => {\n\t\tif ( ! rows.length ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst Tag = `t${ type }`;\n\n\t\treturn (\n\t\t\t<Tag>\n\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t{ cells.map(\n\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\tcontent,\n\t\t\t\t\t\t\t\t\ttag,\n\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\t\t\tcolspan,\n\t\t\t\t\t\t\t\t\trowspan,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tconst cellClasses = clsx( {\n\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\tcellClasses\n\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: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tdata-align={ align }\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\tcolSpan={ colspan }\n\t\t\t\t\t\t\t\t\t\trowSpan={ rowspan }\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) }\n\t\t\t\t\t</tr>\n\t\t\t\t) ) }\n\t\t\t</Tag>\n\t\t);\n\t};\n\n\treturn (\n\t\t<figure { ...useBlockProps.save() }>\n\t\t\t<table\n\t\t\t\tclassName={ classes === '' ? undefined : classes }\n\t\t\t\tstyle={ { ...colorProps.style, ...borderProps.style } }\n\t\t\t>\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\t{ hasCaption && (\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\tvalue={ caption }\n\t\t\t\t\tclassName={ __experimentalGetElementClassName( 'caption' ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</figure>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","RichText","useBlockProps","__experimentalGetBorderClassesAndStyles","getBorderClassesAndStyles","__experimentalGetColorClassesAndStyles","getColorClassesAndStyles","__experimentalGetElementClassName","jsx","_jsx","jsxs","_jsxs","save","attributes","hasFixedLayout","head","body","foot","caption","isEmpty","length","colorProps","borderProps","classes","className","hasCaption","Section","type","rows","Tag","children","map","cells","rowIndex","content","tag","scope","align","colspan","rowspan","cellIndex","cellClasses","Content","undefined","tagName","value","colSpan","rowSpan","style"],"sources":["@wordpress/block-library/src/table/save.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tconst { hasFixedLayout, head, body, foot, caption } = attributes;\n\tconst isEmpty = ! head.length && ! body.length && ! foot.length;\n\n\tif ( isEmpty ) {\n\t\treturn null;\n\t}\n\n\tconst colorProps = getColorClassesAndStyles( attributes );\n\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\tconst classes = clsx( colorProps.className, borderProps.className, {\n\t\t'has-fixed-layout': hasFixedLayout,\n\t} );\n\n\tconst hasCaption = ! RichText.isEmpty( caption );\n\n\tconst Section = ( { type, rows } ) => {\n\t\tif ( ! rows.length ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst Tag = `t${ type }`;\n\n\t\treturn (\n\t\t\t<Tag>\n\t\t\t\t{ rows.map( ( { cells }, rowIndex ) => (\n\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t{ cells.map(\n\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\tcontent,\n\t\t\t\t\t\t\t\t\ttag,\n\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\t\t\tcolspan,\n\t\t\t\t\t\t\t\t\trowspan,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tcellIndex\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tconst cellClasses = clsx( {\n\t\t\t\t\t\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\tcellClasses\n\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: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tdata-align={ align }\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\tcolSpan={ colspan }\n\t\t\t\t\t\t\t\t\t\trowSpan={ rowspan }\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) }\n\t\t\t\t\t</tr>\n\t\t\t\t) ) }\n\t\t\t</Tag>\n\t\t);\n\t};\n\n\treturn (\n\t\t<figure { ...useBlockProps.save() }>\n\t\t\t<table\n\t\t\t\tclassName={ classes === '' ? undefined : classes }\n\t\t\t\tstyle={ { ...colorProps.style, ...borderProps.style } }\n\t\t\t>\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\t{ hasCaption && (\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\tvalue={ caption }\n\t\t\t\t\tclassName={ __experimentalGetElementClassName( 'caption' ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</figure>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -32,9 +32,7 @@ import { useObserveHeadings } from './hooks';
32
32
  *
33
33
  * @return {Component} The component.
34
34
  */
35
- import { jsx as _jsx } from "react/jsx-runtime";
36
- import { Fragment as _Fragment } from "react/jsx-runtime";
37
- import { jsxs as _jsxs } from "react/jsx-runtime";
35
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
38
36
  export default function TableOfContentsEdit({
39
37
  attributes: {
40
38
  headings = [],
@@ -80,7 +78,7 @@ export default function TableOfContentsEdit({
80
78
  children: /*#__PURE__*/_jsx(ToolbarButton, {
81
79
  onClick: () => replaceBlocks(clientId, createBlock('core/list', {
82
80
  ordered: true,
83
- values: renderToString( /*#__PURE__*/_jsx(TableOfContentsList, {
81
+ values: renderToString(/*#__PURE__*/_jsx(TableOfContentsList, {
84
82
  nestedHeadingList: headingTree
85
83
  }))
86
84
  })),
@@ -1 +1 @@
1
- {"version":3,"names":["BlockControls","BlockIcon","InspectorControls","store","blockEditorStore","useBlockProps","createBlock","PanelBody","Placeholder","ToggleControl","ToolbarButton","ToolbarGroup","useDispatch","useSelect","renderToString","__","useInstanceId","noticeStore","tableOfContents","icon","TableOfContentsList","linearToNestedHeadingList","useObserveHeadings","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TableOfContentsEdit","attributes","headings","onlyIncludeCurrentPage","clientId","setAttributes","blockProps","instanceId","createWarningNotice","removeNotice","noticeId","showRedirectionPreventedNotice","event","preventDefault","id","type","canInsertList","select","getBlockRootClientId","canInsertBlockType","rootClientId","replaceBlocks","headingTree","toolbarControls","children","onClick","ordered","values","nestedHeadingList","inspectorControls","title","__nextHasNoMarginBottom","label","checked","onChange","value","help","length","instructions","disableLinkActivation"],"sources":["@wordpress/block-library/src/table-of-contents/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tstore as blockEditorStore,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tPanelBody,\n\tPlaceholder,\n\tToggleControl,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { renderToString } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { tableOfContents as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport TableOfContentsList from './list';\nimport { linearToNestedHeadingList } from './utils';\nimport { useObserveHeadings } from './hooks';\n\n/** @typedef {import('./utils').HeadingData} HeadingData */\n\n/**\n * Table of Contents block edit component.\n *\n * @param {Object} props The props.\n * @param {Object} props.attributes The block attributes.\n * @param {HeadingData[]} props.attributes.headings A list of data for each heading in the post.\n * @param {boolean} props.attributes.onlyIncludeCurrentPage Whether to only include headings from the current page (if the post is paginated).\n * @param {string} props.clientId\n * @param {(attributes: Object) => void} props.setAttributes\n *\n * @return {Component} The component.\n */\nexport default function TableOfContentsEdit( {\n\tattributes: { headings = [], onlyIncludeCurrentPage },\n\tclientId,\n\tsetAttributes,\n} ) {\n\tuseObserveHeadings( clientId );\n\n\tconst blockProps = useBlockProps();\n\tconst instanceId = useInstanceId(\n\t\tTableOfContentsEdit,\n\t\t'table-of-contents'\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/table-of-contents/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst canInsertList = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\treturn canInsertBlockType( 'core/list', rootClientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\n\tconst headingTree = linearToNestedHeadingList( headings );\n\n\tconst toolbarControls = canInsertList && (\n\t\t<BlockControls>\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\treplaceBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlock( 'core/list', {\n\t\t\t\t\t\t\t\tordered: true,\n\t\t\t\t\t\t\t\tvalues: renderToString(\n\t\t\t\t\t\t\t\t\t<TableOfContentsList\n\t\t\t\t\t\t\t\t\t\tnestedHeadingList={ headingTree }\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)\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Convert to static list' ) }\n\t\t\t\t</ToolbarButton>\n\t\t\t</ToolbarGroup>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Only include current page' ) }\n\t\t\t\t\tchecked={ onlyIncludeCurrentPage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { onlyIncludeCurrentPage: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={\n\t\t\t\t\t\tonlyIncludeCurrentPage\n\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t'Only including headings from the current page (if the post is paginated).'\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'Toggle to only include headings from the current page (if the post is paginated).'\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\t// If there are no headings or the only heading is empty.\n\t// Note that the toolbar controls are intentionally omitted since the\n\t// \"Convert to static list\" option is useless to the placeholder state.\n\tif ( headings.length === 0 ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\t\tlabel={ __( 'Table of Contents' ) }\n\t\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t\t'Start adding Heading blocks to create a table of contents. Headings with HTML anchors will be linked here.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ inspectorControls }\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<nav { ...blockProps }>\n\t\t\t\t<ol>\n\t\t\t\t\t<TableOfContentsList\n\t\t\t\t\t\tnestedHeadingList={ headingTree }\n\t\t\t\t\t\tdisableLinkActivation\n\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t/>\n\t\t\t\t</ol>\n\t\t\t</nav>\n\t\t\t{ toolbarControls }\n\t\t\t{ inspectorControls }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["BlockControls","BlockIcon","InspectorControls","store","blockEditorStore","useBlockProps","createBlock","PanelBody","Placeholder","ToggleControl","ToolbarButton","ToolbarGroup","useDispatch","useSelect","renderToString","__","useInstanceId","noticeStore","tableOfContents","icon","TableOfContentsList","linearToNestedHeadingList","useObserveHeadings","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TableOfContentsEdit","attributes","headings","onlyIncludeCurrentPage","clientId","setAttributes","blockProps","instanceId","createWarningNotice","removeNotice","noticeId","showRedirectionPreventedNotice","event","preventDefault","id","type","canInsertList","select","getBlockRootClientId","canInsertBlockType","rootClientId","replaceBlocks","headingTree","toolbarControls","children","onClick","ordered","values","nestedHeadingList","inspectorControls","title","__nextHasNoMarginBottom","label","checked","onChange","value","help","length","instructions","disableLinkActivation"],"sources":["@wordpress/block-library/src/table-of-contents/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tstore as blockEditorStore,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tPanelBody,\n\tPlaceholder,\n\tToggleControl,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { renderToString } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { tableOfContents as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport TableOfContentsList from './list';\nimport { linearToNestedHeadingList } from './utils';\nimport { useObserveHeadings } from './hooks';\n\n/** @typedef {import('./utils').HeadingData} HeadingData */\n\n/**\n * Table of Contents block edit component.\n *\n * @param {Object} props The props.\n * @param {Object} props.attributes The block attributes.\n * @param {HeadingData[]} props.attributes.headings A list of data for each heading in the post.\n * @param {boolean} props.attributes.onlyIncludeCurrentPage Whether to only include headings from the current page (if the post is paginated).\n * @param {string} props.clientId\n * @param {(attributes: Object) => void} props.setAttributes\n *\n * @return {Component} The component.\n */\nexport default function TableOfContentsEdit( {\n\tattributes: { headings = [], onlyIncludeCurrentPage },\n\tclientId,\n\tsetAttributes,\n} ) {\n\tuseObserveHeadings( clientId );\n\n\tconst blockProps = useBlockProps();\n\tconst instanceId = useInstanceId(\n\t\tTableOfContentsEdit,\n\t\t'table-of-contents'\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/table-of-contents/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst canInsertList = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\treturn canInsertBlockType( 'core/list', rootClientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\n\tconst headingTree = linearToNestedHeadingList( headings );\n\n\tconst toolbarControls = canInsertList && (\n\t\t<BlockControls>\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\treplaceBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlock( 'core/list', {\n\t\t\t\t\t\t\t\tordered: true,\n\t\t\t\t\t\t\t\tvalues: renderToString(\n\t\t\t\t\t\t\t\t\t<TableOfContentsList\n\t\t\t\t\t\t\t\t\t\tnestedHeadingList={ headingTree }\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)\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Convert to static list' ) }\n\t\t\t\t</ToolbarButton>\n\t\t\t</ToolbarGroup>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Only include current page' ) }\n\t\t\t\t\tchecked={ onlyIncludeCurrentPage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { onlyIncludeCurrentPage: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={\n\t\t\t\t\t\tonlyIncludeCurrentPage\n\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t'Only including headings from the current page (if the post is paginated).'\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'Toggle to only include headings from the current page (if the post is paginated).'\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\t// If there are no headings or the only heading is empty.\n\t// Note that the toolbar controls are intentionally omitted since the\n\t// \"Convert to static list\" option is useless to the placeholder state.\n\tif ( headings.length === 0 ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\t\tlabel={ __( 'Table of Contents' ) }\n\t\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t\t'Start adding Heading blocks to create a table of contents. Headings with HTML anchors will be linked here.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ inspectorControls }\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<nav { ...blockProps }>\n\t\t\t\t<ol>\n\t\t\t\t\t<TableOfContentsList\n\t\t\t\t\t\tnestedHeadingList={ headingTree }\n\t\t\t\t\t\tdisableLinkActivation\n\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t/>\n\t\t\t\t</ol>\n\t\t\t</nav>\n\t\t\t{ toolbarControls }\n\t\t\t{ inspectorControls }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["fastDeepEqual","useRegistry","__unstableStripHTML","stripHTML","useEffect","addQueryArgs","removeQueryArgs","store","blockEditorStore","getLatestHeadings","select","clientId","_select$getPermalink","_getBlockAttributes","getBlockAttributes","getBlockName","getClientIdsWithDescendants","getBlocksByName","permalink","getPermalink","isPaginated","length","onlyIncludeCurrentPage","allBlockClientIds","tocPage","tocIndex","indexOf","blockIndex","blockClientId","entries","latestHeadings","headingPage","headingPageLink","page","blockName","headingAttributes","canBeLinked","anchor","push","content","replace","level","link","observeCallback","dispatch","updateBlockAttributes","__unstableMarkNextChangeAsNotPersistent","attributes","headings","useObserveHeadings","registry","subscribe"],"sources":["@wordpress/block-library/src/table-of-contents/hooks.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6';\n\n/**\n * WordPress dependencies\n */\nimport { useRegistry } from '@wordpress/data';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { useEffect } from '@wordpress/element';\nimport { addQueryArgs, removeQueryArgs } from '@wordpress/url';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nfunction getLatestHeadings( select, clientId ) {\n\tconst {\n\t\tgetBlockAttributes,\n\t\tgetBlockName,\n\t\tgetClientIdsWithDescendants,\n\t\tgetBlocksByName,\n\t} = select( blockEditorStore );\n\n\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t// Blocks can be loaded into a *non-post* block editor, so to avoid\n\t// declaring @wordpress/editor as a dependency, we must access its\n\t// store by string. When the store is not available, editorSelectors\n\t// will be null, and the block's saved markup will lack permalinks.\n\t// eslint-disable-next-line @wordpress/data-no-store-string-literals\n\tconst permalink = select( 'core/editor' ).getPermalink() ?? null;\n\n\tconst isPaginated = getBlocksByName( 'core/nextpage' ).length !== 0;\n\tconst { onlyIncludeCurrentPage } = getBlockAttributes( clientId ) ?? {};\n\n\t// Get the client ids of all blocks in the editor.\n\tconst allBlockClientIds = getClientIdsWithDescendants();\n\n\t// If onlyIncludeCurrentPage is true, calculate the page (of a paginated post) this block is part of, so we know which headings to include; otherwise, skip the calculation.\n\tlet tocPage = 1;\n\n\tif ( isPaginated && onlyIncludeCurrentPage ) {\n\t\t// We can't use getBlockIndex because it only returns the index\n\t\t// relative to sibling blocks.\n\t\tconst tocIndex = allBlockClientIds.indexOf( clientId );\n\n\t\tfor ( const [\n\t\t\tblockIndex,\n\t\t\tblockClientId,\n\t\t] of allBlockClientIds.entries() ) {\n\t\t\t// If we've reached blocks after the Table of Contents, we've\n\t\t\t// finished calculating which page the block is on.\n\t\t\tif ( blockIndex >= tocIndex ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif ( getBlockName( blockClientId ) === 'core/nextpage' ) {\n\t\t\t\ttocPage++;\n\t\t\t}\n\t\t}\n\t}\n\n\tconst latestHeadings = [];\n\n\t/** The page (of a paginated post) a heading will be part of. */\n\tlet headingPage = 1;\n\tlet headingPageLink = null;\n\n\t// If the core/editor store is available, we can add permalinks to the\n\t// generated table of contents.\n\tif ( typeof permalink === 'string' ) {\n\t\theadingPageLink = isPaginated\n\t\t\t? addQueryArgs( permalink, { page: headingPage } )\n\t\t\t: permalink;\n\t}\n\n\tfor ( const blockClientId of allBlockClientIds ) {\n\t\tconst blockName = getBlockName( blockClientId );\n\t\tif ( blockName === 'core/nextpage' ) {\n\t\t\theadingPage++;\n\n\t\t\t// If we're only including headings from the current page (of\n\t\t\t// a paginated post), then exit the loop if we've reached the\n\t\t\t// pages after the one with the Table of Contents block.\n\t\t\tif ( onlyIncludeCurrentPage && headingPage > tocPage ) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif ( typeof permalink === 'string' ) {\n\t\t\t\theadingPageLink = addQueryArgs(\n\t\t\t\t\tremoveQueryArgs( permalink, [ 'page' ] ),\n\t\t\t\t\t{ page: headingPage }\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\t// If we're including all headings or we've reached headings on\n\t\t// the same page as the Table of Contents block, add them to the\n\t\t// list.\n\t\telse if ( ! onlyIncludeCurrentPage || headingPage === tocPage ) {\n\t\t\tif ( blockName === 'core/heading' ) {\n\t\t\t\tconst headingAttributes = getBlockAttributes( blockClientId );\n\n\t\t\t\tconst canBeLinked =\n\t\t\t\t\ttypeof headingPageLink === 'string' &&\n\t\t\t\t\ttypeof headingAttributes.anchor === 'string' &&\n\t\t\t\t\theadingAttributes.anchor !== '';\n\n\t\t\t\tlatestHeadings.push( {\n\t\t\t\t\t// Convert line breaks to spaces, and get rid of HTML tags in the headings.\n\t\t\t\t\tcontent: stripHTML(\n\t\t\t\t\t\theadingAttributes.content.replace(\n\t\t\t\t\t\t\t/(<br *\\/?>)+/g,\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\tlevel: headingAttributes.level,\n\t\t\t\t\tlink: canBeLinked\n\t\t\t\t\t\t? `${ headingPageLink }#${ headingAttributes.anchor }`\n\t\t\t\t\t\t: null,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\n\treturn latestHeadings;\n}\n\nfunction observeCallback( select, dispatch, clientId ) {\n\tconst { getBlockAttributes } = select( blockEditorStore );\n\tconst { updateBlockAttributes, __unstableMarkNextChangeAsNotPersistent } =\n\t\tdispatch( blockEditorStore );\n\n\t/**\n\t * If the block no longer exists in the store, skip the update.\n\t * The \"undo\" action recreates the block and provides a new `clientId`.\n\t * The hook still might be observing the changes while the old block unmounts.\n\t */\n\tconst attributes = getBlockAttributes( clientId );\n\tif ( attributes === null ) {\n\t\treturn;\n\t}\n\n\tconst headings = getLatestHeadings( select, clientId );\n\tif ( ! fastDeepEqual( headings, attributes.headings ) ) {\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tupdateBlockAttributes( clientId, { headings } );\n\t}\n}\n\nexport function useObserveHeadings( clientId ) {\n\tconst registry = useRegistry();\n\tuseEffect( () => {\n\t\t// Todo: Limit subscription to block editor store when data no longer depends on `getPermalink`.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/45513\n\t\treturn registry.subscribe( () =>\n\t\t\tobserveCallback( registry.select, registry.dispatch, clientId )\n\t\t);\n\t}, [ registry, clientId ] );\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["fastDeepEqual","useRegistry","__unstableStripHTML","stripHTML","useEffect","addQueryArgs","removeQueryArgs","store","blockEditorStore","getLatestHeadings","select","clientId","_select$getPermalink","_getBlockAttributes","getBlockAttributes","getBlockName","getClientIdsWithDescendants","getBlocksByName","permalink","getPermalink","isPaginated","length","onlyIncludeCurrentPage","allBlockClientIds","tocPage","tocIndex","indexOf","blockIndex","blockClientId","entries","latestHeadings","headingPage","headingPageLink","page","blockName","headingAttributes","canBeLinked","anchor","push","content","replace","level","link","observeCallback","dispatch","updateBlockAttributes","__unstableMarkNextChangeAsNotPersistent","attributes","headings","useObserveHeadings","registry","subscribe"],"sources":["@wordpress/block-library/src/table-of-contents/hooks.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6';\n\n/**\n * WordPress dependencies\n */\nimport { useRegistry } from '@wordpress/data';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { useEffect } from '@wordpress/element';\nimport { addQueryArgs, removeQueryArgs } from '@wordpress/url';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nfunction getLatestHeadings( select, clientId ) {\n\tconst {\n\t\tgetBlockAttributes,\n\t\tgetBlockName,\n\t\tgetClientIdsWithDescendants,\n\t\tgetBlocksByName,\n\t} = select( blockEditorStore );\n\n\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t// Blocks can be loaded into a *non-post* block editor, so to avoid\n\t// declaring @wordpress/editor as a dependency, we must access its\n\t// store by string. When the store is not available, editorSelectors\n\t// will be null, and the block's saved markup will lack permalinks.\n\t// eslint-disable-next-line @wordpress/data-no-store-string-literals\n\tconst permalink = select( 'core/editor' ).getPermalink() ?? null;\n\n\tconst isPaginated = getBlocksByName( 'core/nextpage' ).length !== 0;\n\tconst { onlyIncludeCurrentPage } = getBlockAttributes( clientId ) ?? {};\n\n\t// Get the client ids of all blocks in the editor.\n\tconst allBlockClientIds = getClientIdsWithDescendants();\n\n\t// If onlyIncludeCurrentPage is true, calculate the page (of a paginated post) this block is part of, so we know which headings to include; otherwise, skip the calculation.\n\tlet tocPage = 1;\n\n\tif ( isPaginated && onlyIncludeCurrentPage ) {\n\t\t// We can't use getBlockIndex because it only returns the index\n\t\t// relative to sibling blocks.\n\t\tconst tocIndex = allBlockClientIds.indexOf( clientId );\n\n\t\tfor ( const [\n\t\t\tblockIndex,\n\t\t\tblockClientId,\n\t\t] of allBlockClientIds.entries() ) {\n\t\t\t// If we've reached blocks after the Table of Contents, we've\n\t\t\t// finished calculating which page the block is on.\n\t\t\tif ( blockIndex >= tocIndex ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif ( getBlockName( blockClientId ) === 'core/nextpage' ) {\n\t\t\t\ttocPage++;\n\t\t\t}\n\t\t}\n\t}\n\n\tconst latestHeadings = [];\n\n\t/** The page (of a paginated post) a heading will be part of. */\n\tlet headingPage = 1;\n\tlet headingPageLink = null;\n\n\t// If the core/editor store is available, we can add permalinks to the\n\t// generated table of contents.\n\tif ( typeof permalink === 'string' ) {\n\t\theadingPageLink = isPaginated\n\t\t\t? addQueryArgs( permalink, { page: headingPage } )\n\t\t\t: permalink;\n\t}\n\n\tfor ( const blockClientId of allBlockClientIds ) {\n\t\tconst blockName = getBlockName( blockClientId );\n\t\tif ( blockName === 'core/nextpage' ) {\n\t\t\theadingPage++;\n\n\t\t\t// If we're only including headings from the current page (of\n\t\t\t// a paginated post), then exit the loop if we've reached the\n\t\t\t// pages after the one with the Table of Contents block.\n\t\t\tif ( onlyIncludeCurrentPage && headingPage > tocPage ) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif ( typeof permalink === 'string' ) {\n\t\t\t\theadingPageLink = addQueryArgs(\n\t\t\t\t\tremoveQueryArgs( permalink, [ 'page' ] ),\n\t\t\t\t\t{ page: headingPage }\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\t// If we're including all headings or we've reached headings on\n\t\t// the same page as the Table of Contents block, add them to the\n\t\t// list.\n\t\telse if ( ! onlyIncludeCurrentPage || headingPage === tocPage ) {\n\t\t\tif ( blockName === 'core/heading' ) {\n\t\t\t\tconst headingAttributes = getBlockAttributes( blockClientId );\n\n\t\t\t\tconst canBeLinked =\n\t\t\t\t\ttypeof headingPageLink === 'string' &&\n\t\t\t\t\ttypeof headingAttributes.anchor === 'string' &&\n\t\t\t\t\theadingAttributes.anchor !== '';\n\n\t\t\t\tlatestHeadings.push( {\n\t\t\t\t\t// Convert line breaks to spaces, and get rid of HTML tags in the headings.\n\t\t\t\t\tcontent: stripHTML(\n\t\t\t\t\t\theadingAttributes.content.replace(\n\t\t\t\t\t\t\t/(<br *\\/?>)+/g,\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\tlevel: headingAttributes.level,\n\t\t\t\t\tlink: canBeLinked\n\t\t\t\t\t\t? `${ headingPageLink }#${ headingAttributes.anchor }`\n\t\t\t\t\t\t: null,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\n\treturn latestHeadings;\n}\n\nfunction observeCallback( select, dispatch, clientId ) {\n\tconst { getBlockAttributes } = select( blockEditorStore );\n\tconst { updateBlockAttributes, __unstableMarkNextChangeAsNotPersistent } =\n\t\tdispatch( blockEditorStore );\n\n\t/**\n\t * If the block no longer exists in the store, skip the update.\n\t * The \"undo\" action recreates the block and provides a new `clientId`.\n\t * The hook still might be observing the changes while the old block unmounts.\n\t */\n\tconst attributes = getBlockAttributes( clientId );\n\tif ( attributes === null ) {\n\t\treturn;\n\t}\n\n\tconst headings = getLatestHeadings( select, clientId );\n\tif ( ! fastDeepEqual( headings, attributes.headings ) ) {\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tupdateBlockAttributes( clientId, { headings } );\n\t}\n}\n\nexport function useObserveHeadings( clientId ) {\n\tconst registry = useRegistry();\n\tuseEffect( () => {\n\t\t// Todo: Limit subscription to block editor store when data no longer depends on `getPermalink`.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/45513\n\t\treturn registry.subscribe( () =>\n\t\t\tobserveCallback( registry.select, registry.dispatch, clientId )\n\t\t);\n\t}, [ registry, clientId ] );\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { jsxs as _jsxs } from "react/jsx-runtime";
3
- import { Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
4
2
  /**
5
3
  * External dependencies
6
4
  */
@@ -1 +1 @@
1
- {"version":3,"names":["ENTRY_CLASS_NAME","TableOfContentsList","nestedHeadingList","disableLinkActivation","onClick","_jsx","_Fragment","children","map","node","index","content","link","heading","entry","className","href","undefined","_jsxs"],"sources":["@wordpress/block-library/src/table-of-contents/list.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { MouseEvent, ReactElement } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { NestedHeadingData } from './utils';\n\nconst ENTRY_CLASS_NAME = 'wp-block-table-of-contents__entry';\n\nexport default function TableOfContentsList( {\n\tnestedHeadingList,\n\tdisableLinkActivation,\n\tonClick,\n}: {\n\tnestedHeadingList: NestedHeadingData[];\n\tdisableLinkActivation?: boolean;\n\tonClick?: ( event: MouseEvent< HTMLAnchorElement > ) => void;\n} ): ReactElement {\n\treturn (\n\t\t<>\n\t\t\t{ nestedHeadingList.map( ( node, index ) => {\n\t\t\t\tconst { content, link } = node.heading;\n\n\t\t\t\tconst entry = link ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ ENTRY_CLASS_NAME }\n\t\t\t\t\t\thref={ link }\n\t\t\t\t\t\taria-disabled={ disableLinkActivation || undefined }\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\tdisableLinkActivation &&\n\t\t\t\t\t\t\t'function' === typeof onClick\n\t\t\t\t\t\t\t\t? onClick\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ content }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\t<span className={ ENTRY_CLASS_NAME }>{ content }</span>\n\t\t\t\t);\n\n\t\t\t\treturn (\n\t\t\t\t\t<li key={ index }>\n\t\t\t\t\t\t{ entry }\n\t\t\t\t\t\t{ node.children ? (\n\t\t\t\t\t\t\t<ol>\n\t\t\t\t\t\t\t\t<TableOfContentsList\n\t\t\t\t\t\t\t\t\tnestedHeadingList={ node.children }\n\t\t\t\t\t\t\t\t\tdisableLinkActivation={\n\t\t\t\t\t\t\t\t\t\tdisableLinkActivation\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\tdisableLinkActivation &&\n\t\t\t\t\t\t\t\t\t\t'function' === typeof onClick\n\t\t\t\t\t\t\t\t\t\t\t? onClick\n\t\t\t\t\t\t\t\t\t\t\t: undefined\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</ol>\n\t\t\t\t\t\t) : null }\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</>\n\t);\n}\n"],"mappings":";;;AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAGA,MAAMA,gBAAgB,GAAG,mCAAmC;AAE5D,eAAe,SAASC,mBAAmBA,CAAE;EAC5CC,iBAAiB;EACjBC,qBAAqB;EACrBC;AAKD,CAAC,EAAiB;EACjB,oBACCC,IAAA,CAAAC,SAAA;IAAAC,QAAA,EACGL,iBAAiB,CAACM,GAAG,CAAE,CAAEC,IAAI,EAAEC,KAAK,KAAM;MAC3C,MAAM;QAAEC,OAAO;QAAEC;MAAK,CAAC,GAAGH,IAAI,CAACI,OAAO;MAEtC,MAAMC,KAAK,GAAGF,IAAI,gBACjBP,IAAA;QACCU,SAAS,EAAGf,gBAAkB;QAC9BgB,IAAI,EAAGJ,IAAM;QACb,iBAAgBT,qBAAqB,IAAIc,SAAW;QACpDb,OAAO,EACND,qBAAqB,IACrB,UAAU,KAAK,OAAOC,OAAO,GAC1BA,OAAO,GACPa,SACH;QAAAV,QAAA,EAECI;MAAO,CACP,CAAC,gBAEJN,IAAA;QAAMU,SAAS,EAAGf,gBAAkB;QAAAO,QAAA,EAAGI;MAAO,CAAQ,CACtD;MAED,oBACCO,KAAA;QAAAX,QAAA,GACGO,KAAK,EACLL,IAAI,CAACF,QAAQ,gBACdF,IAAA;UAAAE,QAAA,eACCF,IAAA,CAACJ,mBAAmB;YACnBC,iBAAiB,EAAGO,IAAI,CAACF,QAAU;YACnCJ,qBAAqB,EACpBA,qBACA;YACDC,OAAO,EACND,qBAAqB,IACrB,UAAU,KAAK,OAAOC,OAAO,GAC1BA,OAAO,GACPa;UACH,CACD;QAAC,CACC,CAAC,GACF,IAAI;MAAA,GAjBCP,KAkBN,CAAC;IAEP,CAAE;EAAC,CACF,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["ENTRY_CLASS_NAME","TableOfContentsList","nestedHeadingList","disableLinkActivation","onClick","_jsx","_Fragment","children","map","node","index","content","link","heading","entry","className","href","undefined","_jsxs"],"sources":["@wordpress/block-library/src/table-of-contents/list.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { MouseEvent, ReactElement } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { NestedHeadingData } from './utils';\n\nconst ENTRY_CLASS_NAME = 'wp-block-table-of-contents__entry';\n\nexport default function TableOfContentsList( {\n\tnestedHeadingList,\n\tdisableLinkActivation,\n\tonClick,\n}: {\n\tnestedHeadingList: NestedHeadingData[];\n\tdisableLinkActivation?: boolean;\n\tonClick?: ( event: MouseEvent< HTMLAnchorElement > ) => void;\n} ): ReactElement {\n\treturn (\n\t\t<>\n\t\t\t{ nestedHeadingList.map( ( node, index ) => {\n\t\t\t\tconst { content, link } = node.heading;\n\n\t\t\t\tconst entry = link ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ ENTRY_CLASS_NAME }\n\t\t\t\t\t\thref={ link }\n\t\t\t\t\t\taria-disabled={ disableLinkActivation || undefined }\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\tdisableLinkActivation &&\n\t\t\t\t\t\t\t'function' === typeof onClick\n\t\t\t\t\t\t\t\t? onClick\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ content }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\t<span className={ ENTRY_CLASS_NAME }>{ content }</span>\n\t\t\t\t);\n\n\t\t\t\treturn (\n\t\t\t\t\t<li key={ index }>\n\t\t\t\t\t\t{ entry }\n\t\t\t\t\t\t{ node.children ? (\n\t\t\t\t\t\t\t<ol>\n\t\t\t\t\t\t\t\t<TableOfContentsList\n\t\t\t\t\t\t\t\t\tnestedHeadingList={ node.children }\n\t\t\t\t\t\t\t\t\tdisableLinkActivation={\n\t\t\t\t\t\t\t\t\t\tdisableLinkActivation\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\tdisableLinkActivation &&\n\t\t\t\t\t\t\t\t\t\t'function' === typeof onClick\n\t\t\t\t\t\t\t\t\t\t\t? onClick\n\t\t\t\t\t\t\t\t\t\t\t: undefined\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</ol>\n\t\t\t\t\t\t) : null }\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAGA,MAAMA,gBAAgB,GAAG,mCAAmC;AAE5D,eAAe,SAASC,mBAAmBA,CAAE;EAC5CC,iBAAiB;EACjBC,qBAAqB;EACrBC;AAKD,CAAC,EAAiB;EACjB,oBACCC,IAAA,CAAAC,SAAA;IAAAC,QAAA,EACGL,iBAAiB,CAACM,GAAG,CAAE,CAAEC,IAAI,EAAEC,KAAK,KAAM;MAC3C,MAAM;QAAEC,OAAO;QAAEC;MAAK,CAAC,GAAGH,IAAI,CAACI,OAAO;MAEtC,MAAMC,KAAK,GAAGF,IAAI,gBACjBP,IAAA;QACCU,SAAS,EAAGf,gBAAkB;QAC9BgB,IAAI,EAAGJ,IAAM;QACb,iBAAgBT,qBAAqB,IAAIc,SAAW;QACpDb,OAAO,EACND,qBAAqB,IACrB,UAAU,KAAK,OAAOC,OAAO,GAC1BA,OAAO,GACPa,SACH;QAAAV,QAAA,EAECI;MAAO,CACP,CAAC,gBAEJN,IAAA;QAAMU,SAAS,EAAGf,gBAAkB;QAAAO,QAAA,EAAGI;MAAO,CAAQ,CACtD;MAED,oBACCO,KAAA;QAAAX,QAAA,GACGO,KAAK,EACLL,IAAI,CAACF,QAAQ,gBACdF,IAAA;UAAAE,QAAA,eACCF,IAAA,CAACJ,mBAAmB;YACnBC,iBAAiB,EAAGO,IAAI,CAACF,QAAU;YACnCJ,qBAAqB,EACpBA,qBACA;YACDC,OAAO,EACND,qBAAqB,IACrB,UAAU,KAAK,OAAOC,OAAO,GAC1BA,OAAO,GACPa;UACH,CACD;QAAC,CACC,CAAC,GACF,IAAI;MAAA,GAjBCP,KAkBN,CAAC;IAEP,CAAE;EAAC,CACF,CAAC;AAEL","ignoreList":[]}
@@ -13,9 +13,7 @@ import { store as coreStore } from '@wordpress/core-data';
13
13
  *
14
14
  * @type {number}
15
15
  */
16
- import { jsx as _jsx } from "react/jsx-runtime";
17
- import { jsxs as _jsxs } from "react/jsx-runtime";
18
- import { Fragment as _Fragment } from "react/jsx-runtime";
16
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
19
17
  const MIN_TAGS = 1;
20
18
 
21
19
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["Flex","FlexItem","PanelBody","ToggleControl","SelectControl","RangeControl","__experimentalUnitControl","UnitControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalVStack","VStack","Disabled","useSelect","__","InspectorControls","useBlockProps","useSettings","ServerSideRender","store","coreStore","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MIN_TAGS","MAX_TAGS","MIN_FONT_SIZE","MAX_FONT_SIZE","TagCloudEdit","attributes","setAttributes","taxonomy","showTagCounts","numberOfTags","smallestFontSize","largestFontSize","availableUnits","units","taxonomies","select","getTaxonomies","per_page","getTaxonomyOptions","selectOption","label","value","disabled","taxonomyOptions","filter","tax","show_cloud","map","item","slug","name","onFontSizeChange","fontSizeLabel","newValue","quantity","newUnit","Number","isFinite","updateObj","Object","entries","forEach","attribute","currentValue","currentQuantity","currentUnit","serverSideAttributes","style","border","undefined","inspectorControls","children","title","spacing","className","__nextHasNoMarginBottom","__next40pxDefaultSize","options","onChange","selectedTaxonomy","gap","isBlock","min","max","size","required","checked","skipBlockSupportAttributes","block"],"sources":["@wordpress/block-library/src/tag-cloud/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFlex,\n\tFlexItem,\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalVStack as VStack,\n\tDisabled,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Minimum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MIN_TAGS = 1;\n\n/**\n * Maximum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MAX_TAGS = 100;\n\nconst MIN_FONT_SIZE = 0.1;\nconst MAX_FONT_SIZE = 100;\n\nfunction TagCloudEdit( { attributes, setAttributes } ) {\n\tconst {\n\t\ttaxonomy,\n\t\tshowTagCounts,\n\t\tnumberOfTags,\n\t\tsmallestFontSize,\n\t\tlargestFontSize,\n\t} = attributes;\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\n\t// The `pt` unit is used as the default value and is therefore\n\t// always considered an available unit.\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits\n\t\t\t? [ ...availableUnits, 'pt' ]\n\t\t\t: [ '%', 'px', 'em', 'rem', 'pt' ],\n\t} );\n\n\tconst taxonomies = useSelect(\n\t\t( select ) => select( coreStore ).getTaxonomies( { per_page: -1 } ),\n\t\t[]\n\t);\n\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( '- Select -' ),\n\t\t\tvalue: '',\n\t\t\tdisabled: true,\n\t\t};\n\t\tconst taxonomyOptions = ( taxonomies ?? [] )\n\t\t\t.filter( ( tax ) => !! tax.show_cloud )\n\t\t\t.map( ( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\tconst onFontSizeChange = ( fontSizeLabel, newValue ) => {\n\t\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\t\tconst [ quantity, newUnit ] =\n\t\t\tparseQuantityAndUnitFromRawValue( newValue );\n\t\tif ( ! Number.isFinite( quantity ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updateObj = { [ fontSizeLabel ]: newValue };\n\t\t// We need to keep in sync the `unit` changes to both `smallestFontSize`\n\t\t// and `largestFontSize` attributes.\n\t\tObject.entries( {\n\t\t\tsmallestFontSize,\n\t\t\tlargestFontSize,\n\t\t} ).forEach( ( [ attribute, currentValue ] ) => {\n\t\t\tconst [ currentQuantity, currentUnit ] =\n\t\t\t\tparseQuantityAndUnitFromRawValue( currentValue );\n\t\t\t// Only add an update if the other font size attribute has a different unit.\n\t\t\tif ( attribute !== fontSizeLabel && currentUnit !== newUnit ) {\n\t\t\t\tupdateObj[ attribute ] = `${ currentQuantity }${ newUnit }`;\n\t\t\t}\n\t\t} );\n\t\tsetAttributes( updateObj );\n\t};\n\n\t// Remove border styles from the server-side attributes to prevent duplicate border.\n\tconst serverSideAttributes = {\n\t\t...attributes,\n\t\tstyle: {\n\t\t\t...attributes?.style,\n\t\t\tborder: undefined,\n\t\t},\n\t};\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<VStack\n\t\t\t\t\tspacing={ 4 }\n\t\t\t\t\tclassName=\"wp-block-tag-cloud__inspector-settings\"\n\t\t\t\t>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Taxonomy' ) }\n\t\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\t\tonChange={ ( selectedTaxonomy ) =>\n\t\t\t\t\t\t\tsetAttributes( { taxonomy: selectedTaxonomy } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<Flex gap={ 4 }>\n\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Smallest size' ) }\n\t\t\t\t\t\t\t\tvalue={ smallestFontSize }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tonFontSizeChange(\n\t\t\t\t\t\t\t\t\t\t'smallestFontSize',\n\t\t\t\t\t\t\t\t\t\tvalue\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\tunits={ units }\n\t\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Largest size' ) }\n\t\t\t\t\t\t\t\tvalue={ largestFontSize }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tonFontSizeChange(\n\t\t\t\t\t\t\t\t\t\t'largestFontSize',\n\t\t\t\t\t\t\t\t\t\tvalue\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\tunits={ units }\n\t\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Number of tags' ) }\n\t\t\t\t\t\tvalue={ numberOfTags }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { numberOfTags: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ MIN_TAGS }\n\t\t\t\t\t\tmax={ MAX_TAGS }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Show tag counts' ) }\n\t\t\t\t\t\tchecked={ showTagCounts }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showTagCounts: ! showTagCounts } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</VStack>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tskipBlockSupportAttributes\n\t\t\t\t\t\tblock=\"core/tag-cloud\"\n\t\t\t\t\t\tattributes={ serverSideAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default TagCloudEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Flex","FlexItem","PanelBody","ToggleControl","SelectControl","RangeControl","__experimentalUnitControl","UnitControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalVStack","VStack","Disabled","useSelect","__","InspectorControls","useBlockProps","useSettings","ServerSideRender","store","coreStore","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MIN_TAGS","MAX_TAGS","MIN_FONT_SIZE","MAX_FONT_SIZE","TagCloudEdit","attributes","setAttributes","taxonomy","showTagCounts","numberOfTags","smallestFontSize","largestFontSize","availableUnits","units","taxonomies","select","getTaxonomies","per_page","getTaxonomyOptions","selectOption","label","value","disabled","taxonomyOptions","filter","tax","show_cloud","map","item","slug","name","onFontSizeChange","fontSizeLabel","newValue","quantity","newUnit","Number","isFinite","updateObj","Object","entries","forEach","attribute","currentValue","currentQuantity","currentUnit","serverSideAttributes","style","border","undefined","inspectorControls","children","title","spacing","className","__nextHasNoMarginBottom","__next40pxDefaultSize","options","onChange","selectedTaxonomy","gap","isBlock","min","max","size","required","checked","skipBlockSupportAttributes","block"],"sources":["@wordpress/block-library/src/tag-cloud/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFlex,\n\tFlexItem,\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalVStack as VStack,\n\tDisabled,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Minimum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MIN_TAGS = 1;\n\n/**\n * Maximum number of tags a user can show using this block.\n *\n * @type {number}\n */\nconst MAX_TAGS = 100;\n\nconst MIN_FONT_SIZE = 0.1;\nconst MAX_FONT_SIZE = 100;\n\nfunction TagCloudEdit( { attributes, setAttributes } ) {\n\tconst {\n\t\ttaxonomy,\n\t\tshowTagCounts,\n\t\tnumberOfTags,\n\t\tsmallestFontSize,\n\t\tlargestFontSize,\n\t} = attributes;\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\n\t// The `pt` unit is used as the default value and is therefore\n\t// always considered an available unit.\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits\n\t\t\t? [ ...availableUnits, 'pt' ]\n\t\t\t: [ '%', 'px', 'em', 'rem', 'pt' ],\n\t} );\n\n\tconst taxonomies = useSelect(\n\t\t( select ) => select( coreStore ).getTaxonomies( { per_page: -1 } ),\n\t\t[]\n\t);\n\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( '- Select -' ),\n\t\t\tvalue: '',\n\t\t\tdisabled: true,\n\t\t};\n\t\tconst taxonomyOptions = ( taxonomies ?? [] )\n\t\t\t.filter( ( tax ) => !! tax.show_cloud )\n\t\t\t.map( ( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\tconst onFontSizeChange = ( fontSizeLabel, newValue ) => {\n\t\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\t\tconst [ quantity, newUnit ] =\n\t\t\tparseQuantityAndUnitFromRawValue( newValue );\n\t\tif ( ! Number.isFinite( quantity ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updateObj = { [ fontSizeLabel ]: newValue };\n\t\t// We need to keep in sync the `unit` changes to both `smallestFontSize`\n\t\t// and `largestFontSize` attributes.\n\t\tObject.entries( {\n\t\t\tsmallestFontSize,\n\t\t\tlargestFontSize,\n\t\t} ).forEach( ( [ attribute, currentValue ] ) => {\n\t\t\tconst [ currentQuantity, currentUnit ] =\n\t\t\t\tparseQuantityAndUnitFromRawValue( currentValue );\n\t\t\t// Only add an update if the other font size attribute has a different unit.\n\t\t\tif ( attribute !== fontSizeLabel && currentUnit !== newUnit ) {\n\t\t\t\tupdateObj[ attribute ] = `${ currentQuantity }${ newUnit }`;\n\t\t\t}\n\t\t} );\n\t\tsetAttributes( updateObj );\n\t};\n\n\t// Remove border styles from the server-side attributes to prevent duplicate border.\n\tconst serverSideAttributes = {\n\t\t...attributes,\n\t\tstyle: {\n\t\t\t...attributes?.style,\n\t\t\tborder: undefined,\n\t\t},\n\t};\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<VStack\n\t\t\t\t\tspacing={ 4 }\n\t\t\t\t\tclassName=\"wp-block-tag-cloud__inspector-settings\"\n\t\t\t\t>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Taxonomy' ) }\n\t\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\t\tonChange={ ( selectedTaxonomy ) =>\n\t\t\t\t\t\t\tsetAttributes( { taxonomy: selectedTaxonomy } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<Flex gap={ 4 }>\n\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Smallest size' ) }\n\t\t\t\t\t\t\t\tvalue={ smallestFontSize }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tonFontSizeChange(\n\t\t\t\t\t\t\t\t\t\t'smallestFontSize',\n\t\t\t\t\t\t\t\t\t\tvalue\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\tunits={ units }\n\t\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Largest size' ) }\n\t\t\t\t\t\t\t\tvalue={ largestFontSize }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tonFontSizeChange(\n\t\t\t\t\t\t\t\t\t\t'largestFontSize',\n\t\t\t\t\t\t\t\t\t\tvalue\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\tunits={ units }\n\t\t\t\t\t\t\t\tmin={ MIN_FONT_SIZE }\n\t\t\t\t\t\t\t\tmax={ MAX_FONT_SIZE }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Number of tags' ) }\n\t\t\t\t\t\tvalue={ numberOfTags }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { numberOfTags: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ MIN_TAGS }\n\t\t\t\t\t\tmax={ MAX_TAGS }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Show tag counts' ) }\n\t\t\t\t\t\tchecked={ showTagCounts }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showTagCounts: ! showTagCounts } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</VStack>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tskipBlockSupportAttributes\n\t\t\t\t\t\tblock=\"core/tag-cloud\"\n\t\t\t\t\t\tattributes={ serverSideAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default TagCloudEdit;\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,IAAI,EACJC,QAAQ,EACRC,SAAS,EACTC,aAAa,EACbC,aAAa,EACbC,YAAY,EACZC,yBAAyB,IAAIC,WAAW,EACxCC,4BAA4B,IAAIC,cAAc,EAC9CC,8CAA8C,IAAIC,gCAAgC,EAClFC,oBAAoB,IAAIC,MAAM,EAC9BC,QAAQ,QACF,uBAAuB;AAC9B,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SACCC,iBAAiB,EACjBC,aAAa,EACbC,WAAW,QACL,yBAAyB;AAChC,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA;AACA;AAJA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAKA,MAAMC,QAAQ,GAAG,CAAC;;AAElB;AACA;AACA;AACA;AACA;AACA,MAAMC,QAAQ,GAAG,GAAG;AAEpB,MAAMC,aAAa,GAAG,GAAG;AACzB,MAAMC,aAAa,GAAG,GAAG;AAEzB,SAASC,YAAYA,CAAE;EAAEC,UAAU;EAAEC;AAAc,CAAC,EAAG;EACtD,MAAM;IACLC,QAAQ;IACRC,aAAa;IACbC,YAAY;IACZC,gBAAgB;IAChBC;EACD,CAAC,GAAGN,UAAU;EAEd,MAAM,CAAEO,cAAc,CAAE,GAAGtB,WAAW,CAAE,eAAgB,CAAC;;EAEzD;EACA;EACA,MAAMuB,KAAK,GAAGjC,cAAc,CAAE;IAC7BgC,cAAc,EAAEA,cAAc,GAC3B,CAAE,GAAGA,cAAc,EAAE,IAAI,CAAE,GAC3B,CAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI;EAClC,CAAE,CAAC;EAEH,MAAME,UAAU,GAAG5B,SAAS,CACzB6B,MAAM,IAAMA,MAAM,CAAEtB,SAAU,CAAC,CAACuB,aAAa,CAAE;IAAEC,QAAQ,EAAE,CAAC;EAAE,CAAE,CAAC,EACnE,EACD,CAAC;EAED,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;IAChC,MAAMC,YAAY,GAAG;MACpBC,KAAK,EAAEjC,EAAE,CAAE,YAAa,CAAC;MACzBkC,KAAK,EAAE,EAAE;MACTC,QAAQ,EAAE;IACX,CAAC;IACD,MAAMC,eAAe,GAAG,CAAET,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,EAAE,EACxCU,MAAM,CAAIC,GAAG,IAAM,CAAC,CAAEA,GAAG,CAACC,UAAW,CAAC,CACtCC,GAAG,CAAIC,IAAI,IAAM;MACjB,OAAO;QACNP,KAAK,EAAEO,IAAI,CAACC,IAAI;QAChBT,KAAK,EAAEQ,IAAI,CAACE;MACb,CAAC;IACF,CAAE,CAAC;IAEJ,OAAO,CAAEX,YAAY,EAAE,GAAGI,eAAe,CAAE;EAC5C,CAAC;EAED,MAAMQ,gBAAgB,GAAGA,CAAEC,aAAa,EAAEC,QAAQ,KAAM;IACvD;IACA,MAAM,CAAEC,QAAQ,EAAEC,OAAO,CAAE,GAC1BrD,gCAAgC,CAAEmD,QAAS,CAAC;IAC7C,IAAK,CAAEG,MAAM,CAACC,QAAQ,CAAEH,QAAS,CAAC,EAAG;MACpC;IACD;IACA,MAAMI,SAAS,GAAG;MAAE,CAAEN,aAAa,GAAIC;IAAS,CAAC;IACjD;IACA;IACAM,MAAM,CAACC,OAAO,CAAE;MACf9B,gBAAgB;MAChBC;IACD,CAAE,CAAC,CAAC8B,OAAO,CAAE,CAAE,CAAEC,SAAS,EAAEC,YAAY,CAAE,KAAM;MAC/C,MAAM,CAAEC,eAAe,EAAEC,WAAW,CAAE,GACrC/D,gCAAgC,CAAE6D,YAAa,CAAC;MACjD;MACA,IAAKD,SAAS,KAAKV,aAAa,IAAIa,WAAW,KAAKV,OAAO,EAAG;QAC7DG,SAAS,CAAEI,SAAS,CAAE,GAAG,GAAIE,eAAe,GAAKT,OAAO,EAAG;MAC5D;IACD,CAAE,CAAC;IACH7B,aAAa,CAAEgC,SAAU,CAAC;EAC3B,CAAC;;EAED;EACA,MAAMQ,oBAAoB,GAAG;IAC5B,GAAGzC,UAAU;IACb0C,KAAK,EAAE;MACN,GAAG1C,UAAU,EAAE0C,KAAK;MACpBC,MAAM,EAAEC;IACT;EACD,CAAC;EAED,MAAMC,iBAAiB,gBACtBvD,IAAA,CAACP,iBAAiB;IAAA+D,QAAA,eACjBxD,IAAA,CAACtB,SAAS;MAAC+E,KAAK,EAAGjE,EAAE,CAAE,UAAW,CAAG;MAAAgE,QAAA,eACpCtD,KAAA,CAACb,MAAM;QACNqE,OAAO,EAAG,CAAG;QACbC,SAAS,EAAC,wCAAwC;QAAAH,QAAA,gBAElDxD,IAAA,CAACpB,aAAa;UACbgF,uBAAuB;UACvBC,qBAAqB;UACrBpC,KAAK,EAAGjC,EAAE,CAAE,UAAW,CAAG;UAC1BsE,OAAO,EAAGvC,kBAAkB,CAAC,CAAG;UAChCG,KAAK,EAAGd,QAAU;UAClBmD,QAAQ,EAAKC,gBAAgB,IAC5BrD,aAAa,CAAE;YAAEC,QAAQ,EAAEoD;UAAiB,CAAE;QAC9C,CACD,CAAC,eACF9D,KAAA,CAAC1B,IAAI;UAACyF,GAAG,EAAG,CAAG;UAAAT,QAAA,gBACdxD,IAAA,CAACvB,QAAQ;YAACyF,OAAO;YAAAV,QAAA,eAChBxD,IAAA,CAACjB,WAAW;cACX0C,KAAK,EAAGjC,EAAE,CAAE,eAAgB,CAAG;cAC/BkC,KAAK,EAAGX,gBAAkB;cAC1BgD,QAAQ,EAAKrC,KAAK,IAAM;gBACvBU,gBAAgB,CACf,kBAAkB,EAClBV,KACD,CAAC;cACF,CAAG;cACHR,KAAK,EAAGA,KAAO;cACfiD,GAAG,EAAG5D,aAAe;cACrB6D,GAAG,EAAG5D,aAAe;cACrB6D,IAAI,EAAC;YAAkB,CACvB;UAAC,CACO,CAAC,eACXrE,IAAA,CAACvB,QAAQ;YAACyF,OAAO;YAAAV,QAAA,eAChBxD,IAAA,CAACjB,WAAW;cACX0C,KAAK,EAAGjC,EAAE,CAAE,cAAe,CAAG;cAC9BkC,KAAK,EAAGV,eAAiB;cACzB+C,QAAQ,EAAKrC,KAAK,IAAM;gBACvBU,gBAAgB,CACf,iBAAiB,EACjBV,KACD,CAAC;cACF,CAAG;cACHR,KAAK,EAAGA,KAAO;cACfiD,GAAG,EAAG5D,aAAe;cACrB6D,GAAG,EAAG5D,aAAe;cACrB6D,IAAI,EAAC;YAAkB,CACvB;UAAC,CACO,CAAC;QAAA,CACN,CAAC,eACPrE,IAAA,CAACnB,YAAY;UACZ+E,uBAAuB;UACvBC,qBAAqB;UACrBpC,KAAK,EAAGjC,EAAE,CAAE,gBAAiB,CAAG;UAChCkC,KAAK,EAAGZ,YAAc;UACtBiD,QAAQ,EAAKrC,KAAK,IACjBf,aAAa,CAAE;YAAEG,YAAY,EAAEY;UAAM,CAAE,CACvC;UACDyC,GAAG,EAAG9D,QAAU;UAChB+D,GAAG,EAAG9D,QAAU;UAChBgE,QAAQ;QAAA,CACR,CAAC,eACFtE,IAAA,CAACrB,aAAa;UACbiF,uBAAuB;UACvBnC,KAAK,EAAGjC,EAAE,CAAE,iBAAkB,CAAG;UACjC+E,OAAO,EAAG1D,aAAe;UACzBkD,QAAQ,EAAGA,CAAA,KACVpD,aAAa,CAAE;YAAEE,aAAa,EAAE,CAAEA;UAAc,CAAE;QAClD,CACD,CAAC;MAAA,CACK;IAAC,CACC;EAAC,CACM,CACnB;EAED,oBACCX,KAAA,CAAAE,SAAA;IAAAoD,QAAA,GACGD,iBAAiB,eACnBvD,IAAA;MAAA,GAAUN,aAAa,CAAC,CAAC;MAAA8D,QAAA,eACxBxD,IAAA,CAACV,QAAQ;QAAAkE,QAAA,eACRxD,IAAA,CAACJ,gBAAgB;UAChB4E,0BAA0B;UAC1BC,KAAK,EAAC,gBAAgB;UACtB/D,UAAU,EAAGyC;QAAsB,CACnC;MAAC,CACO;IAAC,CACP,CAAC;EAAA,CACL,CAAC;AAEL;AAEA,eAAe1C,YAAY","ignoreList":[]}
@@ -10,9 +10,7 @@ import { useSelect } from '@wordpress/data';
10
10
  * Internal dependencies
11
11
  */
12
12
  import { TemplatePartImportControls } from './import-controls';
13
- import { jsx as _jsx } from "react/jsx-runtime";
14
- import { Fragment as _Fragment } from "react/jsx-runtime";
15
- import { jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
16
14
  const htmlElementMessages = {
17
15
  header: __('The <header> element should represent introductory content, typically a group of introductory or navigational aids.'),
18
16
  main: __('The <main> element should be used for the primary content of your document only.'),
@@ -69,7 +67,7 @@ export function TemplatePartAdvancedControls({
69
67
  __next40pxDefaultSize: true,
70
68
  label: __('HTML element'),
71
69
  options: [{
72
- label: sprintf( /* translators: %s: HTML tag based on area. */
70
+ label: sprintf(/* translators: %s: HTML tag based on area. */
73
71
  __('Default based on area (%s)'), `<${defaultWrapper}>`),
74
72
  value: ''
75
73
  }, {
@@ -1 +1 @@
1
- {"version":3,"names":["useEntityProp","SelectControl","TextControl","sprintf","__","useSelect","TemplatePartImportControls","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","htmlElementMessages","header","main","section","article","aside","footer","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","title","setTitle","definedAreas","select","__experimentalGetDefaultTemplatePartAreas","areaOptions","map","label","_area","value","children","__next40pxDefaultSize","__nextHasNoMarginBottom","onChange","onFocus","event","target","labelPosition","options","help"],"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\n\nconst htmlElementMessages = {\n\theader: __(\n\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t),\n\tmain: __(\n\t\t'The <main> element should be used for the primary content of your document only.'\n\t),\n\tsection: __(\n\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t),\n\tarticle: __(\n\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t),\n\taside: __(\n\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t),\n\tfooter: __(\n\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t),\n};\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst definedAreas = useSelect( ( select ) => {\n\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t/* eslint-disable-next-line @wordpress/data-no-store-string-literals */\n\t\treturn select(\n\t\t\t'core/editor'\n\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t}, [] );\n\n\tconst areaOptions = definedAreas.map( ( { label, area: _area } ) => ( {\n\t\tlabel,\n\t\tvalue: _area,\n\t} ) );\n\n\treturn (\n\t\t<>\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\toptions={ areaOptions }\n\t\t\t\t\t\tvalue={ area }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: HTML tag based on area. */\n\t\t\t\t\t\t\t__( 'Default based on area (%s)' ),\n\t\t\t\t\t\t\t`<${ defaultWrapper }>`\n\t\t\t\t\t\t),\n\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t},\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName || '' }\n\t\t\t\tonChange={ ( value ) => setAttributes( { tagName: value } ) }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t\t{ ! hasInnerBlocks && (\n\t\t\t\t<TemplatePartImportControls\n\t\t\t\t\tarea={ area }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEntityProp","SelectControl","TextControl","sprintf","__","useSelect","TemplatePartImportControls","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","htmlElementMessages","header","main","section","article","aside","footer","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","title","setTitle","definedAreas","select","__experimentalGetDefaultTemplatePartAreas","areaOptions","map","label","_area","value","children","__next40pxDefaultSize","__nextHasNoMarginBottom","onChange","onFocus","event","target","labelPosition","options","help"],"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\n\nconst htmlElementMessages = {\n\theader: __(\n\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t),\n\tmain: __(\n\t\t'The <main> element should be used for the primary content of your document only.'\n\t),\n\tsection: __(\n\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t),\n\tarticle: __(\n\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t),\n\taside: __(\n\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t),\n\tfooter: __(\n\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t),\n};\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst definedAreas = useSelect( ( select ) => {\n\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t/* eslint-disable-next-line @wordpress/data-no-store-string-literals */\n\t\treturn select(\n\t\t\t'core/editor'\n\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t}, [] );\n\n\tconst areaOptions = definedAreas.map( ( { label, area: _area } ) => ( {\n\t\tlabel,\n\t\tvalue: _area,\n\t} ) );\n\n\treturn (\n\t\t<>\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\toptions={ areaOptions }\n\t\t\t\t\t\tvalue={ area }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: HTML tag based on area. */\n\t\t\t\t\t\t\t__( 'Default based on area (%s)' ),\n\t\t\t\t\t\t\t`<${ defaultWrapper }>`\n\t\t\t\t\t\t),\n\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t},\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName || '' }\n\t\t\t\tonChange={ ( value ) => setAttributes( { tagName: value } ) }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t\t{ ! hasInnerBlocks && (\n\t\t\t\t<TemplatePartImportControls\n\t\t\t\t\tarea={ area }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  /**
2
3
  * WordPress dependencies
3
4
  */
@@ -13,8 +14,7 @@ import { store as noticesStore } from '@wordpress/notices';
13
14
  */
14
15
  import { useCreateTemplatePartFromBlocks } from './utils/hooks';
15
16
  import { transformWidgetToBlock } from './utils/transformers';
16
- import { jsx as _jsx } from "react/jsx-runtime";
17
- import { jsxs as _jsxs } from "react/jsx-runtime";
17
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
18
18
  const SIDEBARS_QUERY = {
19
19
  per_page: -1,
20
20
  _fields: 'id,name,description,status,widgets'
@@ -101,7 +101,7 @@ export function TemplatePartImportControls({
101
101
  await createFromBlocks(blocks, /* translators: %s: name of the widget area */
102
102
  sprintf(__('Widget area: %s'), sidebar.label));
103
103
  if (skippedWidgets.size) {
104
- createErrorNotice(sprintf( /* translators: %s: the list of widgets */
104
+ createErrorNotice(sprintf(/* translators: %s: the list of widgets */
105
105
  __('Unable to import the following widgets: %s.'), Array.from(skippedWidgets).join(', ')), {
106
106
  type: 'snackbar'
107
107
  });
@@ -1 +1 @@
1
- {"version":3,"names":["__","_x","sprintf","useMemo","useState","useDispatch","useSelect","useRegistry","Button","FlexBlock","FlexItem","SelectControl","__experimentalHStack","HStack","__experimentalSpacer","Spacer","store","coreStore","noticesStore","useCreateTemplatePartFromBlocks","transformWidgetToBlock","jsx","_jsx","jsxs","_jsxs","SIDEBARS_QUERY","per_page","_fields","TemplatePartImportControls","area","setAttributes","selectedSidebar","setSelectedSidebar","isBusy","setIsBusy","registry","sidebars","hasResolved","select","getSidebars","hasFinishedResolution","createErrorNotice","createFromBlocks","options","sidebarOptions","filter","widgetArea","id","widgets","length","map","value","label","name","marginBottom","createFromWidgets","event","preventDefault","sidebar","find","getWidgets","resolveSelect","_embed","skippedWidgets","Set","blocks","flatMap","widget","block","add","id_base","size","Array","from","join","type","children","as","onSubmit","onChange","disabled","__next40pxDefaultSize","__nextHasNoMarginBottom","style","marginTop","variant"],"sources":["@wordpress/block-library/src/template-part/edit/import-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useMemo, useState } from '@wordpress/element';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport {\n\tButton,\n\tFlexBlock,\n\tFlexItem,\n\tSelectControl,\n\t__experimentalHStack as HStack,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { useCreateTemplatePartFromBlocks } from './utils/hooks';\nimport { transformWidgetToBlock } from './utils/transformers';\n\nconst SIDEBARS_QUERY = {\n\tper_page: -1,\n\t_fields: 'id,name,description,status,widgets',\n};\n\nexport function TemplatePartImportControls( { area, setAttributes } ) {\n\tconst [ selectedSidebar, setSelectedSidebar ] = useState( '' );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\n\tconst registry = useRegistry();\n\tconst { sidebars, hasResolved } = useSelect( ( select ) => {\n\t\tconst { getSidebars, hasFinishedResolution } = select( coreStore );\n\n\t\treturn {\n\t\t\tsidebars: getSidebars( SIDEBARS_QUERY ),\n\t\t\thasResolved: hasFinishedResolution( 'getSidebars', [\n\t\t\t\tSIDEBARS_QUERY,\n\t\t\t] ),\n\t\t};\n\t}, [] );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\tconst options = useMemo( () => {\n\t\tconst sidebarOptions = ( sidebars ?? [] )\n\t\t\t.filter(\n\t\t\t\t( widgetArea ) =>\n\t\t\t\t\twidgetArea.id !== 'wp_inactive_widgets' &&\n\t\t\t\t\twidgetArea.widgets.length > 0\n\t\t\t)\n\t\t\t.map( ( widgetArea ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: widgetArea.id,\n\t\t\t\t\tlabel: widgetArea.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\tif ( ! sidebarOptions.length ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{ value: '', label: __( 'Select widget area' ) },\n\t\t\t...sidebarOptions,\n\t\t];\n\t}, [ sidebars ] );\n\n\t// Render an empty node while data is loading to avoid SlotFill re-positioning bug.\n\t// See: https://github.com/WordPress/gutenberg/issues/15641.\n\tif ( ! hasResolved ) {\n\t\treturn <Spacer marginBottom=\"0\" />;\n\t}\n\n\tif ( hasResolved && ! options.length ) {\n\t\treturn null;\n\t}\n\n\tasync function createFromWidgets( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy || ! selectedSidebar ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst sidebar = options.find(\n\t\t\t( { value } ) => value === selectedSidebar\n\t\t);\n\t\tconst { getWidgets } = registry.resolveSelect( coreStore );\n\n\t\t// The widgets API always returns a successful response.\n\t\tconst widgets = await getWidgets( {\n\t\t\tsidebar: sidebar.value,\n\t\t\t_embed: 'about',\n\t\t} );\n\n\t\tconst skippedWidgets = new Set();\n\t\tconst blocks = widgets.flatMap( ( widget ) => {\n\t\t\tconst block = transformWidgetToBlock( widget );\n\n\t\t\t// Skip the block if we have no matching transformations.\n\t\t\tif ( ! block ) {\n\t\t\t\tskippedWidgets.add( widget.id_base );\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn block;\n\t\t} );\n\n\t\tawait createFromBlocks(\n\t\t\tblocks,\n\t\t\t/* translators: %s: name of the widget area */\n\t\t\tsprintf( __( 'Widget area: %s' ), sidebar.label )\n\t\t);\n\n\t\tif ( skippedWidgets.size ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: the list of widgets */\n\t\t\t\t\t__( 'Unable to import the following widgets: %s.' ),\n\t\t\t\t\tArray.from( skippedWidgets ).join( ', ' )\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tsetIsBusy( false );\n\t}\n\n\treturn (\n\t\t<Spacer marginBottom=\"4\">\n\t\t\t<HStack as=\"form\" onSubmit={ createFromWidgets }>\n\t\t\t\t<FlexBlock>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\tlabel={ __( 'Import widget area' ) }\n\t\t\t\t\t\tvalue={ selectedSidebar }\n\t\t\t\t\t\toptions={ options }\n\t\t\t\t\t\tonChange={ ( value ) => setSelectedSidebar( value ) }\n\t\t\t\t\t\tdisabled={ ! options.length }\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</FlexBlock>\n\t\t\t\t<FlexItem\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tmarginBottom: '8px',\n\t\t\t\t\t\tmarginTop: 'auto',\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\taria-disabled={ isBusy || ! selectedSidebar }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ _x( 'Import', 'button label' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","_x","sprintf","useMemo","useState","useDispatch","useSelect","useRegistry","Button","FlexBlock","FlexItem","SelectControl","__experimentalHStack","HStack","__experimentalSpacer","Spacer","store","coreStore","noticesStore","useCreateTemplatePartFromBlocks","transformWidgetToBlock","jsx","_jsx","jsxs","_jsxs","SIDEBARS_QUERY","per_page","_fields","TemplatePartImportControls","area","setAttributes","selectedSidebar","setSelectedSidebar","isBusy","setIsBusy","registry","sidebars","hasResolved","select","getSidebars","hasFinishedResolution","createErrorNotice","createFromBlocks","options","sidebarOptions","filter","widgetArea","id","widgets","length","map","value","label","name","marginBottom","createFromWidgets","event","preventDefault","sidebar","find","getWidgets","resolveSelect","_embed","skippedWidgets","Set","blocks","flatMap","widget","block","add","id_base","size","Array","from","join","type","children","as","onSubmit","onChange","disabled","__next40pxDefaultSize","__nextHasNoMarginBottom","style","marginTop","variant"],"sources":["@wordpress/block-library/src/template-part/edit/import-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useMemo, useState } from '@wordpress/element';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport {\n\tButton,\n\tFlexBlock,\n\tFlexItem,\n\tSelectControl,\n\t__experimentalHStack as HStack,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { useCreateTemplatePartFromBlocks } from './utils/hooks';\nimport { transformWidgetToBlock } from './utils/transformers';\n\nconst SIDEBARS_QUERY = {\n\tper_page: -1,\n\t_fields: 'id,name,description,status,widgets',\n};\n\nexport function TemplatePartImportControls( { area, setAttributes } ) {\n\tconst [ selectedSidebar, setSelectedSidebar ] = useState( '' );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\n\tconst registry = useRegistry();\n\tconst { sidebars, hasResolved } = useSelect( ( select ) => {\n\t\tconst { getSidebars, hasFinishedResolution } = select( coreStore );\n\n\t\treturn {\n\t\t\tsidebars: getSidebars( SIDEBARS_QUERY ),\n\t\t\thasResolved: hasFinishedResolution( 'getSidebars', [\n\t\t\t\tSIDEBARS_QUERY,\n\t\t\t] ),\n\t\t};\n\t}, [] );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\tconst options = useMemo( () => {\n\t\tconst sidebarOptions = ( sidebars ?? [] )\n\t\t\t.filter(\n\t\t\t\t( widgetArea ) =>\n\t\t\t\t\twidgetArea.id !== 'wp_inactive_widgets' &&\n\t\t\t\t\twidgetArea.widgets.length > 0\n\t\t\t)\n\t\t\t.map( ( widgetArea ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: widgetArea.id,\n\t\t\t\t\tlabel: widgetArea.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\tif ( ! sidebarOptions.length ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{ value: '', label: __( 'Select widget area' ) },\n\t\t\t...sidebarOptions,\n\t\t];\n\t}, [ sidebars ] );\n\n\t// Render an empty node while data is loading to avoid SlotFill re-positioning bug.\n\t// See: https://github.com/WordPress/gutenberg/issues/15641.\n\tif ( ! hasResolved ) {\n\t\treturn <Spacer marginBottom=\"0\" />;\n\t}\n\n\tif ( hasResolved && ! options.length ) {\n\t\treturn null;\n\t}\n\n\tasync function createFromWidgets( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy || ! selectedSidebar ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst sidebar = options.find(\n\t\t\t( { value } ) => value === selectedSidebar\n\t\t);\n\t\tconst { getWidgets } = registry.resolveSelect( coreStore );\n\n\t\t// The widgets API always returns a successful response.\n\t\tconst widgets = await getWidgets( {\n\t\t\tsidebar: sidebar.value,\n\t\t\t_embed: 'about',\n\t\t} );\n\n\t\tconst skippedWidgets = new Set();\n\t\tconst blocks = widgets.flatMap( ( widget ) => {\n\t\t\tconst block = transformWidgetToBlock( widget );\n\n\t\t\t// Skip the block if we have no matching transformations.\n\t\t\tif ( ! block ) {\n\t\t\t\tskippedWidgets.add( widget.id_base );\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn block;\n\t\t} );\n\n\t\tawait createFromBlocks(\n\t\t\tblocks,\n\t\t\t/* translators: %s: name of the widget area */\n\t\t\tsprintf( __( 'Widget area: %s' ), sidebar.label )\n\t\t);\n\n\t\tif ( skippedWidgets.size ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: the list of widgets */\n\t\t\t\t\t__( 'Unable to import the following widgets: %s.' ),\n\t\t\t\t\tArray.from( skippedWidgets ).join( ', ' )\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tsetIsBusy( false );\n\t}\n\n\treturn (\n\t\t<Spacer marginBottom=\"4\">\n\t\t\t<HStack as=\"form\" onSubmit={ createFromWidgets }>\n\t\t\t\t<FlexBlock>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\tlabel={ __( 'Import widget area' ) }\n\t\t\t\t\t\tvalue={ selectedSidebar }\n\t\t\t\t\t\toptions={ options }\n\t\t\t\t\t\tonChange={ ( value ) => setSelectedSidebar( value ) }\n\t\t\t\t\t\tdisabled={ ! options.length }\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</FlexBlock>\n\t\t\t\t<FlexItem\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tmarginBottom: '8px',\n\t\t\t\t\t\tmarginTop: 'auto',\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\taria-disabled={ isBusy || ! selectedSidebar }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ _x( 'Import', 'button label' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -20,9 +20,7 @@ import { TemplatePartAdvancedControls } from './advanced-controls';
20
20
  import TemplatePartInnerBlocks from './inner-blocks';
21
21
  import { createTemplatePartId } from './utils/create-template-part-id';
22
22
  import { useAlternativeBlockPatterns, useAlternativeTemplateParts, useTemplatePartArea } from './utils/hooks';
23
- import { jsx as _jsx } from "react/jsx-runtime";
24
- import { jsxs as _jsxs } from "react/jsx-runtime";
25
- import { Fragment as _Fragment } from "react/jsx-runtime";
23
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
26
24
  function ReplaceButton({
27
25
  isEntityAvailable,
28
26
  area,
@@ -141,7 +139,7 @@ export default function TemplatePartEdit({
141
139
  blocks: pattern.blocks,
142
140
  content: serialize(pattern.blocks)
143
141
  });
144
- createSuccessNotice(sprintf( /* translators: %s: template part title. */
142
+ createSuccessNotice(sprintf(/* translators: %s: template part title. */
145
143
  __('Template Part "%s" updated.'), title || slug), {
146
144
  type: 'snackbar'
147
145
  });
@@ -153,7 +151,7 @@ export default function TemplatePartEdit({
153
151
  return /*#__PURE__*/_jsx(TagName, {
154
152
  ...blockProps,
155
153
  children: /*#__PURE__*/_jsx(Warning, {
156
- children: sprintf( /* translators: %s: Template part slug */
154
+ children: sprintf(/* translators: %s: Template part slug */
157
155
  __('Template part has been deleted or is unavailable: %s'), slug)
158
156
  })
159
157
  });