feat: initial ACRIB WordPress deployment
- WordPress 6.9.4 (es_ES) with Kadence theme - Homepage: Hero, La Asociación, Pilares, Beneficios, Eventos, Miembros, Hazte Miembro, Contacto - Brand identity: #13294b navy, #a12932 burgundy, #c69c48 gold - Fonts: Raleway (headings) + Source Sans 3 (body) + Lato (UI) - Plugins: Kadence Blocks, Polylang, Contact Form 7 - Custom CSS with full brand styling and responsive layout - HTTPS enforced via wp-config.php proxy detection
This commit is contained in:
109
wp-content/plugins/kadence-blocks/includes/resources/App.php
Normal file
109
wp-content/plugins/kadence-blocks/includes/resources/App.php
Normal file
@@ -0,0 +1,109 @@
|
||||
<?php declare( strict_types=1 );
|
||||
|
||||
namespace KadenceWP\KadenceBlocks;
|
||||
|
||||
use InvalidArgumentException;
|
||||
use KadenceWP\KadenceBlocks\Adbar\Dot;
|
||||
use KadenceWP\KadenceBlocks\Admin\Admin_Provider;
|
||||
use KadenceWP\KadenceBlocks\Asset\Asset_Provider;
|
||||
use KadenceWP\KadenceBlocks\Cache\Cache_Provider;
|
||||
use KadenceWP\KadenceBlocks\Database\Database_Provider;
|
||||
use KadenceWP\KadenceBlocks\Health\Health_Provider;
|
||||
use KadenceWP\KadenceBlocks\Image_Downloader\Image_Downloader_Provider;
|
||||
use KadenceWP\KadenceBlocks\Log\Log_Provider;
|
||||
use KadenceWP\KadenceBlocks\Optimizer\Optimizer_Provider;
|
||||
use KadenceWP\KadenceBlocks\Shutdown\Shutdown_Provider;
|
||||
use KadenceWP\KadenceBlocks\StellarWP\ContainerContract\ContainerInterface;
|
||||
use KadenceWP\KadenceBlocks\StellarWP\ProphecyMonorepo\Container\Contracts\Container;
|
||||
use KadenceWP\KadenceBlocks\StellarWP\ProphecyMonorepo\Container\Contracts\Providable;
|
||||
use KadenceWP\KadenceBlocks\Harbor\Harbor_Provider;
|
||||
use KadenceWP\KadenceBlocks\Uplink\Uplink_Provider;
|
||||
use RuntimeException;
|
||||
|
||||
/**
|
||||
* The Core Kadence Blocks Application, with container support.
|
||||
*/
|
||||
final class App {
|
||||
|
||||
private static self $instance;
|
||||
|
||||
/**
|
||||
* @var Container
|
||||
*/
|
||||
private Container $container;
|
||||
|
||||
/**
|
||||
* Add any custom providers here.
|
||||
*
|
||||
* @note The order is important.
|
||||
*
|
||||
* @var class-string<Providable>
|
||||
*/
|
||||
private $providers = [
|
||||
Log_Provider::class,
|
||||
Database_Provider::class,
|
||||
Asset_Provider::class,
|
||||
Uplink_Provider::class,
|
||||
Harbor_Provider::class,
|
||||
Health_Provider::class,
|
||||
Admin_Provider::class,
|
||||
Image_Downloader_Provider::class,
|
||||
Optimizer_Provider::class,
|
||||
Cache_Provider::class,
|
||||
Shutdown_Provider::class,
|
||||
];
|
||||
|
||||
/**
|
||||
* @param Container $container
|
||||
*/
|
||||
private function __construct(
|
||||
Container $container
|
||||
) {
|
||||
$this->container = $container;
|
||||
|
||||
$this->init();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Container|null $container
|
||||
*
|
||||
* @return self
|
||||
* @throws InvalidArgumentException If no container is provided.
|
||||
*/
|
||||
public static function instance( ?Container $container = null ): App {
|
||||
if ( ! isset( self::$instance ) ) {
|
||||
if ( ! $container ) {
|
||||
throw new InvalidArgumentException( 'You need to provide a concrete Contracts\Container instance!' );
|
||||
}
|
||||
|
||||
self::$instance = new self( $container );
|
||||
}
|
||||
|
||||
return self::$instance;
|
||||
}
|
||||
|
||||
public function container(): Container {
|
||||
return $this->container;
|
||||
}
|
||||
|
||||
private function init(): void {
|
||||
$this->container->bind( Container::class, $this->container );
|
||||
$this->container->bind( ContainerInterface::class, $this->container );
|
||||
$this->container->singleton( Dot::class, new Dot() );
|
||||
|
||||
foreach ( $this->providers as $provider ) {
|
||||
$this->container->register( $provider );
|
||||
}
|
||||
}
|
||||
|
||||
private function __clone() {
|
||||
}
|
||||
|
||||
public function __wakeup(): void {
|
||||
throw new RuntimeException( 'method not implemented' );
|
||||
}
|
||||
|
||||
public function __sleep(): array {
|
||||
throw new RuntimeException( 'method not implemented' );
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user