PluginProbe
Gutenberg / trunk
Gutenberg vtrunk
24.1.0 24.0.0 23.9.1 23.9.0 23.8.0 23.7.2 23.7.1 23.7.0 23.6.1 23.6.2 23.6.0 23.5.3 23.5.2 23.5.1 23.5.0 23.4.0 23.3.2 23.3.1 23.3.0 23.2.0 23.2.1 23.2.2 23.1.1 23.1.0 23.0.1 All 404 releases
← All changes | lib/load.php +54 -77 23.1.1 → trunk View file →
@@ -23,9 +23,9 @@
23 23 // Define version constant for backwards compatibility.
24 24 // The constants.php file returns an array but doesn't define constants to avoid conflicts.
25 25 $constants_file = plugin_dir_path( __DIR__ ) . 'build/constants.php';
26 26 if ( file_exists( $constants_file ) && ! defined( 'GUTENBERG_VERSION' ) ) {
27 - $build_constants = require_once $constants_file;
27 + $build_constants = require $constants_file;
28 28 define( 'GUTENBERG_VERSION', $build_constants['version'] );
29 29 }
30 30
31 31 /**
@@ -37,14 +37,8 @@
37 37 *
38 38 * @return bool True when the experiment is enabled.
39 39 */
40 40 function gutenberg_is_experiment_enabled( $name ) {
41 - // Special handling for active_templates - check if the active_templates option exists.
42 - // This is not stored in the experiments array but as a separate option.
43 - if ( 'active_templates' === $name ) {
44 - return is_array( get_option( 'active_templates' ) );
45 - }
46 -
47 41 $experiments = get_option( 'gutenberg-experiments' );
48 42 return ! empty( $experiments[ $name ] );
49 43 }
50 44
@@ -54,47 +48,43 @@
54 48 if ( ! class_exists( 'WP_REST_Block_Editor_Settings_Controller' ) ) {
55 49 require_once __DIR__ . '/experimental/class-wp-rest-block-editor-settings-controller.php';
56 50 }
57 51
58 - // WordPress 6.9 compat.
59 - require __DIR__ . '/compat/wordpress-6.9/class-gutenberg-rest-attachments-controller-6-9.php';
60 - require __DIR__ . '/compat/wordpress-6.9/block-bindings.php';
61 - require __DIR__ . '/compat/wordpress-6.9/post-data-block-bindings.php';
62 - require __DIR__ . '/compat/wordpress-6.9/term-data-block-bindings.php';
63 - require __DIR__ . '/compat/wordpress-6.9/rest-api.php';
64 - require __DIR__ . '/compat/wordpress-6.9/block-comments.php';
65 - require __DIR__ . '/compat/wordpress-6.9/class-gutenberg-rest-comment-controller-6-9.php';
66 52
67 - // WordPress 7.0 compat.
68 - require __DIR__ . '/compat/wordpress-7.0/class-gutenberg-rest-autosaves-controller.php';
69 - require __DIR__ . '/compat/wordpress-7.0/class-gutenberg-rest-revisions-controller.php';
70 - require __DIR__ . '/compat/wordpress-7.0/class-gutenberg-rest-block-patterns-controller-7-0.php';
71 - require __DIR__ . '/compat/wordpress-7.0/class-gutenberg-rest-templates-controller-7-0.php';
72 - require __DIR__ . '/compat/wordpress-7.0/class-gutenberg-rest-static-templates-controller.php';
73 - require __DIR__ . '/compat/wordpress-7.0/class-wp-icons-registry.php';
74 - require __DIR__ . '/compat/wordpress-7.0/class-wp-rest-icons-controller.php';
75 - require __DIR__ . '/compat/wordpress-7.0/collaboration.php';
76 - require __DIR__ . '/compat/wordpress-7.0/template-activate.php';
77 - require __DIR__ . '/compat/wordpress-7.0/rest-api.php';
78 - require __DIR__ . '/compat/wordpress-7.0/global-styles.php';
79 - require __DIR__ . '/compat/wordpress-7.0/class-wp-connector-registry.php';
80 - require __DIR__ . '/compat/wordpress-7.0/connectors.php';
81 -
82 53 // WordPress 7.1 compat.
54 + require __DIR__ . '/compat/wordpress-7.1/class-gutenberg-rest-attachments-controller-7-1.php';
55 + require __DIR__ . '/compat/wordpress-7.1/class-gutenberg-view-config-data.php';
56 + require __DIR__ . '/compat/wordpress-7.1/view-config-api.php';
83 57 require __DIR__ . '/compat/wordpress-7.1/class-gutenberg-rest-view-config-controller-7-1.php';
58 + require __DIR__ . '/compat/wordpress-7.1/notes-mentions.php';
59 + require __DIR__ . '/compat/wordpress-7.1/class-wp-icon-collections-registry.php';
60 + require __DIR__ . '/compat/wordpress-7.1/class-wp-rest-icon-collections-controller.php';
84 61 require __DIR__ . '/compat/wordpress-7.1/rest-api.php';
62 + require __DIR__ . '/compat/wordpress-7.1/block-bindings.php';
63 + require __DIR__ . '/compat/wordpress-7.1/query-block.php';
64 + require __DIR__ . '/compat/wordpress-7.1/block-comments.php';
85 65
66 + // WordPress 7.2 compat.
67 + require __DIR__ . '/compat/wordpress-7.2/class-gutenberg-rest-templates-controller-7-2.php';
68 + require __DIR__ . '/compat/wordpress-7.2/view-config-api.php';
69 + require __DIR__ . '/compat/wordpress-7.2/class-gutenberg-rest-view-config-controller-7-2.php';
70 + require __DIR__ . '/compat/wordpress-7.2/rest-api.php';
71 +
72 + // Real-time collaboration.
73 + require __DIR__ . '/experimental/collaboration/class-gutenberg-rest-autosaves-controller.php';
74 + require __DIR__ . '/experimental/collaboration/rest-api.php';
75 + require __DIR__ . '/experimental/collaboration/collaboration.php';
76 +
86 77 // Plugin specific code.
87 78 require_once __DIR__ . '/class-wp-rest-global-styles-controller-gutenberg.php';
88 79 require_once __DIR__ . '/class-wp-rest-edit-site-export-controller-gutenberg.php';
80 + require_once __DIR__ . '/class-wp-icon-collections-registry-gutenberg.php';
81 + require_once __DIR__ . '/class-wp-rest-icon-collections-controller-gutenberg.php';
89 82 require_once __DIR__ . '/class-wp-icons-registry-gutenberg.php';
90 83 require_once __DIR__ . '/class-wp-rest-icons-controller-gutenberg.php';
91 84 require_once __DIR__ . '/rest-api.php';
92 85
93 - // Experimental autosaves controller override for real-time collaboration.
94 -
95 86 require_once __DIR__ . '/experimental/rest-api.php';
96 - require_once __DIR__ . '/experimental/kses-allowed-html.php';
97 87
98 88 require_once __DIR__ . '/experimental/class-gutenberg-hierarchical-sort.php';
99 89 }
100 90
@@ -104,28 +94,23 @@
104 94
105 95 // Gutenberg plugin compat.
106 96 require __DIR__ . '/compat/plugin/edit-site-routes-backwards-compat.php';
107 97 require __DIR__ . '/compat/plugin/fonts.php';
98 +require __DIR__ . '/compat/plugin/connectors.php';
99 +require __DIR__ . '/compat/plugin/style-state-aliases.php';
108 100
109 101
110 -// WordPress 6.9 compat.
111 -require __DIR__ . '/compat/wordpress-6.9/customizer-preview-custom-css.php';
112 -require __DIR__ . '/compat/wordpress-6.9/command-palette.php';
113 -require __DIR__ . '/compat/wordpress-6.9/client-assets.php';
102 +// WordPress 7.1 compat.
103 +require __DIR__ . '/compat/wordpress-7.1/admin-bar.php';
104 +require __DIR__ . '/compat/wordpress-7.1/blocks.php';
105 +require __DIR__ . '/compat/wordpress-7.1/kses.php';
106 +require __DIR__ . '/compat/wordpress-7.1/media.php';
107 +require __DIR__ . '/compat/wordpress-7.1/preload.php';
108 +require __DIR__ . '/compat/wordpress-7.1/icons.php';
114 109
115 -// WordPress 7.0 compat.
116 -require __DIR__ . '/compat/wordpress-7.0/preload.php';
117 -require __DIR__ . '/compat/wordpress-7.0/auto-register.php';
118 -require __DIR__ . '/compat/wordpress-7.0/blocks.php';
119 -require __DIR__ . '/compat/wordpress-7.0/kses.php';
120 -require __DIR__ . '/compat/wordpress-7.0/media.php';
121 -require __DIR__ . '/compat/wordpress-7.0/command-palette.php';
122 -require __DIR__ . '/compat/wordpress-7.0/meta-box-rtc-compat.php';
123 -require __DIR__ . '/compat/wordpress-7.0/script-modules.php';
110 +// WordPress 7.2 compat.
111 +require __DIR__ . '/compat/wordpress-7.2/kses.php';
124 112
125 -// WordPress 7.1 compat.
126 -require __DIR__ . '/compat/wordpress-7.1/classic-block.php';
127 -
128 113 // Experimental features.
129 114 require __DIR__ . '/experimental/block-editor-settings-mobile.php';
130 115 require __DIR__ . '/experimental/blocks.php';
131 116 require __DIR__ . '/experimental/navigation-theme-opt-in.php';
@@ -131,33 +116,26 @@
131 116 require __DIR__ . '/experimental/navigation-theme-opt-in.php';
132 117 require __DIR__ . '/experimental/kses.php';
133 118 require __DIR__ . '/experimental/script-modules.php';
134 119 require __DIR__ . '/experimental/pages/site-editor.php';
135 -require __DIR__ . '/experimental/extensible-site-editor.php';
136 -require __DIR__ . '/experimental/fonts/load.php';
137 -if ( class_exists( '\WordPress\AiClient\AiClient' ) ) {
138 - require __DIR__ . '/experimental/connectors/load.php';
120 +require __DIR__ . '/experimental/collaboration/meta-box-rtc-compat.php';
121 +
122 +if ( gutenberg_is_experiment_enabled( 'gutenberg-extensible-site-editor' ) ) {
123 + require __DIR__ . '/experimental/extensible-site-editor.php';
124 + require __DIR__ . '/experimental/theme-preview/load.php';
139 125 }
140 126
127 +if ( gutenberg_is_experiment_enabled( 'gutenberg-dataform-inspector' ) ) {
128 + require __DIR__ . '/experimental/dataform-inspector-preload.php';
129 +}
130 +if ( gutenberg_is_experiment_enabled( 'gutenberg-media-editor' ) ) {
131 + require __DIR__ . '/experimental/media-editor/load.php';
132 +}
133 +
141 134 if ( gutenberg_is_experiment_enabled( 'gutenberg-workflow-palette' ) ) {
142 135 require __DIR__ . '/experimental/workflow-palette.php';
143 136 }
144 137
145 -// Load the BC Layer to avoid fatal errors of extenders using the Fonts API.
146 -// @core-merge: do not merge the BC layer files into WordPress Core.
147 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-fonts-provider.php';
148 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-fonts-utils.php';
149 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-fonts.php';
150 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-fonts-provider-local.php';
151 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-fonts-resolver.php';
152 -require __DIR__ . '/experimental/font-face/bc-layer/class-gutenberg-fonts-api-bc-layer.php';
153 -require __DIR__ . '/experimental/font-face/bc-layer/webfonts-deprecations.php';
154 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-webfonts-utils.php';
155 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-webfonts-provider.php';
156 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-webfonts-provider-local.php';
157 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-webfonts.php';
158 -require __DIR__ . '/experimental/font-face/bc-layer/class-wp-web-fonts.php';
159 -
160 138 // Plugin specific code.
161 139 require __DIR__ . '/script-loader.php';
162 140 require __DIR__ . '/global-styles-and-settings.php';
163 141 require __DIR__ . '/class-wp-theme-json-data-gutenberg.php';
@@ -170,10 +148,10 @@
170 148 require __DIR__ . '/client-assets.php';
171 149 require __DIR__ . '/mathml-kses.php';
172 150 require __DIR__ . '/demo.php';
173 151 require __DIR__ . '/experimental/experiments/load.php';
174 -require __DIR__ . '/interactivity-api.php';
175 152 require __DIR__ . '/block-template-utils.php';
153 +require __DIR__ . '/icons.php';
176 154
177 155 // Copied package PHP files.
178 156 if ( is_dir( __DIR__ . '/../build/scripts/style-engine' ) ) {
179 157 require_once __DIR__ . '/../build/scripts/style-engine/class-wp-style-engine-css-declarations-gutenberg.php';
@@ -201,8 +179,9 @@
201 179 require __DIR__ . '/block-supports/aria-label.php';
202 180 require __DIR__ . '/block-supports/anchor.php';
203 181 require __DIR__ . '/block-supports/block-visibility.php';
204 182 require __DIR__ . '/block-supports/custom-css.php';
183 +require __DIR__ . '/block-supports/states.php';
205 184
206 185 // Client-side media processing.
207 186 require_once __DIR__ . '/media/load.php';
208 187
@@ -216,18 +195,16 @@
216 195 require __DIR__ . '/overlay-patterns.php';
217 196
218 197 // Guidelines (only load when experiment is enabled).
219 198 if ( gutenberg_is_experiment_enabled( 'gutenberg-guidelines' ) ) {
220 - require __DIR__ . '/experimental/guidelines/load.php';
221 - require __DIR__ . '/experimental/guidelines/index.php';
199 + require __DIR__ . '/experimental/knowledge/load.php';
200 + require __DIR__ . '/experimental/knowledge/index.php';
222 201 }
223 202
224 -// Content types (only load when experiment is enabled).
225 -if ( gutenberg_is_experiment_enabled( 'gutenberg-content-types' ) ) {
226 - require __DIR__ . '/experimental/content-types/load.php';
227 - require __DIR__ . '/experimental/content-types/index.php';
228 -}
229 -
230 203 // Dashboard Widgets (only load when experiment is enabled).
231 204 if ( gutenberg_is_experiment_enabled( 'gutenberg-dashboard-widgets' ) ) {
232 205 require __DIR__ . '/experimental/dashboard-widgets/load.php';
206 + require __DIR__ . '/experimental/dashboard-widgets/widget-types.php';
207 + require __DIR__ . '/experimental/dashboard-widgets/widget-icons.php';
208 + require __DIR__ . '/experimental/dashboard-widgets/dashboard-layout.php';
209 + require __DIR__ . '/experimental/dashboard-widgets/default-layout-seed.php';
233 210 }