{
    "name": "codeigniter4/shield",
    "description": "Authentication and Authorization for CodeIgniter 4",
    "license": "MIT",
    "type": "library",
    "keywords": [
        "codeigniter",
        "codeigniter4",
        "authentication",
        "authorization"
    ],
    "authors": [
        {
            "name": "Lonnie Ezell",
            "email": "lonnieje@gmail.com",
            "role": "Developer"
        }
    ],
    "homepage": "https://github.com/codeigniter4/shield",
    "support": {
        "issues": "https://github.com/codeigniter4/shield/issues",
        "forum": "https://github.com/codeigniter4/shield/discussions",
        "source": "https://github.com/codeigniter4/shield",
        "docs": "https://codeigniter4.github.io/shield/",
        "slack": "https://codeigniterchat.slack.com"
    },
    "require": {
        "php": "^7.4.3 || ^8.0",
        "codeigniter4/settings": "^2.1"
    },
    "require-dev": {
        "codeigniter/phpstan-codeigniter": "^1.3",
        "codeigniter4/devkit": "^1.0",
        "codeigniter4/framework": ">=4.3.5 <4.5.0 || ^4.5.1",
        "firebase/php-jwt": "^6.4",
        "mikey179/vfsstream": "^1.6.7",
        "mockery/mockery": "^1.0",
        "phpstan/extension-installer": "^1.3",
        "phpstan/phpstan-strict-rules": "^1.5",
        "rector/rector": "1.0.4"
    },
    "provide": {
        "codeigniter4/authentication-implementation": "1.0"
    },
    "suggest": {
        "ext-curl": "Required to use the password validation rule via PwnedValidator class.",
        "ext-openssl": "Required to use the JWT Authenticator."
    },
    "minimum-stability": "dev",
    "prefer-stable": true,
    "autoload": {
        "psr-4": {
            "CodeIgniter\\Shield\\": "src"
        },
        "exclude-from-classmap": [
            "**/Database/Migrations/**"
        ]
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests",
            "Tests\\Support\\": "tests/_support"
        }
    },
    "config": {
        "allow-plugins": {
            "phpstan/extension-installer": true
        },
        "sort-packages": true
    },
    "scripts": {
        "post-update-cmd": [
            "bash admin/setup.sh"
        ],
        "analyze": [
            "phpstan analyze",
            "psalm",
            "rector process --dry-run"
        ],
        "ci": [
            "Composer\\Config::disableProcessTimeout",
            "@cs",
            "@deduplicate",
            "@inspect",
            "@analyze",
            "@test"
        ],
        "cs": "php-cs-fixer fix --ansi --verbose --dry-run --diff",
        "cs-fix": "php-cs-fixer fix --ansi --verbose --diff",
        "deduplicate": "phpcpd app/ src/ --exclude src/Database/Migrations/2020-12-28-223112_create_auth_tables.php --exclude src/Authentication/Authenticators/HmacSha256.php",
        "inspect": "deptrac analyze --cache-file=build/deptrac.cache",
        "mutate": "infection --threads=2 --skip-initial-tests --coverage=build/phpunit",
        "sa": "@analyze",
        "style": "@cs-fix",
        "test": "phpunit"
    }
}
