{
    "name": "flux-plugins/flux-ai-media-alt-creator",
    "description": "AI-powered alt text generation for WordPress media files using OpenAI.",
    "type": "wordpress-plugin",
    "license": "GPL-2.0-or-later",
    "authors": [
        {
            "name": "Flux Plugins",
            "email": "eddie@fluxplugins.com",
            "homepage": "https://fluxplugins.com"
        }
    ],
    "repositories": [
        {
            "type": "vcs",
            "url": "git@github.com:stratease/flux-plugins-common.git"
        }
    ],
    "require": {
        "php": ">=8.0",
        "stratease/flux-plugins-common": "@dev",
        "woocommerce/action-scheduler": "^3.7"
    },
    "require-dev": {
        "automattic/wordbless": "^0.4",
        "brianhenryie/strauss": "^0.22.5",
        "dealerdirect/phpcodesniffer-composer-installer": "^1.0",
        "php-stubs/wordpress-stubs": "^6.7",
        "phpstan/phpstan": "^1.10",
        "phpunit/phpunit": "^9.6",
        "squizlabs/php_codesniffer": "^3.7",
        "wp-coding-standards/wpcs": "^2.3"
    },
    "autoload": {
        "psr-4": {
            "FluxAIMediaAltCreator\\App\\": "app/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "FluxAIMediaAltCreator\\Tests\\": "tests/unit/"
        }
    },
    "scripts": {
        "test": "phpunit",
        "phpstan": "phpstan analyse",
        "phpcs": "phpcs",
        "phpcbf": "phpcbf",
        "quality": [
            "@phpcs",
            "@phpstan",
            "@test"
        ],
        "copy-common-assets": [
            "sh -c 'SRC=vendor/stratease/flux-plugins-common/src/assets; DST=src/assets/common; if [ -d \"$SRC\" ]; then mkdir -p \"$DST/js\" \"$DST/images\"; cp -r \"$SRC/images\" \"$DST/\" 2>/dev/null || true; cp -r \"$SRC/js/dist\" \"$DST/js/\"; echo \"✅ Copied common runtime assets (js/dist + images) to src/assets/common/\"; else echo \"⚠️  Common library assets not found in vendor/ — run composer install\"; fi'"
        ],
        "prefix-namespaces": [
            "@copy-common-assets",
            "sh -c 'test -f ./bin/strauss.phar || curl -o bin/strauss.phar -L -C - https://github.com/BrianHenryIE/strauss/releases/latest/download/strauss.phar'",
            "@php bin/strauss.phar",
            "@composer dump-autoload",
            "@fix-bin-wrappers"
        ],
        "fix-bin-wrappers": [
            "sh -c 'if [ -f vendor-prefixed/stratease/flux-plugins-common/bin/fix-bin-wrappers.php ]; then php vendor-prefixed/stratease/flux-plugins-common/bin/fix-bin-wrappers.php; elif [ -f vendor/stratease/flux-plugins-common/bin/fix-bin-wrappers.php ]; then php vendor/stratease/flux-plugins-common/bin/fix-bin-wrappers.php; fi'"
        ],
        "post-install-cmd": [
            "@prefix-namespaces"
        ],
        "post-update-cmd": [
            "@prefix-namespaces"
        ],
        "post-autoload-dump": [
            "@php bin/strauss.phar include-autoloader",
            "@fix-bin-wrappers"
        ]
    },
    "config": {
        "allow-plugins": {
            "dealerdirect/phpcodesniffer-composer-installer": true,
            "roots/wordpress-core-installer": true
        },
        "optimize-autoloader": true,
        "sort-packages": true,
        "platform-check": false
    },
    "extra": {
        "wordpress-install-dir": "tests/wordpress",
        "strauss": {
            "target_directory": "vendor-prefixed",
            "namespace_prefix": "FluxAIMediaAltCreator\\",
            "classmap_prefix": "FluxAIMediaAltCreator_",
            "constant_prefix": "FluxAIMediaAltCreator_",
            "packages": [
                "stratease/flux-plugins-common"
            ],
            "update_call_sites": false,
            "override_autoload": {
            },
            "exclude_from_copy": {
                "packages": [
                    "woocommerce/action-scheduler"
                ],
                "namespaces": [
                ],
                "file_patterns": [
                ]
            },
            "exclude_from_prefix": {
                "packages": [
                    "woocommerce/action-scheduler"
                ],
                "namespaces": [
                ],
                "file_patterns": [
                ]
            },
            "namespace_replacement_patterns": {
            },
            "delete_vendor_packages": true,
            "delete_vendor_files": true
        }
    }
}
