{
    "name": "dmind/cookieman",
    "description": "Cookieman - Provides a user consent popup. It asks for approval to include tracking objects (cookies, images or any HTML) and includes the objects when consented. It also removes cookies after the consent has been revoked.",
    "license": [
        "GPL-2.0-or-later"
    ],
    "type": "typo3-cms-extension",
    "authors": [
        {
            "name": "Jonas Eberle",
            "role": "Developer"
        }
    ],
    "support": {
        "issues": "https://github.com/dmind-gmbh/extension-cookieman/issues",
        "source": "https://github.com/dmind-gmbh/extension-cookieman"
    },
    "require": {
        "php": "^8.2",
        "typo3/cms-core": "14.*.x-dev || ^14.3"
    },
    "require-dev": {
        "codeception/codeception": "^5.2",
        "codeception/module-asserts": "^3.0",
        "codeception/module-webdriver": "^4.0",
        "dmind/cookieman-test": "@dev",
        "dmind/cookieman-test-bootstrap5-modal": "@dev",
        "ergebnis/composer-normalize": "^2.51",
        "friendsofphp/php-cs-fixer": "^3.95",
        "helhum/typo3-console": "^8.3",
        "helmich/typo3-typoscript-lint": "^3.3",
        "phpunit/phpunit": "^11.5",
        "ssch/typo3-rector": "^3.14",
        "typo3/cms-fluid-styled-content": "14.*.x-dev || ^14.3",
        "typo3/cms-frontend": "14.*.x-dev || ^14.3",
        "typo3/cms-install": "14.*.x-dev || ^14.3",
        "typo3/cms-tstemplate": "14.*.x-dev || ^14.3",
        "typo3/coding-standards": "^0.8.0",
        "typo3/tailor": "^1.7",
        "typo3/testing-framework": "^9.5"
    },
    "replace": {
        "typo3-ter/cookieman": "self.version"
    },
    "repositories": [
        {
            "type": "path",
            "url": "Build/*"
        }
    ],
    "minimum-stability": "dev",
    "prefer-stable": true,
    "autoload": {
        "psr-4": {
            "Dmind\\Cookieman\\": "Classes/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Dmind\\Cookieman\\Tests\\": "Tests/"
        }
    },
    "config": {
        "allow-plugins": {
            "ergebnis/composer-normalize": true,
            "typo3/class-alias-loader": true,
            "typo3/cms-composer-installers": true
        },
        "bin-dir": ".build/bin",
        "sort-packages": true,
        "vendor-dir": ".build/vendor"
    },
    "extra": {
        "typo3/cms": {
            "Package": {
                "providesPackages": {}
            },
            "extension-key": "cookieman",
            "web-dir": ".build/public"
        }
    },
    "scripts": {
        "build": [
            "@build:nodejs-install",
            "@build:prod"
        ],
        "build:nodejs-install": [
            "yarn install --save-dev --cwd=Build/"
        ],
        "build:prod": [
            "yarn --cwd=Build/ run build"
        ],
        "cookieman:bootstrap3-banner": [
            "composer rem --dev 'dmind/cookieman-test-*'",
            "composer req --dev dmind/cookieman-test-bootstrap3-banner:@dev",
            "@typo3:flush"
        ],
        "cookieman:bootstrap3-modal": [
            "composer rem --dev 'dmind/cookieman-test-*'",
            "composer req --dev dmind/cookieman-test-bootstrap3-modal:@dev",
            "@typo3:flush"
        ],
        "cookieman:bootstrap4-modal": [
            "composer rem --dev 'dmind/cookieman-test-*'",
            "composer req --dev dmind/cookieman-test-bootstrap4-modal:@dev",
            "@typo3:flush"
        ],
        "cookieman:bootstrap5-modal": [
            "composer rem --dev 'dmind/cookieman-test-*'",
            "composer req --dev dmind/cookieman-test-bootstrap5-modal:@dev",
            "@typo3:flush"
        ],
        "cookieman:customtheme": [
            "composer rem --dev 'dmind/cookieman-test-*'",
            "composer req --dev dmind/cookieman-test-customtheme:@dev",
            "@typo3:flush"
        ],
        "fix:cgl": [
            "php-cs-fixer --config=.php-cs-fixer.dist.php fix --using-cache=no"
        ],
        "fix:rector": "@rector process",
        "rector": "rector @additional_args --ansi",
        "test": [
            "@test:cgl",
            "@test:composer:normalize",
            "@test:js:lint",
            "@test:ts",
            "@test:rector",
            "@test:acceptance"
        ],
        "test:acceptance": [
            "@test:acceptance:chrome"
        ],
        "test:acceptance:chrome": [
            "codecept run --env chrome -d -c Build/local.codeception.yml -- acceptance"
        ],
        "test:acceptance:firefox": [
            "codecept run --env firefox -d -c Build/local.codeception.yml -- acceptance"
        ],
        "test:cgl": [
            "php-cs-fixer fix -v --diff --using-cache=no --dry-run"
        ],
        "test:composer:normalize": "@composer normalize --dry-run",
        "test:js:lint": [
            "yarn --cwd=Build/ run lint"
        ],
        "test:rector": "@rector process --dry-run",
        "test:ts": "(s=/tmp/.$$_$RANDOM; { typoscript-lint --ansi --fail-on-warnings; echo $?>$s; } | sed -E 's#/var/www/html/(.*)\\.$#\\1#g'; exit $(cat $s;rm $s))",
        "test:unit": [
            "@putenv XDEBUG_MODE=coverage",
            "phpunit -c Build/UnitTests.phpunit.xml"
        ],
        "tests-for:ci": [
            "@test:cgl",
            "@test:composer:normalize",
            "@test:ts",
            "@test:rector",
            "@test:unit"
        ],
        "typo3": [
            "typo3 --ansi"
        ],
        "typo3:flush": [
            "@typo3 cache:flush"
        ]
    }
}
