@wordpress/block-library 9.48.0 → 10.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 (1102) hide show
  1. package/CHANGELOG.md +19 -1
  2. package/build/audio/edit.cjs +8 -1
  3. package/build/audio/edit.cjs.map +2 -2
  4. package/build/breadcrumbs/edit.cjs +1 -2
  5. package/build/breadcrumbs/edit.cjs.map +2 -2
  6. package/build/button/edit.cjs +1 -2
  7. package/build/button/edit.cjs.map +2 -2
  8. package/build/categories/edit.cjs +1 -1
  9. package/build/categories/edit.cjs.map +1 -1
  10. package/build/code/edit.cjs +1 -1
  11. package/build/code/edit.cjs.map +2 -2
  12. package/build/code/index.cjs +1 -1
  13. package/build/code/index.cjs.map +1 -1
  14. package/build/columns/transforms.cjs +65 -0
  15. package/build/columns/transforms.cjs.map +2 -2
  16. package/build/columns/utils.cjs.map +1 -1
  17. package/build/comments/edit/comments-legacy.cjs +1 -1
  18. package/build/comments/edit/comments-legacy.cjs.map +1 -1
  19. package/build/comments/edit/placeholder.cjs +4 -4
  20. package/build/comments/edit/placeholder.cjs.map +1 -1
  21. package/build/comments-pagination-next/edit.cjs +2 -2
  22. package/build/comments-pagination-next/edit.cjs.map +1 -1
  23. package/build/comments-pagination-previous/edit.cjs +2 -2
  24. package/build/comments-pagination-previous/edit.cjs.map +1 -1
  25. package/build/cover/deprecated.cjs +3 -3
  26. package/build/cover/deprecated.cjs.map +2 -2
  27. package/build/cover/edit/block-controls.cjs +13 -0
  28. package/build/cover/edit/block-controls.cjs.map +2 -2
  29. package/build/cover/edit/embed-video-url-input.cjs +0 -1
  30. package/build/cover/edit/embed-video-url-input.cjs.map +2 -2
  31. package/build/cover/edit/index.cjs +61 -2
  32. package/build/cover/edit/index.cjs.map +3 -3
  33. package/build/cover/edit/inspector-controls.cjs +93 -35
  34. package/build/cover/edit/inspector-controls.cjs.map +2 -2
  35. package/build/details/edit.cjs +1 -2
  36. package/build/details/edit.cjs.map +2 -2
  37. package/build/embed/embed-placeholder.cjs +1 -1
  38. package/build/embed/embed-placeholder.cjs.map +2 -2
  39. package/build/file/edit.cjs +3 -11
  40. package/build/file/edit.cjs.map +2 -2
  41. package/build/file/index.cjs +3 -1
  42. package/build/file/index.cjs.map +3 -3
  43. package/build/file/transforms.cjs +11 -32
  44. package/build/file/transforms.cjs.map +2 -2
  45. package/build/{freeform/convert-to-blocks-button.cjs → file/variations.cjs} +16 -18
  46. package/build/file/variations.cjs.map +7 -0
  47. package/build/footnotes/edit.cjs +1 -1
  48. package/build/footnotes/edit.cjs.map +2 -2
  49. package/build/form/edit.cjs +0 -2
  50. package/build/form/edit.cjs.map +2 -2
  51. package/build/form-input/edit.cjs +1 -3
  52. package/build/form-input/edit.cjs.map +2 -2
  53. package/build/freeform/edit.cjs +6 -15
  54. package/build/freeform/edit.cjs.map +3 -3
  55. package/build/freeform/migration-notice.cjs.map +2 -2
  56. package/build/gallery/edit.cjs +212 -331
  57. package/build/gallery/edit.cjs.map +2 -2
  58. package/build/gallery/transforms.cjs +43 -0
  59. package/build/gallery/transforms.cjs.map +2 -2
  60. package/build/heading/edit.cjs +0 -1
  61. package/build/heading/edit.cjs.map +2 -2
  62. package/build/home-link/edit.cjs +1 -2
  63. package/build/home-link/edit.cjs.map +2 -2
  64. package/build/html/index.cjs +1 -1
  65. package/build/html/index.cjs.map +2 -2
  66. package/build/html/modal.cjs +9 -6
  67. package/build/html/modal.cjs.map +2 -2
  68. package/build/icon/block.json +12 -0
  69. package/build/icon/edit.cjs +90 -41
  70. package/build/icon/edit.cjs.map +3 -3
  71. package/build/icon/index.cjs +3 -1
  72. package/build/icon/index.cjs.map +3 -3
  73. package/build/{tab/save.cjs → icon/variations.cjs} +14 -15
  74. package/build/icon/variations.cjs.map +7 -0
  75. package/build/image/block.json +1 -0
  76. package/build/image/edit.cjs +4 -3
  77. package/build/image/edit.cjs.map +2 -2
  78. package/build/image/image.cjs +91 -29
  79. package/build/image/image.cjs.map +2 -2
  80. package/build/image/index.cjs +1 -1
  81. package/build/image/index.cjs.map +2 -2
  82. package/build/image/transforms.cjs +9 -3
  83. package/build/image/transforms.cjs.map +2 -2
  84. package/build/image/use-open-image-media-editor-modal.cjs +5 -25
  85. package/build/image/use-open-image-media-editor-modal.cjs.map +2 -2
  86. package/build/index.cjs +1 -3
  87. package/build/index.cjs.map +2 -2
  88. package/build/latest-posts/edit.cjs +1 -1
  89. package/build/latest-posts/edit.cjs.map +1 -1
  90. package/build/list/edit.cjs +1 -8
  91. package/build/list/edit.cjs.map +2 -2
  92. package/build/list/ordered-list-settings.cjs +1 -45
  93. package/build/list/ordered-list-settings.cjs.map +2 -2
  94. package/build/list-item/hooks/use-merge.cjs +47 -24
  95. package/build/list-item/hooks/use-merge.cjs.map +2 -2
  96. package/build/math/edit.cjs +1 -1
  97. package/build/math/index.cjs +1 -1
  98. package/build/math/index.cjs.map +1 -1
  99. package/build/media-text/constants.cjs +1 -1
  100. package/build/media-text/constants.cjs.map +2 -2
  101. package/build/media-text/index.cjs +1 -1
  102. package/build/media-text/index.cjs.map +2 -2
  103. package/build/missing/edit.cjs +2 -2
  104. package/build/missing/edit.cjs.map +1 -1
  105. package/build/navigation/edit/index.cjs +34 -39
  106. package/build/navigation/edit/index.cjs.map +2 -2
  107. package/build/navigation/edit/navigation-menu-name-control.cjs +0 -1
  108. package/build/navigation/edit/navigation-menu-name-control.cjs.map +2 -2
  109. package/build/navigation/edit/navigation-menu-selector.cjs +1 -1
  110. package/build/navigation/edit/navigation-menu-selector.cjs.map +2 -2
  111. package/build/navigation/edit/placeholder/index.cjs +1 -1
  112. package/build/navigation/edit/placeholder/index.cjs.map +2 -2
  113. package/build/navigation-link/block.json +1 -1
  114. package/build/navigation-link/edit.cjs +1 -2
  115. package/build/navigation-link/edit.cjs.map +2 -2
  116. package/build/navigation-link/link-ui/page-creator.cjs +0 -1
  117. package/build/navigation-link/link-ui/page-creator.cjs.map +2 -2
  118. package/build/navigation-link/shared/controls.cjs +0 -2
  119. package/build/navigation-link/shared/controls.cjs.map +2 -2
  120. package/build/navigation-submenu/block.json +7 -0
  121. package/build/navigation-submenu/edit.cjs +3 -2
  122. package/build/navigation-submenu/edit.cjs.map +2 -2
  123. package/build/page-list/block.json +2 -5
  124. package/build/page-list/edit.cjs +1 -11
  125. package/build/page-list/edit.cjs.map +2 -2
  126. package/build/paragraph/deprecated.cjs +1 -0
  127. package/build/paragraph/deprecated.cjs.map +2 -2
  128. package/build/paragraph/edit.cjs +10 -1
  129. package/build/paragraph/edit.cjs.map +3 -3
  130. package/build/playlist/block.json +12 -0
  131. package/build/playlist/edit.cjs +27 -1
  132. package/build/playlist/edit.cjs.map +2 -2
  133. package/build/playlist/save.cjs +8 -1
  134. package/build/playlist/save.cjs.map +2 -2
  135. package/build/playlist/view.cjs +1 -0
  136. package/build/playlist/view.cjs.map +2 -2
  137. package/build/playlist-track/edit.cjs +0 -3
  138. package/build/playlist-track/edit.cjs.map +2 -2
  139. package/build/post-author/edit.cjs +1 -1
  140. package/build/post-author/edit.cjs.map +2 -2
  141. package/build/post-author/utils.cjs +1 -1
  142. package/build/post-author/utils.cjs.map +2 -2
  143. package/build/post-comment/edit.cjs +0 -1
  144. package/build/post-comment/edit.cjs.map +2 -2
  145. package/build/post-date/edit.cjs +2 -2
  146. package/build/post-date/edit.cjs.map +2 -2
  147. package/build/post-excerpt/edit.cjs +2 -2
  148. package/build/post-excerpt/edit.cjs.map +2 -2
  149. package/build/post-featured-image/block.json +1 -0
  150. package/build/post-featured-image/dimension-controls.cjs +90 -178
  151. package/build/post-featured-image/dimension-controls.cjs.map +3 -3
  152. package/build/post-featured-image/edit.cjs +47 -18
  153. package/build/post-featured-image/edit.cjs.map +2 -2
  154. package/build/post-navigation-link/edit.cjs +2 -2
  155. package/build/post-navigation-link/edit.cjs.map +2 -2
  156. package/build/post-terms/edit.cjs +0 -1
  157. package/build/post-terms/edit.cjs.map +2 -2
  158. package/build/post-time-to-read/edit.cjs +1 -1
  159. package/build/post-time-to-read/edit.cjs.map +1 -1
  160. package/build/post-time-to-read/index.cjs +1 -1
  161. package/build/post-time-to-read/index.cjs.map +2 -2
  162. package/build/post-time-to-read/variations.cjs +1 -1
  163. package/build/post-time-to-read/variations.cjs.map +2 -2
  164. package/build/post-title/edit.cjs +0 -1
  165. package/build/post-title/edit.cjs.map +2 -2
  166. package/build/preformatted/edit.cjs +1 -1
  167. package/build/preformatted/edit.cjs.map +2 -2
  168. package/build/pullquote/block.json +1 -3
  169. package/build/pullquote/deprecated.cjs +114 -9
  170. package/build/pullquote/deprecated.cjs.map +3 -3
  171. package/build/pullquote/edit.cjs +43 -66
  172. package/build/pullquote/edit.cjs.map +3 -3
  173. package/build/pullquote/save.cjs +5 -26
  174. package/build/pullquote/save.cjs.map +3 -3
  175. package/build/query/edit/enhanced-pagination-modal.cjs +10 -1
  176. package/build/query/edit/enhanced-pagination-modal.cjs.map +3 -3
  177. package/build/query/edit/inspector-controls/enhanced-pagination-control.cjs +1 -1
  178. package/build/query/edit/inspector-controls/enhanced-pagination-control.cjs.map +1 -1
  179. package/build/query/edit/inspector-controls/index.cjs +0 -1
  180. package/build/query/edit/inspector-controls/index.cjs.map +2 -2
  181. package/build/query/edit/inspector-controls/order-control.cjs +2 -2
  182. package/build/query/edit/inspector-controls/order-control.cjs.map +2 -2
  183. package/build/query/utils.cjs +2 -2
  184. package/build/query/utils.cjs.map +2 -2
  185. package/build/query-pagination-next/edit.cjs +2 -2
  186. package/build/query-pagination-next/edit.cjs.map +1 -1
  187. package/build/query-pagination-previous/edit.cjs +2 -2
  188. package/build/query-pagination-previous/edit.cjs.map +1 -1
  189. package/build/query-title/edit.cjs +1 -1
  190. package/build/query-title/edit.cjs.map +2 -2
  191. package/build/query-total/edit.cjs +1 -1
  192. package/build/query-total/edit.cjs.map +2 -2
  193. package/build/quote/edit.cjs +4 -9
  194. package/build/quote/edit.cjs.map +2 -2
  195. package/build/quote/index.cjs +1 -1
  196. package/build/quote/index.cjs.map +2 -2
  197. package/build/read-more/edit.cjs +1 -1
  198. package/build/read-more/edit.cjs.map +2 -2
  199. package/build/rss/edit.cjs +1 -2
  200. package/build/rss/edit.cjs.map +2 -2
  201. package/build/search/block.json +4 -0
  202. package/build/search/edit.cjs +244 -206
  203. package/build/search/edit.cjs.map +2 -2
  204. package/build/shortcode/edit.cjs +1 -1
  205. package/build/shortcode/edit.cjs.map +2 -2
  206. package/build/shortcode/transforms.cjs +2 -2
  207. package/build/shortcode/transforms.cjs.map +2 -2
  208. package/build/site-logo/edit.cjs +2 -1
  209. package/build/site-logo/edit.cjs.map +2 -2
  210. package/build/site-tagline/edit.cjs +1 -1
  211. package/build/site-tagline/edit.cjs.map +2 -2
  212. package/build/site-title/edit.cjs +1 -1
  213. package/build/site-title/edit.cjs.map +2 -2
  214. package/build/social-link/edit.cjs +0 -3
  215. package/build/social-link/edit.cjs.map +2 -2
  216. package/build/tab-list/block.json +33 -20
  217. package/build/tab-list/edit.cjs +122 -12
  218. package/build/tab-list/edit.cjs.map +3 -3
  219. package/build/tab-list/init.cjs +28 -0
  220. package/build/tab-list/init.cjs.map +7 -0
  221. package/build/tab-list/save.cjs +33 -3
  222. package/build/tab-list/save.cjs.map +3 -3
  223. package/build/tab-panel/add-tab-toolbar-control.cjs +19 -8
  224. package/build/tab-panel/add-tab-toolbar-control.cjs.map +2 -2
  225. package/build/tab-panel/block.json +2 -6
  226. package/build/tab-panel/edit.cjs +0 -9
  227. package/build/tab-panel/edit.cjs.map +2 -2
  228. package/build/tab-panel/remove-tab-toolbar-control.cjs +9 -14
  229. package/build/tab-panel/remove-tab-toolbar-control.cjs.map +2 -2
  230. package/build/tab-panel/save.cjs +2 -1
  231. package/build/tab-panel/save.cjs.map +2 -2
  232. package/build/tab-panels/block.json +2 -28
  233. package/build/tab-panels/init.cjs +28 -0
  234. package/build/tab-panels/init.cjs.map +7 -0
  235. package/build/table/edit.cjs +0 -2
  236. package/build/table/edit.cjs.map +2 -2
  237. package/build/table/index.cjs +1 -1
  238. package/build/table/index.cjs.map +2 -2
  239. package/build/tabs/block.json +3 -17
  240. package/build/tabs/edit.cjs +7 -21
  241. package/build/tabs/edit.cjs.map +3 -3
  242. package/build/tabs/index.cjs +6 -10
  243. package/build/tabs/index.cjs.map +2 -2
  244. package/build/tabs/use-tab-list-items-sync.cjs +53 -0
  245. package/build/tabs/use-tab-list-items-sync.cjs.map +7 -0
  246. package/build/tabs/view.cjs +22 -104
  247. package/build/tabs/view.cjs.map +2 -2
  248. package/build/template-part/edit/advanced-controls.cjs +0 -1
  249. package/build/template-part/edit/advanced-controls.cjs.map +2 -2
  250. package/build/template-part/edit/title-modal.cjs +1 -2
  251. package/build/template-part/edit/title-modal.cjs.map +2 -2
  252. package/build/terms-query/edit/inspector-controls/order-control.cjs +2 -2
  253. package/build/terms-query/edit/inspector-controls/order-control.cjs.map +2 -2
  254. package/build/utils/style-state.cjs +164 -0
  255. package/build/utils/style-state.cjs.map +7 -0
  256. package/build/utils/waveform-player.cjs +42 -9
  257. package/build/utils/waveform-player.cjs.map +2 -2
  258. package/build/utils/waveform-utils.cjs +6 -4
  259. package/build/utils/waveform-utils.cjs.map +2 -2
  260. package/build/verse/edit.cjs +1 -1
  261. package/build/verse/edit.cjs.map +2 -2
  262. package/build/video/edit-common-settings.cjs +3 -6
  263. package/build/video/edit-common-settings.cjs.map +2 -2
  264. package/build/video/edit.cjs +3 -2
  265. package/build/video/edit.cjs.map +2 -2
  266. package/build/video/tracks-editor.cjs +0 -2
  267. package/build/video/tracks-editor.cjs.map +2 -2
  268. package/build-module/audio/edit.mjs +8 -2
  269. package/build-module/audio/edit.mjs.map +2 -2
  270. package/build-module/breadcrumbs/edit.mjs +1 -2
  271. package/build-module/breadcrumbs/edit.mjs.map +2 -2
  272. package/build-module/button/edit.mjs +1 -2
  273. package/build-module/button/edit.mjs.map +2 -2
  274. package/build-module/categories/edit.mjs +1 -1
  275. package/build-module/categories/edit.mjs.map +1 -1
  276. package/build-module/code/edit.mjs +1 -1
  277. package/build-module/code/edit.mjs.map +2 -2
  278. package/build-module/code/index.mjs +1 -1
  279. package/build-module/code/index.mjs.map +1 -1
  280. package/build-module/columns/transforms.mjs +65 -0
  281. package/build-module/columns/transforms.mjs.map +2 -2
  282. package/build-module/columns/utils.mjs.map +1 -1
  283. package/build-module/comments/edit/comments-legacy.mjs +1 -1
  284. package/build-module/comments/edit/comments-legacy.mjs.map +1 -1
  285. package/build-module/comments/edit/placeholder.mjs +4 -4
  286. package/build-module/comments/edit/placeholder.mjs.map +1 -1
  287. package/build-module/comments-pagination-next/edit.mjs +2 -2
  288. package/build-module/comments-pagination-next/edit.mjs.map +1 -1
  289. package/build-module/comments-pagination-previous/edit.mjs +2 -2
  290. package/build-module/comments-pagination-previous/edit.mjs.map +1 -1
  291. package/build-module/cover/deprecated.mjs +3 -3
  292. package/build-module/cover/deprecated.mjs.map +2 -2
  293. package/build-module/cover/edit/block-controls.mjs +15 -2
  294. package/build-module/cover/edit/block-controls.mjs.map +2 -2
  295. package/build-module/cover/edit/embed-video-url-input.mjs +0 -1
  296. package/build-module/cover/edit/embed-video-url-input.mjs.map +2 -2
  297. package/build-module/cover/edit/index.mjs +64 -3
  298. package/build-module/cover/edit/index.mjs.map +2 -2
  299. package/build-module/cover/edit/inspector-controls.mjs +98 -35
  300. package/build-module/cover/edit/inspector-controls.mjs.map +2 -2
  301. package/build-module/details/edit.mjs +1 -2
  302. package/build-module/details/edit.mjs.map +2 -2
  303. package/build-module/embed/embed-placeholder.mjs +1 -1
  304. package/build-module/embed/embed-placeholder.mjs.map +2 -2
  305. package/build-module/file/edit.mjs +5 -13
  306. package/build-module/file/edit.mjs.map +2 -2
  307. package/build-module/file/index.mjs +3 -1
  308. package/build-module/file/index.mjs.map +2 -2
  309. package/build-module/file/transforms.mjs +11 -32
  310. package/build-module/file/transforms.mjs.map +2 -2
  311. package/build-module/file/variations.mjs +17 -0
  312. package/build-module/file/variations.mjs.map +7 -0
  313. package/build-module/footnotes/edit.mjs +1 -1
  314. package/build-module/footnotes/edit.mjs.map +2 -2
  315. package/build-module/form/edit.mjs +0 -2
  316. package/build-module/form/edit.mjs.map +2 -2
  317. package/build-module/form-input/edit.mjs +1 -3
  318. package/build-module/form-input/edit.mjs.map +2 -2
  319. package/build-module/freeform/edit.mjs +6 -15
  320. package/build-module/freeform/edit.mjs.map +2 -2
  321. package/build-module/freeform/migration-notice.mjs.map +2 -2
  322. package/build-module/gallery/edit.mjs +214 -334
  323. package/build-module/gallery/edit.mjs.map +2 -2
  324. package/build-module/gallery/transforms.mjs +43 -0
  325. package/build-module/gallery/transforms.mjs.map +2 -2
  326. package/build-module/heading/edit.mjs +1 -2
  327. package/build-module/heading/edit.mjs.map +2 -2
  328. package/build-module/home-link/edit.mjs +1 -2
  329. package/build-module/home-link/edit.mjs.map +2 -2
  330. package/build-module/html/index.mjs +1 -1
  331. package/build-module/html/index.mjs.map +2 -2
  332. package/build-module/html/modal.mjs +9 -6
  333. package/build-module/html/modal.mjs.map +2 -2
  334. package/build-module/icon/block.json +12 -0
  335. package/build-module/icon/edit.mjs +94 -42
  336. package/build-module/icon/edit.mjs.map +2 -2
  337. package/build-module/icon/index.mjs +3 -1
  338. package/build-module/icon/index.mjs.map +2 -2
  339. package/build-module/icon/variations.mjs +13 -0
  340. package/build-module/icon/variations.mjs.map +7 -0
  341. package/build-module/image/block.json +1 -0
  342. package/build-module/image/edit.mjs +4 -3
  343. package/build-module/image/edit.mjs.map +2 -2
  344. package/build-module/image/image.mjs +96 -29
  345. package/build-module/image/image.mjs.map +2 -2
  346. package/build-module/image/index.mjs +1 -1
  347. package/build-module/image/index.mjs.map +2 -2
  348. package/build-module/image/transforms.mjs +9 -3
  349. package/build-module/image/transforms.mjs.map +2 -2
  350. package/build-module/image/use-open-image-media-editor-modal.mjs +5 -25
  351. package/build-module/image/use-open-image-media-editor-modal.mjs.map +2 -2
  352. package/build-module/index.mjs +1 -3
  353. package/build-module/index.mjs.map +2 -2
  354. package/build-module/latest-posts/edit.mjs +1 -1
  355. package/build-module/latest-posts/edit.mjs.map +1 -1
  356. package/build-module/list/edit.mjs +2 -9
  357. package/build-module/list/edit.mjs.map +2 -2
  358. package/build-module/list/ordered-list-settings.mjs +1 -46
  359. package/build-module/list/ordered-list-settings.mjs.map +2 -2
  360. package/build-module/list-item/hooks/use-merge.mjs +48 -25
  361. package/build-module/list-item/hooks/use-merge.mjs.map +2 -2
  362. package/build-module/math/edit.mjs +1 -1
  363. package/build-module/math/index.mjs +1 -1
  364. package/build-module/math/index.mjs.map +1 -1
  365. package/build-module/media-text/constants.mjs +1 -1
  366. package/build-module/media-text/constants.mjs.map +2 -2
  367. package/build-module/media-text/index.mjs +1 -1
  368. package/build-module/media-text/index.mjs.map +2 -2
  369. package/build-module/missing/edit.mjs +2 -2
  370. package/build-module/missing/edit.mjs.map +1 -1
  371. package/build-module/navigation/edit/index.mjs +35 -46
  372. package/build-module/navigation/edit/index.mjs.map +2 -2
  373. package/build-module/navigation/edit/navigation-menu-name-control.mjs +0 -1
  374. package/build-module/navigation/edit/navigation-menu-name-control.mjs.map +2 -2
  375. package/build-module/navigation/edit/navigation-menu-selector.mjs +1 -1
  376. package/build-module/navigation/edit/navigation-menu-selector.mjs.map +2 -2
  377. package/build-module/navigation/edit/placeholder/index.mjs +1 -1
  378. package/build-module/navigation/edit/placeholder/index.mjs.map +2 -2
  379. package/build-module/navigation-link/block.json +1 -1
  380. package/build-module/navigation-link/edit.mjs +1 -2
  381. package/build-module/navigation-link/edit.mjs.map +2 -2
  382. package/build-module/navigation-link/link-ui/page-creator.mjs +0 -1
  383. package/build-module/navigation-link/link-ui/page-creator.mjs.map +2 -2
  384. package/build-module/navigation-link/shared/controls.mjs +0 -2
  385. package/build-module/navigation-link/shared/controls.mjs.map +2 -2
  386. package/build-module/navigation-submenu/block.json +7 -0
  387. package/build-module/navigation-submenu/edit.mjs +3 -2
  388. package/build-module/navigation-submenu/edit.mjs.map +2 -2
  389. package/build-module/page-list/block.json +2 -5
  390. package/build-module/page-list/edit.mjs +1 -11
  391. package/build-module/page-list/edit.mjs.map +2 -2
  392. package/build-module/paragraph/deprecated.mjs +1 -0
  393. package/build-module/paragraph/deprecated.mjs.map +2 -2
  394. package/build-module/paragraph/edit.mjs +12 -2
  395. package/build-module/paragraph/edit.mjs.map +2 -2
  396. package/build-module/playlist/block.json +12 -0
  397. package/build-module/playlist/edit.mjs +27 -1
  398. package/build-module/playlist/edit.mjs.map +2 -2
  399. package/build-module/playlist/save.mjs +8 -1
  400. package/build-module/playlist/save.mjs.map +2 -2
  401. package/build-module/playlist/view.mjs +1 -0
  402. package/build-module/playlist/view.mjs.map +2 -2
  403. package/build-module/playlist-track/edit.mjs +0 -3
  404. package/build-module/playlist-track/edit.mjs.map +2 -2
  405. package/build-module/post-author/edit.mjs +1 -1
  406. package/build-module/post-author/edit.mjs.map +2 -2
  407. package/build-module/post-author/utils.mjs +1 -1
  408. package/build-module/post-author/utils.mjs.map +2 -2
  409. package/build-module/post-comment/edit.mjs +0 -1
  410. package/build-module/post-comment/edit.mjs.map +2 -2
  411. package/build-module/post-date/edit.mjs +2 -2
  412. package/build-module/post-date/edit.mjs.map +2 -2
  413. package/build-module/post-excerpt/edit.mjs +2 -2
  414. package/build-module/post-excerpt/edit.mjs.map +2 -2
  415. package/build-module/post-featured-image/block.json +1 -0
  416. package/build-module/post-featured-image/dimension-controls.mjs +99 -187
  417. package/build-module/post-featured-image/dimension-controls.mjs.map +2 -2
  418. package/build-module/post-featured-image/edit.mjs +47 -18
  419. package/build-module/post-featured-image/edit.mjs.map +2 -2
  420. package/build-module/post-navigation-link/edit.mjs +2 -2
  421. package/build-module/post-navigation-link/edit.mjs.map +2 -2
  422. package/build-module/post-terms/edit.mjs +0 -1
  423. package/build-module/post-terms/edit.mjs.map +2 -2
  424. package/build-module/post-time-to-read/edit.mjs +1 -1
  425. package/build-module/post-time-to-read/edit.mjs.map +1 -1
  426. package/build-module/post-time-to-read/index.mjs +1 -1
  427. package/build-module/post-time-to-read/index.mjs.map +2 -2
  428. package/build-module/post-time-to-read/variations.mjs +2 -2
  429. package/build-module/post-time-to-read/variations.mjs.map +2 -2
  430. package/build-module/post-title/edit.mjs +0 -1
  431. package/build-module/post-title/edit.mjs.map +2 -2
  432. package/build-module/preformatted/edit.mjs +1 -1
  433. package/build-module/preformatted/edit.mjs.map +2 -2
  434. package/build-module/pullquote/block.json +1 -3
  435. package/build-module/pullquote/deprecated.mjs +114 -9
  436. package/build-module/pullquote/deprecated.mjs.map +2 -2
  437. package/build-module/pullquote/edit.mjs +44 -72
  438. package/build-module/pullquote/edit.mjs.map +2 -2
  439. package/build-module/pullquote/save.mjs +5 -16
  440. package/build-module/pullquote/save.mjs.map +2 -2
  441. package/build-module/query/edit/enhanced-pagination-modal.mjs +10 -1
  442. package/build-module/query/edit/enhanced-pagination-modal.mjs.map +2 -2
  443. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.mjs +1 -1
  444. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.mjs.map +1 -1
  445. package/build-module/query/edit/inspector-controls/index.mjs +0 -1
  446. package/build-module/query/edit/inspector-controls/index.mjs.map +2 -2
  447. package/build-module/query/edit/inspector-controls/order-control.mjs +2 -2
  448. package/build-module/query/edit/inspector-controls/order-control.mjs.map +2 -2
  449. package/build-module/query/utils.mjs +2 -2
  450. package/build-module/query/utils.mjs.map +2 -2
  451. package/build-module/query-pagination-next/edit.mjs +2 -2
  452. package/build-module/query-pagination-next/edit.mjs.map +1 -1
  453. package/build-module/query-pagination-previous/edit.mjs +2 -2
  454. package/build-module/query-pagination-previous/edit.mjs.map +1 -1
  455. package/build-module/query-title/edit.mjs +1 -1
  456. package/build-module/query-title/edit.mjs.map +2 -2
  457. package/build-module/query-total/edit.mjs +1 -1
  458. package/build-module/query-total/edit.mjs.map +2 -2
  459. package/build-module/quote/edit.mjs +5 -10
  460. package/build-module/quote/edit.mjs.map +2 -2
  461. package/build-module/quote/index.mjs +1 -1
  462. package/build-module/quote/index.mjs.map +2 -2
  463. package/build-module/read-more/edit.mjs +1 -1
  464. package/build-module/read-more/edit.mjs.map +2 -2
  465. package/build-module/rss/edit.mjs +1 -2
  466. package/build-module/rss/edit.mjs.map +2 -2
  467. package/build-module/search/block.json +4 -0
  468. package/build-module/search/edit.mjs +244 -206
  469. package/build-module/search/edit.mjs.map +2 -2
  470. package/build-module/shortcode/edit.mjs +1 -1
  471. package/build-module/shortcode/edit.mjs.map +2 -2
  472. package/build-module/shortcode/transforms.mjs +2 -2
  473. package/build-module/shortcode/transforms.mjs.map +2 -2
  474. package/build-module/site-logo/edit.mjs +2 -1
  475. package/build-module/site-logo/edit.mjs.map +2 -2
  476. package/build-module/site-tagline/edit.mjs +1 -1
  477. package/build-module/site-tagline/edit.mjs.map +2 -2
  478. package/build-module/site-title/edit.mjs +1 -1
  479. package/build-module/site-title/edit.mjs.map +2 -2
  480. package/build-module/social-link/edit.mjs +0 -3
  481. package/build-module/social-link/edit.mjs.map +2 -2
  482. package/build-module/tab-list/block.json +33 -20
  483. package/build-module/tab-list/edit.mjs +128 -15
  484. package/build-module/tab-list/edit.mjs.map +2 -2
  485. package/build-module/tab-list/init.mjs +7 -0
  486. package/build-module/tab-list/init.mjs.map +7 -0
  487. package/build-module/tab-list/save.mjs +29 -4
  488. package/build-module/tab-list/save.mjs.map +2 -2
  489. package/build-module/tab-panel/add-tab-toolbar-control.mjs +19 -8
  490. package/build-module/tab-panel/add-tab-toolbar-control.mjs.map +2 -2
  491. package/build-module/tab-panel/block.json +2 -6
  492. package/build-module/tab-panel/edit.mjs +1 -10
  493. package/build-module/tab-panel/edit.mjs.map +2 -2
  494. package/build-module/tab-panel/remove-tab-toolbar-control.mjs +9 -14
  495. package/build-module/tab-panel/remove-tab-toolbar-control.mjs.map +2 -2
  496. package/build-module/tab-panel/save.mjs +2 -1
  497. package/build-module/tab-panel/save.mjs.map +2 -2
  498. package/build-module/tab-panels/block.json +2 -28
  499. package/build-module/tab-panels/init.mjs +7 -0
  500. package/build-module/tab-panels/init.mjs.map +7 -0
  501. package/build-module/table/edit.mjs +0 -2
  502. package/build-module/table/edit.mjs.map +2 -2
  503. package/build-module/table/index.mjs +1 -1
  504. package/build-module/table/index.mjs.map +2 -2
  505. package/build-module/tabs/block.json +3 -17
  506. package/build-module/tabs/edit.mjs +7 -21
  507. package/build-module/tabs/edit.mjs.map +2 -2
  508. package/build-module/tabs/index.mjs +6 -10
  509. package/build-module/tabs/index.mjs.map +2 -2
  510. package/build-module/tabs/use-tab-list-items-sync.mjs +32 -0
  511. package/build-module/tabs/use-tab-list-items-sync.mjs.map +7 -0
  512. package/build-module/tabs/view.mjs +22 -104
  513. package/build-module/tabs/view.mjs.map +2 -2
  514. package/build-module/template-part/edit/advanced-controls.mjs +0 -1
  515. package/build-module/template-part/edit/advanced-controls.mjs.map +2 -2
  516. package/build-module/template-part/edit/title-modal.mjs +1 -2
  517. package/build-module/template-part/edit/title-modal.mjs.map +2 -2
  518. package/build-module/terms-query/edit/inspector-controls/order-control.mjs +2 -2
  519. package/build-module/terms-query/edit/inspector-controls/order-control.mjs.map +2 -2
  520. package/build-module/utils/style-state.mjs +132 -0
  521. package/build-module/utils/style-state.mjs.map +7 -0
  522. package/build-module/utils/waveform-player.mjs +44 -11
  523. package/build-module/utils/waveform-player.mjs.map +2 -2
  524. package/build-module/utils/waveform-utils.mjs +6 -4
  525. package/build-module/utils/waveform-utils.mjs.map +2 -2
  526. package/build-module/verse/edit.mjs +1 -1
  527. package/build-module/verse/edit.mjs.map +2 -2
  528. package/build-module/video/edit-common-settings.mjs +4 -7
  529. package/build-module/video/edit-common-settings.mjs.map +2 -2
  530. package/build-module/video/edit.mjs +3 -3
  531. package/build-module/video/edit.mjs.map +2 -2
  532. package/build-module/video/tracks-editor.mjs +0 -2
  533. package/build-module/video/tracks-editor.mjs.map +2 -2
  534. package/build-style/comment-template/style-rtl.css +1 -0
  535. package/build-style/comment-template/style.css +1 -0
  536. package/build-style/common-rtl.css +30 -10
  537. package/build-style/common.css +30 -10
  538. package/build-style/cover/style-rtl.css +2 -1
  539. package/build-style/cover/style.css +2 -1
  540. package/build-style/editor-rtl.css +22 -30
  541. package/build-style/editor.css +22 -30
  542. package/build-style/form-input/style-rtl.css +2 -0
  543. package/build-style/form-input/style.css +2 -0
  544. package/build-style/gallery/style-rtl.css +4 -2
  545. package/build-style/gallery/style.css +4 -2
  546. package/build-style/icon/style-rtl.css +9 -0
  547. package/build-style/icon/style.css +9 -0
  548. package/build-style/media-text/style-rtl.css +2 -1
  549. package/build-style/media-text/style.css +2 -1
  550. package/build-style/playlist/style-rtl.css +3 -0
  551. package/build-style/playlist/style.css +3 -0
  552. package/build-style/query/editor-rtl.css +8 -4
  553. package/build-style/query/editor.css +8 -4
  554. package/build-style/read-more/style-rtl.css +1 -0
  555. package/build-style/read-more/style.css +1 -0
  556. package/build-style/reset-rtl.css +3 -1
  557. package/build-style/reset.css +3 -1
  558. package/build-style/search/style-rtl.css +3 -1
  559. package/build-style/search/style.css +3 -1
  560. package/build-style/site-logo/editor-rtl.css +2 -1
  561. package/build-style/site-logo/editor.css +2 -1
  562. package/build-style/style-rtl.css +64 -41
  563. package/build-style/style.css +64 -41
  564. package/build-style/{tab → tab-list}/style-rtl.css +5 -3
  565. package/build-style/{tab → tab-list}/style.css +5 -3
  566. package/build-style/tab-panel/style-rtl.css +0 -17
  567. package/build-style/tab-panel/style.css +0 -17
  568. package/build-style/template-part/editor-rtl.css +8 -4
  569. package/build-style/template-part/editor.css +8 -4
  570. package/build-style/video/style-rtl.css +2 -1
  571. package/build-style/video/style.css +2 -1
  572. package/package.json +55 -48
  573. package/src/accordion/README.md +97 -0
  574. package/src/accordion-heading/README.md +81 -0
  575. package/src/accordion-item/README.md +85 -0
  576. package/src/accordion-panel/README.md +74 -0
  577. package/src/archives/README.md +56 -0
  578. package/src/audio/README.md +55 -0
  579. package/src/audio/edit.js +5 -9
  580. package/src/avatar/README.md +74 -0
  581. package/src/avatar/index.php +2 -2
  582. package/src/block/README.md +56 -0
  583. package/src/block/index.php +2 -26
  584. package/src/breadcrumbs/README.md +67 -0
  585. package/src/breadcrumbs/edit.js +0 -1
  586. package/src/button/README.md +93 -0
  587. package/src/button/edit.js +0 -1
  588. package/src/buttons/README.md +80 -0
  589. package/src/calendar/README.md +51 -0
  590. package/src/categories/README.md +69 -0
  591. package/src/code/README.md +55 -0
  592. package/src/column/README.md +72 -0
  593. package/src/columns/README.md +90 -0
  594. package/src/columns/test/transforms.js +164 -0
  595. package/src/columns/transforms.js +74 -0
  596. package/src/comment-author-avatar/README.md +63 -0
  597. package/src/comment-author-avatar/index.php +3 -3
  598. package/src/comment-author-name/README.md +67 -0
  599. package/src/comment-author-name/index.php +1 -1
  600. package/src/comment-content/README.md +61 -0
  601. package/src/comment-date/README.md +67 -0
  602. package/src/comment-date/index.php +1 -1
  603. package/src/comment-edit-link/README.md +67 -0
  604. package/src/comment-reply-link/README.md +63 -0
  605. package/src/comment-template/README.md +60 -0
  606. package/src/comments/README.md +88 -0
  607. package/src/comments-pagination/README.md +77 -0
  608. package/src/comments-pagination-next/README.md +64 -0
  609. package/src/comments-pagination-numbers/README.md +64 -0
  610. package/src/comments-pagination-previous/README.md +64 -0
  611. package/src/comments-title/README.md +70 -0
  612. package/src/common.scss +63 -10
  613. package/src/cover/README.md +111 -0
  614. package/src/cover/edit/block-controls.js +14 -2
  615. package/src/cover/edit/embed-video-url-input.js +0 -1
  616. package/src/cover/edit/index.js +86 -0
  617. package/src/cover/edit/inspector-controls.js +124 -54
  618. package/src/cover/test/edit.js +51 -2
  619. package/src/details/README.md +65 -0
  620. package/src/details/edit.js +0 -1
  621. package/src/editor.scss +0 -2
  622. package/src/embed/README.md +56 -0
  623. package/src/file/README.md +60 -0
  624. package/src/file/edit.js +3 -16
  625. package/src/file/index.js +2 -0
  626. package/src/file/transforms.js +12 -31
  627. package/src/file/variations.js +17 -0
  628. package/src/footnotes/README.md +64 -0
  629. package/src/form/README.md +90 -0
  630. package/src/form/edit.js +0 -2
  631. package/src/form-input/README.md +74 -0
  632. package/src/form-input/edit.js +0 -2
  633. package/src/form-submission-notification/README.md +50 -0
  634. package/src/form-submit-button/README.md +54 -0
  635. package/src/freeform/README.md +49 -0
  636. package/src/freeform/edit.js +6 -29
  637. package/src/freeform/migration-notice.js +2 -4
  638. package/src/gallery/README.md +115 -0
  639. package/src/gallery/edit.js +214 -351
  640. package/src/gallery/test/transforms.js +155 -0
  641. package/src/gallery/transforms.js +47 -0
  642. package/src/group/README.md +80 -0
  643. package/src/heading/README.md +60 -0
  644. package/src/heading/edit.js +1 -2
  645. package/src/home-link/README.md +66 -0
  646. package/src/home-link/edit.js +0 -1
  647. package/src/home-link/index.php +3 -15
  648. package/src/html/README.md +48 -0
  649. package/src/html/modal.js +3 -0
  650. package/src/icon/README.md +66 -0
  651. package/src/icon/block.json +12 -0
  652. package/src/icon/edit.js +85 -37
  653. package/src/icon/index.js +3 -1
  654. package/src/icon/index.php +23 -0
  655. package/src/icon/style.scss +12 -0
  656. package/src/icon/variations.js +9 -0
  657. package/src/image/README.md +103 -0
  658. package/src/image/block.json +1 -0
  659. package/src/image/edit.js +8 -3
  660. package/src/image/image.js +120 -56
  661. package/src/image/index.php +4 -5
  662. package/src/image/test/use-open-image-media-editor-modal.js +20 -26
  663. package/src/image/transforms.js +34 -8
  664. package/src/image/use-open-image-media-editor-modal.js +24 -42
  665. package/src/index.js +4 -11
  666. package/src/latest-comments/README.md +57 -0
  667. package/src/latest-posts/README.md +71 -0
  668. package/src/list/README.md +70 -0
  669. package/src/list/edit.js +2 -9
  670. package/src/list/ordered-list-settings.js +46 -93
  671. package/src/list-item/README.md +71 -0
  672. package/src/list-item/hooks/use-merge.js +53 -46
  673. package/src/loginout/README.md +56 -0
  674. package/src/math/README.md +50 -0
  675. package/src/media-text/README.md +92 -0
  676. package/src/missing/README.md +55 -0
  677. package/src/more/README.md +49 -0
  678. package/src/navigation/README.md +115 -0
  679. package/src/navigation/edit/index.js +35 -46
  680. package/src/navigation/edit/navigation-menu-name-control.js +0 -1
  681. package/src/navigation/index.php +58 -0
  682. package/src/navigation-link/README.md +93 -0
  683. package/src/navigation-link/block.json +1 -1
  684. package/src/navigation-link/edit.js +0 -1
  685. package/src/navigation-link/index.php +1 -15
  686. package/src/navigation-link/link-ui/page-creator.js +0 -1
  687. package/src/navigation-link/shared/controls.js +0 -2
  688. package/src/navigation-link/test/__snapshots__/hooks.js.snap +5 -0
  689. package/src/navigation-overlay-close/README.md +48 -0
  690. package/src/navigation-submenu/README.md +89 -0
  691. package/src/navigation-submenu/block.json +7 -0
  692. package/src/navigation-submenu/edit.js +1 -0
  693. package/src/navigation-submenu/index.php +1 -17
  694. package/src/nextpage/README.md +50 -0
  695. package/src/page-list/README.md +84 -0
  696. package/src/page-list/block.json +2 -5
  697. package/src/page-list/edit.js +0 -11
  698. package/src/page-list/index.php +4 -16
  699. package/src/page-list-item/README.md +77 -0
  700. package/src/paragraph/README.md +70 -0
  701. package/src/paragraph/deprecated.js +1 -0
  702. package/src/paragraph/edit.js +13 -1
  703. package/src/pattern/README.md +45 -0
  704. package/src/playlist/README.md +86 -0
  705. package/src/playlist/block.json +12 -0
  706. package/src/playlist/edit.js +27 -0
  707. package/src/playlist/index.php +10 -3
  708. package/src/playlist/save.js +9 -1
  709. package/src/playlist/style.scss +7 -0
  710. package/src/playlist/view.js +1 -0
  711. package/src/playlist-track/README.md +69 -0
  712. package/src/playlist-track/edit.js +0 -3
  713. package/src/post-author/README.md +78 -0
  714. package/src/post-author-biography/README.md +59 -0
  715. package/src/post-author-name/README.md +63 -0
  716. package/src/post-author-name/index.php +1 -1
  717. package/src/post-comment/README.md +61 -0
  718. package/src/post-comment/edit.js +0 -1
  719. package/src/post-comments-count/README.md +58 -0
  720. package/src/post-comments-form/README.md +59 -0
  721. package/src/post-comments-link/README.md +60 -0
  722. package/src/post-content/README.md +71 -0
  723. package/src/post-date/README.md +65 -0
  724. package/src/post-date/edit.js +2 -2
  725. package/src/post-date/index.php +1 -1
  726. package/src/post-excerpt/README.md +66 -0
  727. package/src/post-featured-image/README.md +86 -0
  728. package/src/post-featured-image/block.json +1 -0
  729. package/src/post-featured-image/dimension-controls.js +105 -184
  730. package/src/post-featured-image/edit.js +53 -22
  731. package/src/post-featured-image/index.php +25 -23
  732. package/src/post-navigation-link/README.md +63 -0
  733. package/src/post-template/README.md +71 -0
  734. package/src/post-terms/README.md +65 -0
  735. package/src/post-terms/edit.js +0 -1
  736. package/src/post-time-to-read/README.md +63 -0
  737. package/src/post-time-to-read/index.js +1 -1
  738. package/src/post-time-to-read/variations.js +2 -2
  739. package/src/post-title/README.md +69 -0
  740. package/src/post-title/edit.js +0 -1
  741. package/src/preformatted/README.md +50 -0
  742. package/src/pullquote/README.md +64 -0
  743. package/src/pullquote/block.json +1 -3
  744. package/src/pullquote/deprecated.js +121 -9
  745. package/src/pullquote/edit.js +8 -38
  746. package/src/pullquote/save.js +2 -13
  747. package/src/query/README.md +64 -0
  748. package/src/query/edit/enhanced-pagination-modal.js +11 -1
  749. package/src/query/edit/inspector-controls/index.js +0 -1
  750. package/src/query-no-results/README.md +65 -0
  751. package/src/query-pagination/README.md +79 -0
  752. package/src/query-pagination-next/README.md +67 -0
  753. package/src/query-pagination-numbers/README.md +65 -0
  754. package/src/query-pagination-previous/README.md +67 -0
  755. package/src/query-title/README.md +65 -0
  756. package/src/query-total/README.md +66 -0
  757. package/src/quote/README.md +75 -0
  758. package/src/quote/edit.js +3 -9
  759. package/src/read-more/README.md +61 -0
  760. package/src/read-more/index.php +2 -2
  761. package/src/rss/README.md +62 -0
  762. package/src/rss/edit.js +0 -1
  763. package/src/search/README.md +67 -0
  764. package/src/search/block.json +4 -0
  765. package/src/search/edit.js +106 -55
  766. package/src/search/index.php +25 -1
  767. package/src/separator/README.md +62 -0
  768. package/src/shortcode/README.md +44 -0
  769. package/src/shortcode/transforms.js +2 -2
  770. package/src/site-logo/README.md +72 -0
  771. package/src/site-logo/edit.js +3 -1
  772. package/src/site-tagline/README.md +56 -0
  773. package/src/site-title/README.md +57 -0
  774. package/src/social-link/README.md +64 -0
  775. package/src/social-link/edit.js +0 -3
  776. package/src/social-links/README.md +98 -0
  777. package/src/spacer/README.md +53 -0
  778. package/src/style.scss +1 -2
  779. package/src/tab-list/README.md +81 -0
  780. package/src/tab-list/block.json +33 -20
  781. package/src/tab-list/edit.js +153 -15
  782. package/src/tab-list/index.php +24 -33
  783. package/src/tab-list/init.js +6 -0
  784. package/src/tab-list/save.js +39 -4
  785. package/src/{tab → tab-list}/style.scss +2 -3
  786. package/src/tab-panel/README.md +72 -0
  787. package/src/tab-panel/add-tab-toolbar-control.js +24 -11
  788. package/src/tab-panel/block.json +2 -6
  789. package/src/tab-panel/edit.js +1 -14
  790. package/src/tab-panel/index.php +2 -25
  791. package/src/tab-panel/remove-tab-toolbar-control.js +10 -14
  792. package/src/tab-panel/save.js +1 -0
  793. package/src/tab-panel/style.scss +0 -17
  794. package/src/tab-panels/README.md +59 -0
  795. package/src/tab-panels/block.json +2 -28
  796. package/src/tab-panels/init.js +6 -0
  797. package/src/table/README.md +71 -0
  798. package/src/table/edit.js +0 -2
  799. package/src/table-of-contents/README.md +61 -0
  800. package/src/tabs/README.md +77 -0
  801. package/src/tabs/block.json +3 -17
  802. package/src/tabs/edit.js +8 -19
  803. package/src/tabs/index.js +6 -10
  804. package/src/tabs/index.php +12 -32
  805. package/src/tabs/use-tab-list-items-sync.js +49 -0
  806. package/src/tabs/view.js +22 -110
  807. package/src/tag-cloud/README.md +62 -0
  808. package/src/template-part/README.md +48 -0
  809. package/src/template-part/edit/advanced-controls.js +0 -1
  810. package/src/template-part/edit/title-modal.js +0 -1
  811. package/src/term-count/README.md +59 -0
  812. package/src/term-description/README.md +60 -0
  813. package/src/term-name/README.md +65 -0
  814. package/src/term-template/README.md +65 -0
  815. package/src/terms-query/README.md +58 -0
  816. package/src/text-columns/README.md +51 -0
  817. package/src/utils/style-state.js +151 -0
  818. package/src/utils/test/style-state.js +307 -0
  819. package/src/utils/test/waveform-player.js +254 -0
  820. package/src/utils/waveform-player.js +90 -18
  821. package/src/utils/waveform-utils.js +15 -11
  822. package/src/verse/README.md +58 -0
  823. package/src/video/README.md +58 -0
  824. package/src/video/edit-common-settings.js +4 -7
  825. package/src/video/edit.js +9 -16
  826. package/src/video/tracks-editor.js +0 -2
  827. package/babel-plugin.cjs +0 -150
  828. package/build/freeform/convert-to-blocks-button.cjs.map +0 -7
  829. package/build/list-item/utils.cjs +0 -57
  830. package/build/list-item/utils.cjs.map +0 -7
  831. package/build/tab/block.json +0 -56
  832. package/build/tab/controls.cjs +0 -46
  833. package/build/tab/controls.cjs.map +0 -7
  834. package/build/tab/edit.cjs +0 -135
  835. package/build/tab/edit.cjs.map +0 -7
  836. package/build/tab/index.cjs +0 -58
  837. package/build/tab/index.cjs.map +0 -7
  838. package/build/tab/save.cjs.map +0 -7
  839. package/build/tabs/use-tab-list-sync.cjs +0 -190
  840. package/build/tabs/use-tab-list-sync.cjs.map +0 -7
  841. package/build-module/freeform/convert-to-blocks-button.mjs +0 -19
  842. package/build-module/freeform/convert-to-blocks-button.mjs.map +0 -7
  843. package/build-module/list-item/utils.mjs +0 -32
  844. package/build-module/list-item/utils.mjs.map +0 -7
  845. package/build-module/tab/block.json +0 -56
  846. package/build-module/tab/controls.mjs +0 -15
  847. package/build-module/tab/controls.mjs.map +0 -7
  848. package/build-module/tab/edit.mjs +0 -108
  849. package/build-module/tab/edit.mjs.map +0 -7
  850. package/build-module/tab/index.mjs +0 -20
  851. package/build-module/tab/index.mjs.map +0 -7
  852. package/build-module/tab/save.mjs +0 -14
  853. package/build-module/tab/save.mjs.map +0 -7
  854. package/build-module/tabs/use-tab-list-sync.mjs +0 -169
  855. package/build-module/tabs/use-tab-list-sync.mjs.map +0 -7
  856. package/build-style/tab/editor-rtl.css +0 -11
  857. package/build-style/tab/editor.css +0 -11
  858. package/build-style/tab-list/editor-rtl.css +0 -6
  859. package/build-style/tab-list/editor.css +0 -6
  860. package/build-style/tab-panels/style-rtl.css +0 -4
  861. package/build-style/tab-panels/style.css +0 -4
  862. package/src/audio/edit.native.js +0 -250
  863. package/src/audio/style.native.scss +0 -13
  864. package/src/audio/test/__snapshots__/edit.native.js.snap +0 -546
  865. package/src/audio/test/__snapshots__/transforms.native.js.snap +0 -25
  866. package/src/audio/test/edit.native.js +0 -132
  867. package/src/audio/test/transforms.native.js +0 -43
  868. package/src/audio/transforms.native.js +0 -12
  869. package/src/block/edit-title.native.js +0 -67
  870. package/src/block/edit.native.js +0 -247
  871. package/src/block/editor.native.scss +0 -125
  872. package/src/block/test/__snapshots__/transforms.native.js.snap +0 -15
  873. package/src/block/test/edit.native.js +0 -262
  874. package/src/block/test/transforms.native.js +0 -40
  875. package/src/button/color-background.native.js +0 -41
  876. package/src/button/edit.native.js +0 -567
  877. package/src/button/editor.native.scss +0 -70
  878. package/src/button/rich-text.android.scss +0 -6
  879. package/src/button/rich-text.ios.scss +0 -6
  880. package/src/buttons/edit.native.js +0 -157
  881. package/src/buttons/editor.native.scss +0 -11
  882. package/src/buttons/test/__snapshots__/edit.native.js.snap +0 -99
  883. package/src/buttons/test/__snapshots__/transforms.native.js.snap +0 -31
  884. package/src/buttons/test/edit.native.js +0 -485
  885. package/src/buttons/test/transforms.native.js +0 -48
  886. package/src/buttons/transforms.native.js +0 -12
  887. package/src/code/edit.native.js +0 -70
  888. package/src/code/test/__snapshots__/edit.native.js.snap +0 -13
  889. package/src/code/test/edit.native.js +0 -65
  890. package/src/code/theme.native.scss +0 -22
  891. package/src/code/transforms.native.js +0 -12
  892. package/src/column/column-preview.native.js +0 -58
  893. package/src/column/edit.native.js +0 -273
  894. package/src/column/editor.native.scss +0 -75
  895. package/src/columns/columnCalculations.native.js +0 -178
  896. package/src/columns/edit.native.js +0 -507
  897. package/src/columns/editor.native.scss +0 -17
  898. package/src/columns/test/__snapshots__/edit.native.js.snap +0 -305
  899. package/src/columns/test/__snapshots__/transforms.native.js.snap +0 -61
  900. package/src/columns/test/edit.native.js +0 -496
  901. package/src/columns/test/transforms.native.js +0 -89
  902. package/src/columns/transforms.native.js +0 -12
  903. package/src/cover/controls.native.js +0 -307
  904. package/src/cover/edit.native.js +0 -708
  905. package/src/cover/focal-point-settings-button.native.js +0 -53
  906. package/src/cover/overlay-color-settings.native.js +0 -106
  907. package/src/cover/style.native.scss +0 -220
  908. package/src/cover/test/__snapshots__/edit.native.js.snap +0 -105
  909. package/src/cover/test/__snapshots__/transforms.native.js.snap +0 -73
  910. package/src/cover/test/edit.native.js +0 -701
  911. package/src/cover/test/transforms.native.js +0 -116
  912. package/src/cover/transforms.native.js +0 -12
  913. package/src/cover/use-cover-is-dark.native.js +0 -51
  914. package/src/embed/edit.native.js +0 -345
  915. package/src/embed/embed-controls.native.js +0 -65
  916. package/src/embed/embed-link-settings.native.js +0 -99
  917. package/src/embed/embed-loading.native.js +0 -29
  918. package/src/embed/embed-no-preview.native.js +0 -230
  919. package/src/embed/embed-placeholder.native.js +0 -178
  920. package/src/embed/embed-preview.native.js +0 -157
  921. package/src/embed/styles.native.scss +0 -196
  922. package/src/embed/test/__snapshots__/index.native.js.snap +0 -191
  923. package/src/embed/test/__snapshots__/transforms.native.js.snap +0 -23
  924. package/src/embed/test/index.native.js +0 -1125
  925. package/src/embed/test/transforms.native.js +0 -44
  926. package/src/embed/transforms.native.js +0 -12
  927. package/src/embed/wp-embed-preview.native.js +0 -80
  928. package/src/file/edit.native.js +0 -605
  929. package/src/file/style.native.scss +0 -79
  930. package/src/file/test/__snapshots__/edit.native.js.snap +0 -580
  931. package/src/file/test/__snapshots__/transforms.native.js.snap +0 -19
  932. package/src/file/test/edit.native.js +0 -93
  933. package/src/file/test/transforms.native.js +0 -43
  934. package/src/file/transforms.native.js +0 -12
  935. package/src/freeform/convert-to-blocks-button.js +0 -18
  936. package/src/freeform/edit.native.js +0 -13
  937. package/src/freeform/test/__snapshots__/index.native.js.snap +0 -7
  938. package/src/freeform/test/__snapshots__/transforms.native.js.snap +0 -19
  939. package/src/freeform/test/index.native.js +0 -57
  940. package/src/freeform/test/transforms.native.js +0 -39
  941. package/src/gallery/gallery-styles.native.scss +0 -8
  942. package/src/gallery/gallery.native.js +0 -124
  943. package/src/gallery/styles.native.scss +0 -7
  944. package/src/gallery/test/__snapshots__/index.native.js.snap +0 -177
  945. package/src/gallery/test/__snapshots__/transforms.native.js.snap +0 -53
  946. package/src/gallery/test/helpers.native.js +0 -106
  947. package/src/gallery/test/index.native.js +0 -700
  948. package/src/gallery/test/transforms.native.js +0 -53
  949. package/src/gallery/test/use-get-media.native.js +0 -24
  950. package/src/gallery/transforms.native.js +0 -12
  951. package/src/gallery/use-get-media.native.js +0 -49
  952. package/src/group/edit.native.js +0 -137
  953. package/src/group/editor.native.scss +0 -56
  954. package/src/group/test/__snapshots__/edit.native.js.snap +0 -19
  955. package/src/group/test/__snapshots__/transforms.native.js.snap +0 -35
  956. package/src/group/test/edit.native.js +0 -100
  957. package/src/group/test/transforms.native.js +0 -73
  958. package/src/heading/edit.native.js +0 -159
  959. package/src/heading/test/__snapshots__/index.native.js.snap +0 -43
  960. package/src/heading/test/__snapshots__/transforms.native.js.snap +0 -47
  961. package/src/heading/test/index.native.js +0 -257
  962. package/src/heading/test/transforms.native.js +0 -46
  963. package/src/heading/transforms.native.js +0 -12
  964. package/src/html/transforms.native.js +0 -11
  965. package/src/image/edit.native.js +0 -959
  966. package/src/image/styles.native.scss +0 -70
  967. package/src/image/test/__snapshots__/transforms.native.js.snap +0 -49
  968. package/src/image/test/edit.native.js +0 -459
  969. package/src/image/test/transforms.native.js +0 -49
  970. package/src/image/transforms.native.js +0 -12
  971. package/src/index.native.js +0 -274
  972. package/src/latest-posts/edit.native.js +0 -294
  973. package/src/latest-posts/style.native.scss +0 -47
  974. package/src/latest-posts/test/__snapshots__/edit.native.js.snap +0 -3
  975. package/src/latest-posts/test/__snapshots__/transforms.native.js.snap +0 -15
  976. package/src/latest-posts/test/edit.native.js +0 -49
  977. package/src/latest-posts/test/transforms.native.js +0 -61
  978. package/src/list/tag-name.native.js +0 -12
  979. package/src/list/test/__snapshots__/edit.native.js.snap +0 -121
  980. package/src/list/test/__snapshots__/transforms.native.js.snap +0 -85
  981. package/src/list/test/edit.native.js +0 -602
  982. package/src/list/test/transforms.native.js +0 -56
  983. package/src/list/transforms.native.js +0 -12
  984. package/src/list-item/edit.native.js +0 -175
  985. package/src/list-item/hooks/use-enter.native.js +0 -81
  986. package/src/list-item/icons.native.js +0 -34
  987. package/src/list-item/list-style-type.native.js +0 -146
  988. package/src/list-item/style.native.scss +0 -57
  989. package/src/list-item/utils.js +0 -34
  990. package/src/media-text/edit.native.js +0 -417
  991. package/src/media-text/icon-retry.native.js +0 -11
  992. package/src/media-text/media-container.native.js +0 -393
  993. package/src/media-text/style.native.scss +0 -191
  994. package/src/media-text/test/__snapshots__/transforms.native.js.snap +0 -73
  995. package/src/media-text/test/edit.native.js +0 -58
  996. package/src/media-text/test/transforms.native.js +0 -116
  997. package/src/media-text/transforms.native.js +0 -12
  998. package/src/missing/edit.native.js +0 -294
  999. package/src/missing/style.native.scss +0 -79
  1000. package/src/missing/test/__snapshots__/edit.native.js.snap +0 -110
  1001. package/src/missing/test/edit-integration.native.js +0 -168
  1002. package/src/missing/test/edit.native.js +0 -81
  1003. package/src/more/edit.native.js +0 -36
  1004. package/src/more/editor.native.scss +0 -21
  1005. package/src/more/test/__snapshots__/edit.native.js.snap +0 -7
  1006. package/src/more/test/__snapshots__/transforms.native.js.snap +0 -19
  1007. package/src/more/test/edit.native.js +0 -41
  1008. package/src/more/test/transforms.native.js +0 -42
  1009. package/src/more/transforms.native.js +0 -12
  1010. package/src/navigation-link/shared/build-css-font-sizes.php +0 -43
  1011. package/src/nextpage/edit.native.js +0 -58
  1012. package/src/nextpage/editor.native.scss +0 -21
  1013. package/src/nextpage/test/__snapshots__/transforms.native.js.snap +0 -19
  1014. package/src/nextpage/test/transforms.native.js +0 -42
  1015. package/src/nextpage/transforms.native.js +0 -12
  1016. package/src/paragraph/edit.native.js +0 -116
  1017. package/src/paragraph/test/__snapshots__/edit.native.js.snap +0 -88
  1018. package/src/paragraph/test/__snapshots__/transforms.native.js.snap +0 -65
  1019. package/src/paragraph/test/edit.native.js +0 -999
  1020. package/src/paragraph/test/transforms.native.js +0 -51
  1021. package/src/paragraph/transforms.native.js +0 -12
  1022. package/src/preformatted/edit.native.js +0 -48
  1023. package/src/preformatted/styles.native.scss +0 -30
  1024. package/src/preformatted/test/__snapshots__/edit.native.js.snap +0 -95
  1025. package/src/preformatted/test/__snapshots__/transforms.native.js.snap +0 -37
  1026. package/src/preformatted/test/edit.native.js +0 -111
  1027. package/src/preformatted/test/transforms.native.js +0 -47
  1028. package/src/preformatted/transforms.native.js +0 -12
  1029. package/src/pullquote/blockquote.native.js +0 -39
  1030. package/src/pullquote/blockquote.native.scss +0 -8
  1031. package/src/pullquote/edit.native.js +0 -128
  1032. package/src/pullquote/figure.native.js +0 -33
  1033. package/src/pullquote/figure.native.scss +0 -16
  1034. package/src/pullquote/test/__snapshots__/transforms.native.js.snap +0 -47
  1035. package/src/pullquote/test/edit.native.js +0 -73
  1036. package/src/pullquote/test/transforms.native.js +0 -46
  1037. package/src/pullquote/transforms.native.js +0 -12
  1038. package/src/quote/test/__snapshots__/transforms.native.js.snap +0 -49
  1039. package/src/quote/test/edit.native.js +0 -94
  1040. package/src/quote/test/transforms.native.js +0 -69
  1041. package/src/quote/transforms.native.js +0 -12
  1042. package/src/search/edit.native.js +0 -486
  1043. package/src/search/style.native.scss +0 -99
  1044. package/src/search/test/__snapshots__/edit.native.js.snap +0 -827
  1045. package/src/search/test/__snapshots__/transforms.native.js.snap +0 -15
  1046. package/src/search/test/edit.native.js +0 -170
  1047. package/src/search/test/transforms.native.js +0 -40
  1048. package/src/separator/separator-settings.native.js +0 -3
  1049. package/src/separator/test/__snapshots__/edit.native.js.snap +0 -7
  1050. package/src/separator/test/__snapshots__/transforms.native.js.snap +0 -25
  1051. package/src/separator/test/edit.native.js +0 -41
  1052. package/src/separator/test/transforms.native.js +0 -42
  1053. package/src/separator/transforms.native.js +0 -12
  1054. package/src/shortcode/edit.native.js +0 -77
  1055. package/src/shortcode/style.native.scss +0 -44
  1056. package/src/shortcode/test/__snapshots__/edit.native.js.snap +0 -9
  1057. package/src/shortcode/test/__snapshots__/transforms.native.js.snap +0 -19
  1058. package/src/shortcode/test/edit.native.js +0 -70
  1059. package/src/shortcode/test/transforms.native.js +0 -42
  1060. package/src/shortcode/transforms.native.js +0 -12
  1061. package/src/social-link/edit.native.js +0 -219
  1062. package/src/social-link/editor.native.scss +0 -18
  1063. package/src/social-links/edit.native.js +0 -147
  1064. package/src/social-links/editor.native.scss +0 -25
  1065. package/src/social-links/test/__snapshots__/edit.native.js.snap +0 -57
  1066. package/src/social-links/test/__snapshots__/transforms.native.js.snap +0 -31
  1067. package/src/social-links/test/edit.native.js +0 -266
  1068. package/src/social-links/test/transforms.native.js +0 -53
  1069. package/src/spacer/controls.native.js +0 -86
  1070. package/src/spacer/edit.native.js +0 -110
  1071. package/src/spacer/editor.native.scss +0 -18
  1072. package/src/spacer/save.native.js +0 -18
  1073. package/src/spacer/test/__snapshots__/index.native.js.snap +0 -43
  1074. package/src/spacer/test/__snapshots__/transforms.native.js.snap +0 -25
  1075. package/src/spacer/test/index.native.js +0 -257
  1076. package/src/spacer/test/transforms.native.js +0 -42
  1077. package/src/tab/block.json +0 -56
  1078. package/src/tab/controls.js +0 -19
  1079. package/src/tab/edit.js +0 -141
  1080. package/src/tab/editor.scss +0 -14
  1081. package/src/tab/index.js +0 -24
  1082. package/src/tab/index.php +0 -70
  1083. package/src/tab/save.js +0 -13
  1084. package/src/tab-list/editor.scss +0 -10
  1085. package/src/tab-panels/style.scss +0 -4
  1086. package/src/table/transforms.native.js +0 -11
  1087. package/src/tabs/use-tab-list-sync.js +0 -237
  1088. package/src/text-columns/transforms.native.js +0 -12
  1089. package/src/utils/init-block.native.js +0 -40
  1090. package/src/utils/transformation-categories.native.js +0 -47
  1091. package/src/verse/test/__snapshots__/edit.native.js.snap +0 -13
  1092. package/src/verse/test/__snapshots__/transforms.native.js.snap +0 -31
  1093. package/src/verse/test/edit.native.js +0 -118
  1094. package/src/verse/test/transforms.native.js +0 -46
  1095. package/src/verse/transforms.native.js +0 -12
  1096. package/src/video/edit.native.js +0 -406
  1097. package/src/video/icon-retry.native.js +0 -11
  1098. package/src/video/style.native.scss +0 -81
  1099. package/src/video/test/__snapshots__/transforms.native.js.snap +0 -41
  1100. package/src/video/test/edit.native.js +0 -53
  1101. package/src/video/test/transforms.native.js +0 -49
  1102. package/src/video/transforms.native.js +0 -12
@@ -96,20 +96,12 @@ function FileEdit({ attributes, isSelected, setAttributes, clientId }) {
96
96
  [id]
97
97
  );
98
98
  const { createErrorNotice } = (0, import_data.useDispatch)(import_notices.store);
99
- const { toggleSelection, __unstableMarkNextChangeAsNotPersistent } = (0, import_data.useDispatch)(import_block_editor.store);
99
+ const { toggleSelection } = (0, import_data.useDispatch)(import_block_editor.store);
100
100
  (0, import_hooks.useUploadMediaFromBlobURL)({
101
101
  url: temporaryURL,
102
102
  onChange: onSelectFile,
103
103
  onError: onUploadError
104
104
  });
105
- (0, import_element.useEffect)(() => {
106
- if (import_block_editor.RichText.isEmpty(downloadButtonText)) {
107
- __unstableMarkNextChangeAsNotPersistent();
108
- setAttributes({
109
- downloadButtonText: (0, import_i18n._x)("Download", "button label")
110
- });
111
- }
112
- }, []);
113
105
  function onSelectFile(newMedia) {
114
106
  if (!newMedia || !newMedia.url) {
115
107
  setAttributes({
@@ -290,7 +282,7 @@ function FileEdit({ attributes, isSelected, setAttributes, clientId }) {
290
282
  identifier: "fileName",
291
283
  tagName: "a",
292
284
  value: fileName,
293
- placeholder: (0, import_i18n.__)("Write file name\u2026"),
285
+ placeholder: (0, import_i18n.__)("Write file name"),
294
286
  withoutInteractiveFormatting: true,
295
287
  onChange: (text) => setAttributes({
296
288
  fileName: (0, import_remove_anchor_tag.default)(text)
@@ -312,7 +304,7 @@ function FileEdit({ attributes, isSelected, setAttributes, clientId }) {
312
304
  ),
313
305
  value: downloadButtonText,
314
306
  withoutInteractiveFormatting: true,
315
- placeholder: (0, import_i18n.__)("Add text\u2026"),
307
+ placeholder: (0, import_i18n.__)("Add text"),
316
308
  onChange: (text) => setAttributes({
317
309
  downloadButtonText: (0, import_remove_anchor_tag.default)(text)
318
310
  })
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/file/edit.js"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\t__unstableGetAnimateClassName as getAnimateClassName,\n\tResizableBox,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { useEffect, useState } from '@wordpress/element';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { __, _x } from '@wordpress/i18n';\nimport { file as icon } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { getFilename } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport FileBlockInspector from './inspector';\nimport { browserSupportsPdfs } from './utils';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\n\nexport const MIN_PREVIEW_HEIGHT = 200;\nexport const MAX_PREVIEW_HEIGHT = 2000;\n\nfunction ClipboardToolbarButton( { text, disabled } ) {\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst ref = useCopyToClipboard( text, () => {\n\t\tcreateNotice( 'info', __( 'Copied URL to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<ToolbarButton\n\t\t\tclassName=\"components-clipboard-toolbar-button\"\n\t\t\tref={ ref }\n\t\t\tdisabled={ disabled }\n\t\t>\n\t\t\t{ __( 'Copy URL' ) }\n\t\t</ToolbarButton>\n\t);\n}\n\nfunction FileEdit( { attributes, isSelected, setAttributes, clientId } ) {\n\tconst {\n\t\tid,\n\t\tfileName,\n\t\thref,\n\t\ttextLinkHref,\n\t\ttextLinkTarget,\n\t\tshowDownloadButton,\n\t\tdownloadButtonText,\n\t\tdisplayPreview,\n\t\tpreviewHeight,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst { media } = useSelect(\n\t\t( select ) => ( {\n\t\t\tmedia:\n\t\t\t\tid === undefined\n\t\t\t\t\t? undefined\n\t\t\t\t\t: select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t'attachment',\n\t\t\t\t\t\t\tid\n\t\t\t\t\t ),\n\t\t} ),\n\t\t[ id ]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { toggleSelection, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tonChange: onSelectFile,\n\t\tonError: onUploadError,\n\t} );\n\n\t// Note: Handle setting a default value for `downloadButtonText` via HTML API\n\t// when it supports replacing text content for HTML tags.\n\tuseEffect( () => {\n\t\tif ( RichText.isEmpty( downloadButtonText ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tdownloadButtonText: _x( 'Download', 'button label' ),\n\t\t\t} );\n\t\t}\n\t\t// This effect should only run on mount.\n\t}, [] );\n\n\tfunction onSelectFile( newMedia ) {\n\t\tif ( ! newMedia || ! newMedia.url ) {\n\t\t\t// Reset attributes.\n\t\t\tsetAttributes( {\n\t\t\t\thref: undefined,\n\t\t\t\tfileName: undefined,\n\t\t\t\ttextLinkHref: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tfileId: undefined,\n\t\t\t\tdisplayPreview: undefined,\n\t\t\t\tpreviewHeight: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( newMedia.url ) ) {\n\t\t\tsetTemporaryURL( newMedia.url );\n\t\t\treturn;\n\t\t}\n\n\t\tconst isPdf =\n\t\t\t// Media Library and REST API use different properties for mime type.\n\t\t\t( newMedia.mime || newMedia.mime_type ) === 'application/pdf' ||\n\t\t\tgetFilename( newMedia.url ).toLowerCase().endsWith( '.pdf' );\n\t\tconst pdfAttributes = {\n\t\t\tdisplayPreview: isPdf\n\t\t\t\t? attributes.displayPreview ?? true\n\t\t\t\t: undefined,\n\t\t\tpreviewHeight: isPdf ? attributes.previewHeight ?? 600 : undefined,\n\t\t};\n\n\t\tsetAttributes( {\n\t\t\thref: newMedia.url,\n\t\t\tfileName: newMedia.title,\n\t\t\ttextLinkHref: newMedia.url,\n\t\t\tid: newMedia.id,\n\t\t\tfileId: `wp-block-file--media-${ clientId }`,\n\t\t\tblob: undefined,\n\t\t\t...pdfAttributes,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tsetAttributes( { href: undefined } );\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction changeLinkDestinationOption( newHref ) {\n\t\t// Choose Media File or Attachment Page (when file is in Media Library).\n\t\tsetAttributes( { textLinkHref: newHref } );\n\t}\n\n\tfunction changeOpenInNewWindow( newValue ) {\n\t\tsetAttributes( {\n\t\t\ttextLinkTarget: newValue ? '_blank' : false,\n\t\t} );\n\t}\n\n\tfunction changeShowDownloadButton( newValue ) {\n\t\tsetAttributes( { showDownloadButton: newValue } );\n\t}\n\n\tfunction changeDisplayPreview( newValue ) {\n\t\tsetAttributes( { displayPreview: newValue } );\n\t}\n\n\tfunction handleOnResizeStop( event, direction, elt, delta ) {\n\t\ttoggleSelection( true );\n\n\t\tconst newHeight = parseInt( previewHeight + delta.height, 10 );\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tfunction changePreviewHeight( newValue ) {\n\t\tconst newHeight = Math.max(\n\t\t\tparseInt( newValue, 10 ),\n\t\t\tMIN_PREVIEW_HEIGHT\n\t\t);\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tconst attachmentPage = media && media.link;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx(\n\t\t\t!! temporaryURL && getAnimateClassName( { type: 'loading' } ),\n\t\t\t{\n\t\t\t\t'is-transient': !! temporaryURL,\n\t\t\t}\n\t\t),\n\t} );\n\n\tconst displayPreviewInEditor = browserSupportsPdfs() && displayPreview;\n\n\tif ( ! href && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'File' ),\n\t\t\t\t\t\tinstructions: __(\n\t\t\t\t\t\t\t'Drag and drop a file, upload, or choose from your library.'\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FileBlockInspector\n\t\t\t\threfs={ {\n\t\t\t\t\thref: href || temporaryURL,\n\t\t\t\t\ttextLinkHref,\n\t\t\t\t\tattachmentPage,\n\t\t\t\t} }\n\t\t\t\t{ ...{\n\t\t\t\t\topenInNewWindow: !! textLinkTarget,\n\t\t\t\t\tshowDownloadButton,\n\t\t\t\t\tchangeLinkDestinationOption,\n\t\t\t\t\tchangeOpenInNewWindow,\n\t\t\t\t\tchangeShowDownloadButton,\n\t\t\t\t\tdisplayPreview,\n\t\t\t\t\tchangeDisplayPreview,\n\t\t\t\t\tpreviewHeight,\n\t\t\t\t\tchangePreviewHeight,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ href }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tonReset={ () => onSelectFile( undefined ) }\n\t\t\t\t/>\n\t\t\t\t<ClipboardToolbarButton\n\t\t\t\t\ttext={ href }\n\t\t\t\t\tdisabled={ isBlobURL( href ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ displayPreviewInEditor && (\n\t\t\t\t\t<ResizableBox\n\t\t\t\t\t\tsize={ { height: previewHeight, width: '100%' } }\n\t\t\t\t\t\tminHeight={ MIN_PREVIEW_HEIGHT }\n\t\t\t\t\t\tmaxHeight={ MAX_PREVIEW_HEIGHT }\n\t\t\t\t\t\t// The horizontal grid value must be 1 or else the width may snap during a\n\t\t\t\t\t\t// resize even though only vertical resizing is enabled.\n\t\t\t\t\t\tgrid={ [ 1, 10 ] }\n\t\t\t\t\t\tenable={ {\n\t\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\t\tright: false,\n\t\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStart={ () => toggleSelection( false ) }\n\t\t\t\t\t\tonResizeStop={ handleOnResizeStop }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t>\n\t\t\t\t\t\t<object\n\t\t\t\t\t\t\tclassName=\"wp-block-file__preview\"\n\t\t\t\t\t\t\tdata={ href }\n\t\t\t\t\t\t\ttype=\"application/pdf\"\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'Embed of the selected PDF file.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! isSelected && (\n\t\t\t\t\t\t\t<div className=\"wp-block-file__preview-overlay\" />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ResizableBox>\n\t\t\t\t) }\n\t\t\t\t<div className=\"wp-block-file__content-wrapper\">\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"fileName\"\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tvalue={ fileName }\n\t\t\t\t\t\tplaceholder={ __( 'Write file name\u2026' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tfileName: removeAnchorTag( text ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thref={ textLinkHref }\n\t\t\t\t\t/>\n\t\t\t\t\t{ showDownloadButton && (\n\t\t\t\t\t\t<div className=\"wp-block-file__button-richtext-wrapper\">\n\t\t\t\t\t\t\t{ /* Using RichText here instead of PlainText so that it can be styled like a button. */ }\n\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\tidentifier=\"downloadButtonText\"\n\t\t\t\t\t\t\t\ttagName=\"div\" // Must be block-level or else cursor disappears.\n\t\t\t\t\t\t\t\taria-label={ __( 'Download button text' ) }\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'wp-block-file__button',\n\t\t\t\t\t\t\t\t\t__experimentalGetElementClassName(\n\t\t\t\t\t\t\t\t\t\t'button'\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\tvalue={ downloadButtonText }\n\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\tplaceholder={ __( 'Add text\u2026' ) }\n\t\t\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tdownloadButtonText:\n\t\t\t\t\t\t\t\t\t\t\tremoveAnchorTag( text ),\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</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default FileEdit;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\t__unstableGetAnimateClassName as getAnimateClassName,\n\tResizableBox,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { useState } from '@wordpress/element';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { file as icon } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { getFilename } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport FileBlockInspector from './inspector';\nimport { browserSupportsPdfs } from './utils';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\n\nexport const MIN_PREVIEW_HEIGHT = 200;\nexport const MAX_PREVIEW_HEIGHT = 2000;\n\nfunction ClipboardToolbarButton( { text, disabled } ) {\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst ref = useCopyToClipboard( text, () => {\n\t\tcreateNotice( 'info', __( 'Copied URL to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<ToolbarButton\n\t\t\tclassName=\"components-clipboard-toolbar-button\"\n\t\t\tref={ ref }\n\t\t\tdisabled={ disabled }\n\t\t>\n\t\t\t{ __( 'Copy URL' ) }\n\t\t</ToolbarButton>\n\t);\n}\n\nfunction FileEdit( { attributes, isSelected, setAttributes, clientId } ) {\n\tconst {\n\t\tid,\n\t\tfileName,\n\t\thref,\n\t\ttextLinkHref,\n\t\ttextLinkTarget,\n\t\tshowDownloadButton,\n\t\tdownloadButtonText,\n\t\tdisplayPreview,\n\t\tpreviewHeight,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst { media } = useSelect(\n\t\t( select ) => ( {\n\t\t\tmedia:\n\t\t\t\tid === undefined\n\t\t\t\t\t? undefined\n\t\t\t\t\t: select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t'attachment',\n\t\t\t\t\t\t\tid\n\t\t\t\t\t ),\n\t\t} ),\n\t\t[ id ]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tonChange: onSelectFile,\n\t\tonError: onUploadError,\n\t} );\n\n\tfunction onSelectFile( newMedia ) {\n\t\tif ( ! newMedia || ! newMedia.url ) {\n\t\t\t// Reset attributes.\n\t\t\tsetAttributes( {\n\t\t\t\thref: undefined,\n\t\t\t\tfileName: undefined,\n\t\t\t\ttextLinkHref: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tfileId: undefined,\n\t\t\t\tdisplayPreview: undefined,\n\t\t\t\tpreviewHeight: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( newMedia.url ) ) {\n\t\t\tsetTemporaryURL( newMedia.url );\n\t\t\treturn;\n\t\t}\n\n\t\tconst isPdf =\n\t\t\t// Media Library and REST API use different properties for mime type.\n\t\t\t( newMedia.mime || newMedia.mime_type ) === 'application/pdf' ||\n\t\t\tgetFilename( newMedia.url ).toLowerCase().endsWith( '.pdf' );\n\t\tconst pdfAttributes = {\n\t\t\tdisplayPreview: isPdf\n\t\t\t\t? attributes.displayPreview ?? true\n\t\t\t\t: undefined,\n\t\t\tpreviewHeight: isPdf ? attributes.previewHeight ?? 600 : undefined,\n\t\t};\n\n\t\tsetAttributes( {\n\t\t\thref: newMedia.url,\n\t\t\tfileName: newMedia.title,\n\t\t\ttextLinkHref: newMedia.url,\n\t\t\tid: newMedia.id,\n\t\t\tfileId: `wp-block-file--media-${ clientId }`,\n\t\t\tblob: undefined,\n\t\t\t...pdfAttributes,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tsetAttributes( { href: undefined } );\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction changeLinkDestinationOption( newHref ) {\n\t\t// Choose Media File or Attachment Page (when file is in Media Library).\n\t\tsetAttributes( { textLinkHref: newHref } );\n\t}\n\n\tfunction changeOpenInNewWindow( newValue ) {\n\t\tsetAttributes( {\n\t\t\ttextLinkTarget: newValue ? '_blank' : false,\n\t\t} );\n\t}\n\n\tfunction changeShowDownloadButton( newValue ) {\n\t\tsetAttributes( { showDownloadButton: newValue } );\n\t}\n\n\tfunction changeDisplayPreview( newValue ) {\n\t\tsetAttributes( { displayPreview: newValue } );\n\t}\n\n\tfunction handleOnResizeStop( event, direction, elt, delta ) {\n\t\ttoggleSelection( true );\n\n\t\tconst newHeight = parseInt( previewHeight + delta.height, 10 );\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tfunction changePreviewHeight( newValue ) {\n\t\tconst newHeight = Math.max(\n\t\t\tparseInt( newValue, 10 ),\n\t\t\tMIN_PREVIEW_HEIGHT\n\t\t);\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tconst attachmentPage = media && media.link;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx(\n\t\t\t!! temporaryURL && getAnimateClassName( { type: 'loading' } ),\n\t\t\t{\n\t\t\t\t'is-transient': !! temporaryURL,\n\t\t\t}\n\t\t),\n\t} );\n\n\tconst displayPreviewInEditor = browserSupportsPdfs() && displayPreview;\n\n\tif ( ! href && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'File' ),\n\t\t\t\t\t\tinstructions: __(\n\t\t\t\t\t\t\t'Drag and drop a file, upload, or choose from your library.'\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FileBlockInspector\n\t\t\t\threfs={ {\n\t\t\t\t\thref: href || temporaryURL,\n\t\t\t\t\ttextLinkHref,\n\t\t\t\t\tattachmentPage,\n\t\t\t\t} }\n\t\t\t\t{ ...{\n\t\t\t\t\topenInNewWindow: !! textLinkTarget,\n\t\t\t\t\tshowDownloadButton,\n\t\t\t\t\tchangeLinkDestinationOption,\n\t\t\t\t\tchangeOpenInNewWindow,\n\t\t\t\t\tchangeShowDownloadButton,\n\t\t\t\t\tdisplayPreview,\n\t\t\t\t\tchangeDisplayPreview,\n\t\t\t\t\tpreviewHeight,\n\t\t\t\t\tchangePreviewHeight,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ href }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tonReset={ () => onSelectFile( undefined ) }\n\t\t\t\t/>\n\t\t\t\t<ClipboardToolbarButton\n\t\t\t\t\ttext={ href }\n\t\t\t\t\tdisabled={ isBlobURL( href ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ displayPreviewInEditor && (\n\t\t\t\t\t<ResizableBox\n\t\t\t\t\t\tsize={ { height: previewHeight, width: '100%' } }\n\t\t\t\t\t\tminHeight={ MIN_PREVIEW_HEIGHT }\n\t\t\t\t\t\tmaxHeight={ MAX_PREVIEW_HEIGHT }\n\t\t\t\t\t\t// The horizontal grid value must be 1 or else the width may snap during a\n\t\t\t\t\t\t// resize even though only vertical resizing is enabled.\n\t\t\t\t\t\tgrid={ [ 1, 10 ] }\n\t\t\t\t\t\tenable={ {\n\t\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\t\tright: false,\n\t\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStart={ () => toggleSelection( false ) }\n\t\t\t\t\t\tonResizeStop={ handleOnResizeStop }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t>\n\t\t\t\t\t\t<object\n\t\t\t\t\t\t\tclassName=\"wp-block-file__preview\"\n\t\t\t\t\t\t\tdata={ href }\n\t\t\t\t\t\t\ttype=\"application/pdf\"\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'Embed of the selected PDF file.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! isSelected && (\n\t\t\t\t\t\t\t<div className=\"wp-block-file__preview-overlay\" />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ResizableBox>\n\t\t\t\t) }\n\t\t\t\t<div className=\"wp-block-file__content-wrapper\">\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"fileName\"\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tvalue={ fileName }\n\t\t\t\t\t\tplaceholder={ __( 'Write file name…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tfileName: removeAnchorTag( text ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thref={ textLinkHref }\n\t\t\t\t\t/>\n\t\t\t\t\t{ showDownloadButton && (\n\t\t\t\t\t\t<div className=\"wp-block-file__button-richtext-wrapper\">\n\t\t\t\t\t\t\t{ /* Using RichText here instead of PlainText so that it can be styled like a button. */ }\n\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\tidentifier=\"downloadButtonText\"\n\t\t\t\t\t\t\t\ttagName=\"div\" // Must be block-level or else cursor disappears.\n\t\t\t\t\t\t\t\taria-label={ __( 'Download button text' ) }\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'wp-block-file__button',\n\t\t\t\t\t\t\t\t\t__experimentalGetElementClassName(\n\t\t\t\t\t\t\t\t\t\t'button'\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\tvalue={ downloadButtonText }\n\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\tplaceholder={ __( 'Add text…' ) }\n\t\t\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tdownloadButtonText:\n\t\t\t\t\t\t\t\t\t\t\tremoveAnchorTag( text ),\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</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default FileEdit;\n"],
5
+ "mappings": "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",
6
6
  "names": ["noticesStore", "coreStore", "blockEditorStore", "clsx", "getAnimateClassName", "icon", "FileBlockInspector", "removeAnchorTag"]
7
7
  }
@@ -45,6 +45,7 @@ var import_edit = __toESM(require("./edit.cjs"));
45
45
  var import_block = __toESM(require("./block.json"));
46
46
  var import_save = __toESM(require("./save.cjs"));
47
47
  var import_transforms = __toESM(require("./transforms.cjs"));
48
+ var import_variations = __toESM(require("./variations.cjs"));
48
49
  var import_lock_unlock = require("../lock-unlock.cjs");
49
50
  var { fieldsKey, formKey } = (0, import_lock_unlock.unlock)(import_blocks.privateApis);
50
51
  var { name } = import_block.default;
@@ -59,7 +60,8 @@ var settings = {
59
60
  transforms: import_transforms.default,
60
61
  deprecated: import_deprecated.default,
61
62
  edit: import_edit.default,
62
- save: import_save.default
63
+ save: import_save.default,
64
+ variations: import_variations.default
63
65
  };
64
66
  if (window.__experimentalContentOnlyInspectorFields) {
65
67
  settings[fieldsKey] = [
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/file/index.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { _x, __ } from '@wordpress/i18n';\nimport { file as icon } from '@wordpress/icons';\nimport { privateApis as blocksPrivateApis } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\nimport { unlock } from '../lock-unlock';\n\nconst { fieldsKey, formKey } = unlock( blocksPrivateApis );\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\thref: 'https://upload.wikimedia.org/wikipedia/commons/d/dd/Armstrong_Small_Step.ogg',\n\t\t\tfileName: _x( 'Armstrong_Small_Step', 'Name of the file' ),\n\t\t},\n\t},\n\ttransforms,\n\tdeprecated,\n\tedit,\n\tsave,\n};\n\nif ( window.__experimentalContentOnlyInspectorFields ) {\n\tsettings[ fieldsKey ] = [\n\t\t{\n\t\t\tid: 'file',\n\t\t\tlabel: __( 'File' ),\n\t\t\ttype: 'media',\n\t\t\tEdit: {\n\t\t\t\tcontrol: 'media', // TODO: replace with custom component\n\t\t\t\tallowedTypes: [],\n\t\t\t\tmultiple: false,\n\t\t\t},\n\t\t\tgetValue: ( { item } ) => ( {\n\t\t\t\tid: item.id,\n\t\t\t\turl: item.href,\n\t\t\t} ),\n\t\t\tsetValue: ( { value } ) => ( {\n\t\t\t\tid: value.id,\n\t\t\t\thref: value.url,\n\t\t\t} ),\n\t\t},\n\t\t{\n\t\t\tid: 'fileName',\n\t\t\tlabel: __( 'Filename' ),\n\t\t\ttype: 'text',\n\t\t\tEdit: 'rich-text', // TODO: replace with custom component\n\t\t},\n\t\t{\n\t\t\tid: 'downloadButtonText',\n\t\t\tlabel: __( 'Button Text' ),\n\t\t\ttype: 'text',\n\t\t\tEdit: 'rich-text', // TODO: replace with custom component\n\t\t},\n\t];\n\tsettings[ formKey ] = {\n\t\tfields: [ 'file', 'fileName', 'downloadButtonText' ],\n\t};\n}\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA,+BAAAA;AAAA,EAAA;AAAA;AAAA;AAAA;AAGA,kBAAuB;AACvB,mBAA6B;AAC7B,oBAAiD;AAKjD,wBAAsB;AACtB,wBAAuB;AACvB,kBAAiB;AACjB,mBAAqB;AACrB,kBAAiB;AACjB,wBAAuB;AACvB,yBAAuB;AAEvB,IAAM,EAAE,WAAW,QAAQ,QAAI,2BAAQ,cAAAC,WAAkB;AAEzD,IAAM,EAAE,KAAK,IAAI,aAAAD;AAIV,IAAM,WAAW;AAAA,EACvB,mBAAAE;AAAA,EACA,SAAS;AAAA,IACR,YAAY;AAAA,MACX,MAAM;AAAA,MACN,cAAU,gBAAI,wBAAwB,kBAAmB;AAAA,IAC1D;AAAA,EACD;AAAA,EACA,8BAAAC;AAAA,EACA,8BAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,kBAAAC;AACD;AAEA,IAAK,OAAO,0CAA2C;AACtD,WAAU,SAAU,IAAI;AAAA,IACvB;AAAA,MACC,IAAI;AAAA,MACJ,WAAO,gBAAI,MAAO;AAAA,MAClB,MAAM;AAAA,MACN,MAAM;AAAA,QACL,SAAS;AAAA;AAAA,QACT,cAAc,CAAC;AAAA,QACf,UAAU;AAAA,MACX;AAAA,MACA,UAAU,CAAE,EAAE,KAAK,OAAS;AAAA,QAC3B,IAAI,KAAK;AAAA,QACT,KAAK,KAAK;AAAA,MACX;AAAA,MACA,UAAU,CAAE,EAAE,MAAM,OAAS;AAAA,QAC5B,IAAI,MAAM;AAAA,QACV,MAAM,MAAM;AAAA,MACb;AAAA,IACD;AAAA,IACA;AAAA,MACC,IAAI;AAAA,MACJ,WAAO,gBAAI,UAAW;AAAA,MACtB,MAAM;AAAA,MACN,MAAM;AAAA;AAAA,IACP;AAAA,IACA;AAAA,MACC,IAAI;AAAA,MACJ,WAAO,gBAAI,aAAc;AAAA,MACzB,MAAM;AAAA,MACN,MAAM;AAAA;AAAA,IACP;AAAA,EACD;AACA,WAAU,OAAQ,IAAI;AAAA,IACrB,QAAQ,CAAE,QAAQ,YAAY,oBAAqB;AAAA,EACpD;AACD;AAEO,IAAM,OAAO,UAAM,kBAAAC,SAAW,EAAE,MAAM,uBAAAC,SAAU,SAAS,CAAE;",
6
- "names": ["metadata", "blocksPrivateApis", "icon", "transforms", "deprecated", "edit", "save", "initBlock", "metadata"]
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { _x, __ } from '@wordpress/i18n';\nimport { file as icon } from '@wordpress/icons';\nimport { privateApis as blocksPrivateApis } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\nimport variations from './variations';\nimport { unlock } from '../lock-unlock';\n\nconst { fieldsKey, formKey } = unlock( blocksPrivateApis );\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\thref: 'https://upload.wikimedia.org/wikipedia/commons/d/dd/Armstrong_Small_Step.ogg',\n\t\t\tfileName: _x( 'Armstrong_Small_Step', 'Name of the file' ),\n\t\t},\n\t},\n\ttransforms,\n\tdeprecated,\n\tedit,\n\tsave,\n\tvariations,\n};\n\nif ( window.__experimentalContentOnlyInspectorFields ) {\n\tsettings[ fieldsKey ] = [\n\t\t{\n\t\t\tid: 'file',\n\t\t\tlabel: __( 'File' ),\n\t\t\ttype: 'media',\n\t\t\tEdit: {\n\t\t\t\tcontrol: 'media', // TODO: replace with custom component\n\t\t\t\tallowedTypes: [],\n\t\t\t\tmultiple: false,\n\t\t\t},\n\t\t\tgetValue: ( { item } ) => ( {\n\t\t\t\tid: item.id,\n\t\t\t\turl: item.href,\n\t\t\t} ),\n\t\t\tsetValue: ( { value } ) => ( {\n\t\t\t\tid: value.id,\n\t\t\t\thref: value.url,\n\t\t\t} ),\n\t\t},\n\t\t{\n\t\t\tid: 'fileName',\n\t\t\tlabel: __( 'Filename' ),\n\t\t\ttype: 'text',\n\t\t\tEdit: 'rich-text', // TODO: replace with custom component\n\t\t},\n\t\t{\n\t\t\tid: 'downloadButtonText',\n\t\t\tlabel: __( 'Button Text' ),\n\t\t\ttype: 'text',\n\t\t\tEdit: 'rich-text', // TODO: replace with custom component\n\t\t},\n\t];\n\tsettings[ formKey ] = {\n\t\tfields: [ 'file', 'fileName', 'downloadButtonText' ],\n\t};\n}\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA,+BAAAA;AAAA,EAAA;AAAA;AAAA;AAAA;AAGA,kBAAuB;AACvB,mBAA6B;AAC7B,oBAAiD;AAKjD,wBAAsB;AACtB,wBAAuB;AACvB,kBAAiB;AACjB,mBAAqB;AACrB,kBAAiB;AACjB,wBAAuB;AACvB,wBAAuB;AACvB,yBAAuB;AAEvB,IAAM,EAAE,WAAW,QAAQ,QAAI,2BAAQ,cAAAC,WAAkB;AAEzD,IAAM,EAAE,KAAK,IAAI,aAAAD;AAIV,IAAM,WAAW;AAAA,EACvB,mBAAAE;AAAA,EACA,SAAS;AAAA,IACR,YAAY;AAAA,MACX,MAAM;AAAA,MACN,cAAU,gBAAI,wBAAwB,kBAAmB;AAAA,IAC1D;AAAA,EACD;AAAA,EACA,8BAAAC;AAAA,EACA,8BAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,8BAAAC;AACD;AAEA,IAAK,OAAO,0CAA2C;AACtD,WAAU,SAAU,IAAI;AAAA,IACvB;AAAA,MACC,IAAI;AAAA,MACJ,WAAO,gBAAI,MAAO;AAAA,MAClB,MAAM;AAAA,MACN,MAAM;AAAA,QACL,SAAS;AAAA;AAAA,QACT,cAAc,CAAC;AAAA,QACf,UAAU;AAAA,MACX;AAAA,MACA,UAAU,CAAE,EAAE,KAAK,OAAS;AAAA,QAC3B,IAAI,KAAK;AAAA,QACT,KAAK,KAAK;AAAA,MACX;AAAA,MACA,UAAU,CAAE,EAAE,MAAM,OAAS;AAAA,QAC5B,IAAI,MAAM;AAAA,QACV,MAAM,MAAM;AAAA,MACb;AAAA,IACD;AAAA,IACA;AAAA,MACC,IAAI;AAAA,MACJ,WAAO,gBAAI,UAAW;AAAA,MACtB,MAAM;AAAA,MACN,MAAM;AAAA;AAAA,IACP;AAAA,IACA;AAAA,MACC,IAAI;AAAA,MACJ,WAAO,gBAAI,aAAc;AAAA,MACzB,MAAM;AAAA,MACN,MAAM;AAAA;AAAA,IACP;AAAA,EACD;AACA,WAAU,OAAQ,IAAI;AAAA,IACrB,QAAQ,CAAE,QAAQ,YAAY,oBAAqB;AAAA,EACpD;AACD;AAEO,IAAM,OAAO,UAAM,kBAAAC,SAAW,EAAE,MAAM,uBAAAC,SAAU,SAAS,CAAE;",
6
+ "names": ["metadata", "blocksPrivateApis", "icon", "transforms", "deprecated", "edit", "save", "variations", "initBlock", "metadata"]
7
7
  }
@@ -27,7 +27,9 @@ var import_blob = require("@wordpress/blob");
27
27
  var import_blocks = require("@wordpress/blocks");
28
28
  var import_data = require("@wordpress/data");
29
29
  var import_core_data = require("@wordpress/core-data");
30
+ var import_i18n = require("@wordpress/i18n");
30
31
  var import_url = require("@wordpress/url");
32
+ var downloadButtonText = (0, import_i18n._x)("Download", "button label");
31
33
  var transforms = {
32
34
  from: [
33
35
  {
@@ -64,7 +66,8 @@ var transforms = {
64
66
  blocks.push(
65
67
  (0, import_blocks.createBlock)("core/file", {
66
68
  blob: blobURL,
67
- fileName: file.name
69
+ fileName: file.name,
70
+ downloadButtonText
68
71
  })
69
72
  );
70
73
  }
@@ -74,40 +77,16 @@ var transforms = {
74
77
  },
75
78
  {
76
79
  type: "block",
77
- blocks: ["core/audio"],
78
- transform: (attributes) => {
79
- return (0, import_blocks.createBlock)("core/file", {
80
- href: attributes.src,
81
- fileName: attributes.caption,
82
- textLinkHref: attributes.src,
83
- id: attributes.id,
84
- anchor: attributes.anchor
85
- });
86
- }
87
- },
88
- {
89
- type: "block",
90
- blocks: ["core/video"],
80
+ blocks: ["core/audio", "core/video", "core/image"],
91
81
  transform: (attributes) => {
82
+ const href = attributes.src ?? attributes.url;
92
83
  return (0, import_blocks.createBlock)("core/file", {
93
- href: attributes.src,
94
- fileName: attributes.caption,
95
- textLinkHref: attributes.src,
84
+ href,
85
+ fileName: attributes.caption || (0, import_url.getFilename)(href),
86
+ textLinkHref: href,
96
87
  id: attributes.id,
97
- anchor: attributes.anchor
98
- });
99
- }
100
- },
101
- {
102
- type: "block",
103
- blocks: ["core/image"],
104
- transform: (attributes) => {
105
- return (0, import_blocks.createBlock)("core/file", {
106
- href: attributes.url,
107
- fileName: attributes.caption || (0, import_url.getFilename)(attributes.url),
108
- textLinkHref: attributes.url,
109
- id: attributes.id,
110
- anchor: attributes.anchor
88
+ anchor: attributes.anchor,
89
+ downloadButtonText
111
90
  });
112
91
  }
113
92
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/file/transforms.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { createBlobURL } from '@wordpress/blob';\nimport { createBlock } from '@wordpress/blocks';\nimport { select } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { getFilename } from '@wordpress/url';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'files',\n\t\t\tisMatch( files ) {\n\t\t\t\treturn files.length > 0;\n\t\t\t},\n\t\t\t// We define a lower priority (higher number) than the default of 10. This\n\t\t\t// ensures that the File block is only created as a fallback.\n\t\t\tpriority: 15,\n\t\t\ttransform: ( files ) => {\n\t\t\t\tconst blocks = [];\n\n\t\t\t\tfiles.forEach( ( file ) => {\n\t\t\t\t\tconst blobURL = createBlobURL( file );\n\n\t\t\t\t\t// File will be uploaded in componentDidMount()\n\t\t\t\t\tif ( file.type.startsWith( 'video/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/video', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( file.type.startsWith( 'image/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( file.type.startsWith( 'audio/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/audio', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/file', {\n\t\t\t\t\t\t\t\tblob: blobURL,\n\t\t\t\t\t\t\t\tfileName: file.name,\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\n\t\t\t\treturn blocks;\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/audio' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/file', {\n\t\t\t\t\thref: attributes.src,\n\t\t\t\t\tfileName: attributes.caption,\n\t\t\t\t\ttextLinkHref: attributes.src,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/file', {\n\t\t\t\t\thref: attributes.src,\n\t\t\t\t\tfileName: attributes.caption,\n\t\t\t\t\ttextLinkHref: attributes.src,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/file', {\n\t\t\t\t\thref: attributes.url,\n\t\t\t\t\tfileName:\n\t\t\t\t\t\tattributes.caption || getFilename( attributes.url ),\n\t\t\t\t\ttextLinkHref: attributes.url,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/audio' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\t\tconst media = getEntityRecord( 'postType', 'attachment', id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'audio' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/audio', {\n\t\t\t\t\tsrc: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\t\tconst media = getEntityRecord( 'postType', 'attachment', id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'video' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/video', {\n\t\t\t\t\tsrc: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\t\tconst media = getEntityRecord( 'postType', 'attachment', id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'image' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\turl: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { createBlobURL } from '@wordpress/blob';\nimport { createBlock } from '@wordpress/blocks';\nimport { select } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { _x } from '@wordpress/i18n';\nimport { getFilename } from '@wordpress/url';\n\n// Transforms bypass the default variation, so set the localized default here.\nconst downloadButtonText = _x( 'Download', 'button label' );\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'files',\n\t\t\tisMatch( files ) {\n\t\t\t\treturn files.length > 0;\n\t\t\t},\n\t\t\t// We define a lower priority (higher number) than the default of 10. This\n\t\t\t// ensures that the File block is only created as a fallback.\n\t\t\tpriority: 15,\n\t\t\ttransform: ( files ) => {\n\t\t\t\tconst blocks = [];\n\n\t\t\t\tfiles.forEach( ( file ) => {\n\t\t\t\t\tconst blobURL = createBlobURL( file );\n\n\t\t\t\t\t// File will be uploaded in componentDidMount()\n\t\t\t\t\tif ( file.type.startsWith( 'video/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/video', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( file.type.startsWith( 'image/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( file.type.startsWith( 'audio/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/audio', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/file', {\n\t\t\t\t\t\t\t\tblob: blobURL,\n\t\t\t\t\t\t\t\tfileName: file.name,\n\t\t\t\t\t\t\t\tdownloadButtonText,\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\n\t\t\t\treturn blocks;\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/audio', 'core/video', 'core/image' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\t// Audio/Video use `src`, Image uses `url`.\n\t\t\t\tconst href = attributes.src ?? attributes.url;\n\t\t\t\treturn createBlock( 'core/file', {\n\t\t\t\t\thref,\n\t\t\t\t\tfileName: attributes.caption || getFilename( href ),\n\t\t\t\t\ttextLinkHref: href,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t\tdownloadButtonText,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/audio' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\t\tconst media = getEntityRecord( 'postType', 'attachment', id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'audio' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/audio', {\n\t\t\t\t\tsrc: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\t\tconst media = getEntityRecord( 'postType', 'attachment', id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'video' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/video', {\n\t\t\t\t\tsrc: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\t\tconst media = getEntityRecord( 'postType', 'attachment', id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'image' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\turl: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],
5
+ "mappings": "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",
6
6
  "names": ["coreStore"]
7
7
  }
@@ -17,24 +17,22 @@ var __copyProps = (to, from, except, desc) => {
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
 
20
- // packages/block-library/src/freeform/convert-to-blocks-button.js
21
- var convert_to_blocks_button_exports = {};
22
- __export(convert_to_blocks_button_exports, {
23
- default: () => convert_to_blocks_button_default
20
+ // packages/block-library/src/file/variations.js
21
+ var variations_exports = {};
22
+ __export(variations_exports, {
23
+ default: () => variations_default
24
24
  });
25
- module.exports = __toCommonJS(convert_to_blocks_button_exports);
25
+ module.exports = __toCommonJS(variations_exports);
26
26
  var import_i18n = require("@wordpress/i18n");
27
- var import_components = require("@wordpress/components");
28
- var import_blocks = require("@wordpress/blocks");
29
- var import_jsx_runtime = require("react/jsx-runtime");
30
- var ConvertToBlocksButton = ({ content, onReplace }) => {
31
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
32
- import_components.ToolbarButton,
33
- {
34
- onClick: () => onReplace((0, import_blocks.rawHandler)({ HTML: content })),
35
- children: (0, import_i18n.__)("Convert to blocks")
27
+ var variations = [
28
+ {
29
+ name: "default",
30
+ isDefault: true,
31
+ // Translatable defaults can't live in `block.json`, so set it here.
32
+ attributes: {
33
+ downloadButtonText: (0, import_i18n._x)("Download", "button label")
36
34
  }
37
- );
38
- };
39
- var convert_to_blocks_button_default = ConvertToBlocksButton;
40
- //# sourceMappingURL=convert-to-blocks-button.cjs.map
35
+ }
36
+ ];
37
+ var variations_default = variations;
38
+ //# sourceMappingURL=variations.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/file/variations.js"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\n\nconst variations = [\n\t{\n\t\tname: 'default',\n\t\tisDefault: true,\n\t\t// Translatable defaults can't live in `block.json`, so set it here.\n\t\tattributes: {\n\t\t\tdownloadButtonText: _x( 'Download', 'button label' ),\n\t\t},\n\t},\n];\n\nexport default variations;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAmB;AAEnB,IAAM,aAAa;AAAA,EAClB;AAAA,IACC,MAAM;AAAA,IACN,WAAW;AAAA;AAAA,IAEX,YAAY;AAAA,MACX,wBAAoB,gBAAI,YAAY,cAAe;AAAA,IACpD;AAAA,EACD;AACD;AAEA,IAAO,qBAAQ;",
6
+ "names": []
7
+ }
@@ -103,7 +103,7 @@ function FootnotesEdit({ context: { postType, postId } }) {
103
103
  }
104
104
  ),
105
105
  " ",
106
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("a", { href: `#${id}-link`, children: "\u21A9\uFE0E" })
106
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("a", { href: `#${id}-link`, children: "↩︎" })
107
107
  ]
108
108
  },
109
109
  id
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/footnotes/edit.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { BlockIcon, RichText, useBlockProps } from '@wordpress/block-editor';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { Placeholder } from '@wordpress/components';\nimport { formatListNumbered as icon } from '@wordpress/icons';\n\nexport default function FootnotesEdit( { context: { postType, postId } } ) {\n\tconst [ meta, updateMeta ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'meta',\n\t\tpostId\n\t);\n\tconst footnotesSupported = 'string' === typeof meta?.footnotes;\n\tconst footnotes = meta?.footnotes ? JSON.parse( meta.footnotes ) : [];\n\tconst blockProps = useBlockProps();\n\n\tif ( ! footnotesSupported ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabel={ __( 'Footnotes' ) }\n\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t'Footnotes are not supported here. Add this block to post or page content.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! footnotes.length ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabel={ __( 'Footnotes' ) }\n\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t'Footnotes found in blocks within this document will be displayed here.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<ol { ...blockProps }>\n\t\t\t{ footnotes.map( ( { id, content } ) => (\n\t\t\t\t/* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */\n\t\t\t\t<li\n\t\t\t\t\tkey={ id }\n\t\t\t\t\tonMouseDown={ ( event ) => {\n\t\t\t\t\t\t// When clicking on the list item (not on descendants),\n\t\t\t\t\t\t// focus the rich text element since it's only 1px wide when\n\t\t\t\t\t\t// empty.\n\t\t\t\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\t\t\t\tevent.target.firstElementChild.focus();\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tid={ id }\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\tidentifier={ id }\n\t\t\t\t\t\t// To do: figure out why the browser is not scrolling\n\t\t\t\t\t\t// into view when it receives focus.\n\t\t\t\t\t\tonFocus={ ( event ) => {\n\t\t\t\t\t\t\tif ( ! event.target.textContent.trim() ) {\n\t\t\t\t\t\t\t\tevent.target.scrollIntoView();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonChange={ ( nextFootnote ) => {\n\t\t\t\t\t\t\tupdateMeta( {\n\t\t\t\t\t\t\t\t...meta,\n\t\t\t\t\t\t\t\tfootnotes: JSON.stringify(\n\t\t\t\t\t\t\t\t\tfootnotes.map( ( footnote ) => {\n\t\t\t\t\t\t\t\t\t\treturn footnote.id === id\n\t\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontent: nextFootnote,\n\t\t\t\t\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t\t: footnote;\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\t<a href={ `#${ id }-link` }>\u21A9\uFE0E</a>\n\t\t\t\t</li>\n\t\t\t) ) }\n\t\t</ol>\n\t);\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,0BAAmD;AACnD,uBAA8B;AAC9B,kBAAmB;AACnB,wBAA4B;AAC5B,mBAA2C;AAiB/B;AAfG,SAAR,cAAgC,EAAE,SAAS,EAAE,UAAU,OAAO,EAAE,GAAI;AAC1E,QAAM,CAAE,MAAM,UAAW,QAAI;AAAA,IAC5B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,QAAM,qBAAqB,aAAa,OAAO,MAAM;AACrD,QAAM,YAAY,MAAM,YAAY,KAAK,MAAO,KAAK,SAAU,IAAI,CAAC;AACpE,QAAM,iBAAa,mCAAc;AAEjC,MAAK,CAAE,oBAAqB;AAC3B,WACC,4CAAC,SAAM,GAAG,YACT;AAAA,MAAC;AAAA;AAAA,QACA,MAAO,4CAAC,iCAAU,MAAO,aAAAA,oBAAO;AAAA,QAChC,WAAQ,gBAAI,WAAY;AAAA,QACxB,kBAAe;AAAA,UACd;AAAA,QACD;AAAA;AAAA,IACD,GACD;AAAA,EAEF;AAEA,MAAK,CAAE,UAAU,QAAS;AACzB,WACC,4CAAC,SAAM,GAAG,YACT;AAAA,MAAC;AAAA;AAAA,QACA,MAAO,4CAAC,iCAAU,MAAO,aAAAA,oBAAO;AAAA,QAChC,WAAQ,gBAAI,WAAY;AAAA,QACxB,kBAAe;AAAA,UACd;AAAA,QACD;AAAA;AAAA,IACD,GACD;AAAA,EAEF;AAEA,SACC,4CAAC,QAAK,GAAG,YACN,oBAAU,IAAK,CAAE,EAAE,IAAI,QAAQ;AAAA;AAAA,IAEhC;AAAA,MAAC;AAAA;AAAA,QAEA,aAAc,CAAE,UAAW;AAI1B,cAAK,MAAM,WAAW,MAAM,eAAgB;AAC3C,kBAAM,OAAO,kBAAkB,MAAM;AACrC,kBAAM,eAAe;AAAA,UACtB;AAAA,QACD;AAAA,QAEA;AAAA;AAAA,YAAC;AAAA;AAAA,cACA;AAAA,cACA,SAAQ;AAAA,cACR,OAAQ;AAAA,cACR,YAAa;AAAA,cAGb,SAAU,CAAE,UAAW;AACtB,oBAAK,CAAE,MAAM,OAAO,YAAY,KAAK,GAAI;AACxC,wBAAM,OAAO,eAAe;AAAA,gBAC7B;AAAA,cACD;AAAA,cACA,UAAW,CAAE,iBAAkB;AAC9B,2BAAY;AAAA,kBACX,GAAG;AAAA,kBACH,WAAW,KAAK;AAAA,oBACf,UAAU,IAAK,CAAE,aAAc;AAC9B,6BAAO,SAAS,OAAO,KACpB;AAAA,wBACA,SAAS;AAAA,wBACT;AAAA,sBACA,IACA;AAAA,oBACJ,CAAE;AAAA,kBACH;AAAA,gBACD,CAAE;AAAA,cACH;AAAA;AAAA,UACD;AAAA,UAAI;AAAA,UACJ,4CAAC,OAAE,MAAO,IAAK,EAAG,SAAU,0BAAE;AAAA;AAAA;AAAA,MAvCxB;AAAA,IAwCP;AAAA,GACC,GACH;AAEF;",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { BlockIcon, RichText, useBlockProps } from '@wordpress/block-editor';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { Placeholder } from '@wordpress/components';\nimport { formatListNumbered as icon } from '@wordpress/icons';\n\nexport default function FootnotesEdit( { context: { postType, postId } } ) {\n\tconst [ meta, updateMeta ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'meta',\n\t\tpostId\n\t);\n\tconst footnotesSupported = 'string' === typeof meta?.footnotes;\n\tconst footnotes = meta?.footnotes ? JSON.parse( meta.footnotes ) : [];\n\tconst blockProps = useBlockProps();\n\n\tif ( ! footnotesSupported ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabel={ __( 'Footnotes' ) }\n\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t'Footnotes are not supported here. Add this block to post or page content.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! footnotes.length ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabel={ __( 'Footnotes' ) }\n\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t'Footnotes found in blocks within this document will be displayed here.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<ol { ...blockProps }>\n\t\t\t{ footnotes.map( ( { id, content } ) => (\n\t\t\t\t/* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */\n\t\t\t\t<li\n\t\t\t\t\tkey={ id }\n\t\t\t\t\tonMouseDown={ ( event ) => {\n\t\t\t\t\t\t// When clicking on the list item (not on descendants),\n\t\t\t\t\t\t// focus the rich text element since it's only 1px wide when\n\t\t\t\t\t\t// empty.\n\t\t\t\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\t\t\t\tevent.target.firstElementChild.focus();\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tid={ id }\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\tidentifier={ id }\n\t\t\t\t\t\t// To do: figure out why the browser is not scrolling\n\t\t\t\t\t\t// into view when it receives focus.\n\t\t\t\t\t\tonFocus={ ( event ) => {\n\t\t\t\t\t\t\tif ( ! event.target.textContent.trim() ) {\n\t\t\t\t\t\t\t\tevent.target.scrollIntoView();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonChange={ ( nextFootnote ) => {\n\t\t\t\t\t\t\tupdateMeta( {\n\t\t\t\t\t\t\t\t...meta,\n\t\t\t\t\t\t\t\tfootnotes: JSON.stringify(\n\t\t\t\t\t\t\t\t\tfootnotes.map( ( footnote ) => {\n\t\t\t\t\t\t\t\t\t\treturn footnote.id === id\n\t\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontent: nextFootnote,\n\t\t\t\t\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t\t: footnote;\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\t<a href={ `#${ id }-link` }>↩︎</a>\n\t\t\t\t</li>\n\t\t\t) ) }\n\t\t</ol>\n\t);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,0BAAmD;AACnD,uBAA8B;AAC9B,kBAAmB;AACnB,wBAA4B;AAC5B,mBAA2C;AAiB/B;AAfG,SAAR,cAAgC,EAAE,SAAS,EAAE,UAAU,OAAO,EAAE,GAAI;AAC1E,QAAM,CAAE,MAAM,UAAW,QAAI;AAAA,IAC5B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,QAAM,qBAAqB,aAAa,OAAO,MAAM;AACrD,QAAM,YAAY,MAAM,YAAY,KAAK,MAAO,KAAK,SAAU,IAAI,CAAC;AACpE,QAAM,iBAAa,mCAAc;AAEjC,MAAK,CAAE,oBAAqB;AAC3B,WACC,4CAAC,SAAM,GAAG,YACT;AAAA,MAAC;AAAA;AAAA,QACA,MAAO,4CAAC,iCAAU,MAAO,aAAAA,oBAAO;AAAA,QAChC,WAAQ,gBAAI,WAAY;AAAA,QACxB,kBAAe;AAAA,UACd;AAAA,QACD;AAAA;AAAA,IACD,GACD;AAAA,EAEF;AAEA,MAAK,CAAE,UAAU,QAAS;AACzB,WACC,4CAAC,SAAM,GAAG,YACT;AAAA,MAAC;AAAA;AAAA,QACA,MAAO,4CAAC,iCAAU,MAAO,aAAAA,oBAAO;AAAA,QAChC,WAAQ,gBAAI,WAAY;AAAA,QACxB,kBAAe;AAAA,UACd;AAAA,QACD;AAAA;AAAA,IACD,GACD;AAAA,EAEF;AAEA,SACC,4CAAC,QAAK,GAAG,YACN,oBAAU,IAAK,CAAE,EAAE,IAAI,QAAQ;AAAA;AAAA,IAEhC;AAAA,MAAC;AAAA;AAAA,QAEA,aAAc,CAAE,UAAW;AAI1B,cAAK,MAAM,WAAW,MAAM,eAAgB;AAC3C,kBAAM,OAAO,kBAAkB,MAAM;AACrC,kBAAM,eAAe;AAAA,UACtB;AAAA,QACD;AAAA,QAEA;AAAA;AAAA,YAAC;AAAA;AAAA,cACA;AAAA,cACA,SAAQ;AAAA,cACR,OAAQ;AAAA,cACR,YAAa;AAAA,cAGb,SAAU,CAAE,UAAW;AACtB,oBAAK,CAAE,MAAM,OAAO,YAAY,KAAK,GAAI;AACxC,wBAAM,OAAO,eAAe;AAAA,gBAC7B;AAAA,cACD;AAAA,cACA,UAAW,CAAE,iBAAkB;AAC9B,2BAAY;AAAA,kBACX,GAAG;AAAA,kBACH,WAAW,KAAK;AAAA,oBACf,UAAU,IAAK,CAAE,aAAc;AAC9B,6BAAO,SAAS,OAAO,KACpB;AAAA,wBACA,SAAS;AAAA,wBACT;AAAA,sBACA,IACA;AAAA,oBACJ,CAAE;AAAA,kBACH;AAAA,gBACD,CAAE;AAAA,cACH;AAAA;AAAA,UACD;AAAA,UAAI;AAAA,UACJ,4CAAC,OAAE,MAAO,IAAK,EAAG,SAAU,gBAAE;AAAA;AAAA;AAAA,MAvCxB;AAAA,IAwCP;AAAA,GACC,GACH;AAEF;",
6
6
  "names": ["icon"]
7
7
  }
@@ -143,7 +143,6 @@ var Edit = ({ attributes, setAttributes, clientId }) => {
143
143
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
144
144
  import_components.TextControl,
145
145
  {
146
- __next40pxDefaultSize: true,
147
146
  autoComplete: "off",
148
147
  label: (0, import_i18n.__)("Email for form submissions"),
149
148
  value: email || "",
@@ -186,7 +185,6 @@ var Edit = ({ attributes, setAttributes, clientId }) => {
186
185
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
187
186
  import_components.TextControl,
188
187
  {
189
- __next40pxDefaultSize: true,
190
188
  autoComplete: "off",
191
189
  label: (0, import_i18n.__)("Form action"),
192
190
  value: action,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/form/edit.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tSelectControl,\n\tTextControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst resetAllSettings = () => {\n\t\tsetAttributes( {\n\t\t\tsubmissionMethod: 'email',\n\t\t\temail: undefined,\n\t\t\taction: undefined,\n\t\t\tmethod: 'post',\n\t\t} );\n\t};\n\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAllSettings }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => submissionMethod !== 'email' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tsubmissionMethod: 'email',\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\t\tvalue: 'email',\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\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\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</ToolsPanelItem>\n\t\t\t\t\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! email }\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\temail: undefined,\n\t\t\t\t\t\t\t\t\taction: undefined,\n\t\t\t\t\t\t\t\t\tmethod: 'post',\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\t\tvalue={ email || '' }\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ttype=\"email\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\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\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttype=\"url\"\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tSelectControl,\n\tTextControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst resetAllSettings = () => {\n\t\tsetAttributes( {\n\t\t\tsubmissionMethod: 'email',\n\t\t\temail: undefined,\n\t\t\taction: undefined,\n\t\t\tmethod: 'post',\n\t\t} );\n\t};\n\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAllSettings }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => submissionMethod !== 'email' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tsubmissionMethod: 'email',\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\t\tvalue: 'email',\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\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\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</ToolsPanelItem>\n\t\t\t\t\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! email }\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\temail: undefined,\n\t\t\t\t\t\t\t\t\taction: undefined,\n\t\t\t\t\t\t\t\t\tmethod: 'post',\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\t\tvalue={ email || '' }\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ttype=\"email\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttype=\"url\"\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],
5
+ "mappings": "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",
6
6
  "names": ["blockEditorStore", "ToolsPanel", "ToolsPanelItem"]
7
7
  }
@@ -114,7 +114,6 @@ function InputFieldBlock({ attributes, setAttributes, className }) {
114
114
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
115
115
  import_components.TextControl,
116
116
  {
117
- __next40pxDefaultSize: true,
118
117
  autoComplete: "off",
119
118
  label: (0, import_i18n.__)("Name"),
120
119
  value: name,
@@ -131,7 +130,6 @@ function InputFieldBlock({ attributes, setAttributes, className }) {
131
130
  "hidden" === type && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
132
131
  import_components.TextControl,
133
132
  {
134
- __next40pxDefaultSize: true,
135
133
  autoComplete: "off",
136
134
  label: (0, import_i18n.__)("Value"),
137
135
  value,
@@ -188,7 +186,7 @@ function InputFieldBlock({ attributes, setAttributes, className }) {
188
186
  borderProps.className
189
187
  ),
190
188
  "aria-label": (0, import_i18n.__)("Optional placeholder text"),
191
- placeholder: placeholder ? void 0 : (0, import_i18n.__)("Optional placeholder\u2026"),
189
+ placeholder: placeholder ? void 0 : (0, import_i18n.__)("Optional placeholder"),
192
190
  value: placeholder,
193
191
  onChange: (event) => setAttributes({ placeholder: event.target.value }),
194
192
  "aria-required": required,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/form-input/edit.js"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n} from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tCheckboxControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nfunction InputFieldBlock( { attributes, setAttributes, className } ) {\n\tconst { type, name, label, inlineLabel, required, placeholder, value } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst ref = useRef();\n\tconst TagName = type === 'textarea' ? 'textarea' : 'input';\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tif ( ref.current ) {\n\t\tref.current.focus();\n\t}\n\n\t// Note: radio inputs aren't implemented yet.\n\tconst isCheckboxOrRadio = type === 'checkbox' || type === 'radio';\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ 'hidden' !== type && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tinlineLabel: false,\n\t\t\t\t\t\t\t\trequired: false,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ 'checkbox' !== type && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\thasValue={ () => !! inlineLabel }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { inlineLabel: false } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\t\tchecked={ inlineLabel }\n\t\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tinlineLabel: newVal,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\thasValue={ () => !! required }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { required: false } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\t\tchecked={ required }\n\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\trequired: newVal,\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</ToolsPanelItem>\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ name }\n\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tname: newVal,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Affects the \"name\" attribute of the input element, and is used as a name for the form submission results.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t\t{ 'hidden' === type && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Value' ) }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tonChange={ ( newVal ) =>\n\t\t\t\t\t\t\tsetAttributes( { value: newVal } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Sets the stored value for this hidden field.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst content = (\n\t\t<RichText\n\t\t\ttagName=\"span\"\n\t\t\tclassName=\"wp-block-form-input__label-content\"\n\t\t\tvalue={ label }\n\t\t\tonChange={ ( newLabel ) => setAttributes( { label: newLabel } ) }\n\t\t\taria-label={ label ? __( 'Label' ) : __( 'Empty label' ) }\n\t\t\tdata-empty={ ! label }\n\t\t\tplaceholder={ __( 'Type the label for this input' ) }\n\t\t/>\n\t);\n\n\tif ( 'hidden' === type ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ controls }\n\t\t\t\t<span\n\t\t\t\t\tclassName=\"wp-block-form-input__label is-input-hidden\"\n\t\t\t\t\tdata-message={ __( 'Hidden field' ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t<span\n\t\t\t\tclassName={ clsx( 'wp-block-form-input__label', {\n\t\t\t\t\t'is-label-inline': inlineLabel || 'checkbox' === type,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ ! isCheckboxOrRadio && content }\n\t\t\t\t<TagName\n\t\t\t\t\ttype={ 'textarea' === type ? undefined : type }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t\t// which is confusing.\n\t\t\t\t\tplaceholder={\n\t\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder\u2026' )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ placeholder }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t\taria-required={ required }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ isCheckboxOrRadio && content }\n\t\t\t</span>\n\t\t</div>\n\t);\n}\n\nexport default InputFieldBlock;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n} from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tCheckboxControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nfunction InputFieldBlock( { attributes, setAttributes, className } ) {\n\tconst { type, name, label, inlineLabel, required, placeholder, value } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst ref = useRef();\n\tconst TagName = type === 'textarea' ? 'textarea' : 'input';\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tif ( ref.current ) {\n\t\tref.current.focus();\n\t}\n\n\t// Note: radio inputs aren't implemented yet.\n\tconst isCheckboxOrRadio = type === 'checkbox' || type === 'radio';\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ 'hidden' !== type && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tinlineLabel: false,\n\t\t\t\t\t\t\t\trequired: false,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ 'checkbox' !== type && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\thasValue={ () => !! inlineLabel }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { inlineLabel: false } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\t\tchecked={ inlineLabel }\n\t\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tinlineLabel: newVal,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\thasValue={ () => !! required }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { required: false } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\t\tchecked={ required }\n\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\trequired: newVal,\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</ToolsPanelItem>\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ name }\n\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tname: newVal,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Affects the \"name\" attribute of the input element, and is used as a name for the form submission results.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t\t{ 'hidden' === type && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Value' ) }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tonChange={ ( newVal ) =>\n\t\t\t\t\t\t\tsetAttributes( { value: newVal } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Sets the stored value for this hidden field.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst content = (\n\t\t<RichText\n\t\t\ttagName=\"span\"\n\t\t\tclassName=\"wp-block-form-input__label-content\"\n\t\t\tvalue={ label }\n\t\t\tonChange={ ( newLabel ) => setAttributes( { label: newLabel } ) }\n\t\t\taria-label={ label ? __( 'Label' ) : __( 'Empty label' ) }\n\t\t\tdata-empty={ ! label }\n\t\t\tplaceholder={ __( 'Type the label for this input' ) }\n\t\t/>\n\t);\n\n\tif ( 'hidden' === type ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ controls }\n\t\t\t\t<span\n\t\t\t\t\tclassName=\"wp-block-form-input__label is-input-hidden\"\n\t\t\t\t\tdata-message={ __( 'Hidden field' ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t<span\n\t\t\t\tclassName={ clsx( 'wp-block-form-input__label', {\n\t\t\t\t\t'is-label-inline': inlineLabel || 'checkbox' === type,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ ! isCheckboxOrRadio && content }\n\t\t\t\t<TagName\n\t\t\t\t\ttype={ 'textarea' === type ? undefined : type }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t\t// which is confusing.\n\t\t\t\t\tplaceholder={\n\t\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder' )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ placeholder }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t\taria-required={ required }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ isCheckboxOrRadio && content }\n\t\t\t</span>\n\t\t</div>\n\t);\n}\n\nexport default InputFieldBlock;\n"],
5
+ "mappings": "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",
6
6
  "names": ["useBorderProps", "useColorProps", "ToolsPanel", "ToolsPanelItem", "clsx"]
7
7
  }
@@ -39,7 +39,6 @@ var import_components = require("@wordpress/components");
39
39
  var import_element = require("@wordpress/element");
40
40
  var import_i18n = require("@wordpress/i18n");
41
41
  var import_icons = require("@wordpress/icons");
42
- var import_convert_to_blocks_button = __toESM(require("./convert-to-blocks-button.cjs"));
43
42
  var import_migration_notice = __toESM(require("./migration-notice.cjs"));
44
43
  var import_modal = __toESM(require("./modal.cjs"));
45
44
  var import_jsx_runtime = require("react/jsx-runtime");
@@ -57,15 +56,7 @@ function FreeformEdit({
57
56
  [clientId]
58
57
  );
59
58
  const { removeBlock } = (0, import_data.useDispatch)(import_block_editor.store);
60
- const isDeprecationMode = window.__experimentalClassicBlockDeprecation;
61
59
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
62
- canRemove && !isDeprecationMode && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_block_editor.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
63
- import_convert_to_blocks_button.default,
64
- {
65
- content,
66
- onReplace
67
- }
68
- ) }) }),
69
60
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_block_editor.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
70
61
  import_components.ToolbarButton,
71
62
  {
@@ -75,7 +66,7 @@ function FreeformEdit({
75
66
  }
76
67
  ) }) }),
77
68
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { ...(0, import_block_editor.useBlockProps)(), children: [
78
- isDeprecationMode && canRemove && content && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
69
+ canRemove && content && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
79
70
  import_migration_notice.default,
80
71
  {
81
72
  content,
@@ -87,11 +78,11 @@ function FreeformEdit({
87
78
  {
88
79
  icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_block_editor.BlockIcon, { icon: import_icons.classic }),
89
80
  label: (0, import_i18n.__)("Classic"),
90
- instructions: isDeprecationMode ? (0, import_i18n.__)(
91
- "The Classic block is being phased out. It\u2019s recommended to use other blocks for the best editing experience."
92
- ) : (0, import_i18n.__)("Use the classic editor to add content."),
81
+ instructions: (0, import_i18n.__)(
82
+ "The Classic block is being phased out. It’s recommended to use other blocks for the best editing experience."
83
+ ),
93
84
  children: [
94
- isDeprecationMode && canRemove && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
85
+ canRemove && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
95
86
  import_components.Button,
96
87
  {
97
88
  __next40pxDefaultSize: true,
@@ -104,7 +95,7 @@ function FreeformEdit({
104
95
  import_components.Button,
105
96
  {
106
97
  __next40pxDefaultSize: true,
107
- variant: isDeprecationMode && canRemove ? "secondary" : "primary",
98
+ variant: canRemove ? "secondary" : "primary",
108
99
  onClick: () => setOpen(true),
109
100
  children: (0, import_i18n.__)("Edit contents")
110
101
  }