settings = $settings; $this->gate = $gate; } /** * Module id. * * @since 1.0.0 * * @return string */ public function id(): string { return 'settings'; } /** * Module label. * * @since 1.0.0 * * @return string */ public function label(): string { return __( 'Settings', 'elevenrank' ); } /** * Registers the REST routes. * * @since 1.0.0 * * @return void */ public function boot(): void { add_action( 'rest_api_init', array( $this, 'register_routes' ) ); } /** * Registers the settings, site and status routes. * * @since 1.0.0 * * @return void */ public function register_routes(): void { ( new Settings_Controller( $this->settings ) )->register_routes(); ( new Site_Controller() )->register_routes(); ( new Status_Controller( $this->gate ) )->register_routes(); ( new Dashboard_Controller( new Dashboard_Stats( $this->settings ) ) )->register_routes(); } }