diff --git a/projects/packages/external-media/changelog/task-disable-problematic-media-providers-for-gutenberg-kit b/projects/packages/external-media/changelog/task-disable-problematic-media-providers-for-gutenberg-kit new file mode 100644 index 0000000000000..9e9d4146e3389 --- /dev/null +++ b/projects/packages/external-media/changelog/task-disable-problematic-media-providers-for-gutenberg-kit @@ -0,0 +1,4 @@ +Significance: patch +Type: removed + +GutenbergKit: disable problematic media providers. diff --git a/projects/packages/external-media/src/shared/media-button/media-menu.js b/projects/packages/external-media/src/shared/media-button/media-menu.js index 08fe1380e8b22..3fb30cb3de3db 100644 --- a/projects/packages/external-media/src/shared/media-button/media-menu.js +++ b/projects/packages/external-media/src/shared/media-button/media-menu.js @@ -1,6 +1,7 @@ import { Button, MenuItem, MenuGroup, Dropdown, NavigableMenu } from '@wordpress/components'; import { __ } from '@wordpress/i18n'; import { Icon, media } from '@wordpress/icons'; +import { isGutenbergKit } from '../utils/is-gutenberg-kit'; import { isSupportNext40pxDefaultSize } from '../utils/is-support-next-40px-default-size'; import MediaSources from './media-sources'; @@ -13,6 +14,13 @@ function MediaButtonMenu( props ) { const { mediaProps, open, setSelectedSource, isFeatured, isReplace, hasImage } = props; const originalComponent = mediaProps.render; + // Disable the media button menu for GutenbergKit (mobile app) as the APIs for + // the external media sources do not currently support GutenbergKit's token + // authentication and CORS requests. + if ( isGutenbergKit() ) { + return originalComponent( { open } ); + } + if ( isReplace ) { return ( { + return !! window?.GBKit; +};