├── .editorconfig ├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .php-cs-fixer.php ├── CHANGELOG.md ├── CONTRIBUTING.md ├── Command └── GifOptimizerCommand.php ├── DependencyInjection └── GifExceptionExtension.php ├── EventListener └── ReplaceImageListener.php ├── GifExceptionBundle.php ├── LICENSE ├── Makefile ├── README.md ├── Resources ├── config │ └── services.php ├── doc │ └── images │ │ └── demo.gif └── public │ └── images │ ├── 403 │ ├── cat-lizzard.gif │ ├── cat-puppy.gif │ ├── dog-cat-stairs.gif │ ├── gandalf.gif │ ├── goat-motorbike.gif │ ├── men-in-black-flash.gif │ ├── netbook-horse.gif │ └── raccoon-denied.gif │ ├── 404 │ ├── confused-travolta.gif │ ├── looping-bird.gif │ ├── missing-stapler.gif │ ├── not-the-droids.gif │ ├── nothing-to-see-here.gif │ └── raccoon-lost-candy.gif │ ├── 503 │ ├── raccoon-screaming.gif │ ├── swivel-chair.gif │ └── talk-to-the-hand.gif │ └── other │ ├── athletic.gif │ ├── bottle.gif │ ├── captain-america.gif │ ├── car-accident.gif │ ├── carousel-fail-o.gif │ ├── castle.gif │ ├── dunk.gif │ ├── facepalm.gif │ ├── garbage.gif │ ├── hitme.gif │ ├── kangaroo.gif │ ├── karate.gif │ ├── life-sometimes.gif │ ├── metro.gif │ ├── nope.gif │ ├── panda.gif │ ├── pingou.gif │ ├── plane.gif │ ├── plouf.gif │ ├── pool.gif │ ├── truck-bridge.gif │ ├── try-fail-repeat.gif │ ├── tupper.gif │ └── you-blew-it.gif ├── VERSIONING.md ├── bin └── optimizer.php ├── composer.json ├── phpstan.neon ├── phpunit.xml.dist └── tests ├── Command ├── GifOptimizerCommandTest.php ├── gifs │ └── test.gif └── original.gif ├── FunctionalTest.php ├── KernelTestCase.php └── app ├── bin └── console ├── bootstrap.php ├── config ├── config.yml └── routing.yml ├── public └── index.php └── src ├── Kernel.php └── TestController.php /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/.gitignore -------------------------------------------------------------------------------- /.php-cs-fixer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/.php-cs-fixer.php -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Command/GifOptimizerCommand.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Command/GifOptimizerCommand.php -------------------------------------------------------------------------------- /DependencyInjection/GifExceptionExtension.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/DependencyInjection/GifExceptionExtension.php -------------------------------------------------------------------------------- /EventListener/ReplaceImageListener.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/EventListener/ReplaceImageListener.php -------------------------------------------------------------------------------- /GifExceptionBundle.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/GifExceptionBundle.php -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/README.md -------------------------------------------------------------------------------- /Resources/config/services.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/config/services.php -------------------------------------------------------------------------------- /Resources/doc/images/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/doc/images/demo.gif -------------------------------------------------------------------------------- /Resources/public/images/403/cat-lizzard.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/cat-lizzard.gif -------------------------------------------------------------------------------- /Resources/public/images/403/cat-puppy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/cat-puppy.gif -------------------------------------------------------------------------------- /Resources/public/images/403/dog-cat-stairs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/dog-cat-stairs.gif -------------------------------------------------------------------------------- /Resources/public/images/403/gandalf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/gandalf.gif -------------------------------------------------------------------------------- /Resources/public/images/403/goat-motorbike.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/goat-motorbike.gif -------------------------------------------------------------------------------- /Resources/public/images/403/men-in-black-flash.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/men-in-black-flash.gif -------------------------------------------------------------------------------- /Resources/public/images/403/netbook-horse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/netbook-horse.gif -------------------------------------------------------------------------------- /Resources/public/images/403/raccoon-denied.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/403/raccoon-denied.gif -------------------------------------------------------------------------------- /Resources/public/images/404/confused-travolta.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/404/confused-travolta.gif -------------------------------------------------------------------------------- /Resources/public/images/404/looping-bird.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/404/looping-bird.gif -------------------------------------------------------------------------------- /Resources/public/images/404/missing-stapler.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/404/missing-stapler.gif -------------------------------------------------------------------------------- /Resources/public/images/404/not-the-droids.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/404/not-the-droids.gif -------------------------------------------------------------------------------- /Resources/public/images/404/nothing-to-see-here.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/404/nothing-to-see-here.gif -------------------------------------------------------------------------------- /Resources/public/images/404/raccoon-lost-candy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/404/raccoon-lost-candy.gif -------------------------------------------------------------------------------- /Resources/public/images/503/raccoon-screaming.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/503/raccoon-screaming.gif -------------------------------------------------------------------------------- /Resources/public/images/503/swivel-chair.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/503/swivel-chair.gif -------------------------------------------------------------------------------- /Resources/public/images/503/talk-to-the-hand.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/503/talk-to-the-hand.gif -------------------------------------------------------------------------------- /Resources/public/images/other/athletic.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/athletic.gif -------------------------------------------------------------------------------- /Resources/public/images/other/bottle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/bottle.gif -------------------------------------------------------------------------------- /Resources/public/images/other/captain-america.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/captain-america.gif -------------------------------------------------------------------------------- /Resources/public/images/other/car-accident.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/car-accident.gif -------------------------------------------------------------------------------- /Resources/public/images/other/carousel-fail-o.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/carousel-fail-o.gif -------------------------------------------------------------------------------- /Resources/public/images/other/castle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/castle.gif -------------------------------------------------------------------------------- /Resources/public/images/other/dunk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/dunk.gif -------------------------------------------------------------------------------- /Resources/public/images/other/facepalm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/facepalm.gif -------------------------------------------------------------------------------- /Resources/public/images/other/garbage.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/garbage.gif -------------------------------------------------------------------------------- /Resources/public/images/other/hitme.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/hitme.gif -------------------------------------------------------------------------------- /Resources/public/images/other/kangaroo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/kangaroo.gif -------------------------------------------------------------------------------- /Resources/public/images/other/karate.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/karate.gif -------------------------------------------------------------------------------- /Resources/public/images/other/life-sometimes.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/life-sometimes.gif -------------------------------------------------------------------------------- /Resources/public/images/other/metro.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/metro.gif -------------------------------------------------------------------------------- /Resources/public/images/other/nope.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/nope.gif -------------------------------------------------------------------------------- /Resources/public/images/other/panda.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/panda.gif -------------------------------------------------------------------------------- /Resources/public/images/other/pingou.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/pingou.gif -------------------------------------------------------------------------------- /Resources/public/images/other/plane.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/plane.gif -------------------------------------------------------------------------------- /Resources/public/images/other/plouf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/plouf.gif -------------------------------------------------------------------------------- /Resources/public/images/other/pool.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/pool.gif -------------------------------------------------------------------------------- /Resources/public/images/other/truck-bridge.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/truck-bridge.gif -------------------------------------------------------------------------------- /Resources/public/images/other/try-fail-repeat.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/try-fail-repeat.gif -------------------------------------------------------------------------------- /Resources/public/images/other/tupper.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/tupper.gif -------------------------------------------------------------------------------- /Resources/public/images/other/you-blew-it.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/Resources/public/images/other/you-blew-it.gif -------------------------------------------------------------------------------- /VERSIONING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/VERSIONING.md -------------------------------------------------------------------------------- /bin/optimizer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/bin/optimizer.php -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/composer.json -------------------------------------------------------------------------------- /phpstan.neon: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/phpstan.neon -------------------------------------------------------------------------------- /phpunit.xml.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/phpunit.xml.dist -------------------------------------------------------------------------------- /tests/Command/GifOptimizerCommandTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/Command/GifOptimizerCommandTest.php -------------------------------------------------------------------------------- /tests/Command/gifs/test.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/Command/gifs/test.gif -------------------------------------------------------------------------------- /tests/Command/original.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/Command/original.gif -------------------------------------------------------------------------------- /tests/FunctionalTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/FunctionalTest.php -------------------------------------------------------------------------------- /tests/KernelTestCase.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/KernelTestCase.php -------------------------------------------------------------------------------- /tests/app/bin/console: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/app/bin/console -------------------------------------------------------------------------------- /tests/app/bootstrap.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/app/bootstrap.php -------------------------------------------------------------------------------- /tests/app/config/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/app/config/config.yml -------------------------------------------------------------------------------- /tests/app/config/routing.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/app/config/routing.yml -------------------------------------------------------------------------------- /tests/app/public/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/app/public/index.php -------------------------------------------------------------------------------- /tests/app/src/Kernel.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/app/src/Kernel.php -------------------------------------------------------------------------------- /tests/app/src/TestController.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jolicode/GifExceptionBundle/HEAD/tests/app/src/TestController.php --------------------------------------------------------------------------------