@wordpress/block-library 9.15.1 → 9.17.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 (441) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/archives/edit.js +2 -2
  3. package/build/archives/edit.js.map +1 -1
  4. package/build/button/edit.js +2 -1
  5. package/build/button/edit.js.map +1 -1
  6. package/build/categories/edit.js +115 -37
  7. package/build/categories/edit.js.map +1 -1
  8. package/build/columns/edit.js +1 -1
  9. package/build/columns/edit.js.map +1 -1
  10. package/build/columns/edit.native.js +1 -1
  11. package/build/columns/edit.native.js.map +1 -1
  12. package/build/comment-template/edit.js +2 -2
  13. package/build/comment-template/edit.js.map +1 -1
  14. package/build/comments/edit/comments-inspector-controls.js +6 -5
  15. package/build/comments/edit/comments-inspector-controls.js.map +1 -1
  16. package/build/comments-pagination/index.js +5 -0
  17. package/build/comments-pagination/index.js.map +1 -1
  18. package/build/comments-pagination-next/index.js +7 -6
  19. package/build/comments-pagination-next/index.js.map +1 -1
  20. package/build/comments-pagination-previous/index.js +7 -6
  21. package/build/comments-pagination-previous/index.js.map +1 -1
  22. package/build/cover/deprecated.js +1 -1
  23. package/build/cover/deprecated.js.map +1 -1
  24. package/build/cover/edit/inspector-controls.js +2 -9
  25. package/build/cover/edit/inspector-controls.js.map +1 -1
  26. package/build/details/edit.js +27 -18
  27. package/build/details/edit.js.map +1 -1
  28. package/build/details/index.js +12 -0
  29. package/build/details/index.js.map +1 -1
  30. package/build/details/save.js +2 -0
  31. package/build/details/save.js.map +1 -1
  32. package/build/embed/transforms.js +5 -2
  33. package/build/embed/transforms.js.map +1 -1
  34. package/build/embed/util.js +1 -1
  35. package/build/embed/util.js.map +1 -1
  36. package/build/file/edit.js +7 -4
  37. package/build/file/edit.js.map +1 -1
  38. package/build/file/transforms.js +1 -1
  39. package/build/file/transforms.js.map +1 -1
  40. package/build/file/utils/index.js +1 -1
  41. package/build/file/utils/index.js.map +1 -1
  42. package/build/form/variations.js +1 -1
  43. package/build/form/variations.js.map +1 -1
  44. package/build/form-input/edit.js +1 -1
  45. package/build/form-input/edit.js.map +1 -1
  46. package/build/gallery/edit.js +1 -1
  47. package/build/gallery/edit.js.map +1 -1
  48. package/build/gallery/transforms.js +2 -2
  49. package/build/gallery/transforms.js.map +1 -1
  50. package/build/gallery/use-get-new-images.js +1 -1
  51. package/build/gallery/use-get-new-images.js.map +1 -1
  52. package/build/group/edit.js +2 -9
  53. package/build/group/edit.js.map +1 -1
  54. package/build/home-link/edit.js +1 -2
  55. package/build/home-link/edit.js.map +1 -1
  56. package/build/latest-comments/edit.js +73 -26
  57. package/build/latest-comments/edit.js.map +1 -1
  58. package/build/latest-posts/constants.js +2 -1
  59. package/build/latest-posts/constants.js.map +1 -1
  60. package/build/latest-posts/edit.js +91 -38
  61. package/build/latest-posts/edit.js.map +1 -1
  62. package/build/list-item/edit.native.js +2 -2
  63. package/build/list-item/edit.native.js.map +1 -1
  64. package/build/list-item/index.js +1 -1
  65. package/build/media-text/edit.native.js +2 -2
  66. package/build/media-text/edit.native.js.map +1 -1
  67. package/build/media-text/media-container.native.js +4 -4
  68. package/build/media-text/media-container.native.js.map +1 -1
  69. package/build/navigation/edit/index.js +8 -4
  70. package/build/navigation/edit/index.js.map +1 -1
  71. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
  72. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  73. package/build/navigation/edit/use-generate-default-navigation-title.js +4 -4
  74. package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  75. package/build/navigation/index.js +15 -0
  76. package/build/navigation/index.js.map +1 -1
  77. package/build/navigation-link/edit.js +15 -20
  78. package/build/navigation-link/edit.js.map +1 -1
  79. package/build/navigation-link/link-ui.js +9 -18
  80. package/build/navigation-link/link-ui.js.map +1 -1
  81. package/build/navigation-submenu/edit.js +1 -1
  82. package/build/navigation-submenu/edit.js.map +1 -1
  83. package/build/navigation-submenu/index.js +7 -0
  84. package/build/navigation-submenu/index.js.map +1 -1
  85. package/build/page-list/edit.js +1 -1
  86. package/build/page-list/edit.js.map +1 -1
  87. package/build/page-list/index.js +11 -0
  88. package/build/page-list/index.js.map +1 -1
  89. package/build/paragraph/edit.js +4 -14
  90. package/build/paragraph/edit.js.map +1 -1
  91. package/build/pattern/index.js +1 -1
  92. package/build/post-author-name/edit.js +41 -12
  93. package/build/post-author-name/edit.js.map +1 -1
  94. package/build/post-comments-link/index.js +7 -1
  95. package/build/post-comments-link/index.js.map +1 -1
  96. package/build/post-content/index.js +1 -0
  97. package/build/post-content/index.js.map +1 -1
  98. package/build/post-date/edit.js +1 -1
  99. package/build/post-date/edit.js.map +1 -1
  100. package/build/post-featured-image/edit.js +0 -6
  101. package/build/post-featured-image/edit.js.map +1 -1
  102. package/build/post-featured-image/overlay-controls.js +2 -1
  103. package/build/post-featured-image/overlay-controls.js.map +1 -1
  104. package/build/post-navigation-link/variations.js +2 -2
  105. package/build/post-navigation-link/variations.js.map +1 -1
  106. package/build/post-terms/edit.js +1 -0
  107. package/build/post-terms/edit.js.map +1 -1
  108. package/build/post-time-to-read/index.js +1 -1
  109. package/build/query/edit/inspector-controls/author-control.js +1 -1
  110. package/build/query/edit/inspector-controls/author-control.js.map +1 -1
  111. package/build/query/edit/inspector-controls/index.js +110 -61
  112. package/build/query/edit/inspector-controls/index.js.map +1 -1
  113. package/build/query/edit/query-content.js +2 -6
  114. package/build/query/edit/query-content.js.map +1 -1
  115. package/build/query/utils.js +1 -1
  116. package/build/query/utils.js.map +1 -1
  117. package/build/query-no-results/index.js +1 -1
  118. package/build/query-pagination-numbers/edit.js +1 -1
  119. package/build/query-pagination-numbers/edit.js.map +1 -1
  120. package/build/query-title/edit.js +40 -14
  121. package/build/query-title/edit.js.map +1 -1
  122. package/build/query-total/index.js +7 -1
  123. package/build/query-total/index.js.map +1 -1
  124. package/build/quote/transforms.js +1 -1
  125. package/build/quote/transforms.js.map +1 -1
  126. package/build/read-more/edit.js +25 -7
  127. package/build/read-more/edit.js.map +1 -1
  128. package/build/rss/edit.js +1 -0
  129. package/build/rss/edit.js.map +1 -1
  130. package/build/rss/index.js +6 -0
  131. package/build/rss/index.js.map +1 -1
  132. package/build/search/edit.js +67 -48
  133. package/build/search/edit.js.map +1 -1
  134. package/build/separator/edit.js +2 -4
  135. package/build/separator/edit.js.map +1 -1
  136. package/build/site-logo/edit.js +26 -35
  137. package/build/site-logo/edit.js.map +1 -1
  138. package/build/social-links/edit.js +2 -1
  139. package/build/social-links/edit.js.map +1 -1
  140. package/build/spacer/controls.js +13 -9
  141. package/build/spacer/controls.js.map +1 -1
  142. package/build/spacer/edit.js +23 -21
  143. package/build/spacer/edit.js.map +1 -1
  144. package/build/table-of-contents/edit.js +24 -8
  145. package/build/table-of-contents/edit.js.map +1 -1
  146. package/build/template-part/edit/advanced-controls.js +2 -9
  147. package/build/template-part/edit/advanced-controls.js.map +1 -1
  148. package/build/utils/messages.js +22 -0
  149. package/build/utils/messages.js.map +1 -0
  150. package/build/video/edit-common-settings.js +1 -1
  151. package/build/video/edit-common-settings.js.map +1 -1
  152. package/build/video/edit.native.js +3 -3
  153. package/build/video/edit.native.js.map +1 -1
  154. package/build-module/archives/edit.js +2 -2
  155. package/build-module/archives/edit.js.map +1 -1
  156. package/build-module/button/edit.js +3 -2
  157. package/build-module/button/edit.js.map +1 -1
  158. package/build-module/categories/edit.js +116 -38
  159. package/build-module/categories/edit.js.map +1 -1
  160. package/build-module/columns/edit.js +1 -1
  161. package/build-module/columns/edit.js.map +1 -1
  162. package/build-module/columns/edit.native.js +1 -1
  163. package/build-module/columns/edit.native.js.map +1 -1
  164. package/build-module/comment-template/edit.js +2 -2
  165. package/build-module/comment-template/edit.js.map +1 -1
  166. package/build-module/comments/edit/comments-inspector-controls.js +5 -4
  167. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
  168. package/build-module/comments-pagination/index.js +5 -0
  169. package/build-module/comments-pagination/index.js.map +1 -1
  170. package/build-module/comments-pagination-next/index.js +7 -6
  171. package/build-module/comments-pagination-next/index.js.map +1 -1
  172. package/build-module/comments-pagination-previous/index.js +7 -6
  173. package/build-module/comments-pagination-previous/index.js.map +1 -1
  174. package/build-module/cover/deprecated.js +1 -1
  175. package/build-module/cover/deprecated.js.map +1 -1
  176. package/build-module/cover/edit/inspector-controls.js +1 -8
  177. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  178. package/build-module/details/edit.js +29 -20
  179. package/build-module/details/edit.js.map +1 -1
  180. package/build-module/details/index.js +12 -0
  181. package/build-module/details/index.js.map +1 -1
  182. package/build-module/details/save.js +2 -0
  183. package/build-module/details/save.js.map +1 -1
  184. package/build-module/embed/transforms.js +5 -2
  185. package/build-module/embed/transforms.js.map +1 -1
  186. package/build-module/embed/util.js +1 -1
  187. package/build-module/embed/util.js.map +1 -1
  188. package/build-module/file/edit.js +7 -4
  189. package/build-module/file/edit.js.map +1 -1
  190. package/build-module/file/transforms.js +1 -1
  191. package/build-module/file/transforms.js.map +1 -1
  192. package/build-module/file/utils/index.js +1 -1
  193. package/build-module/file/utils/index.js.map +1 -1
  194. package/build-module/form/variations.js +1 -1
  195. package/build-module/form/variations.js.map +1 -1
  196. package/build-module/form-input/edit.js +1 -1
  197. package/build-module/form-input/edit.js.map +1 -1
  198. package/build-module/gallery/edit.js +1 -1
  199. package/build-module/gallery/edit.js.map +1 -1
  200. package/build-module/gallery/transforms.js +2 -2
  201. package/build-module/gallery/transforms.js.map +1 -1
  202. package/build-module/gallery/use-get-new-images.js +1 -1
  203. package/build-module/gallery/use-get-new-images.js.map +1 -1
  204. package/build-module/group/edit.js +1 -8
  205. package/build-module/group/edit.js.map +1 -1
  206. package/build-module/home-link/edit.js +1 -2
  207. package/build-module/home-link/edit.js.map +1 -1
  208. package/build-module/latest-comments/edit.js +74 -27
  209. package/build-module/latest-comments/edit.js.map +1 -1
  210. package/build-module/latest-posts/constants.js +1 -0
  211. package/build-module/latest-posts/constants.js.map +1 -1
  212. package/build-module/latest-posts/edit.js +93 -40
  213. package/build-module/latest-posts/edit.js.map +1 -1
  214. package/build-module/list-item/edit.native.js +2 -2
  215. package/build-module/list-item/edit.native.js.map +1 -1
  216. package/build-module/list-item/index.js +1 -1
  217. package/build-module/media-text/edit.native.js +2 -2
  218. package/build-module/media-text/edit.native.js.map +1 -1
  219. package/build-module/media-text/media-container.native.js +4 -4
  220. package/build-module/media-text/media-container.native.js.map +1 -1
  221. package/build-module/navigation/edit/index.js +8 -4
  222. package/build-module/navigation/edit/index.js.map +1 -1
  223. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
  224. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  225. package/build-module/navigation/edit/use-generate-default-navigation-title.js +4 -4
  226. package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  227. package/build-module/navigation/index.js +15 -0
  228. package/build-module/navigation/index.js.map +1 -1
  229. package/build-module/navigation-link/edit.js +16 -21
  230. package/build-module/navigation-link/edit.js.map +1 -1
  231. package/build-module/navigation-link/link-ui.js +9 -18
  232. package/build-module/navigation-link/link-ui.js.map +1 -1
  233. package/build-module/navigation-submenu/edit.js +1 -1
  234. package/build-module/navigation-submenu/edit.js.map +1 -1
  235. package/build-module/navigation-submenu/index.js +7 -0
  236. package/build-module/navigation-submenu/index.js.map +1 -1
  237. package/build-module/page-list/edit.js +1 -1
  238. package/build-module/page-list/edit.js.map +1 -1
  239. package/build-module/page-list/index.js +11 -0
  240. package/build-module/page-list/index.js.map +1 -1
  241. package/build-module/paragraph/edit.js +5 -15
  242. package/build-module/paragraph/edit.js.map +1 -1
  243. package/build-module/pattern/index.js +1 -1
  244. package/build-module/post-author-name/edit.js +42 -13
  245. package/build-module/post-author-name/edit.js.map +1 -1
  246. package/build-module/post-comments-link/index.js +7 -1
  247. package/build-module/post-comments-link/index.js.map +1 -1
  248. package/build-module/post-content/index.js +1 -0
  249. package/build-module/post-content/index.js.map +1 -1
  250. package/build-module/post-date/edit.js +1 -1
  251. package/build-module/post-date/edit.js.map +1 -1
  252. package/build-module/post-featured-image/edit.js +0 -6
  253. package/build-module/post-featured-image/edit.js.map +1 -1
  254. package/build-module/post-featured-image/overlay-controls.js +2 -1
  255. package/build-module/post-featured-image/overlay-controls.js.map +1 -1
  256. package/build-module/post-navigation-link/variations.js +2 -2
  257. package/build-module/post-navigation-link/variations.js.map +1 -1
  258. package/build-module/post-terms/edit.js +1 -0
  259. package/build-module/post-terms/edit.js.map +1 -1
  260. package/build-module/post-time-to-read/index.js +1 -1
  261. package/build-module/query/edit/inspector-controls/author-control.js +1 -1
  262. package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
  263. package/build-module/query/edit/inspector-controls/index.js +111 -62
  264. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  265. package/build-module/query/edit/query-content.js +1 -5
  266. package/build-module/query/edit/query-content.js.map +1 -1
  267. package/build-module/query/utils.js +1 -1
  268. package/build-module/query/utils.js.map +1 -1
  269. package/build-module/query-no-results/index.js +1 -1
  270. package/build-module/query-pagination-numbers/edit.js +1 -1
  271. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  272. package/build-module/query-title/edit.js +41 -15
  273. package/build-module/query-title/edit.js.map +1 -1
  274. package/build-module/query-total/index.js +7 -1
  275. package/build-module/query-total/index.js.map +1 -1
  276. package/build-module/quote/transforms.js +1 -1
  277. package/build-module/quote/transforms.js.map +1 -1
  278. package/build-module/read-more/edit.js +26 -8
  279. package/build-module/read-more/edit.js.map +1 -1
  280. package/build-module/rss/edit.js +1 -0
  281. package/build-module/rss/edit.js.map +1 -1
  282. package/build-module/rss/index.js +6 -0
  283. package/build-module/rss/index.js.map +1 -1
  284. package/build-module/search/edit.js +69 -50
  285. package/build-module/search/edit.js.map +1 -1
  286. package/build-module/separator/edit.js +1 -3
  287. package/build-module/separator/edit.js.map +1 -1
  288. package/build-module/site-logo/edit.js +27 -36
  289. package/build-module/site-logo/edit.js.map +1 -1
  290. package/build-module/social-links/edit.js +2 -1
  291. package/build-module/social-links/edit.js.map +1 -1
  292. package/build-module/spacer/controls.js +13 -9
  293. package/build-module/spacer/controls.js.map +1 -1
  294. package/build-module/spacer/edit.js +24 -22
  295. package/build-module/spacer/edit.js.map +1 -1
  296. package/build-module/table-of-contents/edit.js +25 -9
  297. package/build-module/table-of-contents/edit.js.map +1 -1
  298. package/build-module/template-part/edit/advanced-controls.js +1 -8
  299. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  300. package/build-module/utils/messages.js +15 -0
  301. package/build-module/utils/messages.js.map +1 -0
  302. package/build-module/video/edit-common-settings.js +1 -1
  303. package/build-module/video/edit-common-settings.js.map +1 -1
  304. package/build-module/video/edit.native.js +3 -3
  305. package/build-module/video/edit.native.js.map +1 -1
  306. package/build-style/editor-rtl.css +12 -86
  307. package/build-style/editor.css +12 -86
  308. package/build-style/freeform/editor-rtl.css +2 -4
  309. package/build-style/freeform/editor.css +2 -4
  310. package/build-style/gallery/editor-rtl.css +0 -46
  311. package/build-style/gallery/editor.css +0 -46
  312. package/build-style/image/style-rtl.css +24 -10
  313. package/build-style/image/style.css +24 -10
  314. package/build-style/navigation/style-rtl.css +8 -6
  315. package/build-style/navigation/style.css +8 -6
  316. package/build-style/navigation-link/editor-rtl.css +3 -0
  317. package/build-style/navigation-link/editor.css +3 -0
  318. package/build-style/paragraph/editor-rtl.css +4 -0
  319. package/build-style/paragraph/editor.css +4 -0
  320. package/build-style/post-featured-image/editor-rtl.css +1 -1
  321. package/build-style/post-featured-image/editor.css +1 -1
  322. package/build-style/query/editor-rtl.css +0 -27
  323. package/build-style/query/editor.css +0 -27
  324. package/build-style/site-logo/editor-rtl.css +2 -8
  325. package/build-style/site-logo/editor.css +2 -8
  326. package/build-style/social-links/style-rtl.css +2 -5
  327. package/build-style/social-links/style.css +2 -5
  328. package/build-style/style-rtl.css +34 -21
  329. package/build-style/style.css +34 -21
  330. package/package.json +35 -35
  331. package/src/archives/edit.js +2 -2
  332. package/src/audio/test/transforms.native.js +4 -3
  333. package/src/button/edit.js +6 -2
  334. package/src/categories/edit.js +133 -45
  335. package/src/columns/edit.js +1 -1
  336. package/src/columns/edit.native.js +1 -1
  337. package/src/comment-template/edit.js +2 -2
  338. package/src/comments/edit/comments-inspector-controls.js +5 -8
  339. package/src/comments-pagination/block.json +5 -0
  340. package/src/comments-pagination-next/block.json +0 -5
  341. package/src/comments-pagination-next/index.js +6 -0
  342. package/src/comments-pagination-previous/block.json +0 -5
  343. package/src/comments-pagination-previous/index.js +6 -0
  344. package/src/cover/deprecated.js +1 -1
  345. package/src/cover/edit/inspector-controls.js +1 -21
  346. package/src/cover/test/__snapshots__/edit.native.js.snap +1 -1
  347. package/src/cover/test/edit.js +7 -7
  348. package/src/cover/test/edit.native.js +2 -2
  349. package/src/cover/test/transforms.native.js +9 -5
  350. package/src/details/block.json +12 -0
  351. package/src/details/edit.js +29 -24
  352. package/src/details/save.js +6 -2
  353. package/src/editor.scss +1 -1
  354. package/src/embed/test/index.js +1 -1
  355. package/src/embed/transforms.js +3 -1
  356. package/src/embed/util.js +1 -1
  357. package/src/file/edit.js +4 -3
  358. package/src/file/test/transforms.native.js +4 -3
  359. package/src/file/transforms.js +1 -1
  360. package/src/file/utils/index.js +1 -1
  361. package/src/form/variations.js +1 -1
  362. package/src/form-input/edit.js +1 -1
  363. package/src/freeform/editor.scss +4 -3
  364. package/src/gallery/edit.js +1 -1
  365. package/src/gallery/editor.scss +0 -54
  366. package/src/gallery/test/transforms.native.js +4 -3
  367. package/src/gallery/transforms.js +2 -2
  368. package/src/gallery/use-get-new-images.js +1 -1
  369. package/src/group/edit.js +1 -20
  370. package/src/home-link/edit.js +0 -6
  371. package/src/image/block.json +8 -1
  372. package/src/image/editor.scss +1 -1
  373. package/src/image/index.php +9 -13
  374. package/src/image/style.scss +17 -7
  375. package/src/image/test/edit.native.js +1 -1
  376. package/src/image/test/transforms.native.js +4 -3
  377. package/src/latest-comments/edit.js +93 -33
  378. package/src/latest-posts/constants.js +1 -0
  379. package/src/latest-posts/edit.js +119 -44
  380. package/src/list/test/edit.native.js +10 -10
  381. package/src/list-item/block.json +1 -1
  382. package/src/list-item/edit.native.js +2 -2
  383. package/src/media-text/edit.native.js +2 -2
  384. package/src/media-text/media-container.native.js +4 -4
  385. package/src/media-text/test/transforms.native.js +9 -5
  386. package/src/navigation/edit/index.js +4 -0
  387. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
  388. package/src/navigation/edit/use-generate-default-navigation-title.js +4 -4
  389. package/src/navigation/index.js +20 -0
  390. package/src/navigation/style.scss +7 -4
  391. package/src/navigation-link/edit.js +26 -30
  392. package/src/navigation-link/editor.scss +27 -18
  393. package/src/navigation-link/link-ui.js +7 -13
  394. package/src/navigation-submenu/edit.js +1 -1
  395. package/src/navigation-submenu/index.js +7 -0
  396. package/src/navigation-submenu/index.php +21 -4
  397. package/src/page-list/block.json +11 -0
  398. package/src/page-list/edit.js +52 -50
  399. package/src/paragraph/edit.js +3 -18
  400. package/src/paragraph/editor.scss +7 -0
  401. package/src/paragraph/style.scss +1 -1
  402. package/src/pattern/block.json +1 -1
  403. package/src/post-author-name/edit.js +53 -15
  404. package/src/post-comments-link/block.json +7 -1
  405. package/src/post-content/block.json +2 -1
  406. package/src/post-date/edit.js +1 -3
  407. package/src/post-featured-image/edit.js +2 -15
  408. package/src/post-featured-image/editor.scss +2 -2
  409. package/src/post-featured-image/overlay-controls.js +1 -0
  410. package/src/post-navigation-link/variations.js +2 -2
  411. package/src/post-terms/edit.js +1 -0
  412. package/src/post-time-to-read/block.json +1 -1
  413. package/src/query/edit/inspector-controls/author-control.js +1 -1
  414. package/src/query/edit/inspector-controls/index.js +148 -88
  415. package/src/query/edit/query-content.js +1 -11
  416. package/src/query/editor.scss +0 -31
  417. package/src/query/utils.js +1 -1
  418. package/src/query-no-results/block.json +1 -1
  419. package/src/query-pagination-numbers/edit.js +1 -1
  420. package/src/query-title/edit.js +61 -19
  421. package/src/query-total/block.json +7 -1
  422. package/src/quote/transforms.js +1 -1
  423. package/src/read-more/edit.js +35 -11
  424. package/src/rss/block.json +6 -0
  425. package/src/rss/edit.js +1 -0
  426. package/src/search/edit.js +100 -71
  427. package/src/separator/deprecated.scss +1 -1
  428. package/src/separator/edit.js +1 -6
  429. package/src/site-logo/edit.js +34 -47
  430. package/src/site-logo/editor.scss +3 -6
  431. package/src/social-link/index.php +2 -2
  432. package/src/social-links/edit.js +1 -0
  433. package/src/social-links/style.scss +3 -3
  434. package/src/spacer/controls.js +10 -9
  435. package/src/spacer/edit.js +25 -23
  436. package/src/table-of-contents/edit.js +38 -19
  437. package/src/template-part/edit/advanced-controls.js +1 -21
  438. package/src/utils/messages.js +31 -0
  439. package/src/video/edit-common-settings.js +1 -1
  440. package/src/video/edit.native.js +3 -3
  441. package/src/video/test/transforms.native.js +4 -3
@@ -10,7 +10,7 @@ import { useBlockProps, getCustomValueFromPreset, getSpacingPresetCssVar, store
10
10
  import { ResizableBox } from '@wordpress/components';
11
11
  import { useState, useEffect } from '@wordpress/element';
12
12
  import { View } from '@wordpress/primitives';
13
- import { useSelect } from '@wordpress/data';
13
+ import { useSelect, useDispatch } from '@wordpress/data';
14
14
 
15
15
  /**
16
16
  * Internal dependencies
@@ -116,6 +116,9 @@ const SpacerEdit = ({
116
116
  const [temporaryWidth, setTemporaryWidth] = useState(null);
117
117
  const onResizeStart = () => toggleSelection(false);
118
118
  const onResizeStop = () => toggleSelection(true);
119
+ const {
120
+ __unstableMarkNextChangeAsNotPersistent
121
+ } = useDispatch(blockEditorStore);
119
122
  const handleOnVerticalResizeStop = newHeight => {
120
123
  onResizeStop();
121
124
  if (isFlexLayout) {
@@ -224,12 +227,19 @@ const SpacerEdit = ({
224
227
  });
225
228
  };
226
229
  useEffect(() => {
227
- if (isFlexLayout && selfStretch !== 'fill' && selfStretch !== 'fit' && !flexSize) {
230
+ // To avoid interfering with undo/redo operations any changes in this
231
+ // effect must not make history and should be preceded by
232
+ // `__unstableMarkNextChangeAsNotPersistent()`.
233
+ const setAttributesCovertly = nextAttributes => {
234
+ __unstableMarkNextChangeAsNotPersistent();
235
+ setAttributes(nextAttributes);
236
+ };
237
+ if (isFlexLayout && selfStretch !== 'fill' && selfStretch !== 'fit' && flexSize === undefined) {
228
238
  if (inheritedOrientation === 'horizontal') {
229
239
  // If spacer is moving from a vertical container to a horizontal container,
230
240
  // it might not have width but have height instead.
231
241
  const newSize = getCustomValueFromPreset(width, spacingSizes) || getCustomValueFromPreset(height, spacingSizes) || '100px';
232
- setAttributes({
242
+ setAttributesCovertly({
233
243
  width: '0px',
234
244
  style: {
235
245
  ...blockStyle,
@@ -242,7 +252,7 @@ const SpacerEdit = ({
242
252
  });
243
253
  } else {
244
254
  const newSize = getCustomValueFromPreset(height, spacingSizes) || getCustomValueFromPreset(width, spacingSizes) || '100px';
245
- setAttributes({
255
+ setAttributesCovertly({
246
256
  height: '0px',
247
257
  style: {
248
258
  ...blockStyle,
@@ -255,26 +265,18 @@ const SpacerEdit = ({
255
265
  });
256
266
  }
257
267
  } else if (isFlexLayout && (selfStretch === 'fill' || selfStretch === 'fit')) {
258
- if (inheritedOrientation === 'horizontal') {
259
- setAttributes({
260
- width: undefined
261
- });
262
- } else {
263
- setAttributes({
264
- height: undefined
265
- });
266
- }
268
+ setAttributesCovertly(inheritedOrientation === 'horizontal' ? {
269
+ width: undefined
270
+ } : {
271
+ height: undefined
272
+ });
267
273
  } else if (!isFlexLayout && (selfStretch || flexSize)) {
268
- if (inheritedOrientation === 'horizontal') {
269
- setAttributes({
274
+ setAttributesCovertly({
275
+ ...(inheritedOrientation === 'horizontal' ? {
270
276
  width: flexSize
271
- });
272
- } else {
273
- setAttributes({
277
+ } : {
274
278
  height: flexSize
275
- });
276
- }
277
- setAttributes({
279
+ }),
278
280
  style: {
279
281
  ...blockStyle,
280
282
  layout: {
@@ -285,7 +287,7 @@ const SpacerEdit = ({
285
287
  }
286
288
  });
287
289
  }
288
- }, [blockStyle, flexSize, height, inheritedOrientation, isFlexLayout, layout, selfStretch, setAttributes, spacingSizes, width]);
290
+ }, [blockStyle, flexSize, height, inheritedOrientation, isFlexLayout, layout, selfStretch, setAttributes, spacingSizes, width, __unstableMarkNextChangeAsNotPersistent]);
289
291
  return /*#__PURE__*/_jsxs(_Fragment, {
290
292
  children: [/*#__PURE__*/_jsx(View, {
291
293
  ...useBlockProps({
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","useBlockProps","getCustomValueFromPreset","getSpacingPresetCssVar","store","blockEditorStore","privateApis","blockEditorPrivateApis","ResizableBox","useState","useEffect","View","useSelect","unlock","SpacerControls","MIN_SPACER_SIZE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useSpacingSizes","ResizableSpacer","orientation","onResizeStart","onResize","onResizeStop","isSelected","isResizing","setIsResizing","props","getCurrentSize","elt","clientWidth","clientHeight","getNextVal","className","_event","_direction","nextVal","__experimentalShowTooltip","__experimentalTooltipProps","axis","position","isVisible","showHandle","SpacerEdit","attributes","setAttributes","toggleSelection","context","__unstableParentLayout","parentLayout","disableCustomSpacingSizes","select","editorSettings","getSettings","parentOrientation","type","default","defaultType","isFlexLayout","inheritedOrientation","height","width","style","blockStyle","layout","selfStretch","flexSize","spacingSizes","temporaryHeight","setTemporaryHeight","temporaryWidth","setTemporaryWidth","handleOnVerticalResizeStop","newHeight","handleOnHorizontalResizeStop","newWidth","getHeightForVerticalBlocks","undefined","getWidthForHorizontalBlocks","sizeConditionalOnOrientation","minWidth","flexBasis","flexGrow","resizableBoxWithOrientation","blockOrientation","enable","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","children","minHeight","newSize"],"sources":["@wordpress/block-library/src/spacer/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tgetCustomValueFromPreset,\n\tgetSpacingPresetCssVar,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { ResizableBox } from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport { View } from '@wordpress/primitives';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport SpacerControls from './controls';\nimport { MIN_SPACER_SIZE } from './constants';\n\nconst { useSpacingSizes } = unlock( blockEditorPrivateApis );\n\nconst ResizableSpacer = ( {\n\torientation,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\tisSelected,\n\tisResizing,\n\tsetIsResizing,\n\t...props\n} ) => {\n\tconst getCurrentSize = ( elt ) => {\n\t\treturn orientation === 'horizontal'\n\t\t\t? elt.clientWidth\n\t\t\t: elt.clientHeight;\n\t};\n\n\tconst getNextVal = ( elt ) => {\n\t\treturn `${ getCurrentSize( elt ) }px`;\n\t};\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ clsx( 'block-library-spacer__resize-container', {\n\t\t\t\t'resize-horizontal': orientation === 'horizontal',\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t\t'is-selected': isSelected,\n\t\t\t} ) }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getNextVal( elt );\n\t\t\t\tonResizeStart( nextVal );\n\t\t\t\tonResize( nextVal );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( getNextVal( elt ) );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getCurrentSize( elt );\n\t\t\t\tonResizeStop( `${ nextVal }px` );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t__experimentalShowTooltip\n\t\t\t__experimentalTooltipProps={ {\n\t\t\t\taxis: orientation === 'horizontal' ? 'x' : 'y',\n\t\t\t\tposition: 'corner',\n\t\t\t\tisVisible: isResizing,\n\t\t\t} }\n\t\t\tshowHandle={ isSelected }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\n\nconst SpacerEdit = ( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\ttoggleSelection,\n\tcontext,\n\t__unstableParentLayout: parentLayout,\n\tclassName,\n} ) => {\n\tconst disableCustomSpacingSizes = useSelect( ( select ) => {\n\t\tconst editorSettings = select( blockEditorStore ).getSettings();\n\t\treturn editorSettings?.disableCustomSpacingSizes;\n\t} );\n\tconst { orientation } = context;\n\tconst {\n\t\torientation: parentOrientation,\n\t\ttype,\n\t\tdefault: { type: defaultType } = {},\n\t} = parentLayout || {};\n\t// Check if the spacer is inside a flex container.\n\tconst isFlexLayout =\n\t\ttype === 'flex' || ( ! type && defaultType === 'flex' );\n\t// If the spacer is inside a flex container, it should either inherit the orientation\n\t// of the parent or use the flex default orientation.\n\tconst inheritedOrientation =\n\t\t! parentOrientation && isFlexLayout\n\t\t\t? 'horizontal'\n\t\t\t: parentOrientation || orientation;\n\tconst { height, width, style: blockStyle = {} } = attributes;\n\n\tconst { layout = {} } = blockStyle;\n\tconst { selfStretch, flexSize } = layout;\n\n\tconst spacingSizes = useSpacingSizes();\n\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst [ temporaryHeight, setTemporaryHeight ] = useState( null );\n\tconst [ temporaryWidth, setTemporaryWidth ] = useState( null );\n\n\tconst onResizeStart = () => toggleSelection( false );\n\tconst onResizeStop = () => toggleSelection( true );\n\n\tconst handleOnVerticalResizeStop = ( newHeight ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newHeight,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { height: newHeight } );\n\t\tsetTemporaryHeight( null );\n\t};\n\n\tconst handleOnHorizontalResizeStop = ( newWidth ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newWidth,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { width: newWidth } );\n\t\tsetTemporaryWidth( null );\n\t};\n\n\tconst getHeightForVerticalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryHeight || getSpacingPresetCssVar( height ) || undefined;\n\t};\n\n\tconst getWidthForHorizontalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryWidth || getSpacingPresetCssVar( width ) || undefined;\n\t};\n\n\tconst sizeConditionalOnOrientation =\n\t\tinheritedOrientation === 'horizontal'\n\t\t\t? temporaryWidth || flexSize\n\t\t\t: temporaryHeight || flexSize;\n\n\tconst style = {\n\t\theight:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? 24\n\t\t\t\t: getHeightForVerticalBlocks(),\n\t\twidth:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? getWidthForHorizontalBlocks()\n\t\t\t\t: undefined,\n\t\t// In vertical flex containers, the spacer shrinks to nothing without a minimum width.\n\t\tminWidth:\n\t\t\tinheritedOrientation === 'vertical' && isFlexLayout\n\t\t\t\t? 48\n\t\t\t\t: undefined,\n\t\t// Add flex-basis so temporary sizes are respected.\n\t\tflexBasis: isFlexLayout ? sizeConditionalOnOrientation : undefined,\n\t\t// Remove flex-grow when resizing.\n\t\tflexGrow: isFlexLayout && isResizing ? 0 : undefined,\n\t};\n\n\tconst resizableBoxWithOrientation = ( blockOrientation ) => {\n\t\tif ( blockOrientation === 'horizontal' ) {\n\t\t\treturn (\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminWidth={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: true,\n\t\t\t\t\t\tbottom: false,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryWidth }\n\t\t\t\t\tonResizeStop={ handleOnHorizontalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminHeight={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: false,\n\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryHeight }\n\t\t\t\t\tonResizeStop={ handleOnVerticalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisFlexLayout &&\n\t\t\tselfStretch !== 'fill' &&\n\t\t\tselfStretch !== 'fit' &&\n\t\t\t! flexSize\n\t\t) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\t// If spacer is moving from a vertical container to a horizontal container,\n\t\t\t\t// it might not have width but have height instead.\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t} else if (\n\t\t\tisFlexLayout &&\n\t\t\t( selfStretch === 'fill' || selfStretch === 'fit' )\n\t\t) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t} else if ( ! isFlexLayout && ( selfStretch || flexSize ) ) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: flexSize,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: flexSize,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: undefined,\n\t\t\t\t\t\tselfStretch: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [\n\t\tblockStyle,\n\t\tflexSize,\n\t\theight,\n\t\tinheritedOrientation,\n\t\tisFlexLayout,\n\t\tlayout,\n\t\tselfStretch,\n\t\tsetAttributes,\n\t\tspacingSizes,\n\t\twidth,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<View\n\t\t\t\t{ ...useBlockProps( {\n\t\t\t\t\tstyle,\n\t\t\t\t\tclassName: clsx( className, {\n\t\t\t\t\t\t'custom-sizes-disabled': disableCustomSpacingSizes,\n\t\t\t\t\t} ),\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ resizableBoxWithOrientation( inheritedOrientation ) }\n\t\t\t</View>\n\t\t\t{ ! isFlexLayout && (\n\t\t\t\t<SpacerControls\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\theight={ temporaryHeight || height }\n\t\t\t\t\twidth={ temporaryWidth || width }\n\t\t\t\t\torientation={ inheritedOrientation }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default SpacerEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","useBlockProps","getCustomValueFromPreset","getSpacingPresetCssVar","store","blockEditorStore","privateApis","blockEditorPrivateApis","ResizableBox","useState","useEffect","View","useSelect","useDispatch","unlock","SpacerControls","MIN_SPACER_SIZE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useSpacingSizes","ResizableSpacer","orientation","onResizeStart","onResize","onResizeStop","isSelected","isResizing","setIsResizing","props","getCurrentSize","elt","clientWidth","clientHeight","getNextVal","className","_event","_direction","nextVal","__experimentalShowTooltip","__experimentalTooltipProps","axis","position","isVisible","showHandle","SpacerEdit","attributes","setAttributes","toggleSelection","context","__unstableParentLayout","parentLayout","disableCustomSpacingSizes","select","editorSettings","getSettings","parentOrientation","type","default","defaultType","isFlexLayout","inheritedOrientation","height","width","style","blockStyle","layout","selfStretch","flexSize","spacingSizes","temporaryHeight","setTemporaryHeight","temporaryWidth","setTemporaryWidth","__unstableMarkNextChangeAsNotPersistent","handleOnVerticalResizeStop","newHeight","handleOnHorizontalResizeStop","newWidth","getHeightForVerticalBlocks","undefined","getWidthForHorizontalBlocks","sizeConditionalOnOrientation","minWidth","flexBasis","flexGrow","resizableBoxWithOrientation","blockOrientation","enable","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","children","minHeight","setAttributesCovertly","nextAttributes","newSize"],"sources":["@wordpress/block-library/src/spacer/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tgetCustomValueFromPreset,\n\tgetSpacingPresetCssVar,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { ResizableBox } from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport { View } from '@wordpress/primitives';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport SpacerControls from './controls';\nimport { MIN_SPACER_SIZE } from './constants';\n\nconst { useSpacingSizes } = unlock( blockEditorPrivateApis );\n\nconst ResizableSpacer = ( {\n\torientation,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\tisSelected,\n\tisResizing,\n\tsetIsResizing,\n\t...props\n} ) => {\n\tconst getCurrentSize = ( elt ) => {\n\t\treturn orientation === 'horizontal'\n\t\t\t? elt.clientWidth\n\t\t\t: elt.clientHeight;\n\t};\n\n\tconst getNextVal = ( elt ) => {\n\t\treturn `${ getCurrentSize( elt ) }px`;\n\t};\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ clsx( 'block-library-spacer__resize-container', {\n\t\t\t\t'resize-horizontal': orientation === 'horizontal',\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t\t'is-selected': isSelected,\n\t\t\t} ) }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getNextVal( elt );\n\t\t\t\tonResizeStart( nextVal );\n\t\t\t\tonResize( nextVal );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( getNextVal( elt ) );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getCurrentSize( elt );\n\t\t\t\tonResizeStop( `${ nextVal }px` );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t__experimentalShowTooltip\n\t\t\t__experimentalTooltipProps={ {\n\t\t\t\taxis: orientation === 'horizontal' ? 'x' : 'y',\n\t\t\t\tposition: 'corner',\n\t\t\t\tisVisible: isResizing,\n\t\t\t} }\n\t\t\tshowHandle={ isSelected }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\n\nconst SpacerEdit = ( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\ttoggleSelection,\n\tcontext,\n\t__unstableParentLayout: parentLayout,\n\tclassName,\n} ) => {\n\tconst disableCustomSpacingSizes = useSelect( ( select ) => {\n\t\tconst editorSettings = select( blockEditorStore ).getSettings();\n\t\treturn editorSettings?.disableCustomSpacingSizes;\n\t} );\n\tconst { orientation } = context;\n\tconst {\n\t\torientation: parentOrientation,\n\t\ttype,\n\t\tdefault: { type: defaultType } = {},\n\t} = parentLayout || {};\n\t// Check if the spacer is inside a flex container.\n\tconst isFlexLayout =\n\t\ttype === 'flex' || ( ! type && defaultType === 'flex' );\n\t// If the spacer is inside a flex container, it should either inherit the orientation\n\t// of the parent or use the flex default orientation.\n\tconst inheritedOrientation =\n\t\t! parentOrientation && isFlexLayout\n\t\t\t? 'horizontal'\n\t\t\t: parentOrientation || orientation;\n\tconst { height, width, style: blockStyle = {} } = attributes;\n\n\tconst { layout = {} } = blockStyle;\n\tconst { selfStretch, flexSize } = layout;\n\n\tconst spacingSizes = useSpacingSizes();\n\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst [ temporaryHeight, setTemporaryHeight ] = useState( null );\n\tconst [ temporaryWidth, setTemporaryWidth ] = useState( null );\n\n\tconst onResizeStart = () => toggleSelection( false );\n\tconst onResizeStop = () => toggleSelection( true );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst handleOnVerticalResizeStop = ( newHeight ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newHeight,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { height: newHeight } );\n\t\tsetTemporaryHeight( null );\n\t};\n\n\tconst handleOnHorizontalResizeStop = ( newWidth ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newWidth,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { width: newWidth } );\n\t\tsetTemporaryWidth( null );\n\t};\n\n\tconst getHeightForVerticalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryHeight || getSpacingPresetCssVar( height ) || undefined;\n\t};\n\n\tconst getWidthForHorizontalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryWidth || getSpacingPresetCssVar( width ) || undefined;\n\t};\n\n\tconst sizeConditionalOnOrientation =\n\t\tinheritedOrientation === 'horizontal'\n\t\t\t? temporaryWidth || flexSize\n\t\t\t: temporaryHeight || flexSize;\n\n\tconst style = {\n\t\theight:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? 24\n\t\t\t\t: getHeightForVerticalBlocks(),\n\t\twidth:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? getWidthForHorizontalBlocks()\n\t\t\t\t: undefined,\n\t\t// In vertical flex containers, the spacer shrinks to nothing without a minimum width.\n\t\tminWidth:\n\t\t\tinheritedOrientation === 'vertical' && isFlexLayout\n\t\t\t\t? 48\n\t\t\t\t: undefined,\n\t\t// Add flex-basis so temporary sizes are respected.\n\t\tflexBasis: isFlexLayout ? sizeConditionalOnOrientation : undefined,\n\t\t// Remove flex-grow when resizing.\n\t\tflexGrow: isFlexLayout && isResizing ? 0 : undefined,\n\t};\n\n\tconst resizableBoxWithOrientation = ( blockOrientation ) => {\n\t\tif ( blockOrientation === 'horizontal' ) {\n\t\t\treturn (\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminWidth={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: true,\n\t\t\t\t\t\tbottom: false,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryWidth }\n\t\t\t\t\tonResizeStop={ handleOnHorizontalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminHeight={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: false,\n\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryHeight }\n\t\t\t\t\tonResizeStop={ handleOnVerticalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\t// To avoid interfering with undo/redo operations any changes in this\n\t\t// effect must not make history and should be preceded by\n\t\t// `__unstableMarkNextChangeAsNotPersistent()`.\n\t\tconst setAttributesCovertly = ( nextAttributes ) => {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( nextAttributes );\n\t\t};\n\n\t\tif (\n\t\t\tisFlexLayout &&\n\t\t\tselfStretch !== 'fill' &&\n\t\t\tselfStretch !== 'fit' &&\n\t\t\tflexSize === undefined\n\t\t) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\t// If spacer is moving from a vertical container to a horizontal container,\n\t\t\t\t// it might not have width but have height instead.\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributesCovertly( {\n\t\t\t\t\twidth: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributesCovertly( {\n\t\t\t\t\theight: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t} else if (\n\t\t\tisFlexLayout &&\n\t\t\t( selfStretch === 'fill' || selfStretch === 'fit' )\n\t\t) {\n\t\t\tsetAttributesCovertly(\n\t\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t\t? { width: undefined }\n\t\t\t\t\t: { height: undefined }\n\t\t\t);\n\t\t} else if ( ! isFlexLayout && ( selfStretch || flexSize ) ) {\n\t\t\tsetAttributesCovertly( {\n\t\t\t\t...( inheritedOrientation === 'horizontal'\n\t\t\t\t\t? { width: flexSize }\n\t\t\t\t\t: { height: flexSize } ),\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: undefined,\n\t\t\t\t\t\tselfStretch: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [\n\t\tblockStyle,\n\t\tflexSize,\n\t\theight,\n\t\tinheritedOrientation,\n\t\tisFlexLayout,\n\t\tlayout,\n\t\tselfStretch,\n\t\tsetAttributes,\n\t\tspacingSizes,\n\t\twidth,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<View\n\t\t\t\t{ ...useBlockProps( {\n\t\t\t\t\tstyle,\n\t\t\t\t\tclassName: clsx( className, {\n\t\t\t\t\t\t'custom-sizes-disabled': disableCustomSpacingSizes,\n\t\t\t\t\t} ),\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ resizableBoxWithOrientation( inheritedOrientation ) }\n\t\t\t</View>\n\t\t\t{ ! isFlexLayout && (\n\t\t\t\t<SpacerControls\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\theight={ temporaryHeight || height }\n\t\t\t\t\twidth={ temporaryWidth || width }\n\t\t\t\t\torientation={ inheritedOrientation }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default SpacerEdit;\n"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { BlockControls, BlockIcon, InspectorControls, store as blockEditorStore, useBlockProps } from '@wordpress/block-editor';
5
5
  import { createBlock } from '@wordpress/blocks';
6
- import { PanelBody, Placeholder, ToggleControl, ToolbarButton, ToolbarGroup } from '@wordpress/components';
6
+ import { Placeholder, ToggleControl, ToolbarButton, ToolbarGroup, __experimentalToolsPanel as ToolsPanel, __experimentalToolsPanelItem as ToolsPanelItem } from '@wordpress/components';
7
7
  import { useDispatch, useSelect } from '@wordpress/data';
8
8
  import { renderToString } from '@wordpress/element';
9
9
  import { __ } from '@wordpress/i18n';
@@ -17,6 +17,7 @@ import { tableOfContents as icon } from '@wordpress/icons';
17
17
  import TableOfContentsList from './list';
18
18
  import { linearToNestedHeadingList } from './utils';
19
19
  import { useObserveHeadings } from './hooks';
20
+ import { useToolsPanelDropdownMenuProps } from '../utils/hooks';
20
21
 
21
22
  /** @typedef {import('./utils').HeadingData} HeadingData */
22
23
 
@@ -67,6 +68,7 @@ export default function TableOfContentsEdit({
67
68
  const {
68
69
  replaceBlocks
69
70
  } = useDispatch(blockEditorStore);
71
+ const dropdownMenuProps = useToolsPanelDropdownMenuProps();
70
72
  const headingTree = linearToNestedHeadingList(headings);
71
73
  const toolbarControls = canInsertList && /*#__PURE__*/_jsx(BlockControls, {
72
74
  children: /*#__PURE__*/_jsx(ToolbarGroup, {
@@ -82,16 +84,30 @@ export default function TableOfContentsEdit({
82
84
  })
83
85
  });
84
86
  const inspectorControls = /*#__PURE__*/_jsx(InspectorControls, {
85
- children: /*#__PURE__*/_jsx(PanelBody, {
86
- title: __('Settings'),
87
- children: /*#__PURE__*/_jsx(ToggleControl, {
88
- __nextHasNoMarginBottom: true,
87
+ children: /*#__PURE__*/_jsx(ToolsPanel, {
88
+ label: __('Settings'),
89
+ resetAll: () => {
90
+ setAttributes({
91
+ onlyIncludeCurrentPage: false
92
+ });
93
+ },
94
+ dropdownMenuProps: dropdownMenuProps,
95
+ children: /*#__PURE__*/_jsx(ToolsPanelItem, {
96
+ hasValue: () => !!onlyIncludeCurrentPage,
89
97
  label: __('Only include current page'),
90
- checked: onlyIncludeCurrentPage,
91
- onChange: value => setAttributes({
92
- onlyIncludeCurrentPage: value
98
+ onDeselect: () => setAttributes({
99
+ onlyIncludeCurrentPage: false
93
100
  }),
94
- help: onlyIncludeCurrentPage ? __('Only including headings from the current page (if the post is paginated).') : __('Include headings from all pages (if the post is paginated).')
101
+ isShownByDefault: true,
102
+ children: /*#__PURE__*/_jsx(ToggleControl, {
103
+ __nextHasNoMarginBottom: true,
104
+ label: __('Only include current page'),
105
+ checked: onlyIncludeCurrentPage,
106
+ onChange: value => setAttributes({
107
+ onlyIncludeCurrentPage: value
108
+ }),
109
+ help: onlyIncludeCurrentPage ? __('Only including headings from the current page (if the post is paginated).') : __('Include headings from all pages (if the post is paginated).')
110
+ })
95
111
  })
96
112
  })
97
113
  });
@@ -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","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 } = useDispatch( noticeStore );\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: `block-library/core/table-of-contents/redirection-prevented/${ instanceId }`,\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'Include headings from all pages (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","Placeholder","ToggleControl","ToolbarButton","ToolbarGroup","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","useDispatch","useSelect","renderToString","__","useInstanceId","noticeStore","tableOfContents","icon","TableOfContentsList","linearToNestedHeadingList","useObserveHeadings","useToolsPanelDropdownMenuProps","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TableOfContentsEdit","attributes","headings","onlyIncludeCurrentPage","clientId","setAttributes","blockProps","instanceId","createWarningNotice","showRedirectionPreventedNotice","event","preventDefault","id","type","canInsertList","select","getBlockRootClientId","canInsertBlockType","rootClientId","replaceBlocks","dropdownMenuProps","headingTree","toolbarControls","children","onClick","ordered","values","nestedHeadingList","inspectorControls","label","resetAll","hasValue","onDeselect","isShownByDefault","__nextHasNoMarginBottom","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\tPlaceholder,\n\tToggleControl,\n\tToolbarButton,\n\tToolbarGroup,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\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';\nimport { useToolsPanelDropdownMenuProps } from '../utils/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 } = useDispatch( noticeStore );\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: `block-library/core/table-of-contents/redirection-prevented/${ instanceId }`,\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\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\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<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ () => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tonlyIncludeCurrentPage: false,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t>\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! onlyIncludeCurrentPage }\n\t\t\t\t\tlabel={ __( 'Only include current page' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( { onlyIncludeCurrentPage: false } )\n\t\t\t\t\t}\n\t\t\t\t\tisShownByDefault\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={ __( 'Only include current page' ) }\n\t\t\t\t\t\tchecked={ onlyIncludeCurrentPage }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { onlyIncludeCurrentPage: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tonlyIncludeCurrentPage\n\t\t\t\t\t\t\t\t? __(\n\t\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\t )\n\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t'Include headings from all pages (if the post is paginated).'\n\t\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</ToolsPanelItem>\n\t\t\t</ToolsPanel>\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":[]}
@@ -11,15 +11,8 @@ import { useSelect } from '@wordpress/data';
11
11
  * Internal dependencies
12
12
  */
13
13
  import { TemplatePartImportControls } from './import-controls';
14
+ import { htmlElementMessages } from '../../utils/messages';
14
15
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
15
- const htmlElementMessages = {
16
- header: __('The <header> element should represent introductory content, typically a group of introductory or navigational aids.'),
17
- main: __('The <main> element should be used for the primary content of your document only.'),
18
- section: __("The <section> element should represent a standalone portion of the document that can't be better represented by another element."),
19
- article: __('The <article> element should represent a self-contained, syndicatable portion of the document.'),
20
- aside: __("The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content."),
21
- footer: __('The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).')
22
- };
23
16
  export function TemplatePartAdvancedControls({
24
17
  tagName,
25
18
  setAttributes,
@@ -1 +1 @@
1
- {"version":3,"names":["useEntityProp","store","coreStore","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","defaultTemplatePartAreas","select","getEntityRecord","default_template_part_areas","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, store as coreStore } 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 defaultTemplatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecord( 'root', '__unstableBase' )\n\t\t\t\t?.default_template_part_areas || [],\n\t\t[]\n\t);\n\n\tconst areaOptions = defaultTemplatePartAreas.map(\n\t\t( { label, area: _area } ) => ( {\n\t\t\tlabel,\n\t\t\tvalue: _area,\n\t\t} )\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","store","coreStore","SelectControl","TextControl","sprintf","__","useSelect","TemplatePartImportControls","htmlElementMessages","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","title","setTitle","defaultTemplatePartAreas","select","getEntityRecord","default_template_part_areas","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, store as coreStore } 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';\nimport { htmlElementMessages } from '../../utils/messages';\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 defaultTemplatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecord( 'root', '__unstableBase' )\n\t\t\t\t?.default_template_part_areas || [],\n\t\t[]\n\t);\n\n\tconst areaOptions = defaultTemplatePartAreas.map(\n\t\t( { label, area: _area } ) => ( {\n\t\t\tlabel,\n\t\t\tvalue: _area,\n\t\t} )\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":[]}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ export const htmlElementMessages = {
6
+ article: __('The <article> element should represent a self-contained, syndicatable portion of the document.'),
7
+ aside: __("The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content."),
8
+ div: __('The <div> element should only be used if the block is a design element with no semantic meaning.'),
9
+ footer: __('The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'),
10
+ header: __('The <header> element should represent introductory content, typically a group of introductory or navigational aids.'),
11
+ main: __('The <main> element should be used for the primary content of your document only.'),
12
+ nav: __('The <nav> element should be used to identify groups of links that are intended to be used for website or page content navigation.'),
13
+ section: __("The <section> element should represent a standalone portion of the document that can't be better represented by another element.")
14
+ };
15
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__","htmlElementMessages","article","aside","div","footer","header","main","nav","section"],"sources":["@wordpress/block-library/src/utils/messages.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const htmlElementMessages = {\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\tdiv: __(\n\t\t'The <div> element should only be used if the block is a design element with no semantic meaning.'\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\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\tnav: __(\n\t\t'The <nav> element should be used to identify groups of links that are intended to be used for website or page content navigation.'\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};\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AAEpC,OAAO,MAAMC,mBAAmB,GAAG;EAClCC,OAAO,EAAEF,EAAE,CACV,gGACD,CAAC;EACDG,KAAK,EAAEH,EAAE,CACR,uIACD,CAAC;EACDI,GAAG,EAAEJ,EAAE,CACN,kGACD,CAAC;EACDK,MAAM,EAAEL,EAAE,CACT,8HACD,CAAC;EACDM,MAAM,EAAEN,EAAE,CACT,qHACD,CAAC;EACDO,IAAI,EAAEP,EAAE,CACP,kFACD,CAAC;EACDQ,GAAG,EAAER,EAAE,CACN,mIACD,CAAC;EACDS,OAAO,EAAET,EAAE,CACV,kIACD;AACD,CAAC","ignoreList":[]}
@@ -131,7 +131,7 @@ const VideoSettings = ({
131
131
  /* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */,
132
132
  label: __('Play inline'),
133
133
  onChange: toggleFactory.playsInline,
134
- checked: playsInline,
134
+ checked: !!playsInline,
135
135
  help: __('When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.')
136
136
  })
137
137
  }), /*#__PURE__*/_jsx(ToolsPanelItem, {
@@ -1 +1 @@
1
- {"version":3,"names":["__","_x","ToggleControl","SelectControl","__experimentalToolsPanelItem","ToolsPanelItem","useMemo","useCallback","Platform","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload","children","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","onChange","help","__next40pxDefaultSize","hideCancelButton"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { autoplay: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! loop }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { loop: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! muted }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\t\tchecked={ !! muted }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => ! controls }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { controls: true } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\t\tchecked={ !! controls }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! playsInline }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { playsInline: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */\n\t\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\t\tchecked={ playsInline }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => preload !== 'metadata' }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { preload: 'metadata' } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\tvalue={ preload }\n\t\t\t\t\tonChange={ onChangePreload }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","_x","ToggleControl","SelectControl","__experimentalToolsPanelItem","ToolsPanelItem","useMemo","useCallback","Platform","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload","children","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","onChange","help","__next40pxDefaultSize","hideCancelButton"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { autoplay: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! loop }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { loop: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! muted }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\t\tchecked={ !! muted }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => ! controls }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { controls: true } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\t\tchecked={ !! controls }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! playsInline }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { playsInline: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */\n\t\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\t\tchecked={ !! playsInline }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => preload !== 'metadata' }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { preload: 'metadata' } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\tvalue={ preload }\n\t\t\t\t\tonChange={ onChangePreload }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"],"mappings":"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","ignoreList":[]}
@@ -45,7 +45,7 @@ class VideoEdit extends Component {
45
45
  this.finishMediaUploadWithFailure = this.finishMediaUploadWithFailure.bind(this);
46
46
  this.updateMediaProgress = this.updateMediaProgress.bind(this);
47
47
  this.onVideoPressed = this.onVideoPressed.bind(this);
48
- this.onVideoContanerLayout = this.onVideoContanerLayout.bind(this);
48
+ this.onVideoContainerLayout = this.onVideoContainerLayout.bind(this);
49
49
  this.onFocusCaption = this.onFocusCaption.bind(this);
50
50
  }
51
51
  componentDidMount() {
@@ -177,7 +177,7 @@ class VideoEdit extends Component {
177
177
  createErrorNotice(__('Invalid URL.'));
178
178
  }
179
179
  }
180
- onVideoContanerLayout(event) {
180
+ onVideoContainerLayout(event) {
181
181
  const {
182
182
  width
183
183
  } = event.nativeEvent.layout;
@@ -297,7 +297,7 @@ class VideoEdit extends Component {
297
297
  };
298
298
  const containerStyle = showVideo && isSelected ? style.containerFocused : style.container;
299
299
  return /*#__PURE__*/_jsxs(View, {
300
- onLayout: this.onVideoContanerLayout,
300
+ onLayout: this.onVideoContainerLayout,
301
301
  style: containerStyle,
302
302
  children: [showVideo && /*#__PURE__*/_jsx(View, {
303
303
  style: style.videoContainer,