@wordpress/block-library 9.48.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.
- package/CHANGELOG.md +7 -1
- package/build/columns/transforms.cjs +65 -0
- package/build/columns/transforms.cjs.map +2 -2
- package/build/gallery/edit.cjs +212 -331
- package/build/gallery/edit.cjs.map +2 -2
- package/build/gallery/transforms.cjs +43 -0
- package/build/gallery/transforms.cjs.map +2 -2
- package/build/heading/edit.cjs +0 -1
- package/build/heading/edit.cjs.map +2 -2
- package/build/list/edit.cjs +1 -8
- package/build/list/edit.cjs.map +2 -2
- package/build/list/ordered-list-settings.cjs +1 -44
- package/build/list/ordered-list-settings.cjs.map +2 -2
- package/build/list-item/hooks/use-merge.cjs +47 -24
- package/build/list-item/hooks/use-merge.cjs.map +2 -2
- package/build/navigation/edit/index.cjs +15 -26
- package/build/navigation/edit/index.cjs.map +2 -2
- package/build/navigation-link/edit.cjs +0 -1
- package/build/navigation-link/edit.cjs.map +2 -2
- package/build/navigation-submenu/edit.cjs +2 -1
- package/build/navigation-submenu/edit.cjs.map +2 -2
- package/build/paragraph/deprecated.cjs +1 -0
- package/build/paragraph/deprecated.cjs.map +2 -2
- package/build/paragraph/edit.cjs +10 -1
- package/build/paragraph/edit.cjs.map +3 -3
- package/build/playlist/block.json +12 -0
- package/build/playlist/edit.cjs +27 -1
- package/build/playlist/edit.cjs.map +2 -2
- package/build/playlist/save.cjs +8 -1
- package/build/playlist/save.cjs.map +2 -2
- package/build/playlist/view.cjs +1 -0
- package/build/playlist/view.cjs.map +2 -2
- package/build/post-time-to-read/index.cjs +1 -1
- package/build/post-time-to-read/index.cjs.map +2 -2
- package/build/post-time-to-read/variations.cjs +1 -1
- package/build/post-time-to-read/variations.cjs.map +2 -2
- package/build/pullquote/edit.cjs +2 -7
- package/build/pullquote/edit.cjs.map +2 -2
- package/build/quote/edit.cjs +4 -9
- package/build/quote/edit.cjs.map +2 -2
- package/build/shortcode/transforms.cjs +2 -2
- package/build/shortcode/transforms.cjs.map +2 -2
- package/build/utils/waveform-player.cjs +42 -9
- package/build/utils/waveform-player.cjs.map +2 -2
- package/build/utils/waveform-utils.cjs +6 -4
- package/build/utils/waveform-utils.cjs.map +2 -2
- package/build/video/edit-common-settings.cjs +3 -6
- package/build/video/edit-common-settings.cjs.map +2 -2
- package/build-module/columns/transforms.mjs +65 -0
- package/build-module/columns/transforms.mjs.map +2 -2
- package/build-module/gallery/edit.mjs +214 -334
- package/build-module/gallery/edit.mjs.map +2 -2
- package/build-module/gallery/transforms.mjs +43 -0
- package/build-module/gallery/transforms.mjs.map +2 -2
- package/build-module/heading/edit.mjs +1 -2
- package/build-module/heading/edit.mjs.map +2 -2
- package/build-module/list/edit.mjs +2 -9
- package/build-module/list/edit.mjs.map +2 -2
- package/build-module/list/ordered-list-settings.mjs +1 -45
- package/build-module/list/ordered-list-settings.mjs.map +2 -2
- package/build-module/list-item/hooks/use-merge.mjs +48 -25
- package/build-module/list-item/hooks/use-merge.mjs.map +2 -2
- package/build-module/navigation/edit/index.mjs +16 -33
- package/build-module/navigation/edit/index.mjs.map +2 -2
- package/build-module/navigation-link/edit.mjs +0 -1
- package/build-module/navigation-link/edit.mjs.map +2 -2
- package/build-module/navigation-submenu/edit.mjs +2 -1
- package/build-module/navigation-submenu/edit.mjs.map +2 -2
- package/build-module/paragraph/deprecated.mjs +1 -0
- package/build-module/paragraph/deprecated.mjs.map +2 -2
- package/build-module/paragraph/edit.mjs +12 -2
- package/build-module/paragraph/edit.mjs.map +2 -2
- package/build-module/playlist/block.json +12 -0
- package/build-module/playlist/edit.mjs +27 -1
- package/build-module/playlist/edit.mjs.map +2 -2
- package/build-module/playlist/save.mjs +8 -1
- package/build-module/playlist/save.mjs.map +2 -2
- package/build-module/playlist/view.mjs +1 -0
- package/build-module/playlist/view.mjs.map +2 -2
- package/build-module/post-time-to-read/index.mjs +1 -1
- package/build-module/post-time-to-read/index.mjs.map +2 -2
- package/build-module/post-time-to-read/variations.mjs +2 -2
- package/build-module/post-time-to-read/variations.mjs.map +2 -2
- package/build-module/pullquote/edit.mjs +2 -7
- package/build-module/pullquote/edit.mjs.map +2 -2
- package/build-module/quote/edit.mjs +5 -10
- package/build-module/quote/edit.mjs.map +2 -2
- package/build-module/shortcode/transforms.mjs +2 -2
- package/build-module/shortcode/transforms.mjs.map +2 -2
- package/build-module/utils/waveform-player.mjs +44 -11
- package/build-module/utils/waveform-player.mjs.map +2 -2
- package/build-module/utils/waveform-utils.mjs +6 -4
- package/build-module/utils/waveform-utils.mjs.map +2 -2
- package/build-module/video/edit-common-settings.mjs +4 -7
- package/build-module/video/edit-common-settings.mjs.map +2 -2
- package/build-style/comment-template/style-rtl.css +1 -0
- package/build-style/comment-template/style.css +1 -0
- package/build-style/common-rtl.css +30 -10
- package/build-style/common.css +30 -10
- package/build-style/cover/style-rtl.css +2 -1
- package/build-style/cover/style.css +2 -1
- package/build-style/editor-rtl.css +22 -11
- package/build-style/editor.css +22 -11
- package/build-style/form-input/style-rtl.css +2 -0
- package/build-style/form-input/style.css +2 -0
- package/build-style/gallery/style-rtl.css +4 -2
- package/build-style/gallery/style.css +4 -2
- package/build-style/media-text/style-rtl.css +2 -1
- package/build-style/media-text/style.css +2 -1
- package/build-style/playlist/style-rtl.css +3 -0
- package/build-style/playlist/style.css +3 -0
- package/build-style/query/editor-rtl.css +8 -4
- package/build-style/query/editor.css +8 -4
- package/build-style/read-more/style-rtl.css +1 -0
- package/build-style/read-more/style.css +1 -0
- package/build-style/reset-rtl.css +3 -1
- package/build-style/reset.css +3 -1
- package/build-style/search/style-rtl.css +3 -1
- package/build-style/search/style.css +3 -1
- package/build-style/site-logo/editor-rtl.css +2 -1
- package/build-style/site-logo/editor.css +2 -1
- package/build-style/style-rtl.css +53 -17
- package/build-style/style.css +53 -17
- package/build-style/tab/style-rtl.css +3 -1
- package/build-style/tab/style.css +3 -1
- package/build-style/template-part/editor-rtl.css +8 -4
- package/build-style/template-part/editor.css +8 -4
- package/build-style/video/style-rtl.css +2 -1
- package/build-style/video/style.css +2 -1
- package/package.json +49 -45
- package/src/accordion/README.md +97 -0
- package/src/accordion-heading/README.md +81 -0
- package/src/accordion-item/README.md +85 -0
- package/src/accordion-panel/README.md +74 -0
- package/src/archives/README.md +56 -0
- package/src/audio/README.md +55 -0
- package/src/avatar/README.md +74 -0
- package/src/block/README.md +56 -0
- package/src/breadcrumbs/README.md +67 -0
- package/src/button/README.md +93 -0
- package/src/buttons/README.md +80 -0
- package/src/calendar/README.md +51 -0
- package/src/categories/README.md +69 -0
- package/src/code/README.md +55 -0
- package/src/column/README.md +72 -0
- package/src/columns/README.md +90 -0
- package/src/columns/test/transforms.js +164 -0
- package/src/columns/transforms.js +74 -0
- package/src/comment-author-avatar/README.md +63 -0
- package/src/comment-author-name/README.md +67 -0
- package/src/comment-content/README.md +61 -0
- package/src/comment-date/README.md +67 -0
- package/src/comment-edit-link/README.md +67 -0
- package/src/comment-reply-link/README.md +63 -0
- package/src/comment-template/README.md +60 -0
- package/src/comments/README.md +88 -0
- package/src/comments-pagination/README.md +77 -0
- package/src/comments-pagination-next/README.md +64 -0
- package/src/comments-pagination-numbers/README.md +64 -0
- package/src/comments-pagination-previous/README.md +64 -0
- package/src/comments-title/README.md +70 -0
- package/src/common.scss +63 -10
- package/src/cover/README.md +111 -0
- package/src/details/README.md +65 -0
- package/src/embed/README.md +56 -0
- package/src/file/README.md +60 -0
- package/src/footnotes/README.md +64 -0
- package/src/form/README.md +90 -0
- package/src/form-input/README.md +74 -0
- package/src/form-submission-notification/README.md +50 -0
- package/src/form-submit-button/README.md +54 -0
- package/src/freeform/README.md +49 -0
- package/src/gallery/README.md +115 -0
- package/src/gallery/edit.js +213 -350
- package/src/gallery/test/transforms.js +155 -0
- package/src/gallery/transforms.js +47 -0
- package/src/group/README.md +80 -0
- package/src/heading/README.md +60 -0
- package/src/heading/edit.js +1 -2
- package/src/home-link/README.md +66 -0
- package/src/home-link/index.php +3 -15
- package/src/html/README.md +48 -0
- package/src/icon/README.md +63 -0
- package/src/image/README.md +102 -0
- package/src/image/index.php +4 -4
- package/src/latest-comments/README.md +57 -0
- package/src/latest-posts/README.md +71 -0
- package/src/list/README.md +70 -0
- package/src/list/edit.js +2 -9
- package/src/list/ordered-list-settings.js +46 -92
- package/src/list-item/README.md +71 -0
- package/src/list-item/hooks/use-merge.js +53 -46
- package/src/loginout/README.md +56 -0
- package/src/math/README.md +50 -0
- package/src/media-text/README.md +92 -0
- package/src/missing/README.md +55 -0
- package/src/more/README.md +49 -0
- package/src/navigation/README.md +115 -0
- package/src/navigation/edit/index.js +10 -30
- package/src/navigation-link/README.md +93 -0
- package/src/navigation-link/edit.js +0 -1
- package/src/navigation-link/index.php +1 -15
- package/src/navigation-overlay-close/README.md +48 -0
- package/src/navigation-submenu/README.md +84 -0
- package/src/navigation-submenu/edit.js +1 -0
- package/src/navigation-submenu/index.php +1 -17
- package/src/nextpage/README.md +50 -0
- package/src/page-list/README.md +84 -0
- package/src/page-list/index.php +3 -15
- package/src/page-list-item/README.md +77 -0
- package/src/paragraph/README.md +70 -0
- package/src/paragraph/deprecated.js +1 -0
- package/src/paragraph/edit.js +13 -1
- package/src/pattern/README.md +45 -0
- package/src/playlist/README.md +86 -0
- package/src/playlist/block.json +12 -0
- package/src/playlist/edit.js +27 -0
- package/src/playlist/index.php +10 -3
- package/src/playlist/save.js +9 -1
- package/src/playlist/style.scss +7 -0
- package/src/playlist/view.js +1 -0
- package/src/playlist-track/README.md +69 -0
- package/src/post-author/README.md +78 -0
- package/src/post-author-biography/README.md +59 -0
- package/src/post-author-name/README.md +63 -0
- package/src/post-author-name/index.php +1 -1
- package/src/post-comment/README.md +61 -0
- package/src/post-comments-count/README.md +58 -0
- package/src/post-comments-form/README.md +59 -0
- package/src/post-comments-link/README.md +60 -0
- package/src/post-content/README.md +71 -0
- package/src/post-date/README.md +65 -0
- package/src/post-date/index.php +1 -1
- package/src/post-excerpt/README.md +66 -0
- package/src/post-featured-image/README.md +85 -0
- package/src/post-featured-image/index.php +1 -1
- package/src/post-navigation-link/README.md +63 -0
- package/src/post-template/README.md +71 -0
- package/src/post-terms/README.md +65 -0
- package/src/post-time-to-read/README.md +63 -0
- package/src/post-time-to-read/index.js +1 -1
- package/src/post-time-to-read/variations.js +2 -2
- package/src/post-title/README.md +69 -0
- package/src/preformatted/README.md +50 -0
- package/src/pullquote/README.md +64 -0
- package/src/pullquote/edit.js +1 -7
- package/src/query/README.md +64 -0
- package/src/query-no-results/README.md +65 -0
- package/src/query-pagination/README.md +79 -0
- package/src/query-pagination-next/README.md +67 -0
- package/src/query-pagination-numbers/README.md +65 -0
- package/src/query-pagination-previous/README.md +67 -0
- package/src/query-title/README.md +65 -0
- package/src/query-total/README.md +66 -0
- package/src/quote/README.md +75 -0
- package/src/quote/edit.js +3 -9
- package/src/read-more/README.md +61 -0
- package/src/read-more/index.php +2 -2
- package/src/rss/README.md +62 -0
- package/src/search/README.md +66 -0
- package/src/separator/README.md +62 -0
- package/src/shortcode/README.md +44 -0
- package/src/shortcode/transforms.js +2 -2
- package/src/site-logo/README.md +72 -0
- package/src/site-tagline/README.md +56 -0
- package/src/site-title/README.md +57 -0
- package/src/social-link/README.md +64 -0
- package/src/social-links/README.md +98 -0
- package/src/spacer/README.md +53 -0
- package/src/tab/README.md +69 -0
- package/src/tab-list/README.md +79 -0
- package/src/tab-panel/README.md +75 -0
- package/src/tab-panels/README.md +75 -0
- package/src/table/README.md +71 -0
- package/src/table-of-contents/README.md +61 -0
- package/src/tabs/README.md +83 -0
- package/src/tag-cloud/README.md +62 -0
- package/src/template-part/README.md +48 -0
- package/src/term-count/README.md +59 -0
- package/src/term-description/README.md +60 -0
- package/src/term-name/README.md +65 -0
- package/src/term-template/README.md +65 -0
- package/src/terms-query/README.md +58 -0
- package/src/text-columns/README.md +51 -0
- package/src/utils/test/waveform-player.js +254 -0
- package/src/utils/waveform-player.js +90 -18
- package/src/utils/waveform-utils.js +15 -11
- package/src/verse/README.md +58 -0
- package/src/video/README.md +58 -0
- package/src/video/edit-common-settings.js +4 -7
- package/src/audio/edit.native.js +0 -250
- package/src/audio/style.native.scss +0 -13
- package/src/audio/test/__snapshots__/edit.native.js.snap +0 -546
- package/src/audio/test/__snapshots__/transforms.native.js.snap +0 -25
- package/src/audio/test/edit.native.js +0 -132
- package/src/audio/test/transforms.native.js +0 -43
- package/src/audio/transforms.native.js +0 -12
- package/src/block/edit-title.native.js +0 -67
- package/src/block/edit.native.js +0 -247
- package/src/block/editor.native.scss +0 -125
- package/src/block/test/__snapshots__/transforms.native.js.snap +0 -15
- package/src/block/test/edit.native.js +0 -262
- package/src/block/test/transforms.native.js +0 -40
- package/src/button/color-background.native.js +0 -41
- package/src/button/edit.native.js +0 -567
- package/src/button/editor.native.scss +0 -70
- package/src/button/rich-text.android.scss +0 -6
- package/src/button/rich-text.ios.scss +0 -6
- package/src/buttons/edit.native.js +0 -157
- package/src/buttons/editor.native.scss +0 -11
- package/src/buttons/test/__snapshots__/edit.native.js.snap +0 -99
- package/src/buttons/test/__snapshots__/transforms.native.js.snap +0 -31
- package/src/buttons/test/edit.native.js +0 -485
- package/src/buttons/test/transforms.native.js +0 -48
- package/src/buttons/transforms.native.js +0 -12
- package/src/code/edit.native.js +0 -70
- package/src/code/test/__snapshots__/edit.native.js.snap +0 -13
- package/src/code/test/edit.native.js +0 -65
- package/src/code/theme.native.scss +0 -22
- package/src/code/transforms.native.js +0 -12
- package/src/column/column-preview.native.js +0 -58
- package/src/column/edit.native.js +0 -273
- package/src/column/editor.native.scss +0 -75
- package/src/columns/columnCalculations.native.js +0 -178
- package/src/columns/edit.native.js +0 -507
- package/src/columns/editor.native.scss +0 -17
- package/src/columns/test/__snapshots__/edit.native.js.snap +0 -305
- package/src/columns/test/__snapshots__/transforms.native.js.snap +0 -61
- package/src/columns/test/edit.native.js +0 -496
- package/src/columns/test/transforms.native.js +0 -89
- package/src/columns/transforms.native.js +0 -12
- package/src/cover/controls.native.js +0 -307
- package/src/cover/edit.native.js +0 -708
- package/src/cover/focal-point-settings-button.native.js +0 -53
- package/src/cover/overlay-color-settings.native.js +0 -106
- package/src/cover/style.native.scss +0 -220
- package/src/cover/test/__snapshots__/edit.native.js.snap +0 -105
- package/src/cover/test/__snapshots__/transforms.native.js.snap +0 -73
- package/src/cover/test/edit.native.js +0 -701
- package/src/cover/test/transforms.native.js +0 -116
- package/src/cover/transforms.native.js +0 -12
- package/src/cover/use-cover-is-dark.native.js +0 -51
- package/src/embed/edit.native.js +0 -345
- package/src/embed/embed-controls.native.js +0 -65
- package/src/embed/embed-link-settings.native.js +0 -99
- package/src/embed/embed-loading.native.js +0 -29
- package/src/embed/embed-no-preview.native.js +0 -230
- package/src/embed/embed-placeholder.native.js +0 -178
- package/src/embed/embed-preview.native.js +0 -157
- package/src/embed/styles.native.scss +0 -196
- package/src/embed/test/__snapshots__/index.native.js.snap +0 -191
- package/src/embed/test/__snapshots__/transforms.native.js.snap +0 -23
- package/src/embed/test/index.native.js +0 -1125
- package/src/embed/test/transforms.native.js +0 -44
- package/src/embed/transforms.native.js +0 -12
- package/src/embed/wp-embed-preview.native.js +0 -80
- package/src/file/edit.native.js +0 -605
- package/src/file/style.native.scss +0 -79
- package/src/file/test/__snapshots__/edit.native.js.snap +0 -580
- package/src/file/test/__snapshots__/transforms.native.js.snap +0 -19
- package/src/file/test/edit.native.js +0 -93
- package/src/file/test/transforms.native.js +0 -43
- package/src/file/transforms.native.js +0 -12
- package/src/freeform/edit.native.js +0 -13
- package/src/freeform/test/__snapshots__/index.native.js.snap +0 -7
- package/src/freeform/test/__snapshots__/transforms.native.js.snap +0 -19
- package/src/freeform/test/index.native.js +0 -57
- package/src/freeform/test/transforms.native.js +0 -39
- package/src/gallery/gallery-styles.native.scss +0 -8
- package/src/gallery/gallery.native.js +0 -124
- package/src/gallery/styles.native.scss +0 -7
- package/src/gallery/test/__snapshots__/index.native.js.snap +0 -177
- package/src/gallery/test/__snapshots__/transforms.native.js.snap +0 -53
- package/src/gallery/test/helpers.native.js +0 -106
- package/src/gallery/test/index.native.js +0 -700
- package/src/gallery/test/transforms.native.js +0 -53
- package/src/gallery/test/use-get-media.native.js +0 -24
- package/src/gallery/transforms.native.js +0 -12
- package/src/gallery/use-get-media.native.js +0 -49
- package/src/group/edit.native.js +0 -137
- package/src/group/editor.native.scss +0 -56
- package/src/group/test/__snapshots__/edit.native.js.snap +0 -19
- package/src/group/test/__snapshots__/transforms.native.js.snap +0 -35
- package/src/group/test/edit.native.js +0 -100
- package/src/group/test/transforms.native.js +0 -73
- package/src/heading/edit.native.js +0 -159
- package/src/heading/test/__snapshots__/index.native.js.snap +0 -43
- package/src/heading/test/__snapshots__/transforms.native.js.snap +0 -47
- package/src/heading/test/index.native.js +0 -257
- package/src/heading/test/transforms.native.js +0 -46
- package/src/heading/transforms.native.js +0 -12
- package/src/html/transforms.native.js +0 -11
- package/src/image/edit.native.js +0 -959
- package/src/image/styles.native.scss +0 -70
- package/src/image/test/__snapshots__/transforms.native.js.snap +0 -49
- package/src/image/test/edit.native.js +0 -459
- package/src/image/test/transforms.native.js +0 -49
- package/src/image/transforms.native.js +0 -12
- package/src/index.native.js +0 -274
- package/src/latest-posts/edit.native.js +0 -294
- package/src/latest-posts/style.native.scss +0 -47
- package/src/latest-posts/test/__snapshots__/edit.native.js.snap +0 -3
- package/src/latest-posts/test/__snapshots__/transforms.native.js.snap +0 -15
- package/src/latest-posts/test/edit.native.js +0 -49
- package/src/latest-posts/test/transforms.native.js +0 -61
- package/src/list/tag-name.native.js +0 -12
- package/src/list/test/__snapshots__/edit.native.js.snap +0 -121
- package/src/list/test/__snapshots__/transforms.native.js.snap +0 -85
- package/src/list/test/edit.native.js +0 -602
- package/src/list/test/transforms.native.js +0 -56
- package/src/list/transforms.native.js +0 -12
- package/src/list-item/edit.native.js +0 -175
- package/src/list-item/hooks/use-enter.native.js +0 -81
- package/src/list-item/icons.native.js +0 -34
- package/src/list-item/list-style-type.native.js +0 -146
- package/src/list-item/style.native.scss +0 -57
- package/src/media-text/edit.native.js +0 -417
- package/src/media-text/icon-retry.native.js +0 -11
- package/src/media-text/media-container.native.js +0 -393
- package/src/media-text/style.native.scss +0 -191
- package/src/media-text/test/__snapshots__/transforms.native.js.snap +0 -73
- package/src/media-text/test/edit.native.js +0 -58
- package/src/media-text/test/transforms.native.js +0 -116
- package/src/media-text/transforms.native.js +0 -12
- package/src/missing/edit.native.js +0 -294
- package/src/missing/style.native.scss +0 -79
- package/src/missing/test/__snapshots__/edit.native.js.snap +0 -110
- package/src/missing/test/edit-integration.native.js +0 -168
- package/src/missing/test/edit.native.js +0 -81
- package/src/more/edit.native.js +0 -36
- package/src/more/editor.native.scss +0 -21
- package/src/more/test/__snapshots__/edit.native.js.snap +0 -7
- package/src/more/test/__snapshots__/transforms.native.js.snap +0 -19
- package/src/more/test/edit.native.js +0 -41
- package/src/more/test/transforms.native.js +0 -42
- package/src/more/transforms.native.js +0 -12
- package/src/navigation-link/shared/build-css-font-sizes.php +0 -43
- package/src/nextpage/edit.native.js +0 -58
- package/src/nextpage/editor.native.scss +0 -21
- package/src/nextpage/test/__snapshots__/transforms.native.js.snap +0 -19
- package/src/nextpage/test/transforms.native.js +0 -42
- package/src/nextpage/transforms.native.js +0 -12
- package/src/paragraph/edit.native.js +0 -116
- package/src/paragraph/test/__snapshots__/edit.native.js.snap +0 -88
- package/src/paragraph/test/__snapshots__/transforms.native.js.snap +0 -65
- package/src/paragraph/test/edit.native.js +0 -999
- package/src/paragraph/test/transforms.native.js +0 -51
- package/src/paragraph/transforms.native.js +0 -12
- package/src/preformatted/edit.native.js +0 -48
- package/src/preformatted/styles.native.scss +0 -30
- package/src/preformatted/test/__snapshots__/edit.native.js.snap +0 -95
- package/src/preformatted/test/__snapshots__/transforms.native.js.snap +0 -37
- package/src/preformatted/test/edit.native.js +0 -111
- package/src/preformatted/test/transforms.native.js +0 -47
- package/src/preformatted/transforms.native.js +0 -12
- package/src/pullquote/blockquote.native.js +0 -39
- package/src/pullquote/blockquote.native.scss +0 -8
- package/src/pullquote/edit.native.js +0 -128
- package/src/pullquote/figure.native.js +0 -33
- package/src/pullquote/figure.native.scss +0 -16
- package/src/pullquote/test/__snapshots__/transforms.native.js.snap +0 -47
- package/src/pullquote/test/edit.native.js +0 -73
- package/src/pullquote/test/transforms.native.js +0 -46
- package/src/pullquote/transforms.native.js +0 -12
- package/src/quote/test/__snapshots__/transforms.native.js.snap +0 -49
- package/src/quote/test/edit.native.js +0 -94
- package/src/quote/test/transforms.native.js +0 -69
- package/src/quote/transforms.native.js +0 -12
- package/src/search/edit.native.js +0 -486
- package/src/search/style.native.scss +0 -99
- package/src/search/test/__snapshots__/edit.native.js.snap +0 -827
- package/src/search/test/__snapshots__/transforms.native.js.snap +0 -15
- package/src/search/test/edit.native.js +0 -170
- package/src/search/test/transforms.native.js +0 -40
- package/src/separator/separator-settings.native.js +0 -3
- package/src/separator/test/__snapshots__/edit.native.js.snap +0 -7
- package/src/separator/test/__snapshots__/transforms.native.js.snap +0 -25
- package/src/separator/test/edit.native.js +0 -41
- package/src/separator/test/transforms.native.js +0 -42
- package/src/separator/transforms.native.js +0 -12
- package/src/shortcode/edit.native.js +0 -77
- package/src/shortcode/style.native.scss +0 -44
- package/src/shortcode/test/__snapshots__/edit.native.js.snap +0 -9
- package/src/shortcode/test/__snapshots__/transforms.native.js.snap +0 -19
- package/src/shortcode/test/edit.native.js +0 -70
- package/src/shortcode/test/transforms.native.js +0 -42
- package/src/shortcode/transforms.native.js +0 -12
- package/src/social-link/edit.native.js +0 -219
- package/src/social-link/editor.native.scss +0 -18
- package/src/social-links/edit.native.js +0 -147
- package/src/social-links/editor.native.scss +0 -25
- package/src/social-links/test/__snapshots__/edit.native.js.snap +0 -57
- package/src/social-links/test/__snapshots__/transforms.native.js.snap +0 -31
- package/src/social-links/test/edit.native.js +0 -266
- package/src/social-links/test/transforms.native.js +0 -53
- package/src/spacer/controls.native.js +0 -86
- package/src/spacer/edit.native.js +0 -110
- package/src/spacer/editor.native.scss +0 -18
- package/src/spacer/save.native.js +0 -18
- package/src/spacer/test/__snapshots__/index.native.js.snap +0 -43
- package/src/spacer/test/__snapshots__/transforms.native.js.snap +0 -25
- package/src/spacer/test/index.native.js +0 -257
- package/src/spacer/test/transforms.native.js +0 -42
- package/src/table/transforms.native.js +0 -11
- package/src/text-columns/transforms.native.js +0 -12
- package/src/utils/init-block.native.js +0 -40
- package/src/utils/transformation-categories.native.js +0 -47
- package/src/verse/test/__snapshots__/edit.native.js.snap +0 -13
- package/src/verse/test/__snapshots__/transforms.native.js.snap +0 -31
- package/src/verse/test/edit.native.js +0 -118
- package/src/verse/test/transforms.native.js +0 -46
- package/src/verse/transforms.native.js +0 -12
- package/src/video/edit.native.js +0 -406
- package/src/video/icon-retry.native.js +0 -11
- package/src/video/style.native.scss +0 -81
- package/src/video/test/__snapshots__/transforms.native.js.snap +0 -41
- package/src/video/test/edit.native.js +0 -53
- package/src/video/test/transforms.native.js +0 -49
- package/src/video/transforms.native.js +0 -12
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
// @format
|
|
2
|
-
|
|
3
|
-
.content {
|
|
4
|
-
flex: 1;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
.contentCentered {
|
|
8
|
-
flex: 1;
|
|
9
|
-
justify-content: center;
|
|
10
|
-
align-items: center;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.iconPlaceholder {
|
|
14
|
-
fill: $gray-dark;
|
|
15
|
-
width: 100%;
|
|
16
|
-
height: 100%;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.iconPlaceholderDark {
|
|
20
|
-
fill: $white;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.is-style-rounded {
|
|
24
|
-
border-radius: 9999px;
|
|
25
|
-
overflow: hidden;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.panelBody {
|
|
29
|
-
padding-left: 0;
|
|
30
|
-
padding-right: 0;
|
|
31
|
-
padding-bottom: $grid-unit;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.fixedHeight {
|
|
35
|
-
height: 150;
|
|
36
|
-
overflow: visible;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.featuredImagePanelTitle {
|
|
40
|
-
padding-bottom: 0;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
.setFeaturedButtonCellContainer {
|
|
44
|
-
align-items: flex-start;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.setFeaturedButton {
|
|
48
|
-
text-align: left;
|
|
49
|
-
color: $blue-50;
|
|
50
|
-
padding: $grid-unit-15 0;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
.setFeaturedButtonDark {
|
|
54
|
-
color: $blue-30;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.removeFeaturedButton {
|
|
58
|
-
color: $alert-red;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.image__loading {
|
|
62
|
-
align-items: center;
|
|
63
|
-
background-color: rgba(10, 10, 10, 0.5);
|
|
64
|
-
flex: 1;
|
|
65
|
-
height: 100%;
|
|
66
|
-
justify-content: center;
|
|
67
|
-
position: absolute;
|
|
68
|
-
width: 100%;
|
|
69
|
-
z-index: 1;
|
|
70
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`Image block transformations to Columns block 1`] = `
|
|
4
|
-
"<!-- wp:columns -->
|
|
5
|
-
<div class="wp-block-columns"><!-- wp:column {"width":"100%"} -->
|
|
6
|
-
<div class="wp-block-column" style="flex-basis:100%"><!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
7
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://cldup.com/cXyG__fTLN.jpg"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
8
|
-
<!-- /wp:image --></div>
|
|
9
|
-
<!-- /wp:column --></div>
|
|
10
|
-
<!-- /wp:columns -->"
|
|
11
|
-
`;
|
|
12
|
-
|
|
13
|
-
exports[`Image block transformations to Cover block 1`] = `
|
|
14
|
-
"<!-- wp:cover {"url":"https://cldup.com/cXyG__fTLN.jpg","id":1,"dimRatio":50,"style":{"color":{}}} -->
|
|
15
|
-
<div class="wp-block-cover"><img class="wp-block-cover__image-background wp-image-1" alt="" src="https://cldup.com/cXyG__fTLN.jpg" data-object-fit="cover"/><span aria-hidden="true" class="wp-block-cover__background has-background-dim"></span><div class="wp-block-cover__inner-container"><!-- wp:paragraph {"align":"center","fontSize":"large"} -->
|
|
16
|
-
<p class="has-text-align-center has-large-font-size">Mountain</p>
|
|
17
|
-
<!-- /wp:paragraph --></div></div>
|
|
18
|
-
<!-- /wp:cover -->"
|
|
19
|
-
`;
|
|
20
|
-
|
|
21
|
-
exports[`Image block transformations to File block 1`] = `
|
|
22
|
-
"<!-- wp:file {"id":1,"href":"https://cldup.com/cXyG__fTLN.jpg"} -->
|
|
23
|
-
<div class="wp-block-file"><a href="https://cldup.com/cXyG__fTLN.jpg">Mountain</a><a href="https://cldup.com/cXyG__fTLN.jpg" class="wp-block-file__button wp-element-button" download>Download</a></div>
|
|
24
|
-
<!-- /wp:file -->"
|
|
25
|
-
`;
|
|
26
|
-
|
|
27
|
-
exports[`Image block transformations to Gallery block 1`] = `
|
|
28
|
-
"<!-- wp:gallery {"linkTo":"none"} -->
|
|
29
|
-
<figure class="wp-block-gallery has-nested-images columns-default is-cropped"><!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
30
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://cldup.com/cXyG__fTLN.jpg"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
31
|
-
<!-- /wp:image --></figure>
|
|
32
|
-
<!-- /wp:gallery -->"
|
|
33
|
-
`;
|
|
34
|
-
|
|
35
|
-
exports[`Image block transformations to Group block 1`] = `
|
|
36
|
-
"<!-- wp:group {"layout":{"type":"constrained"}} -->
|
|
37
|
-
<div class="wp-block-group"><!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
38
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://cldup.com/cXyG__fTLN.jpg"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
39
|
-
<!-- /wp:image --></div>
|
|
40
|
-
<!-- /wp:group -->"
|
|
41
|
-
`;
|
|
42
|
-
|
|
43
|
-
exports[`Image block transformations to Media & Text block 1`] = `
|
|
44
|
-
"<!-- wp:media-text {"mediaId":1,"mediaType":"image"} -->
|
|
45
|
-
<div class="wp-block-media-text is-stacked-on-mobile"><figure class="wp-block-media-text__media"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1 size-full"/></figure><div class="wp-block-media-text__content"><!-- wp:paragraph -->
|
|
46
|
-
<p></p>
|
|
47
|
-
<!-- /wp:paragraph --></div></div>
|
|
48
|
-
<!-- /wp:media-text -->"
|
|
49
|
-
`;
|
|
@@ -1,459 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import {
|
|
5
|
-
act,
|
|
6
|
-
fireEvent,
|
|
7
|
-
initializeEditor,
|
|
8
|
-
getEditorHtml,
|
|
9
|
-
render,
|
|
10
|
-
setupApiFetch,
|
|
11
|
-
} from 'test/helpers';
|
|
12
|
-
import { Image } from 'react-native';
|
|
13
|
-
import Clipboard from '@react-native-clipboard/clipboard';
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* WordPress dependencies
|
|
17
|
-
*/
|
|
18
|
-
import { getBlockTypes, unregisterBlockType } from '@wordpress/blocks';
|
|
19
|
-
import {
|
|
20
|
-
requestMediaPicker,
|
|
21
|
-
setFeaturedImage,
|
|
22
|
-
sendMediaUpload,
|
|
23
|
-
subscribeMediaUpload,
|
|
24
|
-
} from '@wordpress/react-native-bridge';
|
|
25
|
-
import { select, dispatch } from '@wordpress/data';
|
|
26
|
-
import { store as editorStore } from '@wordpress/editor';
|
|
27
|
-
import { store as coreStore } from '@wordpress/core-data';
|
|
28
|
-
import apiFetch from '@wordpress/api-fetch';
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Internal dependencies
|
|
32
|
-
*/
|
|
33
|
-
import { registerCoreBlocks } from '../..';
|
|
34
|
-
import ImageEdit from '../edit';
|
|
35
|
-
|
|
36
|
-
let uploadCallBack;
|
|
37
|
-
subscribeMediaUpload.mockImplementation( ( callback ) => {
|
|
38
|
-
uploadCallBack = callback;
|
|
39
|
-
} );
|
|
40
|
-
sendMediaUpload.mockImplementation( ( payload ) => {
|
|
41
|
-
uploadCallBack( payload );
|
|
42
|
-
} );
|
|
43
|
-
|
|
44
|
-
function mockGetMedia( media ) {
|
|
45
|
-
jest.spyOn( select( coreStore ), 'getEntityRecord' ).mockReturnValue(
|
|
46
|
-
media
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
const FETCH_MEDIA = {
|
|
51
|
-
request: {
|
|
52
|
-
path: `/wp/v2/media/1?context=edit`,
|
|
53
|
-
parse: false,
|
|
54
|
-
},
|
|
55
|
-
response: {
|
|
56
|
-
source_url: 'https://cldup.com/cXyG__fTLN.jpg',
|
|
57
|
-
id: 1,
|
|
58
|
-
},
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
const clipboardPromise = Promise.resolve( '' );
|
|
62
|
-
Clipboard.getString.mockImplementation( () => clipboardPromise );
|
|
63
|
-
|
|
64
|
-
beforeAll( () => {
|
|
65
|
-
registerCoreBlocks();
|
|
66
|
-
|
|
67
|
-
// Mock Image.getSize to avoid failed attempt to size non-existent image
|
|
68
|
-
const getSizeSpy = jest.spyOn( Image, 'getSize' );
|
|
69
|
-
getSizeSpy.mockImplementation( ( _url, callback ) => callback( 300, 200 ) );
|
|
70
|
-
} );
|
|
71
|
-
|
|
72
|
-
beforeEach( () => {
|
|
73
|
-
// Mock media fetch requests
|
|
74
|
-
setupApiFetch( [ FETCH_MEDIA ] );
|
|
75
|
-
|
|
76
|
-
// Invalidate `getEntityRecord` resolutions to allow requesting to the API the same media id
|
|
77
|
-
dispatch( coreStore ).invalidateResolution( 'getEntityRecord', [
|
|
78
|
-
'postType',
|
|
79
|
-
'attachment',
|
|
80
|
-
1,
|
|
81
|
-
] );
|
|
82
|
-
} );
|
|
83
|
-
|
|
84
|
-
afterEach( () => {
|
|
85
|
-
apiFetch.mockReset();
|
|
86
|
-
} );
|
|
87
|
-
|
|
88
|
-
afterAll( () => {
|
|
89
|
-
getBlockTypes().forEach( ( { name } ) => {
|
|
90
|
-
unregisterBlockType( name );
|
|
91
|
-
} );
|
|
92
|
-
|
|
93
|
-
// Restore mocks.
|
|
94
|
-
Image.getSize.mockRestore();
|
|
95
|
-
} );
|
|
96
|
-
|
|
97
|
-
describe( 'Image Block', () => {
|
|
98
|
-
it( 'sets link to None', async () => {
|
|
99
|
-
const initialHtml = `
|
|
100
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
101
|
-
<figure class="wp-block-image size-large is-style-default">
|
|
102
|
-
<a href="https://cldup.com/cXyG__fTLN.jpg">
|
|
103
|
-
<img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/>
|
|
104
|
-
</a>
|
|
105
|
-
<figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
106
|
-
<!-- /wp:image -->`;
|
|
107
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
108
|
-
// Check that image is fetched via `getEntityRecord`
|
|
109
|
-
expect( apiFetch ).toHaveBeenCalledWith( FETCH_MEDIA.request );
|
|
110
|
-
|
|
111
|
-
const [ imageBlock ] = screen.getAllByLabelText( /Image Block/ );
|
|
112
|
-
fireEvent.press( imageBlock );
|
|
113
|
-
// Awaiting navigation event seemingly required due to React Navigation bug
|
|
114
|
-
// https://github.com/react-navigation/react-navigation/issues/9701
|
|
115
|
-
await act( () =>
|
|
116
|
-
fireEvent.press( screen.getByLabelText( 'Open Settings' ) )
|
|
117
|
-
);
|
|
118
|
-
fireEvent.press( screen.getByText( 'Media File' ) );
|
|
119
|
-
fireEvent.press( screen.getByText( 'None' ) );
|
|
120
|
-
|
|
121
|
-
const expectedHtml = `<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"none","className":"is-style-default"} -->
|
|
122
|
-
<figure class="wp-block-image size-large is-style-default"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
123
|
-
<!-- /wp:image -->`;
|
|
124
|
-
expect( getEditorHtml() ).toBe( expectedHtml );
|
|
125
|
-
} );
|
|
126
|
-
|
|
127
|
-
it( 'sets link to Media File', async () => {
|
|
128
|
-
const initialHtml = `
|
|
129
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"none","className":"is-style-default"} -->
|
|
130
|
-
<figure class="wp-block-image size-large is-style-default">
|
|
131
|
-
<img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/>
|
|
132
|
-
<figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
133
|
-
<!-- /wp:image -->`;
|
|
134
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
135
|
-
// Check that image is fetched via `getEntityRecord`
|
|
136
|
-
expect( apiFetch ).toHaveBeenCalledWith( FETCH_MEDIA.request );
|
|
137
|
-
|
|
138
|
-
const [ imageBlock ] = screen.getAllByLabelText( /Image Block/ );
|
|
139
|
-
fireEvent.press( imageBlock );
|
|
140
|
-
// Awaiting navigation event seemingly required due to React Navigation bug
|
|
141
|
-
// https://github.com/react-navigation/react-navigation/issues/9701
|
|
142
|
-
await act( () =>
|
|
143
|
-
fireEvent.press( screen.getByLabelText( 'Open Settings' ) )
|
|
144
|
-
);
|
|
145
|
-
fireEvent.press( screen.getByText( 'None' ) );
|
|
146
|
-
fireEvent.press( screen.getByText( 'Media File' ) );
|
|
147
|
-
|
|
148
|
-
const expectedHtml = `<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
149
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://cldup.com/cXyG__fTLN.jpg"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
150
|
-
<!-- /wp:image -->`;
|
|
151
|
-
expect( getEditorHtml() ).toBe( expectedHtml );
|
|
152
|
-
} );
|
|
153
|
-
|
|
154
|
-
it( 'sets link to Custom URL', async () => {
|
|
155
|
-
const initialHtml = `
|
|
156
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"none","className":"is-style-default"} -->
|
|
157
|
-
<figure class="wp-block-image size-large is-style-default">
|
|
158
|
-
<img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/>
|
|
159
|
-
<figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
160
|
-
<!-- /wp:image -->`;
|
|
161
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
162
|
-
// Check that image is fetched via `getEntityRecord`
|
|
163
|
-
expect( apiFetch ).toHaveBeenCalledWith( FETCH_MEDIA.request );
|
|
164
|
-
|
|
165
|
-
const [ imageBlock ] = screen.getAllByLabelText( /Image Block/ );
|
|
166
|
-
fireEvent.press( imageBlock );
|
|
167
|
-
// Awaiting navigation event seemingly required due to React Navigation bug
|
|
168
|
-
// https://github.com/react-navigation/react-navigation/issues/9701
|
|
169
|
-
await act( () =>
|
|
170
|
-
fireEvent.press( screen.getByLabelText( 'Open Settings' ) )
|
|
171
|
-
);
|
|
172
|
-
fireEvent.press( screen.getByText( 'None' ) );
|
|
173
|
-
fireEvent.press( screen.getByText( 'Custom URL' ) );
|
|
174
|
-
// Await asynchronous fetch of clipboard
|
|
175
|
-
await act( () => clipboardPromise );
|
|
176
|
-
fireEvent.changeText(
|
|
177
|
-
screen.getByPlaceholderText( 'Search or type URL' ),
|
|
178
|
-
'wordpress.org'
|
|
179
|
-
);
|
|
180
|
-
fireEvent.press( screen.getByLabelText( 'Apply' ) );
|
|
181
|
-
await act(
|
|
182
|
-
() => new Promise( ( resolve ) => setTimeout( resolve, 100 ) )
|
|
183
|
-
);
|
|
184
|
-
|
|
185
|
-
const expectedHtml = `<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"custom","className":"is-style-default"} -->
|
|
186
|
-
<figure class="wp-block-image size-large is-style-default"><a href="http://wordpress.org"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
187
|
-
<!-- /wp:image -->`;
|
|
188
|
-
expect( getEditorHtml() ).toBe( expectedHtml );
|
|
189
|
-
} );
|
|
190
|
-
|
|
191
|
-
it( 'swaps the link between destinations', async () => {
|
|
192
|
-
const initialHtml = `
|
|
193
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"none","className":"is-style-default"} -->
|
|
194
|
-
<figure class="wp-block-image size-large is-style-default">
|
|
195
|
-
<img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/>
|
|
196
|
-
<figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
197
|
-
<!-- /wp:image -->`;
|
|
198
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
199
|
-
// Check that image is fetched via `getEntityRecord`
|
|
200
|
-
expect( apiFetch ).toHaveBeenCalledWith( FETCH_MEDIA.request );
|
|
201
|
-
|
|
202
|
-
const [ imageBlock ] = screen.getAllByLabelText( /Image Block/ );
|
|
203
|
-
fireEvent.press( imageBlock );
|
|
204
|
-
fireEvent.press( screen.getByLabelText( 'Open Settings' ) );
|
|
205
|
-
|
|
206
|
-
fireEvent.press( screen.getByText( 'None' ) );
|
|
207
|
-
fireEvent.press( screen.getByText( 'Custom URL' ) );
|
|
208
|
-
fireEvent.changeText(
|
|
209
|
-
screen.getByPlaceholderText( 'Search or type URL' ),
|
|
210
|
-
'wordpress.org'
|
|
211
|
-
);
|
|
212
|
-
fireEvent.press( screen.getByLabelText( 'Apply' ) );
|
|
213
|
-
fireEvent.press( await screen.findByText( 'Custom URL' ) );
|
|
214
|
-
fireEvent.press( screen.getByText( 'Media File' ) );
|
|
215
|
-
|
|
216
|
-
const expectedHtml = `<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
217
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://cldup.com/cXyG__fTLN.jpg"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
218
|
-
<!-- /wp:image -->`;
|
|
219
|
-
expect( getEditorHtml() ).toBe( expectedHtml );
|
|
220
|
-
} );
|
|
221
|
-
|
|
222
|
-
it( 'does not display the Link To URL within the Custom URL input when set to Media File and query parameters are present', async () => {
|
|
223
|
-
const initialHtml = `
|
|
224
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
225
|
-
<figure class="wp-block-image size-large is-style-default">
|
|
226
|
-
<a href="https://cldup.com/cXyG__fTLN.jpg">
|
|
227
|
-
<img src="https://cldup.com/cXyG__fTLN.jpg?w=683" alt="" class="wp-image-1"/>
|
|
228
|
-
</a>
|
|
229
|
-
<figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
230
|
-
<!-- /wp:image -->`;
|
|
231
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
232
|
-
// Check that image is not fetched via `getEntityRecord` due to the presence of query parameters in the URL.
|
|
233
|
-
expect( apiFetch ).not.toHaveBeenCalledWith( FETCH_MEDIA.request );
|
|
234
|
-
|
|
235
|
-
const [ imageBlock ] = screen.getAllByLabelText( /Image Block/ );
|
|
236
|
-
fireEvent.press( imageBlock );
|
|
237
|
-
// Awaiting navigation event seemingly required due to React Navigation bug
|
|
238
|
-
// https://github.com/react-navigation/react-navigation/issues/9701
|
|
239
|
-
await act( () =>
|
|
240
|
-
fireEvent.press( screen.getByLabelText( 'Open Settings' ) )
|
|
241
|
-
);
|
|
242
|
-
fireEvent.press( screen.getByText( 'Media File' ) );
|
|
243
|
-
|
|
244
|
-
expect( screen.queryByLabelText( /https:\/\/cldup\.com/ ) ).toBeNull();
|
|
245
|
-
} );
|
|
246
|
-
|
|
247
|
-
it( 'sets link target', async () => {
|
|
248
|
-
const initialHtml = `
|
|
249
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"custom","className":"is-style-default"} -->
|
|
250
|
-
<figure class="wp-block-image size-large is-style-default">
|
|
251
|
-
<a href="https://wordpress.org">
|
|
252
|
-
<img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/>
|
|
253
|
-
</a>
|
|
254
|
-
<figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
255
|
-
<!-- /wp:image -->`;
|
|
256
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
257
|
-
// Check that image is fetched via `getEntityRecord`
|
|
258
|
-
expect( apiFetch ).toHaveBeenCalledWith( FETCH_MEDIA.request );
|
|
259
|
-
|
|
260
|
-
const [ imageBlock ] = screen.getAllByLabelText( /Image Block/ );
|
|
261
|
-
fireEvent.press( imageBlock );
|
|
262
|
-
|
|
263
|
-
const settingsButton = screen.getByLabelText( 'Open Settings' );
|
|
264
|
-
// Awaiting navigation event seemingly required due to React Navigation bug
|
|
265
|
-
// https://github.com/react-navigation/react-navigation/issues/9701
|
|
266
|
-
await act( () => fireEvent.press( settingsButton ) );
|
|
267
|
-
|
|
268
|
-
const linkTargetButton = screen.getByText( 'Open in new tab' );
|
|
269
|
-
fireEvent.press( linkTargetButton );
|
|
270
|
-
|
|
271
|
-
const expectedHtml = `<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"custom","className":"is-style-default"} -->
|
|
272
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://wordpress.org" target="_blank" rel="noopener"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
273
|
-
<!-- /wp:image -->`;
|
|
274
|
-
expect( getEditorHtml() ).toBe( expectedHtml );
|
|
275
|
-
} );
|
|
276
|
-
|
|
277
|
-
it( 'unset link target', async () => {
|
|
278
|
-
const initialHtml = `
|
|
279
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"custom","className":"is-style-default"} -->
|
|
280
|
-
<figure class="wp-block-image size-large is-style-default">
|
|
281
|
-
<a href="https://wordpress.org" target="_blank" rel="noopener">
|
|
282
|
-
<img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/>
|
|
283
|
-
</a>
|
|
284
|
-
<figcaption class="wp-element-caption">Mountain</figcaption>
|
|
285
|
-
</figure>
|
|
286
|
-
<!-- /wp:image -->`;
|
|
287
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
288
|
-
// Check that image is fetched via `getEntityRecord`
|
|
289
|
-
expect( apiFetch ).toHaveBeenCalledWith( FETCH_MEDIA.request );
|
|
290
|
-
|
|
291
|
-
const [ imageBlock ] = screen.getAllByLabelText( /Image Block/ );
|
|
292
|
-
fireEvent.press( imageBlock );
|
|
293
|
-
|
|
294
|
-
const settingsButton = screen.getByLabelText( 'Open Settings' );
|
|
295
|
-
// Awaiting navigation event seemingly required due to React Navigation bug
|
|
296
|
-
// https://github.com/react-navigation/react-navigation/issues/9701
|
|
297
|
-
await act( () => fireEvent.press( settingsButton ) );
|
|
298
|
-
|
|
299
|
-
const linkTargetButton = screen.getByText( 'Open in new tab' );
|
|
300
|
-
fireEvent.press( linkTargetButton );
|
|
301
|
-
|
|
302
|
-
const expectedHtml = `<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"custom","className":"is-style-default"} -->
|
|
303
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://wordpress.org"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
304
|
-
<!-- /wp:image -->`;
|
|
305
|
-
expect( getEditorHtml() ).toBe( expectedHtml );
|
|
306
|
-
} );
|
|
307
|
-
|
|
308
|
-
describe( "when replacing media for an image set as the post's featured image", () => {
|
|
309
|
-
function mockFeaturedMedia( featuredImageId ) {
|
|
310
|
-
jest.spyOn(
|
|
311
|
-
select( editorStore ),
|
|
312
|
-
'getEditedPostAttribute'
|
|
313
|
-
).mockImplementation( ( attributeName ) =>
|
|
314
|
-
attributeName === 'featured_media' ? featuredImageId : undefined
|
|
315
|
-
);
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
it( 'does not prompt to replace featured image during a new image upload', () => {
|
|
319
|
-
// Arrange
|
|
320
|
-
const INITIAL_IMAGE = { id: 1, url: 'mock-url-1' };
|
|
321
|
-
const NEW_IMAGE_PENDING = { id: 2, url: 'mock-url-2' };
|
|
322
|
-
mockFeaturedMedia( INITIAL_IMAGE.id );
|
|
323
|
-
const screen = render( <ImageEdit attributes={ INITIAL_IMAGE } /> );
|
|
324
|
-
|
|
325
|
-
// Act
|
|
326
|
-
screen.update( <ImageEdit attributes={ NEW_IMAGE_PENDING } /> );
|
|
327
|
-
const MEDIA_UPLOAD_STATE_UPLOADING = 1;
|
|
328
|
-
sendMediaUpload( {
|
|
329
|
-
state: MEDIA_UPLOAD_STATE_UPLOADING,
|
|
330
|
-
mediaId: NEW_IMAGE_PENDING.id,
|
|
331
|
-
progress: 0.1,
|
|
332
|
-
} );
|
|
333
|
-
|
|
334
|
-
// Assert
|
|
335
|
-
expect( setFeaturedImage ).not.toHaveBeenCalled();
|
|
336
|
-
} );
|
|
337
|
-
|
|
338
|
-
it( 'does not prompt to replace featured image after a new image upload fails', () => {
|
|
339
|
-
// Arrange
|
|
340
|
-
const INITIAL_IMAGE = { id: 1, url: 'mock-url-1' };
|
|
341
|
-
const NEW_IMAGE_PENDING = { id: 2, url: 'mock-url-2' };
|
|
342
|
-
mockFeaturedMedia( INITIAL_IMAGE.id );
|
|
343
|
-
const screen = render(
|
|
344
|
-
<ImageEdit
|
|
345
|
-
attributes={ INITIAL_IMAGE }
|
|
346
|
-
setAttributes={ () => {} }
|
|
347
|
-
/>
|
|
348
|
-
);
|
|
349
|
-
|
|
350
|
-
// Act
|
|
351
|
-
screen.update(
|
|
352
|
-
<ImageEdit
|
|
353
|
-
attributes={ NEW_IMAGE_PENDING }
|
|
354
|
-
setAttributes={ () => {} }
|
|
355
|
-
/>
|
|
356
|
-
);
|
|
357
|
-
const MEDIA_UPLOAD_STATE_UPLOADING = 1;
|
|
358
|
-
sendMediaUpload( {
|
|
359
|
-
state: MEDIA_UPLOAD_STATE_UPLOADING,
|
|
360
|
-
mediaId: NEW_IMAGE_PENDING.id,
|
|
361
|
-
progress: 0.1,
|
|
362
|
-
} );
|
|
363
|
-
const MEDIA_UPLOAD_STATE_FAILED = 3;
|
|
364
|
-
sendMediaUpload( {
|
|
365
|
-
state: MEDIA_UPLOAD_STATE_FAILED,
|
|
366
|
-
mediaId: NEW_IMAGE_PENDING.id,
|
|
367
|
-
} );
|
|
368
|
-
|
|
369
|
-
// Assert
|
|
370
|
-
expect( setFeaturedImage ).not.toHaveBeenCalled();
|
|
371
|
-
} );
|
|
372
|
-
|
|
373
|
-
it( 'prompts to replace featured image after a new image upload succeeds', () => {
|
|
374
|
-
// Arrange
|
|
375
|
-
const INITIAL_IMAGE = { id: 1, url: 'mock-url-1' };
|
|
376
|
-
const NEW_IMAGE_PENDING = { id: 2, url: 'mock-url-2' };
|
|
377
|
-
const NEW_IMAGE_RESOLVED = { id: 3, url: 'mock-url-2' };
|
|
378
|
-
mockFeaturedMedia( INITIAL_IMAGE.id );
|
|
379
|
-
const screen = render( <ImageEdit attributes={ INITIAL_IMAGE } /> );
|
|
380
|
-
|
|
381
|
-
// Act
|
|
382
|
-
screen.update( <ImageEdit attributes={ NEW_IMAGE_PENDING } /> );
|
|
383
|
-
mockGetMedia( { id: NEW_IMAGE_RESOLVED.id } );
|
|
384
|
-
screen.update(
|
|
385
|
-
<ImageEdit
|
|
386
|
-
attributes={ NEW_IMAGE_RESOLVED }
|
|
387
|
-
setAttributes={ () => {} }
|
|
388
|
-
/>
|
|
389
|
-
);
|
|
390
|
-
|
|
391
|
-
// Assert
|
|
392
|
-
expect( setFeaturedImage ).toHaveBeenCalledTimes( 1 );
|
|
393
|
-
expect( setFeaturedImage ).toHaveBeenCalledWith(
|
|
394
|
-
NEW_IMAGE_RESOLVED.id
|
|
395
|
-
);
|
|
396
|
-
} );
|
|
397
|
-
|
|
398
|
-
it( 'prompts to replace featured image for a cached image', () => {
|
|
399
|
-
// Arrange
|
|
400
|
-
const INITIAL_IMAGE = { id: 1, url: 'mock-url-1' };
|
|
401
|
-
const NEW_IMAGE_RESOLVED = { id: 3, url: 'mock-url-2' };
|
|
402
|
-
mockFeaturedMedia( INITIAL_IMAGE.id );
|
|
403
|
-
const screen = render(
|
|
404
|
-
<ImageEdit
|
|
405
|
-
attributes={ INITIAL_IMAGE }
|
|
406
|
-
setAttributes={ () => {} }
|
|
407
|
-
/>
|
|
408
|
-
);
|
|
409
|
-
|
|
410
|
-
// Act
|
|
411
|
-
mockGetMedia( { id: NEW_IMAGE_RESOLVED.id } );
|
|
412
|
-
screen.update(
|
|
413
|
-
<ImageEdit
|
|
414
|
-
attributes={ NEW_IMAGE_RESOLVED }
|
|
415
|
-
setAttributes={ () => {} }
|
|
416
|
-
/>
|
|
417
|
-
);
|
|
418
|
-
|
|
419
|
-
// Assert
|
|
420
|
-
expect( setFeaturedImage ).toHaveBeenCalledTimes( 1 );
|
|
421
|
-
expect( setFeaturedImage ).toHaveBeenCalledWith(
|
|
422
|
-
NEW_IMAGE_RESOLVED.id
|
|
423
|
-
);
|
|
424
|
-
} );
|
|
425
|
-
} );
|
|
426
|
-
|
|
427
|
-
it( 'sets src and alt attributes when selecting media', async () => {
|
|
428
|
-
const IMAGE = { id: 1, url: 'mock-image', alt: 'A beautiful mountain' };
|
|
429
|
-
requestMediaPicker.mockImplementationOnce(
|
|
430
|
-
( source, filter, multiple, callback ) => {
|
|
431
|
-
callback( {
|
|
432
|
-
id: IMAGE.id,
|
|
433
|
-
url: IMAGE.url,
|
|
434
|
-
alt: IMAGE.alt,
|
|
435
|
-
} );
|
|
436
|
-
}
|
|
437
|
-
);
|
|
438
|
-
mockGetMedia( {
|
|
439
|
-
id: IMAGE.id,
|
|
440
|
-
source_url: IMAGE.url,
|
|
441
|
-
} );
|
|
442
|
-
|
|
443
|
-
const initialHtml = `
|
|
444
|
-
<!-- wp:image -->
|
|
445
|
-
<figure class="wp-block-image">
|
|
446
|
-
<img alt="" />
|
|
447
|
-
</figure>
|
|
448
|
-
<!-- /wp:image -->`;
|
|
449
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
450
|
-
|
|
451
|
-
fireEvent.press( screen.getByText( 'Add image' ) );
|
|
452
|
-
fireEvent.press( screen.getByText( 'WordPress Media Library' ) );
|
|
453
|
-
|
|
454
|
-
const expectedHtml = `<!-- wp:image {"id":${ IMAGE.id },"sizeSlug":"large","linkDestination":"none"} -->
|
|
455
|
-
<figure class="wp-block-image size-large"><img src="${ IMAGE.url }" alt="${ IMAGE.alt }" class="wp-image-${ IMAGE.id }"/></figure>
|
|
456
|
-
<!-- /wp:image -->`;
|
|
457
|
-
expect( getEditorHtml() ).toBe( expectedHtml );
|
|
458
|
-
} );
|
|
459
|
-
} );
|
|
@@ -1,49 +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 = 'Image';
|
|
13
|
-
const initialHtml = `
|
|
14
|
-
<!-- wp:image {"id":1,"sizeSlug":"large","linkDestination":"media","className":"is-style-default"} -->
|
|
15
|
-
<figure class="wp-block-image size-large is-style-default"><a href="https://cldup.com/cXyG__fTLN.jpg"><img src="https://cldup.com/cXyG__fTLN.jpg" alt="" class="wp-image-1"/></a><figcaption class="wp-element-caption">Mountain</figcaption></figure>
|
|
16
|
-
<!-- /wp:image -->`;
|
|
17
|
-
|
|
18
|
-
const transformsWithInnerBlocks = [ 'Gallery', 'Columns', 'Group' ];
|
|
19
|
-
const nonMediaTransforms = [ 'File' ];
|
|
20
|
-
const blockTransforms = [
|
|
21
|
-
'Cover',
|
|
22
|
-
'Media & Text',
|
|
23
|
-
...transformsWithInnerBlocks,
|
|
24
|
-
...nonMediaTransforms,
|
|
25
|
-
];
|
|
26
|
-
|
|
27
|
-
setupCoreBlocks();
|
|
28
|
-
|
|
29
|
-
describe( `${ block } block transformations`, () => {
|
|
30
|
-
test.each( blockTransforms )( 'to %s block', async ( blockTransform ) => {
|
|
31
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
32
|
-
const newBlock = await transformBlock( screen, block, blockTransform, {
|
|
33
|
-
isMediaBlock: ! nonMediaTransforms.includes( blockTransform ),
|
|
34
|
-
hasInnerBlocks:
|
|
35
|
-
transformsWithInnerBlocks.includes( blockTransform ),
|
|
36
|
-
} );
|
|
37
|
-
expect( newBlock ).toBeVisible();
|
|
38
|
-
expect( getEditorHtml() ).toMatchSnapshot();
|
|
39
|
-
} );
|
|
40
|
-
|
|
41
|
-
it( 'matches expected transformation options', async () => {
|
|
42
|
-
const screen = await initializeEditor( { initialHtml } );
|
|
43
|
-
const transformOptions = await getBlockTransformOptions(
|
|
44
|
-
screen,
|
|
45
|
-
block
|
|
46
|
-
);
|
|
47
|
-
expect( transformOptions ).toHaveLength( blockTransforms.length );
|
|
48
|
-
} );
|
|
49
|
-
} );
|
|
@@ -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.media,
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export default transforms;
|