Skip to content

Commit 84d87c7

Browse files
committed
Gutenberg: refactor custom extension loading
1 parent 19a65aa commit 84d87c7

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

client/gutenberg/editor/init.js

+16-11
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,18 @@ const WPCOM_UNSUPPORTED_CORE_BLOCKS = [
2121
'core/file', // see D19851 for more details.
2222
];
2323

24+
const loadA8CExtensions = () => {
25+
require( '../extensions/classic-block/editor' );
26+
27+
if ( isEnabled( 'gutenberg/block/jetpack-preset' ) ) {
28+
require( 'gutenberg/extensions/presets/jetpack/editor.js' );
29+
}
30+
31+
if ( isEnabled( 'gutenberg/block/simple-payments' ) ) {
32+
require( 'gutenberg/extensions/simple-payments/editor.js' );
33+
}
34+
};
35+
2436
// We need to ensure that his function is executed only once to avoid duplicate
2537
// block registration, API middleware application etc.
2638
export const initGutenberg = once( ( userId, siteSlug ) => {
@@ -46,10 +58,6 @@ export const initGutenberg = once( ( userId, siteSlug ) => {
4658
debug( 'Removing core blocks that are not yet supported in Calypso' );
4759
WPCOM_UNSUPPORTED_CORE_BLOCKS.forEach( blockName => unregisterBlockType( blockName ) );
4860

49-
debug( 'Registering Calypso Classic Block handler' );
50-
require( '../extensions/classic-block/editor' );
51-
setFreeformContentHandlerName( 'a8c/classic' );
52-
5361
// Needed for list block indent/outdent functionality
5462
debug( 'Loading required TinyMCE plugins' );
5563
require( 'tinymce/plugins/lists/plugin.js' );
@@ -60,14 +68,11 @@ export const initGutenberg = once( ( userId, siteSlug ) => {
6068
debug( 'Applying API middleware' );
6169
applyAPIMiddleware( siteSlug );
6270

63-
debug( 'Load A8C editor extensions' );
64-
if ( isEnabled( 'gutenberg/block/jetpack-preset' ) ) {
65-
require( 'gutenberg/extensions/presets/jetpack/editor.js' );
66-
}
71+
debug( 'Loading A8C editor extensions' );
72+
loadA8CExtensions();
6773

68-
if ( isEnabled( 'gutenberg/block/simple-payments' ) ) {
69-
require( 'gutenberg/extensions/simple-payments/editor.js' );
70-
}
74+
debug( 'Registering Calypso Classic Block handler' );
75+
setFreeformContentHandlerName( 'a8c/classic' );
7176

7277
debug( 'Gutenberg editor initialization complete.' );
7378

0 commit comments

Comments
 (0)