{
    "name": "ignite/core",
    "description": "The Core module for the Ignite incentive platform.",
    "type": "ignite-module",
    "minimum-stability": "dev",
    "prefer-stable": true,
    "authors": [
        {
            "name": "Brightspot Dev",
            "email": "it@brightspot.email"
        }
    ],
    "require": {
        "php": ">=8.3",
        "ext-ctype": "*",
        "ext-intl": "*",
        "ext-json": "*",
        "ext-pdo": "*",
        "ignite/flash": "^2.0",
        "ignite/line-parser": "^1.0",
        "ignite/presenter": "^2.0",
        "ignite/theme": "^2.0",
        "ignite/theme-default": "^4.0",
        "doctrine/dbal": "^4.0",
        "erusev/parsedown": "^1.7",
        "ezyang/htmlpurifier": "^4.12",
        "google/apiclient": "^2.0",
        "google/recaptcha": "^1.2",
        "jenssegers/agent": "^2.6",
        "kris/laravel-form-builder": "^1.53",
        "laravel/helpers": "^1.2",
        "laravel/socialite": "^5.6",
        "laravel/ui": "^4.0",
        "league/csv": "^9.27.0",
        "league/flysystem-aws-s3-v3": "^3.0.0",
        "maatwebsite/excel": "^3.1",
        "nwidart/laravel-modules": "^12.0.0",
        "owen-it/laravel-auditing": "14.*",
        "rap2hpoutre/fast-excel": "^5.1.1",
        "socialiteproviders/salesforce": "^4.0",
        "spatie/laravel-blade-javascript": "^2.2",
        "spatie/laravel-html": "*",
        "spatie/laravel-menu": "^4.1",
        "yajra/laravel-datatables-buttons": "^11.0|^12.0",
        "yajra/laravel-datatables-html": "^11.0|^12.0",
        "yajra/laravel-datatables-oracle": "^11.|^12.0"
    },
    "require-dev": {
        "barryvdh/laravel-debugbar": "*",
        "barryvdh/laravel-ide-helper": "*",
        "fakerphp/faker": "*",
        "friendsofphp/php-cs-fixer": "*",
        "mockery/mockery": "*",
        "orchestra/testbench": "*",
        "overtrue/phplint": "*",
        "phpmd/phpmd": "*",
        "phpstan/phpstan": "*",
        "phpunit/phpunit": ">=11",
        "psalm/phar": "*",
        "squizlabs/php_codesniffer": ">=3.7"
    },
    "autoload": {
        "psr-4": {
          "Ignite\\Core\\": "src/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Ignite\\Core\\Tests\\": "tests/"
        }
    },
    "config": {
        "sort-packages": true,
        "allow-plugins": {
            "wikimedia/composer-merge-plugin": true
        }
    },
    "extra": {
        "laravel": {
            "providers": [
                "Ignite\\Core\\Providers\\CoreServiceProvider"
            ],
            "aliases": {
                "Format": "Ignite\\Core\\Facades\\Format",
                "Program": "Ignite\\Core\\Facades\\Program"
            }
        }
    },
    "scripts": {
        "php-security-checker": [
            "local-php-security-checker"
        ],
        "php-ide-helper": [
            "@php artisan ide-helper:generate",
            "@php artisan ide-helper:meta",
            "@php artisan ide-helper:model -W"
        ],
        "dos2unix": [
            "find . -type d \\( -path ./vendor -o -path ./storage -o -path ./.git -o -path */node_modules \\) -prune -o -type f -exec dos2unix {} \\;"
        ],
        "php-lint": [
            "@php ./vendor/bin/phplint"
        ],
        "php-code-beautify": [
            "@php ./vendor/bin/phpcbf -p"
        ],
        "php-cs-fixer": [
            "@php ./vendor/bin/php-cs-fixer fix ./"
        ],
        "php-code-sniffer": [
            "@php ./vendor/bin/phpcs --standard=phpcs.xml"
        ],
        "php-code-sniffer-ignore-linelength": [
            "@php ./vendor/bin/phpcs --standard=phpcs.xml --exclude=Generic.Files.LineLength"
        ],
        "php-stan": [
            "@php ./vendor/bin/phpstan analyse src"
        ],
        "php-psalm": [
            "@php ./vendor/bin/psalm.phar --show-info=true src"
        ],
        "php-psalm-alter": [
            "@php ./vendor/bin/psalm.phar --alter --issues=MismatchingDocblockParamType,MismatchingDocblockReturnType,MissingClosureReturnType,MissingParamType,MissingPropertyType,MissingReturnType,ParamNameMismatch,PossiblyUndefinedGlobalVariable,PossiblyUndefinedVariable,RedundantCast,RedundantCastGivenDocblockType,UnusedMethod,UnusedProperty,UnusedVariable"
        ],
        "quick-test": [
            "Composer\\Config::disableProcessTimeout",
            "@php -d pcov.enabled=0 ./vendor/bin/phpunit --no-coverage"
        ],
        "clean-code": [
            "@dos2unix",
            "@php-cs-fixer",
            "@php-code-beautify",
            "@php-ide-helper",
            "@php-psalm-alter"
        ]
    },
    "repositories": {
        "satis": {
            "type": "composer",
            "url": "https://satis.brightspot.work"
        }
    }
}
