X-Git-Url: https://git.rapsys.eu/packbundle/blobdiff_plain/2a05cbed79562ebd29ef1f0d1189659033ad9261..1dca397fd4da988e8a9851f29ffcf808696a9b4f:/README.md diff --git a/README.md b/README.md index fee1d96..81cd07a 100644 --- a/README.md +++ b/README.md @@ -38,11 +38,11 @@ Add bundle custom repository to your project's `composer.json` file: } }, "require": { - "symfony/asset": "^4.0|^5.0", - "symfony/flex": "^1.0", - "symfony/framework-bundle": "^4.0|^5.0", - "symfony/process": "^4.0|^5.0", - "symfony/twig-bundle": "^4.0|^5.0" + "symfony/asset": "^4.0|^5.0|^6.0|^7.0", + "symfony/flex": "^1.0|^2.0", + "symfony/framework-bundle": "^4.0|^5.0|^6.0|^7.0", + "symfony/process": "^4.0|^5.0|^6.0|^7.0", + "symfony/twig-bundle": "^4.0|^5.0|^6.0|^7.0" } } } @@ -107,92 +107,109 @@ content available in `Resources/config/packages/rapsys_pack.yaml`: ```yaml #Services configuration services: - #Replace assets.packages definition - assets.packages: - class: 'Symfony\Component\Asset\Packages' - arguments: [ '@rapsys_pack.path_package' ] - #Replace assets.context definition - assets.context: - class: 'Rapsys\PackBundle\Context\RequestStackContext' - arguments: [ '@request_stack', '%asset.request_context.base_path%', '%asset.request_context.secure%' ] - #Register assets pack package - rapsys_pack.path_package: - class: 'Rapsys\PackBundle\Package\PathPackage' - arguments: [ '/', '@assets.empty_version_strategy', '@assets.context' ] - public: true - #Register twig pack extension - rapsys_pack.pack_extension: - class: 'Rapsys\PackBundle\Extension\PackExtension' - arguments: [ '@service_container', '@rapsys_pack.intl_util', '@file_locator', '@rapsys_pack.path_package', '@rapsys_pack.slugger_util' ] - tags: [ 'twig.extension' ] - #Register intl util service - rapsys_pack.intl_util: - class: 'Rapsys\PackBundle\Util\IntlUtil' - public: true - #Register facebook event subscriber - Rapsys\PackBundle\Subscriber\FacebookSubscriber: - arguments: [ '@router', '%rapsys_air.locales%' ] - tags: [ 'kernel.event_subscriber' ] - #Register intl util class alias - Rapsys\PackBundle\Util\IntlUtil: - alias: 'rapsys_pack.intl_util' - #Register facebook util service - rapsys_pack.facebook_util: - class: 'Rapsys\PackBundle\Util\FacebookUtil' - arguments: [ '@router', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] - public: true - #Register facebook util class alias - Rapsys\PackBundle\Util\FacebookUtil: - alias: 'rapsys_pack.facebook_util' - #Register image util service - rapsys_pack.image_util: - class: 'Rapsys\PackBundle\Util\ImageUtil' - arguments: [ '@router', '@rapsys_pack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] - public: true - #Register image util class alias - Rapsys\PackBundle\Util\ImageUtil: - alias: 'rapsys_pack.image_util' - #Register map util service - rapsys_pack.map_util: - class: 'Rapsys\PackBundle\Util\MapUtil' - arguments: [ '@router', '@rapsys_pack.slugger_util' ] - public: true - #Register map util class alias - Rapsys\PackBundle\Util\MapUtil: - alias: 'rapsys_pack.map_util' - #Register slugger util service - rapsys_pack.slugger_util: - class: 'Rapsys\PackBundle\Util\SluggerUtil' - arguments: [ '%kernel.secret%' ] - public: true - #Register slugger util class alias - Rapsys\PackBundle\Util\SluggerUtil: - alias: 'rapsys_pack.slugger_util' - #Register image controller - Rapsys\PackBundle\Controller\ImageController: - arguments: [ '@service_container', '@rapsys_pack.image_util', '@rapsys_pack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] - tags: [ 'controller.service_arguments' ] - #Register map controller - Rapsys\PackBundle\Controller\MapController: - arguments: [ '@service_container', '@rapsys_pack.map_util', '@rapsys_pack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] - tags: [ 'controller.service_arguments' ] - Rapsys\PackBundle\Form\CaptchaType: - arguments: [ '@rapsys_pack.image_util', '@rapsys_pack.slugger_util', '@translator' ] - tags: [ 'form.type' ] + #Replace assets.packages definition + assets.packages: + class: 'Symfony\Component\Asset\Packages' + arguments: [ '@rapsys_pack.path_package' ] + #Replace assets.context definition + assets.context: + class: 'Rapsys\PackBundle\Context\RequestStackContext' + arguments: [ '@request_stack', '%asset.request_context.base_path%', '%asset.request_context.secure%' ] + #Register assets pack package + rapsys_pack.path_package: + class: 'Rapsys\PackBundle\Package\PathPackage' + arguments: [ '/', '@assets.empty_version_strategy', '@assets.context' ] + public: true + #Register twig pack extension + rapsys_pack.pack_extension: + class: 'Rapsys\PackBundle\Extension\PackExtension' + arguments: [ '@service_container', '@rapsys_pack.intl_util', '@file_locator', '@rapsys_pack.path_package', '@rapsys_pack.slugger_util' ] + tags: [ 'twig.extension' ] + #Register intl util service + rapsys_pack.intl_util: + class: 'Rapsys\PackBundle\Util\IntlUtil' + public: true + #Register facebook event subscriber + Rapsys\PackBundle\Subscriber\FacebookSubscriber: + arguments: [ '@router', [] ] + tags: [ 'kernel.event_subscriber' ] + #Register intl util class alias + Rapsys\PackBundle\Util\IntlUtil: + alias: 'rapsys_pack.intl_util' + #Register facebook util service + rapsys_pack.facebook_util: + class: 'Rapsys\PackBundle\Util\FacebookUtil' + arguments: [ '@router', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] + public: true + #Register facebook util class alias + Rapsys\PackBundle\Util\FacebookUtil: + alias: 'rapsys_pack.facebook_util' + #Register image util service + rapsys_pack.image_util: + class: 'Rapsys\PackBundle\Util\ImageUtil' + arguments: [ '@router', '@rapsys_pack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] + public: true + #Register image util class alias + Rapsys\PackBundle\Util\ImageUtil: + alias: 'rapsys_pack.image_util' + #Register map util service + rapsys_pack.map_util: + class: 'Rapsys\PackBundle\Util\MapUtil' + arguments: [ '@router', '@rapsys_pack.slugger_util' ] + public: true + #Register map util class alias + Rapsys\PackBundle\Util\MapUtil: + alias: 'rapsys_pack.map_util' + #Register slugger util service + rapsys_pack.slugger_util: + class: 'Rapsys\PackBundle\Util\SluggerUtil' + arguments: [ '%kernel.secret%' ] + public: true + #Register slugger util class alias + Rapsys\PackBundle\Util\SluggerUtil: + alias: 'rapsys_pack.slugger_util' + #Register image controller + Rapsys\PackBundle\Controller\ImageController: + arguments: [ '@service_container', '@rapsys_pack.image_util', '@rapsys_pack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] + tags: [ 'controller.service_arguments' ] + #Register map controller + Rapsys\PackBundle\Controller\MapController: + arguments: [ '@service_container', '@rapsys_pack.map_util', '@rapsys_pack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%' ] + tags: [ 'controller.service_arguments' ] + Rapsys\PackBundle\Form\CaptchaType: + arguments: [ '@rapsys_pack.image_util', '@rapsys_pack.slugger_util', '@translator' ] + tags: [ 'form.type' ] +``` + +Setup configuration file `config/packages/myproject.yaml` with the following +content available in `Resources/config/packages/rapsys_pack.yaml`: + +```yaml +#Services configuration +services: + #Register facebook event subscriber + Rapsys\PackBundle\Subscriber\FacebookSubscriber: + arguments: [ '@router', [ 'en', 'en_gb', 'en_us', 'fr', 'fr_fr' ] ] + tags: [ 'kernel.event_subscriber' ] + #Register facebook util service + rapsys_blog.facebook_util: + class: 'Rapsys\PackBundle\Util\FacebookUtil' + arguments: [ '@router', '%kernel.project_dir%/var/cache', '%rapsys_pack.path%', 'facebook', '%kernel.project_dir%/public/png/facebook.png' ] + public: true ``` Open a command console, enter your project directory and execute the following command to see default bundle configuration: ```console -$ php bin/console config:dump-reference RapsysPackBundle +$ bin/console config:dump-reference RapsysPackBundle ``` Open a command console, enter your project directory and execute the following command to see current bundle configuration: ```console -$ php bin/console debug:config RapsysPackBundle +$ bin/console debug:config RapsysPackBundle ``` ### Step 4: Use the twig extension in your Template @@ -258,7 +275,7 @@ use Twig\Error\Error; //This class will be defined in the parameter rapsys_pack.filters.(css|img|js).[x].class string class MyPackFilter implements FilterInterface { - //The constructor arguments ... will be replaced defined in the parameter rapsys_pack.filters.(css|img|js).[x].args array + //The constructor arguments ... will be replaced with values defined in the parameter rapsys_pack.filters.(css|img|js).[x].args array public function __construct(string $fileName, int $line, string $bin = 'mypack', ...) { //Set fileName $this->fileName = $fileName;