@wordpress/block-library 9.47.0 → 9.48.1

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 (552) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/build/columns/transforms.cjs +65 -0
  3. package/build/columns/transforms.cjs.map +2 -2
  4. package/build/comments/edit/placeholder.cjs +1 -1
  5. package/build/comments/edit/placeholder.cjs.map +2 -2
  6. package/build/cover/edit/inspector-controls.cjs +16 -4
  7. package/build/cover/edit/inspector-controls.cjs.map +2 -2
  8. package/build/gallery/edit.cjs +212 -331
  9. package/build/gallery/edit.cjs.map +2 -2
  10. package/build/gallery/transforms.cjs +43 -0
  11. package/build/gallery/transforms.cjs.map +2 -2
  12. package/build/heading/edit.cjs +0 -1
  13. package/build/heading/edit.cjs.map +2 -2
  14. package/build/image/image.cjs +14 -3
  15. package/build/image/image.cjs.map +2 -2
  16. package/build/image/use-open-image-media-editor-modal.cjs +8 -2
  17. package/build/image/use-open-image-media-editor-modal.cjs.map +2 -2
  18. package/build/list/edit.cjs +1 -8
  19. package/build/list/edit.cjs.map +2 -2
  20. package/build/list/ordered-list-settings.cjs +1 -44
  21. package/build/list/ordered-list-settings.cjs.map +2 -2
  22. package/build/list-item/hooks/use-merge.cjs +47 -24
  23. package/build/list-item/hooks/use-merge.cjs.map +2 -2
  24. package/build/navigation/edit/index.cjs +15 -26
  25. package/build/navigation/edit/index.cjs.map +2 -2
  26. package/build/navigation-link/edit.cjs +0 -1
  27. package/build/navigation-link/edit.cjs.map +2 -2
  28. package/build/navigation-submenu/edit.cjs +2 -1
  29. package/build/navigation-submenu/edit.cjs.map +2 -2
  30. package/build/paragraph/deprecated.cjs +1 -0
  31. package/build/paragraph/deprecated.cjs.map +2 -2
  32. package/build/paragraph/edit.cjs +10 -1
  33. package/build/paragraph/edit.cjs.map +3 -3
  34. package/build/playlist/block.json +12 -0
  35. package/build/playlist/edit.cjs +27 -1
  36. package/build/playlist/edit.cjs.map +2 -2
  37. package/build/playlist/save.cjs +8 -1
  38. package/build/playlist/save.cjs.map +2 -2
  39. package/build/playlist/view.cjs +1 -0
  40. package/build/playlist/view.cjs.map +2 -2
  41. package/build/post-featured-image/edit.cjs +6 -4
  42. package/build/post-featured-image/edit.cjs.map +2 -2
  43. package/build/post-time-to-read/index.cjs +1 -1
  44. package/build/post-time-to-read/index.cjs.map +2 -2
  45. package/build/post-time-to-read/variations.cjs +1 -1
  46. package/build/post-time-to-read/variations.cjs.map +2 -2
  47. package/build/pullquote/edit.cjs +2 -7
  48. package/build/pullquote/edit.cjs.map +2 -2
  49. package/build/quote/edit.cjs +4 -9
  50. package/build/quote/edit.cjs.map +2 -2
  51. package/build/shortcode/transforms.cjs +2 -2
  52. package/build/shortcode/transforms.cjs.map +2 -2
  53. package/build/site-logo/edit.cjs +4 -1
  54. package/build/site-logo/edit.cjs.map +2 -2
  55. package/build/utils/waveform-player.cjs +42 -9
  56. package/build/utils/waveform-player.cjs.map +2 -2
  57. package/build/utils/waveform-utils.cjs +6 -4
  58. package/build/utils/waveform-utils.cjs.map +2 -2
  59. package/build/video/edit-common-settings.cjs +3 -6
  60. package/build/video/edit-common-settings.cjs.map +2 -2
  61. package/build-module/columns/transforms.mjs +65 -0
  62. package/build-module/columns/transforms.mjs.map +2 -2
  63. package/build-module/comments/edit/placeholder.mjs +1 -1
  64. package/build-module/comments/edit/placeholder.mjs.map +2 -2
  65. package/build-module/cover/edit/inspector-controls.mjs +16 -4
  66. package/build-module/cover/edit/inspector-controls.mjs.map +2 -2
  67. package/build-module/gallery/edit.mjs +214 -334
  68. package/build-module/gallery/edit.mjs.map +2 -2
  69. package/build-module/gallery/transforms.mjs +43 -0
  70. package/build-module/gallery/transforms.mjs.map +2 -2
  71. package/build-module/heading/edit.mjs +1 -2
  72. package/build-module/heading/edit.mjs.map +2 -2
  73. package/build-module/image/image.mjs +15 -3
  74. package/build-module/image/image.mjs.map +2 -2
  75. package/build-module/image/use-open-image-media-editor-modal.mjs +8 -2
  76. package/build-module/image/use-open-image-media-editor-modal.mjs.map +2 -2
  77. package/build-module/list/edit.mjs +2 -9
  78. package/build-module/list/edit.mjs.map +2 -2
  79. package/build-module/list/ordered-list-settings.mjs +1 -45
  80. package/build-module/list/ordered-list-settings.mjs.map +2 -2
  81. package/build-module/list-item/hooks/use-merge.mjs +48 -25
  82. package/build-module/list-item/hooks/use-merge.mjs.map +2 -2
  83. package/build-module/navigation/edit/index.mjs +16 -33
  84. package/build-module/navigation/edit/index.mjs.map +2 -2
  85. package/build-module/navigation-link/edit.mjs +0 -1
  86. package/build-module/navigation-link/edit.mjs.map +2 -2
  87. package/build-module/navigation-submenu/edit.mjs +2 -1
  88. package/build-module/navigation-submenu/edit.mjs.map +2 -2
  89. package/build-module/paragraph/deprecated.mjs +1 -0
  90. package/build-module/paragraph/deprecated.mjs.map +2 -2
  91. package/build-module/paragraph/edit.mjs +12 -2
  92. package/build-module/paragraph/edit.mjs.map +2 -2
  93. package/build-module/playlist/block.json +12 -0
  94. package/build-module/playlist/edit.mjs +27 -1
  95. package/build-module/playlist/edit.mjs.map +2 -2
  96. package/build-module/playlist/save.mjs +8 -1
  97. package/build-module/playlist/save.mjs.map +2 -2
  98. package/build-module/playlist/view.mjs +1 -0
  99. package/build-module/playlist/view.mjs.map +2 -2
  100. package/build-module/post-featured-image/edit.mjs +6 -4
  101. package/build-module/post-featured-image/edit.mjs.map +2 -2
  102. package/build-module/post-time-to-read/index.mjs +1 -1
  103. package/build-module/post-time-to-read/index.mjs.map +2 -2
  104. package/build-module/post-time-to-read/variations.mjs +2 -2
  105. package/build-module/post-time-to-read/variations.mjs.map +2 -2
  106. package/build-module/pullquote/edit.mjs +2 -7
  107. package/build-module/pullquote/edit.mjs.map +2 -2
  108. package/build-module/quote/edit.mjs +5 -10
  109. package/build-module/quote/edit.mjs.map +2 -2
  110. package/build-module/shortcode/transforms.mjs +2 -2
  111. package/build-module/shortcode/transforms.mjs.map +2 -2
  112. package/build-module/site-logo/edit.mjs +5 -1
  113. package/build-module/site-logo/edit.mjs.map +2 -2
  114. package/build-module/utils/waveform-player.mjs +44 -11
  115. package/build-module/utils/waveform-player.mjs.map +2 -2
  116. package/build-module/utils/waveform-utils.mjs +6 -4
  117. package/build-module/utils/waveform-utils.mjs.map +2 -2
  118. package/build-module/video/edit-common-settings.mjs +4 -7
  119. package/build-module/video/edit-common-settings.mjs.map +2 -2
  120. package/build-style/comment-template/style-rtl.css +1 -0
  121. package/build-style/comment-template/style.css +1 -0
  122. package/build-style/common-rtl.css +30 -10
  123. package/build-style/common.css +30 -10
  124. package/build-style/cover/style-rtl.css +2 -1
  125. package/build-style/cover/style.css +2 -1
  126. package/build-style/editor-rtl.css +22 -11
  127. package/build-style/editor.css +22 -11
  128. package/build-style/form-input/style-rtl.css +2 -0
  129. package/build-style/form-input/style.css +2 -0
  130. package/build-style/gallery/style-rtl.css +4 -2
  131. package/build-style/gallery/style.css +4 -2
  132. package/build-style/media-text/style-rtl.css +2 -1
  133. package/build-style/media-text/style.css +2 -1
  134. package/build-style/playlist/style-rtl.css +3 -0
  135. package/build-style/playlist/style.css +3 -0
  136. package/build-style/query/editor-rtl.css +8 -4
  137. package/build-style/query/editor.css +8 -4
  138. package/build-style/read-more/style-rtl.css +1 -0
  139. package/build-style/read-more/style.css +1 -0
  140. package/build-style/reset-rtl.css +3 -1
  141. package/build-style/reset.css +3 -1
  142. package/build-style/search/style-rtl.css +3 -1
  143. package/build-style/search/style.css +3 -1
  144. package/build-style/site-logo/editor-rtl.css +2 -1
  145. package/build-style/site-logo/editor.css +2 -1
  146. package/build-style/style-rtl.css +53 -17
  147. package/build-style/style.css +53 -17
  148. package/build-style/tab/style-rtl.css +3 -1
  149. package/build-style/tab/style.css +3 -1
  150. package/build-style/template-part/editor-rtl.css +8 -4
  151. package/build-style/template-part/editor.css +8 -4
  152. package/build-style/video/style-rtl.css +2 -1
  153. package/build-style/video/style.css +2 -1
  154. package/package.json +51 -47
  155. package/src/accordion/README.md +97 -0
  156. package/src/accordion-heading/README.md +81 -0
  157. package/src/accordion-item/README.md +85 -0
  158. package/src/accordion-panel/README.md +74 -0
  159. package/src/archives/README.md +56 -0
  160. package/src/audio/README.md +55 -0
  161. package/src/avatar/README.md +74 -0
  162. package/src/block/README.md +56 -0
  163. package/src/breadcrumbs/README.md +67 -0
  164. package/src/button/README.md +93 -0
  165. package/src/buttons/README.md +80 -0
  166. package/src/calendar/README.md +51 -0
  167. package/src/categories/README.md +69 -0
  168. package/src/code/README.md +55 -0
  169. package/src/column/README.md +72 -0
  170. package/src/columns/README.md +90 -0
  171. package/src/columns/test/transforms.js +164 -0
  172. package/src/columns/transforms.js +74 -0
  173. package/src/comment-author-avatar/README.md +63 -0
  174. package/src/comment-author-name/README.md +67 -0
  175. package/src/comment-content/README.md +61 -0
  176. package/src/comment-date/README.md +67 -0
  177. package/src/comment-edit-link/README.md +67 -0
  178. package/src/comment-reply-link/README.md +63 -0
  179. package/src/comment-template/README.md +60 -0
  180. package/src/comments/README.md +88 -0
  181. package/src/comments/edit/placeholder.js +1 -1
  182. package/src/comments-pagination/README.md +77 -0
  183. package/src/comments-pagination-next/README.md +64 -0
  184. package/src/comments-pagination-numbers/README.md +64 -0
  185. package/src/comments-pagination-previous/README.md +64 -0
  186. package/src/comments-title/README.md +70 -0
  187. package/src/common.scss +63 -10
  188. package/src/cover/README.md +111 -0
  189. package/src/cover/edit/inspector-controls.js +61 -45
  190. package/src/cover/test/edit.js +38 -0
  191. package/src/details/README.md +65 -0
  192. package/src/embed/README.md +56 -0
  193. package/src/file/README.md +60 -0
  194. package/src/footnotes/README.md +64 -0
  195. package/src/form/README.md +90 -0
  196. package/src/form-input/README.md +74 -0
  197. package/src/form-submission-notification/README.md +50 -0
  198. package/src/form-submit-button/README.md +54 -0
  199. package/src/freeform/README.md +49 -0
  200. package/src/gallery/README.md +115 -0
  201. package/src/gallery/edit.js +213 -350
  202. package/src/gallery/test/transforms.js +155 -0
  203. package/src/gallery/transforms.js +47 -0
  204. package/src/group/README.md +80 -0
  205. package/src/heading/README.md +60 -0
  206. package/src/heading/edit.js +1 -2
  207. package/src/home-link/README.md +66 -0
  208. package/src/home-link/index.php +3 -15
  209. package/src/html/README.md +48 -0
  210. package/src/icon/README.md +63 -0
  211. package/src/image/README.md +102 -0
  212. package/src/image/image.js +50 -35
  213. package/src/image/index.php +4 -4
  214. package/src/image/test/use-open-image-media-editor-modal.js +41 -0
  215. package/src/image/use-open-image-media-editor-modal.js +7 -1
  216. package/src/latest-comments/README.md +57 -0
  217. package/src/latest-posts/README.md +71 -0
  218. package/src/list/README.md +70 -0
  219. package/src/list/edit.js +2 -9
  220. package/src/list/ordered-list-settings.js +46 -92
  221. package/src/list-item/README.md +71 -0
  222. package/src/list-item/hooks/use-merge.js +53 -46
  223. package/src/loginout/README.md +56 -0
  224. package/src/math/README.md +50 -0
  225. package/src/media-text/README.md +92 -0
  226. package/src/missing/README.md +55 -0
  227. package/src/more/README.md +49 -0
  228. package/src/navigation/README.md +115 -0
  229. package/src/navigation/edit/index.js +10 -30
  230. package/src/navigation-link/README.md +93 -0
  231. package/src/navigation-link/edit.js +0 -1
  232. package/src/navigation-link/index.php +1 -15
  233. package/src/navigation-link/test/__snapshots__/hooks.js.snap +45 -134
  234. package/src/navigation-overlay-close/README.md +48 -0
  235. package/src/navigation-submenu/README.md +84 -0
  236. package/src/navigation-submenu/edit.js +1 -0
  237. package/src/navigation-submenu/index.php +1 -17
  238. package/src/nextpage/README.md +50 -0
  239. package/src/page-list/README.md +84 -0
  240. package/src/page-list/index.php +3 -15
  241. package/src/page-list-item/README.md +77 -0
  242. package/src/paragraph/README.md +70 -0
  243. package/src/paragraph/deprecated.js +1 -0
  244. package/src/paragraph/edit.js +13 -1
  245. package/src/pattern/README.md +45 -0
  246. package/src/playlist/README.md +86 -0
  247. package/src/playlist/block.json +12 -0
  248. package/src/playlist/edit.js +27 -0
  249. package/src/playlist/index.php +10 -3
  250. package/src/playlist/save.js +9 -1
  251. package/src/playlist/style.scss +7 -0
  252. package/src/playlist/view.js +1 -0
  253. package/src/playlist-track/README.md +69 -0
  254. package/src/post-author/README.md +78 -0
  255. package/src/post-author-biography/README.md +59 -0
  256. package/src/post-author-name/README.md +63 -0
  257. package/src/post-author-name/index.php +1 -1
  258. package/src/post-comment/README.md +61 -0
  259. package/src/post-comments-count/README.md +58 -0
  260. package/src/post-comments-form/README.md +59 -0
  261. package/src/post-comments-link/README.md +60 -0
  262. package/src/post-content/README.md +71 -0
  263. package/src/post-date/README.md +65 -0
  264. package/src/post-date/index.php +1 -1
  265. package/src/post-excerpt/README.md +66 -0
  266. package/src/post-featured-image/README.md +85 -0
  267. package/src/post-featured-image/edit.js +15 -10
  268. package/src/post-featured-image/index.php +1 -1
  269. package/src/post-navigation-link/README.md +63 -0
  270. package/src/post-template/README.md +71 -0
  271. package/src/post-terms/README.md +65 -0
  272. package/src/post-time-to-read/README.md +63 -0
  273. package/src/post-time-to-read/index.js +1 -1
  274. package/src/post-time-to-read/variations.js +2 -2
  275. package/src/post-title/README.md +69 -0
  276. package/src/preformatted/README.md +50 -0
  277. package/src/pullquote/README.md +64 -0
  278. package/src/pullquote/edit.js +1 -7
  279. package/src/query/README.md +64 -0
  280. package/src/query-no-results/README.md +65 -0
  281. package/src/query-pagination/README.md +79 -0
  282. package/src/query-pagination-next/README.md +67 -0
  283. package/src/query-pagination-numbers/README.md +65 -0
  284. package/src/query-pagination-previous/README.md +67 -0
  285. package/src/query-title/README.md +65 -0
  286. package/src/query-total/README.md +66 -0
  287. package/src/quote/README.md +75 -0
  288. package/src/quote/edit.js +3 -9
  289. package/src/read-more/README.md +61 -0
  290. package/src/read-more/index.php +2 -2
  291. package/src/rss/README.md +62 -0
  292. package/src/search/README.md +66 -0
  293. package/src/separator/README.md +62 -0
  294. package/src/shortcode/README.md +44 -0
  295. package/src/shortcode/transforms.js +2 -2
  296. package/src/site-logo/README.md +72 -0
  297. package/src/site-logo/edit.js +5 -0
  298. package/src/site-tagline/README.md +56 -0
  299. package/src/site-title/README.md +57 -0
  300. package/src/social-link/README.md +64 -0
  301. package/src/social-links/README.md +98 -0
  302. package/src/spacer/README.md +53 -0
  303. package/src/tab/README.md +69 -0
  304. package/src/tab-list/README.md +79 -0
  305. package/src/tab-panel/README.md +75 -0
  306. package/src/tab-panels/README.md +75 -0
  307. package/src/table/README.md +71 -0
  308. package/src/table-of-contents/README.md +61 -0
  309. package/src/tabs/README.md +83 -0
  310. package/src/tag-cloud/README.md +62 -0
  311. package/src/template-part/README.md +48 -0
  312. package/src/term-count/README.md +59 -0
  313. package/src/term-description/README.md +60 -0
  314. package/src/term-name/README.md +65 -0
  315. package/src/term-template/README.md +65 -0
  316. package/src/terms-query/README.md +58 -0
  317. package/src/text-columns/README.md +51 -0
  318. package/src/utils/test/waveform-player.js +254 -0
  319. package/src/utils/waveform-player.js +90 -18
  320. package/src/utils/waveform-utils.js +15 -11
  321. package/src/verse/README.md +58 -0
  322. package/src/video/README.md +58 -0
  323. package/src/video/edit-common-settings.js +4 -7
  324. package/src/audio/edit.native.js +0 -250
  325. package/src/audio/style.native.scss +0 -13
  326. package/src/audio/test/__snapshots__/edit.native.js.snap +0 -546
  327. package/src/audio/test/__snapshots__/transforms.native.js.snap +0 -25
  328. package/src/audio/test/edit.native.js +0 -132
  329. package/src/audio/test/transforms.native.js +0 -43
  330. package/src/audio/transforms.native.js +0 -12
  331. package/src/block/edit-title.native.js +0 -67
  332. package/src/block/edit.native.js +0 -247
  333. package/src/block/editor.native.scss +0 -125
  334. package/src/block/test/__snapshots__/transforms.native.js.snap +0 -15
  335. package/src/block/test/edit.native.js +0 -262
  336. package/src/block/test/transforms.native.js +0 -40
  337. package/src/button/color-background.native.js +0 -41
  338. package/src/button/edit.native.js +0 -567
  339. package/src/button/editor.native.scss +0 -70
  340. package/src/button/rich-text.android.scss +0 -6
  341. package/src/button/rich-text.ios.scss +0 -6
  342. package/src/buttons/edit.native.js +0 -157
  343. package/src/buttons/editor.native.scss +0 -11
  344. package/src/buttons/test/__snapshots__/edit.native.js.snap +0 -99
  345. package/src/buttons/test/__snapshots__/transforms.native.js.snap +0 -31
  346. package/src/buttons/test/edit.native.js +0 -485
  347. package/src/buttons/test/transforms.native.js +0 -48
  348. package/src/buttons/transforms.native.js +0 -12
  349. package/src/code/edit.native.js +0 -70
  350. package/src/code/test/__snapshots__/edit.native.js.snap +0 -13
  351. package/src/code/test/edit.native.js +0 -65
  352. package/src/code/theme.native.scss +0 -22
  353. package/src/code/transforms.native.js +0 -12
  354. package/src/column/column-preview.native.js +0 -58
  355. package/src/column/edit.native.js +0 -273
  356. package/src/column/editor.native.scss +0 -75
  357. package/src/columns/columnCalculations.native.js +0 -178
  358. package/src/columns/edit.native.js +0 -507
  359. package/src/columns/editor.native.scss +0 -17
  360. package/src/columns/test/__snapshots__/edit.native.js.snap +0 -305
  361. package/src/columns/test/__snapshots__/transforms.native.js.snap +0 -61
  362. package/src/columns/test/edit.native.js +0 -496
  363. package/src/columns/test/transforms.native.js +0 -89
  364. package/src/columns/transforms.native.js +0 -12
  365. package/src/cover/controls.native.js +0 -307
  366. package/src/cover/edit.native.js +0 -708
  367. package/src/cover/focal-point-settings-button.native.js +0 -53
  368. package/src/cover/overlay-color-settings.native.js +0 -106
  369. package/src/cover/style.native.scss +0 -220
  370. package/src/cover/test/__snapshots__/edit.native.js.snap +0 -105
  371. package/src/cover/test/__snapshots__/transforms.native.js.snap +0 -73
  372. package/src/cover/test/edit.native.js +0 -701
  373. package/src/cover/test/transforms.native.js +0 -116
  374. package/src/cover/transforms.native.js +0 -12
  375. package/src/cover/use-cover-is-dark.native.js +0 -51
  376. package/src/embed/edit.native.js +0 -345
  377. package/src/embed/embed-controls.native.js +0 -65
  378. package/src/embed/embed-link-settings.native.js +0 -99
  379. package/src/embed/embed-loading.native.js +0 -29
  380. package/src/embed/embed-no-preview.native.js +0 -230
  381. package/src/embed/embed-placeholder.native.js +0 -178
  382. package/src/embed/embed-preview.native.js +0 -157
  383. package/src/embed/styles.native.scss +0 -196
  384. package/src/embed/test/__snapshots__/index.native.js.snap +0 -191
  385. package/src/embed/test/__snapshots__/transforms.native.js.snap +0 -23
  386. package/src/embed/test/index.native.js +0 -1125
  387. package/src/embed/test/transforms.native.js +0 -44
  388. package/src/embed/transforms.native.js +0 -12
  389. package/src/embed/wp-embed-preview.native.js +0 -80
  390. package/src/file/edit.native.js +0 -605
  391. package/src/file/style.native.scss +0 -79
  392. package/src/file/test/__snapshots__/edit.native.js.snap +0 -580
  393. package/src/file/test/__snapshots__/transforms.native.js.snap +0 -19
  394. package/src/file/test/edit.native.js +0 -93
  395. package/src/file/test/transforms.native.js +0 -43
  396. package/src/file/transforms.native.js +0 -12
  397. package/src/freeform/edit.native.js +0 -13
  398. package/src/freeform/test/__snapshots__/index.native.js.snap +0 -7
  399. package/src/freeform/test/__snapshots__/transforms.native.js.snap +0 -19
  400. package/src/freeform/test/index.native.js +0 -57
  401. package/src/freeform/test/transforms.native.js +0 -39
  402. package/src/gallery/gallery-styles.native.scss +0 -8
  403. package/src/gallery/gallery.native.js +0 -124
  404. package/src/gallery/styles.native.scss +0 -7
  405. package/src/gallery/test/__snapshots__/index.native.js.snap +0 -177
  406. package/src/gallery/test/__snapshots__/transforms.native.js.snap +0 -53
  407. package/src/gallery/test/helpers.native.js +0 -106
  408. package/src/gallery/test/index.native.js +0 -700
  409. package/src/gallery/test/transforms.native.js +0 -53
  410. package/src/gallery/test/use-get-media.native.js +0 -24
  411. package/src/gallery/transforms.native.js +0 -12
  412. package/src/gallery/use-get-media.native.js +0 -49
  413. package/src/group/edit.native.js +0 -137
  414. package/src/group/editor.native.scss +0 -56
  415. package/src/group/test/__snapshots__/edit.native.js.snap +0 -19
  416. package/src/group/test/__snapshots__/transforms.native.js.snap +0 -35
  417. package/src/group/test/edit.native.js +0 -100
  418. package/src/group/test/transforms.native.js +0 -73
  419. package/src/heading/edit.native.js +0 -159
  420. package/src/heading/test/__snapshots__/index.native.js.snap +0 -43
  421. package/src/heading/test/__snapshots__/transforms.native.js.snap +0 -47
  422. package/src/heading/test/index.native.js +0 -257
  423. package/src/heading/test/transforms.native.js +0 -46
  424. package/src/heading/transforms.native.js +0 -12
  425. package/src/html/transforms.native.js +0 -11
  426. package/src/image/edit.native.js +0 -959
  427. package/src/image/styles.native.scss +0 -70
  428. package/src/image/test/__snapshots__/transforms.native.js.snap +0 -49
  429. package/src/image/test/edit.native.js +0 -459
  430. package/src/image/test/transforms.native.js +0 -49
  431. package/src/image/transforms.native.js +0 -12
  432. package/src/index.native.js +0 -274
  433. package/src/latest-posts/edit.native.js +0 -294
  434. package/src/latest-posts/style.native.scss +0 -47
  435. package/src/latest-posts/test/__snapshots__/edit.native.js.snap +0 -3
  436. package/src/latest-posts/test/__snapshots__/transforms.native.js.snap +0 -15
  437. package/src/latest-posts/test/edit.native.js +0 -49
  438. package/src/latest-posts/test/transforms.native.js +0 -61
  439. package/src/list/tag-name.native.js +0 -12
  440. package/src/list/test/__snapshots__/edit.native.js.snap +0 -121
  441. package/src/list/test/__snapshots__/transforms.native.js.snap +0 -85
  442. package/src/list/test/edit.native.js +0 -602
  443. package/src/list/test/transforms.native.js +0 -56
  444. package/src/list/transforms.native.js +0 -12
  445. package/src/list-item/edit.native.js +0 -175
  446. package/src/list-item/hooks/use-enter.native.js +0 -81
  447. package/src/list-item/icons.native.js +0 -34
  448. package/src/list-item/list-style-type.native.js +0 -146
  449. package/src/list-item/style.native.scss +0 -57
  450. package/src/media-text/edit.native.js +0 -417
  451. package/src/media-text/icon-retry.native.js +0 -11
  452. package/src/media-text/media-container.native.js +0 -393
  453. package/src/media-text/style.native.scss +0 -191
  454. package/src/media-text/test/__snapshots__/transforms.native.js.snap +0 -73
  455. package/src/media-text/test/edit.native.js +0 -58
  456. package/src/media-text/test/transforms.native.js +0 -116
  457. package/src/media-text/transforms.native.js +0 -12
  458. package/src/missing/edit.native.js +0 -294
  459. package/src/missing/style.native.scss +0 -79
  460. package/src/missing/test/__snapshots__/edit.native.js.snap +0 -110
  461. package/src/missing/test/edit-integration.native.js +0 -168
  462. package/src/missing/test/edit.native.js +0 -81
  463. package/src/more/edit.native.js +0 -36
  464. package/src/more/editor.native.scss +0 -21
  465. package/src/more/test/__snapshots__/edit.native.js.snap +0 -7
  466. package/src/more/test/__snapshots__/transforms.native.js.snap +0 -19
  467. package/src/more/test/edit.native.js +0 -41
  468. package/src/more/test/transforms.native.js +0 -42
  469. package/src/more/transforms.native.js +0 -12
  470. package/src/navigation-link/shared/build-css-font-sizes.php +0 -43
  471. package/src/nextpage/edit.native.js +0 -58
  472. package/src/nextpage/editor.native.scss +0 -21
  473. package/src/nextpage/test/__snapshots__/transforms.native.js.snap +0 -19
  474. package/src/nextpage/test/transforms.native.js +0 -42
  475. package/src/nextpage/transforms.native.js +0 -12
  476. package/src/paragraph/edit.native.js +0 -116
  477. package/src/paragraph/test/__snapshots__/edit.native.js.snap +0 -88
  478. package/src/paragraph/test/__snapshots__/transforms.native.js.snap +0 -65
  479. package/src/paragraph/test/edit.native.js +0 -999
  480. package/src/paragraph/test/transforms.native.js +0 -51
  481. package/src/paragraph/transforms.native.js +0 -12
  482. package/src/preformatted/edit.native.js +0 -48
  483. package/src/preformatted/styles.native.scss +0 -30
  484. package/src/preformatted/test/__snapshots__/edit.native.js.snap +0 -95
  485. package/src/preformatted/test/__snapshots__/transforms.native.js.snap +0 -37
  486. package/src/preformatted/test/edit.native.js +0 -111
  487. package/src/preformatted/test/transforms.native.js +0 -47
  488. package/src/preformatted/transforms.native.js +0 -12
  489. package/src/pullquote/blockquote.native.js +0 -39
  490. package/src/pullquote/blockquote.native.scss +0 -8
  491. package/src/pullquote/edit.native.js +0 -128
  492. package/src/pullquote/figure.native.js +0 -33
  493. package/src/pullquote/figure.native.scss +0 -16
  494. package/src/pullquote/test/__snapshots__/transforms.native.js.snap +0 -47
  495. package/src/pullquote/test/edit.native.js +0 -73
  496. package/src/pullquote/test/transforms.native.js +0 -46
  497. package/src/pullquote/transforms.native.js +0 -12
  498. package/src/quote/test/__snapshots__/transforms.native.js.snap +0 -49
  499. package/src/quote/test/edit.native.js +0 -94
  500. package/src/quote/test/transforms.native.js +0 -69
  501. package/src/quote/transforms.native.js +0 -12
  502. package/src/search/edit.native.js +0 -486
  503. package/src/search/style.native.scss +0 -99
  504. package/src/search/test/__snapshots__/edit.native.js.snap +0 -827
  505. package/src/search/test/__snapshots__/transforms.native.js.snap +0 -15
  506. package/src/search/test/edit.native.js +0 -170
  507. package/src/search/test/transforms.native.js +0 -40
  508. package/src/separator/separator-settings.native.js +0 -3
  509. package/src/separator/test/__snapshots__/edit.native.js.snap +0 -7
  510. package/src/separator/test/__snapshots__/transforms.native.js.snap +0 -25
  511. package/src/separator/test/edit.native.js +0 -41
  512. package/src/separator/test/transforms.native.js +0 -42
  513. package/src/separator/transforms.native.js +0 -12
  514. package/src/shortcode/edit.native.js +0 -77
  515. package/src/shortcode/style.native.scss +0 -44
  516. package/src/shortcode/test/__snapshots__/edit.native.js.snap +0 -9
  517. package/src/shortcode/test/__snapshots__/transforms.native.js.snap +0 -19
  518. package/src/shortcode/test/edit.native.js +0 -70
  519. package/src/shortcode/test/transforms.native.js +0 -42
  520. package/src/shortcode/transforms.native.js +0 -12
  521. package/src/social-link/edit.native.js +0 -219
  522. package/src/social-link/editor.native.scss +0 -18
  523. package/src/social-links/edit.native.js +0 -147
  524. package/src/social-links/editor.native.scss +0 -25
  525. package/src/social-links/test/__snapshots__/edit.native.js.snap +0 -57
  526. package/src/social-links/test/__snapshots__/transforms.native.js.snap +0 -31
  527. package/src/social-links/test/edit.native.js +0 -266
  528. package/src/social-links/test/transforms.native.js +0 -53
  529. package/src/spacer/controls.native.js +0 -86
  530. package/src/spacer/edit.native.js +0 -110
  531. package/src/spacer/editor.native.scss +0 -18
  532. package/src/spacer/save.native.js +0 -18
  533. package/src/spacer/test/__snapshots__/index.native.js.snap +0 -43
  534. package/src/spacer/test/__snapshots__/transforms.native.js.snap +0 -25
  535. package/src/spacer/test/index.native.js +0 -257
  536. package/src/spacer/test/transforms.native.js +0 -42
  537. package/src/table/transforms.native.js +0 -11
  538. package/src/text-columns/transforms.native.js +0 -12
  539. package/src/utils/init-block.native.js +0 -40
  540. package/src/utils/transformation-categories.native.js +0 -47
  541. package/src/verse/test/__snapshots__/edit.native.js.snap +0 -13
  542. package/src/verse/test/__snapshots__/transforms.native.js.snap +0 -31
  543. package/src/verse/test/edit.native.js +0 -118
  544. package/src/verse/test/transforms.native.js +0 -46
  545. package/src/verse/transforms.native.js +0 -12
  546. package/src/video/edit.native.js +0 -406
  547. package/src/video/icon-retry.native.js +0 -11
  548. package/src/video/style.native.scss +0 -81
  549. package/src/video/test/__snapshots__/transforms.native.js.snap +0 -41
  550. package/src/video/test/edit.native.js +0 -53
  551. package/src/video/test/transforms.native.js +0 -49
  552. package/src/video/transforms.native.js +0 -12
@@ -1,51 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import {
5
- getEditorHtml,
6
- initializeEditor,
7
- setupCoreBlocks,
8
- transformBlock,
9
- getBlockTransformOptions,
10
- } from 'test/helpers';
11
-
12
- const block = 'Paragraph';
13
- const initialHtml = `
14
- <!-- wp:paragraph -->
15
- <p>Example text</p>
16
- <!-- /wp:paragraph -->`;
17
-
18
- // NOTE: Paragraph block can be transformed to Buttons block in web,
19
- // however this transform is not supported in the native version.
20
- const transformsWithInnerBlocks = [ 'List', 'Quote', 'Columns', 'Group' ];
21
- const blockTransforms = [
22
- 'Heading',
23
- 'Preformatted',
24
- 'Pullquote',
25
- 'Poetry',
26
- 'Code',
27
- ...transformsWithInnerBlocks,
28
- ];
29
-
30
- setupCoreBlocks();
31
-
32
- describe( `${ block } block transforms`, () => {
33
- test.each( blockTransforms )( 'to %s block', async ( blockTransform ) => {
34
- const screen = await initializeEditor( { initialHtml } );
35
- const newBlock = await transformBlock( screen, block, blockTransform, {
36
- hasInnerBlocks:
37
- transformsWithInnerBlocks.includes( blockTransform ),
38
- } );
39
- expect( newBlock ).toBeVisible();
40
- expect( getEditorHtml() ).toMatchSnapshot();
41
- } );
42
-
43
- it( 'matches expected transformation options', async () => {
44
- const screen = await initializeEditor( { initialHtml } );
45
- const transformOptions = await getBlockTransformOptions(
46
- screen,
47
- block
48
- );
49
- expect( transformOptions ).toHaveLength( blockTransforms.length );
50
- } );
51
- } );
@@ -1,12 +0,0 @@
1
- /**
2
- * Internal dependencies
3
- */
4
- import webTransforms from './transforms.js';
5
- import transformationCategories from '../utils/transformation-categories';
6
-
7
- const transforms = {
8
- ...webTransforms,
9
- supportedMobileTransforms: transformationCategories.richText,
10
- };
11
-
12
- export default transforms;
@@ -1,48 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { View } from 'react-native';
5
- /**
6
- * WordPress dependencies
7
- */
8
- import { usePreferredColorSchemeStyle } from '@wordpress/compose';
9
- /**
10
- * Internal dependencies
11
- */
12
- import WebPreformattedEdit from './edit.js';
13
- import styles from './styles.scss';
14
-
15
- export default function PreformattedEdit( props ) {
16
- const { style } = props;
17
-
18
- const textBaseStyle = usePreferredColorSchemeStyle(
19
- styles.wpRichTextLight,
20
- styles.wpRichTextDark
21
- );
22
- const wpBlockPreformatted = usePreferredColorSchemeStyle(
23
- styles.wpBlockPreformattedLight,
24
- styles.wpBlockPreformattedDark
25
- );
26
- const richTextStyle = {
27
- ...( ! style?.baseColors && textBaseStyle ),
28
- ...( style?.fontSize && { fontSize: style.fontSize } ),
29
- ...( style?.color && { color: style.color } ),
30
- };
31
- const containerStyles = [
32
- wpBlockPreformatted,
33
- style?.backgroundColor && { backgroundColor: style.backgroundColor },
34
- style?.baseColors?.color &&
35
- ! style?.backgroundColor &&
36
- styles[ 'wp-block-preformatted__no-background' ],
37
- ];
38
-
39
- const propsWithStyle = {
40
- ...props,
41
- style: richTextStyle,
42
- };
43
- return (
44
- <View style={ containerStyles }>
45
- <WebPreformattedEdit { ...propsWithStyle } />
46
- </View>
47
- );
48
- }
@@ -1,30 +0,0 @@
1
- %wpBlockPreformattedLightColor {
2
- background-color: $gray-light;
3
- }
4
-
5
- %wpBlockPreformattedDarkColor {
6
- background-color: $gray-100;
7
- }
8
-
9
- .wpBlockPreformattedLight {
10
- @extend %wpBlockPreformattedLightColor;
11
- padding: 12px 16px;
12
- border-radius: 4px;
13
- }
14
-
15
- .wpRichTextLight {
16
- @extend %wpBlockPreformattedLightColor;
17
- }
18
-
19
- .wpBlockPreformattedDark {
20
- @extend %wpBlockPreformattedDarkColor;
21
- }
22
-
23
- .wpRichTextDark {
24
- @extend %wpBlockPreformattedDarkColor;
25
- }
26
-
27
- .wp-block-preformatted__no-background {
28
- background: transparent;
29
- padding: 0;
30
- }
@@ -1,95 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`Preformatted should match snapshot when content is empty 1`] = `
4
- <View
5
- style={
6
- [
7
- undefined,
8
- undefined,
9
- undefined,
10
- ]
11
- }
12
- >
13
- <View
14
- style={
15
- [
16
- undefined,
17
- undefined,
18
- ]
19
- }
20
- >
21
- <TextInput
22
- accessibilityLabel="Text input. Empty"
23
- activeFormats={[]}
24
- blockType={
25
- {
26
- "tag": "pre",
27
- }
28
- }
29
- disableEditingMenu={false}
30
- fontFamily="serif"
31
- isMultiline={false}
32
- maxImagesWidth={200}
33
- onBlur={[Function]}
34
- onChange={[Function]}
35
- onContentSizeChange={[Function]}
36
- onFocus={[Function]}
37
- onKeyDown={[Function]}
38
- onPaste={[Function]}
39
- onSelectionChange={[Function]}
40
- placeholder="Write preformatted text…"
41
- placeholderTextColor="gray"
42
- selectionColor="black"
43
- triggerKeyCodes={[]}
44
- value=""
45
- />
46
- </View>
47
- </View>
48
- `;
49
-
50
- exports[`Preformatted should match snapshot when content is not empty 1`] = `
51
- <View
52
- style={
53
- [
54
- undefined,
55
- undefined,
56
- undefined,
57
- ]
58
- }
59
- >
60
- <View
61
- style={
62
- [
63
- undefined,
64
- undefined,
65
- ]
66
- }
67
- >
68
- <TextInput
69
- accessibilityLabel="Text input. <pre>Hello World!</pre>"
70
- activeFormats={[]}
71
- blockType={
72
- {
73
- "tag": "pre",
74
- }
75
- }
76
- disableEditingMenu={false}
77
- fontFamily="serif"
78
- isMultiline={false}
79
- maxImagesWidth={200}
80
- onBlur={[Function]}
81
- onChange={[Function]}
82
- onContentSizeChange={[Function]}
83
- onFocus={[Function]}
84
- onKeyDown={[Function]}
85
- onPaste={[Function]}
86
- onSelectionChange={[Function]}
87
- placeholder="Write preformatted text…"
88
- placeholderTextColor="gray"
89
- selectionColor="black"
90
- triggerKeyCodes={[]}
91
- value="<pre>Hello World!</pre>"
92
- />
93
- </View>
94
- </View>
95
- `;
@@ -1,37 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`Preformatted block transforms to Code block 1`] = `
4
- "<!-- wp:code -->
5
- <pre class="wp-block-code"><code>Some <em>preformatted</em> text...<br />And more!</code></pre>
6
- <!-- /wp:code -->"
7
- `;
8
-
9
- exports[`Preformatted block transforms to Columns block 1`] = `
10
- "<!-- wp:columns -->
11
- <div class="wp-block-columns"><!-- wp:column {"width":"100%"} -->
12
- <div class="wp-block-column" style="flex-basis:100%"><!-- wp:preformatted -->
13
- <pre class="wp-block-preformatted">Some <em>preformatted</em> text...<br />And more!</pre>
14
- <!-- /wp:preformatted --></div>
15
- <!-- /wp:column --></div>
16
- <!-- /wp:columns -->"
17
- `;
18
-
19
- exports[`Preformatted block transforms to Group block 1`] = `
20
- "<!-- wp:group {"layout":{"type":"constrained"}} -->
21
- <div class="wp-block-group"><!-- wp:preformatted -->
22
- <pre class="wp-block-preformatted">Some <em>preformatted</em> text...<br />And more!</pre>
23
- <!-- /wp:preformatted --></div>
24
- <!-- /wp:group -->"
25
- `;
26
-
27
- exports[`Preformatted block transforms to Paragraph block 1`] = `
28
- "<!-- wp:paragraph -->
29
- <p>Some <em>preformatted</em> text...<br />And more!</p>
30
- <!-- /wp:paragraph -->"
31
- `;
32
-
33
- exports[`Preformatted block transforms to Verse block 1`] = `
34
- "<!-- wp:verse -->
35
- <pre class="wp-block-verse">Some <em>preformatted</em> text...<br />And more!</pre>
36
- <!-- /wp:verse -->"
37
- `;
@@ -1,111 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import {
5
- addBlock,
6
- typeInRichText,
7
- fireEvent,
8
- getEditorHtml,
9
- initializeEditor,
10
- render,
11
- setupCoreBlocks,
12
- } from 'test/helpers';
13
-
14
- /**
15
- * WordPress dependencies
16
- */
17
- import { ENTER } from '@wordpress/keycodes';
18
-
19
- /**
20
- * Internal dependencies
21
- */
22
- import PreformattedEdit from '../edit';
23
-
24
- setupCoreBlocks();
25
-
26
- describe( 'Preformatted', () => {
27
- it( 'should match snapshot when content is empty', () => {
28
- const screen = render(
29
- <PreformattedEdit
30
- attributes={ {} }
31
- setAttributes={ jest.fn() }
32
- getStylesFromColorScheme={ jest.fn() }
33
- />
34
- );
35
- expect( screen.toJSON() ).toMatchSnapshot();
36
- } );
37
-
38
- it( 'should match snapshot when content is not empty', () => {
39
- const screen = render(
40
- <PreformattedEdit
41
- attributes={ { content: 'Hello World!' } }
42
- setAttributes={ jest.fn() }
43
- getStylesFromColorScheme={ ( styles1 ) => styles1 }
44
- />
45
- );
46
- expect( screen.toJSON() ).toMatchSnapshot();
47
- } );
48
-
49
- it( 'should produce expected markup for multiline text', async () => {
50
- // Arrange
51
- const screen = await initializeEditor();
52
-
53
- // Act
54
- await addBlock( screen, 'Preformatted' );
55
- const preformattedTextInput = await screen.findByPlaceholderText(
56
- 'Write preformatted text…'
57
- );
58
- typeInRichText( preformattedTextInput, 'A great statement.' );
59
- fireEvent( preformattedTextInput, 'onKeyDown', {
60
- nativeEvent: {},
61
- preventDefault() {},
62
- keyCode: ENTER,
63
- } );
64
- typeInRichText( preformattedTextInput, 'Again' );
65
-
66
- // Assert
67
- expect( getEditorHtml() ).toMatchInlineSnapshot( `
68
- "<!-- wp:preformatted -->
69
- <pre class="wp-block-preformatted">A great statement.<br>Again</pre>
70
- <!-- /wp:preformatted -->"
71
- ` );
72
- } );
73
-
74
- it( 'should split on triple Enter', async () => {
75
- // Arrange
76
- const screen = await initializeEditor();
77
-
78
- // Act
79
- await addBlock( screen, 'Preformatted' );
80
- const preformattedTextInput = await screen.findByPlaceholderText(
81
- 'Write preformatted text…'
82
- );
83
- typeInRichText( preformattedTextInput, 'Hello' );
84
- fireEvent( preformattedTextInput, 'onKeyDown', {
85
- nativeEvent: {},
86
- preventDefault() {},
87
- keyCode: ENTER,
88
- } );
89
- fireEvent( preformattedTextInput, 'onKeyDown', {
90
- nativeEvent: {},
91
- preventDefault() {},
92
- keyCode: ENTER,
93
- } );
94
- fireEvent( preformattedTextInput, 'onKeyDown', {
95
- nativeEvent: {},
96
- preventDefault() {},
97
- keyCode: ENTER,
98
- } );
99
-
100
- // Assert
101
- expect( getEditorHtml() ).toMatchInlineSnapshot( `
102
- "<!-- wp:preformatted -->
103
- <pre class="wp-block-preformatted">Hello</pre>
104
- <!-- /wp:preformatted -->
105
-
106
- <!-- wp:paragraph -->
107
- <p></p>
108
- <!-- /wp:paragraph -->"
109
- ` );
110
- } );
111
- } );
@@ -1,47 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import {
5
- getEditorHtml,
6
- initializeEditor,
7
- setupCoreBlocks,
8
- transformBlock,
9
- getBlockTransformOptions,
10
- } from 'test/helpers';
11
-
12
- const block = 'Preformatted';
13
- const initialHtml = `
14
- <!-- wp:preformatted -->
15
- <pre class="wp-block-preformatted">Some <em>preformatted</em> text...<br>And more!</pre>
16
- <!-- /wp:preformatted -->`;
17
-
18
- const transformsWithInnerBlocks = [ 'Columns', 'Group' ];
19
- const blockTransforms = [
20
- 'Paragraph',
21
- 'Code',
22
- 'Poetry',
23
- ...transformsWithInnerBlocks,
24
- ];
25
-
26
- setupCoreBlocks();
27
-
28
- describe( `${ block } block transforms`, () => {
29
- test.each( blockTransforms )( 'to %s block', async ( blockTransform ) => {
30
- const screen = await initializeEditor( { initialHtml } );
31
- const newBlock = await transformBlock( screen, block, blockTransform, {
32
- hasInnerBlocks:
33
- transformsWithInnerBlocks.includes( blockTransform ),
34
- } );
35
- expect( newBlock ).toBeVisible();
36
- expect( getEditorHtml() ).toMatchSnapshot();
37
- } );
38
-
39
- it( 'matches expected transformation options', async () => {
40
- const screen = await initializeEditor( { initialHtml } );
41
- const transformOptions = await getBlockTransformOptions(
42
- screen,
43
- block
44
- );
45
- expect( transformOptions ).toHaveLength( blockTransforms.length );
46
- } );
47
- } );
@@ -1,12 +0,0 @@
1
- /**
2
- * Internal dependencies
3
- */
4
- import webTransforms from './transforms.js';
5
- import transformationCategories from '../utils/transformation-categories';
6
-
7
- const transforms = {
8
- ...webTransforms,
9
- supportedMobileTransforms: transformationCategories.richText,
10
- };
11
-
12
- export default transforms;
@@ -1,39 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { View } from 'react-native';
5
- /**
6
- * WordPress dependencies
7
- */
8
- import { Children, cloneElement } from '@wordpress/element';
9
- /**
10
- * Internal dependencies
11
- */
12
- import styles from './blockquote.scss';
13
-
14
- export const BlockQuote = ( props ) => {
15
- const citationStyle = { ...styles.citation };
16
- const quoteStyle = { ...styles.quote };
17
-
18
- if ( props.textColor ) {
19
- quoteStyle.color = props.textColor;
20
- quoteStyle.placeholderColor = props.textColor;
21
- citationStyle.color = props.textColor;
22
- citationStyle.placeholderColor = props.textColor;
23
- }
24
-
25
- const newChildren = Children.map( props.children, ( child ) => {
26
- if ( child && child.props.identifier === 'value' ) {
27
- return cloneElement( child, {
28
- style: quoteStyle,
29
- } );
30
- }
31
- if ( child && child.props.identifier === 'citation' ) {
32
- return cloneElement( child, {
33
- style: citationStyle,
34
- } );
35
- }
36
- return child;
37
- } );
38
- return <View>{ newChildren }</View>;
39
- };
@@ -1,8 +0,0 @@
1
- .quote {
2
- font-size: 18px;
3
- }
4
-
5
- .citation {
6
- font-size: 14px;
7
- margin-top: 14px;
8
- }
@@ -1,128 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { __ } from '@wordpress/i18n';
5
- import {
6
- AlignmentControl,
7
- BlockControls,
8
- RichText,
9
- useBlockProps,
10
- getColorObjectByAttributeValues,
11
- __experimentalGetColorClassesAndStyles as getColorClassesAndStyles,
12
- } from '@wordpress/block-editor';
13
- import { createBlock, getDefaultBlockName } from '@wordpress/blocks';
14
-
15
- /**
16
- * Internal dependencies
17
- */
18
- import { Figure } from './figure';
19
- import { BlockQuote } from './blockquote';
20
-
21
- const getBackgroundColor = ( { attributes, colors, style } ) => {
22
- const { backgroundColor } = attributes;
23
-
24
- const colorProps = getColorClassesAndStyles( attributes );
25
- const colorObject = getColorObjectByAttributeValues(
26
- colors,
27
- backgroundColor
28
- );
29
-
30
- return (
31
- colorObject?.color ||
32
- colorProps.style?.backgroundColor ||
33
- colorProps.style?.background ||
34
- style?.backgroundColor
35
- );
36
- };
37
-
38
- const getTextColor = ( { attributes, colors, style } ) => {
39
- const colorProps = getColorClassesAndStyles( attributes );
40
- const colorObject = getColorObjectByAttributeValues(
41
- colors,
42
- attributes.textColor
43
- );
44
- return (
45
- colorObject?.color ||
46
- colorProps.style?.color ||
47
- style?.color ||
48
- style?.baseColors?.color?.text
49
- );
50
- };
51
- const getBorderColor = ( props ) => {
52
- const { wrapperProps } = props;
53
- const defaultColor = getTextColor( props );
54
-
55
- return wrapperProps?.style?.borderColor || defaultColor;
56
- };
57
- /**
58
- * Internal dependencies
59
- */
60
-
61
- function PullQuoteEdit( props ) {
62
- const { attributes, setAttributes, isSelected, insertBlocksAfter } = props;
63
- const { textAlign, citation, value } = attributes;
64
-
65
- const blockProps = useBlockProps( {
66
- backgroundColor: getBackgroundColor( props ),
67
- borderColor: getBorderColor( props ),
68
- } );
69
-
70
- const shouldShowCitation = ! RichText.isEmpty( citation ) || isSelected;
71
-
72
- return (
73
- <>
74
- <BlockControls group="block">
75
- <AlignmentControl
76
- value={ textAlign }
77
- onChange={ ( nextAlign ) => {
78
- setAttributes( { textAlign: nextAlign } );
79
- } }
80
- />
81
- </BlockControls>
82
- <Figure { ...blockProps }>
83
- <BlockQuote textColor={ getTextColor( props ) }>
84
- <RichText
85
- identifier="value"
86
- value={ value }
87
- onChange={ ( nextValue ) =>
88
- setAttributes( {
89
- value: nextValue,
90
- } )
91
- }
92
- aria-label={ __( 'Pullquote text' ) }
93
- placeholder={
94
- // translators: placeholder text used for the quote
95
- __( 'Add quote' )
96
- }
97
- textAlign={ textAlign ?? 'center' }
98
- />
99
- { shouldShowCitation && (
100
- <RichText
101
- identifier="citation"
102
- value={ citation }
103
- aria-label={ __( 'Pullquote citation text' ) }
104
- placeholder={
105
- // translators: placeholder text used for the citation
106
- __( 'Add citation' )
107
- }
108
- onChange={ ( nextCitation ) =>
109
- setAttributes( {
110
- citation: nextCitation,
111
- } )
112
- }
113
- __unstableMobileNoFocusOnMount
114
- textAlign={ textAlign ?? 'center' }
115
- __unstableOnSplitAtEnd={ () =>
116
- insertBlocksAfter(
117
- createBlock( getDefaultBlockName() )
118
- )
119
- }
120
- />
121
- ) }
122
- </BlockQuote>
123
- </Figure>
124
- </>
125
- );
126
- }
127
-
128
- export default PullQuoteEdit;
@@ -1,33 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { View } from 'react-native';
5
- /**
6
- * WordPress dependencies
7
- */
8
- import { usePreferredColorSchemeStyle } from '@wordpress/compose';
9
- /**
10
- * Internal dependencies
11
- */
12
- import styles from './figure.scss';
13
-
14
- export const Figure = ( { children, backgroundColor, borderColor } ) => {
15
- const wpPullquoteFigure = usePreferredColorSchemeStyle(
16
- styles.light,
17
- styles.dark
18
- );
19
-
20
- const customStyles = {};
21
- if ( borderColor ) {
22
- customStyles.borderTopColor = borderColor;
23
- customStyles.borderBottomColor = borderColor;
24
- }
25
-
26
- if ( backgroundColor ) {
27
- customStyles.backgroundColor = backgroundColor;
28
- }
29
-
30
- return (
31
- <View style={ [ wpPullquoteFigure, customStyles ] }>{ children }</View>
32
- );
33
- };
@@ -1,16 +0,0 @@
1
- %shared {
2
- border-width: 3px 0;
3
- padding: 21px 16px;
4
- }
5
-
6
- .light {
7
- @extend %shared;
8
- border-top-color: $gray-lighten-20;
9
- border-bottom-color: $gray-lighten-20;
10
- }
11
-
12
- .dark {
13
- @extend %shared;
14
- border-top-color: $gray-50;
15
- border-bottom-color: $gray-50;
16
- }