@wordpress/block-library 6.0.1 → 6.0.5

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 (1093) hide show
  1. package/build/block/edit.js +1 -1
  2. package/build/block/edit.js.map +1 -1
  3. package/build/button/deprecated.js +155 -10
  4. package/build/button/deprecated.js.map +1 -1
  5. package/build/button/edit.native.js +257 -330
  6. package/build/button/edit.native.js.map +1 -1
  7. package/build/button/index.js +4 -1
  8. package/build/button/index.js.map +1 -1
  9. package/build/buttons/deprecated.js +84 -2
  10. package/build/buttons/deprecated.js.map +1 -1
  11. package/build/buttons/edit.js +6 -42
  12. package/build/buttons/edit.js.map +1 -1
  13. package/build/buttons/index.js +16 -14
  14. package/build/buttons/index.js.map +1 -1
  15. package/build/buttons/save.js +4 -20
  16. package/build/buttons/save.js.map +1 -1
  17. package/build/buttons/transforms.js +15 -10
  18. package/build/buttons/transforms.js.map +1 -1
  19. package/build/categories/edit.js +16 -6
  20. package/build/categories/edit.js.map +1 -1
  21. package/build/categories/index.js +4 -0
  22. package/build/categories/index.js.map +1 -1
  23. package/build/code/edit.native.js +8 -5
  24. package/build/code/edit.native.js.map +1 -1
  25. package/build/code/index.js +24 -1
  26. package/build/code/index.js.map +1 -1
  27. package/build/column/edit.js +4 -2
  28. package/build/column/edit.js.map +1 -1
  29. package/build/column/index.js +4 -0
  30. package/build/column/index.js.map +1 -1
  31. package/build/column/save.js +7 -3
  32. package/build/column/save.js.map +1 -1
  33. package/build/columns/edit.js +1 -1
  34. package/build/columns/edit.js.map +1 -1
  35. package/build/columns/index.js +1 -0
  36. package/build/columns/index.js.map +1 -1
  37. package/build/columns/save.js +7 -2
  38. package/build/columns/save.js.map +1 -1
  39. package/build/comment-author-avatar/edit.js +83 -0
  40. package/build/comment-author-avatar/edit.js.map +1 -0
  41. package/build/{post-comment-date → comment-author-avatar}/index.js +25 -9
  42. package/build/comment-author-avatar/index.js.map +1 -0
  43. package/build/comment-author-name/deprecated.js +69 -0
  44. package/build/comment-author-name/deprecated.js.map +1 -0
  45. package/build/comment-author-name/edit.js +112 -0
  46. package/build/comment-author-name/edit.js.map +1 -0
  47. package/build/comment-author-name/index.js +77 -0
  48. package/build/comment-author-name/index.js.map +1 -0
  49. package/build/comment-content/edit.js +74 -0
  50. package/build/comment-content/edit.js.map +1 -0
  51. package/build/comment-content/index.js +68 -0
  52. package/build/comment-content/index.js.map +1 -0
  53. package/build/comment-date/deprecated.js +68 -0
  54. package/build/comment-date/deprecated.js.map +1 -0
  55. package/build/comment-date/edit.js +95 -0
  56. package/build/comment-date/edit.js.map +1 -0
  57. package/build/comment-date/index.js +72 -0
  58. package/build/comment-date/index.js.map +1 -0
  59. package/build/comment-edit-link/edit.js +61 -0
  60. package/build/comment-edit-link/edit.js.map +1 -0
  61. package/build/comment-edit-link/index.js +67 -0
  62. package/build/comment-edit-link/index.js.map +1 -0
  63. package/build/comment-reply-link/edit.js +63 -0
  64. package/build/comment-reply-link/edit.js.map +1 -0
  65. package/build/comment-reply-link/index.js +63 -0
  66. package/build/comment-reply-link/index.js.map +1 -0
  67. package/build/comment-template/edit.js +82 -0
  68. package/build/comment-template/edit.js.map +1 -0
  69. package/build/{post-comment-content → comment-template}/index.js +13 -8
  70. package/build/comment-template/index.js.map +1 -0
  71. package/build/comment-template/save.js +18 -0
  72. package/build/comment-template/save.js.map +1 -0
  73. package/build/comments-query-loop/edit.js +64 -0
  74. package/build/comments-query-loop/edit.js.map +1 -0
  75. package/build/comments-query-loop/index.js +67 -0
  76. package/build/comments-query-loop/index.js.map +1 -0
  77. package/build/comments-query-loop/save.js +22 -0
  78. package/build/comments-query-loop/save.js.map +1 -0
  79. package/build/comments-query-loop/toolbar.js +54 -0
  80. package/build/comments-query-loop/toolbar.js.map +1 -0
  81. package/build/cover/deprecated.js +180 -20
  82. package/build/cover/deprecated.js.map +1 -1
  83. package/build/cover/edit.js +62 -28
  84. package/build/cover/edit.js.map +1 -1
  85. package/build/cover/edit.native.js +6 -2
  86. package/build/cover/edit.native.js.map +1 -1
  87. package/build/cover/index.js +12 -1
  88. package/build/cover/index.js.map +1 -1
  89. package/build/cover/save.js +17 -14
  90. package/build/cover/save.js.map +1 -1
  91. package/build/cover/shared.js +3 -2
  92. package/build/cover/shared.js.map +1 -1
  93. package/build/embed/edit.native.js +4 -8
  94. package/build/embed/edit.native.js.map +1 -1
  95. package/build/embed/embed-bottom-sheet.native.js +4 -5
  96. package/build/embed/embed-bottom-sheet.native.js.map +1 -1
  97. package/build/embed/embed-no-preview.native.js +2 -1
  98. package/build/embed/embed-no-preview.native.js.map +1 -1
  99. package/build/embed/icons.js +16 -1
  100. package/build/embed/icons.js.map +1 -1
  101. package/build/embed/transforms.native.js +3 -1
  102. package/build/embed/transforms.native.js.map +1 -1
  103. package/build/embed/variations.js +20 -0
  104. package/build/embed/variations.js.map +1 -1
  105. package/build/freeform/edit.js +16 -4
  106. package/build/freeform/edit.js.map +1 -1
  107. package/build/gallery/edit.js +7 -0
  108. package/build/gallery/edit.js.map +1 -1
  109. package/build/gallery/gallery.js +1 -1
  110. package/build/gallery/gallery.js.map +1 -1
  111. package/build/gallery/gallery.native.js +1 -1
  112. package/build/gallery/gallery.native.js.map +1 -1
  113. package/build/gallery/index.js +6 -1
  114. package/build/gallery/index.js.map +1 -1
  115. package/build/gallery/save.js +7 -2
  116. package/build/gallery/save.js.map +1 -1
  117. package/build/gallery/shared.js +0 -7
  118. package/build/gallery/shared.js.map +1 -1
  119. package/build/gallery/use-get-media.js +4 -10
  120. package/build/gallery/use-get-media.js.map +1 -1
  121. package/build/gallery/use-mobile-warning.js +43 -0
  122. package/build/gallery/use-mobile-warning.js.map +1 -0
  123. package/build/group/edit.js +1 -1
  124. package/build/group/edit.js.map +1 -1
  125. package/build/group/index.js +1 -0
  126. package/build/group/index.js.map +1 -1
  127. package/build/group/save.js +4 -5
  128. package/build/group/save.js.map +1 -1
  129. package/build/group/variations.js +2 -1
  130. package/build/group/variations.js.map +1 -1
  131. package/build/heading/autogenerate-anchors.js +90 -0
  132. package/build/heading/autogenerate-anchors.js.map +1 -0
  133. package/build/heading/edit.js +42 -5
  134. package/build/heading/edit.js.map +1 -1
  135. package/build/heading/index.js +14 -2
  136. package/build/heading/index.js.map +1 -1
  137. package/build/heading/transforms.js +14 -2
  138. package/build/heading/transforms.js.map +1 -1
  139. package/build/image/edit.native.js +126 -60
  140. package/build/image/edit.native.js.map +1 -1
  141. package/build/image/index.js +1 -1
  142. package/build/image/transforms.js +2 -1
  143. package/build/image/transforms.js.map +1 -1
  144. package/build/index.js +83 -70
  145. package/build/index.js.map +1 -1
  146. package/build/index.native.js +3 -1
  147. package/build/index.native.js.map +1 -1
  148. package/build/list/deprecated.js +111 -0
  149. package/build/list/deprecated.js.map +1 -0
  150. package/build/list/index.js +15 -3
  151. package/build/list/index.js.map +1 -1
  152. package/build/media-text/edit.js +1 -1
  153. package/build/media-text/edit.js.map +1 -1
  154. package/build/media-text/save.js +3 -3
  155. package/build/media-text/save.js.map +1 -1
  156. package/build/navigation/deprecated.js +340 -23
  157. package/build/navigation/deprecated.js.map +1 -1
  158. package/build/navigation/edit/index.js +372 -0
  159. package/build/navigation/edit/index.js.map +1 -0
  160. package/build/navigation/edit/inner-blocks.js +100 -0
  161. package/build/navigation/edit/inner-blocks.js.map +1 -0
  162. package/build/navigation/edit/navigation-menu-delete-control.js +60 -0
  163. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -0
  164. package/build/navigation/edit/navigation-menu-name-control.js +27 -0
  165. package/build/navigation/edit/navigation-menu-name-control.js.map +1 -0
  166. package/build/navigation/edit/navigation-menu-name-modal.js +54 -0
  167. package/build/navigation/edit/navigation-menu-name-modal.js.map +1 -0
  168. package/build/navigation/edit/navigation-menu-publish-button.js +53 -0
  169. package/build/navigation/edit/navigation-menu-publish-button.js.map +1 -0
  170. package/build/navigation/edit/navigation-menu-selector.js +49 -0
  171. package/build/navigation/edit/navigation-menu-selector.js.map +1 -0
  172. package/build/navigation/edit/placeholder/index.js +207 -0
  173. package/build/navigation/edit/placeholder/index.js.map +1 -0
  174. package/build/navigation/{placeholder-preview.js → edit/placeholder/placeholder-preview.js} +14 -2
  175. package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -0
  176. package/build/navigation/{responsive-wrapper.js → edit/responsive-wrapper.js} +9 -5
  177. package/build/navigation/edit/responsive-wrapper.js.map +1 -0
  178. package/build/navigation/edit/unsaved-inner-blocks.js +153 -0
  179. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -0
  180. package/build/navigation/{block-navigation-list.js → edit/use-list-view-modal.js} +34 -3
  181. package/build/navigation/edit/use-list-view-modal.js.map +1 -0
  182. package/build/navigation/index.js +25 -13
  183. package/build/navigation/index.js.map +1 -1
  184. package/build/navigation/save.js +10 -1
  185. package/build/navigation/save.js.map +1 -1
  186. package/build/navigation/use-navigation-menu.js +40 -0
  187. package/build/navigation/use-navigation-menu.js.map +1 -0
  188. package/build/navigation/use-template-part-area-label.js +74 -0
  189. package/build/navigation/use-template-part-area-label.js.map +1 -0
  190. package/build/navigation/view.js +29 -26
  191. package/build/navigation/view.js.map +1 -1
  192. package/build/navigation-area/edit.js +97 -0
  193. package/build/navigation-area/edit.js.map +1 -0
  194. package/build/navigation-area/index.js +61 -0
  195. package/build/navigation-area/index.js.map +1 -0
  196. package/build/navigation-area/inner-blocks.js +33 -0
  197. package/build/navigation-area/inner-blocks.js.map +1 -0
  198. package/build/navigation-area/save.js +18 -0
  199. package/build/navigation-area/save.js.map +1 -0
  200. package/build/navigation-link/edit.js +69 -7
  201. package/build/navigation-link/edit.js.map +1 -1
  202. package/build/navigation-link/transforms.js +5 -1
  203. package/build/navigation-link/transforms.js.map +1 -1
  204. package/build/navigation-submenu/edit.js +2 -2
  205. package/build/navigation-submenu/edit.js.map +1 -1
  206. package/build/page-list/edit.js +125 -84
  207. package/build/page-list/edit.js.map +1 -1
  208. package/build/page-list/index.js +1 -35
  209. package/build/page-list/index.js.map +1 -1
  210. package/build/paragraph/edit.native.js +2 -1
  211. package/build/paragraph/edit.native.js.map +1 -1
  212. package/build/paragraph/index.js +8 -1
  213. package/build/paragraph/index.js.map +1 -1
  214. package/build/paragraph/transforms.js +8 -1
  215. package/build/paragraph/transforms.js.map +1 -1
  216. package/build/pattern/edit.js +43 -0
  217. package/build/pattern/edit.js.map +1 -0
  218. package/build/{post-comment-author → pattern}/index.js +11 -10
  219. package/build/pattern/index.js.map +1 -0
  220. package/build/post-author/index.js +12 -1
  221. package/build/post-author/index.js.map +1 -1
  222. package/build/post-comment/edit.js +7 -8
  223. package/build/post-comment/edit.js.map +1 -1
  224. package/build/post-comment/index.js +4 -3
  225. package/build/post-comment/index.js.map +1 -1
  226. package/build/post-comment/save.js +5 -1
  227. package/build/post-comment/save.js.map +1 -1
  228. package/build/post-comments/index.js +8 -1
  229. package/build/post-comments/index.js.map +1 -1
  230. package/build/post-comments-count/index.js +7 -1
  231. package/build/post-comments-count/index.js.map +1 -1
  232. package/build/post-comments-form/index.js +9 -2
  233. package/build/post-comments-form/index.js.map +1 -1
  234. package/build/post-comments-link/index.js +8 -1
  235. package/build/post-comments-link/index.js.map +1 -1
  236. package/build/post-content/edit.js +2 -2
  237. package/build/post-content/edit.js.map +1 -1
  238. package/build/post-date/deprecated.js +71 -0
  239. package/build/post-date/deprecated.js.map +1 -0
  240. package/build/post-date/edit.js +1 -1
  241. package/build/post-date/edit.js.map +1 -1
  242. package/build/post-date/index.js +12 -2
  243. package/build/post-date/index.js.map +1 -1
  244. package/build/post-excerpt/edit.js +1 -1
  245. package/build/post-excerpt/edit.js.map +1 -1
  246. package/build/post-excerpt/index.js +12 -1
  247. package/build/post-excerpt/index.js.map +1 -1
  248. package/build/post-featured-image/index.js +5 -1
  249. package/build/post-featured-image/index.js.map +1 -1
  250. package/build/post-navigation-link/index.js +8 -1
  251. package/build/post-navigation-link/index.js.map +1 -1
  252. package/build/post-template/edit.js +8 -4
  253. package/build/post-template/edit.js.map +1 -1
  254. package/build/post-terms/edit.js +2 -6
  255. package/build/post-terms/edit.js.map +1 -1
  256. package/build/post-terms/index.js +7 -1
  257. package/build/post-terms/index.js.map +1 -1
  258. package/build/post-terms/use-post-terms.js +3 -1
  259. package/build/post-terms/use-post-terms.js.map +1 -1
  260. package/build/post-title/deprecated.js +84 -0
  261. package/build/post-title/deprecated.js.map +1 -0
  262. package/build/post-title/edit.js +1 -1
  263. package/build/post-title/edit.js.map +1 -1
  264. package/build/post-title/index.js +14 -2
  265. package/build/post-title/index.js.map +1 -1
  266. package/build/preformatted/edit.js +5 -2
  267. package/build/preformatted/edit.js.map +1 -1
  268. package/build/preformatted/edit.native.js +16 -6
  269. package/build/preformatted/edit.native.js.map +1 -1
  270. package/build/preformatted/index.js +9 -1
  271. package/build/preformatted/index.js.map +1 -1
  272. package/build/pullquote/blockquote.native.js +14 -2
  273. package/build/pullquote/blockquote.native.js.map +1 -1
  274. package/build/pullquote/edit.native.js +124 -0
  275. package/build/pullquote/edit.native.js.map +1 -0
  276. package/build/pullquote/figure.native.js +20 -8
  277. package/build/pullquote/figure.native.js.map +1 -1
  278. package/build/pullquote/index.js +12 -0
  279. package/build/pullquote/index.js.map +1 -1
  280. package/build/query/edit/index.js +1 -1
  281. package/build/query/edit/index.js.map +1 -1
  282. package/build/query/save.js +5 -1
  283. package/build/query/save.js.map +1 -1
  284. package/build/query-pagination/edit.js +1 -1
  285. package/build/query-pagination/edit.js.map +1 -1
  286. package/build/query-pagination-next/index.js +8 -1
  287. package/build/query-pagination-next/index.js.map +1 -1
  288. package/build/query-pagination-previous/index.js +8 -1
  289. package/build/query-pagination-previous/index.js.map +1 -1
  290. package/build/query-title/deprecated.js +70 -0
  291. package/build/query-title/deprecated.js.map +1 -0
  292. package/build/query-title/index.js +17 -2
  293. package/build/query-title/index.js.map +1 -1
  294. package/build/quote/deprecated.js +9 -0
  295. package/build/quote/deprecated.js.map +1 -1
  296. package/build/quote/index.js +17 -1
  297. package/build/quote/index.js.map +1 -1
  298. package/build/search/edit.js +27 -1
  299. package/build/search/edit.js.map +1 -1
  300. package/build/search/edit.native.js +38 -7
  301. package/build/search/edit.native.js.map +1 -1
  302. package/build/separator/separator-settings.js +1 -0
  303. package/build/separator/separator-settings.js.map +1 -1
  304. package/build/site-logo/edit.js +46 -21
  305. package/build/site-logo/edit.js.map +1 -1
  306. package/build/site-logo/index.js +6 -0
  307. package/build/site-logo/index.js.map +1 -1
  308. package/build/site-tagline/deprecated.js +68 -0
  309. package/build/site-tagline/deprecated.js.map +1 -0
  310. package/build/site-tagline/index.js +11 -3
  311. package/build/site-tagline/index.js.map +1 -1
  312. package/build/site-title/deprecated.js +81 -0
  313. package/build/site-title/deprecated.js.map +1 -0
  314. package/build/site-title/index.js +15 -2
  315. package/build/site-title/index.js.map +1 -1
  316. package/build/social-links/edit.js +2 -1
  317. package/build/social-links/edit.js.map +1 -1
  318. package/build/social-links/index.js +1 -0
  319. package/build/social-links/index.js.map +1 -1
  320. package/build/social-links/save.js +7 -2
  321. package/build/social-links/save.js.map +1 -1
  322. package/build/table/index.js +11 -0
  323. package/build/table/index.js.map +1 -1
  324. package/build/template-part/edit/inner-blocks.js +1 -1
  325. package/build/template-part/edit/inner-blocks.js.map +1 -1
  326. package/build/template-part/edit/placeholder/index.js +3 -3
  327. package/build/template-part/edit/placeholder/index.js.map +1 -1
  328. package/build/template-part/edit/placeholder/patterns-setup.js +3 -2
  329. package/build/template-part/edit/placeholder/patterns-setup.js.map +1 -1
  330. package/build/template-part/edit/selection/template-part-previews.js +1 -1
  331. package/build/template-part/edit/selection/template-part-previews.js.map +1 -1
  332. package/build/template-part/variations.js +1 -1
  333. package/build/template-part/variations.js.map +1 -1
  334. package/build/term-description/edit.js +1 -1
  335. package/build/term-description/edit.js.map +1 -1
  336. package/build/term-description/index.js +4 -1
  337. package/build/term-description/index.js.map +1 -1
  338. package/build/utils/clean-empty-object.js +31 -0
  339. package/build/utils/clean-empty-object.js.map +1 -0
  340. package/build/utils/migrate-font-family.js +49 -0
  341. package/build/utils/migrate-font-family.js.map +1 -0
  342. package/build/verse/deprecated.js +93 -14
  343. package/build/verse/deprecated.js.map +1 -1
  344. package/build/verse/index.js +10 -1
  345. package/build/verse/index.js.map +1 -1
  346. package/build-module/block/edit.js +1 -1
  347. package/build-module/block/edit.js.map +1 -1
  348. package/build-module/button/deprecated.js +155 -11
  349. package/build-module/button/deprecated.js.map +1 -1
  350. package/build-module/button/edit.native.js +259 -331
  351. package/build-module/button/edit.native.js.map +1 -1
  352. package/build-module/button/index.js +4 -1
  353. package/build-module/button/index.js.map +1 -1
  354. package/build-module/buttons/deprecated.js +82 -3
  355. package/build-module/buttons/deprecated.js.map +1 -1
  356. package/build-module/buttons/edit.js +6 -39
  357. package/build-module/buttons/edit.js.map +1 -1
  358. package/build-module/buttons/index.js +16 -13
  359. package/build-module/buttons/index.js.map +1 -1
  360. package/build-module/buttons/save.js +4 -18
  361. package/build-module/buttons/save.js.map +1 -1
  362. package/build-module/buttons/transforms.js +15 -10
  363. package/build-module/buttons/transforms.js.map +1 -1
  364. package/build-module/categories/edit.js +16 -6
  365. package/build-module/categories/edit.js.map +1 -1
  366. package/build-module/categories/index.js +4 -0
  367. package/build-module/categories/index.js.map +1 -1
  368. package/build-module/code/edit.native.js +9 -5
  369. package/build-module/code/edit.native.js.map +1 -1
  370. package/build-module/code/index.js +24 -1
  371. package/build-module/code/index.js.map +1 -1
  372. package/build-module/column/edit.js +4 -2
  373. package/build-module/column/edit.js.map +1 -1
  374. package/build-module/column/index.js +4 -0
  375. package/build-module/column/index.js.map +1 -1
  376. package/build-module/column/save.js +6 -4
  377. package/build-module/column/save.js.map +1 -1
  378. package/build-module/columns/edit.js +1 -1
  379. package/build-module/columns/edit.js.map +1 -1
  380. package/build-module/columns/index.js +1 -0
  381. package/build-module/columns/index.js.map +1 -1
  382. package/build-module/columns/save.js +5 -3
  383. package/build-module/columns/save.js.map +1 -1
  384. package/build-module/comment-author-avatar/edit.js +69 -0
  385. package/build-module/comment-author-avatar/edit.js.map +1 -0
  386. package/build-module/comment-author-avatar/index.js +52 -0
  387. package/build-module/comment-author-avatar/index.js.map +1 -0
  388. package/build-module/comment-author-name/deprecated.js +58 -0
  389. package/build-module/comment-author-name/deprecated.js.map +1 -0
  390. package/build-module/comment-author-name/edit.js +97 -0
  391. package/build-module/comment-author-name/edit.js.map +1 -0
  392. package/build-module/comment-author-name/index.js +63 -0
  393. package/build-module/comment-author-name/index.js.map +1 -0
  394. package/build-module/comment-content/edit.js +61 -0
  395. package/build-module/comment-content/edit.js.map +1 -0
  396. package/build-module/comment-content/index.js +55 -0
  397. package/build-module/comment-content/index.js.map +1 -0
  398. package/build-module/comment-date/deprecated.js +57 -0
  399. package/build-module/comment-date/deprecated.js.map +1 -0
  400. package/build-module/comment-date/edit.js +85 -0
  401. package/build-module/comment-date/edit.js.map +1 -0
  402. package/build-module/comment-date/index.js +58 -0
  403. package/build-module/comment-date/index.js.map +1 -0
  404. package/build-module/comment-edit-link/edit.js +48 -0
  405. package/build-module/comment-edit-link/edit.js.map +1 -0
  406. package/build-module/comment-edit-link/index.js +54 -0
  407. package/build-module/comment-edit-link/index.js.map +1 -0
  408. package/build-module/comment-reply-link/edit.js +50 -0
  409. package/build-module/comment-reply-link/edit.js.map +1 -0
  410. package/build-module/comment-reply-link/index.js +50 -0
  411. package/build-module/comment-reply-link/index.js.map +1 -0
  412. package/build-module/comment-template/edit.js +71 -0
  413. package/build-module/comment-template/edit.js.map +1 -0
  414. package/build-module/comment-template/index.js +35 -0
  415. package/build-module/comment-template/index.js.map +1 -0
  416. package/build-module/comment-template/save.js +10 -0
  417. package/build-module/comment-template/save.js.map +1 -0
  418. package/build-module/comments-query-loop/edit.js +50 -0
  419. package/build-module/comments-query-loop/edit.js.map +1 -0
  420. package/build-module/comments-query-loop/index.js +53 -0
  421. package/build-module/comments-query-loop/index.js.map +1 -0
  422. package/build-module/comments-query-loop/save.js +14 -0
  423. package/build-module/comments-query-loop/save.js.map +1 -0
  424. package/build-module/comments-query-loop/toolbar.js +44 -0
  425. package/build-module/comments-query-loop/toolbar.js.map +1 -0
  426. package/build-module/cover/deprecated.js +183 -21
  427. package/build-module/cover/deprecated.js.map +1 -1
  428. package/build-module/cover/edit.js +62 -28
  429. package/build-module/cover/edit.js.map +1 -1
  430. package/build-module/cover/edit.native.js +6 -2
  431. package/build-module/cover/edit.native.js.map +1 -1
  432. package/build-module/cover/index.js +12 -1
  433. package/build-module/cover/index.js.map +1 -1
  434. package/build-module/cover/save.js +18 -15
  435. package/build-module/cover/save.js.map +1 -1
  436. package/build-module/cover/shared.js +3 -2
  437. package/build-module/cover/shared.js.map +1 -1
  438. package/build-module/embed/edit.native.js +4 -8
  439. package/build-module/embed/edit.native.js.map +1 -1
  440. package/build-module/embed/embed-bottom-sheet.native.js +4 -5
  441. package/build-module/embed/embed-bottom-sheet.native.js.map +1 -1
  442. package/build-module/embed/embed-no-preview.native.js +2 -1
  443. package/build-module/embed/embed-no-preview.native.js.map +1 -1
  444. package/build-module/embed/icons.js +13 -0
  445. package/build-module/embed/icons.js.map +1 -1
  446. package/build-module/embed/transforms.native.js +2 -1
  447. package/build-module/embed/transforms.native.js.map +1 -1
  448. package/build-module/embed/variations.js +21 -1
  449. package/build-module/embed/variations.js.map +1 -1
  450. package/build-module/freeform/edit.js +16 -5
  451. package/build-module/freeform/edit.js.map +1 -1
  452. package/build-module/gallery/edit.js +6 -0
  453. package/build-module/gallery/edit.js.map +1 -1
  454. package/build-module/gallery/gallery.js +1 -1
  455. package/build-module/gallery/gallery.js.map +1 -1
  456. package/build-module/gallery/gallery.native.js +1 -1
  457. package/build-module/gallery/gallery.native.js.map +1 -1
  458. package/build-module/gallery/index.js +6 -1
  459. package/build-module/gallery/index.js.map +1 -1
  460. package/build-module/gallery/save.js +5 -3
  461. package/build-module/gallery/save.js.map +1 -1
  462. package/build-module/gallery/shared.js +0 -6
  463. package/build-module/gallery/shared.js.map +1 -1
  464. package/build-module/gallery/use-get-media.js +4 -10
  465. package/build-module/gallery/use-get-media.js.map +1 -1
  466. package/build-module/gallery/use-mobile-warning.js +32 -0
  467. package/build-module/gallery/use-mobile-warning.js.map +1 -0
  468. package/build-module/group/edit.js +1 -1
  469. package/build-module/group/edit.js.map +1 -1
  470. package/build-module/group/index.js +1 -0
  471. package/build-module/group/index.js.map +1 -1
  472. package/build-module/group/save.js +5 -6
  473. package/build-module/group/save.js.map +1 -1
  474. package/build-module/group/variations.js +2 -1
  475. package/build-module/group/variations.js.map +1 -1
  476. package/build-module/heading/autogenerate-anchors.js +77 -0
  477. package/build-module/heading/autogenerate-anchors.js.map +1 -0
  478. package/build-module/heading/edit.js +43 -7
  479. package/build-module/heading/edit.js.map +1 -1
  480. package/build-module/heading/index.js +14 -2
  481. package/build-module/heading/index.js.map +1 -1
  482. package/build-module/heading/transforms.js +14 -2
  483. package/build-module/heading/transforms.js.map +1 -1
  484. package/build-module/image/edit.native.js +128 -63
  485. package/build-module/image/edit.native.js.map +1 -1
  486. package/build-module/image/index.js +1 -1
  487. package/build-module/image/transforms.js +2 -1
  488. package/build-module/image/transforms.js.map +1 -1
  489. package/build-module/index.js +59 -53
  490. package/build-module/index.js.map +1 -1
  491. package/build-module/index.native.js +1 -2
  492. package/build-module/index.native.js.map +1 -1
  493. package/build-module/list/deprecated.js +99 -0
  494. package/build-module/list/deprecated.js.map +1 -0
  495. package/build-module/list/index.js +14 -3
  496. package/build-module/list/index.js.map +1 -1
  497. package/build-module/media-text/edit.js +1 -1
  498. package/build-module/media-text/edit.js.map +1 -1
  499. package/build-module/media-text/save.js +4 -4
  500. package/build-module/media-text/save.js.map +1 -1
  501. package/build-module/navigation/deprecated.js +336 -23
  502. package/build-module/navigation/deprecated.js.map +1 -1
  503. package/build-module/navigation/edit/index.js +346 -0
  504. package/build-module/navigation/edit/index.js.map +1 -0
  505. package/build-module/navigation/edit/inner-blocks.js +87 -0
  506. package/build-module/navigation/edit/inner-blocks.js.map +1 -0
  507. package/build-module/navigation/edit/navigation-menu-delete-control.js +50 -0
  508. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -0
  509. package/build-module/navigation/edit/navigation-menu-name-control.js +17 -0
  510. package/build-module/navigation/edit/navigation-menu-name-control.js.map +1 -0
  511. package/build-module/navigation/edit/navigation-menu-name-modal.js +46 -0
  512. package/build-module/navigation/edit/navigation-menu-name-modal.js.map +1 -0
  513. package/build-module/navigation/edit/navigation-menu-publish-button.js +40 -0
  514. package/build-module/navigation/edit/navigation-menu-publish-button.js.map +1 -0
  515. package/build-module/navigation/edit/navigation-menu-selector.js +36 -0
  516. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -0
  517. package/build-module/navigation/edit/placeholder/index.js +189 -0
  518. package/build-module/navigation/edit/placeholder/index.js.map +1 -0
  519. package/build-module/navigation/{placeholder-preview.js → edit/placeholder/placeholder-preview.js} +11 -2
  520. package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -0
  521. package/build-module/navigation/{responsive-wrapper.js → edit/responsive-wrapper.js} +9 -5
  522. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -0
  523. package/build-module/navigation/edit/unsaved-inner-blocks.js +136 -0
  524. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -0
  525. package/build-module/navigation/{block-navigation-list.js → edit/use-list-view-modal.js} +31 -2
  526. package/build-module/navigation/edit/use-list-view-modal.js.map +1 -0
  527. package/build-module/navigation/index.js +25 -12
  528. package/build-module/navigation/index.js.map +1 -1
  529. package/build-module/navigation/save.js +10 -1
  530. package/build-module/navigation/save.js.map +1 -1
  531. package/build-module/navigation/use-navigation-menu.js +31 -0
  532. package/build-module/navigation/use-navigation-menu.js.map +1 -0
  533. package/build-module/navigation/use-template-part-area-label.js +63 -0
  534. package/build-module/navigation/use-template-part-area-label.js.map +1 -0
  535. package/build-module/navigation/view.js +28 -26
  536. package/build-module/navigation/view.js.map +1 -1
  537. package/build-module/navigation-area/edit.js +82 -0
  538. package/build-module/navigation-area/edit.js.map +1 -0
  539. package/build-module/navigation-area/index.js +47 -0
  540. package/build-module/navigation-area/index.js.map +1 -0
  541. package/build-module/navigation-area/inner-blocks.js +25 -0
  542. package/build-module/navigation-area/inner-blocks.js.map +1 -0
  543. package/build-module/navigation-area/save.js +10 -0
  544. package/build-module/navigation-area/save.js.map +1 -0
  545. package/build-module/navigation-link/edit.js +72 -10
  546. package/build-module/navigation-link/edit.js.map +1 -1
  547. package/build-module/navigation-link/transforms.js +5 -1
  548. package/build-module/navigation-link/transforms.js.map +1 -1
  549. package/build-module/navigation-submenu/edit.js +2 -2
  550. package/build-module/navigation-submenu/edit.js.map +1 -1
  551. package/build-module/page-list/edit.js +127 -86
  552. package/build-module/page-list/edit.js.map +1 -1
  553. package/build-module/page-list/index.js +1 -35
  554. package/build-module/page-list/index.js.map +1 -1
  555. package/build-module/paragraph/edit.native.js +2 -1
  556. package/build-module/paragraph/edit.native.js.map +1 -1
  557. package/build-module/paragraph/index.js +8 -1
  558. package/build-module/paragraph/index.js.map +1 -1
  559. package/build-module/paragraph/transforms.js +8 -1
  560. package/build-module/paragraph/transforms.js.map +1 -1
  561. package/build-module/pattern/edit.js +35 -0
  562. package/build-module/pattern/edit.js.map +1 -0
  563. package/build-module/pattern/index.js +29 -0
  564. package/build-module/pattern/index.js.map +1 -0
  565. package/build-module/post-author/index.js +12 -1
  566. package/build-module/post-author/index.js.map +1 -1
  567. package/build-module/post-comment/edit.js +8 -9
  568. package/build-module/post-comment/edit.js.map +1 -1
  569. package/build-module/post-comment/index.js +4 -3
  570. package/build-module/post-comment/index.js.map +1 -1
  571. package/build-module/post-comment/save.js +4 -2
  572. package/build-module/post-comment/save.js.map +1 -1
  573. package/build-module/post-comments/index.js +8 -1
  574. package/build-module/post-comments/index.js.map +1 -1
  575. package/build-module/post-comments-count/index.js +7 -1
  576. package/build-module/post-comments-count/index.js.map +1 -1
  577. package/build-module/post-comments-form/index.js +9 -2
  578. package/build-module/post-comments-form/index.js.map +1 -1
  579. package/build-module/post-comments-link/index.js +8 -1
  580. package/build-module/post-comments-link/index.js.map +1 -1
  581. package/build-module/post-content/edit.js +2 -2
  582. package/build-module/post-content/edit.js.map +1 -1
  583. package/build-module/post-date/deprecated.js +60 -0
  584. package/build-module/post-date/deprecated.js.map +1 -0
  585. package/build-module/post-date/edit.js +1 -1
  586. package/build-module/post-date/edit.js.map +1 -1
  587. package/build-module/post-date/index.js +11 -2
  588. package/build-module/post-date/index.js.map +1 -1
  589. package/build-module/post-excerpt/edit.js +1 -1
  590. package/build-module/post-excerpt/edit.js.map +1 -1
  591. package/build-module/post-excerpt/index.js +12 -1
  592. package/build-module/post-excerpt/index.js.map +1 -1
  593. package/build-module/post-featured-image/index.js +5 -1
  594. package/build-module/post-featured-image/index.js.map +1 -1
  595. package/build-module/post-navigation-link/index.js +8 -1
  596. package/build-module/post-navigation-link/index.js.map +1 -1
  597. package/build-module/post-template/edit.js +10 -5
  598. package/build-module/post-template/edit.js.map +1 -1
  599. package/build-module/post-terms/edit.js +2 -6
  600. package/build-module/post-terms/edit.js.map +1 -1
  601. package/build-module/post-terms/index.js +7 -1
  602. package/build-module/post-terms/index.js.map +1 -1
  603. package/build-module/post-terms/use-post-terms.js +3 -1
  604. package/build-module/post-terms/use-post-terms.js.map +1 -1
  605. package/build-module/post-title/deprecated.js +73 -0
  606. package/build-module/post-title/deprecated.js.map +1 -0
  607. package/build-module/post-title/edit.js +1 -1
  608. package/build-module/post-title/edit.js.map +1 -1
  609. package/build-module/post-title/index.js +13 -2
  610. package/build-module/post-title/index.js.map +1 -1
  611. package/build-module/preformatted/edit.js +5 -2
  612. package/build-module/preformatted/edit.js.map +1 -1
  613. package/build-module/preformatted/edit.native.js +17 -6
  614. package/build-module/preformatted/edit.native.js.map +1 -1
  615. package/build-module/preformatted/index.js +9 -1
  616. package/build-module/preformatted/index.js.map +1 -1
  617. package/build-module/pullquote/blockquote.native.js +14 -2
  618. package/build-module/pullquote/blockquote.native.js.map +1 -1
  619. package/build-module/pullquote/edit.native.js +112 -0
  620. package/build-module/pullquote/edit.native.js.map +1 -0
  621. package/build-module/pullquote/figure.native.js +20 -9
  622. package/build-module/pullquote/figure.native.js.map +1 -1
  623. package/build-module/pullquote/index.js +12 -0
  624. package/build-module/pullquote/index.js.map +1 -1
  625. package/build-module/query/edit/index.js +1 -1
  626. package/build-module/query/edit/index.js.map +1 -1
  627. package/build-module/query/save.js +4 -2
  628. package/build-module/query/save.js.map +1 -1
  629. package/build-module/query-pagination/edit.js +1 -1
  630. package/build-module/query-pagination/edit.js.map +1 -1
  631. package/build-module/query-pagination-next/index.js +8 -1
  632. package/build-module/query-pagination-next/index.js.map +1 -1
  633. package/build-module/query-pagination-previous/index.js +8 -1
  634. package/build-module/query-pagination-previous/index.js.map +1 -1
  635. package/build-module/query-title/deprecated.js +59 -0
  636. package/build-module/query-title/deprecated.js.map +1 -0
  637. package/build-module/query-title/index.js +16 -2
  638. package/build-module/query-title/index.js.map +1 -1
  639. package/build-module/quote/deprecated.js +9 -0
  640. package/build-module/quote/deprecated.js.map +1 -1
  641. package/build-module/quote/index.js +17 -1
  642. package/build-module/quote/index.js.map +1 -1
  643. package/build-module/search/edit.js +28 -2
  644. package/build-module/search/edit.js.map +1 -1
  645. package/build-module/search/edit.native.js +38 -7
  646. package/build-module/search/edit.native.js.map +1 -1
  647. package/build-module/separator/separator-settings.js +1 -0
  648. package/build-module/separator/separator-settings.js.map +1 -1
  649. package/build-module/site-logo/edit.js +49 -26
  650. package/build-module/site-logo/edit.js.map +1 -1
  651. package/build-module/site-logo/index.js +6 -0
  652. package/build-module/site-logo/index.js.map +1 -1
  653. package/build-module/site-tagline/deprecated.js +57 -0
  654. package/build-module/site-tagline/deprecated.js.map +1 -0
  655. package/build-module/site-tagline/index.js +10 -3
  656. package/build-module/site-tagline/index.js.map +1 -1
  657. package/build-module/site-title/deprecated.js +70 -0
  658. package/build-module/site-title/deprecated.js.map +1 -0
  659. package/build-module/site-title/index.js +14 -2
  660. package/build-module/site-title/index.js.map +1 -1
  661. package/build-module/social-links/edit.js +2 -1
  662. package/build-module/social-links/edit.js.map +1 -1
  663. package/build-module/social-links/index.js +1 -0
  664. package/build-module/social-links/index.js.map +1 -1
  665. package/build-module/social-links/save.js +5 -3
  666. package/build-module/social-links/save.js.map +1 -1
  667. package/build-module/table/index.js +11 -0
  668. package/build-module/table/index.js.map +1 -1
  669. package/build-module/template-part/edit/inner-blocks.js +1 -1
  670. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  671. package/build-module/template-part/edit/placeholder/index.js +3 -3
  672. package/build-module/template-part/edit/placeholder/index.js.map +1 -1
  673. package/build-module/template-part/edit/placeholder/patterns-setup.js +3 -2
  674. package/build-module/template-part/edit/placeholder/patterns-setup.js.map +1 -1
  675. package/build-module/template-part/edit/selection/template-part-previews.js +1 -1
  676. package/build-module/template-part/edit/selection/template-part-previews.js.map +1 -1
  677. package/build-module/template-part/variations.js +2 -2
  678. package/build-module/template-part/variations.js.map +1 -1
  679. package/build-module/term-description/edit.js +1 -1
  680. package/build-module/term-description/edit.js.map +1 -1
  681. package/build-module/term-description/index.js +4 -1
  682. package/build-module/term-description/index.js.map +1 -1
  683. package/build-module/utils/clean-empty-object.js +22 -0
  684. package/build-module/utils/clean-empty-object.js.map +1 -0
  685. package/build-module/utils/migrate-font-family.js +38 -0
  686. package/build-module/utils/migrate-font-family.js.map +1 -0
  687. package/build-module/verse/deprecated.js +90 -15
  688. package/build-module/verse/deprecated.js.map +1 -1
  689. package/build-module/verse/index.js +10 -1
  690. package/build-module/verse/index.js.map +1 -1
  691. package/build-style/button/editor-rtl.css +0 -1
  692. package/build-style/button/editor.css +0 -1
  693. package/build-style/button/style-rtl.css +15 -27
  694. package/build-style/button/style.css +15 -27
  695. package/build-style/buttons/editor-rtl.css +4 -8
  696. package/build-style/buttons/editor.css +4 -8
  697. package/build-style/buttons/style-rtl.css +1 -35
  698. package/build-style/buttons/style.css +1 -48
  699. package/build-style/columns/style-rtl.css +1 -1
  700. package/build-style/columns/style.css +1 -1
  701. package/build-style/common-rtl.css +2 -16
  702. package/build-style/common.css +2 -16
  703. package/build-style/cover/editor-rtl.css +14 -32
  704. package/build-style/cover/editor.css +14 -32
  705. package/build-style/cover/style-rtl.css +28 -40
  706. package/build-style/cover/style.css +28 -40
  707. package/build-style/editor-rtl.css +198 -145
  708. package/build-style/editor.css +198 -145
  709. package/build-style/image/editor-rtl.css +1 -0
  710. package/build-style/image/editor.css +1 -0
  711. package/build-style/image/style-rtl.css +4 -0
  712. package/build-style/image/style.css +4 -0
  713. package/build-style/media-text/style-rtl.css +1 -0
  714. package/build-style/media-text/style.css +1 -0
  715. package/build-style/navigation/editor-rtl.css +58 -16
  716. package/build-style/navigation/editor.css +58 -16
  717. package/build-style/navigation/style-rtl.css +51 -112
  718. package/build-style/navigation/style.css +51 -112
  719. package/build-style/navigation-link/editor-rtl.css +31 -14
  720. package/build-style/navigation-link/editor.css +31 -14
  721. package/build-style/navigation-link/style-rtl.css +1 -1
  722. package/build-style/navigation-link/style.css +1 -1
  723. package/build-style/navigation-submenu/editor-rtl.css +1 -1
  724. package/build-style/navigation-submenu/editor.css +1 -1
  725. package/build-style/navigation-submenu/style-rtl.css +2 -0
  726. package/build-style/navigation-submenu/style.css +2 -0
  727. package/build-style/page-list/style-rtl.css +4 -16
  728. package/build-style/page-list/style.css +4 -16
  729. package/build-style/post-author/style-rtl.css +0 -1
  730. package/build-style/post-author/style.css +0 -1
  731. package/build-style/post-comments/style-rtl.css +21 -1
  732. package/build-style/post-comments/style.css +21 -1
  733. package/build-style/post-comments-form/style-rtl.css +29 -0
  734. package/build-style/post-comments-form/style.css +29 -0
  735. package/build-style/post-featured-image/editor-rtl.css +1 -1
  736. package/build-style/post-featured-image/editor.css +1 -1
  737. package/build-style/post-featured-image/style-rtl.css +1 -1
  738. package/build-style/post-featured-image/style.css +1 -1
  739. package/build-style/quote/theme-rtl.css +1 -1
  740. package/build-style/quote/theme.css +1 -1
  741. package/build-style/reset-rtl.css +0 -5
  742. package/build-style/reset.css +0 -5
  743. package/build-style/search/style-rtl.css +18 -6
  744. package/build-style/search/style.css +18 -6
  745. package/build-style/separator/style-rtl.css +0 -1
  746. package/build-style/separator/style.css +0 -1
  747. package/build-style/site-logo/editor-rtl.css +82 -14
  748. package/build-style/site-logo/editor.css +82 -14
  749. package/build-style/site-logo/style-rtl.css +6 -2
  750. package/build-style/site-logo/style.css +6 -2
  751. package/build-style/social-link/editor-rtl.css +4 -0
  752. package/build-style/social-link/editor.css +4 -0
  753. package/build-style/social-links/editor-rtl.css +4 -0
  754. package/build-style/social-links/editor.css +4 -0
  755. package/build-style/social-links/style-rtl.css +7 -1
  756. package/build-style/social-links/style.css +7 -1
  757. package/build-style/style-rtl.css +192 -261
  758. package/build-style/style.css +192 -274
  759. package/build-style/template-part/editor-rtl.css +0 -7
  760. package/build-style/template-part/editor.css +0 -7
  761. package/build-style/theme-rtl.css +1 -1
  762. package/build-style/theme.css +1 -1
  763. package/package.json +20 -19
  764. package/src/audio/test/edit.native.js +4 -0
  765. package/src/block/edit.js +1 -1
  766. package/src/button/block.json +4 -1
  767. package/src/button/deprecated.js +149 -4
  768. package/src/button/edit.native.js +319 -366
  769. package/src/button/editor.scss +0 -1
  770. package/src/button/style.scss +18 -41
  771. package/src/buttons/block.json +15 -10
  772. package/src/buttons/deprecated.js +76 -3
  773. package/src/buttons/edit.js +4 -49
  774. package/src/buttons/editor.scss +8 -9
  775. package/src/buttons/index.js +0 -2
  776. package/src/buttons/save.js +4 -21
  777. package/src/buttons/style.scss +1 -51
  778. package/src/categories/block.json +4 -0
  779. package/src/categories/edit.js +36 -18
  780. package/src/categories/index.php +3 -0
  781. package/src/code/block.json +24 -1
  782. package/src/code/edit.native.js +12 -14
  783. package/src/column/block.json +4 -0
  784. package/src/column/edit.js +8 -2
  785. package/src/column/save.js +9 -12
  786. package/src/columns/block.json +1 -0
  787. package/src/columns/edit.js +1 -1
  788. package/src/columns/save.js +5 -6
  789. package/src/columns/style.scss +1 -1
  790. package/src/comment-author-avatar/block.json +34 -0
  791. package/src/comment-author-avatar/edit.js +96 -0
  792. package/src/comment-author-avatar/index.js +18 -0
  793. package/src/comment-author-avatar/index.php +62 -0
  794. package/src/comment-author-name/block.json +43 -0
  795. package/src/comment-author-name/deprecated.js +50 -0
  796. package/src/comment-author-name/edit.js +124 -0
  797. package/src/comment-author-name/index.js +20 -0
  798. package/src/comment-author-name/index.php +57 -0
  799. package/src/comment-content/block.json +37 -0
  800. package/src/comment-content/edit.js +80 -0
  801. package/src/{post-comment-content → comment-content}/index.js +1 -1
  802. package/src/comment-content/index.php +56 -0
  803. package/src/comment-date/block.json +38 -0
  804. package/src/comment-date/deprecated.js +49 -0
  805. package/src/comment-date/edit.js +106 -0
  806. package/src/{post-comment-date → comment-date}/index.js +2 -0
  807. package/src/comment-date/index.php +56 -0
  808. package/src/comment-edit-link/block.json +36 -0
  809. package/src/comment-edit-link/edit.js +68 -0
  810. package/src/{post-comment-author → comment-edit-link}/index.js +5 -5
  811. package/src/comment-edit-link/index.php +58 -0
  812. package/src/comment-reply-link/block.json +32 -0
  813. package/src/comment-reply-link/edit.js +59 -0
  814. package/src/comment-reply-link/index.js +18 -0
  815. package/src/comment-reply-link/index.php +80 -0
  816. package/src/comment-template/block.json +15 -0
  817. package/src/comment-template/edit.js +100 -0
  818. package/src/comment-template/index.js +20 -0
  819. package/src/comment-template/index.php +65 -0
  820. package/src/comment-template/save.js +8 -0
  821. package/src/comments-query-loop/block.json +33 -0
  822. package/src/comments-query-loop/edit.js +53 -0
  823. package/src/comments-query-loop/index.js +20 -0
  824. package/src/comments-query-loop/save.js +14 -0
  825. package/src/comments-query-loop/toolbar.js +57 -0
  826. package/src/common.scss +3 -17
  827. package/src/cover/block.json +12 -1
  828. package/src/cover/deprecated.js +707 -510
  829. package/src/cover/edit.js +70 -42
  830. package/src/cover/edit.native.js +5 -1
  831. package/src/cover/editor.scss +20 -38
  832. package/src/cover/save.js +30 -26
  833. package/src/cover/shared.js +3 -2
  834. package/src/cover/style.scss +9 -7
  835. package/src/editor.scss +4 -20
  836. package/src/embed/edit.native.js +6 -9
  837. package/src/embed/embed-bottom-sheet.native.js +4 -5
  838. package/src/embed/embed-no-preview.native.js +1 -0
  839. package/src/embed/icons.js +11 -0
  840. package/src/embed/test/__snapshots__/index.native.js.snap +181 -0
  841. package/src/embed/test/index.native.js +991 -0
  842. package/src/embed/transforms.native.js +2 -0
  843. package/src/embed/variations.js +21 -0
  844. package/src/file/test/__snapshots__/edit.native.js.snap +6 -3
  845. package/src/file/test/edit.native.js +4 -0
  846. package/src/freeform/edit.js +14 -4
  847. package/src/gallery/block.json +6 -1
  848. package/src/gallery/edit.js +7 -0
  849. package/src/gallery/editor.scss +0 -1
  850. package/src/gallery/gallery.js +1 -4
  851. package/src/gallery/gallery.native.js +1 -4
  852. package/src/gallery/index.php +52 -0
  853. package/src/gallery/save.js +9 -3
  854. package/src/gallery/shared.js +0 -7
  855. package/src/gallery/use-get-media.js +6 -11
  856. package/src/gallery/use-mobile-warning.js +28 -0
  857. package/src/group/block.json +1 -0
  858. package/src/group/edit.js +1 -1
  859. package/src/group/save.js +3 -8
  860. package/src/group/variations.js +1 -1
  861. package/src/heading/autogenerate-anchors.js +81 -0
  862. package/src/heading/block.json +14 -2
  863. package/src/heading/edit.js +42 -4
  864. package/src/home-link/index.php +3 -1
  865. package/src/image/block.json +1 -1
  866. package/src/image/edit.native.js +120 -64
  867. package/src/image/editor.scss +1 -0
  868. package/src/image/index.php +42 -0
  869. package/src/image/style.scss +8 -2
  870. package/src/image/test/edit.native.js +225 -40
  871. package/src/image/transforms.js +4 -0
  872. package/src/index.js +96 -88
  873. package/src/index.native.js +1 -1
  874. package/src/list/block.json +11 -2
  875. package/src/list/deprecated.js +79 -0
  876. package/src/list/index.js +2 -0
  877. package/src/media-text/edit.js +1 -1
  878. package/src/media-text/save.js +6 -4
  879. package/src/media-text/style.scss +1 -0
  880. package/src/navigation/block.json +41 -13
  881. package/src/navigation/deprecated.js +336 -27
  882. package/src/navigation/edit/index.js +510 -0
  883. package/src/navigation/edit/inner-blocks.js +134 -0
  884. package/src/navigation/edit/navigation-menu-delete-control.js +81 -0
  885. package/src/navigation/edit/navigation-menu-name-control.js +22 -0
  886. package/src/navigation/edit/navigation-menu-name-modal.js +69 -0
  887. package/src/navigation/edit/navigation-menu-publish-button.js +57 -0
  888. package/src/navigation/edit/navigation-menu-selector.js +42 -0
  889. package/src/navigation/edit/placeholder/index.js +257 -0
  890. package/src/navigation/{placeholder-preview.js → edit/placeholder/placeholder-preview.js} +13 -2
  891. package/src/navigation/{responsive-wrapper.js → edit/responsive-wrapper.js} +8 -6
  892. package/src/navigation/edit/unsaved-inner-blocks.js +197 -0
  893. package/src/navigation/edit/use-list-view-modal.js +72 -0
  894. package/src/navigation/editor.scss +86 -31
  895. package/src/navigation/index.js +0 -2
  896. package/src/navigation/index.php +54 -107
  897. package/src/navigation/save.js +7 -1
  898. package/src/navigation/style.scss +81 -155
  899. package/src/navigation/use-navigation-menu.js +60 -0
  900. package/src/navigation/use-template-part-area-label.js +78 -0
  901. package/src/navigation/view.js +33 -32
  902. package/src/navigation-area/block.json +27 -0
  903. package/src/navigation-area/edit.js +105 -0
  904. package/src/navigation-area/index.js +26 -0
  905. package/src/navigation-area/index.php +21 -0
  906. package/src/navigation-area/inner-blocks.js +24 -0
  907. package/src/navigation-area/save.js +8 -0
  908. package/src/navigation-link/edit.js +97 -12
  909. package/src/navigation-link/editor.scss +30 -19
  910. package/src/navigation-link/index.php +8 -10
  911. package/src/navigation-link/style.scss +1 -1
  912. package/src/navigation-link/transforms.js +5 -1
  913. package/src/navigation-submenu/edit.js +2 -2
  914. package/src/navigation-submenu/editor.scss +1 -1
  915. package/src/navigation-submenu/index.php +10 -9
  916. package/src/navigation-submenu/style.scss +5 -0
  917. package/src/page-list/block.json +0 -33
  918. package/src/page-list/edit.js +168 -110
  919. package/src/page-list/index.php +27 -26
  920. package/src/page-list/style.scss +4 -23
  921. package/src/paragraph/block.json +8 -1
  922. package/src/paragraph/edit.native.js +1 -0
  923. package/src/pattern/block.json +17 -0
  924. package/src/pattern/edit.js +41 -0
  925. package/src/pattern/index.js +12 -0
  926. package/src/pattern/index.php +44 -0
  927. package/src/post-author/block.json +12 -1
  928. package/src/post-author/style.scss +0 -1
  929. package/src/post-comment/block.json +4 -3
  930. package/src/post-comment/edit.js +16 -13
  931. package/src/post-comment/save.js +4 -6
  932. package/src/post-comments/block.json +8 -1
  933. package/src/post-comments/index.php +12 -3
  934. package/src/post-comments/style.scss +27 -1
  935. package/src/post-comments-count/block.json +7 -1
  936. package/src/post-comments-form/block.json +9 -2
  937. package/src/post-comments-form/index.php +0 -14
  938. package/src/post-comments-form/style.scss +47 -7
  939. package/src/post-comments-link/block.json +8 -1
  940. package/src/post-content/edit.js +2 -2
  941. package/src/post-date/block.json +8 -1
  942. package/src/post-date/deprecated.js +52 -0
  943. package/src/post-date/edit.js +1 -1
  944. package/src/post-date/index.js +2 -0
  945. package/src/post-excerpt/block.json +12 -1
  946. package/src/post-excerpt/edit.js +1 -7
  947. package/src/post-excerpt/index.php +7 -1
  948. package/src/post-featured-image/block.json +5 -1
  949. package/src/post-featured-image/editor.scss +1 -1
  950. package/src/post-featured-image/style.scss +1 -1
  951. package/src/post-navigation-link/block.json +8 -1
  952. package/src/post-navigation-link/index.php +1 -2
  953. package/src/post-template/edit.js +8 -3
  954. package/src/post-template/index.php +0 -11
  955. package/src/post-terms/block.json +7 -1
  956. package/src/post-terms/edit.js +2 -14
  957. package/src/post-terms/use-post-terms.js +1 -1
  958. package/src/post-title/block.json +10 -1
  959. package/src/post-title/deprecated.js +65 -0
  960. package/src/post-title/edit.js +1 -1
  961. package/src/post-title/index.js +2 -0
  962. package/src/post-title/index.php +7 -2
  963. package/src/preformatted/block.json +9 -1
  964. package/src/preformatted/edit.js +2 -1
  965. package/src/preformatted/edit.native.js +20 -6
  966. package/src/preformatted/styles.native.scss +5 -0
  967. package/src/preformatted/test/__snapshots__/edit.native.js.snap +20 -2
  968. package/src/pullquote/block.json +12 -0
  969. package/src/pullquote/blockquote.native.js +12 -2
  970. package/src/pullquote/edit.native.js +129 -0
  971. package/src/pullquote/figure.native.js +17 -7
  972. package/src/query/edit/index.js +1 -1
  973. package/src/query/save.js +4 -6
  974. package/src/query-pagination/edit.js +1 -1
  975. package/src/query-pagination-next/block.json +8 -1
  976. package/src/query-pagination-previous/block.json +8 -1
  977. package/src/query-title/block.json +13 -1
  978. package/src/query-title/deprecated.js +51 -0
  979. package/src/query-title/index.js +2 -0
  980. package/src/quote/block.json +15 -1
  981. package/src/quote/deprecated.js +10 -0
  982. package/src/quote/theme.scss +1 -0
  983. package/src/reset.scss +0 -9
  984. package/src/search/edit.js +29 -0
  985. package/src/search/edit.native.js +46 -12
  986. package/src/search/style.scss +54 -52
  987. package/src/search/test/__snapshots__/edit.native.js.snap +33 -5
  988. package/src/search/test/edit.native.js +4 -0
  989. package/src/separator/separator-settings.js +1 -0
  990. package/src/separator/style.scss +0 -1
  991. package/src/site-logo/block.json +6 -0
  992. package/src/site-logo/edit.js +59 -34
  993. package/src/site-logo/editor.scss +101 -16
  994. package/src/site-logo/index.php +20 -19
  995. package/src/site-logo/style.scss +8 -2
  996. package/src/site-tagline/block.json +7 -2
  997. package/src/site-tagline/deprecated.js +49 -0
  998. package/src/site-tagline/index.js +2 -0
  999. package/src/site-title/block.json +11 -1
  1000. package/src/site-title/deprecated.js +62 -0
  1001. package/src/site-title/index.js +2 -0
  1002. package/src/site-title/index.php +3 -0
  1003. package/src/social-link/editor.scss +4 -0
  1004. package/src/social-links/block.json +1 -0
  1005. package/src/social-links/edit.js +2 -1
  1006. package/src/social-links/editor.scss +4 -0
  1007. package/src/social-links/save.js +4 -6
  1008. package/src/social-links/style.scss +8 -1
  1009. package/src/table/block.json +11 -0
  1010. package/src/template-part/edit/inner-blocks.js +1 -1
  1011. package/src/template-part/edit/placeholder/index.js +5 -3
  1012. package/src/template-part/edit/placeholder/patterns-setup.js +3 -2
  1013. package/src/template-part/edit/selection/template-part-previews.js +3 -1
  1014. package/src/template-part/editor.scss +0 -16
  1015. package/src/template-part/index.php +6 -3
  1016. package/src/template-part/variations.js +2 -2
  1017. package/src/term-description/block.json +4 -1
  1018. package/src/term-description/edit.js +1 -1
  1019. package/src/utils/clean-empty-object.js +23 -0
  1020. package/src/utils/migrate-font-family.js +37 -0
  1021. package/src/verse/block.json +10 -1
  1022. package/src/verse/deprecated.js +86 -25
  1023. package/build/buttons/variations.js +0 -33
  1024. package/build/buttons/variations.js.map +0 -1
  1025. package/build/navigation/block-navigation-list.js.map +0 -1
  1026. package/build/navigation/edit.js +0 -304
  1027. package/build/navigation/edit.js.map +0 -1
  1028. package/build/navigation/placeholder-preview.js.map +0 -1
  1029. package/build/navigation/placeholder.js +0 -129
  1030. package/build/navigation/placeholder.js.map +0 -1
  1031. package/build/navigation/responsive-wrapper.js.map +0 -1
  1032. package/build/navigation/use-block-navigator.js +0 -51
  1033. package/build/navigation/use-block-navigator.js.map +0 -1
  1034. package/build/navigation/variations.js +0 -32
  1035. package/build/navigation/variations.js.map +0 -1
  1036. package/build/post-comment-author/edit.js +0 -51
  1037. package/build/post-comment-author/edit.js.map +0 -1
  1038. package/build/post-comment-author/index.js.map +0 -1
  1039. package/build/post-comment-content/edit.js +0 -37
  1040. package/build/post-comment-content/edit.js.map +0 -1
  1041. package/build/post-comment-content/index.js.map +0 -1
  1042. package/build/post-comment-date/edit.js +0 -62
  1043. package/build/post-comment-date/edit.js.map +0 -1
  1044. package/build/post-comment-date/index.js.map +0 -1
  1045. package/build-module/buttons/variations.js +0 -24
  1046. package/build-module/buttons/variations.js.map +0 -1
  1047. package/build-module/navigation/block-navigation-list.js.map +0 -1
  1048. package/build-module/navigation/edit.js +0 -284
  1049. package/build-module/navigation/edit.js.map +0 -1
  1050. package/build-module/navigation/placeholder-preview.js.map +0 -1
  1051. package/build-module/navigation/placeholder.js +0 -113
  1052. package/build-module/navigation/placeholder.js.map +0 -1
  1053. package/build-module/navigation/responsive-wrapper.js.map +0 -1
  1054. package/build-module/navigation/use-block-navigator.js +0 -39
  1055. package/build-module/navigation/use-block-navigator.js.map +0 -1
  1056. package/build-module/navigation/variations.js +0 -23
  1057. package/build-module/navigation/variations.js.map +0 -1
  1058. package/build-module/post-comment-author/edit.js +0 -40
  1059. package/build-module/post-comment-author/edit.js.map +0 -1
  1060. package/build-module/post-comment-author/index.js +0 -31
  1061. package/build-module/post-comment-author/index.js.map +0 -1
  1062. package/build-module/post-comment-content/edit.js +0 -27
  1063. package/build-module/post-comment-content/edit.js.map +0 -1
  1064. package/build-module/post-comment-content/index.js +0 -31
  1065. package/build-module/post-comment-content/index.js.map +0 -1
  1066. package/build-module/post-comment-date/edit.js +0 -52
  1067. package/build-module/post-comment-date/edit.js.map +0 -1
  1068. package/build-module/post-comment-date/index.js +0 -36
  1069. package/build-module/post-comment-date/index.js.map +0 -1
  1070. package/build-style/post-author/editor-rtl.css +0 -104
  1071. package/build-style/post-author/editor.css +0 -104
  1072. package/build-style/query-title/editor-rtl.css +0 -80
  1073. package/build-style/query-title/editor.css +0 -80
  1074. package/build-style/term-description/editor-rtl.css +0 -80
  1075. package/build-style/term-description/editor.css +0 -80
  1076. package/src/buttons/variations.js +0 -24
  1077. package/src/navigation/block-navigation-list.js +0 -38
  1078. package/src/navigation/edit.js +0 -411
  1079. package/src/navigation/placeholder.js +0 -154
  1080. package/src/navigation/use-block-navigator.js +0 -46
  1081. package/src/navigation/variations.js +0 -23
  1082. package/src/post-author/editor.scss +0 -35
  1083. package/src/post-comment-author/block.json +0 -13
  1084. package/src/post-comment-author/edit.js +0 -35
  1085. package/src/post-comment-author/index.php +0 -41
  1086. package/src/post-comment-content/block.json +0 -13
  1087. package/src/post-comment-content/edit.js +0 -32
  1088. package/src/post-comment-content/index.php +0 -42
  1089. package/src/post-comment-date/block.json +0 -18
  1090. package/src/post-comment-date/edit.js +0 -54
  1091. package/src/post-comment-date/index.php +0 -44
  1092. package/src/query-title/editor.scss +0 -4
  1093. package/src/term-description/editor.scss +0 -4
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/button/edit.native.js"],"names":["MIN_BORDER_RADIUS_VALUE","MAX_BORDER_RADIUS_VALUE","INITIAL_MAX_WIDTH","MIN_WIDTH","MIN_WIDTH_MARGINS","styles","button75","marginLeft","button50","button25","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","options","value","label","ButtonEdit","Component","constructor","props","onChangeText","bind","onChangeBorderRadius","onChangeBorderRadiusUnit","onClearSettings","onLayout","onSetMaxWidth","dismissSheet","onShowLinkSettings","onHideLinkSettings","onToggleButtonFocus","onPlaceholderTextWidth","setRef","onRemove","getPlaceholderWidth","borderRadius","attributes","style","border","radius","valueUnit","state","maxWidth","isLinkSheetVisible","isButtonFocused","placeholderTextWidth","borderRadiusUnit","linkSettingsActions","onPress","linkSettingsOptions","url","placeholder","autoFocus","autoFill","openInNewTab","linkRel","noFocusLinkSettingOptions","componentDidMount","componentDidUpdate","prevProps","prevState","isSelected","editorSidebarOpened","parentWidth","Platform","OS","richTextRef","blur","AccessibilityInfo","isScreenReaderEnabled","then","enabled","focus","getBackgroundColor","colors","gradients","backgroundColor","gradient","gradientValue","colorProps","colorObject","color","background","defaultButton","getTextColor","textColor","text","newRadius","newStyle","getNewStyle","newRadiusUnit","getBorderRadiusValue","setState","radiusUnit","rel","linkTarget","nativeEvent","layout","isParentWidthDidChange","marginRight","spacing","isParentWidthChanged","isWidthChanged","numOfButtons","onDeleteBlock","onReplace","closeSettingsBottomSheet","getLinkSettings","isCompatibleWithSettings","richText","placeholderText","textWidth","lines","Math","min","defaultBorderRadius","valueAndUnit","Number","isInteger","parseInt","valueToConvert","parseFloat","render","clientId","mergeBlocks","buttonStyle","align","paddingTop","borderWidth","borderRadiusValue","buttonBorderRadiusValue","floor","outlineBorderRadius","minWidth","isFixedWidth","outline","borderColor","richTextStyle","paddingLeft","paddingRight","placeholderTextColor","link","CSS_UNITS","withInstanceId","withGradient","select","isEditorSidebarOpened","getBlockCount","getBlockRootClientId","getSettings","blockEditorStore","parentId","settings","dispatch","closeGeneralSidebar"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, AccessibilityInfo, Platform, Text } from 'react-native';\n/**\n * WordPress dependencies\n */\nimport { withInstanceId, compose } from '@wordpress/compose';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tRichText,\n\tInspectorControls,\n\tBlockControls,\n\twithGradient,\n\tstore as blockEditorStore,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n\tUnitControl,\n\tgetValueAndUnit,\n\tBottomSheetSelectControl,\n\tCSS_UNITS,\n\tfilterUnitsWithSettings,\n} from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { link } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport richTextStyle from './rich-text.scss';\nimport styles from './editor.scss';\nimport ColorBackground from './color-background';\n\nconst MIN_BORDER_RADIUS_VALUE = 0;\nconst MAX_BORDER_RADIUS_VALUE = 50;\nconst INITIAL_MAX_WIDTH = 108;\nconst MIN_WIDTH = 40;\n// Map of the percentage width to pixel subtraction that make the buttons fit nicely into columns.\nconst MIN_WIDTH_MARGINS = {\n\t100: 0,\n\t75: styles.button75?.marginLeft,\n\t50: styles.button50?.marginLeft,\n\t25: styles.button25?.marginLeft,\n};\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tlet width = selectedWidth === newWidth ? undefined : newWidth;\n\t\tif ( newWidth === 'auto' ) {\n\t\t\twidth = undefined;\n\t\t}\n\t\t// Update attributes\n\t\tsetAttributes( { width } );\n\t}\n\n\tconst options = [\n\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t{ value: 25, label: '25%' },\n\t\t{ value: 50, label: '50%' },\n\t\t{ value: 75, label: '75%' },\n\t\t{ value: 100, label: '100%' },\n\t];\n\n\tif ( ! selectedWidth ) {\n\t\tselectedWidth = 'auto';\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width Settings' ) }>\n\t\t\t<BottomSheetSelectControl\n\t\t\t\tlabel={ __( 'Button width' ) }\n\t\t\t\tvalue={ selectedWidth }\n\t\t\t\tonChange={ handleChange }\n\t\t\t\toptions={ options }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nclass ButtonEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.onChangeText = this.onChangeText.bind( this );\n\t\tthis.onChangeBorderRadius = this.onChangeBorderRadius.bind( this );\n\t\tthis.onChangeBorderRadiusUnit = this.onChangeBorderRadiusUnit.bind(\n\t\t\tthis\n\t\t);\n\t\tthis.onClearSettings = this.onClearSettings.bind( this );\n\t\tthis.onLayout = this.onLayout.bind( this );\n\t\tthis.onSetMaxWidth = this.onSetMaxWidth.bind( this );\n\t\tthis.dismissSheet = this.dismissSheet.bind( this );\n\t\tthis.onShowLinkSettings = this.onShowLinkSettings.bind( this );\n\t\tthis.onHideLinkSettings = this.onHideLinkSettings.bind( this );\n\t\tthis.onToggleButtonFocus = this.onToggleButtonFocus.bind( this );\n\t\tthis.onPlaceholderTextWidth = this.onPlaceholderTextWidth.bind( this );\n\t\tthis.setRef = this.setRef.bind( this );\n\t\tthis.onRemove = this.onRemove.bind( this );\n\t\tthis.getPlaceholderWidth = this.getPlaceholderWidth.bind( this );\n\n\t\tconst borderRadius = props?.attributes?.style?.border?.radius;\n\t\tconst { valueUnit = 'px' } = getValueAndUnit( borderRadius ) || {};\n\n\t\tthis.state = {\n\t\t\tmaxWidth: INITIAL_MAX_WIDTH,\n\t\t\tisLinkSheetVisible: false,\n\t\t\tisButtonFocused: true,\n\t\t\tplaceholderTextWidth: 0,\n\t\t\tborderRadiusUnit: valueUnit,\n\t\t};\n\n\t\tthis.linkSettingsActions = [\n\t\t\t{\n\t\t\t\tlabel: __( 'Remove link' ),\n\t\t\t\tonPress: this.onClearSettings,\n\t\t\t},\n\t\t];\n\n\t\tthis.linkSettingsOptions = {\n\t\t\turl: {\n\t\t\t\tlabel: __( 'Button Link URL' ),\n\t\t\t\tplaceholder: __( 'Add URL' ),\n\t\t\t\tautoFocus: true,\n\t\t\t\tautoFill: true,\n\t\t\t},\n\t\t\topenInNewTab: {\n\t\t\t\tlabel: __( 'Open in new tab' ),\n\t\t\t},\n\t\t\tlinkRel: {\n\t\t\t\tlabel: __( 'Link Rel' ),\n\t\t\t\tplaceholder: _x(\n\t\t\t\t\t'None',\n\t\t\t\t\t'Link rel attribute value placeholder'\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\n\t\tthis.noFocusLinkSettingOptions = {\n\t\t\t...this.linkSettingsOptions,\n\t\t\turl: {\n\t\t\t\t...this.linkSettingsOptions.url,\n\t\t\t\tautoFocus: false,\n\t\t\t},\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.onSetMaxWidth();\n\t}\n\n\tcomponentDidUpdate( prevProps, prevState ) {\n\t\tconst { isSelected, editorSidebarOpened, parentWidth } = this.props;\n\t\tconst { isLinkSheetVisible, isButtonFocused } = this.state;\n\n\t\tif ( isSelected && ! prevProps.isSelected ) {\n\t\t\tthis.onToggleButtonFocus( true );\n\t\t}\n\n\t\tif ( prevProps.parentWidth !== parentWidth ) {\n\t\t\tthis.onSetMaxWidth( null, true );\n\t\t}\n\n\t\t// Blur `RichText` on Android when link settings sheet or button settings sheet is opened,\n\t\t// to avoid flashing caret after closing one of them\n\t\tif (\n\t\t\t( ! prevProps.editorSidebarOpened && editorSidebarOpened ) ||\n\t\t\t( ! prevState.isLinkSheetVisible && isLinkSheetVisible )\n\t\t) {\n\t\t\tif ( Platform.OS === 'android' && this.richTextRef ) {\n\t\t\t\tthis.richTextRef.blur();\n\t\t\t\tthis.onToggleButtonFocus( false );\n\t\t\t}\n\t\t}\n\n\t\tif ( this.richTextRef ) {\n\t\t\tif ( ! isSelected && isButtonFocused ) {\n\t\t\t\tthis.onToggleButtonFocus( false );\n\t\t\t}\n\n\t\t\tif ( isSelected && ! isButtonFocused ) {\n\t\t\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( enabled ) => {\n\t\t\t\t\tif ( enabled ) {\n\t\t\t\t\t\tthis.onToggleButtonFocus( true );\n\t\t\t\t\t\tthis.richTextRef.focus();\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\n\tgetBackgroundColor() {\n\t\tconst { attributes, colors, gradients, style } = this.props;\n\t\tconst { backgroundColor, gradient } = attributes;\n\n\t\t// Return named gradient value if available.\n\t\tconst gradientValue = getGradientValueBySlug( gradients, gradient );\n\n\t\tif ( gradientValue ) {\n\t\t\treturn gradientValue;\n\t\t}\n\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tbackgroundColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.backgroundColor ||\n\t\t\tcolorProps.style?.background ||\n\t\t\tstyle?.backgroundColor ||\n\t\t\tstyles.defaultButton.backgroundColor\n\t\t);\n\t}\n\n\tgetTextColor() {\n\t\tconst { attributes, colors, style } = this.props;\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tattributes.textColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.color ||\n\t\t\tstyle?.color ||\n\t\t\tstyles.defaultButton.color\n\t\t);\n\t}\n\n\tonChangeText( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { text: value } );\n\t}\n\n\tonChangeBorderRadius( newRadius ) {\n\t\tconst { setAttributes, attributes } = this.props;\n\t\tconst { borderRadiusUnit } = this.state;\n\t\tconst { style } = attributes;\n\t\tconst newStyle = this.getNewStyle( style, newRadius, borderRadiusUnit );\n\n\t\tsetAttributes( { style: newStyle } );\n\t}\n\n\tonChangeBorderRadiusUnit( newRadiusUnit ) {\n\t\tconst { setAttributes, attributes } = this.props;\n\t\tconst { style } = attributes;\n\t\tconst borderRadius = this.getBorderRadiusValue(\n\t\t\tattributes?.style?.border?.radius\n\t\t);\n\t\tconst newStyle = this.getNewStyle( style, borderRadius, newRadiusUnit );\n\t\tsetAttributes( { style: newStyle } );\n\t\tthis.setState( { borderRadiusUnit: newRadiusUnit } );\n\t}\n\n\tgetNewStyle( style, radius, radiusUnit ) {\n\t\treturn {\n\t\t\t...style,\n\t\t\tborder: {\n\t\t\t\t...style?.border,\n\t\t\t\tradius: `${ radius }${ radiusUnit }`, // Store the value with the unit so that it works as expected.\n\t\t\t},\n\t\t};\n\t}\n\n\tonShowLinkSettings() {\n\t\tthis.setState( { isLinkSheetVisible: true } );\n\t}\n\n\tonHideLinkSettings() {\n\t\tthis.setState( { isLinkSheetVisible: false } );\n\t}\n\n\tonToggleButtonFocus( value ) {\n\t\tif ( value !== this.state.isButtonFocused ) {\n\t\t\tthis.setState( { isButtonFocused: value } );\n\t\t}\n\t}\n\n\tonClearSettings() {\n\t\tconst { setAttributes } = this.props;\n\n\t\tsetAttributes( {\n\t\t\turl: '',\n\t\t\trel: '',\n\t\t\tlinkTarget: '',\n\t\t} );\n\n\t\tthis.onHideLinkSettings();\n\t}\n\n\tonLayout( { nativeEvent } ) {\n\t\tconst { width } = nativeEvent.layout;\n\t\tthis.onSetMaxWidth( width );\n\t}\n\n\tonSetMaxWidth( width, isParentWidthDidChange = false ) {\n\t\tconst { maxWidth } = this.state;\n\t\tconst { parentWidth } = this.props;\n\t\tconst { marginRight: spacing } = styles.defaultButton;\n\n\t\tconst isParentWidthChanged = isParentWidthDidChange\n\t\t\t? isParentWidthDidChange\n\t\t\t: maxWidth !== parentWidth;\n\t\tconst isWidthChanged = maxWidth !== width;\n\n\t\tif ( parentWidth && ! width && isParentWidthChanged ) {\n\t\t\tthis.setState( {\n\t\t\t\tmaxWidth: parentWidth - spacing,\n\t\t\t} );\n\t\t} else if ( ! parentWidth && width && isWidthChanged ) {\n\t\t\tthis.setState( { maxWidth: width - spacing } );\n\t\t}\n\t}\n\n\tonRemove() {\n\t\tconst { numOfButtons, onDeleteBlock, onReplace } = this.props;\n\n\t\tif ( numOfButtons === 1 ) {\n\t\t\tonDeleteBlock();\n\t\t} else {\n\t\t\tonReplace( [] );\n\t\t}\n\t}\n\n\tdismissSheet() {\n\t\tthis.onHideLinkSettings();\n\t\tthis.props.closeSettingsBottomSheet();\n\t}\n\n\tgetLinkSettings( isCompatibleWithSettings ) {\n\t\tconst { isLinkSheetVisible } = this.state;\n\t\tconst { attributes, setAttributes } = this.props;\n\t\treturn (\n\t\t\t<LinkSettingsNavigation\n\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\turl={ attributes.url }\n\t\t\t\trel={ attributes.rel }\n\t\t\t\tlinkTarget={ attributes.linkTarget }\n\t\t\t\tonClose={ this.dismissSheet }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\twithBottomSheet={ ! isCompatibleWithSettings }\n\t\t\t\thasPicker\n\t\t\t\tactions={ this.linkSettingsActions }\n\t\t\t\toptions={\n\t\t\t\t\tisCompatibleWithSettings\n\t\t\t\t\t\t? this.linkSettingsOptions\n\t\t\t\t\t\t: this.noFocusLinkSettingOptions\n\t\t\t\t}\n\t\t\t\tshowIcon={ ! isCompatibleWithSettings }\n\t\t\t/>\n\t\t);\n\t}\n\n\tsetRef( richText ) {\n\t\tthis.richTextRef = richText;\n\t}\n\n\t// Render `Text` with `placeholderText` styled as a placeholder\n\t// to calculate its width which then is set as a `minWidth`\n\tgetPlaceholderWidth( placeholderText ) {\n\t\treturn (\n\t\t\t<Text\n\t\t\t\tstyle={ styles.placeholder }\n\t\t\t\tonTextLayout={ this.onPlaceholderTextWidth }\n\t\t\t>\n\t\t\t\t{ placeholderText }\n\t\t\t</Text>\n\t\t);\n\t}\n\n\tonPlaceholderTextWidth( { nativeEvent } ) {\n\t\tconst { maxWidth, placeholderTextWidth } = this.state;\n\t\tconst textWidth =\n\t\t\tnativeEvent.lines[ 0 ] && nativeEvent.lines[ 0 ].width;\n\n\t\tif ( textWidth && textWidth !== placeholderTextWidth ) {\n\t\t\tthis.setState( {\n\t\t\t\tplaceholderTextWidth: Math.min( textWidth, maxWidth ),\n\t\t\t} );\n\t\t}\n\t}\n\n\tgetBorderRadiusValue( borderRadius, defaultBorderRadius ) {\n\t\tconst valueAndUnit = getValueAndUnit( borderRadius );\n\t\tif ( Number.isInteger( parseInt( valueAndUnit?.valueToConvert ) ) ) {\n\t\t\treturn parseFloat( valueAndUnit.valueToConvert );\n\t\t}\n\t\treturn defaultBorderRadius;\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tattributes,\n\t\t\tisSelected,\n\t\t\tclientId,\n\t\t\tonReplace,\n\t\t\tmergeBlocks,\n\t\t\tparentWidth,\n\t\t\tsetAttributes,\n\t\t\tstyle,\n\t\t} = this.props;\n\t\tconst {\n\t\t\tplaceholder,\n\t\t\ttext,\n\t\t\tstyle: buttonStyle,\n\t\t\turl,\n\t\t\talign = 'center',\n\t\t\twidth,\n\t\t} = attributes;\n\t\tconst {\n\t\t\tmaxWidth,\n\t\t\tisButtonFocused,\n\t\t\tplaceholderTextWidth,\n\t\t\tborderRadiusUnit,\n\t\t} = this.state;\n\t\tconst { paddingTop: spacing, borderWidth } = styles.defaultButton;\n\n\t\tif ( parentWidth === 0 ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst borderRadius = buttonStyle?.border?.radius;\n\t\tconst borderRadiusValue = this.getBorderRadiusValue(\n\t\t\tborderRadius,\n\t\t\tstyles.defaultButton.borderRadius\n\t\t);\n\n\t\tconst buttonBorderRadiusValue =\n\t\t\tborderRadiusUnit === 'px' || borderRadiusUnit === '%'\n\t\t\t\t? borderRadiusValue\n\t\t\t\t: Math.floor( 14 * borderRadiusValue ); // lets assume that the font size is set to 14px; TO get a nicer preview.\n\t\tconst outlineBorderRadius =\n\t\t\tbuttonBorderRadiusValue > 0\n\t\t\t\t? buttonBorderRadiusValue + spacing + borderWidth\n\t\t\t\t: 0;\n\n\t\t// To achieve proper expanding and shrinking `RichText` on iOS, there is a need to set a `minWidth`\n\t\t// value at least on 1 when `RichText` is focused or when is not focused, but `RichText` value is\n\t\t// different than empty string.\n\t\tlet minWidth =\n\t\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t\t? MIN_WIDTH\n\t\t\t\t: placeholderTextWidth;\n\t\tif ( width ) {\n\t\t\t// Set the width of the button.\n\t\t\tminWidth = Math.floor(\n\t\t\t\tmaxWidth * ( width / 100 ) - MIN_WIDTH_MARGINS[ width ]\n\t\t\t);\n\t\t}\n\t\t// To achieve proper expanding and shrinking `RichText` on Android, there is a need to set\n\t\t// a `placeholder` as an empty string when `RichText` is focused,\n\t\t// because `AztecView` is calculating a `minWidth` based on placeholder text.\n\t\tconst placeholderText =\n\t\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t\t? ''\n\t\t\t\t: placeholder || __( 'Add text…' );\n\n\t\tconst backgroundColor = this.getBackgroundColor();\n\t\tconst textColor = this.getTextColor();\n\t\tconst isFixedWidth = !! width;\n\n\t\treturn (\n\t\t\t<View onLayout={ this.onLayout }>\n\t\t\t\t{ this.getPlaceholderWidth( placeholderText ) }\n\t\t\t\t<ColorBackground\n\t\t\t\t\tborderRadiusValue={ buttonBorderRadiusValue }\n\t\t\t\t\tbackgroundColor={ backgroundColor }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t>\n\t\t\t\t\t{ isSelected && (\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\tstyles.outline,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tborderRadius: outlineBorderRadius,\n\t\t\t\t\t\t\t\t\tborderColor: backgroundColor,\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<RichText\n\t\t\t\t\t\tsetRef={ this.setRef }\n\t\t\t\t\t\tplaceholder={ placeholderText }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\tonChange={ this.onChangeText }\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t...richTextStyle.richText,\n\t\t\t\t\t\t\tpaddingLeft: isFixedWidth\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: richTextStyle.richText.paddingLeft,\n\t\t\t\t\t\t\tpaddingRight: isFixedWidth\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: richTextStyle.richText.paddingRight,\n\t\t\t\t\t\t\tcolor: textColor,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttextAlign={ align }\n\t\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\t\tstyle?.color || styles.placeholderTextColor.color\n\t\t\t\t\t\t}\n\t\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\tminWidth={ minWidth } // The minimum Button size.\n\t\t\t\t\t\tmaxWidth={ isFixedWidth ? minWidth : maxWidth } // The width of the screen.\n\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\tisSelected={ isButtonFocused }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tunstableOnFocus={ () =>\n\t\t\t\t\t\t\tthis.onToggleButtonFocus( true )\n\t\t\t\t\t\t}\n\t\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\t\tselectionColor={ textColor }\n\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\tthis.onSetMaxWidth();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\tonRemove={ this.onRemove }\n\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</ColorBackground>\n\n\t\t\t\t{ isSelected && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\t\ttitle={ __( 'Edit link' ) }\n\t\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\t\tonClick={ this.onShowLinkSettings }\n\t\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t\t</BlockControls>\n\t\t\t\t\t\t{ this.getLinkSettings( false ) }\n\t\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t\t<PanelBody title={ __( 'Border Settings' ) }>\n\t\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Border Radius' ) }\n\t\t\t\t\t\t\t\t\tmin={ MIN_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\t\tmax={ MAX_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\t\tvalue={ borderRadiusValue }\n\t\t\t\t\t\t\t\t\tonChange={ this.onChangeBorderRadius }\n\t\t\t\t\t\t\t\t\tonUnitChange={\n\t\t\t\t\t\t\t\t\t\tthis.onChangeBorderRadiusUnit\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tunit={ this.state.borderRadiusUnit }\n\t\t\t\t\t\t\t\t\tunits={ filterUnitsWithSettings(\n\t\t\t\t\t\t\t\t\t\t[ 'px', 'em', 'rem' ],\n\t\t\t\t\t\t\t\t\t\tCSS_UNITS\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</PanelBody>\n\t\t\t\t\t\t\t<WidthPanel\n\t\t\t\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<PanelBody title={ __( 'Link Settings' ) }>\n\t\t\t\t\t\t\t\t{ this.getLinkSettings( true ) }\n\t\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithInstanceId,\n\twithGradient,\n\twithSelect( ( select, { clientId, isSelected } ) => {\n\t\tconst { isEditorSidebarOpened } = select( 'core/edit-post' );\n\t\tconst { getBlockCount, getBlockRootClientId, getSettings } = select(\n\t\t\tblockEditorStore\n\t\t);\n\t\tconst parentId = getBlockRootClientId( clientId );\n\t\tconst numOfButtons = getBlockCount( parentId );\n\t\tconst settings = getSettings();\n\n\t\treturn {\n\t\t\tcolors: settings?.colors || [],\n\t\t\tgradients: settings?.gradients || [],\n\t\t\teditorSidebarOpened: isSelected && isEditorSidebarOpened(),\n\t\t\tnumOfButtons,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\treturn {\n\t\t\tcloseSettingsBottomSheet() {\n\t\t\t\tdispatch( 'core/edit-post' ).closeGeneralSidebar();\n\t\t\t},\n\t\t};\n\t} ),\n] )( ButtonEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/button/edit.native.js"],"names":["MIN_BORDER_RADIUS_VALUE","MAX_BORDER_RADIUS_VALUE","INITIAL_MAX_WIDTH","MIN_WIDTH","MIN_WIDTH_MARGINS","styles","button75","marginLeft","button50","button25","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","options","value","label","ButtonEdit","props","isSelected","parentWidth","initialBorderRadius","attributes","style","border","radius","valueUnit","editorSidebarOpened","numOfButtons","select","isEditorSidebarOpened","editPostStore","getBlockCount","getBlockRootClientId","blockEditorStore","parentId","clientId","blockCount","currentIsEditorSidebarOpened","closeGeneralSidebar","maxWidth","setMaxWidth","isLinkSheetVisible","setIsLinkSheetVisible","isButtonFocused","setIsButtonFocused","placeholderTextWidth","setPlaceholderTextWidth","borderRadiusUnit","setBorderRadiusUnit","richTextRef","colors","gradients","onToggleButtonFocus","onSetMaxWidth","Platform","OS","current","blur","AccessibilityInfo","isScreenReaderEnabled","then","enabled","focus","linkSettingsActions","onPress","onClearSettings","linkSettingsOptions","url","placeholder","autoFocus","autoFill","openInNewTab","linkRel","noFocusLinkSettingOptions","getBackgroundColor","backgroundColor","gradient","gradientValue","colorProps","colorObject","color","background","defaultButton","getTextColor","textColor","onChangeText","text","onChangeBorderRadius","newRadius","newStyle","getNewStyle","onChangeBorderRadiusUnit","newRadiusUnit","newBorderRadius","getBorderRadiusValue","radiusUnit","onShowLinkSettings","onHideLinkSettings","rel","linkTarget","onLayout","nativeEvent","layout","isParentWidthDidChange","marginRight","spacing","isParentWidthChanged","isWidthChanged","onRemove","onDeleteBlock","onReplace","onPlaceholderTextWidth","textWidth","lines","Math","min","onSetRef","ref","onUnstableOnFocus","onBlur","dismissSheet","getLinkSettings","isCompatibleWithSettings","getPlaceholderWidth","placeholderText","currentBorderRadius","defaultBorderRadius","valueAndUnit","Number","isInteger","parseInt","valueToConvert","parseFloat","mergeBlocks","buttonStyle","align","paddingTop","borderWidth","borderRadiusValue","borderRadius","buttonBorderRadiusValue","floor","outlineBorderRadius","minWidth","isFixedWidth","outLineStyles","outline","borderColor","textStyles","richTextStyle","richText","paddingLeft","paddingRight","placeholderTextColor","fontSize","link","CSS_UNITS"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, AccessibilityInfo, Platform, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useEffect, useState, useRef } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tRichText,\n\tInspectorControls,\n\tBlockControls,\n\tstore as blockEditorStore,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\tuseSetting,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n\tUnitControl,\n\tgetValueAndUnit,\n\tBottomSheetSelectControl,\n\tCSS_UNITS,\n\tfilterUnitsWithSettings,\n} from '@wordpress/components';\nimport { link } from '@wordpress/icons';\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport richTextStyle from './rich-text.scss';\nimport styles from './editor.scss';\nimport ColorBackground from './color-background';\n\nconst MIN_BORDER_RADIUS_VALUE = 0;\nconst MAX_BORDER_RADIUS_VALUE = 50;\nconst INITIAL_MAX_WIDTH = 108;\nconst MIN_WIDTH = 40;\n// Map of the percentage width to pixel subtraction that make the buttons fit nicely into columns.\nconst MIN_WIDTH_MARGINS = {\n\t100: 0,\n\t75: styles.button75?.marginLeft,\n\t50: styles.button50?.marginLeft,\n\t25: styles.button25?.marginLeft,\n};\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tlet width = selectedWidth === newWidth ? undefined : newWidth;\n\t\tif ( newWidth === 'auto' ) {\n\t\t\twidth = undefined;\n\t\t}\n\t\t// Update attributes\n\t\tsetAttributes( { width } );\n\t}\n\n\tconst options = [\n\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t{ value: 25, label: '25%' },\n\t\t{ value: 50, label: '50%' },\n\t\t{ value: 75, label: '75%' },\n\t\t{ value: 100, label: '100%' },\n\t];\n\n\tif ( ! selectedWidth ) {\n\t\tselectedWidth = 'auto';\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width Settings' ) }>\n\t\t\t<BottomSheetSelectControl\n\t\t\t\tlabel={ __( 'Button width' ) }\n\t\t\t\tvalue={ selectedWidth }\n\t\t\t\tonChange={ handleChange }\n\t\t\t\toptions={ options }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst { isSelected, parentWidth } = props;\n\tconst initialBorderRadius = props?.attributes?.style?.border?.radius;\n\tconst { valueUnit = 'px' } = getValueAndUnit( initialBorderRadius ) || {};\n\n\tconst { editorSidebarOpened, numOfButtons } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorSidebarOpened } = select( editPostStore );\n\t\t\tconst { getBlockCount, getBlockRootClientId } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\tconst blockCount = getBlockCount( parentId );\n\t\t\tconst currentIsEditorSidebarOpened = isEditorSidebarOpened();\n\n\t\t\treturn {\n\t\t\t\teditorSidebarOpened: isSelected && currentIsEditorSidebarOpened,\n\t\t\t\tnumOfButtons: blockCount,\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst { closeGeneralSidebar } = useDispatch( editPostStore );\n\tconst [ maxWidth, setMaxWidth ] = useState( INITIAL_MAX_WIDTH );\n\tconst [ isLinkSheetVisible, setIsLinkSheetVisible ] = useState( false );\n\tconst [ isButtonFocused, setIsButtonFocused ] = useState( true );\n\tconst [ placeholderTextWidth, setPlaceholderTextWidth ] = useState( 0 );\n\tconst [ borderRadiusUnit, setBorderRadiusUnit ] = useState( valueUnit );\n\n\tconst richTextRef = useRef();\n\tconst colors = useSetting( 'color.palette' ) || [];\n\tconst gradients = useSetting( 'color.gradients' ) || [];\n\n\tuseEffect( () => {\n\t\tif ( isSelected ) {\n\t\t\tonToggleButtonFocus( true );\n\t\t}\n\t}, [ isSelected ] );\n\n\tuseEffect( () => {\n\t\tonSetMaxWidth( null, true );\n\t}, [ parentWidth ] );\n\n\tuseEffect( () => {\n\t\t// Blur `RichText` on Android when link settings sheet or button settings sheet is opened,\n\t\t// to avoid flashing caret after closing one of them\n\t\tif ( editorSidebarOpened || isLinkSheetVisible ) {\n\t\t\tif ( Platform.OS === 'android' && richTextRef?.current ) {\n\t\t\t\trichTextRef.current.blur();\n\t\t\t\tonToggleButtonFocus( false );\n\t\t\t}\n\t\t}\n\t}, [ editorSidebarOpened, isLinkSheetVisible ] );\n\n\tuseEffect( () => {\n\t\tif ( richTextRef?.current ) {\n\t\t\tif ( ! isSelected && isButtonFocused ) {\n\t\t\t\tonToggleButtonFocus( false );\n\t\t\t}\n\n\t\t\tif ( isSelected && ! isButtonFocused ) {\n\t\t\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( enabled ) => {\n\t\t\t\t\tif ( enabled ) {\n\t\t\t\t\t\tonToggleButtonFocus( true );\n\t\t\t\t\t\trichTextRef?.current.focus();\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}, [ isSelected, isButtonFocused ] );\n\n\tconst linkSettingsActions = [\n\t\t{\n\t\t\tlabel: __( 'Remove link' ),\n\t\t\tonPress: onClearSettings,\n\t\t},\n\t];\n\n\tconst linkSettingsOptions = {\n\t\turl: {\n\t\t\tlabel: __( 'Button Link URL' ),\n\t\t\tplaceholder: __( 'Add URL' ),\n\t\t\tautoFocus: true,\n\t\t\tautoFill: true,\n\t\t},\n\t\topenInNewTab: {\n\t\t\tlabel: __( 'Open in new tab' ),\n\t\t},\n\t\tlinkRel: {\n\t\t\tlabel: __( 'Link Rel' ),\n\t\t\tplaceholder: _x( 'None', 'Link rel attribute value placeholder' ),\n\t\t},\n\t};\n\n\tconst noFocusLinkSettingOptions = {\n\t\t...linkSettingsOptions,\n\t\turl: {\n\t\t\t...linkSettingsOptions.url,\n\t\t\tautoFocus: false,\n\t\t},\n\t};\n\n\tfunction getBackgroundColor() {\n\t\tconst { attributes, style } = props;\n\t\tconst { backgroundColor, gradient } = attributes;\n\n\t\t// Return named gradient value if available.\n\t\tconst gradientValue = getGradientValueBySlug( gradients, gradient );\n\n\t\tif ( gradientValue ) {\n\t\t\treturn gradientValue;\n\t\t}\n\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tbackgroundColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.backgroundColor ||\n\t\t\tcolorProps.style?.background ||\n\t\t\tstyle?.backgroundColor ||\n\t\t\tstyles.defaultButton.backgroundColor\n\t\t);\n\t}\n\n\tfunction getTextColor() {\n\t\tconst { attributes, style } = props;\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tattributes.textColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.color ||\n\t\t\tstyle?.color ||\n\t\t\tstyles.defaultButton.color\n\t\t);\n\t}\n\n\tfunction onChangeText( value ) {\n\t\tconst { setAttributes } = props;\n\t\tsetAttributes( { text: value } );\n\t}\n\n\tfunction onChangeBorderRadius( newRadius ) {\n\t\tconst { setAttributes, attributes } = props;\n\t\tconst { style } = attributes;\n\t\tconst newStyle = getNewStyle( style, newRadius, borderRadiusUnit );\n\n\t\tsetAttributes( { style: newStyle } );\n\t}\n\n\tfunction onChangeBorderRadiusUnit( newRadiusUnit ) {\n\t\tconst { setAttributes, attributes } = props;\n\t\tconst { style } = attributes;\n\t\tconst newBorderRadius = getBorderRadiusValue(\n\t\t\tattributes?.style?.border?.radius\n\t\t);\n\t\tconst newStyle = getNewStyle( style, newBorderRadius, newRadiusUnit );\n\t\tsetAttributes( { style: newStyle } );\n\t\tsetBorderRadiusUnit( newRadiusUnit );\n\t}\n\n\tfunction getNewStyle( style, radius, radiusUnit ) {\n\t\treturn {\n\t\t\t...style,\n\t\t\tborder: {\n\t\t\t\t...style?.border,\n\t\t\t\tradius: `${ radius }${ radiusUnit }`, // Store the value with the unit so that it works as expected.\n\t\t\t},\n\t\t};\n\t}\n\n\tfunction onShowLinkSettings() {\n\t\tsetIsLinkSheetVisible( true );\n\t}\n\n\tfunction onHideLinkSettings() {\n\t\tsetIsLinkSheetVisible( false );\n\t}\n\n\tfunction onToggleButtonFocus( value ) {\n\t\tif ( value !== isButtonFocused ) {\n\t\t\tsetIsButtonFocused( value );\n\t\t}\n\t}\n\n\tfunction onClearSettings() {\n\t\tconst { setAttributes } = props;\n\n\t\tsetAttributes( {\n\t\t\turl: '',\n\t\t\trel: '',\n\t\t\tlinkTarget: '',\n\t\t} );\n\n\t\tonHideLinkSettings();\n\t}\n\n\tfunction onLayout( { nativeEvent } ) {\n\t\tconst { width } = nativeEvent.layout;\n\t\tonSetMaxWidth( width );\n\t}\n\n\tconst onSetMaxWidth = useCallback(\n\t\t( width, isParentWidthDidChange = false ) => {\n\t\t\tconst { marginRight: spacing } = styles.defaultButton;\n\n\t\t\tconst isParentWidthChanged = isParentWidthDidChange\n\t\t\t\t? isParentWidthDidChange\n\t\t\t\t: maxWidth !== parentWidth;\n\t\t\tconst isWidthChanged = maxWidth !== width;\n\n\t\t\tif ( parentWidth && ! width && isParentWidthChanged ) {\n\t\t\t\tsetMaxWidth( parentWidth - spacing );\n\t\t\t} else if ( ! parentWidth && width && isWidthChanged ) {\n\t\t\t\tsetMaxWidth( width - spacing );\n\t\t\t}\n\t\t},\n\t\t[ maxWidth, parentWidth ]\n\t);\n\n\tfunction onRemove() {\n\t\tconst { onDeleteBlock, onReplace } = props;\n\n\t\tif ( numOfButtons === 1 ) {\n\t\t\tonDeleteBlock();\n\t\t} else {\n\t\t\tonReplace( [] );\n\t\t}\n\t}\n\n\tfunction onPlaceholderTextWidth( { nativeEvent } ) {\n\t\tconst textWidth =\n\t\t\tnativeEvent.lines[ 0 ] && nativeEvent.lines[ 0 ].width;\n\n\t\tif ( textWidth && textWidth !== placeholderTextWidth ) {\n\t\t\tsetPlaceholderTextWidth( Math.min( textWidth, maxWidth ) );\n\t\t}\n\t}\n\n\tconst onSetRef = useCallback(\n\t\t( ref ) => {\n\t\t\trichTextRef.current = ref;\n\t\t},\n\t\t[ richTextRef ]\n\t);\n\n\tconst onUnstableOnFocus = useCallback( () => {\n\t\tonToggleButtonFocus( true );\n\t}, [] );\n\n\tconst onBlur = useCallback( () => {\n\t\tonSetMaxWidth();\n\t}, [] );\n\n\tfunction dismissSheet() {\n\t\tonHideLinkSettings();\n\t\tcloseGeneralSidebar();\n\t}\n\n\tfunction getLinkSettings( isCompatibleWithSettings ) {\n\t\tconst { attributes, setAttributes } = props;\n\t\treturn (\n\t\t\t<LinkSettingsNavigation\n\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\turl={ attributes.url }\n\t\t\t\trel={ attributes.rel }\n\t\t\t\tlinkTarget={ attributes.linkTarget }\n\t\t\t\tonClose={ dismissSheet }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\twithBottomSheet={ ! isCompatibleWithSettings }\n\t\t\t\thasPicker\n\t\t\t\tactions={ linkSettingsActions }\n\t\t\t\toptions={\n\t\t\t\t\tisCompatibleWithSettings\n\t\t\t\t\t\t? linkSettingsOptions\n\t\t\t\t\t\t: noFocusLinkSettingOptions\n\t\t\t\t}\n\t\t\t\tshowIcon={ ! isCompatibleWithSettings }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// Render `Text` with `placeholderText` styled as a placeholder\n\t// to calculate its width which then is set as a `minWidth`\n\tfunction getPlaceholderWidth( placeholderText ) {\n\t\treturn (\n\t\t\t<Text\n\t\t\t\tstyle={ styles.placeholder }\n\t\t\t\tonTextLayout={ onPlaceholderTextWidth }\n\t\t\t>\n\t\t\t\t{ placeholderText }\n\t\t\t</Text>\n\t\t);\n\t}\n\n\tfunction getBorderRadiusValue( currentBorderRadius, defaultBorderRadius ) {\n\t\tconst valueAndUnit = getValueAndUnit( currentBorderRadius );\n\t\tif ( Number.isInteger( parseInt( valueAndUnit?.valueToConvert ) ) ) {\n\t\t\treturn parseFloat( valueAndUnit.valueToConvert );\n\t\t}\n\t\treturn defaultBorderRadius;\n\t}\n\n\tconst {\n\t\tattributes,\n\t\tclientId,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tsetAttributes,\n\t\tstyle,\n\t} = props;\n\tconst {\n\t\tplaceholder,\n\t\ttext,\n\t\tstyle: buttonStyle,\n\t\turl,\n\t\talign = 'center',\n\t\twidth,\n\t} = attributes;\n\tconst { paddingTop: spacing, borderWidth } = styles.defaultButton;\n\n\tif ( parentWidth === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst currentBorderRadius = buttonStyle?.border?.radius;\n\tconst borderRadiusValue = getBorderRadiusValue(\n\t\tcurrentBorderRadius,\n\t\tstyles.defaultButton.borderRadius\n\t);\n\n\tconst buttonBorderRadiusValue =\n\t\tborderRadiusUnit === 'px' || borderRadiusUnit === '%'\n\t\t\t? borderRadiusValue\n\t\t\t: Math.floor( 14 * borderRadiusValue ); // lets assume that the font size is set to 14px; TO get a nicer preview.\n\tconst outlineBorderRadius =\n\t\tbuttonBorderRadiusValue > 0\n\t\t\t? buttonBorderRadiusValue + spacing + borderWidth\n\t\t\t: 0;\n\n\t// To achieve proper expanding and shrinking `RichText` on iOS, there is a need to set a `minWidth`\n\t// value at least on 1 when `RichText` is focused or when is not focused, but `RichText` value is\n\t// different than empty string.\n\tlet minWidth =\n\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t? MIN_WIDTH\n\t\t\t: placeholderTextWidth;\n\tif ( width ) {\n\t\t// Set the width of the button.\n\t\tminWidth = Math.floor(\n\t\t\tmaxWidth * ( width / 100 ) - MIN_WIDTH_MARGINS[ width ]\n\t\t);\n\t}\n\t// To achieve proper expanding and shrinking `RichText` on Android, there is a need to set\n\t// a `placeholder` as an empty string when `RichText` is focused,\n\t// because `AztecView` is calculating a `minWidth` based on placeholder text.\n\tconst placeholderText =\n\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t? ''\n\t\t\t: placeholder || __( 'Add text…' );\n\n\tconst backgroundColor = getBackgroundColor();\n\tconst textColor = getTextColor();\n\tconst isFixedWidth = !! width;\n\tconst outLineStyles = [\n\t\tstyles.outline,\n\t\t{\n\t\t\tborderRadius: outlineBorderRadius,\n\t\t\tborderColor: backgroundColor,\n\t\t},\n\t];\n\tconst textStyles = {\n\t\t...richTextStyle.richText,\n\t\tpaddingLeft: isFixedWidth ? 0 : richTextStyle.richText.paddingLeft,\n\t\tpaddingRight: isFixedWidth ? 0 : richTextStyle.richText.paddingRight,\n\t\tcolor: textColor,\n\t};\n\n\treturn (\n\t\t<View onLayout={ onLayout }>\n\t\t\t{ getPlaceholderWidth( placeholderText ) }\n\t\t\t<ColorBackground\n\t\t\t\tborderRadiusValue={ buttonBorderRadiusValue }\n\t\t\t\tbackgroundColor={ backgroundColor }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t>\n\t\t\t\t{ isSelected && (\n\t\t\t\t\t<View pointerEvents=\"none\" style={ outLineStyles } />\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\tsetRef={ onSetRef }\n\t\t\t\t\tplaceholder={ placeholderText }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ onChangeText }\n\t\t\t\t\tstyle={ textStyles }\n\t\t\t\t\ttextAlign={ align }\n\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\tstyle?.color || styles.placeholderTextColor.color\n\t\t\t\t\t}\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\tminWidth={ minWidth } // The minimum Button size.\n\t\t\t\t\tmaxWidth={ isFixedWidth ? minWidth : maxWidth } // The width of the screen.\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tisSelected={ isButtonFocused }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tunstableOnFocus={ onUnstableOnFocus }\n\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\tselectionColor={ textColor }\n\t\t\t\t\tonBlur={ onBlur }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonRemove={ onRemove }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tfontSize={ style?.fontSize }\n\t\t\t\t/>\n\t\t\t</ColorBackground>\n\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ttitle={ __( 'Edit link' ) }\n\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\tonClick={ onShowLinkSettings }\n\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t{ getLinkSettings( false ) }\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Border Settings' ) }>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Border Radius' ) }\n\t\t\t\t\t\t\t\tmin={ MIN_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\tmax={ MAX_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\tvalue={ borderRadiusValue }\n\t\t\t\t\t\t\t\tonChange={ onChangeBorderRadius }\n\t\t\t\t\t\t\t\tonUnitChange={ onChangeBorderRadiusUnit }\n\t\t\t\t\t\t\t\tunit={ borderRadiusUnit }\n\t\t\t\t\t\t\t\tunits={ filterUnitsWithSettings(\n\t\t\t\t\t\t\t\t\t[ 'px', 'em', 'rem' ],\n\t\t\t\t\t\t\t\t\tCSS_UNITS\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<WidthPanel\n\t\t\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<PanelBody title={ __( 'Link Settings' ) }>\n\t\t\t\t\t\t\t{ getLinkSettings( true ) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\nexport default ButtonEdit;\n"]}
@@ -89,7 +89,10 @@ const metadata = {
89
89
  },
90
90
  typography: {
91
91
  fontSize: true,
92
- __experimentalFontFamily: true
92
+ __experimentalFontFamily: true,
93
+ __experimentalDefaultControls: {
94
+ fontSize: true
95
+ }
93
96
  },
94
97
  reusable: false,
95
98
  spacing: {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/button/index.js"],"names":["name","metadata","settings","icon","example","attributes","className","text","edit","save","deprecated","merge","a"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAEA;;AAZA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,aADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,SAAS,EAAE,eADA;AAEXC,MAAAA,IAAI,EAAE,cAAI,gBAAJ;AAFK;AADJ,GAFc;AAQvBC,EAAAA,IAAI,EAAJA,aARuB;AASvBC,EAAAA,IAAI,EAAJA,aATuB;AAUvBC,EAAAA,UAAU,EAAVA,mBAVuB;AAWvBC,EAAAA,KAAK,EAAE,CAAEC,CAAF,EAAK;AAAEL,IAAAA,IAAI,GAAG;AAAT,GAAL,MAA0B,EAChC,GAAGK,CAD6B;AAEhCL,IAAAA,IAAI,EAAE,CAAEK,CAAC,CAACL,IAAF,IAAU,EAAZ,IAAmBA;AAFO,GAA1B;AAXgB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { button as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tclassName: 'is-style-fill',\n\t\t\ttext: __( 'Call to Action' ),\n\t\t},\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n\tmerge: ( a, { text = '' } ) => ( {\n\t\t...a,\n\t\ttext: ( a.text || '' ) + text,\n\t} ),\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/button/index.js"],"names":["name","metadata","settings","icon","example","attributes","className","text","edit","save","deprecated","merge","a"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAEA;;AAZA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,aADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,SAAS,EAAE,eADA;AAEXC,MAAAA,IAAI,EAAE,cAAI,gBAAJ;AAFK;AADJ,GAFc;AAQvBC,EAAAA,IAAI,EAAJA,aARuB;AASvBC,EAAAA,IAAI,EAAJA,aATuB;AAUvBC,EAAAA,UAAU,EAAVA,mBAVuB;AAWvBC,EAAAA,KAAK,EAAE,CAAEC,CAAF,EAAK;AAAEL,IAAAA,IAAI,GAAG;AAAT,GAAL,MAA0B,EAChC,GAAGK,CAD6B;AAEhCL,IAAAA,IAAI,EAAE,CAAEK,CAAC,CAACL,IAAF,IAAU,EAAZ,IAAmBA;AAFO,GAA1B;AAXgB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { button as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tclassName: 'is-style-fill',\n\t\t\ttext: __( 'Call to Action' ),\n\t\t},\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n\tmerge: ( a, { text = '' } ) => ( {\n\t\t...a,\n\t\ttext: ( a.text || '' ) + text,\n\t} ),\n};\n"]}
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -7,12 +9,92 @@ exports.default = void 0;
7
9
 
8
10
  var _element = require("@wordpress/element");
9
11
 
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+
10
14
  var _blockEditor = require("@wordpress/block-editor");
11
15
 
16
+ /**
17
+ * External dependencies
18
+ */
19
+
12
20
  /**
13
21
  * WordPress dependencies
14
22
  */
23
+
24
+ /**
25
+ * @param {Object} attributes Block's attributes.
26
+ */
27
+ const migrateWithLayout = attributes => {
28
+ if (!!attributes.layout) {
29
+ return attributes;
30
+ }
31
+
32
+ const {
33
+ contentJustification,
34
+ orientation,
35
+ ...updatedAttributes
36
+ } = attributes;
37
+
38
+ if (contentJustification || orientation) {
39
+ Object.assign(updatedAttributes, {
40
+ layout: {
41
+ type: 'flex',
42
+ ...(contentJustification && {
43
+ justifyContent: contentJustification
44
+ }),
45
+ ...(orientation && {
46
+ orientation
47
+ })
48
+ }
49
+ });
50
+ }
51
+
52
+ return updatedAttributes;
53
+ };
54
+
15
55
  const deprecated = [{
56
+ attributes: {
57
+ contentJustification: {
58
+ type: 'string'
59
+ },
60
+ orientation: {
61
+ type: 'string',
62
+ default: 'horizontal'
63
+ }
64
+ },
65
+ supports: {
66
+ anchor: true,
67
+ align: ['wide', 'full'],
68
+ __experimentalExposeControlsToChildren: true,
69
+ spacing: {
70
+ blockGap: true,
71
+ margin: ['top', 'bottom'],
72
+ __experimentalDefaultControls: {
73
+ blockGap: true
74
+ }
75
+ }
76
+ },
77
+ isEligible: ({
78
+ contentJustification,
79
+ orientation
80
+ }) => !!contentJustification || !!orientation,
81
+ migrate: migrateWithLayout,
82
+
83
+ save({
84
+ attributes: {
85
+ contentJustification,
86
+ orientation
87
+ }
88
+ }) {
89
+ return (0, _element.createElement)("div", _blockEditor.useBlockProps.save({
90
+ className: (0, _classnames.default)({
91
+ [`is-content-justification-${contentJustification}`]: contentJustification,
92
+ 'is-vertical': orientation === 'vertical'
93
+ })
94
+ }), (0, _element.createElement)(_blockEditor.InnerBlocks.Content, null));
95
+ }
96
+
97
+ }, {
16
98
  supports: {
17
99
  align: ['center', 'left', 'right'],
18
100
  anchor: true
@@ -29,7 +111,7 @@ const deprecated = [{
29
111
  },
30
112
 
31
113
  migrate(attributes) {
32
- return { ...attributes,
114
+ return migrateWithLayout({ ...attributes,
33
115
  align: undefined,
34
116
  // Floating Buttons blocks shouldn't have been supported in the
35
117
  // first place. Most users using them probably expected them to
@@ -38,7 +120,7 @@ const deprecated = [{
38
120
  // As for center-aligned Buttons blocks, the content justification
39
121
  // equivalent will create an identical end result in most cases.
40
122
  contentJustification: attributes.align
41
- };
123
+ });
42
124
  }
43
125
 
44
126
  }];
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/buttons/deprecated.js"],"names":["deprecated","supports","align","anchor","save","isEligible","includes","migrate","attributes","undefined","contentJustification"],"mappings":";;;;;;;;;AAGA;;AAHA;AACA;AACA;AAGA,MAAMA,UAAU,GAAG,CAClB;AACCC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE,CAAE,QAAF,EAAY,MAAZ,EAAoB,OAApB,CADE;AAETC,IAAAA,MAAM,EAAE;AAFC,GADX;;AAKCC,EAAAA,IAAI,GAAG;AACN,WACC,yCACC,4BAAC,wBAAD,CAAa,OAAb,OADD,CADD;AAKA,GAXF;;AAYCC,EAAAA,UAAU,CAAE;AAAEH,IAAAA;AAAF,GAAF,EAAc;AACvB,WAAOA,KAAK,IAAI,CAAE,QAAF,EAAY,MAAZ,EAAoB,OAApB,EAA8BI,QAA9B,CAAwCJ,KAAxC,CAAhB;AACA,GAdF;;AAeCK,EAAAA,OAAO,CAAEC,UAAF,EAAe;AACrB,WAAO,EACN,GAAGA,UADG;AAENN,MAAAA,KAAK,EAAEO,SAFD;AAGN;AACA;AACA;AACA;AACA;AACA;AACAC,MAAAA,oBAAoB,EAAEF,UAAU,CAACN;AAT3B,KAAP;AAWA;;AA3BF,CADkB,CAAnB;eAgCeF,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { InnerBlocks } from '@wordpress/block-editor';\n\nconst deprecated = [\n\t{\n\t\tsupports: {\n\t\t\talign: [ 'center', 'left', 'right' ],\n\t\t\tanchor: true,\n\t\t},\n\t\tsave() {\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<InnerBlocks.Content />\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tisEligible( { align } ) {\n\t\t\treturn align && [ 'center', 'left', 'right' ].includes( align );\n\t\t},\n\t\tmigrate( attributes ) {\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\talign: undefined,\n\t\t\t\t// Floating Buttons blocks shouldn't have been supported in the\n\t\t\t\t// first place. Most users using them probably expected them to\n\t\t\t\t// act like content justification controls, so these blocks are\n\t\t\t\t// migrated to use content justification.\n\t\t\t\t// As for center-aligned Buttons blocks, the content justification\n\t\t\t\t// equivalent will create an identical end result in most cases.\n\t\t\t\tcontentJustification: attributes.align,\n\t\t\t};\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/buttons/deprecated.js"],"names":["migrateWithLayout","attributes","layout","contentJustification","orientation","updatedAttributes","Object","assign","type","justifyContent","deprecated","default","supports","anchor","align","__experimentalExposeControlsToChildren","spacing","blockGap","margin","__experimentalDefaultControls","isEligible","migrate","save","useBlockProps","className","includes","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n/**\n * WordPress dependencies\n */\nimport { InnerBlocks, useBlockProps } from '@wordpress/block-editor';\n\n/**\n * @param {Object} attributes Block's attributes.\n */\nconst migrateWithLayout = ( attributes ) => {\n\tif ( !! attributes.layout ) {\n\t\treturn attributes;\n\t}\n\n\tconst {\n\t\tcontentJustification,\n\t\torientation,\n\t\t...updatedAttributes\n\t} = attributes;\n\n\tif ( contentJustification || orientation ) {\n\t\tObject.assign( updatedAttributes, {\n\t\t\tlayout: {\n\t\t\t\ttype: 'flex',\n\t\t\t\t...( contentJustification && {\n\t\t\t\t\tjustifyContent: contentJustification,\n\t\t\t\t} ),\n\t\t\t\t...( orientation && { orientation } ),\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn updatedAttributes;\n};\n\nconst deprecated = [\n\t{\n\t\tattributes: {\n\t\t\tcontentJustification: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\torientation: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'horizontal',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\t__experimentalExposeControlsToChildren: true,\n\t\t\tspacing: {\n\t\t\t\tblockGap: true,\n\t\t\t\tmargin: [ 'top', 'bottom' ],\n\t\t\t\t__experimentalDefaultControls: {\n\t\t\t\t\tblockGap: true,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tisEligible: ( { contentJustification, orientation } ) =>\n\t\t\t!! contentJustification || !! orientation,\n\t\tmigrate: migrateWithLayout,\n\t\tsave( { attributes: { contentJustification, orientation } } ) {\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\t{ ...useBlockProps.save( {\n\t\t\t\t\t\tclassName: classnames( {\n\t\t\t\t\t\t\t[ `is-content-justification-${ contentJustification }` ]: contentJustification,\n\t\t\t\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t\t\t} ),\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<InnerBlocks.Content />\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tsupports: {\n\t\t\talign: [ 'center', 'left', 'right' ],\n\t\t\tanchor: true,\n\t\t},\n\t\tsave() {\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<InnerBlocks.Content />\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tisEligible( { align } ) {\n\t\t\treturn align && [ 'center', 'left', 'right' ].includes( align );\n\t\t},\n\t\tmigrate( attributes ) {\n\t\t\treturn migrateWithLayout( {\n\t\t\t\t...attributes,\n\t\t\t\talign: undefined,\n\t\t\t\t// Floating Buttons blocks shouldn't have been supported in the\n\t\t\t\t// first place. Most users using them probably expected them to\n\t\t\t\t// act like content justification controls, so these blocks are\n\t\t\t\t// migrated to use content justification.\n\t\t\t\t// As for center-aligned Buttons blocks, the content justification\n\t\t\t\t// equivalent will create an identical end result in most cases.\n\t\t\t\tcontentJustification: attributes.align,\n\t\t\t} );\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -9,18 +7,12 @@ exports.default = void 0;
9
7
 
10
8
  var _element = require("@wordpress/element");
11
9
 
12
- var _classnames = _interopRequireDefault(require("classnames"));
13
-
14
10
  var _blockEditor = require("@wordpress/block-editor");
15
11
 
16
12
  var _data = require("@wordpress/data");
17
13
 
18
14
  var _button = require("../button");
19
15
 
20
- /**
21
- * External dependencies
22
- */
23
-
24
16
  /**
25
17
  * WordPress dependencies
26
18
  */
@@ -29,26 +21,13 @@ var _button = require("../button");
29
21
  * Internal dependencies
30
22
  */
31
23
  const ALLOWED_BLOCKS = [_button.name];
32
- const LAYOUT = {
33
- type: 'default',
34
- alignments: []
35
- };
36
- const VERTICAL_JUSTIFY_CONTROLS = ['left', 'center', 'right'];
37
- const HORIZONTAL_JUSTIFY_CONTROLS = ['left', 'center', 'right', 'space-between'];
38
24
 
39
25
  function ButtonsEdit({
40
26
  attributes: {
41
- contentJustification,
42
- orientation
43
- },
44
- setAttributes
27
+ layout = {}
28
+ }
45
29
  }) {
46
- const blockProps = (0, _blockEditor.useBlockProps)({
47
- className: (0, _classnames.default)({
48
- [`is-content-justification-${contentJustification}`]: contentJustification,
49
- 'is-vertical': orientation === 'vertical'
50
- })
51
- });
30
+ const blockProps = (0, _blockEditor.useBlockProps)();
52
31
  const preferredStyle = (0, _data.useSelect)(select => {
53
32
  var _preferredStyleVariat;
54
33
 
@@ -56,30 +35,15 @@ function ButtonsEdit({
56
35
 
57
36
  return preferredStyleVariations === null || preferredStyleVariations === void 0 ? void 0 : (_preferredStyleVariat = preferredStyleVariations.value) === null || _preferredStyleVariat === void 0 ? void 0 : _preferredStyleVariat[_button.name];
58
37
  }, []);
59
- const innerBlocksProps = (0, _blockEditor.__experimentalUseInnerBlocksProps)(blockProps, {
38
+ const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
60
39
  allowedBlocks: ALLOWED_BLOCKS,
61
40
  template: [[_button.name, {
62
41
  className: preferredStyle && `is-style-${preferredStyle}`
63
42
  }]],
64
- orientation,
65
- __experimentalLayout: LAYOUT,
43
+ __experimentalLayout: layout,
66
44
  templateInsertUpdatesSelection: true
67
45
  });
68
- const justifyControls = orientation === 'vertical' ? VERTICAL_JUSTIFY_CONTROLS : HORIZONTAL_JUSTIFY_CONTROLS;
69
- return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.BlockControls, {
70
- group: "block",
71
- __experimentalShareWithChildBlocks: true
72
- }, (0, _element.createElement)(_blockEditor.JustifyContentControl, {
73
- allowedControls: justifyControls,
74
- value: contentJustification,
75
- onChange: value => setAttributes({
76
- contentJustification: value
77
- }),
78
- popoverProps: {
79
- position: 'bottom right',
80
- isAlternate: true
81
- }
82
- })), (0, _element.createElement)("div", innerBlocksProps));
46
+ return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("div", innerBlocksProps));
83
47
  }
84
48
 
85
49
  var _default = ButtonsEdit;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/buttons/edit.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","LAYOUT","type","alignments","VERTICAL_JUSTIFY_CONTROLS","HORIZONTAL_JUSTIFY_CONTROLS","ButtonsEdit","attributes","contentJustification","orientation","setAttributes","blockProps","className","preferredStyle","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","value","innerBlocksProps","allowedBlocks","template","__experimentalLayout","templateInsertUpdatesSelection","justifyControls","position","isAlternate"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AAOA;;AAKA;;AApBA;AACA;AACA;;AAGA;AACA;AACA;;AAUA;AACA;AACA;AAGA,MAAMA,cAAc,GAAG,CAAEC,YAAF,CAAvB;AACA,MAAMC,MAAM,GAAG;AACdC,EAAAA,IAAI,EAAE,SADQ;AAEdC,EAAAA,UAAU,EAAE;AAFE,CAAf;AAIA,MAAMC,yBAAyB,GAAG,CAAE,MAAF,EAAU,QAAV,EAAoB,OAApB,CAAlC;AACA,MAAMC,2BAA2B,GAAG,CACnC,MADmC,EAEnC,QAFmC,EAGnC,OAHmC,EAInC,eAJmC,CAApC;;AAOA,SAASC,WAAT,CAAsB;AACrBC,EAAAA,UAAU,EAAE;AAAEC,IAAAA,oBAAF;AAAwBC,IAAAA;AAAxB,GADS;AAErBC,EAAAA;AAFqB,CAAtB,EAGI;AACH,QAAMC,UAAU,GAAG,gCAAe;AACjCC,IAAAA,SAAS,EAAE,yBAAY;AACtB,OAAG,4BAA4BJ,oBAAsB,EAArD,GAA0DA,oBADpC;AAEtB,qBAAeC,WAAW,KAAK;AAFT,KAAZ;AADsB,GAAf,CAAnB;AAMA,QAAMI,cAAc,GAAG,qBAAaC,MAAF,IAAc;AAAA;;AAC/C,UAAMC,wBAAwB,GAAGD,MAAM,CACtCE,kBADsC,CAAN,CAE/BC,WAF+B,GAEjBC,sCAFhB;;AAGA,WAAOH,wBAAP,aAAOA,wBAAP,gDAAOA,wBAAwB,CAAEI,KAAjC,0DAAO,sBAAmCnB,YAAnC,CAAP;AACA,GALsB,EAKpB,EALoB,CAAvB;AAOA,QAAMoB,gBAAgB,GAAG,oDAAqBT,UAArB,EAAiC;AACzDU,IAAAA,aAAa,EAAEtB,cAD0C;AAEzDuB,IAAAA,QAAQ,EAAE,CACT,CACCtB,YADD,EAEC;AAAEY,MAAAA,SAAS,EAAEC,cAAc,IAAK,YAAYA,cAAgB;AAA5D,KAFD,CADS,CAF+C;AAQzDJ,IAAAA,WARyD;AASzDc,IAAAA,oBAAoB,EAAEtB,MATmC;AAUzDuB,IAAAA,8BAA8B,EAAE;AAVyB,GAAjC,CAAzB;AAaA,QAAMC,eAAe,GACpBhB,WAAW,KAAK,UAAhB,GACGL,yBADH,GAEGC,2BAHJ;AAKA,SACC,qDACC,4BAAC,0BAAD;AAAe,IAAA,KAAK,EAAC,OAArB;AAA6B,IAAA,kCAAkC;AAA/D,KACC,4BAAC,kCAAD;AACC,IAAA,eAAe,EAAGoB,eADnB;AAEC,IAAA,KAAK,EAAGjB,oBAFT;AAGC,IAAA,QAAQ,EAAKW,KAAF,IACVT,aAAa,CAAE;AAAEF,MAAAA,oBAAoB,EAAEW;AAAxB,KAAF,CAJf;AAMC,IAAA,YAAY,EAAG;AACdO,MAAAA,QAAQ,EAAE,cADI;AAEdC,MAAAA,WAAW,EAAE;AAFC;AANhB,IADD,CADD,EAcC,mCAAUP,gBAAV,CAdD,CADD;AAkBA;;eAEcd,W","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseInnerBlocksProps as useInnerBlocksProps,\n\tJustifyContentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { name as buttonBlockName } from '../button';\n\nconst ALLOWED_BLOCKS = [ buttonBlockName ];\nconst LAYOUT = {\n\ttype: 'default',\n\talignments: [],\n};\nconst VERTICAL_JUSTIFY_CONTROLS = [ 'left', 'center', 'right' ];\nconst HORIZONTAL_JUSTIFY_CONTROLS = [\n\t'left',\n\t'center',\n\t'right',\n\t'space-between',\n];\n\nfunction ButtonsEdit( {\n\tattributes: { contentJustification, orientation },\n\tsetAttributes,\n} ) {\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `is-content-justification-${ contentJustification }` ]: contentJustification,\n\t\t\t'is-vertical': orientation === 'vertical',\n\t\t} ),\n\t} );\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations = select(\n\t\t\tblockEditorStore\n\t\t).getSettings().__experimentalPreferredStyleVariations;\n\t\treturn preferredStyleVariations?.value?.[ buttonBlockName ];\n\t}, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\ttemplate: [\n\t\t\t[\n\t\t\t\tbuttonBlockName,\n\t\t\t\t{ className: preferredStyle && `is-style-${ preferredStyle }` },\n\t\t\t],\n\t\t],\n\t\torientation,\n\t\t__experimentalLayout: LAYOUT,\n\t\ttemplateInsertUpdatesSelection: true,\n\t} );\n\n\tconst justifyControls =\n\t\torientation === 'vertical'\n\t\t\t? VERTICAL_JUSTIFY_CONTROLS\n\t\t\t: HORIZONTAL_JUSTIFY_CONTROLS;\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\" __experimentalShareWithChildBlocks>\n\t\t\t\t<JustifyContentControl\n\t\t\t\t\tallowedControls={ justifyControls }\n\t\t\t\t\tvalue={ contentJustification }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { contentJustification: value } )\n\t\t\t\t\t}\n\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\tposition: 'bottom right',\n\t\t\t\t\t\tisAlternate: true,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nexport default ButtonsEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/buttons/edit.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","ButtonsEdit","attributes","layout","blockProps","preferredStyle","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","value","innerBlocksProps","allowedBlocks","template","className","__experimentalLayout","templateInsertUpdatesSelection"],"mappings":";;;;;;;;;AAGA;;AAKA;;AAKA;;AAbA;AACA;AACA;;AAQA;AACA;AACA;AAGA,MAAMA,cAAc,GAAG,CAAEC,YAAF,CAAvB;;AAEA,SAASC,WAAT,CAAsB;AAAEC,EAAAA,UAAU,EAAE;AAAEC,IAAAA,MAAM,GAAG;AAAX;AAAd,CAAtB,EAAwD;AACvD,QAAMC,UAAU,GAAG,iCAAnB;AACA,QAAMC,cAAc,GAAG,qBAAaC,MAAF,IAAc;AAAA;;AAC/C,UAAMC,wBAAwB,GAAGD,MAAM,CACtCE,kBADsC,CAAN,CAE/BC,WAF+B,GAEjBC,sCAFhB;;AAGA,WAAOH,wBAAP,aAAOA,wBAAP,gDAAOA,wBAAwB,CAAEI,KAAjC,0DAAO,sBAAmCX,YAAnC,CAAP;AACA,GALsB,EAKpB,EALoB,CAAvB;AAOA,QAAMY,gBAAgB,GAAG,sCAAqBR,UAArB,EAAiC;AACzDS,IAAAA,aAAa,EAAEd,cAD0C;AAEzDe,IAAAA,QAAQ,EAAE,CACT,CACCd,YADD,EAEC;AAAEe,MAAAA,SAAS,EAAEV,cAAc,IAAK,YAAYA,cAAgB;AAA5D,KAFD,CADS,CAF+C;AAQzDW,IAAAA,oBAAoB,EAAEb,MARmC;AASzDc,IAAAA,8BAA8B,EAAE;AATyB,GAAjC,CAAzB;AAYA,SACC,qDACC,mCAAUL,gBAAV,CADD,CADD;AAKA;;eAEcX,W","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { name as buttonBlockName } from '../button';\n\nconst ALLOWED_BLOCKS = [ buttonBlockName ];\n\nfunction ButtonsEdit( { attributes: { layout = {} } } ) {\n\tconst blockProps = useBlockProps();\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations = select(\n\t\t\tblockEditorStore\n\t\t).getSettings().__experimentalPreferredStyleVariations;\n\t\treturn preferredStyleVariations?.value?.[ buttonBlockName ];\n\t}, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\ttemplate: [\n\t\t\t[\n\t\t\t\tbuttonBlockName,\n\t\t\t\t{ className: preferredStyle && `is-style-${ preferredStyle }` },\n\t\t\t],\n\t\t],\n\t\t__experimentalLayout: layout,\n\t\ttemplateInsertUpdatesSelection: true,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nexport default ButtonsEdit;\n"]}
@@ -19,8 +19,6 @@ var _edit = _interopRequireDefault(require("./edit"));
19
19
 
20
20
  var _save = _interopRequireDefault(require("./save"));
21
21
 
22
- var _variations = _interopRequireDefault(require("./variations"));
23
-
24
22
  /**
25
23
  * WordPress dependencies
26
24
  */
@@ -36,19 +34,24 @@ const metadata = {
36
34
  description: "Prompt visitors to take action with a group of button-style links.",
37
35
  keywords: ["link"],
38
36
  textdomain: "default",
39
- attributes: {
40
- contentJustification: {
41
- type: "string"
42
- },
43
- orientation: {
44
- type: "string",
45
- "default": "horizontal"
46
- }
47
- },
48
37
  supports: {
49
38
  anchor: true,
50
39
  align: ["wide", "full"],
51
- __experimentalExposeControlsToChildren: true
40
+ __experimentalExposeControlsToChildren: true,
41
+ spacing: {
42
+ blockGap: true,
43
+ margin: ["top", "bottom"],
44
+ __experimentalDefaultControls: {
45
+ blockGap: true
46
+ }
47
+ },
48
+ __experimentalLayout: {
49
+ allowSwitching: false,
50
+ allowInheriting: false,
51
+ "default": {
52
+ type: "flex"
53
+ }
54
+ }
52
55
  },
53
56
  editorStyle: "wp-block-buttons-editor",
54
57
  style: "wp-block-buttons"
@@ -76,8 +79,7 @@ const settings = {
76
79
  deprecated: _deprecated.default,
77
80
  transforms: _transforms.default,
78
81
  edit: _edit.default,
79
- save: _save.default,
80
- variations: _variations.default
82
+ save: _save.default
81
83
  };
82
84
  exports.settings = settings;
83
85
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/buttons/index.js"],"names":["name","metadata","settings","icon","example","innerBlocks","attributes","text","deprecated","transforms","edit","save","variations"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AAEA;;AACA;;AAdA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,WAAW,EAAE,CACZ;AACCL,MAAAA,IAAI,EAAE,aADP;AAECM,MAAAA,UAAU,EAAE;AAAEC,QAAAA,IAAI,EAAE,cAAI,eAAJ;AAAR;AAFb,KADY,EAKZ;AACCP,MAAAA,IAAI,EAAE,aADP;AAECM,MAAAA,UAAU,EAAE;AAAEC,QAAAA,IAAI,EAAE,cAAI,YAAJ;AAAR;AAFb,KALY;AADL,GAFc;AAcvBC,EAAAA,UAAU,EAAVA,mBAduB;AAevBC,EAAAA,UAAU,EAAVA,mBAfuB;AAgBvBC,EAAAA,IAAI,EAAJA,aAhBuB;AAiBvBC,EAAAA,IAAI,EAAJA,aAjBuB;AAkBvBC,EAAAA,UAAU,EAAVA;AAlBuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { buttons as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport transforms from './transforms';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/button',\n\t\t\t\tattributes: { text: __( 'Find out more' ) },\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/button',\n\t\t\t\tattributes: { text: __( 'Contact us' ) },\n\t\t\t},\n\t\t],\n\t},\n\tdeprecated,\n\ttransforms,\n\tedit,\n\tsave,\n\tvariations,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/buttons/index.js"],"names":["name","metadata","settings","icon","example","innerBlocks","attributes","text","deprecated","transforms","edit","save"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AAEA;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,WAAW,EAAE,CACZ;AACCL,MAAAA,IAAI,EAAE,aADP;AAECM,MAAAA,UAAU,EAAE;AAAEC,QAAAA,IAAI,EAAE,cAAI,eAAJ;AAAR;AAFb,KADY,EAKZ;AACCP,MAAAA,IAAI,EAAE,aADP;AAECM,MAAAA,UAAU,EAAE;AAAEC,QAAAA,IAAI,EAAE,cAAI,YAAJ;AAAR;AAFb,KALY;AADL,GAFc;AAcvBC,EAAAA,UAAU,EAAVA,mBAduB;AAevBC,EAAAA,UAAU,EAAVA,mBAfuB;AAgBvBC,EAAAA,IAAI,EAAJA,aAhBuB;AAiBvBC,EAAAA,IAAI,EAAJA;AAjBuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { buttons as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport transforms from './transforms';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/button',\n\t\t\t\tattributes: { text: __( 'Find out more' ) },\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/button',\n\t\t\t\tattributes: { text: __( 'Contact us' ) },\n\t\t\t},\n\t\t],\n\t},\n\tdeprecated,\n\ttransforms,\n\tedit,\n\tsave,\n};\n"]}
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -9,28 +7,14 @@ exports.default = save;
9
7
 
10
8
  var _element = require("@wordpress/element");
11
9
 
12
- var _classnames = _interopRequireDefault(require("classnames"));
13
-
14
10
  var _blockEditor = require("@wordpress/block-editor");
15
11
 
16
- /**
17
- * External dependencies
18
- */
19
-
20
12
  /**
21
13
  * WordPress dependencies
22
14
  */
23
- function save({
24
- attributes: {
25
- contentJustification,
26
- orientation
27
- }
28
- }) {
29
- return (0, _element.createElement)("div", _blockEditor.useBlockProps.save({
30
- className: (0, _classnames.default)({
31
- [`is-content-justification-${contentJustification}`]: contentJustification,
32
- 'is-vertical': orientation === 'vertical'
33
- })
34
- }), (0, _element.createElement)(_blockEditor.InnerBlocks.Content, null));
15
+ function save() {
16
+ const innerBlocksProps = _blockEditor.useInnerBlocksProps.save(_blockEditor.useBlockProps.save());
17
+
18
+ return (0, _element.createElement)("div", innerBlocksProps);
35
19
  }
36
20
  //# sourceMappingURL=save.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/buttons/save.js"],"names":["save","attributes","contentJustification","orientation","useBlockProps","className"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAGe,SAASA,IAAT,CAAe;AAC7BC,EAAAA,UAAU,EAAE;AAAEC,IAAAA,oBAAF;AAAwBC,IAAAA;AAAxB;AADiB,CAAf,EAEX;AACH,SACC,mCACMC,2BAAcJ,IAAd,CAAoB;AACxBK,IAAAA,SAAS,EAAE,yBAAY;AACtB,OAAG,4BAA4BH,oBAAsB,EAArD,GAA0DA,oBADpC;AAEtB,qBAAeC,WAAW,KAAK;AAFT,KAAZ;AADa,GAApB,CADN,EAQC,4BAAC,wBAAD,CAAa,OAAb,OARD,CADD;AAYA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { InnerBlocks, useBlockProps } from '@wordpress/block-editor';\n\nexport default function save( {\n\tattributes: { contentJustification, orientation },\n} ) {\n\treturn (\n\t\t<div\n\t\t\t{ ...useBlockProps.save( {\n\t\t\t\tclassName: classnames( {\n\t\t\t\t\t[ `is-content-justification-${ contentJustification }` ]: contentJustification,\n\t\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t} ),\n\t\t\t} ) }\n\t\t>\n\t\t\t<InnerBlocks.Content />\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/buttons/save.js"],"names":["save","innerBlocksProps","useInnerBlocksProps","useBlockProps"],"mappings":";;;;;;;;;AAGA;;AAHA;AACA;AACA;AAGe,SAASA,IAAT,GAAgB;AAC9B,QAAMC,gBAAgB,GAAGC,iCAAoBF,IAApB,CAA0BG,2BAAcH,IAAd,EAA1B,CAAzB;;AACA,SAAO,mCAAUC,gBAAV,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor';\n\nexport default function save() {\n\tconst innerBlocksProps = useInnerBlocksProps.save( useBlockProps.save() );\n\treturn <div { ...innerBlocksProps } />;\n}\n"]}
@@ -26,19 +26,24 @@ const {
26
26
  description: "Prompt visitors to take action with a group of button-style links.",
27
27
  keywords: ["link"],
28
28
  textdomain: "default",
29
- attributes: {
30
- contentJustification: {
31
- type: "string"
32
- },
33
- orientation: {
34
- type: "string",
35
- "default": "horizontal"
36
- }
37
- },
38
29
  supports: {
39
30
  anchor: true,
40
31
  align: ["wide", "full"],
41
- __experimentalExposeControlsToChildren: true
32
+ __experimentalExposeControlsToChildren: true,
33
+ spacing: {
34
+ blockGap: true,
35
+ margin: ["top", "bottom"],
36
+ __experimentalDefaultControls: {
37
+ blockGap: true
38
+ }
39
+ },
40
+ __experimentalLayout: {
41
+ allowSwitching: false,
42
+ allowInheriting: false,
43
+ "default": {
44
+ type: "flex"
45
+ }
46
+ }
42
47
  },
43
48
  editorStyle: "wp-block-buttons-editor",
44
49
  style: "wp-block-buttons"
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/buttons/transforms.js"],"names":["transforms","from","type","isMultiBlock","blocks","transform","buttons","name","map","attributes","element","document","content","text","innerText","link","querySelector","url","getAttribute","isMatch","paragraphs","every","links","querySelectorAll","length"],"mappings":";;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,MAAMA,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,YAAY,EAAE,IAFf;AAGCC,IAAAA,MAAM,EAAE,CAAE,aAAF,CAHT;AAICC,IAAAA,SAAS,EAAIC,OAAF,IACV;AACA,6BACCC,IADD,EAEC,EAFD,EAGC;AACAD,IAAAA,OAAO,CAACE,GAAR,CAAeC,UAAF,IACZ;AACA,6BAAa,aAAb,EAA4BA,UAA5B,CAFD,CAJD;AANF,GADK,EAiBL;AACCP,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,YAAY,EAAE,IAFf;AAGCC,IAAAA,MAAM,EAAE,CAAE,gBAAF,CAHT;AAICC,IAAAA,SAAS,EAAIC,OAAF,IACV;AACA,6BACCC,IADD,EAEC,EAFD,EAGC;AACAD,IAAAA,OAAO,CAACE,GAAR,CAAeC,UAAF,IAAkB;AAC9B,YAAMC,OAAO,GAAG,uCACfC,QADe,EAEfF,UAAU,CAACG,OAFI,CAAhB,CAD8B,CAK9B;;AACA,YAAMC,IAAI,GAAGH,OAAO,CAACI,SAAR,IAAqB,EAAlC,CAN8B,CAO9B;;AACA,YAAMC,IAAI,GAAGL,OAAO,CAACM,aAAR,CAAuB,GAAvB,CAAb;AACA,YAAMC,GAAG,GAAGF,IAAH,aAAGA,IAAH,uBAAGA,IAAI,CAAEG,YAAN,CAAoB,MAApB,CAAZ,CAT8B,CAU9B;;AACA,aAAO,yBAAa,aAAb,EAA4B;AAClCL,QAAAA,IADkC;AAElCI,QAAAA;AAFkC,OAA5B,CAAP;AAIA,KAfD,CAJD,CANF;AA2BCE,IAAAA,OAAO,EAAIC,UAAF,IAAkB;AAC1B,aAAOA,UAAU,CAACC,KAAX,CAAoBZ,UAAF,IAAkB;AAC1C,cAAMC,OAAO,GAAG,uCACfC,QADe,EAEfF,UAAU,CAACG,OAFI,CAAhB;AAIA,cAAMC,IAAI,GAAGH,OAAO,CAACI,SAAR,IAAqB,EAAlC;AACA,cAAMQ,KAAK,GAAGZ,OAAO,CAACa,gBAAR,CAA0B,GAA1B,CAAd;AACA,eAAOV,IAAI,CAACW,MAAL,IAAe,EAAf,IAAqBF,KAAK,CAACE,MAAN,IAAgB,CAA5C;AACA,OARM,CAAP;AASA;AArCF,GAjBK;AADY,CAAnB;eA4DexB,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { __unstableCreateElement as createElement } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/button' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block\n\t\t\t\tcreateBlock(\n\t\t\t\t\tname,\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons\n\t\t\t\t\tbuttons.map( ( attributes ) =>\n\t\t\t\t\t\t// Create singular button in the buttons block\n\t\t\t\t\t\tcreateBlock( 'core/button', attributes )\n\t\t\t\t\t)\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block\n\t\t\t\tcreateBlock(\n\t\t\t\t\tname,\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons\n\t\t\t\t\tbuttons.map( ( attributes ) => {\n\t\t\t\t\t\tconst element = createElement(\n\t\t\t\t\t\t\tdocument,\n\t\t\t\t\t\t\tattributes.content\n\t\t\t\t\t\t);\n\t\t\t\t\t\t// Remove any HTML tags\n\t\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\t\t// Get first url\n\t\t\t\t\t\tconst link = element.querySelector( 'a' );\n\t\t\t\t\t\tconst url = link?.getAttribute( 'href' );\n\t\t\t\t\t\t// Create singular button in the buttons block\n\t\t\t\t\t\treturn createBlock( 'core/button', {\n\t\t\t\t\t\t\ttext,\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t\tisMatch: ( paragraphs ) => {\n\t\t\t\treturn paragraphs.every( ( attributes ) => {\n\t\t\t\t\tconst element = createElement(\n\t\t\t\t\t\tdocument,\n\t\t\t\t\t\tattributes.content\n\t\t\t\t\t);\n\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\tconst links = element.querySelectorAll( 'a' );\n\t\t\t\t\treturn text.length <= 30 && links.length <= 1;\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/buttons/transforms.js"],"names":["transforms","from","type","isMultiBlock","blocks","transform","buttons","name","map","attributes","element","document","content","text","innerText","link","querySelector","url","getAttribute","isMatch","paragraphs","every","links","querySelectorAll","length"],"mappings":";;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,MAAMA,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,YAAY,EAAE,IAFf;AAGCC,IAAAA,MAAM,EAAE,CAAE,aAAF,CAHT;AAICC,IAAAA,SAAS,EAAIC,OAAF,IACV;AACA,6BACCC,IADD,EAEC,EAFD,EAGC;AACAD,IAAAA,OAAO,CAACE,GAAR,CAAeC,UAAF,IACZ;AACA,6BAAa,aAAb,EAA4BA,UAA5B,CAFD,CAJD;AANF,GADK,EAiBL;AACCP,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,YAAY,EAAE,IAFf;AAGCC,IAAAA,MAAM,EAAE,CAAE,gBAAF,CAHT;AAICC,IAAAA,SAAS,EAAIC,OAAF,IACV;AACA,6BACCC,IADD,EAEC,EAFD,EAGC;AACAD,IAAAA,OAAO,CAACE,GAAR,CAAeC,UAAF,IAAkB;AAC9B,YAAMC,OAAO,GAAG,uCACfC,QADe,EAEfF,UAAU,CAACG,OAFI,CAAhB,CAD8B,CAK9B;;AACA,YAAMC,IAAI,GAAGH,OAAO,CAACI,SAAR,IAAqB,EAAlC,CAN8B,CAO9B;;AACA,YAAMC,IAAI,GAAGL,OAAO,CAACM,aAAR,CAAuB,GAAvB,CAAb;AACA,YAAMC,GAAG,GAAGF,IAAH,aAAGA,IAAH,uBAAGA,IAAI,CAAEG,YAAN,CAAoB,MAApB,CAAZ,CAT8B,CAU9B;;AACA,aAAO,yBAAa,aAAb,EAA4B;AAClCL,QAAAA,IADkC;AAElCI,QAAAA;AAFkC,OAA5B,CAAP;AAIA,KAfD,CAJD,CANF;AA2BCE,IAAAA,OAAO,EAAIC,UAAF,IAAkB;AAC1B,aAAOA,UAAU,CAACC,KAAX,CAAoBZ,UAAF,IAAkB;AAC1C,cAAMC,OAAO,GAAG,uCACfC,QADe,EAEfF,UAAU,CAACG,OAFI,CAAhB;AAIA,cAAMC,IAAI,GAAGH,OAAO,CAACI,SAAR,IAAqB,EAAlC;AACA,cAAMQ,KAAK,GAAGZ,OAAO,CAACa,gBAAR,CAA0B,GAA1B,CAAd;AACA,eAAOV,IAAI,CAACW,MAAL,IAAe,EAAf,IAAqBF,KAAK,CAACE,MAAN,IAAgB,CAA5C;AACA,OARM,CAAP;AASA;AArCF,GAjBK;AADY,CAAnB;eA4DexB,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { __unstableCreateElement as createElement } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/button' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block\n\t\t\t\tcreateBlock(\n\t\t\t\t\tname,\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons\n\t\t\t\t\tbuttons.map( ( attributes ) =>\n\t\t\t\t\t\t// Create singular button in the buttons block\n\t\t\t\t\t\tcreateBlock( 'core/button', attributes )\n\t\t\t\t\t)\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block\n\t\t\t\tcreateBlock(\n\t\t\t\t\tname,\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons\n\t\t\t\t\tbuttons.map( ( attributes ) => {\n\t\t\t\t\t\tconst element = createElement(\n\t\t\t\t\t\t\tdocument,\n\t\t\t\t\t\t\tattributes.content\n\t\t\t\t\t\t);\n\t\t\t\t\t\t// Remove any HTML tags\n\t\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\t\t// Get first url\n\t\t\t\t\t\tconst link = element.querySelector( 'a' );\n\t\t\t\t\t\tconst url = link?.getAttribute( 'href' );\n\t\t\t\t\t\t// Create singular button in the buttons block\n\t\t\t\t\t\treturn createBlock( 'core/button', {\n\t\t\t\t\t\t\ttext,\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t\tisMatch: ( paragraphs ) => {\n\t\t\t\treturn paragraphs.every( ( attributes ) => {\n\t\t\t\t\tconst element = createElement(\n\t\t\t\t\t\tdocument,\n\t\t\t\t\t\tattributes.content\n\t\t\t\t\t);\n\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\tconst links = element.querySelectorAll( 'a' );\n\t\t\t\t\treturn text.length <= 30 && links.length <= 1;\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}