@wordpress/block-library 9.44.0 → 9.45.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 (367) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/accordion/edit.cjs +0 -2
  3. package/build/accordion/edit.cjs.map +2 -2
  4. package/build/accordion-item/block.json +1 -0
  5. package/build/button/constants.cjs +1 -1
  6. package/build/button/constants.cjs.map +1 -1
  7. package/build/categories/edit.cjs +5 -1
  8. package/build/categories/edit.cjs.map +2 -2
  9. package/build/embed/edit.cjs +38 -34
  10. package/build/embed/edit.cjs.map +3 -3
  11. package/build/embed/transforms.cjs +3 -1
  12. package/build/embed/transforms.cjs.map +2 -2
  13. package/build/embed/util.cjs +13 -2
  14. package/build/embed/util.cjs.map +2 -2
  15. package/build/form/block.json +1 -1
  16. package/build/form-input/block.json +1 -1
  17. package/build/form-submission-notification/block.json +1 -1
  18. package/build/form-submit-button/block.json +1 -1
  19. package/build/group/block.json +2 -1
  20. package/build/image/constants.cjs +1 -1
  21. package/build/image/constants.cjs.map +2 -2
  22. package/build/image/edit.cjs +2 -4
  23. package/build/image/edit.cjs.map +2 -2
  24. package/build/image/image.cjs +49 -19
  25. package/build/image/image.cjs.map +3 -3
  26. package/build/index.cjs +4 -4
  27. package/build/index.cjs.map +2 -2
  28. package/build/latest-posts/edit.cjs +1 -1
  29. package/build/latest-posts/edit.cjs.map +1 -1
  30. package/build/math/edit.cjs +2 -2
  31. package/build/math/edit.cjs.map +2 -2
  32. package/build/navigation/edit/accessible-description.cjs +2 -2
  33. package/build/navigation/edit/accessible-description.cjs.map +2 -2
  34. package/build/navigation/edit/overlay-template-part-selector.cjs.map +2 -2
  35. package/build/navigation-link/edit.cjs +2 -1
  36. package/build/navigation-link/edit.cjs.map +2 -2
  37. package/build/navigation-link/link-ui/dialog-wrapper.cjs +2 -1
  38. package/build/navigation-link/link-ui/dialog-wrapper.cjs.map +2 -2
  39. package/build/navigation-link/link-ui/index.cjs +2 -1
  40. package/build/navigation-link/link-ui/index.cjs.map +2 -2
  41. package/build/paragraph/use-enter.cjs +12 -23
  42. package/build/paragraph/use-enter.cjs.map +2 -2
  43. package/build/post-author/edit.cjs.map +3 -3
  44. package/build/post-comments-form/edit.cjs +2 -2
  45. package/build/post-comments-form/edit.cjs.map +2 -2
  46. package/build/post-featured-image/edit.cjs +2 -5
  47. package/build/post-featured-image/edit.cjs.map +2 -2
  48. package/build/post-template/edit.cjs +8 -2
  49. package/build/post-template/edit.cjs.map +2 -2
  50. package/build/pullquote/block.json +1 -4
  51. package/build/query/edit/inspector-controls/author-control.cjs +1 -1
  52. package/build/query/edit/inspector-controls/author-control.cjs.map +2 -2
  53. package/build/query/edit/inspector-controls/format-controls.cjs +1 -1
  54. package/build/query/edit/inspector-controls/format-controls.cjs.map +2 -2
  55. package/build/query/edit/inspector-controls/parent-control.cjs +1 -1
  56. package/build/query/edit/inspector-controls/parent-control.cjs.map +2 -2
  57. package/build/query/edit/inspector-controls/taxonomy-controls.cjs +1 -1
  58. package/build/query/edit/inspector-controls/taxonomy-controls.cjs.map +2 -2
  59. package/build/site-logo/edit.cjs +34 -20
  60. package/build/site-logo/edit.cjs.map +2 -2
  61. package/build/tab/block.json +23 -23
  62. package/build/tab/controls.cjs +5 -48
  63. package/build/tab/controls.cjs.map +3 -3
  64. package/build/tab/edit.cjs +76 -92
  65. package/build/tab/edit.cjs.map +3 -3
  66. package/build/tab/save.cjs +3 -3
  67. package/build/tab/save.cjs.map +2 -2
  68. package/{src/tabs-menu → build/tab-list}/block.json +4 -4
  69. package/build/{tabs-menu → tab-list}/edit.cjs +9 -14
  70. package/build/tab-list/edit.cjs.map +7 -0
  71. package/build/{tabs-menu → tab-list}/index.cjs +5 -5
  72. package/build/tab-list/index.cjs.map +7 -0
  73. package/build/{tabs-menu → tab-list}/save.cjs +1 -1
  74. package/build/{tabs-menu → tab-list}/save.cjs.map +1 -1
  75. package/build/{tab → tab-panel}/add-tab-toolbar-control.cjs +16 -16
  76. package/build/tab-panel/add-tab-toolbar-control.cjs.map +7 -0
  77. package/build/tab-panel/block.json +27 -37
  78. package/build/tab-panel/controls.cjs +89 -0
  79. package/build/tab-panel/controls.cjs.map +7 -0
  80. package/build/tab-panel/edit.cjs +88 -18
  81. package/build/tab-panel/edit.cjs.map +3 -3
  82. package/build/tab-panel/index.cjs +1 -1
  83. package/build/tab-panel/index.cjs.map +1 -1
  84. package/build/{tab → tab-panel}/init.cjs +1 -1
  85. package/build/{tab → tab-panel}/init.cjs.map +1 -1
  86. package/build/{tab → tab-panel}/remove-tab-toolbar-control.cjs +16 -16
  87. package/build/tab-panel/remove-tab-toolbar-control.cjs.map +7 -0
  88. package/build/tab-panel/save.cjs +4 -2
  89. package/build/tab-panel/save.cjs.map +2 -2
  90. package/build/tab-panels/block.json +66 -0
  91. package/build/{tabs-menu-item/controls.cjs → tab-panels/edit.cjs} +25 -11
  92. package/build/tab-panels/edit.cjs.map +7 -0
  93. package/build/{tabs-menu-item → tab-panels}/index.cjs +5 -5
  94. package/build/{tabs-menu → tab-panels}/index.cjs.map +2 -2
  95. package/build/{tabs-menu-item → tab-panels}/save.cjs +4 -6
  96. package/build/tab-panels/save.cjs.map +7 -0
  97. package/build/tabs/block.json +1 -2
  98. package/build/tabs/controls.cjs +2 -2
  99. package/build/tabs/controls.cjs.map +1 -1
  100. package/build/tabs/edit.cjs +29 -100
  101. package/build/tabs/edit.cjs.map +3 -3
  102. package/build/tabs/index.cjs +5 -5
  103. package/build/tabs/index.cjs.map +1 -1
  104. package/build/tabs/use-tab-list-sync.cjs +190 -0
  105. package/build/tabs/use-tab-list-sync.cjs.map +7 -0
  106. package/build/terms-query/edit/inspector-controls/include-control.cjs +1 -1
  107. package/build/terms-query/edit/inspector-controls/include-control.cjs.map +2 -2
  108. package/build/video/tracks-editor.cjs +2 -2
  109. package/build/video/tracks-editor.cjs.map +2 -2
  110. package/build-module/accordion/edit.mjs +0 -2
  111. package/build-module/accordion/edit.mjs.map +2 -2
  112. package/build-module/accordion-item/block.json +1 -0
  113. package/build-module/button/constants.mjs +1 -1
  114. package/build-module/button/constants.mjs.map +1 -1
  115. package/build-module/categories/edit.mjs +5 -2
  116. package/build-module/categories/edit.mjs.map +2 -2
  117. package/build-module/embed/edit.mjs +45 -36
  118. package/build-module/embed/edit.mjs.map +2 -2
  119. package/build-module/embed/transforms.mjs +8 -2
  120. package/build-module/embed/transforms.mjs.map +2 -2
  121. package/build-module/embed/util.mjs +11 -1
  122. package/build-module/embed/util.mjs.map +2 -2
  123. package/build-module/form/block.json +1 -1
  124. package/build-module/form-input/block.json +1 -1
  125. package/build-module/form-submission-notification/block.json +1 -1
  126. package/build-module/form-submit-button/block.json +1 -1
  127. package/build-module/group/block.json +2 -1
  128. package/build-module/image/constants.mjs +1 -1
  129. package/build-module/image/constants.mjs.map +2 -2
  130. package/build-module/image/edit.mjs +2 -4
  131. package/build-module/image/edit.mjs.map +2 -2
  132. package/build-module/image/image.mjs +49 -19
  133. package/build-module/image/image.mjs.map +3 -3
  134. package/build-module/index.mjs +4 -4
  135. package/build-module/index.mjs.map +2 -2
  136. package/build-module/latest-posts/edit.mjs +1 -1
  137. package/build-module/latest-posts/edit.mjs.map +1 -1
  138. package/build-module/math/edit.mjs +2 -2
  139. package/build-module/math/edit.mjs.map +2 -2
  140. package/build-module/navigation/edit/accessible-description.mjs +1 -1
  141. package/build-module/navigation/edit/accessible-description.mjs.map +1 -1
  142. package/build-module/navigation/edit/overlay-template-part-selector.mjs +2 -2
  143. package/build-module/navigation/edit/overlay-template-part-selector.mjs.map +1 -1
  144. package/build-module/navigation-link/edit.mjs +2 -5
  145. package/build-module/navigation-link/edit.mjs.map +2 -2
  146. package/build-module/navigation-link/link-ui/dialog-wrapper.mjs +2 -1
  147. package/build-module/navigation-link/link-ui/dialog-wrapper.mjs.map +2 -2
  148. package/build-module/navigation-link/link-ui/index.mjs +1 -1
  149. package/build-module/navigation-link/link-ui/index.mjs.map +2 -2
  150. package/build-module/paragraph/use-enter.mjs +13 -23
  151. package/build-module/paragraph/use-enter.mjs.map +2 -2
  152. package/build-module/post-author/edit.mjs +2 -2
  153. package/build-module/post-author/edit.mjs.map +2 -2
  154. package/build-module/post-comments-form/edit.mjs +1 -1
  155. package/build-module/post-comments-form/edit.mjs.map +2 -2
  156. package/build-module/post-featured-image/edit.mjs +2 -5
  157. package/build-module/post-featured-image/edit.mjs.map +2 -2
  158. package/build-module/post-template/edit.mjs +8 -2
  159. package/build-module/post-template/edit.mjs.map +2 -2
  160. package/build-module/pullquote/block.json +1 -4
  161. package/build-module/query/edit/inspector-controls/author-control.mjs +1 -1
  162. package/build-module/query/edit/inspector-controls/author-control.mjs.map +2 -2
  163. package/build-module/query/edit/inspector-controls/format-controls.mjs +1 -1
  164. package/build-module/query/edit/inspector-controls/format-controls.mjs.map +2 -2
  165. package/build-module/query/edit/inspector-controls/parent-control.mjs +1 -1
  166. package/build-module/query/edit/inspector-controls/parent-control.mjs.map +2 -2
  167. package/build-module/query/edit/inspector-controls/taxonomy-controls.mjs +1 -1
  168. package/build-module/query/edit/inspector-controls/taxonomy-controls.mjs.map +2 -2
  169. package/build-module/site-logo/edit.mjs +34 -20
  170. package/build-module/site-logo/edit.mjs.map +2 -2
  171. package/build-module/tab/block.json +23 -23
  172. package/build-module/tab/controls.mjs +7 -57
  173. package/build-module/tab/controls.mjs.map +2 -2
  174. package/build-module/tab/edit.mjs +80 -96
  175. package/build-module/tab/edit.mjs.map +3 -3
  176. package/build-module/tab/save.mjs +4 -4
  177. package/build-module/tab/save.mjs.map +2 -2
  178. package/build-module/{tabs-menu → tab-list}/block.json +4 -4
  179. package/build-module/{tabs-menu → tab-list}/edit.mjs +9 -14
  180. package/build-module/tab-list/edit.mjs.map +7 -0
  181. package/build-module/{tabs-menu → tab-list}/index.mjs +2 -2
  182. package/build-module/tab-list/index.mjs.map +7 -0
  183. package/build-module/{tabs-menu → tab-list}/save.mjs +1 -1
  184. package/build-module/{tabs-menu → tab-list}/save.mjs.map +1 -1
  185. package/build-module/{tab → tab-panel}/add-tab-toolbar-control.mjs +16 -16
  186. package/build-module/tab-panel/add-tab-toolbar-control.mjs.map +7 -0
  187. package/build-module/tab-panel/block.json +27 -37
  188. package/build-module/tab-panel/controls.mjs +65 -0
  189. package/build-module/tab-panel/controls.mjs.map +7 -0
  190. package/build-module/tab-panel/edit.mjs +90 -20
  191. package/build-module/tab-panel/edit.mjs.map +2 -2
  192. package/build-module/tab-panel/index.mjs +1 -1
  193. package/build-module/tab-panel/index.mjs.map +1 -1
  194. package/build-module/{tab → tab-panel}/init.mjs +1 -1
  195. package/build-module/{tab → tab-panel}/init.mjs.map +1 -1
  196. package/build-module/{tab → tab-panel}/remove-tab-toolbar-control.mjs +16 -16
  197. package/build-module/tab-panel/remove-tab-toolbar-control.mjs.map +7 -0
  198. package/build-module/tab-panel/save.mjs +4 -2
  199. package/build-module/tab-panel/save.mjs.map +2 -2
  200. package/build-module/tab-panels/block.json +66 -0
  201. package/build-module/tab-panels/edit.mjs +33 -0
  202. package/build-module/tab-panels/edit.mjs.map +7 -0
  203. package/build-module/{tabs-menu-item → tab-panels}/index.mjs +2 -2
  204. package/build-module/{tabs-menu → tab-panels}/index.mjs.map +2 -2
  205. package/build-module/tab-panels/save.mjs +12 -0
  206. package/build-module/tab-panels/save.mjs.map +7 -0
  207. package/build-module/tabs/block.json +1 -2
  208. package/build-module/tabs/controls.mjs +2 -2
  209. package/build-module/tabs/controls.mjs.map +1 -1
  210. package/build-module/tabs/edit.mjs +31 -102
  211. package/build-module/tabs/edit.mjs.map +2 -2
  212. package/build-module/tabs/index.mjs +5 -5
  213. package/build-module/tabs/index.mjs.map +1 -1
  214. package/build-module/tabs/use-tab-list-sync.mjs +169 -0
  215. package/build-module/tabs/use-tab-list-sync.mjs.map +7 -0
  216. package/build-module/terms-query/edit/inspector-controls/include-control.mjs +1 -1
  217. package/build-module/terms-query/edit/inspector-controls/include-control.mjs.map +2 -2
  218. package/build-module/video/tracks-editor.mjs +2 -2
  219. package/build-module/video/tracks-editor.mjs.map +2 -2
  220. package/build-style/classic-rtl.css +14 -0
  221. package/build-style/classic.css +14 -0
  222. package/build-style/editor-rtl.css +9 -5
  223. package/build-style/editor.css +9 -5
  224. package/build-style/latest-comments/style-rtl.css +4 -4
  225. package/build-style/latest-comments/style.css +4 -4
  226. package/build-style/post-template/style-rtl.css +1 -1
  227. package/build-style/post-template/style.css +1 -1
  228. package/build-style/style-rtl.css +45 -48
  229. package/build-style/style.css +45 -48
  230. package/build-style/tab/editor-rtl.css +11 -0
  231. package/build-style/tab/editor.css +11 -0
  232. package/build-style/tab/style-rtl.css +29 -16
  233. package/build-style/tab/style.css +29 -16
  234. package/build-style/tab-list/editor-rtl.css +6 -0
  235. package/build-style/tab-list/editor.css +6 -0
  236. package/build-style/tab-panel/style-rtl.css +17 -1
  237. package/build-style/tab-panel/style.css +17 -1
  238. package/build-style/tab-panels/style-rtl.css +4 -0
  239. package/build-style/tab-panels/style.css +4 -0
  240. package/build-style/tabs/style-rtl.css +0 -3
  241. package/build-style/tabs/style.css +0 -3
  242. package/build-style/video/editor-rtl.css +4 -0
  243. package/build-style/video/editor.css +4 -0
  244. package/package.json +39 -38
  245. package/src/accordion/edit.js +0 -2
  246. package/src/accordion-item/block.json +1 -0
  247. package/src/block/test/edit.native.js +1 -1
  248. package/src/button/constants.js +1 -1
  249. package/src/button/test/get-updated-link-attributes.js +6 -10
  250. package/src/categories/edit.js +3 -2
  251. package/src/classic.scss +25 -0
  252. package/src/editor.scss +2 -2
  253. package/src/embed/edit.js +61 -52
  254. package/src/embed/edit.native.js +71 -57
  255. package/src/embed/transforms.js +8 -2
  256. package/src/embed/util.js +17 -0
  257. package/src/form/block.json +1 -1
  258. package/src/form-input/block.json +1 -1
  259. package/src/form-submission-notification/block.json +1 -1
  260. package/src/form-submit-button/block.json +1 -1
  261. package/src/group/block.json +2 -1
  262. package/src/image/constants.js +1 -1
  263. package/src/image/edit.js +5 -3
  264. package/src/image/edit.native.js +3 -3
  265. package/src/image/image.js +63 -27
  266. package/src/image/test/edit.native.js +2 -2
  267. package/src/index.js +4 -4
  268. package/src/latest-comments/style.scss +7 -7
  269. package/src/latest-posts/edit.js +1 -1
  270. package/src/latest-posts/index.php +1 -1
  271. package/src/math/edit.js +3 -3
  272. package/src/navigation/edit/accessible-description.js +1 -1
  273. package/src/navigation/edit/overlay-template-part-selector.js +3 -3
  274. package/src/navigation/edit/test/overlay-template-part-selector.js +1 -0
  275. package/src/navigation-link/edit.js +2 -5
  276. package/src/navigation-link/link-ui/dialog-wrapper.js +2 -1
  277. package/src/navigation-link/link-ui/index.js +1 -1
  278. package/src/paragraph/use-enter.js +18 -24
  279. package/src/post-author/edit.js +3 -5
  280. package/src/post-comments-form/edit.js +1 -1
  281. package/src/post-featured-image/edit.js +2 -9
  282. package/src/post-template/edit.js +7 -1
  283. package/src/post-template/index.php +3 -0
  284. package/src/post-template/style.scss +2 -2
  285. package/src/pullquote/block.json +1 -4
  286. package/src/query/edit/inspector-controls/author-control.js +1 -1
  287. package/src/query/edit/inspector-controls/format-controls.js +1 -1
  288. package/src/query/edit/inspector-controls/parent-control.js +1 -1
  289. package/src/query/edit/inspector-controls/taxonomy-controls.js +1 -1
  290. package/src/site-logo/edit.js +40 -20
  291. package/src/style.scss +1 -1
  292. package/src/tab/block.json +23 -23
  293. package/src/tab/controls.js +6 -52
  294. package/src/tab/edit.js +94 -123
  295. package/src/{tabs-menu-item → tab}/editor.scss +3 -3
  296. package/src/tab/index.php +32 -51
  297. package/src/tab/save.js +4 -4
  298. package/src/tab/style.scss +34 -17
  299. package/{build/tabs-menu → src/tab-list}/block.json +4 -4
  300. package/src/{tabs-menu → tab-list}/edit.js +9 -18
  301. package/src/{tabs-menu → tab-list}/editor.scss +2 -2
  302. package/src/{tabs-menu → tab-list}/index.js +1 -1
  303. package/src/tab-list/index.php +80 -0
  304. package/src/{tab → tab-panel}/add-tab-toolbar-control.js +19 -19
  305. package/src/tab-panel/block.json +27 -37
  306. package/src/tab-panel/controls.js +65 -0
  307. package/src/tab-panel/edit.js +121 -20
  308. package/src/tab-panel/index.js +1 -1
  309. package/src/tab-panel/index.php +88 -0
  310. package/src/{tab → tab-panel}/remove-tab-toolbar-control.js +20 -19
  311. package/src/tab-panel/save.js +4 -2
  312. package/src/tab-panel/style.scss +20 -1
  313. package/src/tab-panels/block.json +66 -0
  314. package/src/tab-panels/edit.js +42 -0
  315. package/src/{tabs-menu-item → tab-panels}/index.js +1 -1
  316. package/src/tab-panels/save.js +11 -0
  317. package/src/tab-panels/style.scss +4 -0
  318. package/src/tabs/block.json +1 -2
  319. package/src/tabs/controls.js +2 -2
  320. package/src/tabs/edit.js +32 -150
  321. package/src/tabs/index.js +5 -5
  322. package/src/tabs/index.php +5 -5
  323. package/src/tabs/style.scss +0 -3
  324. package/src/tabs/use-tab-list-sync.js +237 -0
  325. package/src/terms-query/edit/inspector-controls/include-control.js +1 -1
  326. package/src/video/editor.scss +5 -0
  327. package/src/video/tracks-editor.js +2 -2
  328. package/build/tab/add-tab-toolbar-control.cjs.map +0 -7
  329. package/build/tab/remove-tab-toolbar-control.cjs.map +0 -7
  330. package/build/tab/slug-from-label.cjs +0 -37
  331. package/build/tab/slug-from-label.cjs.map +0 -7
  332. package/build/tabs-menu/edit.cjs.map +0 -7
  333. package/build/tabs-menu-item/block.json +0 -59
  334. package/build/tabs-menu-item/controls.cjs.map +0 -7
  335. package/build/tabs-menu-item/edit.cjs +0 -144
  336. package/build/tabs-menu-item/edit.cjs.map +0 -7
  337. package/build/tabs-menu-item/index.cjs.map +0 -7
  338. package/build/tabs-menu-item/save.cjs.map +0 -7
  339. package/build-module/tab/add-tab-toolbar-control.mjs.map +0 -7
  340. package/build-module/tab/remove-tab-toolbar-control.mjs.map +0 -7
  341. package/build-module/tab/slug-from-label.mjs +0 -16
  342. package/build-module/tab/slug-from-label.mjs.map +0 -7
  343. package/build-module/tabs-menu/edit.mjs.map +0 -7
  344. package/build-module/tabs-menu-item/block.json +0 -59
  345. package/build-module/tabs-menu-item/controls.mjs +0 -15
  346. package/build-module/tabs-menu-item/controls.mjs.map +0 -7
  347. package/build-module/tabs-menu-item/edit.mjs +0 -117
  348. package/build-module/tabs-menu-item/edit.mjs.map +0 -7
  349. package/build-module/tabs-menu-item/index.mjs.map +0 -7
  350. package/build-module/tabs-menu-item/save.mjs +0 -14
  351. package/build-module/tabs-menu-item/save.mjs.map +0 -7
  352. package/build-style/tabs-menu/editor-rtl.css +0 -6
  353. package/build-style/tabs-menu/editor.css +0 -6
  354. package/build-style/tabs-menu-item/editor-rtl.css +0 -11
  355. package/build-style/tabs-menu-item/editor.css +0 -11
  356. package/build-style/tabs-menu-item/style-rtl.css +0 -33
  357. package/build-style/tabs-menu-item/style.css +0 -33
  358. package/src/tab/slug-from-label.js +0 -26
  359. package/src/tabs-menu/index.php +0 -80
  360. package/src/tabs-menu-item/block.json +0 -59
  361. package/src/tabs-menu-item/controls.js +0 -19
  362. package/src/tabs-menu-item/edit.js +0 -150
  363. package/src/tabs-menu-item/index.php +0 -70
  364. package/src/tabs-menu-item/save.js +0 -13
  365. package/src/tabs-menu-item/style.scss +0 -40
  366. /package/src/{tabs-menu → tab-list}/save.js +0 -0
  367. /package/src/{tab → tab-panel}/init.js +0 -0
@@ -1,20 +1,33 @@
1
1
  .wp-block-tab {
2
- max-width: 100%;
3
- flex-basis: 100%;
4
- flex-grow: 1;
5
2
  box-sizing: border-box;
3
+ color: inherit;
4
+ display: block;
5
+ width: max-content;
6
+ text-decoration: none;
7
+ cursor: pointer;
8
+ flex-basis: inherit !important;
9
+ flex-grow: inherit !important;
10
+ position: relative;
11
+ border: none;
12
+ background: none;
13
+ appearance: none;
14
+ -webkit-appearance: none;
15
+ margin: 0;
16
+ padding: var(--wp--preset--spacing--20, 0.5em) var(--wp--preset--spacing--30, 1em);
17
+ font-size: inherit;
18
+ font-family: inherit;
19
+ font-weight: inherit;
20
+ line-height: inherit;
21
+ letter-spacing: inherit;
22
+ text-transform: inherit;
23
+ text-align: inherit;
6
24
  }
7
- .wp-block-tab > *:first-child {
8
- margin-top: 0;
9
- }
10
- .wp-block-tab > *:last-child {
11
- margin-bottom: 0;
12
- }
13
- .wp-block-tab[hidden], .wp-block-tab:empty {
14
- display: none !important;
15
- }
16
-
17
- .wp-block-tab.wp-block.has-background,
18
- .wp-block-tab:not(.wp-block).has-background {
19
- padding: var(--wp--preset--spacing--30);
25
+ .wp-block-tab[aria-selected=true]::before, .wp-block-tab.is-active::before {
26
+ content: "";
27
+ position: absolute;
28
+ border-bottom: 2px solid currentColor;
29
+ pointer-events: none;
30
+ left: 0;
31
+ width: 100%;
32
+ bottom: 0;
20
33
  }
@@ -0,0 +1,6 @@
1
+ .wp-block-tab-list > .block-editor-block-list__layout {
2
+ display: contents;
3
+ }
4
+ .wp-block-tab-list .block-editor-block-list__block:has(> .wp-block-tab) {
5
+ display: contents;
6
+ }
@@ -0,0 +1,6 @@
1
+ .wp-block-tab-list > .block-editor-block-list__layout {
2
+ display: contents;
3
+ }
4
+ .wp-block-tab-list .block-editor-block-list__block:has(> .wp-block-tab) {
5
+ display: contents;
6
+ }
@@ -1,4 +1,20 @@
1
1
  .wp-block-tab-panel {
2
+ max-width: 100%;
3
+ flex-basis: 100%;
2
4
  flex-grow: 1;
3
- min-width: 0;
5
+ box-sizing: border-box;
6
+ }
7
+ .wp-block-tab-panel > *:first-child {
8
+ margin-top: 0;
9
+ }
10
+ .wp-block-tab-panel > *:last-child {
11
+ margin-bottom: 0;
12
+ }
13
+ .wp-block-tab-panel[hidden], .wp-block-tab-panel:empty {
14
+ display: none !important;
15
+ }
16
+
17
+ .wp-block-tab-panel.wp-block.has-background,
18
+ .wp-block-tab-panel:not(.wp-block).has-background {
19
+ padding: var(--wp--preset--spacing--30);
4
20
  }
@@ -1,4 +1,20 @@
1
1
  .wp-block-tab-panel {
2
+ max-width: 100%;
3
+ flex-basis: 100%;
2
4
  flex-grow: 1;
3
- min-width: 0;
5
+ box-sizing: border-box;
6
+ }
7
+ .wp-block-tab-panel > *:first-child {
8
+ margin-top: 0;
9
+ }
10
+ .wp-block-tab-panel > *:last-child {
11
+ margin-bottom: 0;
12
+ }
13
+ .wp-block-tab-panel[hidden], .wp-block-tab-panel:empty {
14
+ display: none !important;
15
+ }
16
+
17
+ .wp-block-tab-panel.wp-block.has-background,
18
+ .wp-block-tab-panel:not(.wp-block).has-background {
19
+ padding: var(--wp--preset--spacing--30);
4
20
  }
@@ -0,0 +1,4 @@
1
+ .wp-block-tab-panels {
2
+ flex-grow: 1;
3
+ min-width: 0;
4
+ }
@@ -0,0 +1,4 @@
1
+ .wp-block-tab-panels {
2
+ flex-grow: 1;
3
+ min-width: 0;
4
+ }
@@ -1,6 +1,3 @@
1
1
  .wp-block-tabs {
2
2
  box-sizing: border-box;
3
- }
4
- .wp-block-tabs .wp-block-tabs__title {
5
- display: none;
6
3
  }
@@ -1,6 +1,3 @@
1
1
  .wp-block-tabs {
2
2
  box-sizing: border-box;
3
- }
4
- .wp-block-tabs .wp-block-tabs__title {
5
- display: none;
6
3
  }
@@ -65,6 +65,10 @@
65
65
  z-index: 159990;
66
66
  }
67
67
 
68
+ .modal-open .block-library-video-tracks-editor {
69
+ z-index: 99999;
70
+ }
71
+
68
72
  .block-library-video-tracks-editor__track-list-track {
69
73
  padding-right: 12px;
70
74
  }
@@ -65,6 +65,10 @@
65
65
  z-index: 159990;
66
66
  }
67
67
 
68
+ .modal-open .block-library-video-tracks-editor {
69
+ z-index: 99999;
70
+ }
71
+
68
72
  .block-library-video-tracks-editor__track-list-track {
69
73
  padding-left: 12px;
70
74
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-library",
3
- "version": "9.44.0",
3
+ "version": "9.45.0",
4
4
  "description": "Block library for the WordPress editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -95,42 +95,43 @@
95
95
  ],
96
96
  "dependencies": {
97
97
  "@arraypress/waveform-player": "1.2.1",
98
- "@wordpress/a11y": "^4.44.0",
99
- "@wordpress/api-fetch": "^7.44.0",
100
- "@wordpress/autop": "^4.44.0",
101
- "@wordpress/base-styles": "^6.20.0",
102
- "@wordpress/blob": "^4.44.0",
103
- "@wordpress/block-editor": "^15.17.0",
104
- "@wordpress/blocks": "^15.17.0",
105
- "@wordpress/components": "^32.6.0",
106
- "@wordpress/compose": "^7.44.0",
107
- "@wordpress/core-data": "^7.44.0",
108
- "@wordpress/data": "^10.44.0",
109
- "@wordpress/date": "^5.44.0",
110
- "@wordpress/deprecated": "^4.44.0",
111
- "@wordpress/dom": "^4.44.0",
112
- "@wordpress/element": "^6.44.0",
113
- "@wordpress/escape-html": "^3.44.0",
114
- "@wordpress/hooks": "^4.44.0",
115
- "@wordpress/html-entities": "^4.44.0",
116
- "@wordpress/i18n": "^6.17.0",
117
- "@wordpress/icons": "^12.2.0",
118
- "@wordpress/interactivity": "^6.44.0",
119
- "@wordpress/interactivity-router": "^2.44.0",
120
- "@wordpress/keyboard-shortcuts": "^5.44.0",
121
- "@wordpress/keycodes": "^4.44.0",
122
- "@wordpress/latex-to-mathml": "^1.12.0",
123
- "@wordpress/notices": "^5.44.0",
124
- "@wordpress/patterns": "^2.44.0",
125
- "@wordpress/primitives": "^4.44.0",
126
- "@wordpress/private-apis": "^1.44.0",
127
- "@wordpress/reusable-blocks": "^5.44.0",
128
- "@wordpress/rich-text": "^7.44.0",
129
- "@wordpress/server-side-render": "^6.20.0",
130
- "@wordpress/upload-media": "^0.29.0",
131
- "@wordpress/url": "^4.44.0",
132
- "@wordpress/viewport": "^6.44.0",
133
- "@wordpress/wordcount": "^4.44.0",
98
+ "@wordpress/a11y": "^4.45.0",
99
+ "@wordpress/api-fetch": "^7.45.0",
100
+ "@wordpress/autop": "^4.45.0",
101
+ "@wordpress/base-styles": "^7.0.0",
102
+ "@wordpress/blob": "^4.45.0",
103
+ "@wordpress/block-editor": "^15.18.0",
104
+ "@wordpress/blocks": "^15.18.0",
105
+ "@wordpress/components": "^33.0.0",
106
+ "@wordpress/compose": "^7.45.0",
107
+ "@wordpress/core-data": "^7.45.0",
108
+ "@wordpress/data": "^10.45.0",
109
+ "@wordpress/date": "^5.45.0",
110
+ "@wordpress/deprecated": "^4.45.0",
111
+ "@wordpress/dom": "^4.45.0",
112
+ "@wordpress/element": "^6.45.0",
113
+ "@wordpress/escape-html": "^3.45.0",
114
+ "@wordpress/hooks": "^4.45.0",
115
+ "@wordpress/html-entities": "^4.45.0",
116
+ "@wordpress/i18n": "^6.18.0",
117
+ "@wordpress/icons": "^13.0.0",
118
+ "@wordpress/interactivity": "^6.45.0",
119
+ "@wordpress/interactivity-router": "^2.45.0",
120
+ "@wordpress/keyboard-shortcuts": "^5.45.0",
121
+ "@wordpress/keycodes": "^4.45.0",
122
+ "@wordpress/latex-to-mathml": "^1.13.0",
123
+ "@wordpress/notices": "^5.45.0",
124
+ "@wordpress/patterns": "^2.45.0",
125
+ "@wordpress/primitives": "^4.45.0",
126
+ "@wordpress/private-apis": "^1.45.0",
127
+ "@wordpress/reusable-blocks": "^5.45.0",
128
+ "@wordpress/rich-text": "^7.45.0",
129
+ "@wordpress/server-side-render": "^6.21.0",
130
+ "@wordpress/ui": "^0.12.0",
131
+ "@wordpress/upload-media": "^0.30.0",
132
+ "@wordpress/url": "^4.45.0",
133
+ "@wordpress/viewport": "^6.45.0",
134
+ "@wordpress/wordcount": "^4.45.0",
134
135
  "change-case": "^4.1.2",
135
136
  "clsx": "^2.1.1",
136
137
  "colord": "^2.7.0",
@@ -151,5 +152,5 @@
151
152
  "publishConfig": {
152
153
  "access": "public"
153
154
  },
154
- "gitHead": "b862d8c84121a47bbeff882f6c87e61681ce2e0d"
155
+ "gitHead": "8c229eaed0e88c9827e2da3d73a78f9ddd77714b"
155
156
  }
@@ -140,7 +140,6 @@ export default function Edit( {
140
140
  }
141
141
  >
142
142
  <ToggleControl
143
- isBlock
144
143
  label={ __( 'Auto-close' ) }
145
144
  onChange={ ( value ) => {
146
145
  setAttributes( {
@@ -160,7 +159,6 @@ export default function Edit( {
160
159
  onDeselect={ () => setAttributes( { showIcon: true } ) }
161
160
  >
162
161
  <ToggleControl
163
- isBlock
164
162
  label={ __( 'Show icon' ) }
165
163
  onChange={ ( value ) => {
166
164
  setAttributes( {
@@ -16,6 +16,7 @@
16
16
  "interactivity": true,
17
17
  "spacing": {
18
18
  "margin": [ "top", "bottom" ],
19
+ "padding": true,
19
20
  "blockGap": true
20
21
  },
21
22
  "__experimentalBorder": {
@@ -29,7 +29,7 @@ const getMockedReusableBlock = ( id ) => ( {
29
29
  <!-- /wp:heading -->
30
30
 
31
31
  <!-- wp:paragraph -->
32
- <p><strong>Bold</strong> <em>Italic</em> <s>Striked</s> Superscript<sup>(1)</sup> Subscript<sub>(2)</sub> <a href="http://www.wordpress.org" target="_blank" rel="noreferrer noopener">Link</a></p>
32
+ <p><strong>Bold</strong> <em>Italic</em> <s>Striked</s> Superscript<sup>(1)</sup> Subscript<sub>(2)</sub> <a href="http://www.wordpress.org" target="_blank" rel="noopener">Link</a></p>
33
33
  <!-- /wp:paragraph -->
34
34
 
35
35
  !-- wp:heading {"level":4} -->
@@ -1,3 +1,3 @@
1
- export const NEW_TAB_REL = 'noreferrer noopener';
1
+ export const NEW_TAB_REL = 'noopener';
2
2
  export const NEW_TAB_TARGET = '_blank';
3
3
  export const NOFOLLOW_REL = 'nofollow';
@@ -15,7 +15,7 @@ describe( 'getUpdatedLinkAttributes method', () => {
15
15
 
16
16
  expect( result.url ).toEqual( 'https://example.com' );
17
17
  expect( result.linkTarget ).toEqual( '_blank' );
18
- expect( result.rel ).toEqual( 'noreferrer noopener' );
18
+ expect( result.rel ).toEqual( 'noopener' );
19
19
  } );
20
20
 
21
21
  it( 'should return empty rel value as undefined', () => {
@@ -44,9 +44,7 @@ describe( 'getUpdatedLinkAttributes method', () => {
44
44
 
45
45
  expect( result.url ).toEqual( 'https://example.com' );
46
46
  expect( result.linkTarget ).toEqual( '_blank' );
47
- expect( result.rel ).toEqual(
48
- 'rel_value noreferrer noopener nofollow'
49
- );
47
+ expect( result.rel ).toEqual( 'rel_value noopener nofollow' );
50
48
  } );
51
49
 
52
50
  it( 'should correctly update link attributes with opensInNewTab', () => {
@@ -61,7 +59,7 @@ describe( 'getUpdatedLinkAttributes method', () => {
61
59
 
62
60
  expect( result.url ).toEqual( 'https://example.com' );
63
61
  expect( result.linkTarget ).toEqual( '_blank' );
64
- expect( result.rel ).toEqual( 'rel_value noreferrer noopener' );
62
+ expect( result.rel ).toEqual( 'rel_value noopener' );
65
63
  } );
66
64
 
67
65
  it( 'should correctly update link attributes with nofollow', () => {
@@ -106,9 +104,7 @@ describe( 'getUpdatedLinkAttributes method', () => {
106
104
 
107
105
  expect( result.url ).toEqual( 'https://example.com' );
108
106
  expect( result.linkTarget ).toEqual( '_blank' );
109
- expect( result.rel ).toEqual(
110
- 'rel_value nofollow noreferrer noopener'
111
- );
107
+ expect( result.rel ).toEqual( 'rel_value nofollow noopener' );
112
108
  } );
113
109
 
114
110
  it( 'should correctly handle rel with existing new tab values and remove duplicates', () => {
@@ -116,13 +112,13 @@ describe( 'getUpdatedLinkAttributes method', () => {
116
112
  url: 'example.com',
117
113
  opensInNewTab: true,
118
114
  nofollow: false,
119
- rel: 'rel_value noreferrer noopener',
115
+ rel: 'rel_value noopener',
120
116
  };
121
117
 
122
118
  const result = getUpdatedLinkAttributes( options );
123
119
 
124
120
  expect( result.url ).toEqual( 'https://example.com' );
125
121
  expect( result.linkTarget ).toEqual( '_blank' );
126
- expect( result.rel ).toEqual( 'rel_value noreferrer noopener' );
122
+ expect( result.rel ).toEqual( 'rel_value noopener' );
127
123
  } );
128
124
  } );
@@ -11,7 +11,6 @@ import {
11
11
  SelectControl,
12
12
  Spinner,
13
13
  ToggleControl,
14
- VisuallyHidden,
15
14
  __experimentalToolsPanel as ToolsPanel,
16
15
  __experimentalToolsPanelItem as ToolsPanelItem,
17
16
  } from '@wordpress/components';
@@ -26,6 +25,7 @@ import { __, sprintf } from '@wordpress/i18n';
26
25
  import { pin } from '@wordpress/icons';
27
26
  import { useEntityRecords } from '@wordpress/core-data';
28
27
  import { useDispatch } from '@wordpress/data';
28
+ import { VisuallyHidden } from '@wordpress/ui';
29
29
  import { store as noticeStore } from '@wordpress/notices';
30
30
 
31
31
  /**
@@ -146,7 +146,8 @@ export default function CategoriesEdit( {
146
146
  }
147
147
  />
148
148
  ) : (
149
- <VisuallyHidden as="label" htmlFor={ selectId }>
149
+ // eslint-disable-next-line jsx-a11y/label-has-associated-control
150
+ <VisuallyHidden render={ <label htmlFor={ selectId } /> }>
150
151
  { label ? label : taxonomy?.name }
151
152
  </VisuallyHidden>
152
153
  ) }
package/src/classic.scss CHANGED
@@ -58,3 +58,28 @@
58
58
  outline: auto;
59
59
  }
60
60
  }
61
+
62
+ .wp-block-tab {
63
+ // Button elements can have colors applied with high CSS specificity,
64
+ // and since this specificity is impossible to predict, we use
65
+ // `!important` to reset the color.
66
+ &:not(.has-text-color) {
67
+ color: inherit !important;
68
+ }
69
+ &:not(.has-background) {
70
+ background-color: inherit !important;
71
+ }
72
+
73
+ &:hover,
74
+ &:focus {
75
+ // Sometimes styles are applied when the button element is
76
+ // hovered over or focused. This isn't expected for tab
77
+ // buttons, so reset those styles here.
78
+ text-decoration: none;
79
+ }
80
+
81
+ &:focus-visible {
82
+ outline-offset: 0;
83
+ outline: auto;
84
+ }
85
+ }
package/src/editor.scss CHANGED
@@ -49,8 +49,8 @@
49
49
  @use "./social-links/editor.scss" as *;
50
50
  @use "./spacer/editor.scss" as *;
51
51
  @use "./table/editor.scss" as *;
52
- @use "./tabs-menu/editor.scss" as *;
53
- @use "./tabs-menu-item/editor.scss" as *;
52
+ @use "./tab-list/editor.scss" as *;
53
+ @use "./tab/editor.scss" as *;
54
54
  @use "./template-part/editor.scss" as *;
55
55
  @use "./term-template/editor.scss" as *;
56
56
  @use "./text-columns/editor.scss" as *;
package/src/embed/edit.js CHANGED
@@ -1,9 +1,30 @@
1
+ /**
2
+ * External dependencies
3
+ */
4
+ import clsx from 'clsx';
5
+
6
+ /**
7
+ * WordPress dependencies
8
+ */
9
+ import { __, _x, sprintf } from '@wordpress/i18n';
10
+ import { useState, useEffect } from '@wordpress/element';
11
+ import { useDispatch, useSelect } from '@wordpress/data';
12
+ import {
13
+ useBlockProps,
14
+ store as blockEditorStore,
15
+ } from '@wordpress/block-editor';
16
+ import { store as coreStore } from '@wordpress/core-data';
17
+ import { View } from '@wordpress/primitives';
18
+ import { Caption } from '../utils/caption';
19
+
1
20
  /**
2
21
  * Internal dependencies
3
22
  */
4
23
  import {
5
24
  createUpgradedEmbedBlock,
25
+ findMoreSuitableBlock,
6
26
  getClassNames,
27
+ rewriteXToTwitter,
7
28
  removeAspectRatioClasses,
8
29
  fallback,
9
30
  getEmbedInfoByProvider,
@@ -15,23 +36,6 @@ import EmbedLoading from './embed-loading';
15
36
  import EmbedPlaceholder from './embed-placeholder';
16
37
  import EmbedPreview from './embed-preview';
17
38
 
18
- /**
19
- * External dependencies
20
- */
21
- import clsx from 'clsx';
22
-
23
- /**
24
- * WordPress dependencies
25
- */
26
- import { __, _x, sprintf } from '@wordpress/i18n';
27
- import { useState, useEffect } from '@wordpress/element';
28
- import { useDispatch, useSelect } from '@wordpress/data';
29
- import { useBlockProps } from '@wordpress/block-editor';
30
- import { store as coreStore } from '@wordpress/core-data';
31
- import { View } from '@wordpress/primitives';
32
- import { getAuthority } from '@wordpress/url';
33
- import { Caption } from '../utils/caption';
34
-
35
39
  const EmbedEdit = ( props ) => {
36
40
  const {
37
41
  attributes: {
@@ -58,6 +62,8 @@ const EmbedEdit = ( props ) => {
58
62
  const [ url, setURL ] = useState( attributesUrl );
59
63
  const [ isEditingURL, setIsEditingURL ] = useState( false );
60
64
  const { invalidateResolution } = useDispatch( coreStore );
65
+ const { __unstableMarkNextChangeAsNotPersistent } =
66
+ useDispatch( blockEditorStore );
61
67
 
62
68
  const {
63
69
  preview,
@@ -131,63 +137,61 @@ const EmbedEdit = ( props ) => {
131
137
  } );
132
138
  }
133
139
 
140
+ // When the preview can't be embedded, retry without any trailing slash.
134
141
  useEffect( () => {
135
- if ( preview?.html || ! cannotEmbed || ! hasResolved ) {
142
+ if ( ! cannotEmbed || ! hasResolved || ! attributesUrl ) {
136
143
  return;
137
144
  }
138
145
 
139
- // At this stage, we're not fetching the preview and know it can't be embedded,
140
- // so try removing any trailing slash, and resubmit.
141
146
  const newURL = attributesUrl.replace( /\/$/, '' );
147
+ if ( newURL === attributesUrl ) {
148
+ return;
149
+ }
150
+
142
151
  setURL( newURL );
143
152
  setIsEditingURL( false );
153
+ __unstableMarkNextChangeAsNotPersistent();
144
154
  setAttributes( { url: newURL } );
145
155
  }, [
146
- preview?.html,
147
156
  attributesUrl,
148
157
  cannotEmbed,
149
158
  hasResolved,
150
159
  setAttributes,
160
+ __unstableMarkNextChangeAsNotPersistent,
151
161
  ] );
152
162
 
153
- // Try a different provider in case the embed url is not supported.
163
+ // Apply preview-derived attributes once the preview resolves.
154
164
  useEffect( () => {
155
- if ( ! cannotEmbed || fetching || ! url ) {
165
+ if ( ! preview || isEditingURL ) {
156
166
  return;
157
167
  }
158
168
 
159
- // Until X provider is supported in WordPress, as a workaround we use Twitter provider.
160
- if ( getAuthority( url ) === 'x.com' ) {
161
- const newURL = new URL( url );
162
- newURL.host = 'twitter.com';
163
- setAttributes( { url: newURL.toString() } );
164
- }
165
- }, [ url, cannotEmbed, fetching, setAttributes ] );
169
+ const mergedAttributes = getMergedAttributes();
166
170
 
167
- // Handle incoming preview.
168
- useEffect( () => {
169
- if ( preview && ! isEditingURL ) {
170
- // When obtaining an incoming preview,
171
- // we set the attributes derived from the preview data.
172
- const mergedAttributes = getMergedAttributes();
173
- const hasChanges = Object.keys( mergedAttributes ).some(
174
- ( key ) => mergedAttributes[ key ] !== attributes[ key ]
171
+ if ( onReplace ) {
172
+ const upgradedBlock = createUpgradedEmbedBlock(
173
+ props,
174
+ mergedAttributes
175
175
  );
176
176
 
177
- if ( hasChanges ) {
178
- setAttributes( mergedAttributes );
177
+ if ( upgradedBlock ) {
178
+ // Mutate via setAttributes; onReplace would remount the
179
+ // block and clear the URL textbox on undo.
180
+ __unstableMarkNextChangeAsNotPersistent();
181
+ setAttributes( upgradedBlock.attributes );
182
+ return;
179
183
  }
184
+ }
180
185
 
181
- if ( onReplace ) {
182
- const upgradedBlock = createUpgradedEmbedBlock(
183
- props,
184
- mergedAttributes
185
- );
186
+ const hasChanges = Object.keys( mergedAttributes ).some(
187
+ ( key ) => mergedAttributes[ key ] !== attributes[ key ]
188
+ );
186
189
 
187
- if ( upgradedBlock ) {
188
- onReplace( upgradedBlock );
189
- }
190
- }
190
+ if ( hasChanges ) {
191
+ // Merge into the URL-submit undo level so a single undo
192
+ // reverts both the submit and the preview-driven attributes.
193
+ __unstableMarkNextChangeAsNotPersistent();
194
+ setAttributes( mergedAttributes );
191
195
  }
192
196
  }, [ preview, isEditingURL ] );
193
197
 
@@ -219,14 +223,19 @@ const EmbedEdit = ( props ) => {
219
223
  event.preventDefault();
220
224
  }
221
225
 
222
- // If the embed URL was changed, we need to reset the aspect ratio class.
223
- // To do this we have to remove the existing ratio class so it can be recalculated.
226
+ const rewrittenURL = rewriteXToTwitter( url );
224
227
  const blockClass = removeAspectRatioClasses(
225
228
  attributes.className
226
229
  );
227
230
 
231
+ setURL( rewrittenURL );
232
+ setAttributes( {
233
+ url: rewrittenURL,
234
+ ...findMoreSuitableBlock( rewrittenURL )
235
+ ?.attributes,
236
+ className: blockClass,
237
+ } );
228
238
  setIsEditingURL( false );
229
- setAttributes( { url, className: blockClass } );
230
239
  } }
231
240
  value={ url }
232
241
  cannotEmbed={ cannotEmbed }