vendor/pimcore/headless-documents/src/PimcoreHeadlessDocumentsBundle.php line 28

Open in your IDE?
  1. <?php
  2. /**
  3.  * Pimcore
  4.  *
  5.  * This source file is available under following license:
  6.  * - Pimcore Commercial License (PCL)
  7.  *
  8.  *  @copyright  Copyright (c) Pimcore GmbH (http://www.pimcore.org)
  9.  *  @license    http://www.pimcore.org/license     PCL
  10.  */
  11. namespace Pimcore\Bundle\HeadlessDocumentsBundle;
  12. use Pimcore\Bundle\AdminBundle\PimcoreAdminBundle;
  13. use Pimcore\Bundle\EnterpriseSubscriptionToolsBundle\Bundle\EnterpriseBundleInterface;
  14. use Pimcore\Bundle\EnterpriseSubscriptionToolsBundle\PimcoreEnterpriseSubscriptionToolsBundle;
  15. use Pimcore\Bundle\HeadlessDocumentsBundle\DependencyInjection\Compiler\RegisterLayoutPass;
  16. use Pimcore\Extension\Bundle\AbstractPimcoreBundle;
  17. use Pimcore\Extension\Bundle\Installer\InstallerInterface;
  18. use Pimcore\Extension\Bundle\PimcoreBundleAdminClassicInterface;
  19. use Pimcore\Extension\Bundle\Traits\BundleAdminClassicTrait;
  20. use Pimcore\Extension\Bundle\Traits\PackageVersionTrait;
  21. use Pimcore\HttpKernel\Bundle\DependentBundleInterface;
  22. use Pimcore\HttpKernel\BundleCollection\BundleCollection;
  23. use Symfony\Component\DependencyInjection\ContainerBuilder;
  24. class PimcoreHeadlessDocumentsBundle extends AbstractPimcoreBundle implements DependentBundleInterfaceEnterpriseBundleInterfacePimcoreBundleAdminClassicInterface
  25. {
  26.     use BundleAdminClassicTrait;
  27.     use PackageVersionTrait;
  28.     public const CONFIG_NAME 'pimcore_headless_documents_config';
  29.     public function getDescription(): string
  30.     {
  31.         return 'Pimcore Headless Documents bundle';
  32.     }
  33.     public static function registerDependentBundles(BundleCollection $collection): void
  34.     {
  35.         $collection->addBundle(new PimcoreEnterpriseSubscriptionToolsBundle());
  36.         $collection->addBundle(new PimcoreAdminBundle(), 60);
  37.     }
  38.     public function getBundleLicenseId(): string
  39.     {
  40.         return 'HDC';
  41.     }
  42.     /**
  43.      * @inheritDoc
  44.      */
  45.     public function build(ContainerBuilder $container)
  46.     {
  47.         $container
  48.             ->addCompilerPass(new RegisterLayoutPass());
  49.     }
  50.     /**
  51.      * {@inheritdoc}
  52.      */
  53.     protected function getComposerPackageName(): string
  54.     {
  55.         return 'pimcore/headless-documents';
  56.     }
  57.     public function getCssPaths(): array
  58.     {
  59.         return [
  60.             '/bundles/pimcoreheadlessdocuments/css/backend.css'
  61.         ];
  62.     }
  63.     public function getEditmodeCssPaths(): array
  64.     {
  65.         return [
  66.             '/bundles/pimcoreheadlessdocuments/css/editmode.css'
  67.         ];
  68.     }
  69.     public function getJsPaths(): array
  70.     {
  71.         return [
  72.             '/bundles/pimcoreheadlessdocuments/js/pimcore/startup.js',
  73.             '/bundles/pimcoreheadlessdocuments/js/pimcore/events.js',
  74.             '/bundles/pimcoreheadlessdocuments/js/pimcore/document/headlessdocuments/settings.js',
  75.             '/bundles/pimcoreheadlessdocuments/js/pimcore/document/headlessdocument.js',
  76.             '/bundles/pimcoreheadlessdocuments/js/pimcore/headless/abstractItem.js',
  77.             '/bundles/pimcoreheadlessdocuments/js/pimcore/headless/templateConfig.js',
  78.             '/bundles/pimcoreheadlessdocuments/js/pimcore/headless/templateConfigs/item.js',
  79.             '/bundles/pimcoreheadlessdocuments/js/pimcore/headless/brickConfig.js',
  80.             '/bundles/pimcoreheadlessdocuments/js/pimcore/headless/brickConfigs/item.js'
  81.         ];
  82.     }
  83.     public function getEditmodeJsPaths(): array
  84.     {
  85.         return [
  86.             '/bundles/pimcoreheadlessdocuments/js/pimcore/document/editables/headlessareablock.js',
  87.         ];
  88.     }
  89.     public function getInstaller(): ?InstallerInterface
  90.     {
  91.         return $this->container->get(Installer::class);
  92.     }
  93. }