File: /var/www/html/triad-infosec/wp-content/plugins/events-calendar-pro/src/Tribe/Editor/Provider.php
<?php
use TEC\Common\Contracts\Service_Provider;
class Tribe__Events__Pro__Editor__Provider extends Service_Provider {
/**
* Binds and sets up implementations.
*
* @since 4.5
*
*/
public function register() {
// Return if we shouldn't load blocks.
if ( ! tribe( 'editor' )->should_load_blocks() && ! tec_is_full_site_editor() ) {
return;
}
$this->container->singleton( 'events-pro.editor', 'Tribe__Events__Pro__Editor' );
$this->container->singleton( 'events-pro.editor.fields', 'Tribe__Events__Pro__Editor__Additional_Fields' );
$this->container->singleton( 'events-pro.editor.frontend.template', 'Tribe__Events__Pro__Editor__Template__Frontend' );
$this->container->singleton( 'events-pro.editor.admin.template', 'Tribe__Events__Pro__Editor__Template__Admin' );
$this->container->singleton( 'events-pro.editor.configuration', 'Tribe__Events__Pro__Editor__Configuration', array( 'hook' ) );
$this->container->singleton( 'events-pro.editor.assets', 'Tribe__Events__Pro__Editor__Assets', array( 'register' ) );
$this->container->singleton( 'events-pro.editor.meta', 'Tribe__Events__Pro__Editor__Meta' );
$this->container->singleton( 'events-pro.editor.recurrence.provider', 'Tribe__Events__Pro__Editor__Recurrence__Provider' );
$this->container->singleton( 'events-pro.editor.recurrence.queue-status', 'Tribe__Events__Pro__Editor__Recurrence__Queue_Status' );
$this->container->singleton( 'events-pro.editor.recurrence.blocks-meta', Tribe__Events__Pro__Editor__Recurrence__Blocks_Meta::class );
// Singletons for pro blocks
$this->container->singleton( 'events-pro.editor.blocks.fields', 'Tribe__Events__Pro__Editor__Blocks__Additional_Fields' );
$this->container->singleton( 'events-pro.editor.blocks.related-events', 'Tribe__Events__Pro__Editor__Blocks__Related_Events' );
$this->hook();
// Initialize the correct Singletons
tribe( 'events-pro.editor.assets' );
tribe( 'events-pro.editor.configuration' );
}
/**
* Any hooking any class needs happen here.
*
* In place of delegating the hooking responsibility to the single classes they are all hooked here.
*
* @since 4.5
*
*/
protected function hook() {
tribe( 'events-pro.editor.recurrence.provider' )->hook();
tribe( 'events-pro.editor.recurrence.queue-status' )->hook();
add_action( 'init', tribe_callback( 'events-pro.editor.meta', 'register' ), 15 );
tribe( 'events-pro.editor' )->hook();
// Setup the registration of blocks
add_action( 'tribe_editor_register_blocks', [ tribe( 'events-pro.editor.blocks.fields' ), 'register' ] );
add_action( 'tribe_editor_register_blocks', [ tribe( 'events-pro.editor.blocks.related-events' ), 'register' ] );
}
/**
* Binds and sets up implementations at boot time.
*
* @since 4.5
*/
public function boot() {
// no ops
}
}