@wordpress/block-library 8.12.0 → 8.12.2

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 (1318) hide show
  1. package/build/archives/edit.js +2 -1
  2. package/build/archives/edit.js.map +1 -1
  3. package/build/archives/index.js +0 -1
  4. package/build/archives/index.js.map +1 -1
  5. package/build/audio/edit.js +4 -2
  6. package/build/audio/edit.js.map +1 -1
  7. package/build/audio/save.js +2 -1
  8. package/build/audio/save.js.map +1 -1
  9. package/build/avatar/edit.js +6 -3
  10. package/build/avatar/edit.js.map +1 -1
  11. package/build/avatar/index.js +1 -2
  12. package/build/avatar/index.js.map +1 -1
  13. package/build/block/edit.js +8 -4
  14. package/build/block/edit.js.map +1 -1
  15. package/build/block/index.js +1 -1
  16. package/build/button/deprecated.js +20 -15
  17. package/build/button/deprecated.js.map +1 -1
  18. package/build/button/edit.js +2 -4
  19. package/build/button/edit.js.map +1 -1
  20. package/build/button/save.js +4 -3
  21. package/build/button/save.js.map +1 -1
  22. package/build/buttons/deprecated.js +6 -5
  23. package/build/buttons/deprecated.js.map +1 -1
  24. package/build/buttons/edit.js +7 -2
  25. package/build/buttons/edit.js.map +1 -1
  26. package/build/buttons/edit.native.js +6 -6
  27. package/build/buttons/edit.native.js.map +1 -1
  28. package/build/buttons/index.js +1 -1
  29. package/build/buttons/save.js +2 -1
  30. package/build/buttons/save.js.map +1 -1
  31. package/build/buttons/transforms.js +1 -1
  32. package/build/calendar/edit.js +4 -2
  33. package/build/calendar/edit.js.map +1 -1
  34. package/build/calendar/index.js +0 -1
  35. package/build/calendar/index.js.map +1 -1
  36. package/build/categories/edit.js +2 -1
  37. package/build/categories/edit.js.map +1 -1
  38. package/build/categories/index.js +0 -1
  39. package/build/categories/index.js.map +1 -1
  40. package/build/code/edit.js +2 -1
  41. package/build/code/edit.js.map +1 -1
  42. package/build/code/save.js +2 -1
  43. package/build/code/save.js.map +1 -1
  44. package/build/column/edit.js +2 -1
  45. package/build/column/edit.js.map +1 -1
  46. package/build/column/edit.native.js +2 -1
  47. package/build/column/edit.native.js.map +1 -1
  48. package/build/column/index.js +1 -1
  49. package/build/column/save.js +2 -1
  50. package/build/column/save.js.map +1 -1
  51. package/build/columns/edit.js +6 -3
  52. package/build/columns/edit.js.map +1 -1
  53. package/build/columns/edit.native.js +4 -5
  54. package/build/columns/edit.native.js.map +1 -1
  55. package/build/columns/index.js +1 -1
  56. package/build/columns/save.js +2 -1
  57. package/build/columns/save.js.map +1 -1
  58. package/build/comment-author-avatar/edit.js +6 -8
  59. package/build/comment-author-avatar/edit.js.map +1 -1
  60. package/build/comment-author-avatar/index.js +0 -1
  61. package/build/comment-author-avatar/index.js.map +1 -1
  62. package/build/comment-author-name/edit.js +2 -1
  63. package/build/comment-author-name/edit.js.map +1 -1
  64. package/build/comment-author-name/index.js +0 -1
  65. package/build/comment-author-name/index.js.map +1 -1
  66. package/build/comment-content/edit.js +4 -2
  67. package/build/comment-content/edit.js.map +1 -1
  68. package/build/comment-content/index.js +0 -1
  69. package/build/comment-content/index.js.map +1 -1
  70. package/build/comment-date/edit.js +2 -1
  71. package/build/comment-date/edit.js.map +1 -1
  72. package/build/comment-date/index.js +0 -1
  73. package/build/comment-date/index.js.map +1 -1
  74. package/build/comment-edit-link/edit.js +2 -1
  75. package/build/comment-edit-link/edit.js.map +1 -1
  76. package/build/comment-edit-link/index.js +0 -1
  77. package/build/comment-edit-link/index.js.map +1 -1
  78. package/build/comment-reply-link/edit.js +2 -1
  79. package/build/comment-reply-link/edit.js.map +1 -1
  80. package/build/comment-reply-link/index.js +0 -1
  81. package/build/comment-reply-link/index.js.map +1 -1
  82. package/build/comment-template/edit.js +10 -10
  83. package/build/comment-template/edit.js.map +1 -1
  84. package/build/comment-template/index.js +0 -1
  85. package/build/comment-template/index.js.map +1 -1
  86. package/build/comments/deprecated.js +2 -1
  87. package/build/comments/deprecated.js.map +1 -1
  88. package/build/comments/edit/comments-legacy.js +2 -1
  89. package/build/comments/edit/comments-legacy.js.map +1 -1
  90. package/build/comments/edit/index.js +4 -2
  91. package/build/comments/edit/index.js.map +1 -1
  92. package/build/comments/index.js +0 -1
  93. package/build/comments/index.js.map +1 -1
  94. package/build/comments/save.js +2 -1
  95. package/build/comments/save.js.map +1 -1
  96. package/build/comments-pagination/edit.js +2 -1
  97. package/build/comments-pagination/edit.js.map +1 -1
  98. package/build/comments-pagination/index.js +1 -2
  99. package/build/comments-pagination/index.js.map +1 -1
  100. package/build/comments-pagination-next/edit.js +4 -7
  101. package/build/comments-pagination-next/edit.js.map +1 -1
  102. package/build/comments-pagination-next/index.js +0 -1
  103. package/build/comments-pagination-next/index.js.map +1 -1
  104. package/build/comments-pagination-numbers/edit.js +2 -1
  105. package/build/comments-pagination-numbers/edit.js.map +1 -1
  106. package/build/comments-pagination-numbers/index.js +0 -1
  107. package/build/comments-pagination-numbers/index.js.map +1 -1
  108. package/build/comments-pagination-previous/edit.js +4 -7
  109. package/build/comments-pagination-previous/edit.js.map +1 -1
  110. package/build/comments-pagination-previous/index.js +0 -1
  111. package/build/comments-pagination-previous/index.js.map +1 -1
  112. package/build/comments-title/edit.js +4 -9
  113. package/build/comments-title/edit.js.map +1 -1
  114. package/build/cover/deprecated.js +46 -36
  115. package/build/cover/deprecated.js.map +1 -1
  116. package/build/cover/edit/index.js +8 -7
  117. package/build/cover/edit/index.js.map +1 -1
  118. package/build/cover/edit/inspector-controls.js +4 -7
  119. package/build/cover/edit/inspector-controls.js.map +1 -1
  120. package/build/cover/edit/resizable-cover-popover.js +6 -7
  121. package/build/cover/edit/resizable-cover-popover.js.map +1 -1
  122. package/build/cover/edit.native.js +12 -11
  123. package/build/cover/edit.native.js.map +1 -1
  124. package/build/cover/index.js +1 -1
  125. package/build/cover/save.js +9 -7
  126. package/build/cover/save.js.map +1 -1
  127. package/build/cover/transforms.js +2 -2
  128. package/build/cover/transforms.js.map +1 -1
  129. package/build/details/edit.js +3 -7
  130. package/build/details/edit.js.map +1 -1
  131. package/build/details/index.js +1 -1
  132. package/build/details/init.js +16 -0
  133. package/build/details/init.js.map +1 -0
  134. package/build/details/save.js +2 -6
  135. package/build/details/save.js.map +1 -1
  136. package/build/embed/deprecated.js +4 -3
  137. package/build/embed/deprecated.js.map +1 -1
  138. package/build/embed/edit.js +6 -3
  139. package/build/embed/edit.js.map +1 -1
  140. package/build/embed/edit.native.js +6 -3
  141. package/build/embed/edit.native.js.map +1 -1
  142. package/build/embed/save.js +4 -3
  143. package/build/embed/save.js.map +1 -1
  144. package/build/embed/wp-embed-preview.js +4 -7
  145. package/build/embed/wp-embed-preview.js.map +1 -1
  146. package/build/embed/wp-embed-preview.native.js +4 -7
  147. package/build/embed/wp-embed-preview.native.js.map +1 -1
  148. package/build/file/deprecated.js +6 -3
  149. package/build/file/deprecated.js.map +1 -1
  150. package/build/file/edit.js +4 -2
  151. package/build/file/edit.js.map +1 -1
  152. package/build/file/index.js +1 -1
  153. package/build/file/save.js +2 -1
  154. package/build/file/save.js.map +1 -1
  155. package/build/file/view.js +9 -0
  156. package/build/file/view.js.map +1 -0
  157. package/build/footnotes/edit.js +57 -0
  158. package/build/footnotes/edit.js.map +1 -0
  159. package/build/footnotes/format.js +142 -0
  160. package/build/footnotes/format.js.map +1 -0
  161. package/build/footnotes/index.js +67 -0
  162. package/build/footnotes/index.js.map +1 -0
  163. package/build/freeform/edit.js +6 -3
  164. package/build/freeform/edit.js.map +1 -1
  165. package/build/freeform/edit.native.js +2 -4
  166. package/build/freeform/edit.native.js.map +1 -1
  167. package/build/freeform/modal.js +2 -1
  168. package/build/freeform/modal.js.map +1 -1
  169. package/build/gallery/deprecated.js +6 -4
  170. package/build/gallery/deprecated.js.map +1 -1
  171. package/build/gallery/edit-wrapper.js +4 -2
  172. package/build/gallery/edit-wrapper.js.map +1 -1
  173. package/build/gallery/edit.js +16 -13
  174. package/build/gallery/edit.js.map +1 -1
  175. package/build/gallery/gallery.js +2 -4
  176. package/build/gallery/gallery.js.map +1 -1
  177. package/build/gallery/gallery.native.js +3 -2
  178. package/build/gallery/gallery.native.js.map +1 -1
  179. package/build/gallery/index.js +1 -1
  180. package/build/gallery/save.js +2 -1
  181. package/build/gallery/save.js.map +1 -1
  182. package/build/gallery/shared-icon.native.js +4 -5
  183. package/build/gallery/shared-icon.native.js.map +1 -1
  184. package/build/gallery/v1/edit.js +8 -9
  185. package/build/gallery/v1/edit.js.map +1 -1
  186. package/build/gallery/v1/gallery.js +7 -7
  187. package/build/gallery/v1/gallery.js.map +1 -1
  188. package/build/gallery/v1/save.js +4 -3
  189. package/build/gallery/v1/save.js.map +1 -1
  190. package/build/group/deprecated.js +5 -3
  191. package/build/group/deprecated.js.map +1 -1
  192. package/build/group/edit.js +4 -1
  193. package/build/group/edit.js.map +1 -1
  194. package/build/group/index.js +1 -1
  195. package/build/group/placeholder.js +2 -1
  196. package/build/group/placeholder.js.map +1 -1
  197. package/build/group/save.js +2 -1
  198. package/build/group/save.js.map +1 -1
  199. package/build/heading/deprecated.js +8 -6
  200. package/build/heading/deprecated.js.map +1 -1
  201. package/build/heading/edit.js +9 -11
  202. package/build/heading/edit.js.map +1 -1
  203. package/build/heading/save.js +4 -3
  204. package/build/heading/save.js.map +1 -1
  205. package/build/home-link/edit.js +2 -1
  206. package/build/home-link/edit.js.map +1 -1
  207. package/build/home-link/index.js +0 -1
  208. package/build/home-link/index.js.map +1 -1
  209. package/build/html/edit.js +4 -3
  210. package/build/html/edit.js.map +1 -1
  211. package/build/image/deprecated.js +14 -12
  212. package/build/image/deprecated.js.map +1 -1
  213. package/build/image/edit.js +4 -7
  214. package/build/image/edit.js.map +1 -1
  215. package/build/image/edit.native.js +8 -8
  216. package/build/image/edit.native.js.map +1 -1
  217. package/build/image/image.js +109 -49
  218. package/build/image/image.js.map +1 -1
  219. package/build/image/index.js +6 -0
  220. package/build/image/index.js.map +1 -1
  221. package/build/image/interactivity.js +119 -6
  222. package/build/image/interactivity.js.map +1 -1
  223. package/build/image/save.js +10 -4
  224. package/build/image/save.js.map +1 -1
  225. package/build/image/utils.js +18 -0
  226. package/build/image/utils.js.map +1 -1
  227. package/build/index.js +3 -1
  228. package/build/index.js.map +1 -1
  229. package/build/latest-comments/edit.js +2 -1
  230. package/build/latest-comments/edit.js.map +1 -1
  231. package/build/latest-comments/index.js +0 -1
  232. package/build/latest-comments/index.js.map +1 -1
  233. package/build/latest-posts/deprecated.js +0 -1
  234. package/build/latest-posts/deprecated.js.map +1 -1
  235. package/build/latest-posts/edit.js +14 -7
  236. package/build/latest-posts/edit.js.map +1 -1
  237. package/build/latest-posts/edit.native.js +4 -5
  238. package/build/latest-posts/edit.native.js.map +1 -1
  239. package/build/latest-posts/index.js +0 -1
  240. package/build/latest-posts/index.js.map +1 -1
  241. package/build/list/deprecated.js +12 -10
  242. package/build/list/deprecated.js.map +1 -1
  243. package/build/list/edit.js +4 -5
  244. package/build/list/edit.js.map +1 -1
  245. package/build/list/ordered-list-settings.js +25 -1
  246. package/build/list/ordered-list-settings.js.map +1 -1
  247. package/build/list/save.js +6 -5
  248. package/build/list/save.js.map +1 -1
  249. package/build/list/tag-name.js +4 -7
  250. package/build/list/tag-name.js.map +1 -1
  251. package/build/list/tag-name.native.js +4 -7
  252. package/build/list/tag-name.native.js.map +1 -1
  253. package/build/list-item/edit.js +2 -1
  254. package/build/list-item/edit.js.map +1 -1
  255. package/build/list-item/edit.native.js +2 -1
  256. package/build/list-item/edit.native.js.map +1 -1
  257. package/build/list-item/save.js +2 -1
  258. package/build/list-item/save.js.map +1 -1
  259. package/build/{private-apis.js → lock-unlock.js} +1 -1
  260. package/build/lock-unlock.js.map +1 -0
  261. package/build/loginout/edit.js +4 -3
  262. package/build/loginout/edit.js.map +1 -1
  263. package/build/loginout/index.js +0 -1
  264. package/build/loginout/index.js.map +1 -1
  265. package/build/media-text/deprecated.js +43 -33
  266. package/build/media-text/deprecated.js.map +1 -1
  267. package/build/media-text/edit.js +7 -4
  268. package/build/media-text/edit.js.map +1 -1
  269. package/build/media-text/media-container.js +8 -7
  270. package/build/media-text/media-container.js.map +1 -1
  271. package/build/media-text/media-container.native.js +8 -8
  272. package/build/media-text/media-container.native.js.map +1 -1
  273. package/build/media-text/save.js +17 -13
  274. package/build/media-text/save.js.map +1 -1
  275. package/build/missing/edit.js +4 -3
  276. package/build/missing/edit.js.map +1 -1
  277. package/build/more/edit.js +2 -1
  278. package/build/more/edit.js.map +1 -1
  279. package/build/navigation/constants.js +8 -1
  280. package/build/navigation/constants.js.map +1 -1
  281. package/build/navigation/deprecated.js +1 -1
  282. package/build/navigation/deprecated.js.map +1 -1
  283. package/build/navigation/edit/index.js +35 -21
  284. package/build/navigation/edit/index.js.map +1 -1
  285. package/build/navigation/edit/inner-blocks.js +2 -1
  286. package/build/navigation/edit/inner-blocks.js.map +1 -1
  287. package/build/navigation/edit/leaf-more-menu.js +5 -9
  288. package/build/navigation/edit/leaf-more-menu.js.map +1 -1
  289. package/build/navigation/edit/menu-inspector-controls.js +12 -16
  290. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  291. package/build/navigation/edit/navigation-menu-selector.js +15 -7
  292. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  293. package/build/navigation/edit/responsive-wrapper.js +2 -1
  294. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  295. package/build/navigation/edit/unsaved-inner-blocks.js +3 -5
  296. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  297. package/build/navigation/index.js +2 -3
  298. package/build/navigation/index.js.map +1 -1
  299. package/build/navigation/use-navigation-menu.js +9 -7
  300. package/build/navigation/use-navigation-menu.js.map +1 -1
  301. package/build/navigation/view-modal.js +64 -0
  302. package/build/navigation/view-modal.js.map +1 -0
  303. package/build/navigation/view.js +61 -0
  304. package/build/navigation/view.js.map +1 -0
  305. package/build/navigation-link/edit.js +4 -2
  306. package/build/navigation-link/edit.js.map +1 -1
  307. package/build/navigation-submenu/edit.js +4 -2
  308. package/build/navigation-submenu/edit.js.map +1 -1
  309. package/build/nextpage/edit.js +2 -1
  310. package/build/nextpage/edit.js.map +1 -1
  311. package/build/page-list/edit.js +12 -6
  312. package/build/page-list/edit.js.map +1 -1
  313. package/build/page-list/index.js +0 -1
  314. package/build/page-list/index.js.map +1 -1
  315. package/build/page-list-item/edit.js +2 -1
  316. package/build/page-list-item/edit.js.map +1 -1
  317. package/build/paragraph/deprecated.js +5 -4
  318. package/build/paragraph/deprecated.js.map +1 -1
  319. package/build/paragraph/edit.js +4 -6
  320. package/build/paragraph/edit.js.map +1 -1
  321. package/build/paragraph/save.js +5 -4
  322. package/build/paragraph/save.js.map +1 -1
  323. package/build/pattern/edit.js +7 -32
  324. package/build/pattern/edit.js.map +1 -1
  325. package/build/pattern/index.js +3 -11
  326. package/build/pattern/index.js.map +1 -1
  327. package/build/post-author/edit.js +4 -2
  328. package/build/post-author/edit.js.map +1 -1
  329. package/build/post-author/index.js +0 -1
  330. package/build/post-author/index.js.map +1 -1
  331. package/build/post-author-biography/edit.js +2 -4
  332. package/build/post-author-biography/edit.js.map +1 -1
  333. package/build/post-author-biography/index.js +0 -1
  334. package/build/post-author-biography/index.js.map +1 -1
  335. package/build/post-author-name/edit.js +2 -1
  336. package/build/post-author-name/edit.js.map +1 -1
  337. package/build/post-author-name/index.js +0 -1
  338. package/build/post-author-name/index.js.map +1 -1
  339. package/build/post-comment/edit.js +4 -2
  340. package/build/post-comment/edit.js.map +1 -1
  341. package/build/post-comment/save.js +2 -1
  342. package/build/post-comment/save.js.map +1 -1
  343. package/build/post-comments-count/edit.js +2 -4
  344. package/build/post-comments-count/edit.js.map +1 -1
  345. package/build/post-comments-count/index.js +0 -1
  346. package/build/post-comments-count/index.js.map +1 -1
  347. package/build/post-comments-form/edit.js +2 -1
  348. package/build/post-comments-form/edit.js.map +1 -1
  349. package/build/post-comments-form/index.js +0 -1
  350. package/build/post-comments-form/index.js.map +1 -1
  351. package/build/post-comments-link/edit.js +2 -1
  352. package/build/post-comments-link/edit.js.map +1 -1
  353. package/build/post-comments-link/index.js +0 -1
  354. package/build/post-comments-link/index.js.map +1 -1
  355. package/build/post-content/edit.js +11 -10
  356. package/build/post-content/edit.js.map +1 -1
  357. package/build/post-content/index.js +1 -2
  358. package/build/post-content/index.js.map +1 -1
  359. package/build/post-date/edit.js +2 -1
  360. package/build/post-date/edit.js.map +1 -1
  361. package/build/post-date/index.js +0 -1
  362. package/build/post-date/index.js.map +1 -1
  363. package/build/post-excerpt/edit.js +6 -3
  364. package/build/post-excerpt/edit.js.map +1 -1
  365. package/build/post-excerpt/index.js +0 -1
  366. package/build/post-excerpt/index.js.map +1 -1
  367. package/build/post-featured-image/edit.js +4 -2
  368. package/build/post-featured-image/edit.js.map +1 -1
  369. package/build/post-featured-image/index.js +0 -1
  370. package/build/post-featured-image/index.js.map +1 -1
  371. package/build/post-featured-image/overlay.js +4 -5
  372. package/build/post-featured-image/overlay.js.map +1 -1
  373. package/build/post-navigation-link/edit.js +2 -1
  374. package/build/post-navigation-link/edit.js.map +1 -1
  375. package/build/post-navigation-link/index.js +0 -1
  376. package/build/post-navigation-link/index.js.map +1 -1
  377. package/build/post-template/edit.js +14 -9
  378. package/build/post-template/edit.js.map +1 -1
  379. package/build/post-template/index.js +1 -2
  380. package/build/post-template/index.js.map +1 -1
  381. package/build/post-terms/edit.js +4 -8
  382. package/build/post-terms/edit.js.map +1 -1
  383. package/build/post-terms/hooks.js +9 -5
  384. package/build/post-terms/hooks.js.map +1 -1
  385. package/build/post-terms/index.js +0 -1
  386. package/build/post-terms/index.js.map +1 -1
  387. package/build/post-time-to-read/edit.js +2 -1
  388. package/build/post-time-to-read/edit.js.map +1 -1
  389. package/build/post-time-to-read/init.js +16 -0
  390. package/build/post-time-to-read/init.js.map +1 -0
  391. package/build/post-title/edit.js +16 -16
  392. package/build/post-title/edit.js.map +1 -1
  393. package/build/post-title/index.js +0 -1
  394. package/build/post-title/index.js.map +1 -1
  395. package/build/preformatted/edit.js +4 -8
  396. package/build/preformatted/edit.js.map +1 -1
  397. package/build/preformatted/edit.native.js +2 -1
  398. package/build/preformatted/edit.native.js.map +1 -1
  399. package/build/preformatted/save.js +2 -1
  400. package/build/preformatted/save.js.map +1 -1
  401. package/build/pullquote/deprecated.js +10 -8
  402. package/build/pullquote/deprecated.js.map +1 -1
  403. package/build/pullquote/edit.js +2 -1
  404. package/build/pullquote/edit.js.map +1 -1
  405. package/build/pullquote/edit.native.js +2 -1
  406. package/build/pullquote/edit.native.js.map +1 -1
  407. package/build/pullquote/save.js +5 -4
  408. package/build/pullquote/save.js.map +1 -1
  409. package/build/query/deprecated.js +16 -10
  410. package/build/query/deprecated.js.map +1 -1
  411. package/build/query/edit/index.js +2 -4
  412. package/build/query/edit/index.js.map +1 -1
  413. package/build/query/edit/inspector-controls/index.js +4 -3
  414. package/build/query/edit/inspector-controls/index.js.map +1 -1
  415. package/build/query/edit/query-content.js +20 -6
  416. package/build/query/edit/query-content.js.map +1 -1
  417. package/build/query/edit/query-placeholder.js +4 -2
  418. package/build/query/edit/query-placeholder.js.map +1 -1
  419. package/build/query/index.js +1 -2
  420. package/build/query/index.js.map +1 -1
  421. package/build/query/save.js +2 -1
  422. package/build/query/save.js.map +1 -1
  423. package/build/query/utils.js +1 -2
  424. package/build/query/utils.js.map +1 -1
  425. package/build/query-no-results/edit.js +2 -1
  426. package/build/query-no-results/edit.js.map +1 -1
  427. package/build/query-no-results/index.js +0 -1
  428. package/build/query-no-results/index.js.map +1 -1
  429. package/build/query-pagination/deprecated.js +2 -1
  430. package/build/query-pagination/deprecated.js.map +1 -1
  431. package/build/query-pagination/edit.js +2 -1
  432. package/build/query-pagination/edit.js.map +1 -1
  433. package/build/query-pagination/index.js +1 -2
  434. package/build/query-pagination/index.js.map +1 -1
  435. package/build/query-pagination-next/edit.js +4 -7
  436. package/build/query-pagination-next/edit.js.map +1 -1
  437. package/build/query-pagination-next/index.js +0 -1
  438. package/build/query-pagination-next/index.js.map +1 -1
  439. package/build/query-pagination-numbers/edit.js +2 -1
  440. package/build/query-pagination-numbers/edit.js.map +1 -1
  441. package/build/query-pagination-numbers/index.js +1 -2
  442. package/build/query-pagination-numbers/index.js.map +1 -1
  443. package/build/query-pagination-previous/edit.js +4 -7
  444. package/build/query-pagination-previous/edit.js.map +1 -1
  445. package/build/query-pagination-previous/index.js +0 -1
  446. package/build/query-pagination-previous/index.js.map +1 -1
  447. package/build/query-title/edit.js +8 -11
  448. package/build/query-title/edit.js.map +1 -1
  449. package/build/query-title/index.js +0 -1
  450. package/build/query-title/index.js.map +1 -1
  451. package/build/quote/deprecated.js +4 -3
  452. package/build/quote/deprecated.js.map +1 -1
  453. package/build/quote/edit.js +7 -7
  454. package/build/quote/edit.js.map +1 -1
  455. package/build/quote/save.js +4 -3
  456. package/build/quote/save.js.map +1 -1
  457. package/build/read-more/edit.js +4 -7
  458. package/build/read-more/edit.js.map +1 -1
  459. package/build/read-more/index.js +0 -1
  460. package/build/read-more/index.js.map +1 -1
  461. package/build/rss/edit.js +4 -2
  462. package/build/rss/edit.js.map +1 -1
  463. package/build/rss/index.js +0 -1
  464. package/build/rss/index.js.map +1 -1
  465. package/build/search/edit.js +4 -3
  466. package/build/search/edit.js.map +1 -1
  467. package/build/search/edit.native.js +6 -8
  468. package/build/search/edit.native.js.map +1 -1
  469. package/build/search/index.js +0 -1
  470. package/build/search/index.js.map +1 -1
  471. package/build/separator/deprecated.js +5 -4
  472. package/build/separator/deprecated.js.map +1 -1
  473. package/build/separator/edit.js +5 -4
  474. package/build/separator/edit.js.map +1 -1
  475. package/build/separator/save.js +5 -4
  476. package/build/separator/save.js.map +1 -1
  477. package/build/shortcode/edit.js +4 -3
  478. package/build/shortcode/edit.js.map +1 -1
  479. package/build/site-logo/edit.js +10 -10
  480. package/build/site-logo/edit.js.map +1 -1
  481. package/build/site-logo/index.js +0 -1
  482. package/build/site-logo/index.js.map +1 -1
  483. package/build/site-tagline/edit.js +5 -5
  484. package/build/site-tagline/edit.js.map +1 -1
  485. package/build/site-tagline/icon.js +1 -4
  486. package/build/site-tagline/icon.js.map +1 -1
  487. package/build/site-tagline/index.js +0 -1
  488. package/build/site-tagline/index.js.map +1 -1
  489. package/build/site-title/edit/index.js +8 -9
  490. package/build/site-title/edit/index.js.map +1 -1
  491. package/build/site-title/index.js +0 -1
  492. package/build/site-title/index.js.map +1 -1
  493. package/build/social-link/edit.js +2 -1
  494. package/build/social-link/edit.js.map +1 -1
  495. package/build/social-link/index.js +0 -1
  496. package/build/social-link/index.js.map +1 -1
  497. package/build/social-links/deprecated.js +5 -4
  498. package/build/social-links/deprecated.js.map +1 -1
  499. package/build/social-links/edit.js +6 -6
  500. package/build/social-links/edit.js.map +1 -1
  501. package/build/social-links/index.js +1 -1
  502. package/build/social-links/save.js +2 -1
  503. package/build/social-links/save.js.map +1 -1
  504. package/build/spacer/deprecated.js +8 -7
  505. package/build/spacer/deprecated.js.map +1 -1
  506. package/build/spacer/edit.js +10 -10
  507. package/build/spacer/edit.js.map +1 -1
  508. package/build/spacer/edit.native.js +4 -5
  509. package/build/spacer/edit.native.js.map +1 -1
  510. package/build/spacer/save.js +21 -11
  511. package/build/spacer/save.js.map +1 -1
  512. package/build/spacer/save.native.js +8 -7
  513. package/build/spacer/save.native.js.map +1 -1
  514. package/build/table/deprecated.js +4 -2
  515. package/build/table/deprecated.js.map +1 -1
  516. package/build/table/edit.js +6 -4
  517. package/build/table/edit.js.map +1 -1
  518. package/build/table/save.js +2 -1
  519. package/build/table/save.js.map +1 -1
  520. package/build/table-of-contents/edit.js +4 -2
  521. package/build/table-of-contents/edit.js.map +1 -1
  522. package/build/table-of-contents/save.js +2 -1
  523. package/build/table-of-contents/save.js.map +1 -1
  524. package/build/tag-cloud/edit.js +2 -1
  525. package/build/tag-cloud/edit.js.map +1 -1
  526. package/build/tag-cloud/index.js +0 -1
  527. package/build/tag-cloud/index.js.map +1 -1
  528. package/build/template-part/edit/index.js +8 -4
  529. package/build/template-part/edit/index.js.map +1 -1
  530. package/build/template-part/edit/inner-blocks.js +3 -2
  531. package/build/template-part/edit/inner-blocks.js.map +1 -1
  532. package/build/template-part/index.js +0 -1
  533. package/build/template-part/index.js.map +1 -1
  534. package/build/term-description/edit.js +2 -1
  535. package/build/term-description/edit.js.map +1 -1
  536. package/build/term-description/index.js +0 -1
  537. package/build/term-description/index.js.map +1 -1
  538. package/build/text-columns/edit.js +4 -3
  539. package/build/text-columns/edit.js.map +1 -1
  540. package/build/text-columns/save.js +4 -3
  541. package/build/text-columns/save.js.map +1 -1
  542. package/build/utils/interactivity/directives.js +4 -7
  543. package/build/utils/interactivity/directives.js.map +1 -1
  544. package/build/utils/interactivity/index.js +1 -3
  545. package/build/utils/interactivity/index.js.map +1 -1
  546. package/build/utils/migrate-font-family.js +2 -2
  547. package/build/utils/migrate-font-family.js.map +1 -1
  548. package/build/verse/deprecated.js +4 -3
  549. package/build/verse/deprecated.js.map +1 -1
  550. package/build/verse/edit.js +4 -6
  551. package/build/verse/edit.js.map +1 -1
  552. package/build/verse/save.js +4 -3
  553. package/build/verse/save.js.map +1 -1
  554. package/build/video/deprecated.js +2 -1
  555. package/build/video/deprecated.js.map +1 -1
  556. package/build/video/edit.js +4 -2
  557. package/build/video/edit.js.map +1 -1
  558. package/build/video/edit.native.js +8 -8
  559. package/build/video/edit.native.js.map +1 -1
  560. package/build/video/save.js +2 -1
  561. package/build/video/save.js.map +1 -1
  562. package/build/video/tracks.js +4 -7
  563. package/build/video/tracks.js.map +1 -1
  564. package/build-module/archives/edit.js +2 -1
  565. package/build-module/archives/edit.js.map +1 -1
  566. package/build-module/archives/index.js +0 -1
  567. package/build-module/archives/index.js.map +1 -1
  568. package/build-module/audio/edit.js +4 -2
  569. package/build-module/audio/edit.js.map +1 -1
  570. package/build-module/audio/save.js +2 -1
  571. package/build-module/audio/save.js.map +1 -1
  572. package/build-module/avatar/edit.js +6 -3
  573. package/build-module/avatar/edit.js.map +1 -1
  574. package/build-module/avatar/index.js +1 -2
  575. package/build-module/avatar/index.js.map +1 -1
  576. package/build-module/block/edit.js +8 -4
  577. package/build-module/block/edit.js.map +1 -1
  578. package/build-module/block/index.js +1 -1
  579. package/build-module/button/deprecated.js +20 -15
  580. package/build-module/button/deprecated.js.map +1 -1
  581. package/build-module/button/edit.js +2 -3
  582. package/build-module/button/edit.js.map +1 -1
  583. package/build-module/button/save.js +4 -3
  584. package/build-module/button/save.js.map +1 -1
  585. package/build-module/buttons/deprecated.js +6 -5
  586. package/build-module/buttons/deprecated.js.map +1 -1
  587. package/build-module/buttons/edit.js +7 -2
  588. package/build-module/buttons/edit.js.map +1 -1
  589. package/build-module/buttons/edit.native.js +6 -6
  590. package/build-module/buttons/edit.native.js.map +1 -1
  591. package/build-module/buttons/index.js +1 -1
  592. package/build-module/buttons/save.js +2 -1
  593. package/build-module/buttons/save.js.map +1 -1
  594. package/build-module/buttons/transforms.js +1 -1
  595. package/build-module/calendar/edit.js +4 -2
  596. package/build-module/calendar/edit.js.map +1 -1
  597. package/build-module/calendar/index.js +0 -1
  598. package/build-module/calendar/index.js.map +1 -1
  599. package/build-module/categories/edit.js +2 -1
  600. package/build-module/categories/edit.js.map +1 -1
  601. package/build-module/categories/index.js +0 -1
  602. package/build-module/categories/index.js.map +1 -1
  603. package/build-module/code/edit.js +2 -1
  604. package/build-module/code/edit.js.map +1 -1
  605. package/build-module/code/save.js +2 -1
  606. package/build-module/code/save.js.map +1 -1
  607. package/build-module/column/edit.js +2 -1
  608. package/build-module/column/edit.js.map +1 -1
  609. package/build-module/column/edit.native.js +2 -1
  610. package/build-module/column/edit.native.js.map +1 -1
  611. package/build-module/column/index.js +1 -1
  612. package/build-module/column/save.js +2 -1
  613. package/build-module/column/save.js.map +1 -1
  614. package/build-module/columns/edit.js +6 -3
  615. package/build-module/columns/edit.js.map +1 -1
  616. package/build-module/columns/edit.native.js +4 -4
  617. package/build-module/columns/edit.native.js.map +1 -1
  618. package/build-module/columns/index.js +1 -1
  619. package/build-module/columns/save.js +2 -1
  620. package/build-module/columns/save.js.map +1 -1
  621. package/build-module/comment-author-avatar/edit.js +6 -5
  622. package/build-module/comment-author-avatar/edit.js.map +1 -1
  623. package/build-module/comment-author-avatar/index.js +0 -1
  624. package/build-module/comment-author-avatar/index.js.map +1 -1
  625. package/build-module/comment-author-name/edit.js +2 -1
  626. package/build-module/comment-author-name/edit.js.map +1 -1
  627. package/build-module/comment-author-name/index.js +0 -1
  628. package/build-module/comment-author-name/index.js.map +1 -1
  629. package/build-module/comment-content/edit.js +4 -2
  630. package/build-module/comment-content/edit.js.map +1 -1
  631. package/build-module/comment-content/index.js +0 -1
  632. package/build-module/comment-content/index.js.map +1 -1
  633. package/build-module/comment-date/edit.js +2 -1
  634. package/build-module/comment-date/edit.js.map +1 -1
  635. package/build-module/comment-date/index.js +0 -1
  636. package/build-module/comment-date/index.js.map +1 -1
  637. package/build-module/comment-edit-link/edit.js +2 -1
  638. package/build-module/comment-edit-link/edit.js.map +1 -1
  639. package/build-module/comment-edit-link/index.js +0 -1
  640. package/build-module/comment-edit-link/index.js.map +1 -1
  641. package/build-module/comment-reply-link/edit.js +2 -1
  642. package/build-module/comment-reply-link/edit.js.map +1 -1
  643. package/build-module/comment-reply-link/index.js +0 -1
  644. package/build-module/comment-reply-link/index.js.map +1 -1
  645. package/build-module/comment-template/edit.js +10 -7
  646. package/build-module/comment-template/edit.js.map +1 -1
  647. package/build-module/comment-template/index.js +0 -1
  648. package/build-module/comment-template/index.js.map +1 -1
  649. package/build-module/comments/deprecated.js +2 -1
  650. package/build-module/comments/deprecated.js.map +1 -1
  651. package/build-module/comments/edit/comments-legacy.js +2 -1
  652. package/build-module/comments/edit/comments-legacy.js.map +1 -1
  653. package/build-module/comments/edit/index.js +4 -2
  654. package/build-module/comments/edit/index.js.map +1 -1
  655. package/build-module/comments/index.js +0 -1
  656. package/build-module/comments/index.js.map +1 -1
  657. package/build-module/comments/save.js +2 -1
  658. package/build-module/comments/save.js.map +1 -1
  659. package/build-module/comments-pagination/edit.js +2 -1
  660. package/build-module/comments-pagination/edit.js.map +1 -1
  661. package/build-module/comments-pagination/index.js +1 -2
  662. package/build-module/comments-pagination/index.js.map +1 -1
  663. package/build-module/comments-pagination-next/edit.js +4 -4
  664. package/build-module/comments-pagination-next/edit.js.map +1 -1
  665. package/build-module/comments-pagination-next/index.js +0 -1
  666. package/build-module/comments-pagination-next/index.js.map +1 -1
  667. package/build-module/comments-pagination-numbers/edit.js +2 -1
  668. package/build-module/comments-pagination-numbers/edit.js.map +1 -1
  669. package/build-module/comments-pagination-numbers/index.js +0 -1
  670. package/build-module/comments-pagination-numbers/index.js.map +1 -1
  671. package/build-module/comments-pagination-previous/edit.js +4 -4
  672. package/build-module/comments-pagination-previous/edit.js.map +1 -1
  673. package/build-module/comments-pagination-previous/index.js +0 -1
  674. package/build-module/comments-pagination-previous/index.js.map +1 -1
  675. package/build-module/comments-title/edit.js +4 -8
  676. package/build-module/comments-title/edit.js.map +1 -1
  677. package/build-module/cover/deprecated.js +46 -36
  678. package/build-module/cover/deprecated.js.map +1 -1
  679. package/build-module/cover/edit/index.js +8 -6
  680. package/build-module/cover/edit/index.js.map +1 -1
  681. package/build-module/cover/edit/inspector-controls.js +4 -4
  682. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  683. package/build-module/cover/edit/resizable-cover-popover.js +5 -5
  684. package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
  685. package/build-module/cover/edit.native.js +12 -10
  686. package/build-module/cover/edit.native.js.map +1 -1
  687. package/build-module/cover/index.js +1 -1
  688. package/build-module/cover/save.js +9 -7
  689. package/build-module/cover/save.js.map +1 -1
  690. package/build-module/cover/transforms.js +1 -1
  691. package/build-module/cover/transforms.js.map +1 -1
  692. package/build-module/details/edit.js +3 -4
  693. package/build-module/details/edit.js.map +1 -1
  694. package/build-module/details/index.js +1 -1
  695. package/build-module/details/init.js +6 -0
  696. package/build-module/details/init.js.map +1 -0
  697. package/build-module/details/save.js +2 -3
  698. package/build-module/details/save.js.map +1 -1
  699. package/build-module/embed/deprecated.js +4 -3
  700. package/build-module/embed/deprecated.js.map +1 -1
  701. package/build-module/embed/edit.js +6 -3
  702. package/build-module/embed/edit.js.map +1 -1
  703. package/build-module/embed/edit.native.js +6 -3
  704. package/build-module/embed/edit.native.js.map +1 -1
  705. package/build-module/embed/save.js +4 -3
  706. package/build-module/embed/save.js.map +1 -1
  707. package/build-module/embed/wp-embed-preview.js +4 -4
  708. package/build-module/embed/wp-embed-preview.js.map +1 -1
  709. package/build-module/embed/wp-embed-preview.native.js +4 -4
  710. package/build-module/embed/wp-embed-preview.native.js.map +1 -1
  711. package/build-module/file/deprecated.js +6 -3
  712. package/build-module/file/deprecated.js.map +1 -1
  713. package/build-module/file/edit.js +4 -2
  714. package/build-module/file/edit.js.map +1 -1
  715. package/build-module/file/index.js +1 -1
  716. package/build-module/file/save.js +2 -1
  717. package/build-module/file/save.js.map +1 -1
  718. package/build-module/file/view.js +6 -0
  719. package/build-module/file/view.js.map +1 -0
  720. package/build-module/footnotes/edit.js +48 -0
  721. package/build-module/footnotes/edit.js.map +1 -0
  722. package/build-module/footnotes/format.js +126 -0
  723. package/build-module/footnotes/format.js.map +1 -0
  724. package/build-module/footnotes/index.js +48 -0
  725. package/build-module/footnotes/index.js.map +1 -0
  726. package/build-module/freeform/edit.js +6 -3
  727. package/build-module/freeform/edit.js.map +1 -1
  728. package/build-module/freeform/edit.native.js +2 -3
  729. package/build-module/freeform/edit.native.js.map +1 -1
  730. package/build-module/freeform/modal.js +2 -1
  731. package/build-module/freeform/modal.js.map +1 -1
  732. package/build-module/gallery/deprecated.js +6 -4
  733. package/build-module/gallery/deprecated.js.map +1 -1
  734. package/build-module/gallery/edit-wrapper.js +4 -2
  735. package/build-module/gallery/edit-wrapper.js.map +1 -1
  736. package/build-module/gallery/edit.js +16 -12
  737. package/build-module/gallery/edit.js.map +1 -1
  738. package/build-module/gallery/gallery.js +2 -3
  739. package/build-module/gallery/gallery.js.map +1 -1
  740. package/build-module/gallery/gallery.native.js +3 -2
  741. package/build-module/gallery/gallery.native.js.map +1 -1
  742. package/build-module/gallery/index.js +1 -1
  743. package/build-module/gallery/save.js +2 -1
  744. package/build-module/gallery/save.js.map +1 -1
  745. package/build-module/gallery/shared-icon.native.js +4 -4
  746. package/build-module/gallery/shared-icon.native.js.map +1 -1
  747. package/build-module/gallery/v1/edit.js +8 -8
  748. package/build-module/gallery/v1/edit.js.map +1 -1
  749. package/build-module/gallery/v1/gallery.js +7 -6
  750. package/build-module/gallery/v1/gallery.js.map +1 -1
  751. package/build-module/gallery/v1/save.js +4 -3
  752. package/build-module/gallery/v1/save.js.map +1 -1
  753. package/build-module/group/deprecated.js +5 -3
  754. package/build-module/group/deprecated.js.map +1 -1
  755. package/build-module/group/edit.js +4 -1
  756. package/build-module/group/edit.js.map +1 -1
  757. package/build-module/group/index.js +1 -1
  758. package/build-module/group/placeholder.js +2 -1
  759. package/build-module/group/placeholder.js.map +1 -1
  760. package/build-module/group/save.js +2 -1
  761. package/build-module/group/save.js.map +1 -1
  762. package/build-module/heading/deprecated.js +8 -6
  763. package/build-module/heading/deprecated.js.map +1 -1
  764. package/build-module/heading/edit.js +9 -9
  765. package/build-module/heading/edit.js.map +1 -1
  766. package/build-module/heading/save.js +4 -3
  767. package/build-module/heading/save.js.map +1 -1
  768. package/build-module/home-link/edit.js +2 -1
  769. package/build-module/home-link/edit.js.map +1 -1
  770. package/build-module/home-link/index.js +0 -1
  771. package/build-module/home-link/index.js.map +1 -1
  772. package/build-module/html/edit.js +4 -3
  773. package/build-module/html/edit.js.map +1 -1
  774. package/build-module/image/deprecated.js +14 -11
  775. package/build-module/image/deprecated.js.map +1 -1
  776. package/build-module/image/edit.js +3 -6
  777. package/build-module/image/edit.js.map +1 -1
  778. package/build-module/image/edit.native.js +8 -7
  779. package/build-module/image/edit.native.js.map +1 -1
  780. package/build-module/image/image.js +109 -52
  781. package/build-module/image/image.js.map +1 -1
  782. package/build-module/image/index.js +6 -0
  783. package/build-module/image/index.js.map +1 -1
  784. package/build-module/image/interactivity.js +119 -6
  785. package/build-module/image/interactivity.js.map +1 -1
  786. package/build-module/image/save.js +10 -4
  787. package/build-module/image/save.js.map +1 -1
  788. package/build-module/image/utils.js +16 -0
  789. package/build-module/image/utils.js.map +1 -1
  790. package/build-module/index.js +2 -1
  791. package/build-module/index.js.map +1 -1
  792. package/build-module/latest-comments/edit.js +2 -1
  793. package/build-module/latest-comments/edit.js.map +1 -1
  794. package/build-module/latest-comments/index.js +0 -1
  795. package/build-module/latest-comments/index.js.map +1 -1
  796. package/build-module/latest-posts/deprecated.js +0 -1
  797. package/build-module/latest-posts/deprecated.js.map +1 -1
  798. package/build-module/latest-posts/edit.js +15 -7
  799. package/build-module/latest-posts/edit.js.map +1 -1
  800. package/build-module/latest-posts/edit.native.js +4 -4
  801. package/build-module/latest-posts/edit.native.js.map +1 -1
  802. package/build-module/latest-posts/index.js +0 -1
  803. package/build-module/latest-posts/index.js.map +1 -1
  804. package/build-module/list/deprecated.js +12 -10
  805. package/build-module/list/deprecated.js.map +1 -1
  806. package/build-module/list/edit.js +4 -4
  807. package/build-module/list/edit.js.map +1 -1
  808. package/build-module/list/ordered-list-settings.js +26 -2
  809. package/build-module/list/ordered-list-settings.js.map +1 -1
  810. package/build-module/list/save.js +6 -5
  811. package/build-module/list/save.js.map +1 -1
  812. package/build-module/list/tag-name.js +4 -4
  813. package/build-module/list/tag-name.js.map +1 -1
  814. package/build-module/list/tag-name.native.js +4 -4
  815. package/build-module/list/tag-name.native.js.map +1 -1
  816. package/build-module/list-item/edit.js +2 -1
  817. package/build-module/list-item/edit.js.map +1 -1
  818. package/build-module/list-item/edit.native.js +2 -1
  819. package/build-module/list-item/edit.native.js.map +1 -1
  820. package/build-module/list-item/save.js +2 -1
  821. package/build-module/list-item/save.js.map +1 -1
  822. package/build-module/{private-apis.js → lock-unlock.js} +1 -1
  823. package/build-module/lock-unlock.js.map +1 -0
  824. package/build-module/loginout/edit.js +4 -3
  825. package/build-module/loginout/edit.js.map +1 -1
  826. package/build-module/loginout/index.js +0 -1
  827. package/build-module/loginout/index.js.map +1 -1
  828. package/build-module/media-text/deprecated.js +43 -33
  829. package/build-module/media-text/deprecated.js.map +1 -1
  830. package/build-module/media-text/edit.js +6 -3
  831. package/build-module/media-text/edit.js.map +1 -1
  832. package/build-module/media-text/media-container.js +8 -6
  833. package/build-module/media-text/media-container.js.map +1 -1
  834. package/build-module/media-text/media-container.native.js +8 -7
  835. package/build-module/media-text/media-container.native.js.map +1 -1
  836. package/build-module/media-text/save.js +17 -13
  837. package/build-module/media-text/save.js.map +1 -1
  838. package/build-module/missing/edit.js +4 -3
  839. package/build-module/missing/edit.js.map +1 -1
  840. package/build-module/more/edit.js +2 -1
  841. package/build-module/more/edit.js.map +1 -1
  842. package/build-module/navigation/constants.js +6 -0
  843. package/build-module/navigation/constants.js.map +1 -1
  844. package/build-module/navigation/deprecated.js +1 -1
  845. package/build-module/navigation/deprecated.js.map +1 -1
  846. package/build-module/navigation/edit/index.js +34 -21
  847. package/build-module/navigation/edit/index.js.map +1 -1
  848. package/build-module/navigation/edit/inner-blocks.js +2 -1
  849. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  850. package/build-module/navigation/edit/leaf-more-menu.js +5 -6
  851. package/build-module/navigation/edit/leaf-more-menu.js.map +1 -1
  852. package/build-module/navigation/edit/menu-inspector-controls.js +12 -16
  853. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  854. package/build-module/navigation/edit/navigation-menu-selector.js +15 -7
  855. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  856. package/build-module/navigation/edit/responsive-wrapper.js +2 -1
  857. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  858. package/build-module/navigation/edit/unsaved-inner-blocks.js +4 -6
  859. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  860. package/build-module/navigation/index.js +2 -3
  861. package/build-module/navigation/index.js.map +1 -1
  862. package/build-module/navigation/use-navigation-menu.js +8 -7
  863. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  864. package/build-module/navigation/view-modal.js +58 -0
  865. package/build-module/navigation/view-modal.js.map +1 -0
  866. package/build-module/navigation/view.js +59 -0
  867. package/build-module/navigation/view.js.map +1 -0
  868. package/build-module/navigation-link/edit.js +4 -2
  869. package/build-module/navigation-link/edit.js.map +1 -1
  870. package/build-module/navigation-submenu/edit.js +4 -2
  871. package/build-module/navigation-submenu/edit.js.map +1 -1
  872. package/build-module/nextpage/edit.js +2 -1
  873. package/build-module/nextpage/edit.js.map +1 -1
  874. package/build-module/page-list/edit.js +12 -6
  875. package/build-module/page-list/edit.js.map +1 -1
  876. package/build-module/page-list/index.js +0 -1
  877. package/build-module/page-list/index.js.map +1 -1
  878. package/build-module/page-list-item/edit.js +2 -1
  879. package/build-module/page-list-item/edit.js.map +1 -1
  880. package/build-module/paragraph/deprecated.js +5 -4
  881. package/build-module/paragraph/deprecated.js.map +1 -1
  882. package/build-module/paragraph/edit.js +4 -5
  883. package/build-module/paragraph/edit.js.map +1 -1
  884. package/build-module/paragraph/save.js +5 -4
  885. package/build-module/paragraph/save.js.map +1 -1
  886. package/build-module/pattern/edit.js +8 -33
  887. package/build-module/pattern/edit.js.map +1 -1
  888. package/build-module/pattern/index.js +4 -11
  889. package/build-module/pattern/index.js.map +1 -1
  890. package/build-module/post-author/edit.js +4 -2
  891. package/build-module/post-author/edit.js.map +1 -1
  892. package/build-module/post-author/index.js +0 -1
  893. package/build-module/post-author/index.js.map +1 -1
  894. package/build-module/post-author-biography/edit.js +2 -3
  895. package/build-module/post-author-biography/edit.js.map +1 -1
  896. package/build-module/post-author-biography/index.js +0 -1
  897. package/build-module/post-author-biography/index.js.map +1 -1
  898. package/build-module/post-author-name/edit.js +2 -1
  899. package/build-module/post-author-name/edit.js.map +1 -1
  900. package/build-module/post-author-name/index.js +0 -1
  901. package/build-module/post-author-name/index.js.map +1 -1
  902. package/build-module/post-comment/edit.js +4 -2
  903. package/build-module/post-comment/edit.js.map +1 -1
  904. package/build-module/post-comment/save.js +2 -1
  905. package/build-module/post-comment/save.js.map +1 -1
  906. package/build-module/post-comments-count/edit.js +2 -3
  907. package/build-module/post-comments-count/edit.js.map +1 -1
  908. package/build-module/post-comments-count/index.js +0 -1
  909. package/build-module/post-comments-count/index.js.map +1 -1
  910. package/build-module/post-comments-form/edit.js +2 -1
  911. package/build-module/post-comments-form/edit.js.map +1 -1
  912. package/build-module/post-comments-form/index.js +0 -1
  913. package/build-module/post-comments-form/index.js.map +1 -1
  914. package/build-module/post-comments-link/edit.js +2 -1
  915. package/build-module/post-comments-link/edit.js.map +1 -1
  916. package/build-module/post-comments-link/index.js +0 -1
  917. package/build-module/post-comments-link/index.js.map +1 -1
  918. package/build-module/post-content/edit.js +11 -7
  919. package/build-module/post-content/edit.js.map +1 -1
  920. package/build-module/post-content/index.js +1 -2
  921. package/build-module/post-content/index.js.map +1 -1
  922. package/build-module/post-date/edit.js +2 -1
  923. package/build-module/post-date/edit.js.map +1 -1
  924. package/build-module/post-date/index.js +0 -1
  925. package/build-module/post-date/index.js.map +1 -1
  926. package/build-module/post-excerpt/edit.js +6 -3
  927. package/build-module/post-excerpt/edit.js.map +1 -1
  928. package/build-module/post-excerpt/index.js +0 -1
  929. package/build-module/post-excerpt/index.js.map +1 -1
  930. package/build-module/post-featured-image/edit.js +4 -2
  931. package/build-module/post-featured-image/edit.js.map +1 -1
  932. package/build-module/post-featured-image/index.js +0 -1
  933. package/build-module/post-featured-image/index.js.map +1 -1
  934. package/build-module/post-featured-image/overlay.js +4 -4
  935. package/build-module/post-featured-image/overlay.js.map +1 -1
  936. package/build-module/post-navigation-link/edit.js +2 -1
  937. package/build-module/post-navigation-link/edit.js.map +1 -1
  938. package/build-module/post-navigation-link/index.js +0 -1
  939. package/build-module/post-navigation-link/index.js.map +1 -1
  940. package/build-module/post-template/edit.js +14 -8
  941. package/build-module/post-template/edit.js.map +1 -1
  942. package/build-module/post-template/index.js +1 -2
  943. package/build-module/post-template/index.js.map +1 -1
  944. package/build-module/post-terms/edit.js +4 -8
  945. package/build-module/post-terms/edit.js.map +1 -1
  946. package/build-module/post-terms/hooks.js +9 -5
  947. package/build-module/post-terms/hooks.js.map +1 -1
  948. package/build-module/post-terms/index.js +0 -1
  949. package/build-module/post-terms/index.js.map +1 -1
  950. package/build-module/post-time-to-read/edit.js +2 -1
  951. package/build-module/post-time-to-read/edit.js.map +1 -1
  952. package/build-module/post-time-to-read/init.js +6 -0
  953. package/build-module/post-time-to-read/init.js.map +1 -0
  954. package/build-module/post-title/edit.js +15 -13
  955. package/build-module/post-title/edit.js.map +1 -1
  956. package/build-module/post-title/index.js +0 -1
  957. package/build-module/post-title/index.js.map +1 -1
  958. package/build-module/preformatted/edit.js +4 -5
  959. package/build-module/preformatted/edit.js.map +1 -1
  960. package/build-module/preformatted/edit.native.js +2 -1
  961. package/build-module/preformatted/edit.native.js.map +1 -1
  962. package/build-module/preformatted/save.js +2 -1
  963. package/build-module/preformatted/save.js.map +1 -1
  964. package/build-module/pullquote/deprecated.js +10 -8
  965. package/build-module/pullquote/deprecated.js.map +1 -1
  966. package/build-module/pullquote/edit.js +2 -1
  967. package/build-module/pullquote/edit.js.map +1 -1
  968. package/build-module/pullquote/edit.native.js +2 -1
  969. package/build-module/pullquote/edit.native.js.map +1 -1
  970. package/build-module/pullquote/save.js +5 -4
  971. package/build-module/pullquote/save.js.map +1 -1
  972. package/build-module/query/deprecated.js +15 -9
  973. package/build-module/query/deprecated.js.map +1 -1
  974. package/build-module/query/edit/index.js +2 -3
  975. package/build-module/query/edit/index.js.map +1 -1
  976. package/build-module/query/edit/inspector-controls/index.js +3 -2
  977. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  978. package/build-module/query/edit/query-content.js +19 -6
  979. package/build-module/query/edit/query-content.js.map +1 -1
  980. package/build-module/query/edit/query-placeholder.js +4 -2
  981. package/build-module/query/edit/query-placeholder.js.map +1 -1
  982. package/build-module/query/index.js +1 -2
  983. package/build-module/query/index.js.map +1 -1
  984. package/build-module/query/save.js +2 -1
  985. package/build-module/query/save.js.map +1 -1
  986. package/build-module/query/utils.js +1 -2
  987. package/build-module/query/utils.js.map +1 -1
  988. package/build-module/query-no-results/edit.js +2 -1
  989. package/build-module/query-no-results/edit.js.map +1 -1
  990. package/build-module/query-no-results/index.js +0 -1
  991. package/build-module/query-no-results/index.js.map +1 -1
  992. package/build-module/query-pagination/deprecated.js +2 -1
  993. package/build-module/query-pagination/deprecated.js.map +1 -1
  994. package/build-module/query-pagination/edit.js +2 -1
  995. package/build-module/query-pagination/edit.js.map +1 -1
  996. package/build-module/query-pagination/index.js +1 -2
  997. package/build-module/query-pagination/index.js.map +1 -1
  998. package/build-module/query-pagination-next/edit.js +4 -4
  999. package/build-module/query-pagination-next/edit.js.map +1 -1
  1000. package/build-module/query-pagination-next/index.js +0 -1
  1001. package/build-module/query-pagination-next/index.js.map +1 -1
  1002. package/build-module/query-pagination-numbers/edit.js +2 -1
  1003. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  1004. package/build-module/query-pagination-numbers/index.js +1 -2
  1005. package/build-module/query-pagination-numbers/index.js.map +1 -1
  1006. package/build-module/query-pagination-previous/edit.js +4 -4
  1007. package/build-module/query-pagination-previous/edit.js.map +1 -1
  1008. package/build-module/query-pagination-previous/index.js +0 -1
  1009. package/build-module/query-pagination-previous/index.js.map +1 -1
  1010. package/build-module/query-title/edit.js +8 -10
  1011. package/build-module/query-title/edit.js.map +1 -1
  1012. package/build-module/query-title/index.js +0 -1
  1013. package/build-module/query-title/index.js.map +1 -1
  1014. package/build-module/quote/deprecated.js +4 -3
  1015. package/build-module/quote/deprecated.js.map +1 -1
  1016. package/build-module/quote/edit.js +7 -6
  1017. package/build-module/quote/edit.js.map +1 -1
  1018. package/build-module/quote/save.js +4 -3
  1019. package/build-module/quote/save.js.map +1 -1
  1020. package/build-module/read-more/edit.js +4 -4
  1021. package/build-module/read-more/edit.js.map +1 -1
  1022. package/build-module/read-more/index.js +0 -1
  1023. package/build-module/read-more/index.js.map +1 -1
  1024. package/build-module/rss/edit.js +4 -2
  1025. package/build-module/rss/edit.js.map +1 -1
  1026. package/build-module/rss/index.js +0 -1
  1027. package/build-module/rss/index.js.map +1 -1
  1028. package/build-module/search/edit.js +4 -3
  1029. package/build-module/search/edit.js.map +1 -1
  1030. package/build-module/search/edit.native.js +6 -7
  1031. package/build-module/search/edit.native.js.map +1 -1
  1032. package/build-module/search/index.js +0 -1
  1033. package/build-module/search/index.js.map +1 -1
  1034. package/build-module/separator/deprecated.js +5 -4
  1035. package/build-module/separator/deprecated.js.map +1 -1
  1036. package/build-module/separator/edit.js +5 -4
  1037. package/build-module/separator/edit.js.map +1 -1
  1038. package/build-module/separator/save.js +5 -4
  1039. package/build-module/separator/save.js.map +1 -1
  1040. package/build-module/shortcode/edit.js +4 -3
  1041. package/build-module/shortcode/edit.js.map +1 -1
  1042. package/build-module/site-logo/edit.js +10 -9
  1043. package/build-module/site-logo/edit.js.map +1 -1
  1044. package/build-module/site-logo/index.js +0 -1
  1045. package/build-module/site-logo/index.js.map +1 -1
  1046. package/build-module/site-tagline/edit.js +5 -4
  1047. package/build-module/site-tagline/edit.js.map +1 -1
  1048. package/build-module/site-tagline/icon.js +1 -4
  1049. package/build-module/site-tagline/icon.js.map +1 -1
  1050. package/build-module/site-tagline/index.js +0 -1
  1051. package/build-module/site-tagline/index.js.map +1 -1
  1052. package/build-module/site-title/edit/index.js +9 -10
  1053. package/build-module/site-title/edit/index.js.map +1 -1
  1054. package/build-module/site-title/index.js +0 -1
  1055. package/build-module/site-title/index.js.map +1 -1
  1056. package/build-module/social-link/edit.js +2 -1
  1057. package/build-module/social-link/edit.js.map +1 -1
  1058. package/build-module/social-link/index.js +0 -1
  1059. package/build-module/social-link/index.js.map +1 -1
  1060. package/build-module/social-links/deprecated.js +5 -4
  1061. package/build-module/social-links/deprecated.js.map +1 -1
  1062. package/build-module/social-links/edit.js +6 -5
  1063. package/build-module/social-links/edit.js.map +1 -1
  1064. package/build-module/social-links/index.js +1 -1
  1065. package/build-module/social-links/save.js +2 -1
  1066. package/build-module/social-links/save.js.map +1 -1
  1067. package/build-module/spacer/deprecated.js +8 -7
  1068. package/build-module/spacer/deprecated.js.map +1 -1
  1069. package/build-module/spacer/edit.js +10 -9
  1070. package/build-module/spacer/edit.js.map +1 -1
  1071. package/build-module/spacer/edit.native.js +4 -4
  1072. package/build-module/spacer/edit.native.js.map +1 -1
  1073. package/build-module/spacer/save.js +21 -11
  1074. package/build-module/spacer/save.js.map +1 -1
  1075. package/build-module/spacer/save.native.js +8 -7
  1076. package/build-module/spacer/save.native.js.map +1 -1
  1077. package/build-module/table/deprecated.js +4 -2
  1078. package/build-module/table/deprecated.js.map +1 -1
  1079. package/build-module/table/edit.js +6 -4
  1080. package/build-module/table/edit.js.map +1 -1
  1081. package/build-module/table/save.js +2 -1
  1082. package/build-module/table/save.js.map +1 -1
  1083. package/build-module/table-of-contents/edit.js +4 -2
  1084. package/build-module/table-of-contents/edit.js.map +1 -1
  1085. package/build-module/table-of-contents/save.js +2 -1
  1086. package/build-module/table-of-contents/save.js.map +1 -1
  1087. package/build-module/tag-cloud/edit.js +2 -1
  1088. package/build-module/tag-cloud/edit.js.map +1 -1
  1089. package/build-module/tag-cloud/index.js +0 -1
  1090. package/build-module/tag-cloud/index.js.map +1 -1
  1091. package/build-module/template-part/edit/index.js +8 -4
  1092. package/build-module/template-part/edit/index.js.map +1 -1
  1093. package/build-module/template-part/edit/inner-blocks.js +3 -2
  1094. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  1095. package/build-module/template-part/index.js +0 -1
  1096. package/build-module/template-part/index.js.map +1 -1
  1097. package/build-module/term-description/edit.js +2 -1
  1098. package/build-module/term-description/edit.js.map +1 -1
  1099. package/build-module/term-description/index.js +0 -1
  1100. package/build-module/term-description/index.js.map +1 -1
  1101. package/build-module/text-columns/edit.js +4 -3
  1102. package/build-module/text-columns/edit.js.map +1 -1
  1103. package/build-module/text-columns/save.js +4 -3
  1104. package/build-module/text-columns/save.js.map +1 -1
  1105. package/build-module/utils/interactivity/directives.js +4 -4
  1106. package/build-module/utils/interactivity/directives.js.map +1 -1
  1107. package/build-module/utils/interactivity/index.js +1 -3
  1108. package/build-module/utils/interactivity/index.js.map +1 -1
  1109. package/build-module/utils/migrate-font-family.js +1 -1
  1110. package/build-module/utils/migrate-font-family.js.map +1 -1
  1111. package/build-module/verse/deprecated.js +4 -3
  1112. package/build-module/verse/deprecated.js.map +1 -1
  1113. package/build-module/verse/edit.js +4 -5
  1114. package/build-module/verse/edit.js.map +1 -1
  1115. package/build-module/verse/save.js +4 -3
  1116. package/build-module/verse/save.js.map +1 -1
  1117. package/build-module/video/deprecated.js +2 -1
  1118. package/build-module/video/deprecated.js.map +1 -1
  1119. package/build-module/video/edit.js +4 -2
  1120. package/build-module/video/edit.js.map +1 -1
  1121. package/build-module/video/edit.native.js +8 -7
  1122. package/build-module/video/edit.native.js.map +1 -1
  1123. package/build-module/video/save.js +2 -1
  1124. package/build-module/video/save.js.map +1 -1
  1125. package/build-module/video/tracks.js +4 -4
  1126. package/build-module/video/tracks.js.map +1 -1
  1127. package/build-style/avatar/style-rtl.css +1 -0
  1128. package/build-style/avatar/style.css +1 -0
  1129. package/build-style/editor-rtl.css +0 -17
  1130. package/build-style/editor.css +0 -17
  1131. package/build-style/footnotes/style-rtl.css +106 -0
  1132. package/build-style/footnotes/style.css +106 -0
  1133. package/build-style/image/style-rtl.css +71 -11
  1134. package/build-style/image/style.css +71 -11
  1135. package/build-style/navigation/editor-rtl.css +0 -17
  1136. package/build-style/navigation/editor.css +0 -17
  1137. package/build-style/style-rtl.css +91 -12
  1138. package/build-style/style.css +91 -12
  1139. package/package.json +33 -32
  1140. package/src/archives/block.json +0 -1
  1141. package/src/avatar/block.json +1 -2
  1142. package/src/avatar/style.scss +1 -0
  1143. package/src/block/block.json +1 -1
  1144. package/src/block/edit.js +1 -0
  1145. package/src/block/test/__snapshots__/transforms.native.js.snap +2 -2
  1146. package/src/block/test/edit.native.js +5 -7
  1147. package/src/block/test/transforms.native.js +1 -1
  1148. package/src/buttons/block.json +1 -1
  1149. package/src/buttons/edit.js +2 -2
  1150. package/src/buttons/edit.native.js +7 -6
  1151. package/src/buttons/test/__snapshots__/edit.native.js.snap +6 -0
  1152. package/src/buttons/test/edit.native.js +30 -2
  1153. package/src/calendar/block.json +0 -1
  1154. package/src/categories/block.json +0 -1
  1155. package/src/column/block.json +1 -1
  1156. package/src/columns/block.json +1 -1
  1157. package/src/columns/test/edit.native.js +36 -32
  1158. package/src/comment-author-avatar/block.json +0 -1
  1159. package/src/comment-author-name/block.json +0 -1
  1160. package/src/comment-content/block.json +0 -1
  1161. package/src/comment-date/block.json +0 -1
  1162. package/src/comment-edit-link/block.json +0 -1
  1163. package/src/comment-reply-link/block.json +0 -1
  1164. package/src/comment-template/block.json +0 -1
  1165. package/src/comments/block.json +0 -1
  1166. package/src/comments-pagination/block.json +1 -2
  1167. package/src/comments-pagination-next/block.json +0 -1
  1168. package/src/comments-pagination-numbers/block.json +0 -1
  1169. package/src/comments-pagination-previous/block.json +0 -1
  1170. package/src/comments-title/edit.js +2 -6
  1171. package/src/cover/block.json +1 -1
  1172. package/src/cover/edit/resizable-cover-popover.js +1 -1
  1173. package/src/cover/test/edit.native.js +45 -31
  1174. package/src/cover/transforms.js +1 -1
  1175. package/src/details/block.json +1 -1
  1176. package/src/details/edit.js +12 -9
  1177. package/src/details/init.js +6 -0
  1178. package/src/embed/test/index.native.js +38 -44
  1179. package/src/file/block.json +1 -1
  1180. package/src/file/index.php +18 -1
  1181. package/src/file/view.js +9 -0
  1182. package/src/footnotes/block.json +18 -0
  1183. package/src/footnotes/edit.js +52 -0
  1184. package/src/footnotes/format.js +112 -0
  1185. package/src/footnotes/index.js +29 -0
  1186. package/src/footnotes/index.php +78 -0
  1187. package/src/footnotes/style.scss +18 -0
  1188. package/src/gallery/block.json +1 -1
  1189. package/src/gallery/edit.js +4 -1
  1190. package/src/gallery/gallery.native.js +1 -1
  1191. package/src/gallery/test/__snapshots__/index.native.js.snap +6 -0
  1192. package/src/gallery/test/index.native.js +23 -1
  1193. package/src/group/block.json +1 -1
  1194. package/src/group/deprecated.js +1 -1
  1195. package/src/group/test/edit.native.js +2 -4
  1196. package/src/heading/edit.js +2 -2
  1197. package/src/home-link/block.json +0 -1
  1198. package/src/image/block.json +6 -0
  1199. package/src/image/edit.js +1 -5
  1200. package/src/image/image.js +152 -72
  1201. package/src/image/interactivity.js +155 -13
  1202. package/src/image/save.js +7 -1
  1203. package/src/image/style.scss +79 -9
  1204. package/src/image/test/edit.native.js +3 -13
  1205. package/src/image/utils.js +16 -0
  1206. package/src/index.js +2 -0
  1207. package/src/latest-comments/block.json +0 -1
  1208. package/src/latest-posts/block.json +0 -1
  1209. package/src/latest-posts/edit.js +17 -9
  1210. package/src/latest-posts/index.php +8 -0
  1211. package/src/list/ordered-list-settings.js +20 -2
  1212. package/src/list/test/edit.native.js +5 -0
  1213. package/src/loginout/block.json +0 -1
  1214. package/src/media-text/edit.js +1 -1
  1215. package/src/navigation/block.json +2 -3
  1216. package/src/navigation/constants.js +11 -0
  1217. package/src/navigation/deprecated.js +1 -1
  1218. package/src/navigation/edit/index.js +15 -6
  1219. package/src/navigation/edit/leaf-more-menu.js +1 -2
  1220. package/src/navigation/edit/menu-inspector-controls.js +24 -26
  1221. package/src/navigation/edit/navigation-menu-selector.js +17 -7
  1222. package/src/navigation/edit/unsaved-inner-blocks.js +6 -6
  1223. package/src/navigation/editor.scss +0 -24
  1224. package/src/navigation/index.php +85 -70
  1225. package/src/navigation/test/use-navigation-menu.js +15 -3
  1226. package/src/navigation/use-navigation-menu.js +11 -8
  1227. package/src/navigation/view-modal.js +78 -0
  1228. package/src/navigation/view.js +74 -0
  1229. package/src/page-list/block.json +0 -1
  1230. package/src/paragraph/test/__snapshots__/edit.native.js.snap +39 -0
  1231. package/src/paragraph/test/edit.native.js +3 -3
  1232. package/src/pattern/block.json +1 -5
  1233. package/src/pattern/edit.js +14 -40
  1234. package/src/pattern/index.js +4 -5
  1235. package/src/pattern/index.php +1 -13
  1236. package/src/post-author/block.json +0 -1
  1237. package/src/post-author/edit.js +3 -3
  1238. package/src/post-author-biography/block.json +0 -1
  1239. package/src/post-author-name/block.json +0 -1
  1240. package/src/post-comments-count/block.json +0 -1
  1241. package/src/post-comments-form/block.json +0 -1
  1242. package/src/post-comments-link/block.json +0 -1
  1243. package/src/post-content/block.json +1 -2
  1244. package/src/post-date/block.json +0 -1
  1245. package/src/post-excerpt/block.json +0 -1
  1246. package/src/post-featured-image/block.json +0 -1
  1247. package/src/post-navigation-link/block.json +0 -1
  1248. package/src/post-template/block.json +1 -2
  1249. package/src/post-template/edit.js +4 -1
  1250. package/src/post-template/index.php +5 -0
  1251. package/src/post-terms/block.json +0 -1
  1252. package/src/post-terms/edit.js +8 -7
  1253. package/src/post-terms/hooks.js +3 -3
  1254. package/src/post-time-to-read/init.js +6 -0
  1255. package/src/post-title/block.json +0 -1
  1256. package/src/post-title/edit.js +4 -4
  1257. package/src/post-title/index.php +1 -1
  1258. package/src/preformatted/test/edit.native.js +1 -13
  1259. package/src/query/block.json +1 -2
  1260. package/src/query/deprecated.js +7 -5
  1261. package/src/query/edit/inspector-controls/index.js +1 -1
  1262. package/src/query/edit/query-content.js +13 -4
  1263. package/src/query-no-results/block.json +0 -1
  1264. package/src/query-pagination/block.json +1 -2
  1265. package/src/query-pagination-next/block.json +0 -1
  1266. package/src/query-pagination-numbers/block.json +1 -2
  1267. package/src/query-pagination-previous/block.json +0 -1
  1268. package/src/query-title/block.json +0 -1
  1269. package/src/query-title/edit.js +2 -6
  1270. package/src/read-more/block.json +0 -1
  1271. package/src/rss/block.json +0 -1
  1272. package/src/search/block.json +0 -1
  1273. package/src/search/edit.js +3 -3
  1274. package/src/site-logo/block.json +0 -1
  1275. package/src/site-tagline/block.json +0 -1
  1276. package/src/site-tagline/icon.js +1 -2
  1277. package/src/site-title/block.json +0 -1
  1278. package/src/site-title/edit/index.js +5 -6
  1279. package/src/social-link/block.json +0 -1
  1280. package/src/social-links/block.json +1 -1
  1281. package/src/spacer/save.js +7 -2
  1282. package/src/spacer/test/index.native.js +33 -29
  1283. package/src/style.scss +1 -0
  1284. package/src/tag-cloud/block.json +0 -1
  1285. package/src/template-part/block.json +0 -1
  1286. package/src/template-part/edit/inner-blocks.js +1 -1
  1287. package/src/template-part/index.php +18 -11
  1288. package/src/term-description/block.json +0 -1
  1289. package/src/utils/interactivity/index.js +0 -2
  1290. package/src/utils/migrate-font-family.js +1 -1
  1291. package/build/heading/heading-level-dropdown.js +0 -81
  1292. package/build/heading/heading-level-dropdown.js.map +0 -1
  1293. package/build/heading/heading-level-dropdown.native.js +0 -72
  1294. package/build/heading/heading-level-dropdown.native.js.map +0 -1
  1295. package/build/pattern/v1/edit.js +0 -56
  1296. package/build/pattern/v1/edit.js.map +0 -1
  1297. package/build/private-apis.js.map +0 -1
  1298. package/build/site-title/edit/level-icon.js +0 -40
  1299. package/build/site-title/edit/level-icon.js.map +0 -1
  1300. package/build/site-title/edit/level-toolbar.js +0 -51
  1301. package/build/site-title/edit/level-toolbar.js.map +0 -1
  1302. package/build-module/heading/heading-level-dropdown.js +0 -69
  1303. package/build-module/heading/heading-level-dropdown.js.map +0 -1
  1304. package/build-module/heading/heading-level-dropdown.native.js +0 -60
  1305. package/build-module/heading/heading-level-dropdown.native.js.map +0 -1
  1306. package/build-module/pattern/v1/edit.js +0 -47
  1307. package/build-module/pattern/v1/edit.js.map +0 -1
  1308. package/build-module/private-apis.js.map +0 -1
  1309. package/build-module/site-title/edit/level-icon.js +0 -31
  1310. package/build-module/site-title/edit/level-icon.js.map +0 -1
  1311. package/build-module/site-title/edit/level-toolbar.js +0 -39
  1312. package/build-module/site-title/edit/level-toolbar.js.map +0 -1
  1313. package/src/heading/heading-level-dropdown.js +0 -69
  1314. package/src/heading/heading-level-dropdown.native.js +0 -63
  1315. package/src/pattern/v1/edit.js +0 -57
  1316. package/src/site-title/edit/level-icon.js +0 -28
  1317. package/src/site-title/edit/level-toolbar.js +0 -34
  1318. /package/src/{private-apis.js → lock-unlock.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/button/deprecated.js"],"names":["migrateBorderRadius","attributes","borderRadius","newAttributes","oldBorderRadius","style","border","radius","find","possibleBorderRadius","migrateAlign","align","otherAttributes","className","migrateCustomColorsAndGradients","customTextColor","customBackgroundColor","customGradient","color","text","background","gradient","restAttributes","oldColorsMigration","textColor","undefined","blockAttributes","url","type","source","selector","attribute","title","v11","linkTarget","rel","placeholder","backgroundColor","width","supports","anchor","alignWide","__experimentalSkipSerialization","gradients","__experimentalDefaultControls","typography","fontSize","__experimentalFontFamily","reusable","spacing","padding","__experimentalBorder","__experimentalSelector","save","borderProps","colorProps","spacingProps","buttonClasses","buttonStyle","wrapperClasses","useBlockProps","v10","migrate","migrateFontFamily","isEligible","fontFamily","deprecated","textClass","backgroundClass","gradientClass","default","includes","newClassName","replace","trim","linkClass"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tgetColorClassName,\n\tuseBlockProps,\n\t__experimentalGetGradientClass,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,\n} from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport migrateFontFamily from '../utils/migrate-font-family';\n\nconst migrateBorderRadius = ( attributes ) => {\n\tconst { borderRadius, ...newAttributes } = attributes;\n\t// We have to check old property `borderRadius` and if\n\t// `styles.border.radius` is a `number`\n\tconst oldBorderRadius = [\n\t\tborderRadius,\n\t\tnewAttributes.style?.border?.radius,\n\t].find( ( possibleBorderRadius ) => {\n\t\treturn (\n\t\t\ttypeof possibleBorderRadius === 'number' &&\n\t\t\tpossibleBorderRadius !== 0\n\t\t);\n\t} );\n\tif ( ! oldBorderRadius ) {\n\t\treturn newAttributes;\n\t}\n\n\treturn {\n\t\t...newAttributes,\n\t\tstyle: {\n\t\t\t...newAttributes.style,\n\t\t\tborder: {\n\t\t\t\t...newAttributes.style?.border,\n\t\t\t\tradius: `${ oldBorderRadius }px`,\n\t\t\t},\n\t\t},\n\t};\n};\n\nfunction migrateAlign( attributes ) {\n\tif ( ! attributes.align ) {\n\t\treturn attributes;\n\t}\n\tconst { align, ...otherAttributes } = attributes;\n\treturn {\n\t\t...otherAttributes,\n\t\tclassName: classnames(\n\t\t\totherAttributes.className,\n\t\t\t`align${ attributes.align }`\n\t\t),\n\t};\n}\n\nconst migrateCustomColorsAndGradients = ( attributes ) => {\n\tif (\n\t\t! attributes.customTextColor &&\n\t\t! attributes.customBackgroundColor &&\n\t\t! attributes.customGradient\n\t) {\n\t\treturn attributes;\n\t}\n\tconst style = { color: {} };\n\tif ( attributes.customTextColor ) {\n\t\tstyle.color.text = attributes.customTextColor;\n\t}\n\tif ( attributes.customBackgroundColor ) {\n\t\tstyle.color.background = attributes.customBackgroundColor;\n\t}\n\tif ( attributes.customGradient ) {\n\t\tstyle.color.gradient = attributes.customGradient;\n\t}\n\n\tconst {\n\t\tcustomTextColor,\n\t\tcustomBackgroundColor,\n\t\tcustomGradient,\n\t\t...restAttributes\n\t} = attributes;\n\n\treturn {\n\t\t...restAttributes,\n\t\tstyle,\n\t};\n};\n\nconst oldColorsMigration = ( attributes ) => {\n\tconst { color, textColor, ...restAttributes } = {\n\t\t...attributes,\n\t\tcustomTextColor:\n\t\t\tattributes.textColor && '#' === attributes.textColor[ 0 ]\n\t\t\t\t? attributes.textColor\n\t\t\t\t: undefined,\n\t\tcustomBackgroundColor:\n\t\t\tattributes.color && '#' === attributes.color[ 0 ]\n\t\t\t\t? attributes.color\n\t\t\t\t: undefined,\n\t};\n\treturn migrateCustomColorsAndGradients( restAttributes );\n};\n\nconst blockAttributes = {\n\turl: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'a',\n\t\tattribute: 'href',\n\t},\n\ttitle: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'a',\n\t\tattribute: 'title',\n\t},\n\ttext: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'a',\n\t},\n};\n\nconst v11 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'title',\n\t\t},\n\t\ttext: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'a',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'target',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tplaceholder: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tgradient: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\talignWide: false,\n\t\tcolor: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tgradients: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t},\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\treusable: false,\n\t\tspacing: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tpadding: [ 'horizontal', 'vertical' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tpadding: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tradius: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tradius: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalSelector: '.wp-block-button__link',\n\t},\n\tsave( { attributes, className } ) {\n\t\tconst { fontSize, linkTarget, rel, style, text, title, url, width } =\n\t\t\tattributes;\n\n\t\tif ( ! text ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-button__link',\n\t\t\tcolorProps.className,\n\t\t\tborderProps.className,\n\t\t\t{\n\t\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t\t// block support.\n\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t}\n\t\t);\n\t\tconst buttonStyle = {\n\t\t\t...borderProps.style,\n\t\t\t...colorProps.style,\n\t\t\t...spacingProps.style,\n\t\t};\n\n\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\tconst wrapperClasses = classnames( className, {\n\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t\t} );\n\n\t\treturn (\n\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\thref={ url }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\trel={ rel }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t},\n};\n\nconst v10 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'title',\n\t\t},\n\t\ttext: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'a',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'target',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tplaceholder: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tgradient: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\talignWide: false,\n\t\tcolor: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tgradients: true,\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t},\n\t\treusable: false,\n\t\tspacing: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tpadding: [ 'horizontal', 'vertical' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tpadding: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tradius: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t},\n\t\t__experimentalSelector: '.wp-block-button__link',\n\t},\n\tsave( { attributes, className } ) {\n\t\tconst { fontSize, linkTarget, rel, style, text, title, url, width } =\n\t\t\tattributes;\n\n\t\tif ( ! text ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-button__link',\n\t\t\tcolorProps.className,\n\t\t\tborderProps.className,\n\t\t\t{\n\t\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t\t// block support.\n\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t}\n\t\t);\n\t\tconst buttonStyle = {\n\t\t\t...borderProps.style,\n\t\t\t...colorProps.style,\n\t\t\t...spacingProps.style,\n\t\t};\n\n\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\tconst wrapperClasses = classnames( className, {\n\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t\t} );\n\n\t\treturn (\n\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\thref={ url }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\trel={ rel }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t},\n\tmigrate: migrateFontFamily,\n\tisEligible( { style } ) {\n\t\treturn style?.typography?.fontFamily;\n\t},\n};\n\nconst deprecated = [\n\tv11,\n\tv10,\n\t{\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: {\n\t\t\t\t__experimentalSkipSerialization: true,\n\t\t\t\tgradients: true,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontSize: true,\n\t\t\t\t__experimentalFontFamily: true,\n\t\t\t},\n\t\t\treusable: false,\n\t\t\t__experimentalSelector: '.wp-block-button__link',\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t},\n\t\tisEligible( { style } ) {\n\t\t\treturn typeof style?.border?.radius === 'number';\n\t\t},\n\t\tsave( { attributes, className } ) {\n\t\t\tconst {\n\t\t\t\tfontSize,\n\t\t\t\tlinkTarget,\n\t\t\t\trel,\n\t\t\t\tstyle,\n\t\t\t\ttext,\n\t\t\t\ttitle,\n\t\t\t\turl,\n\t\t\t\twidth,\n\t\t\t} = attributes;\n\n\t\t\tif ( ! text ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst borderRadius = style?.border?.radius;\n\t\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\t\tconst buttonClasses = classnames(\n\t\t\t\t'wp-block-button__link',\n\t\t\t\tcolorProps.className,\n\t\t\t\t{\n\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t}\n\t\t\t);\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius : undefined,\n\t\t\t\t...colorProps.style,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\tconst wrapperClasses = classnames( className, {\n\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t\t[ `has-custom-font-size` ]:\n\t\t\t\t\tfontSize || style?.typography?.fontSize,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: compose( migrateFontFamily, migrateBorderRadius ),\n\t},\n\t{\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: {\n\t\t\t\t__experimentalSkipSerialization: true,\n\t\t\t},\n\t\t\treusable: false,\n\t\t\t__experimentalSelector: '.wp-block-button__link',\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttype: 'object',\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes, className } ) {\n\t\t\tconst { borderRadius, linkTarget, rel, text, title, url, width } =\n\t\t\t\tattributes;\n\t\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\t\tconst buttonClasses = classnames(\n\t\t\t\t'wp-block-button__link',\n\t\t\t\tcolorProps.className,\n\t\t\t\t{\n\t\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t\t}\n\t\t\t);\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t\t...colorProps.style,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\tconst wrapperClasses = classnames( className, {\n\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: compose( migrateFontFamily, migrateBorderRadius ),\n\t},\n\t{\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: {\n\t\t\t\t__experimentalSkipSerialization: true,\n\t\t\t},\n\t\t\treusable: false,\n\t\t\t__experimentalSelector: '.wp-block-button__link',\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttype: 'object',\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes, className } ) {\n\t\t\tconst { borderRadius, linkTarget, rel, text, title, url, width } =\n\t\t\t\tattributes;\n\t\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\t\tconst buttonClasses = classnames(\n\t\t\t\t'wp-block-button__link',\n\t\t\t\tcolorProps.className,\n\t\t\t\t{\n\t\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t\t}\n\t\t\t);\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t\t...colorProps.style,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\tconst wrapperClasses = classnames( className, {\n\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: compose( migrateFontFamily, migrateBorderRadius ),\n\t},\n\t{\n\t\tsupports: {\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: { gradients: true },\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttype: 'object',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { borderRadius, linkTarget, rel, text, title, url } =\n\t\t\t\tattributes;\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t} );\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\thref={ url }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\trel={ rel }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t\tmigrate: migrateBorderRadius,\n\t},\n\t{\n\t\tsupports: {\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomGradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tisEligible: ( attributes ) =>\n\t\t\t!! attributes.customTextColor ||\n\t\t\t!! attributes.customBackgroundColor ||\n\t\t\t!! attributes.customGradient ||\n\t\t\t!! attributes.align,\n\t\tmigrate: compose(\n\t\t\tmigrateBorderRadius,\n\t\t\tmigrateCustomColorsAndGradients,\n\t\t\tmigrateAlign\n\t\t),\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tbackgroundColor,\n\t\t\t\tborderRadius,\n\t\t\t\tcustomBackgroundColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tcustomGradient,\n\t\t\t\tlinkTarget,\n\t\t\t\tgradient,\n\t\t\t\trel,\n\t\t\t\ttext,\n\t\t\t\ttextColor,\n\t\t\t\ttitle,\n\t\t\t\turl,\n\t\t\t} = attributes;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\t\t\tconst backgroundClass =\n\t\t\t\t! customGradient &&\n\t\t\t\tgetColorClassName( 'background-color', backgroundColor );\n\t\t\tconst gradientClass = __experimentalGetGradientClass( gradient );\n\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-background':\n\t\t\t\t\tbackgroundColor ||\n\t\t\t\t\tcustomBackgroundColor ||\n\t\t\t\t\tcustomGradient ||\n\t\t\t\t\tgradient,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t} );\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackground: customGradient ? customGradient : undefined,\n\t\t\t\tbackgroundColor:\n\t\t\t\t\tbackgroundClass || customGradient || gradient\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: customBackgroundColor,\n\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tisEligible( attribute ) {\n\t\t\treturn (\n\t\t\t\tattribute.className &&\n\t\t\t\tattribute.className.includes( 'is-style-squared' )\n\t\t\t);\n\t\t},\n\t\tmigrate( attributes ) {\n\t\t\tlet newClassName = attributes.className;\n\t\t\tif ( newClassName ) {\n\t\t\t\tnewClassName = newClassName\n\t\t\t\t\t.replace( /is-style-squared[\\s]?/, '' )\n\t\t\t\t\t.trim();\n\t\t\t}\n\t\t\treturn migrateBorderRadius(\n\t\t\t\tmigrateCustomColorsAndGradients( {\n\t\t\t\t\t...attributes,\n\t\t\t\t\tclassName: newClassName ? newClassName : undefined,\n\t\t\t\t\tborderRadius: 0,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tbackgroundColor,\n\t\t\t\tcustomBackgroundColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tlinkTarget,\n\t\t\t\trel,\n\t\t\t\ttext,\n\t\t\t\ttextColor,\n\t\t\t\ttitle,\n\t\t\t\turl,\n\t\t\t} = attributes;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor\n\t\t\t);\n\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-background': backgroundColor || customBackgroundColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t? undefined\n\t\t\t\t\t: customBackgroundColor,\n\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: oldColorsMigration,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\ttext,\n\t\t\t\ttitle,\n\t\t\t\tbackgroundColor,\n\t\t\t\ttextColor,\n\t\t\t\tcustomBackgroundColor,\n\t\t\t\tcustomTextColor,\n\t\t\t} = attributes;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor\n\t\t\t);\n\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-background': backgroundColor || customBackgroundColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t? undefined\n\t\t\t\t\t: customBackgroundColor,\n\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcolor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { url, text, title, align, color, textColor } = attributes;\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackgroundColor: color,\n\t\t\t\tcolor: textColor,\n\t\t\t};\n\n\t\t\tconst linkClass = 'wp-block-button__link';\n\n\t\t\treturn (\n\t\t\t\t<div className={ `align${ align }` }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: oldColorsMigration,\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcolor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { url, text, title, align, color, textColor } = attributes;\n\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ `align${ align }` }\n\t\t\t\t\tstyle={ { backgroundColor: color } }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ { color: textColor } }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: oldColorsMigration,\n\t},\n];\n\nexport default deprecated;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/button/deprecated.js"],"names":["migrateBorderRadius","attributes","borderRadius","newAttributes","oldBorderRadius","style","border","radius","find","possibleBorderRadius","migrateAlign","align","otherAttributes","className","migrateCustomColorsAndGradients","customTextColor","customBackgroundColor","customGradient","color","text","background","gradient","restAttributes","oldColorsMigration","textColor","undefined","blockAttributes","url","type","source","selector","attribute","title","v11","linkTarget","rel","placeholder","backgroundColor","width","supports","anchor","alignWide","__experimentalSkipSerialization","gradients","__experimentalDefaultControls","typography","fontSize","__experimentalFontFamily","reusable","spacing","padding","__experimentalBorder","__experimentalSelector","save","borderProps","colorProps","spacingProps","buttonClasses","buttonStyle","wrapperClasses","useBlockProps","v10","migrate","migrateFontFamily","isEligible","fontFamily","deprecated","textClass","backgroundClass","gradientClass","default","includes","newClassName","replace","trim","linkClass"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AASA;;AAKA;;AAtBA;AACA;AACA;;AAGA;AACA;AACA;;AAYA;AACA;AACA;AAGA,MAAMA,mBAAmB,GAAKC,UAAF,IAAkB;AAC7C,QAAM;AAAEC,IAAAA,YAAF;AAAgB,OAAGC;AAAnB,MAAqCF,UAA3C,CAD6C,CAE7C;AACA;;AACA,QAAMG,eAAe,GAAG,CACvBF,YADuB,EAEvBC,aAAa,CAACE,KAAd,EAAqBC,MAArB,EAA6BC,MAFN,EAGtBC,IAHsB,CAGdC,oBAAF,IAA4B;AACnC,WACC,OAAOA,oBAAP,KAAgC,QAAhC,IACAA,oBAAoB,KAAK,CAF1B;AAIA,GARuB,CAAxB;;AASA,MAAK,CAAEL,eAAP,EAAyB;AACxB,WAAOD,aAAP;AACA;;AAED,SAAO,EACN,GAAGA,aADG;AAENE,IAAAA,KAAK,EAAE,EACN,GAAGF,aAAa,CAACE,KADX;AAENC,MAAAA,MAAM,EAAE,EACP,GAAGH,aAAa,CAACE,KAAd,EAAqBC,MADjB;AAEPC,QAAAA,MAAM,EAAG,GAAGH,eAAiB;AAFtB;AAFF;AAFD,GAAP;AAUA,CA3BD;;AA6BA,SAASM,YAAT,CAAuBT,UAAvB,EAAoC;AACnC,MAAK,CAAEA,UAAU,CAACU,KAAlB,EAA0B;AACzB,WAAOV,UAAP;AACA;;AACD,QAAM;AAAEU,IAAAA,KAAF;AAAS,OAAGC;AAAZ,MAAgCX,UAAtC;AACA,SAAO,EACN,GAAGW,eADG;AAENC,IAAAA,SAAS,EAAE,yBACVD,eAAe,CAACC,SADN,EAET,QAAQZ,UAAU,CAACU,KAAO,EAFjB;AAFL,GAAP;AAOA;;AAED,MAAMG,+BAA+B,GAAKb,UAAF,IAAkB;AACzD,MACC,CAAEA,UAAU,CAACc,eAAb,IACA,CAAEd,UAAU,CAACe,qBADb,IAEA,CAAEf,UAAU,CAACgB,cAHd,EAIE;AACD,WAAOhB,UAAP;AACA;;AACD,QAAMI,KAAK,GAAG;AAAEa,IAAAA,KAAK,EAAE;AAAT,GAAd;;AACA,MAAKjB,UAAU,CAACc,eAAhB,EAAkC;AACjCV,IAAAA,KAAK,CAACa,KAAN,CAAYC,IAAZ,GAAmBlB,UAAU,CAACc,eAA9B;AACA;;AACD,MAAKd,UAAU,CAACe,qBAAhB,EAAwC;AACvCX,IAAAA,KAAK,CAACa,KAAN,CAAYE,UAAZ,GAAyBnB,UAAU,CAACe,qBAApC;AACA;;AACD,MAAKf,UAAU,CAACgB,cAAhB,EAAiC;AAChCZ,IAAAA,KAAK,CAACa,KAAN,CAAYG,QAAZ,GAAuBpB,UAAU,CAACgB,cAAlC;AACA;;AAED,QAAM;AACLF,IAAAA,eADK;AAELC,IAAAA,qBAFK;AAGLC,IAAAA,cAHK;AAIL,OAAGK;AAJE,MAKFrB,UALJ;AAOA,SAAO,EACN,GAAGqB,cADG;AAENjB,IAAAA;AAFM,GAAP;AAIA,CA9BD;;AAgCA,MAAMkB,kBAAkB,GAAKtB,UAAF,IAAkB;AAC5C,QAAM;AAAEiB,IAAAA,KAAF;AAASM,IAAAA,SAAT;AAAoB,OAAGF;AAAvB,MAA0C,EAC/C,GAAGrB,UAD4C;AAE/Cc,IAAAA,eAAe,EACdd,UAAU,CAACuB,SAAX,IAAwB,QAAQvB,UAAU,CAACuB,SAAX,CAAsB,CAAtB,CAAhC,GACGvB,UAAU,CAACuB,SADd,GAEGC,SAL2C;AAM/CT,IAAAA,qBAAqB,EACpBf,UAAU,CAACiB,KAAX,IAAoB,QAAQjB,UAAU,CAACiB,KAAX,CAAkB,CAAlB,CAA5B,GACGjB,UAAU,CAACiB,KADd,GAEGO;AAT2C,GAAhD;AAWA,SAAOX,+BAA+B,CAAEQ,cAAF,CAAtC;AACA,CAbD;;AAeA,MAAMI,eAAe,GAAG;AACvBC,EAAAA,GAAG,EAAE;AACJC,IAAAA,IAAI,EAAE,QADF;AAEJC,IAAAA,MAAM,EAAE,WAFJ;AAGJC,IAAAA,QAAQ,EAAE,GAHN;AAIJC,IAAAA,SAAS,EAAE;AAJP,GADkB;AAOvBC,EAAAA,KAAK,EAAE;AACNJ,IAAAA,IAAI,EAAE,QADA;AAENC,IAAAA,MAAM,EAAE,WAFF;AAGNC,IAAAA,QAAQ,EAAE,GAHJ;AAINC,IAAAA,SAAS,EAAE;AAJL,GAPgB;AAavBZ,EAAAA,IAAI,EAAE;AACLS,IAAAA,IAAI,EAAE,QADD;AAELC,IAAAA,MAAM,EAAE,MAFH;AAGLC,IAAAA,QAAQ,EAAE;AAHL;AAbiB,CAAxB;AAoBA,MAAMG,GAAG,GAAG;AACXhC,EAAAA,UAAU,EAAE;AACX0B,IAAAA,GAAG,EAAE;AACJC,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KADM;AAOXC,IAAAA,KAAK,EAAE;AACNJ,MAAAA,IAAI,EAAE,QADA;AAENC,MAAAA,MAAM,EAAE,WAFF;AAGNC,MAAAA,QAAQ,EAAE,GAHJ;AAINC,MAAAA,SAAS,EAAE;AAJL,KAPI;AAaXZ,IAAAA,IAAI,EAAE;AACLS,MAAAA,IAAI,EAAE,QADD;AAELC,MAAAA,MAAM,EAAE,MAFH;AAGLC,MAAAA,QAAQ,EAAE;AAHL,KAbK;AAkBXI,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAlBD;AAwBXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KAxBM;AA8BXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM,KA9BF;AAiCXS,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KAjCN;AAoCXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KApCA;AAuCXP,IAAAA,QAAQ,EAAE;AACTO,MAAAA,IAAI,EAAE;AADG,KAvCC;AA0CXU,IAAAA,KAAK,EAAE;AACNV,MAAAA,IAAI,EAAE;AADA;AA1CI,GADD;AA+CXW,EAAAA,QAAQ,EAAE;AACTC,IAAAA,MAAM,EAAE,IADC;AAET7B,IAAAA,KAAK,EAAE,IAFE;AAGT8B,IAAAA,SAAS,EAAE,KAHF;AAITvB,IAAAA,KAAK,EAAE;AACNwB,MAAAA,+BAA+B,EAAE,IAD3B;AAENC,MAAAA,SAAS,EAAE,IAFL;AAGNC,MAAAA,6BAA6B,EAAE;AAC9BxB,QAAAA,UAAU,EAAE,IADkB;AAE9BD,QAAAA,IAAI,EAAE;AAFwB;AAHzB,KAJE;AAYT0B,IAAAA,UAAU,EAAE;AACXC,MAAAA,QAAQ,EAAE,IADC;AAEXC,MAAAA,wBAAwB,EAAE,IAFf;AAGXH,MAAAA,6BAA6B,EAAE;AAC9BE,QAAAA,QAAQ,EAAE;AADoB;AAHpB,KAZH;AAmBTE,IAAAA,QAAQ,EAAE,KAnBD;AAoBTC,IAAAA,OAAO,EAAE;AACRP,MAAAA,+BAA+B,EAAE,IADzB;AAERQ,MAAAA,OAAO,EAAE,CAAE,YAAF,EAAgB,UAAhB,CAFD;AAGRN,MAAAA,6BAA6B,EAAE;AAC9BM,QAAAA,OAAO,EAAE;AADqB;AAHvB,KApBA;AA2BTC,IAAAA,oBAAoB,EAAE;AACrB5C,MAAAA,MAAM,EAAE,IADa;AAErBmC,MAAAA,+BAA+B,EAAE,IAFZ;AAGrBE,MAAAA,6BAA6B,EAAE;AAC9BrC,QAAAA,MAAM,EAAE;AADsB;AAHV,KA3Bb;AAkCT6C,IAAAA,sBAAsB,EAAE;AAlCf,GA/CC;;AAmFXC,EAAAA,IAAI,CAAE;AAAEpD,IAAAA,UAAF;AAAcY,IAAAA;AAAd,GAAF,EAA8B;AACjC,UAAM;AAAEiC,MAAAA,QAAF;AAAYZ,MAAAA,UAAZ;AAAwBC,MAAAA,GAAxB;AAA6B9B,MAAAA,KAA7B;AAAoCc,MAAAA,IAApC;AAA0Ca,MAAAA,KAA1C;AAAiDL,MAAAA,GAAjD;AAAsDW,MAAAA;AAAtD,QACLrC,UADD;;AAGA,QAAK,CAAEkB,IAAP,EAAc;AACb,aAAO,IAAP;AACA;;AAED,UAAMmC,WAAW,GAAG,0DAA2BrD,UAA3B,CAApB;AACA,UAAMsD,UAAU,GAAG,yDAA0BtD,UAA1B,CAAnB;AACA,UAAMuD,YAAY,GAAG,2DAA4BvD,UAA5B,CAArB;AACA,UAAMwD,aAAa,GAAG,yBACrB,uBADqB,EAErBF,UAAU,CAAC1C,SAFU,EAGrByC,WAAW,CAACzC,SAHS,EAIrB;AACC;AACA;AACA,0BAAoBR,KAAK,EAAEC,MAAP,EAAeC,MAAf,KAA0B;AAH/C,KAJqB,CAAtB;AAUA,UAAMmD,WAAW,GAAG,EACnB,GAAGJ,WAAW,CAACjD,KADI;AAEnB,SAAGkD,UAAU,CAAClD,KAFK;AAGnB,SAAGmD,YAAY,CAACnD;AAHG,KAApB,CArBiC,CA2BjC;AACA;AACA;;AAEA,UAAMsD,cAAc,GAAG,yBAAY9C,SAAZ,EAAuB;AAC7C,OAAG,2CAA2CyB,KAAO,EAArD,GAA0DA,KADb;AAE7C,OAAG,sBAAH,GAA4BQ,QAAQ,IAAIzC,KAAK,EAAEwC,UAAP,EAAmBC;AAFd,KAAvB,CAAvB;AAKA,WACC,wCAAUc,2BAAcP,IAAd,CAAoB;AAAExC,QAAAA,SAAS,EAAE8C;AAAb,OAApB;AAAV,OACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGF,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD,CADD;AAcA;;AArIU,CAAZ;AAwIA,MAAM0B,GAAG,GAAG;AACX5D,EAAAA,UAAU,EAAE;AACX0B,IAAAA,GAAG,EAAE;AACJC,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KADM;AAOXC,IAAAA,KAAK,EAAE;AACNJ,MAAAA,IAAI,EAAE,QADA;AAENC,MAAAA,MAAM,EAAE,WAFF;AAGNC,MAAAA,QAAQ,EAAE,GAHJ;AAINC,MAAAA,SAAS,EAAE;AAJL,KAPI;AAaXZ,IAAAA,IAAI,EAAE;AACLS,MAAAA,IAAI,EAAE,QADD;AAELC,MAAAA,MAAM,EAAE,MAFH;AAGLC,MAAAA,QAAQ,EAAE;AAHL,KAbK;AAkBXI,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAlBD;AAwBXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KAxBM;AA8BXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM,KA9BF;AAiCXS,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KAjCN;AAoCXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KApCA;AAuCXP,IAAAA,QAAQ,EAAE;AACTO,MAAAA,IAAI,EAAE;AADG,KAvCC;AA0CXU,IAAAA,KAAK,EAAE;AACNV,MAAAA,IAAI,EAAE;AADA;AA1CI,GADD;AA+CXW,EAAAA,QAAQ,EAAE;AACTC,IAAAA,MAAM,EAAE,IADC;AAET7B,IAAAA,KAAK,EAAE,IAFE;AAGT8B,IAAAA,SAAS,EAAE,KAHF;AAITvB,IAAAA,KAAK,EAAE;AACNwB,MAAAA,+BAA+B,EAAE,IAD3B;AAENC,MAAAA,SAAS,EAAE;AAFL,KAJE;AAQTE,IAAAA,UAAU,EAAE;AACXC,MAAAA,QAAQ,EAAE,IADC;AAEXC,MAAAA,wBAAwB,EAAE;AAFf,KARH;AAYTC,IAAAA,QAAQ,EAAE,KAZD;AAaTC,IAAAA,OAAO,EAAE;AACRP,MAAAA,+BAA+B,EAAE,IADzB;AAERQ,MAAAA,OAAO,EAAE,CAAE,YAAF,EAAgB,UAAhB,CAFD;AAGRN,MAAAA,6BAA6B,EAAE;AAC9BM,QAAAA,OAAO,EAAE;AADqB;AAHvB,KAbA;AAoBTC,IAAAA,oBAAoB,EAAE;AACrB5C,MAAAA,MAAM,EAAE,IADa;AAErBmC,MAAAA,+BAA+B,EAAE;AAFZ,KApBb;AAwBTU,IAAAA,sBAAsB,EAAE;AAxBf,GA/CC;;AAyEXC,EAAAA,IAAI,CAAE;AAAEpD,IAAAA,UAAF;AAAcY,IAAAA;AAAd,GAAF,EAA8B;AACjC,UAAM;AAAEiC,MAAAA,QAAF;AAAYZ,MAAAA,UAAZ;AAAwBC,MAAAA,GAAxB;AAA6B9B,MAAAA,KAA7B;AAAoCc,MAAAA,IAApC;AAA0Ca,MAAAA,KAA1C;AAAiDL,MAAAA,GAAjD;AAAsDW,MAAAA;AAAtD,QACLrC,UADD;;AAGA,QAAK,CAAEkB,IAAP,EAAc;AACb,aAAO,IAAP;AACA;;AAED,UAAMmC,WAAW,GAAG,0DAA2BrD,UAA3B,CAApB;AACA,UAAMsD,UAAU,GAAG,yDAA0BtD,UAA1B,CAAnB;AACA,UAAMuD,YAAY,GAAG,2DAA4BvD,UAA5B,CAArB;AACA,UAAMwD,aAAa,GAAG,yBACrB,uBADqB,EAErBF,UAAU,CAAC1C,SAFU,EAGrByC,WAAW,CAACzC,SAHS,EAIrB;AACC;AACA;AACA,0BAAoBR,KAAK,EAAEC,MAAP,EAAeC,MAAf,KAA0B;AAH/C,KAJqB,CAAtB;AAUA,UAAMmD,WAAW,GAAG,EACnB,GAAGJ,WAAW,CAACjD,KADI;AAEnB,SAAGkD,UAAU,CAAClD,KAFK;AAGnB,SAAGmD,YAAY,CAACnD;AAHG,KAApB,CArBiC,CA2BjC;AACA;AACA;;AAEA,UAAMsD,cAAc,GAAG,yBAAY9C,SAAZ,EAAuB;AAC7C,OAAG,2CAA2CyB,KAAO,EAArD,GAA0DA,KADb;AAE7C,OAAG,sBAAH,GAA4BQ,QAAQ,IAAIzC,KAAK,EAAEwC,UAAP,EAAmBC;AAFd,KAAvB,CAAvB;AAKA,WACC,wCAAUc,2BAAcP,IAAd,CAAoB;AAAExC,QAAAA,SAAS,EAAE8C;AAAb,OAApB;AAAV,OACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGF,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD,CADD;AAcA,GA3HU;;AA4HX2B,EAAAA,OAAO,EAAEC,0BA5HE;;AA6HXC,EAAAA,UAAU,CAAE;AAAE3D,IAAAA;AAAF,GAAF,EAAc;AACvB,WAAOA,KAAK,EAAEwC,UAAP,EAAmBoB,UAA1B;AACA;;AA/HU,CAAZ;AAkIA,MAAMC,UAAU,GAAG,CAClBjC,GADkB,EAElB4B,GAFkB,EAGlB;AACCtB,EAAAA,QAAQ,EAAE;AACTC,IAAAA,MAAM,EAAE,IADC;AAET7B,IAAAA,KAAK,EAAE,IAFE;AAGT8B,IAAAA,SAAS,EAAE,KAHF;AAITvB,IAAAA,KAAK,EAAE;AACNwB,MAAAA,+BAA+B,EAAE,IAD3B;AAENC,MAAAA,SAAS,EAAE;AAFL,KAJE;AAQTE,IAAAA,UAAU,EAAE;AACXC,MAAAA,QAAQ,EAAE,IADC;AAEXC,MAAAA,wBAAwB,EAAE;AAFf,KARH;AAYTC,IAAAA,QAAQ,EAAE,KAZD;AAaTI,IAAAA,sBAAsB,EAAE;AAbf,GADX;AAgBCnD,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXQ,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAFD;AAQXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KARM;AAcXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM,KAdF;AAiBXS,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KAjBN;AAoBXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KApBA;AAuBXP,IAAAA,QAAQ,EAAE;AACTO,MAAAA,IAAI,EAAE;AADG,KAvBC;AA0BXU,IAAAA,KAAK,EAAE;AACNV,MAAAA,IAAI,EAAE;AADA;AA1BI,GAhBb;;AA8CCoC,EAAAA,UAAU,CAAE;AAAE3D,IAAAA;AAAF,GAAF,EAAc;AACvB,WAAO,OAAOA,KAAK,EAAEC,MAAP,EAAeC,MAAtB,KAAiC,QAAxC;AACA,GAhDF;;AAiDC8C,EAAAA,IAAI,CAAE;AAAEpD,IAAAA,UAAF;AAAcY,IAAAA;AAAd,GAAF,EAA8B;AACjC,UAAM;AACLiC,MAAAA,QADK;AAELZ,MAAAA,UAFK;AAGLC,MAAAA,GAHK;AAIL9B,MAAAA,KAJK;AAKLc,MAAAA,IALK;AAMLa,MAAAA,KANK;AAOLL,MAAAA,GAPK;AAQLW,MAAAA;AARK,QASFrC,UATJ;;AAWA,QAAK,CAAEkB,IAAP,EAAc;AACb,aAAO,IAAP;AACA;;AAED,UAAMjB,YAAY,GAAGG,KAAK,EAAEC,MAAP,EAAeC,MAApC;AACA,UAAMgD,UAAU,GAAG,yDAA0BtD,UAA1B,CAAnB;AACA,UAAMwD,aAAa,GAAG,yBACrB,uBADqB,EAErBF,UAAU,CAAC1C,SAFU,EAGrB;AACC,0BAAoBR,KAAK,EAAEC,MAAP,EAAeC,MAAf,KAA0B;AAD/C,KAHqB,CAAtB;AAOA,UAAMmD,WAAW,GAAG;AACnBxD,MAAAA,YAAY,EAAEA,YAAY,GAAGA,YAAH,GAAkBuB,SADzB;AAEnB,SAAG8B,UAAU,CAAClD;AAFK,KAApB,CAzBiC,CA8BjC;AACA;AACA;;AAEA,UAAMsD,cAAc,GAAG,yBAAY9C,SAAZ,EAAuB;AAC7C,OAAG,2CAA2CyB,KAAO,EAArD,GAA0DA,KADb;AAE7C,OAAG,sBAAH,GACCQ,QAAQ,IAAIzC,KAAK,EAAEwC,UAAP,EAAmBC;AAHa,KAAvB,CAAvB;AAMA,WACC,wCAAUc,2BAAcP,IAAd,CAAoB;AAAExC,QAAAA,SAAS,EAAE8C;AAAb,OAApB;AAAV,OACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGF,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD,CADD;AAcA,GAvGF;;AAwGC2B,EAAAA,OAAO,EAAE,sBAASC,0BAAT,EAA4B/D,mBAA5B;AAxGV,CAHkB,EA6GlB;AACCuC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,MAAM,EAAE,IADC;AAET7B,IAAAA,KAAK,EAAE,IAFE;AAGT8B,IAAAA,SAAS,EAAE,KAHF;AAITvB,IAAAA,KAAK,EAAE;AACNwB,MAAAA,+BAA+B,EAAE;AAD3B,KAJE;AAOTM,IAAAA,QAAQ,EAAE,KAPD;AAQTI,IAAAA,sBAAsB,EAAE;AARf,GADX;AAWCnD,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXQ,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAFD;AAQXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KARM;AAcXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM,KAdF;AAiBX1B,IAAAA,YAAY,EAAE;AACb0B,MAAAA,IAAI,EAAE;AADO,KAjBH;AAoBXS,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KApBN;AAuBXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KAvBA;AA0BXP,IAAAA,QAAQ,EAAE;AACTO,MAAAA,IAAI,EAAE;AADG,KA1BC;AA6BXvB,IAAAA,KAAK,EAAE;AACNuB,MAAAA,IAAI,EAAE;AADA,KA7BI;AAgCXU,IAAAA,KAAK,EAAE;AACNV,MAAAA,IAAI,EAAE;AADA;AAhCI,GAXb;;AA+CCyB,EAAAA,IAAI,CAAE;AAAEpD,IAAAA,UAAF;AAAcY,IAAAA;AAAd,GAAF,EAA8B;AACjC,UAAM;AAAEX,MAAAA,YAAF;AAAgBgC,MAAAA,UAAhB;AAA4BC,MAAAA,GAA5B;AAAiChB,MAAAA,IAAjC;AAAuCa,MAAAA,KAAvC;AAA8CL,MAAAA,GAA9C;AAAmDW,MAAAA;AAAnD,QACLrC,UADD;AAEA,UAAMsD,UAAU,GAAG,yDAA0BtD,UAA1B,CAAnB;AACA,UAAMwD,aAAa,GAAG,yBACrB,uBADqB,EAErBF,UAAU,CAAC1C,SAFU,EAGrB;AACC,0BAAoBX,YAAY,KAAK;AADtC,KAHqB,CAAtB;AAOA,UAAMwD,WAAW,GAAG;AACnBxD,MAAAA,YAAY,EAAEA,YAAY,GAAGA,YAAY,GAAG,IAAlB,GAAyBuB,SADhC;AAEnB,SAAG8B,UAAU,CAAClD;AAFK,KAApB,CAXiC,CAgBjC;AACA;AACA;;AAEA,UAAMsD,cAAc,GAAG,yBAAY9C,SAAZ,EAAuB;AAC7C,OAAG,2CAA2CyB,KAAO,EAArD,GAA0DA;AADb,KAAvB,CAAvB;AAIA,WACC,wCAAUsB,2BAAcP,IAAd,CAAoB;AAAExC,QAAAA,SAAS,EAAE8C;AAAb,OAApB;AAAV,OACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGF,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD,CADD;AAcA,GArFF;;AAsFC2B,EAAAA,OAAO,EAAE,sBAASC,0BAAT,EAA4B/D,mBAA5B;AAtFV,CA7GkB,EAqMlB;AACCuC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,MAAM,EAAE,IADC;AAET7B,IAAAA,KAAK,EAAE,IAFE;AAGT8B,IAAAA,SAAS,EAAE,KAHF;AAITvB,IAAAA,KAAK,EAAE;AACNwB,MAAAA,+BAA+B,EAAE;AAD3B,KAJE;AAOTM,IAAAA,QAAQ,EAAE,KAPD;AAQTI,IAAAA,sBAAsB,EAAE;AARf,GADX;AAWCnD,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXQ,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAFD;AAQXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KARM;AAcXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM,KAdF;AAiBX1B,IAAAA,YAAY,EAAE;AACb0B,MAAAA,IAAI,EAAE;AADO,KAjBH;AAoBXS,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KApBN;AAuBXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KAvBA;AA0BXP,IAAAA,QAAQ,EAAE;AACTO,MAAAA,IAAI,EAAE;AADG,KA1BC;AA6BXvB,IAAAA,KAAK,EAAE;AACNuB,MAAAA,IAAI,EAAE;AADA,KA7BI;AAgCXU,IAAAA,KAAK,EAAE;AACNV,MAAAA,IAAI,EAAE;AADA;AAhCI,GAXb;;AA+CCyB,EAAAA,IAAI,CAAE;AAAEpD,IAAAA,UAAF;AAAcY,IAAAA;AAAd,GAAF,EAA8B;AACjC,UAAM;AAAEX,MAAAA,YAAF;AAAgBgC,MAAAA,UAAhB;AAA4BC,MAAAA,GAA5B;AAAiChB,MAAAA,IAAjC;AAAuCa,MAAAA,KAAvC;AAA8CL,MAAAA,GAA9C;AAAmDW,MAAAA;AAAnD,QACLrC,UADD;AAEA,UAAMsD,UAAU,GAAG,yDAA0BtD,UAA1B,CAAnB;AACA,UAAMwD,aAAa,GAAG,yBACrB,uBADqB,EAErBF,UAAU,CAAC1C,SAFU,EAGrB;AACC,0BAAoBX,YAAY,KAAK;AADtC,KAHqB,CAAtB;AAOA,UAAMwD,WAAW,GAAG;AACnBxD,MAAAA,YAAY,EAAEA,YAAY,GAAGA,YAAY,GAAG,IAAlB,GAAyBuB,SADhC;AAEnB,SAAG8B,UAAU,CAAClD;AAFK,KAApB,CAXiC,CAgBjC;AACA;AACA;;AAEA,UAAMsD,cAAc,GAAG,yBAAY9C,SAAZ,EAAuB;AAC7C,OAAG,2CAA2CyB,KAAO,EAArD,GAA0DA;AADb,KAAvB,CAAvB;AAIA,WACC,wCAAUsB,2BAAcP,IAAd,CAAoB;AAAExC,QAAAA,SAAS,EAAE8C;AAAb,OAApB;AAAV,OACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGF,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD,CADD;AAcA,GArFF;;AAsFC2B,EAAAA,OAAO,EAAE,sBAASC,0BAAT,EAA4B/D,mBAA5B;AAtFV,CArMkB,EA6RlB;AACCuC,EAAAA,QAAQ,EAAE;AACT5B,IAAAA,KAAK,EAAE,IADE;AAET8B,IAAAA,SAAS,EAAE,KAFF;AAGTvB,IAAAA,KAAK,EAAE;AAAEyB,MAAAA,SAAS,EAAE;AAAb;AAHE,GADX;AAMC1C,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXQ,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAFD;AAQXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KARM;AAcXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM,KAdF;AAiBX1B,IAAAA,YAAY,EAAE;AACb0B,MAAAA,IAAI,EAAE;AADO,KAjBH;AAoBXS,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KApBN;AAuBXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KAvBA;AA0BXP,IAAAA,QAAQ,EAAE;AACTO,MAAAA,IAAI,EAAE;AADG,KA1BC;AA6BXvB,IAAAA,KAAK,EAAE;AACNuB,MAAAA,IAAI,EAAE;AADA;AA7BI,GANb;;AAuCCyB,EAAAA,IAAI,CAAE;AAAEpD,IAAAA;AAAF,GAAF,EAAmB;AACtB,UAAM;AAAEC,MAAAA,YAAF;AAAgBgC,MAAAA,UAAhB;AAA4BC,MAAAA,GAA5B;AAAiChB,MAAAA,IAAjC;AAAuCa,MAAAA,KAAvC;AAA8CL,MAAAA;AAA9C,QACL1B,UADD;AAEA,UAAMwD,aAAa,GAAG,yBAAY,uBAAZ,EAAqC;AAC1D,0BAAoBvD,YAAY,KAAK;AADqB,KAArC,CAAtB;AAGA,UAAMwD,WAAW,GAAG;AACnBxD,MAAAA,YAAY,EAAEA,YAAY,GAAGA,YAAY,GAAG,IAAlB,GAAyBuB;AADhC,KAApB;AAIA,WACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGgC,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD;AAYA,GA7DF;;AA8DC2B,EAAAA,OAAO,EAAE9D;AA9DV,CA7RkB,EA6VlB;AACCuC,EAAAA,QAAQ,EAAE;AACT5B,IAAAA,KAAK,EAAE,IADE;AAET8B,IAAAA,SAAS,EAAE;AAFF,GADX;AAKCxC,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXQ,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAFD;AAQXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KARM;AAcXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM,KAdF;AAiBX1B,IAAAA,YAAY,EAAE;AACb0B,MAAAA,IAAI,EAAE;AADO,KAjBH;AAoBXS,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KApBN;AAuBXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KAvBA;AA0BXZ,IAAAA,qBAAqB,EAAE;AACtBY,MAAAA,IAAI,EAAE;AADgB,KA1BZ;AA6BXb,IAAAA,eAAe,EAAE;AAChBa,MAAAA,IAAI,EAAE;AADU,KA7BN;AAgCXX,IAAAA,cAAc,EAAE;AACfW,MAAAA,IAAI,EAAE;AADS,KAhCL;AAmCXP,IAAAA,QAAQ,EAAE;AACTO,MAAAA,IAAI,EAAE;AADG;AAnCC,GALb;AA4CCoC,EAAAA,UAAU,EAAI/D,UAAF,IACX,CAAC,CAAEA,UAAU,CAACc,eAAd,IACA,CAAC,CAAEd,UAAU,CAACe,qBADd,IAEA,CAAC,CAAEf,UAAU,CAACgB,cAFd,IAGA,CAAC,CAAEhB,UAAU,CAACU,KAhDhB;AAiDCmD,EAAAA,OAAO,EAAE,sBACR9D,mBADQ,EAERc,+BAFQ,EAGRJ,YAHQ,CAjDV;;AAsDC2C,EAAAA,IAAI,CAAE;AAAEpD,IAAAA;AAAF,GAAF,EAAmB;AACtB,UAAM;AACLoC,MAAAA,eADK;AAELnC,MAAAA,YAFK;AAGLc,MAAAA,qBAHK;AAILD,MAAAA,eAJK;AAKLE,MAAAA,cALK;AAMLiB,MAAAA,UANK;AAOLb,MAAAA,QAPK;AAQLc,MAAAA,GARK;AASLhB,MAAAA,IATK;AAULK,MAAAA,SAVK;AAWLQ,MAAAA,KAXK;AAYLL,MAAAA;AAZK,QAaF1B,UAbJ;AAeA,UAAMkE,SAAS,GAAG,oCAAmB,OAAnB,EAA4B3C,SAA5B,CAAlB;AACA,UAAM4C,eAAe,GACpB,CAAEnD,cAAF,IACA,oCAAmB,kBAAnB,EAAuCoB,eAAvC,CAFD;AAGA,UAAMgC,aAAa,GAAG,iDAAgChD,QAAhC,CAAtB;AAEA,UAAMoC,aAAa,GAAG,yBAAY,uBAAZ,EAAqC;AAC1D,wBAAkBjC,SAAS,IAAIT,eAD2B;AAE1D,OAAEoD,SAAF,GAAeA,SAF2C;AAG1D,wBACC9B,eAAe,IACfrB,qBADA,IAEAC,cAFA,IAGAI,QAPyD;AAQ1D,OAAE+C,eAAF,GAAqBA,eARqC;AAS1D,0BAAoBlE,YAAY,KAAK,CATqB;AAU1D,OAAEmE,aAAF,GAAmBA;AAVuC,KAArC,CAAtB;AAaA,UAAMX,WAAW,GAAG;AACnBtC,MAAAA,UAAU,EAAEH,cAAc,GAAGA,cAAH,GAAoBQ,SAD3B;AAEnBY,MAAAA,eAAe,EACd+B,eAAe,IAAInD,cAAnB,IAAqCI,QAArC,GACGI,SADH,GAEGT,qBALe;AAMnBE,MAAAA,KAAK,EAAEiD,SAAS,GAAG1C,SAAH,GAAeV,eANZ;AAOnBb,MAAAA,YAAY,EAAEA,YAAY,GAAGA,YAAY,GAAG,IAAlB,GAAyBuB;AAPhC,KAApB,CAnCsB,CA6CtB;AACA;AACA;;AAEA,WACC,yCACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGgC,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD,CADD;AAcA;;AArHF,CA7VkB,EAodlB;AACClC,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXf,IAAAA,KAAK,EAAE;AACNiB,MAAAA,IAAI,EAAE,QADA;AAEN0C,MAAAA,OAAO,EAAE;AAFH,KAFI;AAMXjC,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KANN;AASXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KATA;AAYXZ,IAAAA,qBAAqB,EAAE;AACtBY,MAAAA,IAAI,EAAE;AADgB,KAZZ;AAeXb,IAAAA,eAAe,EAAE;AAChBa,MAAAA,IAAI,EAAE;AADU,KAfN;AAkBXM,IAAAA,UAAU,EAAE;AACXN,MAAAA,IAAI,EAAE,QADK;AAEXC,MAAAA,MAAM,EAAE,WAFG;AAGXC,MAAAA,QAAQ,EAAE,GAHC;AAIXC,MAAAA,SAAS,EAAE;AAJA,KAlBD;AAwBXI,IAAAA,GAAG,EAAE;AACJP,MAAAA,IAAI,EAAE,QADF;AAEJC,MAAAA,MAAM,EAAE,WAFJ;AAGJC,MAAAA,QAAQ,EAAE,GAHN;AAIJC,MAAAA,SAAS,EAAE;AAJP,KAxBM;AA8BXK,IAAAA,WAAW,EAAE;AACZR,MAAAA,IAAI,EAAE;AADM;AA9BF,GADb;;AAmCCoC,EAAAA,UAAU,CAAEjC,SAAF,EAAc;AACvB,WACCA,SAAS,CAAClB,SAAV,IACAkB,SAAS,CAAClB,SAAV,CAAoB0D,QAApB,CAA8B,kBAA9B,CAFD;AAIA,GAxCF;;AAyCCT,EAAAA,OAAO,CAAE7D,UAAF,EAAe;AACrB,QAAIuE,YAAY,GAAGvE,UAAU,CAACY,SAA9B;;AACA,QAAK2D,YAAL,EAAoB;AACnBA,MAAAA,YAAY,GAAGA,YAAY,CACzBC,OADa,CACJ,uBADI,EACqB,EADrB,EAEbC,IAFa,EAAf;AAGA;;AACD,WAAO1E,mBAAmB,CACzBc,+BAA+B,CAAE,EAChC,GAAGb,UAD6B;AAEhCY,MAAAA,SAAS,EAAE2D,YAAY,GAAGA,YAAH,GAAkB/C,SAFT;AAGhCvB,MAAAA,YAAY,EAAE;AAHkB,KAAF,CADN,CAA1B;AAOA,GAvDF;;AAwDCmD,EAAAA,IAAI,CAAE;AAAEpD,IAAAA;AAAF,GAAF,EAAmB;AACtB,UAAM;AACLoC,MAAAA,eADK;AAELrB,MAAAA,qBAFK;AAGLD,MAAAA,eAHK;AAILmB,MAAAA,UAJK;AAKLC,MAAAA,GALK;AAMLhB,MAAAA,IANK;AAOLK,MAAAA,SAPK;AAQLQ,MAAAA,KARK;AASLL,MAAAA;AATK,QAUF1B,UAVJ;AAYA,UAAMkE,SAAS,GAAG,oCAAmB,OAAnB,EAA4B3C,SAA5B,CAAlB;AACA,UAAM4C,eAAe,GAAG,oCACvB,kBADuB,EAEvB/B,eAFuB,CAAxB;AAKA,UAAMoB,aAAa,GAAG,yBAAY,uBAAZ,EAAqC;AAC1D,wBAAkBjC,SAAS,IAAIT,eAD2B;AAE1D,OAAEoD,SAAF,GAAeA,SAF2C;AAG1D,wBAAkB9B,eAAe,IAAIrB,qBAHqB;AAI1D,OAAEoD,eAAF,GAAqBA;AAJqC,KAArC,CAAtB;AAOA,UAAMV,WAAW,GAAG;AACnBrB,MAAAA,eAAe,EAAE+B,eAAe,GAC7B3C,SAD6B,GAE7BT,qBAHgB;AAInBE,MAAAA,KAAK,EAAEiD,SAAS,GAAG1C,SAAH,GAAeV;AAJZ,KAApB;AAOA,WACC,yCACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAG0C,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC,IANT;AAOC,MAAA,MAAM,EAAGe,UAPV;AAQC,MAAA,GAAG,EAAGC;AARP,MADD,CADD;AAcA;;AAvGF,CApdkB,EA6jBlB;AACClC,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXf,IAAAA,KAAK,EAAE;AACNiB,MAAAA,IAAI,EAAE,QADA;AAEN0C,MAAAA,OAAO,EAAE;AAFH,KAFI;AAMXjC,IAAAA,eAAe,EAAE;AAChBT,MAAAA,IAAI,EAAE;AADU,KANN;AASXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KATA;AAYXZ,IAAAA,qBAAqB,EAAE;AACtBY,MAAAA,IAAI,EAAE;AADgB,KAZZ;AAeXb,IAAAA,eAAe,EAAE;AAChBa,MAAAA,IAAI,EAAE;AADU;AAfN,GADb;AAoBCkC,EAAAA,OAAO,EAAEvC,kBApBV;;AAqBC8B,EAAAA,IAAI,CAAE;AAAEpD,IAAAA;AAAF,GAAF,EAAmB;AACtB,UAAM;AACL0B,MAAAA,GADK;AAELR,MAAAA,IAFK;AAGLa,MAAAA,KAHK;AAILK,MAAAA,eAJK;AAKLb,MAAAA,SALK;AAMLR,MAAAA,qBANK;AAOLD,MAAAA;AAPK,QAQFd,UARJ;AAUA,UAAMkE,SAAS,GAAG,oCAAmB,OAAnB,EAA4B3C,SAA5B,CAAlB;AACA,UAAM4C,eAAe,GAAG,oCACvB,kBADuB,EAEvB/B,eAFuB,CAAxB;AAKA,UAAMoB,aAAa,GAAG,yBAAY,uBAAZ,EAAqC;AAC1D,wBAAkBjC,SAAS,IAAIT,eAD2B;AAE1D,OAAEoD,SAAF,GAAeA,SAF2C;AAG1D,wBAAkB9B,eAAe,IAAIrB,qBAHqB;AAI1D,OAAEoD,eAAF,GAAqBA;AAJqC,KAArC,CAAtB;AAOA,UAAMV,WAAW,GAAG;AACnBrB,MAAAA,eAAe,EAAE+B,eAAe,GAC7B3C,SAD6B,GAE7BT,qBAHgB;AAInBE,MAAAA,KAAK,EAAEiD,SAAS,GAAG1C,SAAH,GAAeV;AAJZ,KAApB;AAOA,WACC,yCACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAG0C,aAFb;AAGC,MAAA,IAAI,EAAG9B,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC;AANT,MADD,CADD;AAYA;;AAhEF,CA7jBkB,EA+nBlB;AACClB,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXR,IAAAA,KAAK,EAAE;AACNU,MAAAA,IAAI,EAAE;AADA,KAFI;AAKXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KALA;AAQXjB,IAAAA,KAAK,EAAE;AACNiB,MAAAA,IAAI,EAAE,QADA;AAEN0C,MAAAA,OAAO,EAAE;AAFH;AARI,GADb;;AAcCjB,EAAAA,IAAI,CAAE;AAAEpD,IAAAA;AAAF,GAAF,EAAmB;AACtB,UAAM;AAAE0B,MAAAA,GAAF;AAAOR,MAAAA,IAAP;AAAaa,MAAAA,KAAb;AAAoBrB,MAAAA,KAApB;AAA2BO,MAAAA,KAA3B;AAAkCM,MAAAA;AAAlC,QAAgDvB,UAAtD;AAEA,UAAMyD,WAAW,GAAG;AACnBrB,MAAAA,eAAe,EAAEnB,KADE;AAEnBA,MAAAA,KAAK,EAAEM;AAFY,KAApB;AAKA,UAAMmD,SAAS,GAAG,uBAAlB;AAEA,WACC;AAAK,MAAA,SAAS,EAAI,QAAQhE,KAAO;AAAjC,OACC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,SAAS,EAAGgE,SAFb;AAGC,MAAA,IAAI,EAAGhD,GAHR;AAIC,MAAA,KAAK,EAAGK,KAJT;AAKC,MAAA,KAAK,EAAG0B,WALT;AAMC,MAAA,KAAK,EAAGvC;AANT,MADD,CADD;AAYA,GApCF;;AAqCC2C,EAAAA,OAAO,EAAEvC;AArCV,CA/nBkB,EAsqBlB;AACCtB,EAAAA,UAAU,EAAE,EACX,GAAGyB,eADQ;AAEXR,IAAAA,KAAK,EAAE;AACNU,MAAAA,IAAI,EAAE;AADA,KAFI;AAKXJ,IAAAA,SAAS,EAAE;AACVI,MAAAA,IAAI,EAAE;AADI,KALA;AAQXjB,IAAAA,KAAK,EAAE;AACNiB,MAAAA,IAAI,EAAE,QADA;AAEN0C,MAAAA,OAAO,EAAE;AAFH;AARI,GADb;;AAcCjB,EAAAA,IAAI,CAAE;AAAEpD,IAAAA;AAAF,GAAF,EAAmB;AACtB,UAAM;AAAE0B,MAAAA,GAAF;AAAOR,MAAAA,IAAP;AAAaa,MAAAA,KAAb;AAAoBrB,MAAAA,KAApB;AAA2BO,MAAAA,KAA3B;AAAkCM,MAAAA;AAAlC,QAAgDvB,UAAtD;AAEA,WACC;AACC,MAAA,SAAS,EAAI,QAAQU,KAAO,EAD7B;AAEC,MAAA,KAAK,EAAG;AAAE0B,QAAAA,eAAe,EAAEnB;AAAnB;AAFT,OAIC,4BAAC,qBAAD,CAAU,OAAV;AACC,MAAA,OAAO,EAAC,GADT;AAEC,MAAA,IAAI,EAAGS,GAFR;AAGC,MAAA,KAAK,EAAGK,KAHT;AAIC,MAAA,KAAK,EAAG;AAAEd,QAAAA,KAAK,EAAEM;AAAT,OAJT;AAKC,MAAA,KAAK,EAAGL;AALT,MAJD,CADD;AAcA,GA/BF;;AAgCC2C,EAAAA,OAAO,EAAEvC;AAhCV,CAtqBkB,CAAnB;eA0sBe2C,U","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tgetColorClassName,\n\tuseBlockProps,\n\t__experimentalGetGradientClass,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,\n} from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport migrateFontFamily from '../utils/migrate-font-family';\n\nconst migrateBorderRadius = ( attributes ) => {\n\tconst { borderRadius, ...newAttributes } = attributes;\n\t// We have to check old property `borderRadius` and if\n\t// `styles.border.radius` is a `number`\n\tconst oldBorderRadius = [\n\t\tborderRadius,\n\t\tnewAttributes.style?.border?.radius,\n\t].find( ( possibleBorderRadius ) => {\n\t\treturn (\n\t\t\ttypeof possibleBorderRadius === 'number' &&\n\t\t\tpossibleBorderRadius !== 0\n\t\t);\n\t} );\n\tif ( ! oldBorderRadius ) {\n\t\treturn newAttributes;\n\t}\n\n\treturn {\n\t\t...newAttributes,\n\t\tstyle: {\n\t\t\t...newAttributes.style,\n\t\t\tborder: {\n\t\t\t\t...newAttributes.style?.border,\n\t\t\t\tradius: `${ oldBorderRadius }px`,\n\t\t\t},\n\t\t},\n\t};\n};\n\nfunction migrateAlign( attributes ) {\n\tif ( ! attributes.align ) {\n\t\treturn attributes;\n\t}\n\tconst { align, ...otherAttributes } = attributes;\n\treturn {\n\t\t...otherAttributes,\n\t\tclassName: classnames(\n\t\t\totherAttributes.className,\n\t\t\t`align${ attributes.align }`\n\t\t),\n\t};\n}\n\nconst migrateCustomColorsAndGradients = ( attributes ) => {\n\tif (\n\t\t! attributes.customTextColor &&\n\t\t! attributes.customBackgroundColor &&\n\t\t! attributes.customGradient\n\t) {\n\t\treturn attributes;\n\t}\n\tconst style = { color: {} };\n\tif ( attributes.customTextColor ) {\n\t\tstyle.color.text = attributes.customTextColor;\n\t}\n\tif ( attributes.customBackgroundColor ) {\n\t\tstyle.color.background = attributes.customBackgroundColor;\n\t}\n\tif ( attributes.customGradient ) {\n\t\tstyle.color.gradient = attributes.customGradient;\n\t}\n\n\tconst {\n\t\tcustomTextColor,\n\t\tcustomBackgroundColor,\n\t\tcustomGradient,\n\t\t...restAttributes\n\t} = attributes;\n\n\treturn {\n\t\t...restAttributes,\n\t\tstyle,\n\t};\n};\n\nconst oldColorsMigration = ( attributes ) => {\n\tconst { color, textColor, ...restAttributes } = {\n\t\t...attributes,\n\t\tcustomTextColor:\n\t\t\tattributes.textColor && '#' === attributes.textColor[ 0 ]\n\t\t\t\t? attributes.textColor\n\t\t\t\t: undefined,\n\t\tcustomBackgroundColor:\n\t\t\tattributes.color && '#' === attributes.color[ 0 ]\n\t\t\t\t? attributes.color\n\t\t\t\t: undefined,\n\t};\n\treturn migrateCustomColorsAndGradients( restAttributes );\n};\n\nconst blockAttributes = {\n\turl: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'a',\n\t\tattribute: 'href',\n\t},\n\ttitle: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'a',\n\t\tattribute: 'title',\n\t},\n\ttext: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'a',\n\t},\n};\n\nconst v11 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'title',\n\t\t},\n\t\ttext: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'a',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'target',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tplaceholder: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tgradient: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\talignWide: false,\n\t\tcolor: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tgradients: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t},\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\treusable: false,\n\t\tspacing: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tpadding: [ 'horizontal', 'vertical' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tpadding: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tradius: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tradius: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalSelector: '.wp-block-button__link',\n\t},\n\tsave( { attributes, className } ) {\n\t\tconst { fontSize, linkTarget, rel, style, text, title, url, width } =\n\t\t\tattributes;\n\n\t\tif ( ! text ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-button__link',\n\t\t\tcolorProps.className,\n\t\t\tborderProps.className,\n\t\t\t{\n\t\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t\t// block support.\n\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t}\n\t\t);\n\t\tconst buttonStyle = {\n\t\t\t...borderProps.style,\n\t\t\t...colorProps.style,\n\t\t\t...spacingProps.style,\n\t\t};\n\n\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\tconst wrapperClasses = classnames( className, {\n\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t\t} );\n\n\t\treturn (\n\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\thref={ url }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\trel={ rel }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t},\n};\n\nconst v10 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'title',\n\t\t},\n\t\ttext: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'a',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'target',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tplaceholder: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tgradient: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t\talignWide: false,\n\t\tcolor: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tgradients: true,\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t},\n\t\treusable: false,\n\t\tspacing: {\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\tpadding: [ 'horizontal', 'vertical' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tpadding: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tradius: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t},\n\t\t__experimentalSelector: '.wp-block-button__link',\n\t},\n\tsave( { attributes, className } ) {\n\t\tconst { fontSize, linkTarget, rel, style, text, title, url, width } =\n\t\t\tattributes;\n\n\t\tif ( ! text ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-button__link',\n\t\t\tcolorProps.className,\n\t\t\tborderProps.className,\n\t\t\t{\n\t\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t\t// block support.\n\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t}\n\t\t);\n\t\tconst buttonStyle = {\n\t\t\t...borderProps.style,\n\t\t\t...colorProps.style,\n\t\t\t...spacingProps.style,\n\t\t};\n\n\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\tconst wrapperClasses = classnames( className, {\n\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t\t} );\n\n\t\treturn (\n\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\thref={ url }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\trel={ rel }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t},\n\tmigrate: migrateFontFamily,\n\tisEligible( { style } ) {\n\t\treturn style?.typography?.fontFamily;\n\t},\n};\n\nconst deprecated = [\n\tv11,\n\tv10,\n\t{\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: {\n\t\t\t\t__experimentalSkipSerialization: true,\n\t\t\t\tgradients: true,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontSize: true,\n\t\t\t\t__experimentalFontFamily: true,\n\t\t\t},\n\t\t\treusable: false,\n\t\t\t__experimentalSelector: '.wp-block-button__link',\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t},\n\t\tisEligible( { style } ) {\n\t\t\treturn typeof style?.border?.radius === 'number';\n\t\t},\n\t\tsave( { attributes, className } ) {\n\t\t\tconst {\n\t\t\t\tfontSize,\n\t\t\t\tlinkTarget,\n\t\t\t\trel,\n\t\t\t\tstyle,\n\t\t\t\ttext,\n\t\t\t\ttitle,\n\t\t\t\turl,\n\t\t\t\twidth,\n\t\t\t} = attributes;\n\n\t\t\tif ( ! text ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst borderRadius = style?.border?.radius;\n\t\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\t\tconst buttonClasses = classnames(\n\t\t\t\t'wp-block-button__link',\n\t\t\t\tcolorProps.className,\n\t\t\t\t{\n\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t}\n\t\t\t);\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius : undefined,\n\t\t\t\t...colorProps.style,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\tconst wrapperClasses = classnames( className, {\n\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t\t[ `has-custom-font-size` ]:\n\t\t\t\t\tfontSize || style?.typography?.fontSize,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: compose( migrateFontFamily, migrateBorderRadius ),\n\t},\n\t{\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: {\n\t\t\t\t__experimentalSkipSerialization: true,\n\t\t\t},\n\t\t\treusable: false,\n\t\t\t__experimentalSelector: '.wp-block-button__link',\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttype: 'object',\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes, className } ) {\n\t\t\tconst { borderRadius, linkTarget, rel, text, title, url, width } =\n\t\t\t\tattributes;\n\t\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\t\tconst buttonClasses = classnames(\n\t\t\t\t'wp-block-button__link',\n\t\t\t\tcolorProps.className,\n\t\t\t\t{\n\t\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t\t}\n\t\t\t);\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t\t...colorProps.style,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\tconst wrapperClasses = classnames( className, {\n\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: compose( migrateFontFamily, migrateBorderRadius ),\n\t},\n\t{\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: {\n\t\t\t\t__experimentalSkipSerialization: true,\n\t\t\t},\n\t\t\treusable: false,\n\t\t\t__experimentalSelector: '.wp-block-button__link',\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttype: 'object',\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes, className } ) {\n\t\t\tconst { borderRadius, linkTarget, rel, text, title, url, width } =\n\t\t\t\tattributes;\n\t\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\t\t\tconst buttonClasses = classnames(\n\t\t\t\t'wp-block-button__link',\n\t\t\t\tcolorProps.className,\n\t\t\t\t{\n\t\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t\t}\n\t\t\t);\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t\t...colorProps.style,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\tconst wrapperClasses = classnames( className, {\n\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: compose( migrateFontFamily, migrateBorderRadius ),\n\t},\n\t{\n\t\tsupports: {\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t\tcolor: { gradients: true },\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttype: 'object',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { borderRadius, linkTarget, rel, text, title, url } =\n\t\t\t\tattributes;\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t} );\n\t\t\tconst buttonStyle = {\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\thref={ url }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\trel={ rel }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t\tmigrate: migrateBorderRadius,\n\t},\n\t{\n\t\tsupports: {\n\t\t\talign: true,\n\t\t\talignWide: false,\n\t\t},\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tborderRadius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomGradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tgradient: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tisEligible: ( attributes ) =>\n\t\t\t!! attributes.customTextColor ||\n\t\t\t!! attributes.customBackgroundColor ||\n\t\t\t!! attributes.customGradient ||\n\t\t\t!! attributes.align,\n\t\tmigrate: compose(\n\t\t\tmigrateBorderRadius,\n\t\t\tmigrateCustomColorsAndGradients,\n\t\t\tmigrateAlign\n\t\t),\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tbackgroundColor,\n\t\t\t\tborderRadius,\n\t\t\t\tcustomBackgroundColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tcustomGradient,\n\t\t\t\tlinkTarget,\n\t\t\t\tgradient,\n\t\t\t\trel,\n\t\t\t\ttext,\n\t\t\t\ttextColor,\n\t\t\t\ttitle,\n\t\t\t\turl,\n\t\t\t} = attributes;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\t\t\tconst backgroundClass =\n\t\t\t\t! customGradient &&\n\t\t\t\tgetColorClassName( 'background-color', backgroundColor );\n\t\t\tconst gradientClass = __experimentalGetGradientClass( gradient );\n\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-background':\n\t\t\t\t\tbackgroundColor ||\n\t\t\t\t\tcustomBackgroundColor ||\n\t\t\t\t\tcustomGradient ||\n\t\t\t\t\tgradient,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t\t'no-border-radius': borderRadius === 0,\n\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t} );\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackground: customGradient ? customGradient : undefined,\n\t\t\t\tbackgroundColor:\n\t\t\t\t\tbackgroundClass || customGradient || gradient\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: customBackgroundColor,\n\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\tborderRadius: borderRadius ? borderRadius + 'px' : undefined,\n\t\t\t};\n\n\t\t\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t\t\t// if it had already been assigned, for the sake of backward-compatibility.\n\t\t\t// A title will no longer be assigned for new or updated button block links.\n\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tlinkTarget: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'target',\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'a',\n\t\t\t\tattribute: 'rel',\n\t\t\t},\n\t\t\tplaceholder: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tisEligible( attribute ) {\n\t\t\treturn (\n\t\t\t\tattribute.className &&\n\t\t\t\tattribute.className.includes( 'is-style-squared' )\n\t\t\t);\n\t\t},\n\t\tmigrate( attributes ) {\n\t\t\tlet newClassName = attributes.className;\n\t\t\tif ( newClassName ) {\n\t\t\t\tnewClassName = newClassName\n\t\t\t\t\t.replace( /is-style-squared[\\s]?/, '' )\n\t\t\t\t\t.trim();\n\t\t\t}\n\t\t\treturn migrateBorderRadius(\n\t\t\t\tmigrateCustomColorsAndGradients( {\n\t\t\t\t\t...attributes,\n\t\t\t\t\tclassName: newClassName ? newClassName : undefined,\n\t\t\t\t\tborderRadius: 0,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tbackgroundColor,\n\t\t\t\tcustomBackgroundColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tlinkTarget,\n\t\t\t\trel,\n\t\t\t\ttext,\n\t\t\t\ttextColor,\n\t\t\t\ttitle,\n\t\t\t\turl,\n\t\t\t} = attributes;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor\n\t\t\t);\n\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-background': backgroundColor || customBackgroundColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t? undefined\n\t\t\t\t\t: customBackgroundColor,\n\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: oldColorsMigration,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\ttext,\n\t\t\t\ttitle,\n\t\t\t\tbackgroundColor,\n\t\t\t\ttextColor,\n\t\t\t\tcustomBackgroundColor,\n\t\t\t\tcustomTextColor,\n\t\t\t} = attributes;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor\n\t\t\t);\n\n\t\t\tconst buttonClasses = classnames( 'wp-block-button__link', {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-background': backgroundColor || customBackgroundColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t? undefined\n\t\t\t\t\t: customBackgroundColor,\n\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t<div>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcolor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { url, text, title, align, color, textColor } = attributes;\n\n\t\t\tconst buttonStyle = {\n\t\t\t\tbackgroundColor: color,\n\t\t\t\tcolor: textColor,\n\t\t\t};\n\n\t\t\tconst linkClass = 'wp-block-button__link';\n\n\t\t\treturn (\n\t\t\t\t<div className={ `align${ align }` }>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ buttonStyle }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: oldColorsMigration,\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcolor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { url, text, title, align, color, textColor } = attributes;\n\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ `align${ align }` }\n\t\t\t\t\tstyle={ { backgroundColor: color } }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\thref={ url }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tstyle={ { color: textColor } }\n\t\t\t\t\t\tvalue={ text }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t\tmigrate: oldColorsMigration,\n\t},\n];\n\nexport default deprecated;\n"]}
@@ -9,8 +9,6 @@ exports.default = void 0;
9
9
 
10
10
  var _element = require("@wordpress/element");
11
11
 
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
12
  var _classnames = _interopRequireDefault(require("classnames"));
15
13
 
16
14
  var _i18n = require("@wordpress/i18n");
@@ -152,12 +150,12 @@ function ButtonEdit(props) {
152
150
  setIsEditingURL(false);
153
151
  }
154
152
  }, [isSelected]);
155
- return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("div", (0, _extends2.default)({}, blockProps, {
153
+ return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("div", { ...blockProps,
156
154
  className: (0, _classnames.default)(blockProps.className, {
157
155
  [`has-custom-width wp-block-button__width-${width}`]: width,
158
156
  [`has-custom-font-size`]: blockProps.style.fontSize
159
157
  })
160
- }), (0, _element.createElement)(_blockEditor.RichText, {
158
+ }, (0, _element.createElement)(_blockEditor.RichText, {
161
159
  ref: richTextRef,
162
160
  "aria-label": (0, _i18n.__)('Button text'),
163
161
  placeholder: placeholder || (0, _i18n.__)('Add text…'),
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/button/edit.js"],"names":["NEW_TAB_REL","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","map","widthValue","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","textAlign","linkTarget","placeholder","rel","style","text","url","onToggleOpenInNewTab","value","newLinkTarget","updatedRel","setButtonText","newText","replace","onKeyDown","event","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","preventDefault","fontSize","border","radius","nextAlign","link","displayShortcut","linkOff","newURL","newOpensInNewTab","newRel"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { prependHTTP } from '@wordpress/url';\n\nconst NEW_TAB_REL = 'noreferrer noopener';\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst { textAlign, linkTarget, placeholder, rel, style, text, url, width } =\n\t\tattributes;\n\n\tfunction onToggleOpenInNewTab( value ) {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel = rel;\n\t\tif ( newLinkTarget && ! rel ) {\n\t\t\tupdatedRel = NEW_TAB_REL;\n\t\t} else if ( ! newLinkTarget && rel === NEW_TAB_REL ) {\n\t\t\tupdatedRel = undefined;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t} );\n\t}\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === '_blank';\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\tvalue={ { url, opensInNewTab } }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL = '',\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: prependHTTP( newURL ) } );\n\n\t\t\t\t\t\t\tif ( opensInNewTab !== newOpensInNewTab ) {\n\t\t\t\t\t\t\t\tonToggleOpenInNewTab( newOpensInNewTab );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ ( newRel ) => setAttributes( { rel: newRel } ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/button/edit.js"],"names":["NEW_TAB_REL","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","map","widthValue","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","textAlign","linkTarget","placeholder","rel","style","text","url","onToggleOpenInNewTab","value","newLinkTarget","updatedRel","setButtonText","newText","replace","onKeyDown","event","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","preventDefault","fontSize","border","radius","nextAlign","link","displayShortcut","linkOff","newURL","newOpensInNewTab","newRel"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { prependHTTP } from '@wordpress/url';\n\nconst NEW_TAB_REL = 'noreferrer noopener';\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst { textAlign, linkTarget, placeholder, rel, style, text, url, width } =\n\t\tattributes;\n\n\tfunction onToggleOpenInNewTab( value ) {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel = rel;\n\t\tif ( newLinkTarget && ! rel ) {\n\t\t\tupdatedRel = NEW_TAB_REL;\n\t\t} else if ( ! newLinkTarget && rel === NEW_TAB_REL ) {\n\t\t\tupdatedRel = undefined;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t} );\n\t}\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === '_blank';\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\tvalue={ { url, opensInNewTab } }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL = '',\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: prependHTTP( newURL ) } );\n\n\t\t\t\t\t\t\tif ( opensInNewTab !== newOpensInNewTab ) {\n\t\t\t\t\t\t\t\tonToggleOpenInNewTab( newOpensInNewTab );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ ( newRel ) => setAttributes( { rel: newRel } ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"]}
@@ -60,9 +60,10 @@ function save({
60
60
  [`has-custom-width wp-block-button__width-${width}`]: width,
61
61
  [`has-custom-font-size`]: fontSize || style?.typography?.fontSize
62
62
  });
63
- return (0, _element.createElement)("div", _blockEditor.useBlockProps.save({
64
- className: wrapperClasses
65
- }), (0, _element.createElement)(_blockEditor.RichText.Content, {
63
+ return (0, _element.createElement)("div", { ..._blockEditor.useBlockProps.save({
64
+ className: wrapperClasses
65
+ })
66
+ }, (0, _element.createElement)(_blockEditor.RichText.Content, {
66
67
  tagName: "a",
67
68
  className: buttonClasses,
68
69
  href: url,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/button/save.js"],"names":["save","attributes","className","textAlign","fontSize","linkTarget","rel","style","text","title","url","width","borderProps","colorProps","spacingProps","buttonClasses","border","radius","buttonStyle","wrapperClasses","typography","useBlockProps"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAUe,SAASA,IAAT,CAAe;AAAEC,EAAAA,UAAF;AAAcC,EAAAA;AAAd,CAAf,EAA2C;AACzD,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,QAFK;AAGLC,IAAAA,UAHK;AAILC,IAAAA,GAJK;AAKLC,IAAAA,KALK;AAMLC,IAAAA,IANK;AAOLC,IAAAA,KAPK;AAQLC,IAAAA,GARK;AASLC,IAAAA;AATK,MAUFV,UAVJ;;AAYA,MAAK,CAAEO,IAAP,EAAc;AACb,WAAO,IAAP;AACA;;AAED,QAAMI,WAAW,GAAG,0DAA2BX,UAA3B,CAApB;AACA,QAAMY,UAAU,GAAG,yDAA0BZ,UAA1B,CAAnB;AACA,QAAMa,YAAY,GAAG,2DAA4Bb,UAA5B,CAArB;AACA,QAAMc,aAAa,GAAG,yBACrB,uBADqB,EAErBF,UAAU,CAACX,SAFU,EAGrBU,WAAW,CAACV,SAHS,EAIrB;AACC,KAAG,kBAAkBC,SAAW,EAAhC,GAAqCA,SADtC;AAEC;AACA;AACA,wBAAoBI,KAAK,EAAES,MAAP,EAAeC,MAAf,KAA0B;AAJ/C,GAJqB,EAUrB,oDAAmC,QAAnC,CAVqB,CAAtB;AAYA,QAAMC,WAAW,GAAG,EACnB,GAAGN,WAAW,CAACL,KADI;AAEnB,OAAGM,UAAU,CAACN,KAFK;AAGnB,OAAGO,YAAY,CAACP;AAHG,GAApB,CAhCyD,CAsCzD;AACA;AACA;;AAEA,QAAMY,cAAc,GAAG,yBAAYjB,SAAZ,EAAuB;AAC7C,KAAG,2CAA2CS,KAAO,EAArD,GAA0DA,KADb;AAE7C,KAAG,sBAAH,GAA4BP,QAAQ,IAAIG,KAAK,EAAEa,UAAP,EAAmBhB;AAFd,GAAvB,CAAvB;AAKA,SACC,mCAAUiB,2BAAcrB,IAAd,CAAoB;AAAEE,IAAAA,SAAS,EAAEiB;AAAb,GAApB,CAAV,EACC,4BAAC,qBAAD,CAAU,OAAV;AACC,IAAA,OAAO,EAAC,GADT;AAEC,IAAA,SAAS,EAAGJ,aAFb;AAGC,IAAA,IAAI,EAAGL,GAHR;AAIC,IAAA,KAAK,EAAGD,KAJT;AAKC,IAAA,KAAK,EAAGS,WALT;AAMC,IAAA,KAAK,EAAGV,IANT;AAOC,IAAA,MAAM,EAAGH,UAPV;AAQC,IAAA,GAAG,EAAGC;AARP,IADD,CADD;AAcA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\nexport default function save( { attributes, className } ) {\n\tconst {\n\t\ttextAlign,\n\t\tfontSize,\n\t\tlinkTarget,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\ttitle,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tif ( ! text ) {\n\t\treturn null;\n\t}\n\n\tconst borderProps = getBorderClassesAndStyles( attributes );\n\tconst colorProps = getColorClassesAndStyles( attributes );\n\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\tconst buttonClasses = classnames(\n\t\t'wp-block-button__link',\n\t\tcolorProps.className,\n\t\tborderProps.className,\n\t\t{\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t// block support.\n\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t},\n\t\t__experimentalGetElementClassName( 'button' )\n\t);\n\tconst buttonStyle = {\n\t\t...borderProps.style,\n\t\t...colorProps.style,\n\t\t...spacingProps.style,\n\t};\n\n\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t// if it had already been assigned, for the sake of backward-compatibility.\n\t// A title will no longer be assigned for new or updated button block links.\n\n\tconst wrapperClasses = classnames( className, {\n\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t} );\n\n\treturn (\n\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t<RichText.Content\n\t\t\t\ttagName=\"a\"\n\t\t\t\tclassName={ buttonClasses }\n\t\t\t\thref={ url }\n\t\t\t\ttitle={ title }\n\t\t\t\tstyle={ buttonStyle }\n\t\t\t\tvalue={ text }\n\t\t\t\ttarget={ linkTarget }\n\t\t\t\trel={ rel }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/button/save.js"],"names":["save","attributes","className","textAlign","fontSize","linkTarget","rel","style","text","title","url","width","borderProps","colorProps","spacingProps","buttonClasses","border","radius","buttonStyle","wrapperClasses","typography","useBlockProps"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAUe,SAASA,IAAT,CAAe;AAAEC,EAAAA,UAAF;AAAcC,EAAAA;AAAd,CAAf,EAA2C;AACzD,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,QAFK;AAGLC,IAAAA,UAHK;AAILC,IAAAA,GAJK;AAKLC,IAAAA,KALK;AAMLC,IAAAA,IANK;AAOLC,IAAAA,KAPK;AAQLC,IAAAA,GARK;AASLC,IAAAA;AATK,MAUFV,UAVJ;;AAYA,MAAK,CAAEO,IAAP,EAAc;AACb,WAAO,IAAP;AACA;;AAED,QAAMI,WAAW,GAAG,0DAA2BX,UAA3B,CAApB;AACA,QAAMY,UAAU,GAAG,yDAA0BZ,UAA1B,CAAnB;AACA,QAAMa,YAAY,GAAG,2DAA4Bb,UAA5B,CAArB;AACA,QAAMc,aAAa,GAAG,yBACrB,uBADqB,EAErBF,UAAU,CAACX,SAFU,EAGrBU,WAAW,CAACV,SAHS,EAIrB;AACC,KAAG,kBAAkBC,SAAW,EAAhC,GAAqCA,SADtC;AAEC;AACA;AACA,wBAAoBI,KAAK,EAAES,MAAP,EAAeC,MAAf,KAA0B;AAJ/C,GAJqB,EAUrB,oDAAmC,QAAnC,CAVqB,CAAtB;AAYA,QAAMC,WAAW,GAAG,EACnB,GAAGN,WAAW,CAACL,KADI;AAEnB,OAAGM,UAAU,CAACN,KAFK;AAGnB,OAAGO,YAAY,CAACP;AAHG,GAApB,CAhCyD,CAsCzD;AACA;AACA;;AAEA,QAAMY,cAAc,GAAG,yBAAYjB,SAAZ,EAAuB;AAC7C,KAAG,2CAA2CS,KAAO,EAArD,GAA0DA,KADb;AAE7C,KAAG,sBAAH,GAA4BP,QAAQ,IAAIG,KAAK,EAAEa,UAAP,EAAmBhB;AAFd,GAAvB,CAAvB;AAKA,SACC,wCAAUiB,2BAAcrB,IAAd,CAAoB;AAAEE,MAAAA,SAAS,EAAEiB;AAAb,KAApB;AAAV,KACC,4BAAC,qBAAD,CAAU,OAAV;AACC,IAAA,OAAO,EAAC,GADT;AAEC,IAAA,SAAS,EAAGJ,aAFb;AAGC,IAAA,IAAI,EAAGL,GAHR;AAIC,IAAA,KAAK,EAAGD,KAJT;AAKC,IAAA,KAAK,EAAGS,WALT;AAMC,IAAA,KAAK,EAAGV,IANT;AAOC,IAAA,MAAM,EAAGH,UAPV;AAQC,IAAA,GAAG,EAAGC;AARP,IADD,CADD;AAcA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\nexport default function save( { attributes, className } ) {\n\tconst {\n\t\ttextAlign,\n\t\tfontSize,\n\t\tlinkTarget,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\ttitle,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tif ( ! text ) {\n\t\treturn null;\n\t}\n\n\tconst borderProps = getBorderClassesAndStyles( attributes );\n\tconst colorProps = getColorClassesAndStyles( attributes );\n\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\tconst buttonClasses = classnames(\n\t\t'wp-block-button__link',\n\t\tcolorProps.className,\n\t\tborderProps.className,\n\t\t{\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t// block support.\n\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t},\n\t\t__experimentalGetElementClassName( 'button' )\n\t);\n\tconst buttonStyle = {\n\t\t...borderProps.style,\n\t\t...colorProps.style,\n\t\t...spacingProps.style,\n\t};\n\n\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t// if it had already been assigned, for the sake of backward-compatibility.\n\t// A title will no longer be assigned for new or updated button block links.\n\n\tconst wrapperClasses = classnames( className, {\n\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t} );\n\n\treturn (\n\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t<RichText.Content\n\t\t\t\ttagName=\"a\"\n\t\t\t\tclassName={ buttonClasses }\n\t\t\t\thref={ url }\n\t\t\t\ttitle={ title }\n\t\t\t\tstyle={ buttonStyle }\n\t\t\t\tvalue={ text }\n\t\t\t\ttarget={ linkTarget }\n\t\t\t\trel={ rel }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"]}
@@ -86,12 +86,13 @@ const deprecated = [{
86
86
  orientation
87
87
  }
88
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'
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
+ })
93
94
  })
94
- }), (0, _element.createElement)(_blockEditor.InnerBlocks.Content, null));
95
+ }, (0, _element.createElement)(_blockEditor.InnerBlocks.Content, null));
95
96
  }
96
97
 
97
98
  }, {
@@ -1 +1 @@
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 { contentJustification, orientation, ...updatedAttributes } =\n\t\tattributes;\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 }` ]:\n\t\t\t\t\t\t\t\tcontentJustification,\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
+ {"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":";;;;;;;;;;;AAGA;;AAIA;;AAPA;AACA;AACA;;AAEA;AACA;AACA;;AAGA;AACA;AACA;AACA,MAAMA,iBAAiB,GAAKC,UAAF,IAAkB;AAC3C,MAAK,CAAC,CAAEA,UAAU,CAACC,MAAnB,EAA4B;AAC3B,WAAOD,UAAP;AACA;;AAED,QAAM;AAAEE,IAAAA,oBAAF;AAAwBC,IAAAA,WAAxB;AAAqC,OAAGC;AAAxC,MACLJ,UADD;;AAGA,MAAKE,oBAAoB,IAAIC,WAA7B,EAA2C;AAC1CE,IAAAA,MAAM,CAACC,MAAP,CAAeF,iBAAf,EAAkC;AACjCH,MAAAA,MAAM,EAAE;AACPM,QAAAA,IAAI,EAAE,MADC;AAEP,YAAKL,oBAAoB,IAAI;AAC5BM,UAAAA,cAAc,EAAEN;AADY,SAA7B,CAFO;AAKP,YAAKC,WAAW,IAAI;AAAEA,UAAAA;AAAF,SAApB;AALO;AADyB,KAAlC;AASA;;AAED,SAAOC,iBAAP;AACA,CArBD;;AAuBA,MAAMK,UAAU,GAAG,CAClB;AACCT,EAAAA,UAAU,EAAE;AACXE,IAAAA,oBAAoB,EAAE;AACrBK,MAAAA,IAAI,EAAE;AADe,KADX;AAIXJ,IAAAA,WAAW,EAAE;AACZI,MAAAA,IAAI,EAAE,QADM;AAEZG,MAAAA,OAAO,EAAE;AAFG;AAJF,GADb;AAUCC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,MAAM,EAAE,IADC;AAETC,IAAAA,KAAK,EAAE,CAAE,MAAF,EAAU,MAAV,CAFE;AAGTC,IAAAA,sCAAsC,EAAE,IAH/B;AAITC,IAAAA,OAAO,EAAE;AACRC,MAAAA,QAAQ,EAAE,IADF;AAERC,MAAAA,MAAM,EAAE,CAAE,KAAF,EAAS,QAAT,CAFA;AAGRC,MAAAA,6BAA6B,EAAE;AAC9BF,QAAAA,QAAQ,EAAE;AADoB;AAHvB;AAJA,GAVX;AAsBCG,EAAAA,UAAU,EAAE,CAAE;AAAEjB,IAAAA,oBAAF;AAAwBC,IAAAA;AAAxB,GAAF,KACX,CAAC,CAAED,oBAAH,IAA2B,CAAC,CAAEC,WAvBhC;AAwBCiB,EAAAA,OAAO,EAAErB,iBAxBV;;AAyBCsB,EAAAA,IAAI,CAAE;AAAErB,IAAAA,UAAU,EAAE;AAAEE,MAAAA,oBAAF;AAAwBC,MAAAA;AAAxB;AAAd,GAAF,EAA0D;AAC7D,WACC,wCACMmB,2BAAcD,IAAd,CAAoB;AACxBE,QAAAA,SAAS,EAAE,yBAAY;AACtB,WAAG,4BAA4BrB,oBAAsB,EAArD,GACCA,oBAFqB;AAGtB,yBAAeC,WAAW,KAAK;AAHT,SAAZ;AADa,OAApB;AADN,OASC,4BAAC,wBAAD,CAAa,OAAb,OATD,CADD;AAaA;;AAvCF,CADkB,EA0ClB;AACCQ,EAAAA,QAAQ,EAAE;AACTE,IAAAA,KAAK,EAAE,CAAE,QAAF,EAAY,MAAZ,EAAoB,OAApB,CADE;AAETD,IAAAA,MAAM,EAAE;AAFC,GADX;;AAKCS,EAAAA,IAAI,GAAG;AACN,WACC,yCACC,4BAAC,wBAAD,CAAa,OAAb,OADD,CADD;AAKA,GAXF;;AAYCF,EAAAA,UAAU,CAAE;AAAEN,IAAAA;AAAF,GAAF,EAAc;AACvB,WAAOA,KAAK,IAAI,CAAE,QAAF,EAAY,MAAZ,EAAoB,OAApB,EAA8BW,QAA9B,CAAwCX,KAAxC,CAAhB;AACA,GAdF;;AAeCO,EAAAA,OAAO,CAAEpB,UAAF,EAAe;AACrB,WAAOD,iBAAiB,CAAE,EACzB,GAAGC,UADsB;AAEzBa,MAAAA,KAAK,EAAEY,SAFkB;AAGzB;AACA;AACA;AACA;AACA;AACA;AACAvB,MAAAA,oBAAoB,EAAEF,UAAU,CAACa;AATR,KAAF,CAAxB;AAWA;;AA3BF,CA1CkB,CAAnB;eAyEeJ,U","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 { contentJustification, orientation, ...updatedAttributes } =\n\t\tattributes;\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 }` ]:\n\t\t\t\t\t\t\t\tcontentJustification,\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"]}
@@ -38,8 +38,11 @@ function ButtonsEdit({
38
38
  attributes,
39
39
  className
40
40
  }) {
41
+ var _layout$orientation;
42
+
41
43
  const {
42
44
  fontSize,
45
+ layout,
43
46
  style
44
47
  } = attributes;
45
48
  const blockProps = (0, _blockEditor.useBlockProps)({
@@ -59,9 +62,11 @@ function ButtonsEdit({
59
62
  template: [[_button.name, {
60
63
  className: preferredStyle && `is-style-${preferredStyle}`
61
64
  }]],
62
- templateInsertUpdatesSelection: true
65
+ templateInsertUpdatesSelection: true,
66
+ orientation: (_layout$orientation = layout?.orientation) !== null && _layout$orientation !== void 0 ? _layout$orientation : 'horizontal'
67
+ });
68
+ return (0, _element.createElement)("div", { ...innerBlocksProps
63
69
  });
64
- return (0, _element.createElement)("div", innerBlocksProps);
65
70
  }
66
71
 
67
72
  var _default = ButtonsEdit;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/buttons/edit.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","DEFAULT_BLOCK","name","attributesToCopy","ButtonsEdit","attributes","className","fontSize","style","blockProps","typography","preferredStyle","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","value","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","template","templateInsertUpdatesSelection"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AAKA;;AAKA;;AAlBA;AACA;AACA;;AAGA;AACA;AACA;;AAQA;AACA;AACA;AAGA,MAAMA,cAAc,GAAG,CAAEC,YAAF,CAAvB;AAEA,MAAMC,aAAa,GAAG;AACrBC,EAAAA,IAAI,EAAEF,YADe;AAErBG,EAAAA,gBAAgB,EAAE,CACjB,iBADiB,EAEjB,QAFiB,EAGjB,WAHiB,EAIjB,YAJiB,EAKjB,UALiB,EAMjB,UANiB,EAOjB,OAPiB,EAQjB,WARiB,EASjB,OATiB;AAFG,CAAtB;;AAeA,SAASC,WAAT,CAAsB;AAAEC,EAAAA,UAAF;AAAcC,EAAAA;AAAd,CAAtB,EAAkD;AACjD,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAAsBH,UAA5B;AACA,QAAMI,UAAU,GAAG,gCAAe;AACjCH,IAAAA,SAAS,EAAE,yBAAYA,SAAZ,EAAuB;AACjC,8BAAwBC,QAAQ,IAAIC,KAAK,EAAEE,UAAP,EAAmBH;AADtB,KAAvB;AADsB,GAAf,CAAnB;AAKA,QAAMI,cAAc,GAAG,qBAAaC,MAAF,IAAc;AAC/C,UAAMC,wBAAwB,GAC7BD,MAAM,CAAEE,kBAAF,CAAN,CAA2BC,WAA3B,GACEC,sCAFH;;AAGA,WAAOH,wBAAwB,EAAEI,KAA1B,GAAmCjB,YAAnC,CAAP;AACA,GALsB,EAKpB,EALoB,CAAvB;AAOA,QAAMkB,gBAAgB,GAAG,sCAAqBT,UAArB,EAAiC;AACzDU,IAAAA,aAAa,EAAEpB,cAD0C;AAEzDqB,IAAAA,0BAA0B,EAAEnB,aAF6B;AAGzDoB,IAAAA,0BAA0B,EAAE,IAH6B;AAIzDC,IAAAA,QAAQ,EAAE,CACT,CACCtB,YADD,EAEC;AAAEM,MAAAA,SAAS,EAAEK,cAAc,IAAK,YAAYA,cAAgB;AAA5D,KAFD,CADS,CAJ+C;AAWzDY,IAAAA,8BAA8B,EAAE;AAXyB,GAAjC,CAAzB;AAcA,SAAO,mCAAUL,gBAAV,CAAP;AACA;;eAEcd,W","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\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\nconst DEFAULT_BLOCK = {\n\tname: buttonBlockName,\n\tattributesToCopy: [\n\t\t'backgroundColor',\n\t\t'border',\n\t\t'className',\n\t\t'fontFamily',\n\t\t'fontSize',\n\t\t'gradient',\n\t\t'style',\n\t\t'textColor',\n\t\t'width',\n\t],\n};\n\nfunction ButtonsEdit( { attributes, className } ) {\n\tconst { fontSize, style } = attributes;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( className, {\n\t\t\t'has-custom-font-size': fontSize || style?.typography?.fontSize,\n\t\t} ),\n\t} );\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalPreferredStyleVariations;\n\t\treturn preferredStyleVariations?.value?.[ buttonBlockName ];\n\t}, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t__experimentalDirectInsert: true,\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\n\t\ttemplateInsertUpdatesSelection: true,\n\t} );\n\n\treturn <div { ...innerBlocksProps } />;\n}\n\nexport default ButtonsEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/buttons/edit.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","DEFAULT_BLOCK","name","attributesToCopy","ButtonsEdit","attributes","className","fontSize","layout","style","blockProps","typography","preferredStyle","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","value","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","template","templateInsertUpdatesSelection","orientation"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AAKA;;AAKA;;AAlBA;AACA;AACA;;AAGA;AACA;AACA;;AAQA;AACA;AACA;AAGA,MAAMA,cAAc,GAAG,CAAEC,YAAF,CAAvB;AAEA,MAAMC,aAAa,GAAG;AACrBC,EAAAA,IAAI,EAAEF,YADe;AAErBG,EAAAA,gBAAgB,EAAE,CACjB,iBADiB,EAEjB,QAFiB,EAGjB,WAHiB,EAIjB,YAJiB,EAKjB,UALiB,EAMjB,UANiB,EAOjB,OAPiB,EAQjB,WARiB,EASjB,OATiB;AAFG,CAAtB;;AAeA,SAASC,WAAT,CAAsB;AAAEC,EAAAA,UAAF;AAAcC,EAAAA;AAAd,CAAtB,EAAkD;AAAA;;AACjD,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,MAAZ;AAAoBC,IAAAA;AAApB,MAA8BJ,UAApC;AACA,QAAMK,UAAU,GAAG,gCAAe;AACjCJ,IAAAA,SAAS,EAAE,yBAAYA,SAAZ,EAAuB;AACjC,8BAAwBC,QAAQ,IAAIE,KAAK,EAAEE,UAAP,EAAmBJ;AADtB,KAAvB;AADsB,GAAf,CAAnB;AAKA,QAAMK,cAAc,GAAG,qBAAaC,MAAF,IAAc;AAC/C,UAAMC,wBAAwB,GAC7BD,MAAM,CAAEE,kBAAF,CAAN,CAA2BC,WAA3B,GACEC,sCAFH;;AAGA,WAAOH,wBAAwB,EAAEI,KAA1B,GAAmClB,YAAnC,CAAP;AACA,GALsB,EAKpB,EALoB,CAAvB;AAOA,QAAMmB,gBAAgB,GAAG,sCAAqBT,UAArB,EAAiC;AACzDU,IAAAA,aAAa,EAAErB,cAD0C;AAEzDsB,IAAAA,0BAA0B,EAAEpB,aAF6B;AAGzDqB,IAAAA,0BAA0B,EAAE,IAH6B;AAIzDC,IAAAA,QAAQ,EAAE,CACT,CACCvB,YADD,EAEC;AAAEM,MAAAA,SAAS,EAAEM,cAAc,IAAK,YAAYA,cAAgB;AAA5D,KAFD,CADS,CAJ+C;AAUzDY,IAAAA,8BAA8B,EAAE,IAVyB;AAWzDC,IAAAA,WAAW,yBAAEjB,MAAM,EAAEiB,WAAV,qEAAyB;AAXqB,GAAjC,CAAzB;AAcA,SAAO,wCAAUN;AAAV,IAAP;AACA;;eAEcf,W","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\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\nconst DEFAULT_BLOCK = {\n\tname: buttonBlockName,\n\tattributesToCopy: [\n\t\t'backgroundColor',\n\t\t'border',\n\t\t'className',\n\t\t'fontFamily',\n\t\t'fontSize',\n\t\t'gradient',\n\t\t'style',\n\t\t'textColor',\n\t\t'width',\n\t],\n};\n\nfunction ButtonsEdit( { attributes, className } ) {\n\tconst { fontSize, layout, style } = attributes;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( className, {\n\t\t\t'has-custom-font-size': fontSize || style?.typography?.fontSize,\n\t\t} ),\n\t} );\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalPreferredStyleVariations;\n\t\treturn preferredStyleVariations?.value?.[ buttonBlockName ];\n\t}, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t__experimentalDirectInsert: true,\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\ttemplateInsertUpdatesSelection: true,\n\t\torientation: layout?.orientation ?? 'horizontal',\n\t} );\n\n\treturn <div { ...innerBlocksProps } />;\n}\n\nexport default ButtonsEdit;\n"]}
@@ -41,6 +41,9 @@ const layoutProp = {
41
41
  type: 'default',
42
42
  alignments: []
43
43
  };
44
+ const POPOVER_PROPS = {
45
+ placement: 'bottom-start'
46
+ };
44
47
 
45
48
  function ButtonsEdit({
46
49
  attributes: {
@@ -59,7 +62,7 @@ function ButtonsEdit({
59
62
  marginLeft: spacing
60
63
  } = _editor.default.spacing; // Extract attributes from block layout
61
64
 
62
- const layoutBlockSupport = (0, _blocks.getBlockSupport)(name, '__experimentalLayout');
65
+ const layoutBlockSupport = (0, _blocks.getBlockSupport)(name, 'layout');
63
66
  const defaultBlockLayout = layoutBlockSupport?.default;
64
67
  const usedLayout = layout || defaultBlockLayout || {};
65
68
  const {
@@ -138,10 +141,7 @@ function ButtonsEdit({
138
141
  justifyContent: value
139
142
  }
140
143
  }),
141
- popoverProps: {
142
- position: 'bottom right',
143
- variant: 'toolbar'
144
- }
144
+ popoverProps: POPOVER_PROPS
145
145
  })), resizeObserver, (0, _element.createElement)(_blockEditor.InnerBlocks, {
146
146
  allowedBlocks: ALLOWED_BLOCKS,
147
147
  template: [[_button.name, {
@@ -156,7 +156,7 @@ function ButtonsEdit({
156
156
  ,
157
157
  marginHorizontal: spacing,
158
158
  marginVertical: spacing,
159
- __experimentalLayout: layoutProp,
159
+ layout: layoutProp,
160
160
  templateInsertUpdatesSelection: true,
161
161
  blockWidth: blockWidth
162
162
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/buttons/edit.native.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","layoutProp","type","alignments","ButtonsEdit","attributes","layout","align","clientId","isSelected","setAttributes","blockWidth","name","resizeObserver","sizes","maxWidth","setMaxWidth","marginLeft","spacing","styles","layoutBlockSupport","defaultBlockLayout","default","usedLayout","justifyContent","isInnerButtonSelected","shouldDelete","select","getBlockCount","getBlockParents","getSelectedBlockClientId","blockEditorStore","selectedBlockClientId","selectedBlockParents","preferredStyle","preferredStyleVariations","getSettings","__experimentalPreferredStyleVariations","value","getBlockOrder","insertBlock","removeBlock","selectBlock","width","isFullWidth","alignmentHelpers","isFullWidthBlock","onAddNextButton","selectedId","order","selectedButtonIndex","findIndex","i","index","length","insertedBlock","renderFooterAppender","appenderContainer","justifyControls","remove","shouldRenderFooterAppender","position","variant","className","current","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tJustifyContentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { createBlock, getBlockSupport } from '@wordpress/blocks';\nimport { debounce, useResizeObserver } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useState, useEffect, useRef, useCallback } from '@wordpress/element';\nimport { alignmentHelpers } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { name as buttonBlockName } from '../button/';\nimport styles from './editor.scss';\n\nconst ALLOWED_BLOCKS = [ buttonBlockName ];\n\nconst layoutProp = { type: 'default', alignments: [] };\n\nexport default function ButtonsEdit( {\n\tattributes: { layout, align },\n\tclientId,\n\tisSelected,\n\tsetAttributes,\n\tblockWidth,\n\tname,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst [ maxWidth, setMaxWidth ] = useState( 0 );\n\tconst { marginLeft: spacing } = styles.spacing;\n\n\t// Extract attributes from block layout\n\tconst layoutBlockSupport = getBlockSupport( name, '__experimentalLayout' );\n\tconst defaultBlockLayout = layoutBlockSupport?.default;\n\tconst usedLayout = layout || defaultBlockLayout || {};\n\tconst { justifyContent } = usedLayout;\n\n\tconst { isInnerButtonSelected, shouldDelete } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockCount, getBlockParents, getSelectedBlockClientId } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\t\tconst selectedBlockParents = getBlockParents(\n\t\t\t\tselectedBlockClientId,\n\t\t\t\ttrue\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tisInnerButtonSelected: selectedBlockParents[ 0 ] === clientId,\n\t\t\t\t// The purpose of `shouldDelete` check is giving the ability to\n\t\t\t\t// pass to mobile toolbar function called `onDelete` which removes\n\t\t\t\t// the whole `Buttons` container along with the last inner button\n\t\t\t\t// when there is exactly one button.\n\t\t\t\tshouldDelete: getBlockCount( clientId ) === 1,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalPreferredStyleVariations;\n\t\treturn preferredStyleVariations?.value?.[ buttonBlockName ];\n\t}, [] );\n\n\tconst { getBlockOrder } = useSelect( blockEditorStore );\n\tconst { insertBlock, removeBlock, selectBlock } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tconst { width } = sizes || {};\n\t\tconst { isFullWidth } = alignmentHelpers;\n\n\t\tif ( width ) {\n\t\t\tconst isFullWidthBlock = isFullWidth( align );\n\t\t\tsetMaxWidth( isFullWidthBlock ? blockWidth : width );\n\t\t}\n\t}, [ sizes, align ] );\n\n\tconst onAddNextButton = useCallback(\n\t\tdebounce( ( selectedId ) => {\n\t\t\tconst order = getBlockOrder( clientId );\n\t\t\tconst selectedButtonIndex = order.findIndex(\n\t\t\t\t( i ) => i === selectedId\n\t\t\t);\n\n\t\t\tconst index =\n\t\t\t\tselectedButtonIndex === -1\n\t\t\t\t\t? order.length + 1\n\t\t\t\t\t: selectedButtonIndex;\n\n\t\t\tconst insertedBlock = createBlock( 'core/button' );\n\n\t\t\tinsertBlock( insertedBlock, index, clientId, false );\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t}, 200 ),\n\t\t[]\n\t);\n\n\tconst renderFooterAppender = useRef( () => (\n\t\t<View style={ styles.appenderContainer }>\n\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\tisFloating={ true }\n\t\t\t\tonAddBlock={ onAddNextButton }\n\t\t\t/>\n\t\t</View>\n\t) );\n\n\tconst justifyControls = [ 'left', 'center', 'right' ];\n\n\tconst remove = useCallback( () => removeBlock( clientId ), [ clientId ] );\n\tconst shouldRenderFooterAppender = isSelected || isInnerButtonSelected;\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<JustifyContentControl\n\t\t\t\t\t\tallowedControls={ justifyControls }\n\t\t\t\t\t\tvalue={ justifyContent }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t\t\t...usedLayout,\n\t\t\t\t\t\t\t\t\tjustifyContent: value,\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\tpopoverProps={ {\n\t\t\t\t\t\t\tposition: 'bottom right',\n\t\t\t\t\t\t\tvariant: 'toolbar',\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ resizeObserver }\n\t\t\t<InnerBlocks\n\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\ttemplate={ [\n\t\t\t\t\t[\n\t\t\t\t\t\tbuttonBlockName,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\tpreferredStyle &&\n\t\t\t\t\t\t\t\t`is-style-${ preferredStyle }`,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t] }\n\t\t\t\trenderFooterAppender={\n\t\t\t\t\tshouldRenderFooterAppender && renderFooterAppender.current\n\t\t\t\t}\n\t\t\t\torientation=\"horizontal\"\n\t\t\t\thorizontalAlignment={ justifyContent }\n\t\t\t\tonDeleteBlock={ shouldDelete ? remove : undefined }\n\t\t\t\tonAddBlock={ onAddNextButton }\n\t\t\t\tparentWidth={ maxWidth } // This value controls the width of that the buttons are able to expand to.\n\t\t\t\tmarginHorizontal={ spacing }\n\t\t\t\tmarginVertical={ spacing }\n\t\t\t\t__experimentalLayout={ layoutProp }\n\t\t\t\ttemplateInsertUpdatesSelection\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/buttons/edit.native.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","layoutProp","type","alignments","POPOVER_PROPS","placement","ButtonsEdit","attributes","layout","align","clientId","isSelected","setAttributes","blockWidth","name","resizeObserver","sizes","maxWidth","setMaxWidth","marginLeft","spacing","styles","layoutBlockSupport","defaultBlockLayout","default","usedLayout","justifyContent","isInnerButtonSelected","shouldDelete","select","getBlockCount","getBlockParents","getSelectedBlockClientId","blockEditorStore","selectedBlockClientId","selectedBlockParents","preferredStyle","preferredStyleVariations","getSettings","__experimentalPreferredStyleVariations","value","getBlockOrder","insertBlock","removeBlock","selectBlock","width","isFullWidth","alignmentHelpers","isFullWidthBlock","onAddNextButton","selectedId","order","selectedButtonIndex","findIndex","i","index","length","insertedBlock","renderFooterAppender","appenderContainer","justifyControls","remove","shouldRenderFooterAppender","className","current","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tJustifyContentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { createBlock, getBlockSupport } from '@wordpress/blocks';\nimport { debounce, useResizeObserver } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useState, useEffect, useRef, useCallback } from '@wordpress/element';\nimport { alignmentHelpers } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { name as buttonBlockName } from '../button/';\nimport styles from './editor.scss';\n\nconst ALLOWED_BLOCKS = [ buttonBlockName ];\n\nconst layoutProp = { type: 'default', alignments: [] };\n\nconst POPOVER_PROPS = {\n\tplacement: 'bottom-start',\n};\n\nexport default function ButtonsEdit( {\n\tattributes: { layout, align },\n\tclientId,\n\tisSelected,\n\tsetAttributes,\n\tblockWidth,\n\tname,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst [ maxWidth, setMaxWidth ] = useState( 0 );\n\tconst { marginLeft: spacing } = styles.spacing;\n\n\t// Extract attributes from block layout\n\tconst layoutBlockSupport = getBlockSupport( name, 'layout' );\n\tconst defaultBlockLayout = layoutBlockSupport?.default;\n\tconst usedLayout = layout || defaultBlockLayout || {};\n\tconst { justifyContent } = usedLayout;\n\n\tconst { isInnerButtonSelected, shouldDelete } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockCount, getBlockParents, getSelectedBlockClientId } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\t\tconst selectedBlockParents = getBlockParents(\n\t\t\t\tselectedBlockClientId,\n\t\t\t\ttrue\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tisInnerButtonSelected: selectedBlockParents[ 0 ] === clientId,\n\t\t\t\t// The purpose of `shouldDelete` check is giving the ability to\n\t\t\t\t// pass to mobile toolbar function called `onDelete` which removes\n\t\t\t\t// the whole `Buttons` container along with the last inner button\n\t\t\t\t// when there is exactly one button.\n\t\t\t\tshouldDelete: getBlockCount( clientId ) === 1,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalPreferredStyleVariations;\n\t\treturn preferredStyleVariations?.value?.[ buttonBlockName ];\n\t}, [] );\n\n\tconst { getBlockOrder } = useSelect( blockEditorStore );\n\tconst { insertBlock, removeBlock, selectBlock } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tconst { width } = sizes || {};\n\t\tconst { isFullWidth } = alignmentHelpers;\n\n\t\tif ( width ) {\n\t\t\tconst isFullWidthBlock = isFullWidth( align );\n\t\t\tsetMaxWidth( isFullWidthBlock ? blockWidth : width );\n\t\t}\n\t}, [ sizes, align ] );\n\n\tconst onAddNextButton = useCallback(\n\t\tdebounce( ( selectedId ) => {\n\t\t\tconst order = getBlockOrder( clientId );\n\t\t\tconst selectedButtonIndex = order.findIndex(\n\t\t\t\t( i ) => i === selectedId\n\t\t\t);\n\n\t\t\tconst index =\n\t\t\t\tselectedButtonIndex === -1\n\t\t\t\t\t? order.length + 1\n\t\t\t\t\t: selectedButtonIndex;\n\n\t\t\tconst insertedBlock = createBlock( 'core/button' );\n\n\t\t\tinsertBlock( insertedBlock, index, clientId, false );\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t}, 200 ),\n\t\t[]\n\t);\n\n\tconst renderFooterAppender = useRef( () => (\n\t\t<View style={ styles.appenderContainer }>\n\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\tisFloating={ true }\n\t\t\t\tonAddBlock={ onAddNextButton }\n\t\t\t/>\n\t\t</View>\n\t) );\n\n\tconst justifyControls = [ 'left', 'center', 'right' ];\n\n\tconst remove = useCallback( () => removeBlock( clientId ), [ clientId ] );\n\tconst shouldRenderFooterAppender = isSelected || isInnerButtonSelected;\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<JustifyContentControl\n\t\t\t\t\t\tallowedControls={ justifyControls }\n\t\t\t\t\t\tvalue={ justifyContent }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t\t\t...usedLayout,\n\t\t\t\t\t\t\t\t\tjustifyContent: value,\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\tpopoverProps={ POPOVER_PROPS }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ resizeObserver }\n\t\t\t<InnerBlocks\n\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\ttemplate={ [\n\t\t\t\t\t[\n\t\t\t\t\t\tbuttonBlockName,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\tpreferredStyle &&\n\t\t\t\t\t\t\t\t`is-style-${ preferredStyle }`,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t] }\n\t\t\t\trenderFooterAppender={\n\t\t\t\t\tshouldRenderFooterAppender && renderFooterAppender.current\n\t\t\t\t}\n\t\t\t\torientation=\"horizontal\"\n\t\t\t\thorizontalAlignment={ justifyContent }\n\t\t\t\tonDeleteBlock={ shouldDelete ? remove : undefined }\n\t\t\t\tonAddBlock={ onAddNextButton }\n\t\t\t\tparentWidth={ maxWidth } // This value controls the width of that the buttons are able to expand to.\n\t\t\t\tmarginHorizontal={ spacing }\n\t\t\t\tmarginVertical={ spacing }\n\t\t\t\tlayout={ layoutProp }\n\t\t\t\ttemplateInsertUpdatesSelection\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"]}