From 5109317c60ef6ba9d722ad095fb6fea8c7783f43 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 20 Dec 2023 15:16:20 -0300 Subject: [PATCH 1/6] Rename and standardize the font family endpoints --- ...rest-autosave-font-families-controller.php | 25 ++++ ...ss-wp-rest-font-collections-controller.php | 124 ++++++++++++++++++ ...lass-wp-rest-font-families-controller.php} | 92 +++---------- .../fonts/font-library/font-library.php | 11 +- lib/load.php | 4 +- .../font-library-modal/resolvers.js | 8 +- 6 files changed, 184 insertions(+), 80 deletions(-) create mode 100644 lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php create mode 100644 lib/experimental/fonts/font-library/class-wp-rest-font-collections-controller.php rename lib/experimental/fonts/font-library/{class-wp-rest-font-library-controller.php => class-wp-rest-font-families-controller.php} (84%) diff --git a/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php new file mode 100644 index 00000000000000..ac1c8b333cbe5e --- /dev/null +++ b/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php @@ -0,0 +1,25 @@ +rest_base = 'font-collections'; + $this->namespace = 'wp/v2'; + } + + /** + * Registers the routes for the objects of the controller. + * + * @since 6.5.0 + */ + public function register_routes() { + register_rest_route( + $this->namespace, + '/' . $this->rest_base, + array( + array( + 'methods' => WP_REST_Server::READABLE, + 'callback' => array( $this, 'get_font_collections' ), + 'permission_callback' => array( $this, 'update_font_library_permissions_check' ), + ), + ) + ); + + register_rest_route( + $this->namespace, + '/' . $this->rest_base . '/(?P[\/\w-]+)', + array( + array( + 'methods' => WP_REST_Server::READABLE, + 'callback' => array( $this, 'get_font_collection' ), + 'permission_callback' => array( $this, 'update_font_library_permissions_check' ), + ), + ) + ); + } + + /** + * Gets a font collection. + * + * @since 6.5.0 + * + * @param WP_REST_Request $request Full details about the request. + * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. + */ + public function get_font_collection( $request ) { + $id = $request->get_param( 'id' ); + $collection = WP_Font_Library::get_font_collection( $id ); + // If the collection doesn't exist returns a 404. + if ( is_wp_error( $collection ) ) { + $collection->add_data( array( 'status' => 404 ) ); + return $collection; + } + $collection_with_data = $collection->get_data(); + // If there was an error getting the collection data, return the error. + if ( is_wp_error( $collection_with_data ) ) { + $collection_with_data->add_data( array( 'status' => 500 ) ); + return $collection_with_data; + } + return new WP_REST_Response( $collection_with_data ); + } + + /** + * Gets the font collections available. + * + * @since 6.5.0 + * + * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. + */ + public function get_font_collections() { + $collections = array(); + foreach ( WP_Font_Library::get_font_collections() as $collection ) { + $collections[] = $collection->get_config(); + } + + return new WP_REST_Response( $collections, 200 ); + } + + /** + * Checks whether the user has permissions to update the Font Library. + * + * @since 6.5.0 + * + * @return true|WP_Error True if the request has write access for the item, WP_Error object otherwise. + */ + public function update_font_library_permissions_check() { + if ( ! current_user_can( 'edit_theme_options' ) ) { + return new WP_Error( + 'rest_cannot_update_font_library', + __( 'Sorry, you are not allowed to update the Font Library on this site.', 'gutenberg' ), + array( + 'status' => rest_authorization_required_code(), + ) + ); + } + return true; + } +} diff --git a/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-font-families-controller.php similarity index 84% rename from lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php rename to lib/experimental/fonts/font-library/class-wp-rest-font-families-controller.php index 9655178d706679..e5564a618a9376 100644 --- a/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php +++ b/lib/experimental/fonts/font-library/class-wp-rest-font-families-controller.php @@ -1,33 +1,34 @@ rest_base = 'fonts'; + public function __construct( ) { + $this->rest_base = 'font-families'; $this->namespace = 'wp/v2'; + $this->post_type = 'wp_font_family'; } /** @@ -36,6 +37,18 @@ public function __construct() { * @since 6.5.0 */ public function register_routes() { + register_rest_route( + $this->namespace, + '/' . $this->rest_base, + array( + array( + 'methods' => WP_REST_Server::READABLE, + 'callback' => array( $this, 'get_items' ), + 'permission_callback' => function () {return true;}, + ), + ) + ); + register_rest_route( $this->namespace, '/' . $this->rest_base, @@ -67,71 +80,6 @@ public function register_routes() { ), ) ); - - register_rest_route( - $this->namespace, - '/' . $this->rest_base . '/collections', - array( - array( - 'methods' => WP_REST_Server::READABLE, - 'callback' => array( $this, 'get_font_collections' ), - 'permission_callback' => array( $this, 'update_font_library_permissions_check' ), - ), - ) - ); - - register_rest_route( - $this->namespace, - '/' . $this->rest_base . '/collections' . '/(?P[\/\w-]+)', - array( - array( - 'methods' => WP_REST_Server::READABLE, - 'callback' => array( $this, 'get_font_collection' ), - 'permission_callback' => array( $this, 'update_font_library_permissions_check' ), - ), - ) - ); - } - - /** - * Gets a font collection. - * - * @since 6.5.0 - * - * @param WP_REST_Request $request Full details about the request. - * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. - */ - public function get_font_collection( $request ) { - $id = $request->get_param( 'id' ); - $collection = WP_Font_Library::get_font_collection( $id ); - // If the collection doesn't exist returns a 404. - if ( is_wp_error( $collection ) ) { - $collection->add_data( array( 'status' => 404 ) ); - return $collection; - } - $collection_with_data = $collection->get_data(); - // If there was an error getting the collection data, return the error. - if ( is_wp_error( $collection_with_data ) ) { - $collection_with_data->add_data( array( 'status' => 500 ) ); - return $collection_with_data; - } - return new WP_REST_Response( $collection_with_data ); - } - - /** - * Gets the font collections available. - * - * @since 6.5.0 - * - * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. - */ - public function get_font_collections() { - $collections = array(); - foreach ( WP_Font_Library::get_font_collections() as $collection ) { - $collections[] = $collection->get_config(); - } - - return new WP_REST_Response( $collections, 200 ); } /** diff --git a/lib/experimental/fonts/font-library/font-library.php b/lib/experimental/fonts/font-library/font-library.php index 6c31c02d409f7a..d4edf9871ab139 100644 --- a/lib/experimental/fonts/font-library/font-library.php +++ b/lib/experimental/fonts/font-library/font-library.php @@ -22,16 +22,21 @@ function gutenberg_init_font_library_routes() { // @core-merge: This code will go into Core's `create_initial_post_types()`. $args = array( + 'supports' => array( 'title', 'editor' ), 'public' => false, '_builtin' => true, /* internal use only. don't use this when registering your own post type. */ - 'label' => 'Font Library', + 'hierarchical' => false, + 'label' => 'Font Family', 'show_in_rest' => true, + 'rest_base' => 'font-families', + 'rest_controller_class' => 'WP_REST_Font_Families_Controller', + 'autosave_rest_controller_class' => 'WP_REST_Autosave_Font_Families_Controller', ); register_post_type( 'wp_font_family', $args ); // @core-merge: This code will go into Core's `create_initial_rest_routes()`. - $font_library_controller = new WP_REST_Font_Library_Controller(); - $font_library_controller->register_routes(); + $font_collections_controller = new WP_REST_Font_Collections_Controller(); + $font_collections_controller->register_routes(); } add_action( 'rest_api_init', 'gutenberg_init_font_library_routes' ); diff --git a/lib/load.php b/lib/load.php index ed108f764ada19..94cc87fb419d52 100644 --- a/lib/load.php +++ b/lib/load.php @@ -148,7 +148,9 @@ function gutenberg_is_experiment_enabled( $name ) { require __DIR__ . '/experimental/fonts/font-library/class-wp-font-library.php'; require __DIR__ . '/experimental/fonts/font-library/class-wp-font-family-utils.php'; require __DIR__ . '/experimental/fonts/font-library/class-wp-font-family.php'; - require __DIR__ . '/experimental/fonts/font-library/class-wp-rest-font-library-controller.php'; + require __DIR__ . '/experimental/fonts/font-library/class-wp-rest-font-families-controller.php'; + require __DIR__ . '/experimental/fonts/font-library/class-wp-rest-font-collections-controller.php'; + require __DIR__ . '/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php'; require __DIR__ . '/experimental/fonts/font-library/font-library.php'; } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js b/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js index 425b3afb0e7c3c..0ab4a7ba742247 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js @@ -9,7 +9,7 @@ import apiFetch from '@wordpress/api-fetch'; export async function fetchInstallFonts( data ) { const config = { - path: '/wp/v2/fonts', + path: '/wp/v2/font-families', method: 'POST', body: data, }; @@ -21,7 +21,7 @@ export async function fetchUninstallFonts( fonts ) { font_families: fonts, }; const config = { - path: '/wp/v2/fonts', + path: '/wp/v2/font-families', method: 'DELETE', data, }; @@ -30,7 +30,7 @@ export async function fetchUninstallFonts( fonts ) { export async function fetchFontCollections() { const config = { - path: '/wp/v2/fonts/collections', + path: '/wp/v2/font-collections', method: 'GET', }; return apiFetch( config ); @@ -38,7 +38,7 @@ export async function fetchFontCollections() { export async function fetchFontCollection( id ) { const config = { - path: `/wp/v2/fonts/collections/${ id }`, + path: `/wp/v2/font-collections/${ id }`, method: 'GET', }; return apiFetch( config ); From 81f167a16bf27593a15dfcb94a6538990d20d402 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 20 Dec 2023 15:31:29 -0300 Subject: [PATCH 2/6] update tests --- .../base.php | 11 +---- .../getFontCollection.php | 16 +++---- .../getFontCollections.php | 10 ++--- .../registerRoutes.php | 24 +++++++++++ .../wpRestFontFamiliesController/base.php | 43 +++++++++++++++++++ .../installFonts.php | 10 ++--- .../uninstallFonts.php | 12 +++--- .../registerRoutes.php | 28 ------------ 8 files changed, 93 insertions(+), 61 deletions(-) rename phpunit/tests/fonts/font-library/{wpRestFontLibraryController => wpRestFontCollectionsController}/base.php (69%) rename phpunit/tests/fonts/font-library/{wpRestFontLibraryController => wpRestFontCollectionsController}/getFontCollection.php (84%) rename phpunit/tests/fonts/font-library/{wpRestFontLibraryController => wpRestFontCollectionsController}/getFontCollections.php (77%) create mode 100644 phpunit/tests/fonts/font-library/wpRestFontCollectionsController/registerRoutes.php create mode 100644 phpunit/tests/fonts/font-library/wpRestFontFamiliesController/base.php rename phpunit/tests/fonts/font-library/{wpRestFontLibraryController => wpRestFontFamiliesController}/installFonts.php (98%) rename phpunit/tests/fonts/font-library/{wpRestFontLibraryController => wpRestFontFamiliesController}/uninstallFonts.php (90%) delete mode 100644 phpunit/tests/fonts/font-library/wpRestFontLibraryController/registerRoutes.php diff --git a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/base.php b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/base.php similarity index 69% rename from phpunit/tests/fonts/font-library/wpRestFontLibraryController/base.php rename to phpunit/tests/fonts/font-library/wpRestFontCollectionsController/base.php index a6b02f38a5e817..2469d71dc79ce8 100644 --- a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/base.php +++ b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/base.php @@ -1,11 +1,11 @@ factory->user->create( array( @@ -40,10 +38,5 @@ public function tear_down() { $property = $reflection->getProperty( 'collections' ); $property->setAccessible( true ); $property->setValue( null, array() ); - - // Clean up the /fonts directory. - foreach ( $this->files_in_dir( static::$fonts_dir ) as $file ) { - @unlink( $file ); - } } } diff --git a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/getFontCollection.php b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/getFontCollection.php similarity index 84% rename from phpunit/tests/fonts/font-library/wpRestFontLibraryController/getFontCollection.php rename to phpunit/tests/fonts/font-library/wpRestFontCollectionsController/getFontCollection.php index f1a0a6a0cd510c..94e7daaa166345 100644 --- a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/getFontCollection.php +++ b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/getFontCollection.php @@ -1,6 +1,6 @@ dispatch( $request ); $data = $response->get_data(); $this->assertSame( 200, $response->get_status(), 'The response status is not 200.' ); @@ -99,7 +99,7 @@ public function test_get_font_collection_from_file() { } public function test_get_font_collection_from_url() { - $request = new WP_REST_Request( 'GET', '/wp/v2/fonts/collections/collection-with-url' ); + $request = new WP_REST_Request( 'GET', '/wp/v2/font-collections/collection-with-url' ); $response = rest_get_server()->dispatch( $request ); $data = $response->get_data(); $this->assertSame( 200, $response->get_status(), 'The response status is not 200.' ); @@ -107,19 +107,19 @@ public function test_get_font_collection_from_url() { } public function test_get_non_existing_collection_should_return_404() { - $request = new WP_REST_Request( 'GET', '/wp/v2/fonts/collections/non-existing-collection-id' ); + $request = new WP_REST_Request( 'GET', '/wp/v2/font-collections/non-existing-collection-id' ); $response = rest_get_server()->dispatch( $request ); $this->assertSame( 404, $response->get_status() ); } public function test_get_non_existing_file_should_return_500() { - $request = new WP_REST_Request( 'GET', '/wp/v2/fonts/collections/collection-with-non-existing-file' ); + $request = new WP_REST_Request( 'GET', '/wp/v2/font-collections/collection-with-non-existing-file' ); $response = rest_get_server()->dispatch( $request ); $this->assertSame( 500, $response->get_status() ); } public function test_get_non_existing_url_should_return_500() { - $request = new WP_REST_Request( 'GET', '/wp/v2/fonts/collections/collection-with-non-existing-url' ); + $request = new WP_REST_Request( 'GET', '/wp/v2/font-collections/collection-with-non-existing-url' ); $response = rest_get_server()->dispatch( $request ); $this->assertSame( 500, $response->get_status() ); } diff --git a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/getFontCollections.php b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/getFontCollections.php similarity index 77% rename from phpunit/tests/fonts/font-library/wpRestFontLibraryController/getFontCollections.php rename to phpunit/tests/fonts/font-library/wpRestFontCollectionsController/getFontCollections.php index ad120ee36fce4d..224dab07cf0b7a 100644 --- a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/getFontCollections.php +++ b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/getFontCollections.php @@ -1,6 +1,6 @@ dispatch( $request ); $this->assertSame( 200, $response->get_status() ); $this->assertSame( array(), $response->get_data() ); @@ -34,7 +34,7 @@ public function test_get_font_collections() { ); wp_register_font_collection( $config ); - $request = new WP_REST_Request( 'GET', '/wp/v2/fonts/collections' ); + $request = new WP_REST_Request( 'GET', '/wp/v2/font-collections' ); $response = rest_get_server()->dispatch( $request ); $data = $response->get_data(); $this->assertSame( 200, $response->get_status(), 'The response status is not 200.' ); diff --git a/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/registerRoutes.php b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/registerRoutes.php new file mode 100644 index 00000000000000..c2c019fa70a022 --- /dev/null +++ b/phpunit/tests/fonts/font-library/wpRestFontCollectionsController/registerRoutes.php @@ -0,0 +1,24 @@ +get_routes(); + $this->assertCount( 1, $routes['/wp/v2/font-collections'], 'Rest server has not the collections path initialized.' ); + $this->assertCount( 1, $routes['/wp/v2/font-collections/(?P[\/\w-]+)'], 'Rest server has not the collection path initialized.' ); + + $this->assertArrayHasKey( 'GET', $routes['/wp/v2/font-collections'][0]['methods'], 'Rest server has not the GET method for collections intialized.' ); + $this->assertArrayHasKey( 'GET', $routes['/wp/v2/font-collections/(?P[\/\w-]+)'][0]['methods'], 'Rest server has not the GET method for collection intialized.' ); + } +} diff --git a/phpunit/tests/fonts/font-library/wpRestFontFamiliesController/base.php b/phpunit/tests/fonts/font-library/wpRestFontFamiliesController/base.php new file mode 100644 index 00000000000000..5ab71a4379851f --- /dev/null +++ b/phpunit/tests/fonts/font-library/wpRestFontFamiliesController/base.php @@ -0,0 +1,43 @@ +factory->user->create( + array( + 'role' => 'administrator', + ) + ); + wp_set_current_user( $admin_id ); + } + + /** + * Tear down each test method. + */ + public function tear_down() { + parent::tear_down(); + + // Clean up the /fonts directory. + foreach ( $this->files_in_dir( static::$fonts_dir ) as $file ) { + @unlink( $file ); + } + } +} diff --git a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/installFonts.php b/phpunit/tests/fonts/font-library/wpRestFontFamiliesController/installFonts.php similarity index 98% rename from phpunit/tests/fonts/font-library/wpRestFontLibraryController/installFonts.php rename to phpunit/tests/fonts/font-library/wpRestFontFamiliesController/installFonts.php index 01ac1ff8436ed7..d35022306f4e6f 100644 --- a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/installFonts.php +++ b/phpunit/tests/fonts/font-library/wpRestFontFamiliesController/installFonts.php @@ -1,6 +1,6 @@ set_param( 'font_families', $font_families_json ); $install_request->set_file_params( $files ); @@ -307,7 +307,7 @@ public function data_install_fonts() { * @param array $files Font files to install. */ public function test_install_with_improper_inputs( $font_families, $files = array() ) { - $install_request = new WP_REST_Request( 'POST', '/wp/v2/fonts' ); + $install_request = new WP_REST_Request( 'POST', '/wp/v2/font-families' ); $font_families_json = json_encode( $font_families ); $install_request->set_param( 'font_families', $font_families_json ); $install_request->set_file_params( $files ); diff --git a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/uninstallFonts.php b/phpunit/tests/fonts/font-library/wpRestFontFamiliesController/uninstallFonts.php similarity index 90% rename from phpunit/tests/fonts/font-library/wpRestFontLibraryController/uninstallFonts.php rename to phpunit/tests/fonts/font-library/wpRestFontFamiliesController/uninstallFonts.php index a3b613e6f983e0..241f26284fe5d2 100644 --- a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/uninstallFonts.php +++ b/phpunit/tests/fonts/font-library/wpRestFontFamiliesController/uninstallFonts.php @@ -1,6 +1,6 @@ set_param( 'font_families', $font_families_json ); rest_get_server()->dispatch( $install_request ); @@ -67,7 +67,7 @@ public function test_uninstall() { ), ); - $uninstall_request = new WP_REST_Request( 'DELETE', '/wp/v2/fonts' ); + $uninstall_request = new WP_REST_Request( 'DELETE', '/wp/v2/font-families' ); $uninstall_request->set_param( 'font_families', $font_families_to_uninstall ); $response = rest_get_server()->dispatch( $uninstall_request ); $this->assertSame( 200, $response->get_status(), 'The response status is not 200.' ); @@ -75,7 +75,7 @@ public function test_uninstall() { public function test_uninstall_non_existing_fonts() { - $uninstall_request = new WP_REST_Request( 'DELETE', '/wp/v2/fonts' ); + $uninstall_request = new WP_REST_Request( 'DELETE', '/wp/v2/font-families' ); $non_existing_font_data = array( array( diff --git a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/registerRoutes.php b/phpunit/tests/fonts/font-library/wpRestFontLibraryController/registerRoutes.php deleted file mode 100644 index 2ac7b93c3a4141..00000000000000 --- a/phpunit/tests/fonts/font-library/wpRestFontLibraryController/registerRoutes.php +++ /dev/null @@ -1,28 +0,0 @@ -get_routes(); - $this->assertArrayHasKey( '/wp/v2/fonts', $routes, 'Rest server has not the fonts path intialized.' ); - $this->assertCount( 2, $routes['/wp/v2/fonts'], 'Rest server has not the 2 fonts paths initialized.' ); - $this->assertCount( 1, $routes['/wp/v2/fonts/collections'], 'Rest server has not the collections path initialized.' ); - $this->assertCount( 1, $routes['/wp/v2/fonts/collections/(?P[\/\w-]+)'], 'Rest server has not the collection path initialized.' ); - - $this->assertArrayHasKey( 'POST', $routes['/wp/v2/fonts'][0]['methods'], 'Rest server has not the POST method for fonts intialized.' ); - $this->assertArrayHasKey( 'DELETE', $routes['/wp/v2/fonts'][1]['methods'], 'Rest server has not the DELETE method for fonts intialized.' ); - $this->assertArrayHasKey( 'GET', $routes['/wp/v2/fonts/collections'][0]['methods'], 'Rest server has not the GET method for collections intialized.' ); - $this->assertArrayHasKey( 'GET', $routes['/wp/v2/fonts/collections/(?P[\/\w-]+)'][0]['methods'], 'Rest server has not the GET method for collection intialized.' ); - } -} From a0b862ce022f540938a7e190a70389b1b3d06a3c Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 20 Dec 2023 15:34:23 -0300 Subject: [PATCH 3/6] format php --- ...wp-rest-autosave-font-families-controller.php | 4 ++-- ...class-wp-rest-font-collections-controller.php | 2 +- .../class-wp-rest-font-families-controller.php | 5 +++-- .../fonts/font-library/font-library.php | 16 ++++++++-------- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php index ac1c8b333cbe5e..fcda2a327d8b9e 100644 --- a/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php +++ b/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php @@ -9,7 +9,7 @@ * @since 6.5.0 */ - if ( class_exists( 'WP_REST_Autosave_Font_Families_Controller' ) ) { +if ( class_exists( 'WP_REST_Autosave_Font_Families_Controller' ) ) { return; } @@ -19,7 +19,7 @@ * @since 6.5.0 */ class WP_REST_Autosave_Font_Families_Controller { - function register_routes () { + function register_routes() { // disable autosave endpoints for font families } } diff --git a/lib/experimental/fonts/font-library/class-wp-rest-font-collections-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-font-collections-controller.php index 58c435b4389f42..2367cba0b870a7 100644 --- a/lib/experimental/fonts/font-library/class-wp-rest-font-collections-controller.php +++ b/lib/experimental/fonts/font-library/class-wp-rest-font-collections-controller.php @@ -25,7 +25,7 @@ class WP_REST_Font_Collections_Controller extends WP_REST_Controller { * * @since 6.5.0 */ - public function __construct( ) { + public function __construct() { $this->rest_base = 'font-collections'; $this->namespace = 'wp/v2'; } diff --git a/lib/experimental/fonts/font-library/class-wp-rest-font-families-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-font-families-controller.php index e5564a618a9376..c92a0d2697f315 100644 --- a/lib/experimental/fonts/font-library/class-wp-rest-font-families-controller.php +++ b/lib/experimental/fonts/font-library/class-wp-rest-font-families-controller.php @@ -25,7 +25,7 @@ class WP_REST_Font_Families_Controller extends WP_REST_Posts_Controller { * * @since 6.5.0 */ - public function __construct( ) { + public function __construct() { $this->rest_base = 'font-families'; $this->namespace = 'wp/v2'; $this->post_type = 'wp_font_family'; @@ -44,7 +44,8 @@ public function register_routes() { array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), - 'permission_callback' => function () {return true;}, + 'permission_callback' => function () { + return true;}, ), ) ); diff --git a/lib/experimental/fonts/font-library/font-library.php b/lib/experimental/fonts/font-library/font-library.php index d4edf9871ab139..6bfc4db8110bb4 100644 --- a/lib/experimental/fonts/font-library/font-library.php +++ b/lib/experimental/fonts/font-library/font-library.php @@ -22,14 +22,14 @@ function gutenberg_init_font_library_routes() { // @core-merge: This code will go into Core's `create_initial_post_types()`. $args = array( - 'supports' => array( 'title', 'editor' ), - 'public' => false, - '_builtin' => true, /* internal use only. don't use this when registering your own post type. */ - 'hierarchical' => false, - 'label' => 'Font Family', - 'show_in_rest' => true, - 'rest_base' => 'font-families', - 'rest_controller_class' => 'WP_REST_Font_Families_Controller', + 'supports' => array( 'title', 'editor' ), + 'public' => false, + '_builtin' => true, /* internal use only. don't use this when registering your own post type. */ + 'hierarchical' => false, + 'label' => 'Font Family', + 'show_in_rest' => true, + 'rest_base' => 'font-families', + 'rest_controller_class' => 'WP_REST_Font_Families_Controller', 'autosave_rest_controller_class' => 'WP_REST_Autosave_Font_Families_Controller', ); register_post_type( 'wp_font_family', $args ); From 6c4410f4357dc48fa970a0628749a73d39701e71 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 20 Dec 2023 16:14:55 -0300 Subject: [PATCH 4/6] visibility of register_routes method --- .../class-wp-rest-autosave-font-families-controller.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php index fcda2a327d8b9e..0e31bd4004b40f 100644 --- a/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php +++ b/lib/experimental/fonts/font-library/class-wp-rest-autosave-font-families-controller.php @@ -19,7 +19,7 @@ * @since 6.5.0 */ class WP_REST_Autosave_Font_Families_Controller { - function register_routes() { + public function register_routes() { // disable autosave endpoints for font families } } From 1285ed3f8e6a9d328069956d240c03f00fec10bb Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 20 Dec 2023 17:07:50 -0300 Subject: [PATCH 5/6] remove not needed config --- lib/experimental/fonts/font-library/font-library.php | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/experimental/fonts/font-library/font-library.php b/lib/experimental/fonts/font-library/font-library.php index 6bfc4db8110bb4..5312568efb0f43 100644 --- a/lib/experimental/fonts/font-library/font-library.php +++ b/lib/experimental/fonts/font-library/font-library.php @@ -22,7 +22,6 @@ function gutenberg_init_font_library_routes() { // @core-merge: This code will go into Core's `create_initial_post_types()`. $args = array( - 'supports' => array( 'title', 'editor' ), 'public' => false, '_builtin' => true, /* internal use only. don't use this when registering your own post type. */ 'hierarchical' => false, From 7cb8fd33a33ee1da92c0c08c75245e599633da99 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 20 Dec 2023 17:09:05 -0300 Subject: [PATCH 6/6] remove not needed config Co-authored-by: Jason Crist <146530+pbking@users.noreply.github.com> Co-authored-by: Jeff Ong <5375500+jffng@users.noreply.github.com> --- lib/experimental/fonts/font-library/font-library.php | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/experimental/fonts/font-library/font-library.php b/lib/experimental/fonts/font-library/font-library.php index 5312568efb0f43..709f63e9126cbc 100644 --- a/lib/experimental/fonts/font-library/font-library.php +++ b/lib/experimental/fonts/font-library/font-library.php @@ -24,7 +24,6 @@ function gutenberg_init_font_library_routes() { $args = array( 'public' => false, '_builtin' => true, /* internal use only. don't use this when registering your own post type. */ - 'hierarchical' => false, 'label' => 'Font Family', 'show_in_rest' => true, 'rest_base' => 'font-families',