@wordpress/block-library 10.6.1-next.v.202609031004.0 → 11.0.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 (457) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/build/audio/edit.cjs +5 -5
  3. package/build/audio/edit.cjs.map +2 -2
  4. package/build/audio/index.cjs +0 -37
  5. package/build/audio/index.cjs.map +3 -3
  6. package/build/button/index.cjs +0 -34
  7. package/build/button/index.cjs.map +3 -3
  8. package/build/code/index.cjs +0 -17
  9. package/build/code/index.cjs.map +3 -3
  10. package/build/cover/index.cjs +0 -38
  11. package/build/cover/index.cjs.map +3 -3
  12. package/build/details/index.cjs +0 -17
  13. package/build/details/index.cjs.map +3 -3
  14. package/build/file/index.cjs +0 -43
  15. package/build/file/index.cjs.map +3 -3
  16. package/build/footnotes/format.cjs +1 -1
  17. package/build/footnotes/format.cjs.map +2 -2
  18. package/build/gallery/dynamic-gallery.cjs +12 -9
  19. package/build/gallery/dynamic-gallery.cjs.map +2 -2
  20. package/build/heading/index.cjs +0 -16
  21. package/build/heading/index.cjs.map +3 -3
  22. package/build/image/image.cjs +1 -2
  23. package/build/image/image.cjs.map +2 -2
  24. package/build/image/index.cjs +0 -81
  25. package/build/image/index.cjs.map +3 -3
  26. package/build/index.cjs +0 -10
  27. package/build/index.cjs.map +2 -2
  28. package/build/list-item/edit.cjs +14 -11
  29. package/build/list-item/edit.cjs.map +2 -2
  30. package/build/list-item/hooks/index.cjs +6 -9
  31. package/build/list-item/hooks/index.cjs.map +2 -2
  32. package/build/list-item/hooks/use-enter.cjs +62 -67
  33. package/build/list-item/hooks/use-enter.cjs.map +3 -3
  34. package/build/list-item/hooks/use-merge.cjs +26 -44
  35. package/build/list-item/hooks/use-merge.cjs.map +3 -3
  36. package/build/list-item/hooks/use-multi-select-tab.cjs +80 -0
  37. package/build/list-item/hooks/use-multi-select-tab.cjs.map +7 -0
  38. package/build/list-item/hooks/use-tab.cjs +65 -0
  39. package/build/list-item/hooks/use-tab.cjs.map +7 -0
  40. package/build/list-item/index.cjs +0 -17
  41. package/build/list-item/index.cjs.map +3 -3
  42. package/build/list-item/utils.cjs +169 -0
  43. package/build/list-item/utils.cjs.map +7 -0
  44. package/build/media-text/index.cjs +0 -50
  45. package/build/media-text/index.cjs.map +3 -3
  46. package/build/media-text/media-container.cjs +16 -11
  47. package/build/media-text/media-container.cjs.map +2 -2
  48. package/build/more/index.cjs +0 -18
  49. package/build/more/index.cjs.map +3 -3
  50. package/build/navigation/constants.cjs +1 -1
  51. package/build/navigation/constants.cjs.map +1 -1
  52. package/build/navigation-link/block.json +1 -1
  53. package/build/navigation-link/deprecated.cjs +69 -0
  54. package/build/navigation-link/deprecated.cjs.map +7 -0
  55. package/build/navigation-link/index.cjs +6 -74
  56. package/build/navigation-link/index.cjs.map +4 -4
  57. package/build/{form-submit-button/init.cjs → navigation-link/variations.cjs} +23 -8
  58. package/build/navigation-link/variations.cjs.map +7 -0
  59. package/build/navigation-submenu/index.cjs +0 -32
  60. package/build/navigation-submenu/index.cjs.map +3 -3
  61. package/build/paragraph/index.cjs +0 -17
  62. package/build/paragraph/index.cjs.map +3 -3
  63. package/build/paragraph/use-enter.cjs +8 -4
  64. package/build/paragraph/use-enter.cjs.map +2 -2
  65. package/build/post-template/edit.cjs +3 -1
  66. package/build/post-template/edit.cjs.map +2 -2
  67. package/build/preformatted/index.cjs +0 -17
  68. package/build/preformatted/index.cjs.map +3 -3
  69. package/build/pullquote/index.cjs +0 -24
  70. package/build/pullquote/index.cjs.map +3 -3
  71. package/build/query/edit/inspector-controls/index.cjs +9 -4
  72. package/build/query/edit/inspector-controls/index.cjs.map +2 -2
  73. package/build/search/index.cjs +0 -31
  74. package/build/search/index.cjs.map +3 -3
  75. package/build/site-tagline/edit.cjs +11 -17
  76. package/build/site-tagline/edit.cjs.map +2 -2
  77. package/build/site-title/edit.cjs +12 -18
  78. package/build/site-title/edit.cjs.map +2 -2
  79. package/build/social-link/index.cjs +0 -31
  80. package/build/social-link/index.cjs.map +3 -3
  81. package/build/verse/index.cjs +0 -17
  82. package/build/verse/index.cjs.map +3 -3
  83. package/build/video/index.cjs +0 -40
  84. package/build/video/index.cjs.map +3 -3
  85. package/build/video/tracks-editor.cjs +2 -3
  86. package/build/video/tracks-editor.cjs.map +3 -3
  87. package/build-module/audio/edit.mjs +5 -5
  88. package/build-module/audio/edit.mjs.map +2 -2
  89. package/build-module/audio/index.mjs +0 -37
  90. package/build-module/audio/index.mjs.map +2 -2
  91. package/build-module/button/index.mjs +0 -34
  92. package/build-module/button/index.mjs.map +2 -2
  93. package/build-module/code/index.mjs +0 -17
  94. package/build-module/code/index.mjs.map +2 -2
  95. package/build-module/cover/index.mjs +0 -38
  96. package/build-module/cover/index.mjs.map +2 -2
  97. package/build-module/details/index.mjs +0 -17
  98. package/build-module/details/index.mjs.map +2 -2
  99. package/build-module/file/index.mjs +1 -44
  100. package/build-module/file/index.mjs.map +2 -2
  101. package/build-module/footnotes/format.mjs +1 -1
  102. package/build-module/footnotes/format.mjs.map +2 -2
  103. package/build-module/gallery/dynamic-gallery.mjs +12 -9
  104. package/build-module/gallery/dynamic-gallery.mjs.map +2 -2
  105. package/build-module/heading/index.mjs +1 -21
  106. package/build-module/heading/index.mjs.map +2 -2
  107. package/build-module/image/image.mjs +1 -2
  108. package/build-module/image/image.mjs.map +2 -2
  109. package/build-module/image/index.mjs +0 -81
  110. package/build-module/image/index.mjs.map +2 -2
  111. package/build-module/index.mjs +0 -10
  112. package/build-module/index.mjs.map +2 -2
  113. package/build-module/list-item/edit.mjs +20 -18
  114. package/build-module/list-item/edit.mjs.map +2 -2
  115. package/build-module/list-item/hooks/index.mjs +8 -10
  116. package/build-module/list-item/hooks/index.mjs.map +2 -2
  117. package/build-module/list-item/hooks/use-enter.mjs +63 -58
  118. package/build-module/list-item/hooks/use-enter.mjs.map +2 -2
  119. package/build-module/list-item/hooks/use-merge.mjs +27 -35
  120. package/build-module/list-item/hooks/use-merge.mjs.map +2 -2
  121. package/build-module/list-item/hooks/use-multi-select-tab.mjs +59 -0
  122. package/build-module/list-item/hooks/use-multi-select-tab.mjs.map +7 -0
  123. package/build-module/list-item/hooks/use-tab.mjs +44 -0
  124. package/build-module/list-item/hooks/use-tab.mjs.map +7 -0
  125. package/build-module/list-item/index.mjs +0 -17
  126. package/build-module/list-item/index.mjs.map +2 -2
  127. package/build-module/list-item/utils.mjs +140 -0
  128. package/build-module/list-item/utils.mjs.map +7 -0
  129. package/build-module/media-text/index.mjs +0 -50
  130. package/build-module/media-text/index.mjs.map +2 -2
  131. package/build-module/media-text/media-container.mjs +17 -12
  132. package/build-module/media-text/media-container.mjs.map +2 -2
  133. package/build-module/more/index.mjs +0 -18
  134. package/build-module/more/index.mjs.map +2 -2
  135. package/build-module/navigation/constants.mjs +1 -1
  136. package/build-module/navigation/constants.mjs.map +1 -1
  137. package/build-module/navigation-link/block.json +1 -1
  138. package/build-module/navigation-link/deprecated.mjs +48 -0
  139. package/build-module/navigation-link/deprecated.mjs.map +7 -0
  140. package/build-module/navigation-link/index.mjs +7 -75
  141. package/build-module/navigation-link/index.mjs.map +3 -3
  142. package/build-module/navigation-link/variations.mjs +22 -0
  143. package/build-module/navigation-link/variations.mjs.map +7 -0
  144. package/build-module/navigation-submenu/index.mjs +1 -33
  145. package/build-module/navigation-submenu/index.mjs.map +2 -2
  146. package/build-module/paragraph/index.mjs +0 -17
  147. package/build-module/paragraph/index.mjs.map +2 -2
  148. package/build-module/paragraph/use-enter.mjs +8 -4
  149. package/build-module/paragraph/use-enter.mjs.map +2 -2
  150. package/build-module/post-template/edit.mjs +3 -1
  151. package/build-module/post-template/edit.mjs.map +2 -2
  152. package/build-module/preformatted/index.mjs +0 -17
  153. package/build-module/preformatted/index.mjs.map +2 -2
  154. package/build-module/pullquote/index.mjs +0 -24
  155. package/build-module/pullquote/index.mjs.map +2 -2
  156. package/build-module/query/edit/inspector-controls/index.mjs +9 -4
  157. package/build-module/query/edit/inspector-controls/index.mjs.map +2 -2
  158. package/build-module/search/index.mjs +0 -31
  159. package/build-module/search/index.mjs.map +2 -2
  160. package/build-module/site-tagline/edit.mjs +13 -19
  161. package/build-module/site-tagline/edit.mjs.map +2 -2
  162. package/build-module/site-title/edit.mjs +14 -20
  163. package/build-module/site-title/edit.mjs.map +2 -2
  164. package/build-module/social-link/index.mjs +0 -31
  165. package/build-module/social-link/index.mjs.map +2 -2
  166. package/build-module/verse/index.mjs +0 -17
  167. package/build-module/verse/index.mjs.map +2 -2
  168. package/build-module/video/index.mjs +0 -40
  169. package/build-module/video/index.mjs.map +2 -2
  170. package/build-module/video/tracks-editor.mjs +3 -5
  171. package/build-module/video/tracks-editor.mjs.map +2 -2
  172. package/build-style/editor-rtl.css +8 -51
  173. package/build-style/editor.css +8 -51
  174. package/build-style/navigation/editor-rtl.css +8 -0
  175. package/build-style/navigation/editor.css +8 -0
  176. package/build-style/style-rtl.css +0 -47
  177. package/build-style/style.css +0 -47
  178. package/build-types/navigation-link/deprecated.d.ts +48 -0
  179. package/build-types/navigation-link/deprecated.d.ts.map +1 -0
  180. package/package.json +42 -43
  181. package/src/accordion/index.php +2 -2
  182. package/src/accordion-item/index.php +1 -1
  183. package/src/audio/edit.jsx +6 -7
  184. package/src/audio/index.js +0 -37
  185. package/src/breadcrumbs/index.php +4 -4
  186. package/src/button/index.js +0 -34
  187. package/src/button/test/get-experimental-label.jsdom.test.js +1 -0
  188. package/src/code/index.js +0 -18
  189. package/src/columns/test/transforms.jsdom.test.js +1 -0
  190. package/src/comment-template/index.php +2 -2
  191. package/src/cover/index.js +0 -39
  192. package/src/cover/test/edit.jsdom.test.js +18 -17
  193. package/src/cover/test/transforms.jsdom.test.js +1 -0
  194. package/src/details/index.js +0 -18
  195. package/src/editor.scss +0 -2
  196. package/src/embed/test/index.jsdom.test.js +5 -1
  197. package/src/file/index.js +1 -43
  198. package/src/footnotes/format.jsx +5 -1
  199. package/src/gallery/dynamic-gallery.jsx +5 -2
  200. package/src/gallery/test/edit.jsdom.test.js +4 -0
  201. package/src/gallery/test/transforms.jsdom.test.js +1 -0
  202. package/src/gallery/test/use-get-new-images.jsdom.test.jsx +1 -0
  203. package/src/group/test/placeholder.jsdom.test.jsx +1 -0
  204. package/src/heading/index.js +1 -22
  205. package/src/heading/index.php +1 -1
  206. package/src/home-link/index.php +2 -2
  207. package/src/html/test/index.jsdom.test.js +9 -0
  208. package/src/html/test/utils.jsdom.test.js +1 -0
  209. package/src/image/image.jsx +1 -4
  210. package/src/image/index.js +0 -80
  211. package/src/image/test/transforms.jsdom.test.js +1 -0
  212. package/src/image/test/use-open-image-media-editor-modal.jsdom.test.js +30 -29
  213. package/src/index.jsx +0 -11
  214. package/src/latest-posts/test/deprecated.jsdom.test.js +1 -0
  215. package/src/list/index.php +1 -1
  216. package/src/list-item/edit.jsx +20 -20
  217. package/src/list-item/hooks/index.js +2 -3
  218. package/src/list-item/hooks/use-enter.js +82 -70
  219. package/src/list-item/hooks/use-merge.js +28 -36
  220. package/src/list-item/hooks/use-multi-select-tab.js +83 -0
  221. package/src/list-item/hooks/use-tab.js +62 -0
  222. package/src/list-item/index.js +0 -18
  223. package/src/list-item/utils.js +236 -0
  224. package/src/media-text/index.js +0 -50
  225. package/src/media-text/media-container.jsx +22 -12
  226. package/src/more/index.js +0 -19
  227. package/src/navigation/constants.js +1 -1
  228. package/src/navigation/edit/test/layout-custom-properties.jsdom.test.js +8 -7
  229. package/src/navigation/edit/test/navigation-menu-selector.jsdom.test.jsx +23 -14
  230. package/src/navigation/edit/test/overlay-template-part-selector.jsdom.test.jsx +22 -20
  231. package/src/navigation/edit/test/responsive-wrapper.jsdom.test.jsx +14 -13
  232. package/src/navigation/edit/test/use-create-overlay.jsdom.test.js +19 -24
  233. package/src/navigation/editor.scss +13 -0
  234. package/src/navigation/index.php +14 -14
  235. package/src/navigation/test/menu-items-to-blocks.jsdom.test.js +3 -2
  236. package/src/navigation/test/use-navigation-menu.jsdom.test.js +7 -4
  237. package/src/navigation/test/view.jsdom.test.js +4 -2
  238. package/src/navigation-link/block.json +1 -1
  239. package/src/navigation-link/deprecated.tsx +58 -0
  240. package/src/navigation-link/{index.jsx → index.js} +5 -77
  241. package/src/navigation-link/index.php +5 -5
  242. package/src/navigation-link/shared/test/controls.jsdom.test.jsx +18 -18
  243. package/src/navigation-link/shared/test/use-enable-link-status-validation.jsdom.test.js +8 -6
  244. package/src/navigation-link/shared/test/use-entity-binding.jsdom.test.js +12 -11
  245. package/src/navigation-link/shared/test/use-handle-link-change.jsdom.test.js +23 -20
  246. package/src/navigation-link/shared/test/use-link-preview.jsdom.test.js +17 -14
  247. package/src/navigation-link/test/__snapshots__/hooks.jsdom.test.js.snap +2 -2
  248. package/src/navigation-link/test/hooks.jsdom.test.js +1 -0
  249. package/src/navigation-link/variations.js +19 -0
  250. package/src/navigation-submenu/index.js +1 -33
  251. package/src/page-list/index.php +10 -10
  252. package/src/page-list/test/convert-to-navigation-links.jsdom.test.js +3 -2
  253. package/src/paragraph/index.js +0 -18
  254. package/src/paragraph/use-enter.js +13 -6
  255. package/src/playlist/test/edit-component.jsdom.test.jsx +31 -30
  256. package/src/playlist/test/edit.jsdom.test.js +1 -0
  257. package/src/playlist/test/transforms.jsdom.test.js +1 -0
  258. package/src/playlist-track/test/edit.jsdom.test.jsx +20 -19
  259. package/src/post-author/index.php +3 -3
  260. package/src/post-author-biography/index.php +3 -3
  261. package/src/post-author-name/index.php +3 -3
  262. package/src/post-comments-link/index.php +4 -4
  263. package/src/post-date/test/edit.jsdom.test.js +1 -0
  264. package/src/post-template/edit.jsx +3 -1
  265. package/src/post-time-to-read/index.php +3 -3
  266. package/src/preformatted/index.js +0 -18
  267. package/src/pullquote/index.js +0 -24
  268. package/src/query/edit/inspector-controls/index.jsx +9 -4
  269. package/src/query/index.php +2 -2
  270. package/src/query/test/utils.jsdom.test.js +1 -0
  271. package/src/quote/test/migrate.jsdom.test.js +1 -0
  272. package/src/read-more/index.php +1 -1
  273. package/src/search/index.js +0 -30
  274. package/src/search/index.php +1 -1
  275. package/src/separator/test/edit.jsdom.test.jsx +5 -4
  276. package/src/site-logo/index.php +1 -1
  277. package/src/site-tagline/edit.jsx +18 -27
  278. package/src/site-title/edit.jsx +20 -27
  279. package/src/social-link/index.js +0 -32
  280. package/src/social-link/index.php +0 -1
  281. package/src/style.scss +0 -1
  282. package/src/table-of-contents/index.php +3 -3
  283. package/src/utils/test/style-state.jsdom.test.js +1 -0
  284. package/src/utils/test/waveform-player-dependency.jsdom.test.js +15 -21
  285. package/src/verse/index.js +0 -18
  286. package/src/video/index.js +0 -40
  287. package/src/video/tracks-editor.jsx +4 -5
  288. package/build/form/block.json +0 -65
  289. package/build/form/deprecated.cjs +0 -111
  290. package/build/form/deprecated.cjs.map +0 -7
  291. package/build/form/edit.cjs +0 -180
  292. package/build/form/edit.cjs.map +0 -7
  293. package/build/form/icons.cjs +0 -33
  294. package/build/form/icons.cjs.map +0 -7
  295. package/build/form/index.cjs +0 -118
  296. package/build/form/index.cjs.map +0 -7
  297. package/build/form/init.cjs +0 -28
  298. package/build/form/init.cjs.map +0 -7
  299. package/build/form/save.cjs +0 -40
  300. package/build/form/save.cjs.map +0 -7
  301. package/build/form/utils.cjs +0 -61
  302. package/build/form/utils.cjs.map +0 -7
  303. package/build/form/variations.cjs +0 -152
  304. package/build/form/variations.cjs.map +0 -7
  305. package/build/form/view.cjs +0 -48
  306. package/build/form/view.cjs.map +0 -7
  307. package/build/form-input/block.json +0 -72
  308. package/build/form-input/deprecated.cjs +0 -252
  309. package/build/form-input/deprecated.cjs.map +0 -7
  310. package/build/form-input/edit.cjs +0 -206
  311. package/build/form-input/edit.cjs.map +0 -7
  312. package/build/form-input/icons.cjs +0 -33
  313. package/build/form-input/icons.cjs.map +0 -7
  314. package/build/form-input/index.cjs +0 -63
  315. package/build/form-input/index.cjs.map +0 -7
  316. package/build/form-input/init.cjs +0 -28
  317. package/build/form-input/init.cjs.map +0 -7
  318. package/build/form-input/save.cjs +0 -88
  319. package/build/form-input/save.cjs.map +0 -7
  320. package/build/form-input/variations.cjs +0 -105
  321. package/build/form-input/variations.cjs.map +0 -7
  322. package/build/form-submission-notification/block.json +0 -19
  323. package/build/form-submission-notification/edit.cjs +0 -71
  324. package/build/form-submission-notification/edit.cjs.map +0 -7
  325. package/build/form-submission-notification/index.cjs +0 -73
  326. package/build/form-submission-notification/index.cjs.map +0 -7
  327. package/build/form-submission-notification/init.cjs +0 -28
  328. package/build/form-submission-notification/init.cjs.map +0 -7
  329. package/build/form-submission-notification/save.cjs +0 -54
  330. package/build/form-submission-notification/save.cjs.map +0 -7
  331. package/build/form-submission-notification/variations.cjs +0 -78
  332. package/build/form-submission-notification/variations.cjs.map +0 -7
  333. package/build/form-submit-button/block.json +0 -15
  334. package/build/form-submit-button/edit.cjs +0 -36
  335. package/build/form-submit-button/edit.cjs.map +0 -7
  336. package/build/form-submit-button/index.cjs +0 -75
  337. package/build/form-submit-button/index.cjs.map +0 -7
  338. package/build/form-submit-button/init.cjs.map +0 -7
  339. package/build/form-submit-button/save.cjs +0 -32
  340. package/build/form-submit-button/save.cjs.map +0 -7
  341. package/build/list-item/hooks/use-indent-list-item.cjs +0 -79
  342. package/build/list-item/hooks/use-indent-list-item.cjs.map +0 -7
  343. package/build/list-item/hooks/use-outdent-list-item.cjs +0 -106
  344. package/build/list-item/hooks/use-outdent-list-item.cjs.map +0 -7
  345. package/build/list-item/hooks/use-space.cjs +0 -83
  346. package/build/list-item/hooks/use-space.cjs.map +0 -7
  347. package/build-module/form/block.json +0 -65
  348. package/build-module/form/deprecated.mjs +0 -96
  349. package/build-module/form/deprecated.mjs.map +0 -7
  350. package/build-module/form/edit.mjs +0 -170
  351. package/build-module/form/edit.mjs.map +0 -7
  352. package/build-module/form/icons.mjs +0 -8
  353. package/build-module/form/icons.mjs.map +0 -7
  354. package/build-module/form/index.mjs +0 -83
  355. package/build-module/form/index.mjs.map +0 -7
  356. package/build-module/form/init.mjs +0 -7
  357. package/build-module/form/init.mjs.map +0 -7
  358. package/build-module/form/save.mjs +0 -19
  359. package/build-module/form/save.mjs.map +0 -7
  360. package/build-module/form/utils.mjs +0 -35
  361. package/build-module/form/utils.mjs.map +0 -7
  362. package/build-module/form/variations.mjs +0 -134
  363. package/build-module/form/variations.mjs.map +0 -7
  364. package/build-module/form/view.mjs +0 -46
  365. package/build-module/form/view.mjs.map +0 -7
  366. package/build-module/form-input/block.json +0 -72
  367. package/build-module/form-input/deprecated.mjs +0 -226
  368. package/build-module/form-input/deprecated.mjs.map +0 -7
  369. package/build-module/form-input/edit.mjs +0 -186
  370. package/build-module/form-input/edit.mjs.map +0 -7
  371. package/build-module/form-input/icons.mjs +0 -8
  372. package/build-module/form-input/icons.mjs.map +0 -7
  373. package/build-module/form-input/index.mjs +0 -25
  374. package/build-module/form-input/index.mjs.map +0 -7
  375. package/build-module/form-input/init.mjs +0 -7
  376. package/build-module/form-input/init.mjs.map +0 -7
  377. package/build-module/form-input/save.mjs +0 -62
  378. package/build-module/form-input/save.mjs.map +0 -7
  379. package/build-module/form-input/variations.mjs +0 -84
  380. package/build-module/form-input/variations.mjs.map +0 -7
  381. package/build-module/form-submission-notification/block.json +0 -19
  382. package/build-module/form-submission-notification/edit.mjs +0 -45
  383. package/build-module/form-submission-notification/edit.mjs.map +0 -7
  384. package/build-module/form-submission-notification/index.mjs +0 -35
  385. package/build-module/form-submission-notification/index.mjs.map +0 -7
  386. package/build-module/form-submission-notification/init.mjs +0 -7
  387. package/build-module/form-submission-notification/init.mjs.map +0 -7
  388. package/build-module/form-submission-notification/save.mjs +0 -23
  389. package/build-module/form-submission-notification/save.mjs.map +0 -7
  390. package/build-module/form-submission-notification/variations.mjs +0 -57
  391. package/build-module/form-submission-notification/variations.mjs.map +0 -7
  392. package/build-module/form-submit-button/block.json +0 -15
  393. package/build-module/form-submit-button/edit.mjs +0 -15
  394. package/build-module/form-submit-button/edit.mjs.map +0 -7
  395. package/build-module/form-submit-button/index.mjs +0 -37
  396. package/build-module/form-submit-button/index.mjs.map +0 -7
  397. package/build-module/form-submit-button/init.mjs +0 -7
  398. package/build-module/form-submit-button/init.mjs.map +0 -7
  399. package/build-module/form-submit-button/save.mjs +0 -11
  400. package/build-module/form-submit-button/save.mjs.map +0 -7
  401. package/build-module/list-item/hooks/use-indent-list-item.mjs +0 -58
  402. package/build-module/list-item/hooks/use-indent-list-item.mjs.map +0 -7
  403. package/build-module/list-item/hooks/use-outdent-list-item.mjs +0 -85
  404. package/build-module/list-item/hooks/use-outdent-list-item.mjs.map +0 -7
  405. package/build-module/list-item/hooks/use-space.mjs +0 -52
  406. package/build-module/list-item/hooks/use-space.mjs.map +0 -7
  407. package/build-style/form-input/editor-rtl.css +0 -19
  408. package/build-style/form-input/editor.css +0 -19
  409. package/build-style/form-input/style-rtl.css +0 -46
  410. package/build-style/form-input/style.css +0 -46
  411. package/build-style/form-submission-notification/editor-rtl.css +0 -30
  412. package/build-style/form-submission-notification/editor.css +0 -30
  413. package/build-style/form-submit-button/style-rtl.css +0 -3
  414. package/build-style/form-submit-button/style.css +0 -3
  415. package/src/form/README.md +0 -90
  416. package/src/form/block.json +0 -65
  417. package/src/form/deprecated.jsx +0 -93
  418. package/src/form/edit.jsx +0 -169
  419. package/src/form/icons.jsx +0 -7
  420. package/src/form/index.js +0 -91
  421. package/src/form/index.php +0 -197
  422. package/src/form/init.js +0 -3
  423. package/src/form/save.jsx +0 -15
  424. package/src/form/utils.js +0 -36
  425. package/src/form/variations.js +0 -133
  426. package/src/form/view.js +0 -54
  427. package/src/form-input/README.md +0 -74
  428. package/src/form-input/block.json +0 -72
  429. package/src/form-input/deprecated.jsx +0 -248
  430. package/src/form-input/edit.jsx +0 -187
  431. package/src/form-input/editor.scss +0 -24
  432. package/src/form-input/icons.jsx +0 -7
  433. package/src/form-input/index.js +0 -22
  434. package/src/form-input/index.php +0 -47
  435. package/src/form-input/init.js +0 -3
  436. package/src/form-input/save.jsx +0 -89
  437. package/src/form-input/style.scss +0 -64
  438. package/src/form-input/variations.js +0 -82
  439. package/src/form-submission-notification/README.md +0 -50
  440. package/src/form-submission-notification/block.json +0 -19
  441. package/src/form-submission-notification/edit.jsx +0 -44
  442. package/src/form-submission-notification/editor.scss +0 -45
  443. package/src/form-submission-notification/index.js +0 -33
  444. package/src/form-submission-notification/index.php +0 -48
  445. package/src/form-submission-notification/init.js +0 -3
  446. package/src/form-submission-notification/save.jsx +0 -18
  447. package/src/form-submission-notification/variations.js +0 -56
  448. package/src/form-submit-button/README.md +0 -54
  449. package/src/form-submit-button/block.json +0 -15
  450. package/src/form-submit-button/edit.jsx +0 -12
  451. package/src/form-submit-button/index.js +0 -35
  452. package/src/form-submit-button/init.js +0 -3
  453. package/src/form-submit-button/save.jsx +0 -10
  454. package/src/form-submit-button/style.scss +0 -3
  455. package/src/list-item/hooks/use-indent-list-item.js +0 -73
  456. package/src/list-item/hooks/use-outdent-list-item.js +0 -100
  457. package/src/list-item/hooks/use-space.js +0 -66
@@ -0,0 +1,83 @@
1
+ import { useRefEffect } from '@wordpress/compose';
2
+ import { TAB } from '@wordpress/keycodes';
3
+ import { store as blockEditorStore } from '@wordpress/block-editor';
4
+ import { useSelect, useRegistry } from '@wordpress/data';
5
+ import { indentListItems, outdentListItems } from '../utils';
6
+
7
+ export default function useMultiSelectTab( clientId ) {
8
+ const registry = useRegistry();
9
+ // Only the first item of an all-list-item multi selection attaches the
10
+ // listener, so there is a single handler regardless of how many list items
11
+ // are rendered, and only while such a selection exists.
12
+ const isActive = useSelect(
13
+ ( select ) => {
14
+ const {
15
+ hasMultiSelection,
16
+ getMultiSelectedBlockClientIds,
17
+ getBlockName,
18
+ } = select( blockEditorStore );
19
+ if ( ! hasMultiSelection() ) {
20
+ return false;
21
+ }
22
+ const clientIds = getMultiSelectedBlockClientIds();
23
+ return (
24
+ clientIds[ 0 ] === clientId &&
25
+ clientIds.every(
26
+ ( id ) => getBlockName( id ) === 'core/list-item'
27
+ )
28
+ );
29
+ },
30
+ [ clientId ]
31
+ );
32
+
33
+ return useRefEffect(
34
+ ( element ) => {
35
+ if ( ! isActive ) {
36
+ return;
37
+ }
38
+
39
+ function onKeyDown( event ) {
40
+ const { keyCode, shiftKey, altKey, metaKey, ctrlKey } = event;
41
+
42
+ if (
43
+ keyCode !== TAB ||
44
+ event.defaultPrevented ||
45
+ altKey ||
46
+ metaKey ||
47
+ ctrlKey
48
+ ) {
49
+ return;
50
+ }
51
+
52
+ // The listener is on the document, so it also sees a Tab from
53
+ // other editor UI while the multi selection lingers (moving
54
+ // focus does not clear it). A multi selection keeps focus on the
55
+ // canvas host that wraps the blocks, so only act when the key
56
+ // comes from an ancestor of them, not from a toolbar or panel.
57
+ if ( ! event.target.contains( element ) ) {
58
+ return;
59
+ }
60
+
61
+ if ( shiftKey ) {
62
+ if ( outdentListItems( registry ) ) {
63
+ event.preventDefault();
64
+ }
65
+ } else if ( indentListItems( registry ) ) {
66
+ event.preventDefault();
67
+ }
68
+ }
69
+
70
+ // During a multi selection focus sits on the writing flow
71
+ // container, not inside any item, so an element listener never sees
72
+ // the key. Listen on the document. Capture phase so we run before
73
+ // writing-flow's keydown handlers, which gate on
74
+ // `event.defaultPrevented`.
75
+ const { ownerDocument } = element;
76
+ ownerDocument.addEventListener( 'keydown', onKeyDown, true );
77
+ return () => {
78
+ ownerDocument.removeEventListener( 'keydown', onKeyDown, true );
79
+ };
80
+ },
81
+ [ isActive, registry ]
82
+ );
83
+ }
@@ -0,0 +1,62 @@
1
+ import { useRefEffect } from '@wordpress/compose';
2
+ import { privateApis as richTextPrivateApis } from '@wordpress/rich-text';
3
+ import { SPACE, TAB } from '@wordpress/keycodes';
4
+ import { store as blockEditorStore } from '@wordpress/block-editor';
5
+ import { useRegistry } from '@wordpress/data';
6
+ import { isEntirelySelected } from '@wordpress/dom';
7
+ import { indentListItems, outdentListItems } from '../utils';
8
+ import { unlock } from '../../lock-unlock';
9
+
10
+ const { subscribeOwnedListener } = unlock( richTextPrivateApis );
11
+
12
+ export default function useTab() {
13
+ const registry = useRegistry();
14
+
15
+ return useRefEffect(
16
+ ( element ) => {
17
+ function onKeyDown( event ) {
18
+ const { keyCode, shiftKey, altKey, metaKey, ctrlKey } = event;
19
+
20
+ if (
21
+ event.defaultPrevented ||
22
+ ( keyCode !== SPACE && keyCode !== TAB ) ||
23
+ // Shift selects outdent; other modifiers pass through.
24
+ altKey ||
25
+ metaKey ||
26
+ ctrlKey
27
+ ) {
28
+ return;
29
+ }
30
+
31
+ const { getSelectionStart, getSelectionEnd } =
32
+ registry.select( blockEditorStore );
33
+ const isAtStart =
34
+ getSelectionStart().offset === 0 &&
35
+ getSelectionEnd().offset === 0;
36
+
37
+ // Both keys act at the start of an item; Tab also acts on a
38
+ // full selection.
39
+ if (
40
+ ! isAtStart &&
41
+ ! ( keyCode === TAB && isEntirelySelected( element ) )
42
+ ) {
43
+ return;
44
+ }
45
+ const move = shiftKey ? outdentListItems : indentListItems;
46
+ if ( move( registry ) ) {
47
+ event.preventDefault();
48
+ }
49
+ }
50
+
51
+ // Capture phase so we run before writing-flow's ancestor-bubble
52
+ // keydown handlers that gate on `event.defaultPrevented`.
53
+ return subscribeOwnedListener(
54
+ element,
55
+ 'keydown',
56
+ onKeyDown,
57
+ true
58
+ );
59
+ },
60
+ [ registry ]
61
+ );
62
+ }
@@ -1,7 +1,5 @@
1
- import { __ } from '@wordpress/i18n';
2
1
  import { listItem as icon } from '@wordpress/icons';
3
2
  import { privateApis } from '@wordpress/block-editor';
4
- import { privateApis as blocksPrivateApis } from '@wordpress/blocks';
5
3
  import initBlock from '../utils/init-block';
6
4
  import metadata from './block.json';
7
5
  import edit from './edit';
@@ -9,8 +7,6 @@ import save from './save';
9
7
  import transforms from './transforms';
10
8
  import { unlock } from '../lock-unlock';
11
9
 
12
- const { fieldsKey, formKey } = unlock( blocksPrivateApis );
13
-
14
10
  const { name } = metadata;
15
11
 
16
12
  export { metadata, name };
@@ -45,18 +41,4 @@ export const settings = {
45
41
  },
46
42
  };
47
43
 
48
- if ( window.__experimentalContentOnlyInspectorFields ) {
49
- settings[ fieldsKey ] = [
50
- {
51
- id: 'content',
52
- label: __( 'Content' ),
53
- type: 'text',
54
- Edit: 'rich-text', // TODO: replace with custom component
55
- },
56
- ];
57
- settings[ formKey ] = {
58
- fields: [ 'content' ],
59
- };
60
- }
61
-
62
44
  export const init = () => initBlock( { name, metadata, settings } );
@@ -0,0 +1,236 @@
1
+ import { store as blockEditorStore } from '@wordpress/block-editor';
2
+ import { cloneBlock } from '@wordpress/blocks';
3
+
4
+ /**
5
+ * The previous sibling to nest a list item under when indenting, or undefined
6
+ * for the first item, which has no sibling to nest under.
7
+ *
8
+ * @param {Object} select The block editor store's selectors.
9
+ * @param {string} clientId The list item's client ID.
10
+ *
11
+ * @return {string|undefined} The client ID to nest the item under.
12
+ */
13
+ export function getIndentTarget( select, clientId ) {
14
+ return select.getPreviousBlockClientId( clientId );
15
+ }
16
+
17
+ /**
18
+ * The ancestor list item the given item's list is nested in when outdenting, or
19
+ * undefined at the top level, where there is nothing to outdent to.
20
+ *
21
+ * @param {Object} select The block editor store's selectors.
22
+ * @param {string} clientId The list item's client ID.
23
+ *
24
+ * @return {string|undefined} The ancestor list item's client ID.
25
+ */
26
+ export function getOutdentTarget( select, clientId ) {
27
+ const listId = select.getBlockRootClientId( clientId );
28
+ const parentListItemId = select.getBlockRootClientId( listId );
29
+ if (
30
+ ! parentListItemId ||
31
+ select.getBlockName( parentListItemId ) !== 'core/list-item'
32
+ ) {
33
+ return undefined;
34
+ }
35
+ return parentListItemId;
36
+ }
37
+
38
+ /**
39
+ * Moves blocks into a list item's nested list, keeping their client IDs. If the
40
+ * list item has no nested list yet, one is created from the source list so it
41
+ * inherits its attributes.
42
+ *
43
+ * @param {Object} registry The data registry.
44
+ * @param {string[]} clientIds The blocks to move.
45
+ * @param {string} sourceListId The list the blocks currently live in, also
46
+ * cloned when a nested list has to be created.
47
+ * @param {string} listItemId The list item to nest the blocks under.
48
+ */
49
+ export function moveBlocksToNestedList(
50
+ registry,
51
+ clientIds,
52
+ sourceListId,
53
+ listItemId
54
+ ) {
55
+ const { getBlockOrder, getBlock } = registry.select( blockEditorStore );
56
+ const { moveBlocksToPosition, removeBlocks, insertBlock } =
57
+ registry.dispatch( blockEditorStore );
58
+ // A list item can hold more than one nested list; append to the last one,
59
+ // the same subtree a reader sees at the end of the item.
60
+ const nestedLists = getBlockOrder( listItemId );
61
+ const nestedListId = nestedLists[ nestedLists.length - 1 ];
62
+
63
+ if ( nestedListId ) {
64
+ moveBlocksToPosition( clientIds, sourceListId, nestedListId );
65
+ return;
66
+ }
67
+
68
+ // Insert the list with the items already inside: an empty list would be
69
+ // scaffolded with the list block type's template, and moving into a freshly
70
+ // created list would fail its canInsert check. Cloning the source list keeps
71
+ // its attributes; passing the items as inner blocks keeps their client IDs.
72
+ const nestedList = cloneBlock(
73
+ getBlock( sourceListId ),
74
+ {},
75
+ clientIds.map( ( id ) => getBlock( id ) )
76
+ );
77
+ // Remove and re-insert in one batch so the blocks are never momentarily
78
+ // detached. A caller batch nests harmlessly: only the outermost flushes.
79
+ registry.batch( () => {
80
+ removeBlocks( clientIds, false );
81
+ insertBlock( nestedList, 0, listItemId, false );
82
+ } );
83
+ }
84
+
85
+ /**
86
+ * Indents the selected list items, nesting them under the previous sibling of
87
+ * the given item. Defaults to the first selected item.
88
+ *
89
+ * @param {Object} registry The data registry.
90
+ * @param {string} [clientId] The list item providing the sibling to nest under.
91
+ *
92
+ * @return {boolean} Whether the items were indented.
93
+ */
94
+ export function indentListItems( registry, clientId ) {
95
+ const select = registry.select( blockEditorStore );
96
+ const {
97
+ getBlockRootClientId,
98
+ getSelectedBlockClientIds,
99
+ getSelectionStart,
100
+ getSelectionEnd,
101
+ hasMultiSelection,
102
+ getMultiSelectedBlockClientIds,
103
+ } = select;
104
+ const { selectionChange, multiSelect } =
105
+ registry.dispatch( blockEditorStore );
106
+
107
+ const _hasMultiSelection = hasMultiSelection();
108
+ const clientIds = _hasMultiSelection
109
+ ? getMultiSelectedBlockClientIds()
110
+ : getSelectedBlockClientIds();
111
+
112
+ if ( clientId === undefined ) {
113
+ clientId = clientIds[ 0 ];
114
+ }
115
+
116
+ const previousSiblingId = getIndentTarget( select, clientId );
117
+
118
+ // Can't indent the first item: there is no sibling to nest it under.
119
+ if ( ! previousSiblingId ) {
120
+ return false;
121
+ }
122
+
123
+ const rootClientId = getBlockRootClientId( clientId );
124
+ // Read the selection before the move: creating a nested list removes and
125
+ // re-inserts the items, which drops it.
126
+ const selectionStart = getSelectionStart();
127
+ const selectionEnd = getSelectionEnd();
128
+
129
+ registry.batch( () => {
130
+ moveBlocksToNestedList(
131
+ registry,
132
+ clientIds,
133
+ rootClientId,
134
+ previousSiblingId
135
+ );
136
+
137
+ // Put the selection back on the same blocks (client IDs are kept).
138
+ if ( ! _hasMultiSelection ) {
139
+ selectionChange(
140
+ clientIds[ 0 ],
141
+ selectionEnd.attributeKey,
142
+ selectionEnd.clientId === selectionStart.clientId
143
+ ? selectionStart.offset
144
+ : selectionEnd.offset,
145
+ selectionEnd.offset
146
+ );
147
+ } else {
148
+ multiSelect( clientIds[ 0 ], clientIds[ clientIds.length - 1 ] );
149
+ }
150
+ } );
151
+
152
+ return true;
153
+ }
154
+
155
+ /**
156
+ * Outdents list items, moving them up a level. Defaults to the selected items;
157
+ * a specific set can be passed, e.g. to outdent an item's children.
158
+ *
159
+ * @param {Object} registry The data registry.
160
+ * @param {string[]|string} [clientIds] The list items to outdent.
161
+ *
162
+ * @return {boolean} Whether the items were outdented.
163
+ */
164
+ export function outdentListItems( registry, clientIds ) {
165
+ const select = registry.select( blockEditorStore );
166
+ const {
167
+ getBlockRootClientId,
168
+ getBlockName,
169
+ getBlockOrder,
170
+ getBlockIndex,
171
+ getSelectedBlockClientIds,
172
+ } = select;
173
+ const { moveBlocksToPosition, removeBlock, multiSelect } =
174
+ registry.dispatch( blockEditorStore );
175
+
176
+ if ( clientIds === undefined ) {
177
+ clientIds = getSelectedBlockClientIds();
178
+ }
179
+
180
+ if ( ! Array.isArray( clientIds ) ) {
181
+ clientIds = [ clientIds ];
182
+ }
183
+
184
+ if ( ! clientIds.length ) {
185
+ return false;
186
+ }
187
+
188
+ const firstClientId = clientIds[ 0 ];
189
+
190
+ // Can't outdent if it's not a list item.
191
+ if ( getBlockName( firstClientId ) !== 'core/list-item' ) {
192
+ return false;
193
+ }
194
+
195
+ // Can't outdent if it's at the top level.
196
+ const parentListItemId = getOutdentTarget( select, firstClientId );
197
+ if ( ! parentListItemId ) {
198
+ return false;
199
+ }
200
+
201
+ const parentListId = getBlockRootClientId( firstClientId );
202
+ const lastClientId = clientIds[ clientIds.length - 1 ];
203
+ const order = getBlockOrder( parentListId );
204
+ const followingListItems = order.slice( getBlockIndex( lastClientId ) + 1 );
205
+
206
+ registry.batch( () => {
207
+ if ( followingListItems.length ) {
208
+ // Nest the items that follow under the outdented item so they keep
209
+ // their place below it.
210
+ moveBlocksToNestedList(
211
+ registry,
212
+ followingListItems,
213
+ parentListId,
214
+ firstClientId
215
+ );
216
+ }
217
+ moveBlocksToPosition(
218
+ clientIds,
219
+ parentListId,
220
+ getBlockRootClientId( parentListItemId ),
221
+ getBlockIndex( parentListItemId ) + 1
222
+ );
223
+ if ( ! getBlockOrder( parentListId ).length ) {
224
+ const shouldSelectParent = false;
225
+ removeBlock( parentListId, shouldSelectParent );
226
+ }
227
+
228
+ // Reset the lingering partial cross-block range to a whole block
229
+ // selection. A single caret is preserved by the store on its own.
230
+ if ( clientIds.length > 1 ) {
231
+ multiSelect( firstClientId, lastClientId );
232
+ }
233
+ } );
234
+
235
+ return true;
236
+ }
@@ -1,6 +1,5 @@
1
1
  import { __ } from '@wordpress/i18n';
2
2
  import { mediaAndText as icon } from '@wordpress/icons';
3
- import { privateApis as blocksPrivateApis } from '@wordpress/blocks';
4
3
  import initBlock from '../utils/init-block';
5
4
  import { TEMPLATE } from './constants';
6
5
  import deprecated from './deprecated';
@@ -8,9 +7,6 @@ import edit from './edit';
8
7
  import metadata from './block.json';
9
8
  import save from './save';
10
9
  import transforms from './transforms';
11
- import { unlock } from '../lock-unlock';
12
-
13
- const { fieldsKey, formKey } = unlock( blocksPrivateApis );
14
10
 
15
11
  const { name } = metadata;
16
12
 
@@ -49,50 +45,4 @@ export const settings = {
49
45
  deprecated,
50
46
  };
51
47
 
52
- if ( window.__experimentalContentOnlyInspectorFields ) {
53
- settings[ fieldsKey ] = [
54
- {
55
- id: 'media',
56
- label: __( 'Media' ),
57
- type: 'media',
58
- Edit: {
59
- control: 'media', // TODO: replace with custom component
60
- allowedTypes: [ 'image', 'video' ],
61
- multiple: false,
62
- },
63
- getValue: ( { item } ) => ( {
64
- id: item.mediaId,
65
- url: item.mediaUrl,
66
- mediaType: item.mediaType,
67
- link: item.mediaLink,
68
- } ),
69
- setValue: ( { value } ) => ( {
70
- mediaId: value.id,
71
- mediaUrl: value.url,
72
- mediaType: value.mediaType,
73
- mediaLink: value.link,
74
- } ),
75
- },
76
- {
77
- id: 'link',
78
- label: __( 'Link' ),
79
- type: 'url',
80
- Edit: 'link', // TODO: replace with custom component
81
- getValue: ( { item } ) => ( {
82
- url: item.href,
83
- rel: item.rel,
84
- linkTarget: item.linkTarget,
85
- } ),
86
- setValue: ( { value } ) => ( {
87
- href: value.url,
88
- rel: value.rel,
89
- linkTarget: value.linkTarget,
90
- } ),
91
- },
92
- ];
93
- settings[ formKey ] = {
94
- fields: [ 'media', 'link' ],
95
- };
96
- }
97
-
98
48
  export const init = () => initBlock( { name, metadata, settings } );
@@ -53,6 +53,7 @@ function ToolbarEditButton( {
53
53
  onSelect={ onSelectMedia }
54
54
  onToggleFeaturedImage={ toggleUseFeaturedImage }
55
55
  useFeaturedImage={ useFeaturedImage }
56
+ name={ mediaUrl ? __( 'Replace' ) : __( 'Add media' ) }
56
57
  onReset={ () => onSelectMedia( undefined ) }
57
58
  />
58
59
  </BlockControls>
@@ -122,6 +123,20 @@ function MediaContainer( props, ref ) {
122
123
 
123
124
  const { toggleSelection } = useDispatch( blockEditorStore );
124
125
 
126
+ const toolbarEditButton = (
127
+ <ToolbarEditButton
128
+ onSelectMedia={ onSelectMedia }
129
+ mediaUrl={
130
+ useFeaturedImage && featuredImageURL
131
+ ? featuredImageURL
132
+ : mediaUrl
133
+ }
134
+ mediaId={ mediaId }
135
+ toggleUseFeaturedImage={ toggleUseFeaturedImage }
136
+ useFeaturedImage={ useFeaturedImage }
137
+ />
138
+ );
139
+
125
140
  if ( mediaUrl || featuredImageURL || useFeaturedImage ) {
126
141
  const onResizeStart = () => {
127
142
  toggleSelection( false );
@@ -185,17 +200,7 @@ function MediaContainer( props, ref ) {
185
200
  isStackedOnMobile={ isStackedOnMobile }
186
201
  ref={ ref }
187
202
  >
188
- <ToolbarEditButton
189
- onSelectMedia={ onSelectMedia }
190
- mediaUrl={
191
- useFeaturedImage && featuredImageURL
192
- ? featuredImageURL
193
- : mediaUrl
194
- }
195
- mediaId={ mediaId }
196
- toggleUseFeaturedImage={ toggleUseFeaturedImage }
197
- useFeaturedImage={ useFeaturedImage }
198
- />
203
+ { toolbarEditButton }
199
204
  { ( mediaTypeRenderers[ mediaType ] || noop )() }
200
205
  { isTemporaryMedia && <Spinner /> }
201
206
  { ! useFeaturedImage && <PlaceholderContainer { ...props } /> }
@@ -210,7 +215,12 @@ function MediaContainer( props, ref ) {
210
215
  );
211
216
  }
212
217
 
213
- return <PlaceholderContainer { ...props } />;
218
+ return (
219
+ <>
220
+ { toolbarEditButton }
221
+ <PlaceholderContainer { ...props } />
222
+ </>
223
+ );
214
224
  }
215
225
 
216
226
  export default forwardRef( MediaContainer );
package/src/more/index.js CHANGED
@@ -1,14 +1,9 @@
1
1
  import { more as icon } from '@wordpress/icons';
2
- import { __ } from '@wordpress/i18n';
3
- import { privateApis as blocksPrivateApis } from '@wordpress/blocks';
4
2
  import initBlock from '../utils/init-block';
5
3
  import edit from './edit';
6
4
  import metadata from './block.json';
7
5
  import save from './save';
8
6
  import transforms from './transforms';
9
- import { unlock } from '../lock-unlock';
10
-
11
- const { fieldsKey, formKey } = unlock( blocksPrivateApis );
12
7
 
13
8
  const { name } = metadata;
14
9
 
@@ -36,18 +31,4 @@ export const settings = {
36
31
  save,
37
32
  };
38
33
 
39
- if ( window.__experimentalContentOnlyInspectorFields ) {
40
- settings[ fieldsKey ] = [
41
- {
42
- id: 'customText',
43
- label: __( 'Content' ),
44
- type: 'text',
45
- Edit: 'rich-text', // TODO: replace with custom component
46
- },
47
- ];
48
- settings[ formKey ] = {
49
- fields: [ 'customText' ],
50
- };
51
- }
52
-
53
34
  export const init = () => initBlock( { name, metadata, settings } );
@@ -8,7 +8,7 @@ export const DEFAULT_BLOCK = {
8
8
 
9
9
  export const PRIORITIZED_INSERTER_BLOCKS = [
10
10
  'core/navigation-link/page',
11
- 'core/navigation-link',
11
+ 'core/navigation-link/custom-link',
12
12
  ];
13
13
 
14
14
  // These parameters must be kept aligned with those in
@@ -1,19 +1,20 @@
1
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
1
2
  import { renderHook } from '@testing-library/react';
2
3
  import { useSettings, useStyleOverride } from '@wordpress/block-editor';
3
4
  import useLayoutCustomProperties from '../use-layout-custom-properties';
4
5
 
5
- const mockGetResponsiveMediaQueries = jest.fn();
6
+ const mockGetResponsiveMediaQueries = vi.fn();
6
7
 
7
- jest.mock( '@wordpress/block-editor', () => ( {
8
- useSettings: jest.fn(),
9
- useStyleOverride: jest.fn(),
8
+ vi.mock( import( '@wordpress/block-editor' ), () => ( {
9
+ useSettings: vi.fn(),
10
+ useStyleOverride: vi.fn(),
10
11
  } ) );
11
12
 
12
- jest.mock( '@wordpress/global-styles-engine', () => ( {
13
+ vi.mock( import( '@wordpress/global-styles-engine' ), () => ( {
13
14
  privateApis: {},
14
15
  } ) );
15
16
 
16
- jest.mock( '../../../lock-unlock', () => ( {
17
+ vi.mock( import( '../../../lock-unlock' ), () => ( {
17
18
  unlock: () => ( {
18
19
  getResponsiveMediaQueries: ( ...args ) =>
19
20
  mockGetResponsiveMediaQueries( ...args ),
@@ -22,7 +23,7 @@ jest.mock( '../../../lock-unlock', () => ( {
22
23
 
23
24
  describe( 'Navigation layout custom properties', () => {
24
25
  beforeEach( () => {
25
- jest.clearAllMocks();
26
+ vi.clearAllMocks();
26
27
  useSettings.mockReturnValue( [ { mobile: 480, tablet: 782 } ] );
27
28
  mockGetResponsiveMediaQueries.mockReturnValue( {
28
29
  '@tablet': '@media (480px < width <= 782px)',