Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 18
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
RestApi
0.00% covered (danger)
0.00%
0 / 18
0.00% covered (danger)
0.00%
0 / 2
6
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 register_routes
0.00% covered (danger)
0.00%
0 / 17
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace NewfoldLabs\WP\Module\Patterns\Api;
4
5use NewfoldLabs\WP\Module\Patterns\Api\Controllers\RestApiController;
6use NewfoldLabs\WP\Module\Patterns\Api\Controllers\PatternsController;
7use NewfoldLabs\WP\Module\Patterns\Api\Controllers\PatternCategoriesController;
8use NewfoldLabs\WP\Module\Patterns\Api\Controllers\TemplatesController;
9use NewfoldLabs\WP\Module\Patterns\Api\Controllers\TemplateCategoriesController;
10use NewfoldLabs\WP\Module\Patterns\Api\Controllers\FavoritesController;
11use NewfoldLabs\WP\Module\Patterns\Api\Controllers\EventsController;
12use NewfoldLabs\WP\Module\Patterns\Api\Controllers\CacheController;
13use NewfoldLabs\WP\Module\Patterns\Api\Controllers\PatternUsageTagsController;
14use NewfoldLabs\WP\Module\Patterns\Api\Controllers\PluginsController;
15
16/**
17 * Instantiate controllers and register routes.
18 */
19final class RestApi {
20
21    /**
22     * Constructor.
23     */
24    public function __construct() {
25        \add_action( 'rest_api_init', array( $this, 'register_routes' ) );
26    }
27
28    /**
29     * Register routes.
30     */
31    public function register_routes() {
32        RestApiController::get( '/patterns', array( PatternsController::class, 'index' ) );
33        RestApiController::get( '/categories', array( PatternCategoriesController::class, 'index' ) );
34        RestApiController::get( '/usage_tags', array( PatternUsageTagsController::class, 'index' ) );
35
36        RestApiController::get( '/templates', array( TemplatesController::class, 'index' ) );
37        RestApiController::get( '/templateCategories', array( TemplateCategoriesController::class, 'index' ) );
38
39        RestApiController::get( '/favorites', array( FavoritesController::class, 'index' ) );
40        RestApiController::post( '/favorites', array( FavoritesController::class, 'add' ) );
41        RestApiController::delete( '/favorites', array( FavoritesController::class, 'delete' ) );
42
43        RestApiController::post( '/events', array( EventsController::class, 'send' ), EventsController::get_send_event_args() );
44        RestApiController::post( '/events/batch', array( EventsController::class, 'send_batch' ) );
45
46        RestApiController::post( '/clear-cache', array( CacheController::class, 'clear_cache' ) );
47
48        RestApiController::post( '/plugins/activate', array( PluginsController::class, 'activate' ) );
49        RestApiController::post( '/plugin/status', array( PluginsController::class, 'check_plugin_status' ) );
50        RestApiController::post( '/plugin/install', array( PluginsController::class, 'install_plugin' ) );
51        RestApiController::post( '/plugin/activate', array( PluginsController::class, 'activate_plugin' ) );
52        RestApiController::post( '/plugin/setup', array( PluginsController::class, 'setup_plugin' ) );
53        RestApiController::post( '/plugin/process', array( PluginsController::class, 'process_plugin' ) );
54    }
55}