Installation
tilttek/generator-bundlePrérequis
- PHP 8.5 ou plus récent et Symfony 8.2.
tilttek/generatorettilttek/dice, que Composer installe avec le bundle.- Pour les intégrations, chacune facultative :
symfony/framework-bundlepour l'API de tirage et ses routes,symfony/rate-limiterpour ses limites de débit,symfony/consolepour les commandes,symfony/twig-bundlepour la fonction Twig et le gabarit,symfony/asset-mapperet Stimulus pour le contrôleur qui refait le tirage.
Installer
composer require tilttek/generator-bundle
// config/bundles.php
return [
// …
Tilttek\GeneratorBundle\TilttekGeneratorBundle::class => ['all' => true],
];
Les fichiers
Le bundle lit les fichiers YAML (.yaml, .yml) et JSON (.json) de config/generators/ du projet quand ce
répertoire existe et qu'aucun chemin n'est configuré, ou sinon les fichiers et les répertoires de
tilttek_generator.paths. Les documents sont ceux de tilttek/generator. tilttek:generator:create y écrit un
nouveau générateur.
Les routes
L'API de tirage est une route que l'application importe sous un préfixe :
# config/routes/tilttek_generator.yaml
tilttek_generator:
resource: '@TilttekGeneratorBundle/config/routes.php'
prefix: /api/generators
Elle répond 404 tant que tilttek_generator.api.enabled n'est pas vrai ; voir API de tirage. Le contrôleur
Stimulus qui refait le tirage dans une page appelle la même route, pour les générateurs que l'API ouvre à tout le monde.
Le contrôleur Stimulus
Avec AssetMapper, le bundle ajoute son répertoire assets/src sous l'espace de noms @tilttek/generator-bundle ;
activez le contrôleur dans assets/controllers.json :
{
"controllers": {
"@tilttek/generator-bundle": {
"generator": { "enabled": true, "fetch": "eager" }
}
}
}