{
    "name": "sulu/headless-bundle",
    "license": "MIT",
    "type": "sulu-bundle",
    "description": "Bundle that provides controllers and services for using Sulu as headless content management system",
    "require": {
        "php": "^7.3 || ^8.0",
        "sulu/sulu": "^2.4 || ^2.5@dev",
        "symfony/config": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/dependency-injection": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/framework-bundle": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/http-foundation": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/http-kernel": "^4.4 || ^5.4 || ^6.3 || ^7.0"
    },
    "require-dev": {
        "coduo/php-matcher": "^5.0 || ^6.0",
        "handcraftedinthealps/code-coverage-checker": "^0.2.1",
        "handcraftedinthealps/zendsearch": "^2.0",
        "jackalope/jackalope-doctrine-dbal": "^1.3.4 || ^2.0",
        "jangregor/phpstan-prophecy": "^1.0",
        "php-cs-fixer/shim": "^3.0",
        "phpspec/prophecy": "^1.8",
        "phpspec/prophecy-phpunit": "^2.0",
        "phpstan/phpstan": "^1.0",
        "phpstan/phpstan-doctrine": "^1.0",
        "phpstan/phpstan-phpunit": "^1.0",
        "phpstan/phpstan-symfony": "^1.0",
        "phpunit/phpunit": "^9.6 || ^10.0",
        "symfony/browser-kit": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/console": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/dotenv": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/error-handler": "^4.4 || ^5.4 || ^6.3 || ^7.0",
        "symfony/monolog-bundle": "^3.1",
        "thecodingmachine/phpstan-strict-rules": "^1.0"
    },
    "conflict": {
        "doctrine/orm": "< 2.6.3",
        "zendframework/zend-code": "< 3.3.1"
    },
    "autoload": {
        "psr-4": {
            "Sulu\\Bundle\\HeadlessBundle\\": ""
        }
    },
    "scripts": {
        "bootstrap-test-environment": [
            "Tests/Application/bin/adminconsole doctrine:database:drop --if-exists --force --env test",
            "Tests/Application/bin/adminconsole doctrine:database:create --env test",
            "Tests/Application/bin/adminconsole doctrine:schema:update --force --env test"
        ],
        "lint": [
            "@phpstan",
            "@php-cs",
            "@lint-twig",
            "@lint-yaml",
            "@lint-container",
            "@lint-composer",
            "@lint-doctrine"
        ],
        "test": [
            "@phpunit"
        ],
        "phpunit": "vendor/bin/phpunit",
        "phpstan": [
            "@php Tests/Application/bin/adminconsole cache:warmup --env dev",
            "@php vendor/bin/phpstan analyse"
        ],
        "php-cs": "vendor/bin/php-cs-fixer fix --verbose --diff --dry-run",
        "php-cs-fix": "vendor/bin/php-cs-fixer fix",
        "lint-composer": "@composer validate --strict",
        "lint-twig": "Tests/Application/bin/adminconsole lint:twig Tests/Application/templates",
        "lint-yaml": "Tests/Application/bin/adminconsole lint:yaml Resources/config Tests/Application/config",
        "lint-container": [
            "Tests/Application/bin/adminconsole lint:container --env dev",
            "Tests/Application/bin/websiteconsole lint:container --env dev",
            "Tests/Application/bin/adminconsole lint:container --env test",
            "Tests/Application/bin/websiteconsole lint:container --env test",
            "Tests/Application/bin/adminconsole lint:container --env stage",
            "Tests/Application/bin/websiteconsole lint:container --env stage",
            "Tests/Application/bin/adminconsole lint:container --env prod",
            "Tests/Application/bin/websiteconsole lint:container --env prod"
        ],
        "lint-doctrine": [
            "Tests/Application/bin/adminconsole doctrine:schema:validate --skip-sync",
            "Tests/Application/bin/adminconsole doctrine:ensure-production-settings --env prod"
        ]
    },
    "config": {
        "sort-packages": true,
        "allow-plugins": {
            "php-http/discovery": true
        }
    }
}
