From 5405fa6745fb2125baefc09313ca19df026159f2 Mon Sep 17 00:00:00 2001 From: "github-action[bot]" <> Date: Fri, 4 Sep 2026 10:25:21 +0000 Subject: [PATCH] Create Flex endpoint --- codein.recaptcha-enterprise-bundle.1.0.json | 63 +++++++++++++++++++++ index.json | 20 +++++++ 2 files changed, 83 insertions(+) create mode 100644 codein.recaptcha-enterprise-bundle.1.0.json create mode 100644 index.json diff --git a/codein.recaptcha-enterprise-bundle.1.0.json b/codein.recaptcha-enterprise-bundle.1.0.json new file mode 100644 index 00000000..449092d8 --- /dev/null +++ b/codein.recaptcha-enterprise-bundle.1.0.json @@ -0,0 +1,63 @@ +{ + "manifests": { + "codein/recaptcha-enterprise-bundle": { + "manifest": { + "bundles": { + "Codein\\RecaptchaEnterpriseBundle\\CodeinRecaptchaEnterpriseBundle": [ + "all" + ] + }, + "copy-from-recipe": { + "config/": "%CONFIG_DIR%/" + }, + "env": { + "#1": "Create the key and read the project id in the reCAPTCHA Enterprise console:", + "#2": "https://console.cloud.google.com/security/recaptcha", + "#3": "The score and checkbox challenges each need their own kind of site key.", + "CODEIN_RECAPTCHA_ENTERPRISE_PROJECT_ID": "", + "CODEIN_RECAPTCHA_ENTERPRISE_SITE_KEY": "", + "CODEIN_RECAPTCHA_ENTERPRISE_API_KEY": "" + }, + "post-install-output": [ + " * Set the CODEIN_RECAPTCHA_ENTERPRISE_* variables in .env.local", + "", + " * Add two script tags to your layout \u2014 the bundle adds neither. Without them every", + " submission is refused as MISSING:", + " {{ asset('bundles/codeinrecaptchaenterprise/recaptcha-enterprise.js') }}, and Google's", + " enterprise.js, the latter only after the visitor has consented:", + " https://github.com/Codein-Labs/recaptcha-enterprise-bundle#adding-the-scripts-to-your-layout", + "", + " * Read Choosing the challenge before creating the site key: the score and checkbox", + " challenges need different key types", + "", + " * Assessments are disabled in the test environment, where no browser can solve the challenge" + ] + }, + "files": { + "config/packages/codein_recaptcha_enterprise.yaml": { + "contents": [ + "codein_recaptcha_enterprise:", + " project_id: '%env(CODEIN_RECAPTCHA_ENTERPRISE_PROJECT_ID)%'", + " site_key: '%env(CODEIN_RECAPTCHA_ENTERPRISE_SITE_KEY)%'", + " api_key: '%env(CODEIN_RECAPTCHA_ENTERPRISE_API_KEY)%'", + " #challenge: checkbox # score (default) or checkbox, each needs its own kind of site key", + " #min_score: 0 # 0 disables the score check, which is what the checkbox challenge wants", + " #on_error: allow # deny (default) refuses the token when Google cannot be reached", + "", + "# A test run has no browser to solve the challenge, so every submission would be refused.", + "when@test:", + " codein_recaptcha_enterprise:", + " enabled: false", + "", + "#when@dev:", + "# codein_recaptcha_enterprise:", + "# enabled: false", + "" + ], + "executable": false + } + }, + "ref": "3e258fc4d39c26c29f42366af814e902418daf71" + } + } +} diff --git a/index.json b/index.json new file mode 100644 index 00000000..41b5e6db --- /dev/null +++ b/index.json @@ -0,0 +1,20 @@ +{ + "aliases": [], + "recipes": { + "codein/recaptcha-enterprise-bundle": [ + "1.0" + ] + }, + "recipe-conflicts": [], + "versions": [], + "branch": "main", + "is_contrib": true, + "_links": { + "repository": "github.com/symfony/recipes-contrib", + "origin_template": "{package}:{version}@github.com/symfony/recipes-contrib:main", + "recipe_template": "https://raw.githubusercontent.com/symfony/recipes-contrib/flex/pull-2045/{package_dotted}.{version}.json", + "recipe_template_relative": "{package_dotted}.{version}.json", + "archived_recipes_template": "https://raw.githubusercontent.com/symfony/recipes-contrib/flex/pull-2045/archived/{package_dotted}/{ref}.json", + "archived_recipes_template_relative": "archived/{package_dotted}/{ref}.json" + } +}