{
    "name": "netresearch/rte-ckeditor-image",
    "type": "typo3-cms-extension",
    "description": "Image support in CKEditor for the TYPO3 ecosystem - by Netresearch",
    "homepage": "https://github.com/netresearch/t3x-rte_ckeditor_image",
    "license": "AGPL-3.0-or-later",
    "authors": [
        {
            "name": "Netresearch DTT GmbH",
            "homepage": "https://www.netresearch.de/"
        },
        {
            "name": "Sebastian Koschel",
            "email": "sebastian.koschel@netresearch.de",
            "role": "Developer",
            "homepage": "https://www.netresearch.de/"
        },
        {
            "name": "Sebastian Mendel",
            "email": "sebastian.mendel@netresearch.de",
            "role": "Developer",
            "homepage": "https://www.netresearch.de/"
        },
        {
            "name": "Rico Sonntag",
            "email": "rico.sonntag@netresearch.de",
            "role": "Developer",
            "homepage": "https://www.netresearch.de/"
        }
    ],
    "require": {
        "php": "^8.2",
        "ext-dom": "*",
        "ext-libxml": "*",
        "typo3/cms-core": "^13.4.21 || ^14.3",
        "typo3/cms-backend": "^13.4.21 || ^14.3",
        "typo3/cms-frontend": "^13.4.21 || ^14.3",
        "typo3/cms-extbase": "^13.4.21 || ^14.3",
        "typo3/cms-rte-ckeditor": "^13.4.21 || ^14.3"
    },
    "require-dev": {
        "bk2k/bootstrap-package": "^15.0 || ^16.0",
        "netresearch/typo3-ci-workflows": "^1.0"
    },
    "autoload": {
        "psr-4": {
            "Netresearch\\RteCKEditorImage\\": "Classes"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Netresearch\\RteCKEditorImage\\Tests\\": "Tests"
        }
    },
    "config": {
        "bin-dir": ".Build/bin",
        "vendor-dir": ".Build/vendor",
        "discard-changes": true,
        "sort-packages": true,
        "optimize-autoloader": true,
        "platform-check": false,
        "audit": {
            "abandoned": "report",
            "ignore": {
                "PKSA-y2cr-5h3j-g3ys": "CVE-2025-45769 in firebase/php-jwt <7.0 — upstream TYPO3 Core dependency, awaiting Core update"
            }
        },
        "allow-plugins": {
            "a9f/fractor-extension-installer": true,
            "captainhook/hook-installer": true,
            "infection/extension-installer": true,
            "phpstan/extension-installer": true,
            "typo3/class-alias-loader": true,
            "typo3/cms-composer-installers": true
        }
    },
    "extra": {
        "branch-alias": {
            "dev-main": "13.x-dev"
        },
        "typo3/cms": {
            "extension-key": "rte_ckeditor_image",
            "web-dir": ".Build/public"
        }
    },
    "scripts": {
        "ci:cgl": [
            "php-cs-fixer fix --config Build/.php-cs-fixer.dist.php --diff --verbose --cache-file .Build/.php-cs-fixer.cache"
        ],
        "ci:rector": [
            "rector process --config Build/rector.php"
        ],
        "ci:security": [
            "composer audit"
        ],
        "ci:test:php:cgl": [
            "@ci:cgl --dry-run"
        ],
        "ci:test:php:functional": [
            "phpunit -c Build/phpunit/FunctionalTests.xml"
        ],
        "ci:test:php:unit": [
            ".Build/bin/phpunit -c Build/phpunit/UnitTests.xml"
        ],
        "ci:test:php:lint": [
            "phplint --configuration Build/.phplint.yml"
        ],
        "ci:test:php:phpstan": [
            "phpstan analyze --configuration Build/phpstan.neon --memory-limit=-1"
        ],
        "ci:test:php:phpstan:baseline": [
            "phpstan analyze --configuration Build/phpstan.neon --memory-limit=-1 --generate-baseline Build/phpstan-baseline.neon --allow-empty-baseline"
        ],
        "ci:test:php:rector": [
            "@ci:rector --dry-run"
        ],
        "ci:coverage:functional": [
            "phpunit -c Build/phpunit/FunctionalTests.xml --coverage-clover=.Build/logs/clover.xml --coverage-html=.Build/coverage"
        ],
        "ci:coverage:unit": [
            ".Build/bin/phpunit -c Build/phpunit/UnitTests.xml --coverage-clover=.Build/logs/clover-unit.xml --coverage-html=.Build/coverage-unit"
        ],
        "ci:test": [
            "@ci:test:php:lint",
            "@ci:test:php:phpstan",
            "@ci:test:php:rector",
            "@ci:test:php:cgl",
            "@ci:test:php:unit",
            "@ci:test:js:unit",
            "@ci:test:php:functional"
        ],
        "ci:test:e2e": [
            "cd Tests/E2E && docker run --rm --network=ddev_default -v $(pwd):/app -w /app -e BASE_URL=https://v13.rte-ckeditor-image.ddev.site mcr.microsoft.com/playwright:v1.57.0-noble /bin/bash -c 'npm install && npx playwright test'"
        ],
        "ci:fuzz:image-parser": [
            ".Build/bin/php-fuzzer fuzz Tests/Fuzz/ImageAttributeParserTarget.php Tests/Fuzz/corpus/image-parser --max-runs 10000"
        ],
        "ci:fuzz:softref-parser": [
            ".Build/bin/php-fuzzer fuzz Tests/Fuzz/RteImageSoftReferenceParserTarget.php Tests/Fuzz/corpus/softref-parser --max-runs 10000"
        ],
        "ci:fuzz": [
            "@ci:fuzz:image-parser",
            "@ci:fuzz:softref-parser"
        ],
        "ci:mutation": [
            "@ci:test:php:unit",
            ".Build/bin/infection --configuration=infection.json5 --threads=4"
        ],
        "ci:mutation:quick": [
            ".Build/bin/infection --configuration=infection.json5 --threads=4 --only-covered --skip-initial-tests"
        ],
        "ci:test:js:unit": [
            "cd Tests/JavaScript && npm ci --silent && npm test"
        ]
    }
}
