mirror of
https://github.com/symfony/recipes.git
synced 2026-09-15 00:56:24 +03:00
Update Flex endpoint
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"manifests": {
|
||||
"doctrine/deprecations": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "phpunit.dist.xml",
|
||||
"content": " <method>Doctrine\\Deprecations\\Deprecation::trigger</method>\n <method>Doctrine\\Deprecations\\Deprecation::delegateTriggerToBackend</method>",
|
||||
"position": "after_target",
|
||||
"target": "<deprecationTrigger>",
|
||||
"warn_if_missing": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": [],
|
||||
"ref": "fdd756167454623e21f1d769c5b814b243782a67"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,123 @@
|
||||
{
|
||||
"manifests": {
|
||||
"phpunit/phpunit": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "phpunit.dist.xml",
|
||||
"content": " <method>Doctrine\\Deprecations\\Deprecation::trigger</method>\n <method>Doctrine\\Deprecations\\Deprecation::delegateTriggerToBackend</method>",
|
||||
"position": "after_target",
|
||||
"target": "<deprecationTrigger>",
|
||||
"requires": [
|
||||
"doctrine/deprecations"
|
||||
]
|
||||
}
|
||||
],
|
||||
"copy-from-recipe": {
|
||||
".env.test": ".env.test",
|
||||
"phpunit.dist.xml": "phpunit.dist.xml",
|
||||
"tests/": "tests/",
|
||||
"bin/": "%BIN_DIR%/"
|
||||
},
|
||||
"gitignore": [
|
||||
"/phpunit.xml",
|
||||
"/.phpunit.cache/"
|
||||
],
|
||||
"post-install-output": [
|
||||
" * <fg=blue>Write</> test cases in the <comment>tests/</> folder",
|
||||
" * Use MakerBundle's <comment>make:test</> command as a shortcut!",
|
||||
" * <fg=blue>Run</> the tests with <comment>php bin/phpunit</>"
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
".env.test": {
|
||||
"contents": [
|
||||
"# define your env variables for the test env here",
|
||||
"KERNEL_CLASS='App\\Kernel'",
|
||||
"APP_SECRET='$ecretf0rt3st'",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"bin/phpunit": {
|
||||
"contents": [
|
||||
"#!/usr/bin/env php",
|
||||
"<?php",
|
||||
"",
|
||||
"require dirname(__DIR__).'/vendor/phpunit/phpunit/phpunit';",
|
||||
""
|
||||
],
|
||||
"executable": true
|
||||
},
|
||||
"phpunit.dist.xml": {
|
||||
"contents": [
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>",
|
||||
"",
|
||||
"<!-- https://phpunit.readthedocs.io/en/latest/configuration.html -->",
|
||||
"<phpunit xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"",
|
||||
" xsi:noNamespaceSchemaLocation=\"vendor/phpunit/phpunit/phpunit.xsd\"",
|
||||
" colors=\"true\"",
|
||||
" failOnDeprecation=\"true\"",
|
||||
" failOnNotice=\"true\"",
|
||||
" failOnWarning=\"true\"",
|
||||
" bootstrap=\"tests/bootstrap.php\"",
|
||||
" cacheDirectory=\".phpunit.cache\"",
|
||||
">",
|
||||
" <php>",
|
||||
" <ini name=\"display_errors\" value=\"1\" />",
|
||||
" <ini name=\"error_reporting\" value=\"-1\" />",
|
||||
" <server name=\"APP_ENV\" value=\"test\" force=\"true\" />",
|
||||
" <server name=\"SHELL_VERBOSITY\" value=\"-1\" />",
|
||||
" </php>",
|
||||
"",
|
||||
" <testsuites>",
|
||||
" <testsuite name=\"Project Test Suite\">",
|
||||
" <directory>tests</directory>",
|
||||
" </testsuite>",
|
||||
" </testsuites>",
|
||||
"",
|
||||
" <source ignoreSuppressionOfDeprecations=\"true\"",
|
||||
" ignoreIndirectDeprecations=\"true\"",
|
||||
" restrictNotices=\"true\"",
|
||||
" restrictWarnings=\"true\"",
|
||||
" >",
|
||||
" <include>",
|
||||
" <directory>src</directory>",
|
||||
" </include>",
|
||||
"",
|
||||
" <deprecationTrigger>",
|
||||
" <function>trigger_deprecation</function>",
|
||||
" </deprecationTrigger>",
|
||||
" </source>",
|
||||
"",
|
||||
" <extensions>",
|
||||
" </extensions>",
|
||||
"</phpunit>",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"tests/bootstrap.php": {
|
||||
"contents": [
|
||||
"<?php",
|
||||
"",
|
||||
"use Symfony\\Component\\Dotenv\\Dotenv;",
|
||||
"",
|
||||
"require dirname(__DIR__).'/vendor/autoload.php';",
|
||||
"",
|
||||
"if (method_exists(Dotenv::class, 'bootEnv')) {",
|
||||
" (new Dotenv())->bootEnv(dirname(__DIR__).'/.env');",
|
||||
"}",
|
||||
"",
|
||||
"if ($_SERVER['APP_DEBUG']) {",
|
||||
" umask(0000);",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "ca0bc067abfb40a8de1b2561b96cbfc2b833c314"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/all-my-sms-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " allmysms: '%env(ALLMYSMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ALLMYSMS_DSN=allmysms://LOGIN:APIKEY@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "2e65929e692456391b605ff567dd74f8a6ce64e8"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/allmysms-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " allmysms: '%env(ALLMYSMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ALLMYSMS_DSN=allmysms://LOGIN:APIKEY@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "2e65929e692456391b605ff567dd74f8a6ce64e8"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/amazon-sns-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " sns: '%env(AMAZON_SNS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "AMAZON_SNS_DSN=sns://ACCESS_KEY:SECRET_KEY@default?region=REGION"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "c7b97b1deaaf9a99283aee58b13435d34de11d20"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,100 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/asset-mapper": {
|
||||
"manifest": {
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/",
|
||||
"config/": "%CONFIG_DIR%/",
|
||||
"importmap.php": "importmap.php"
|
||||
},
|
||||
"gitignore": [
|
||||
"/%PUBLIC_DIR%/assets/"
|
||||
],
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "templates/base.html.twig",
|
||||
"content": " {{ importmap() }}",
|
||||
"position": "after_target",
|
||||
"target": "{% block javascripts %}",
|
||||
"warn_if_missing": true
|
||||
},
|
||||
{
|
||||
"file": "templates/base.html.twig",
|
||||
"content": " <link rel=\"stylesheet\" href=\"{{ asset('styles/app.css') }}\">",
|
||||
"position": "after_target",
|
||||
"target": "{% block stylesheets %}",
|
||||
"warn_if_missing": true
|
||||
}
|
||||
],
|
||||
"conflict": {
|
||||
"symfony/framework-bundle": "<6.3",
|
||||
"symfony/twig-bundle": "<6.3",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
}
|
||||
},
|
||||
"files": {
|
||||
"assets/app.js": {
|
||||
"contents": [
|
||||
"/*",
|
||||
" * Welcome to your app's main JavaScript file!",
|
||||
" *",
|
||||
" * This file will be included onto the page via the importmap() Twig function,",
|
||||
" * which should already be in your base.html.twig.",
|
||||
" */",
|
||||
"console.log('This log comes from assets/app.js - welcome to AssetMapper! \ud83c\udf89')",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/styles/app.css": {
|
||||
"contents": [
|
||||
"body {",
|
||||
" background-color: skyblue;",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"config/packages/asset_mapper.yaml": {
|
||||
"contents": [
|
||||
"framework:",
|
||||
" asset_mapper:",
|
||||
" # The paths to make available to the asset mapper.",
|
||||
" paths:",
|
||||
" - assets/",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"importmap.php": {
|
||||
"contents": [
|
||||
"<?php",
|
||||
"",
|
||||
"/**",
|
||||
" * Returns the import map for this application.",
|
||||
" *",
|
||||
" * - \"path\" is a path inside the asset mapper system. Use the",
|
||||
" * \"debug:asset-map\" command to see the full list of paths.",
|
||||
" *",
|
||||
" * - \"preload\" set to true for any modules that are loaded on the initial",
|
||||
" * page load to help the browser download them earlier.",
|
||||
" *",
|
||||
" * The \"importmap:require\" command can be used to add new entries to this file.",
|
||||
" *",
|
||||
" * This file has been auto-generated by the importmap commands.",
|
||||
" */",
|
||||
"return [",
|
||||
" 'app' => [",
|
||||
" 'path' => 'app.js',",
|
||||
" 'preload' => true,",
|
||||
" ],",
|
||||
"];",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "797942563df383cfcce006db70c37e8449b9ffc6"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/asset-mapper": {
|
||||
"manifest": {
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/",
|
||||
"config/": "%CONFIG_DIR%/",
|
||||
"importmap.php": "importmap.php"
|
||||
},
|
||||
"gitignore": [
|
||||
"/%PUBLIC_DIR%/assets/",
|
||||
"/assets/vendor/"
|
||||
],
|
||||
"composer-scripts": {
|
||||
"importmap:install": "symfony-cmd"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "templates/base.html.twig",
|
||||
"content": " {% block importmap %}{{ importmap('app') }}{% endblock %}",
|
||||
"position": "after_target",
|
||||
"target": "{% block javascripts %}",
|
||||
"warn_if_missing": true
|
||||
}
|
||||
],
|
||||
"conflict": {
|
||||
"symfony/framework-bundle": "<6.3",
|
||||
"symfony/twig-bundle": "<6.3",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
}
|
||||
},
|
||||
"files": {
|
||||
"assets/app.js": {
|
||||
"contents": [
|
||||
"/*",
|
||||
" * Welcome to your app's main JavaScript file!",
|
||||
" *",
|
||||
" * This file will be included onto the page via the importmap() Twig function,",
|
||||
" * which should already be in your base.html.twig.",
|
||||
" */",
|
||||
"import './styles/app.css';",
|
||||
"",
|
||||
"console.log('This log comes from assets/app.js - welcome to AssetMapper! \ud83c\udf89');",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/styles/app.css": {
|
||||
"contents": [
|
||||
"body {",
|
||||
" background-color: skyblue;",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"config/packages/asset_mapper.yaml": {
|
||||
"contents": [
|
||||
"framework:",
|
||||
" asset_mapper:",
|
||||
" # The paths to make available to the asset mapper.",
|
||||
" paths:",
|
||||
" - assets/",
|
||||
" missing_import_mode: strict",
|
||||
"",
|
||||
"when@prod:",
|
||||
" framework:",
|
||||
" asset_mapper:",
|
||||
" missing_import_mode: warn",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"importmap.php": {
|
||||
"contents": [
|
||||
"<?php",
|
||||
"",
|
||||
"/**",
|
||||
" * Returns the importmap for this application.",
|
||||
" *",
|
||||
" * - \"path\" is a path inside the asset mapper system. Use the",
|
||||
" * \"debug:asset-map\" command to see the full list of paths.",
|
||||
" *",
|
||||
" * - \"entrypoint\" (JavaScript only) set to true for any module that will",
|
||||
" * be used as an \"entrypoint\" (and passed to the importmap() Twig function).",
|
||||
" *",
|
||||
" * The \"importmap:require\" command can be used to add new entries to this file.",
|
||||
" */",
|
||||
"return [",
|
||||
" 'app' => [",
|
||||
" 'path' => './assets/app.js',",
|
||||
" 'entrypoint' => true,",
|
||||
" ],",
|
||||
"];",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "c01c47af2ec66a74ec046eccb919cfe27d3464ec"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/bandwidth-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " bandwidth: '%env(BANDWIDTH_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "BANDWIDTH_DSN=bandwidth://USERNAME:PASSWORD@default?from=FROM&account_id=ACCOUNT_ID&application_id=APPLICATION_ID&priority=PRIORITY"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "cfee0dc0308d43007a43ab44d7db306277b90129"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/chatwork-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " chatwork: '%env(CHATWORK_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "CHATWORK_DSN=chatwork://API_TOKEN@default?room_id=ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "5efeaaa5e459427342b3397ce8c935b17a9b14ee"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/click-send-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " clicksend: '%env(CLICKSEND_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "CLICKSEND_DSN=clicksend://API_USERNAME:API_KEY@default?from=FROM&source=SOURCE&list_id=LIST_ID&from_email=FROM_EMAIL"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a65c61b4f455ea01a8e10745a1bd82a6559e6da0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/clickatell-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " clickatell: '%env(CLICKATELL_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "CLICKATELL_DSN=clickatell://ACCESS_TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "0563b145ac4a2b6e9b73429fe417914a06e77a20"
|
||||
}
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/crowdin-translation-provider": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/translation.yaml",
|
||||
"position": "after_target",
|
||||
"target": " providers:",
|
||||
"content": " crowdin:\n dsn: '%env(CROWDIN_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "CROWDIN_DSN=crowdin://PROJECT_ID:API_TOKEN@ORGANIZATION_DOMAIN.default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "fe29f7cb04adb566f51f58c6e05447ed56ae51ac"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/discord-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " discord: '%env(DISCORD_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "DISCORD_DSN=discord://TOKEN@default?webhook_id=ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "4382408da6e53630230b4d41256b93a6f3b8c33e"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/engagespot-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " engagespot: '%env(ENGAGESPOT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ENGAGESPOT_DSN=engagespot://API_KEY@default?campaign_name=CAMPAIGN_NAME"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "1b30591c54b63f1825ef52058f6d5dc6a95c71b1"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/esendex-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " esendex: '%env(ESENDEX_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ESENDEX_DSN=esendex://EMAIL:PASSWORD@default?accountreference=ACCOUNT_REFERENCE&from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "ccf4804bf9cb7b7a1b0ea4823e0084e3974248b6"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/expo-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " expo: '%env(EXPO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "EXPO_DSN=expo://TOKEN@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "5648ba1ac04dff2dee601da75703b5b6034a791e"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/fake-chat-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " fakechat+email: '%env(FAKE_CHAT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "FAKE_CHAT_DSN=fakechat+email://default?to=TO&from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "25bdcc3ae00d284b863f1faecf14610aecebfeb5"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/fake-sms-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " fakesms+email: '%env(FAKE_SMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "FAKE_SMS_DSN=fakesms+email://default?to=TO&from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "8d38ccf27c937259e93a07b889d21a35d2f1cae0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/firebase-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " firebase: '%env(FIREBASE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "FIREBASE_DSN=firebase://TOKEN@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "babc442d44a0e17460999d9fc6ca711dae02f3f3"
|
||||
}
|
||||
}
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/forty-six-elks-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " forty-six-elks: '%env(FORTY_SIX_ELKS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "FORTY_SIX_ELKS_DSN=forty-six-elks://API_USERNAME:API_PASSWORD@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "2a6965058231d3efaec0694ece5251b2eb4b8469"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/free-mobile-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " freemobile: '%env(FREE_MOBILE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "FREE_MOBILE_DSN=freemobile://LOGIN:API_KEY@default?phone=PHONE"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "3bd91e5e874bd0b6174fa1459b7f2fd1a099114f"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/gateway-api-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " gatewayapi: '%env(GATEWAYAPI_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "GATEWAYAPI_DSN=gatewayapi://TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "1054275570cd268e9ad659874350d4123345afeb"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/gatewayapi-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " gatewayapi: '%env(GATEWAYAPI_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "GATEWAYAPI_DSN=gatewayapi://TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "1054275570cd268e9ad659874350d4123345afeb"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/gitter-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " gitter: '%env(GITTER_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "GITTER_DSN=gitter://TOKEN@default?room_id=ROOM_ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "25a8d3c1fb76cb5dba5bb2de009e85442d0b4128"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/go-ip-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " goip: '%env(GOIP_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "GOIP_DSN=goip://USERNAME:PASSWORD@HOST:80?sim_slot=SIM_SLOT"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a5313468daad34933e6ee4b68759b0685cde8e81"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/google-chat-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " googlechat: '%env(GOOGLE_CHAT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "See https://developers.google.com/hangouts/chat/how-tos/webhooks",
|
||||
"#2": "GOOGLE_CHAT_DSN=googlechat://ACCESS_KEY:ACCESS_TOKEN@default/SPACE?threadKey=THREAD_KEY"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "1374f1d878303334b1c1b1849264019b58735fed"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/google-chat-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " googlechat: '%env(GOOGLE_CHAT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "See https://developers.google.com/hangouts/chat/how-tos/webhooks",
|
||||
"#2": "GOOGLE_CHAT_DSN=googlechat://ACCESS_KEY:ACCESS_TOKEN@default/SPACE?thread_key=THREAD_KEY"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "caf336ccc9e1712c63b5e5bf2521ebf625a1e1f4"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/infobip-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " infobip: '%env(INFOBIP_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "INFOBIP_DSN=infobip://ACCESS_TOKEN@HOST?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "ef7c027b80efcfd92502c497c2b4fab854a36de8"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/iqsms-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " iqsms: '%env(IQSMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "IQSMS_DSN=iqsms://LOGIN:PASSWORD@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "d6cfa962cd75c2234320abf6781acab0ecb917f2"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/isendpro-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " isendpro: '%env(ISENDPRO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ISENDPRO_DSN=isendpro://ACCOUNT_KEY_ID@default?from=FROM&no_stop=NO_STOP&sandbox=SANDBOX"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "ea63680781673fe9ae6b9b89b0037ce33beab7da"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/joli-notif-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " jolinotif: '%env(JOLINOTIF_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "JOLINOTIF_DSN=jolinotif://default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "d5ce8ace18ed3a9eaa821251424764b990168b02"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/kaz-info-teh-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " kaz-info-teh: '%env(KAZ_INFO_TEH_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "KAZ_INFO_TEH_DSN=kaz-info-teh://USERNAME:PASSWORD@default?sender=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "df059c219d415cb8c7370469c4d187a6f9e94e4c"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/light-sms-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " lightsms: '%env(LIGHTSMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "LIGHTSMS_DSN=lightsms://LOGIN:TOKEN@default?from=PHONE"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "3c3bcc63922c86149e0ae85a4b63f098bb1fb7f1"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/line-bot-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " linebot: '%env(LINE_BOT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "LINE_BOT_DSN=linebot://TOKEN@default?receiver=RECEIVER"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a4edf9c6c4a0d53351b995dcf08c17bdde645364"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/line-notify-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " linenotify: '%env(LINE_NOTIFY_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "LINE_NOTIFY_DSN=linenotify://TOKEN@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "52d01b15fa42445cf8020b2b35bbde3b461f6036"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/linked-in-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " linkedin: '%env(LINKEDIN_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "LINKEDIN_DSN=linkedin://token:user-id@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "efdd3d052048fc9957720b20d12ed7fd035b4ac1"
|
||||
}
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/loco-translation-provider": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/translation.yaml",
|
||||
"position": "after_target",
|
||||
"target": " providers:",
|
||||
"content": " loco:\n dsn: '%env(LOCO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "LOCO_DSN=loco://API_KEY@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "653e6aa65233d00e0b17268247a4c135b38b6c5c"
|
||||
}
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/lokalise-translation-provider": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/translation.yaml",
|
||||
"position": "after_target",
|
||||
"target": " providers:",
|
||||
"content": " lokalise:\n dsn: '%env(LOKALISE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "LOKALISE_DSN=lokalise://PROJECT_ID:API_KEY@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "68fae4ec1fc7c551d54f611f8645de38901b2237"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/lox24-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " lox24: '%env(LOX24_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "LOX24_DSN=lox24://USER:TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "b4d11b606dc4d1468740ea34cc210138f87c7c2e"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/mail-pace-mailer": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"target": " texter_transports:",
|
||||
"content": " mailpace+api: '%env(MAILER_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MAILER_DSN=mailpace+api://API_TOKEN@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "ca7c36313950ab50f24588a451e2972552d29fe5"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/mailjet-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " mailjet: '%env(MAILJET_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MAILJET_DSN=mailjet://TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "0680462f2bb5f974b87ae057061680239090b0e0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/mastodon-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " mastodon: '%env(MASTODON_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MASTODON_DSN=mastodon://ACCESS_TOKEN@HOST"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "7876aee0d76e1d77c46a0ad44d49c9f2b42805a8"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/matrix-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " matrix: '%env(MATRIX_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MATRIX_DSN=matrix://HOST:PORT/?accessToken=ACCESSTOKEN&ssl=SSL"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "2f8d1e44327d8c25680313abb85ded2b8f86371b"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/mattermost-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " mattermost: '%env(MATTERMOST_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "See https://docs.mattermost.com/developer/bot-accounts.html",
|
||||
"#2": "MATTERMOST_DSN=mattermost://ACCESS_TOKEN@HOST/PATH?channel=CHANNEL"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "4ef2737ce2b73ffa6941da9d75101faa6205eb43"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/mercure-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " mercure: '%env(MERCURE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MERCURE_DSN=mercure://default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "4eaf30b6f48b69934a49e26dd0348e6ebfb97f12"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/message-bird-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " messagebird: '%env(MESSAGEBIRD_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MESSAGEBIRD_DSN=messagebird://TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "20fbfe4def504ce6997ace2fb3afaea65e6817d3"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/message-media-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " messagemedia: '%env(MESSAGEMEDIA_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MESSAGEMEDIA_DSN=messagemedia://API_KEY:API_SECRET@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a685c659ac770a41aa9d1124ea11ca2d94f3f085"
|
||||
}
|
||||
}
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/microsoft-teams-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " microsoftteams: '%env(MICROSOFT_TEAMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MICROSOFT_TEAMS_DSN=microsoftteams://default/HOSTPATH"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "57116096b460c3ba8cc4035c185512c0e6599d90"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/mobyt-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " mobyt: '%env(MOBYT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MOBYT_DSN=mobyt://USER_KEY:ACCESS_TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "380dac362bcd423ddf1b17fef0e13fec65597ee0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/nexmo-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " nexmo: '%env(NEXMO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "NEXMO_DSN=nexmo://KEY:SECRET@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "8533a5ef145732e8db81c05ea542702e48df6ee3"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/octopush-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " octopush: '%env(OCTOPUSH_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "OCTOPUSH_DSN=octopush://USERLOGIN:APIKEY@default?from=FROM&type=TYPE"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "bffd536270536aefb24907209164e07eb4c855e3"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/one-signal-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " onesignal: '%env(ONESIGNAL_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ONESIGNAL_DSN=onesignal://APP_ID:API_KEY@default?defaultRecipientId=DEFAULT_RECIPIENT_ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "8eb9eb907faa010dc740ebfb6461bcb5b5d50c9f"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/orange-sms-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " orange-sms: '%env(ORANGE_SMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ORANGE_SMS_DSN=orange-sms://CLIENT_ID:CLIENT_SECRET@default?from=FROM&sender_name=SENDER_NAME"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "39250fbcff169c3c3e5f4702b1e6a4fd9d23f598"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/ovh-cloud-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " ovhcloud: '%env(OVHCLOUD_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "OVHCLOUD_DSN=ovhcloud://APPLICATION_KEY:APPLICATION_SECRET@default?consumer_key=CONSUMER_KEY&service_name=SERVICE_NAME"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "3021c49f22f8f444550cadb5c1144cbd7a200295"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/pager-duty-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " pagerduty: '%env(PAGERDUTY_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "PAGERDUTY_DSN=pagerduty://TOKEN@SUBDOMAIN"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "17a2961d885a9252f4d17331f93bbef0e19dd5c0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/panther": {
|
||||
"manifest": {
|
||||
"conflict": {
|
||||
"symfony/flex": "<1.23.0 || >=2.0.0,<2.8.0"
|
||||
},
|
||||
"dockerfile": [
|
||||
"# Chromium and ChromeDriver",
|
||||
"ENV PANTHER_NO_SANDBOX=1",
|
||||
"# Not mandatory, but recommended",
|
||||
"ENV PANTHER_CHROME_ARGUMENTS='--disable-dev-shm-usage'",
|
||||
"# hadolint ignore=DL3008",
|
||||
"RUN apt-get update && apt-get install -y --no-install-recommends chromium chromium-driver && rm -rf /var/lib/apt/lists/*",
|
||||
"",
|
||||
"# Firefox and geckodriver",
|
||||
"#ARG GECKODRIVER_VERSION=0.34.0",
|
||||
"# hadolint ignore=DL3008",
|
||||
"#RUN apt-get update && apt-get install -y --no-install-recommends firefox && rm -rf /var/lib/apt/lists/*",
|
||||
"#RUN wget -q https://github.com/mozilla/geckodriver/releases/download/v$GECKODRIVER_VERSION/geckodriver-v$GECKODRIVER_VERSION-aarch64.tar.gz; \\",
|
||||
"#\ttar -zxf geckodriver-v$GECKODRIVER_VERSION-aarch64.tar.gz -C /usr/bin; \\",
|
||||
"#\trm geckodriver-v$GECKODRIVER_VERSION-aarch64.tar.gz"
|
||||
],
|
||||
"dotenv": {
|
||||
"test": {
|
||||
"PANTHER_APP_ENV": "panther",
|
||||
"PANTHER_ERROR_SCREENSHOT_DIR": "./var/error-screenshots",
|
||||
"PANTHER_DEVTOOLS": "0"
|
||||
}
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "phpunit.xml.dist",
|
||||
"content": " <extension class=\"Symfony\\Component\\Panther\\ServerExtension\" />",
|
||||
"position": "after_target",
|
||||
"target": "<extensions>",
|
||||
"requires": "symfony/phpunit-bridge:<7.3",
|
||||
"warn_if_missing": false
|
||||
},
|
||||
{
|
||||
"file": "phpunit.dist.xml",
|
||||
"content": " <bootstrap class=\"Symfony\\Component\\Panther\\ServerExtension\" />",
|
||||
"position": "after_target",
|
||||
"target": "<extensions>",
|
||||
"requires": "symfony/phpunit-bridge:<7.3",
|
||||
"warn_if_missing": false
|
||||
},
|
||||
{
|
||||
"file": "phpunit.xml.dist",
|
||||
"content": " <extension class=\"Symfony\\Component\\Panther\\ServerExtension\" />",
|
||||
"position": "after_target",
|
||||
"target": "<extensions>",
|
||||
"requires": "phpunit/phpunit:<10",
|
||||
"warn_if_missing": false
|
||||
},
|
||||
{
|
||||
"file": "phpunit.dist.xml",
|
||||
"content": " <bootstrap class=\"Symfony\\Component\\Panther\\ServerExtension\" />",
|
||||
"position": "after_target",
|
||||
"target": "<extensions>",
|
||||
"requires": "phpunit/phpunit:>=10",
|
||||
"warn_if_missing": false
|
||||
}
|
||||
],
|
||||
"post-install-output": [
|
||||
" * Install <fg=green>ChromeDriver</> or <fg=green>geckodriver</> with ",
|
||||
" the package manager of your Operating System.",
|
||||
" ",
|
||||
" Alternatively, use Browser Driver Installer:",
|
||||
"",
|
||||
" <fg=green>composer require --dev dbrekelmans/bdi</>",
|
||||
" <fg=green>vendor/bin/bdi detect drivers</>",
|
||||
"",
|
||||
" This step is not necessary when using Docker."
|
||||
]
|
||||
},
|
||||
"files": [],
|
||||
"ref": "eac1868f830a3e332764bb3919ab02311b3340c8"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/phpunit-bridge": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "phpunit.dist.xml",
|
||||
"content": " <bootstrap class=\"Symfony\\Bridge\\PhpUnit\\SymfonyExtension\">\n <parameter name=\"clock-mock-namespaces\" value=\"App\" />\n <parameter name=\"dns-mock-namespaces\" value=\"App\" />\n </bootstrap>",
|
||||
"position": "after_target",
|
||||
"target": "<extensions>",
|
||||
"warn_if_missing": true
|
||||
}
|
||||
],
|
||||
"conflict": {
|
||||
"phpunit/phpunit": "<10.0",
|
||||
"symfony/framework-bundle": "<5.4"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "56f87409c45ff6654b0bf07c5cc359aebf6016ab"
|
||||
}
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/phrase-translation-provider": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/translation.yaml",
|
||||
"position": "after_target",
|
||||
"target": " providers:",
|
||||
"content": " phrase:\n dsn: '%env(PHRASE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "PHRASE_DSN=phrase://PROJECT_ID:API_TOKEN@default?userAgent=Symfony-Phrase-Provider"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "75ff3bf9b935ca8930c89f708de8cb6dedfb185e"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/plivo-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " plivo: '%env(PLIVO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "PLIVO_DSN=plivo://AUTH_ID:AUTH_TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "fcd37b03d7190934e63272a56b65a1c2693c3f45"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/postmark-mailer": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"target": " texter_transports:",
|
||||
"content": " postmark: '%env(MAILER_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MAILER_DSN=postmark://ID@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a5924b4e3d78962df013d8434f463c090594ae79"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/primotexto-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " primotexto: '%env(PRIMOTEXTO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "PRIMOTEXTO_DSN=primotexto://API_KEY@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "b4f5accaa1831a650ca6186a7f956e1761f7b8b6"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/pushover-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " pushover: '%env(PUSHOVER_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "PUSHOVER_DSN=pushover://USER_KEY:APP_TOKEN@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "eb2aefc42ea7e44a70c4d1c3aea86ad176171e7c"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/pushy-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " pushy: '%env(PUSHY_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "PUSHY_DSN=pushy://API_KEY@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a07dabcb079a08f6bb980b958dec4a8fc969e049"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/redlink-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " redlink: '%env(REDLINK_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "REDLINK_DSN=redlink://API_TOKEN:APP_TOKEN@default?from=FROM&version=VERSION"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a6319b8708765bc25eb3cc38a2efa1e54caee7b9"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/ring-central-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " ringcentral: '%env(RINGCENTRAL_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "RINGCENTRAL_DSN=ringcentral://API_TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "e8139c02c6db2a5839e86babb2f59306a22e644d"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/rocket-chat-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " rocketchat: '%env(ROCKETCHAT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "ROCKETCHAT_DSN=rocketchat://ACCESS_TOKEN@default?channel=CHANNEL"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "843dc3fb61aa5cc2102efcac2e47e7ab48c897c0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sendberry-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sendberry: '%env(SENDBERRY_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SENDBERRY_DSN=sendberry://USERNAME:PASSWORD@default?auth_key=AUTH_KEY&from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "7dac41312da1ce2174bf44b8bb54307b8769c96f"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sendgrid-mailer": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"target": " texter_transports:",
|
||||
"content": " sendgrid: '%env(MAILER_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "MAILER_DSN=sendgrid://KEY@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "1caff9467bfc5c7f68503aa9eba9dc762a30ae21"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sendinblue-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sendinblue: '%env(SENDINBLUE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SENDINBLUE_DSN=sendinblue://API_KEY@default?sender=PHONE"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "49fd3d0b76cb59e32c689ef80a85a7ba9141e0a6"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/simple-textin-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " simpletextin: '%env(SIMPLETEXTIN_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SIMPLETEXTIN_DSN=simpletextin://API_KEY@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "c0df98450132247945123029e70d727065a74a52"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sinch-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sinch: '%env(SINCH_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SINCH_DSN=sinch://SID:TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "c658f78d5985b48cee4fe7d38eeb1693f9367058"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sipgate-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sipgate: '%env(SIPGATE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SIPGATE_DSN=sipgate://TOKEN_ID:TOKEN@default?senderId=SENDER_ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "94654ed1e55430a52d6e82caf8dea8da885bd69c"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/slack-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " slack: '%env(SLACK_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "See https://api.slack.com/messaging/webhooks",
|
||||
"#2": "SLACK_DSN=slack://default/ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "0368dae0a3eaceb846fbed14ba0a3fa4ac936ca3"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/slack-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " slack: '%env(SLACK_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SLACK_DSN=slack://TOKEN@default?channel=CHANNEL"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "68d00dc850f694dda0cb50a6d44c61276998f86d"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sms-biuras-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " smsbiuras: '%env(SMSBIURAS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMSBIURAS_DSN=smsbiuras://UID:API_KEY@default?from=FROM&test_mode=0"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "51f384a00e6e560bf632f0cb0c496c8d846497ab"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sms-factor-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sms-factor: '%env(SMS_FACTOR_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMS_FACTOR_DSN=sms-factor://TOKEN@default?sender=SENDER&push_type=PUSH_TYPE"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "40c089f9287df75dd066bdd92dc68563bd36d86a"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sms-sluzba-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sms-sluzba: '%env(SMS_SLUZBA_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMS_SLUZBA_DSN=sms-sluzba://USERNAME:PASSWORD@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "f4e6274a88ea7014caf05dadb72105fb43a49f58"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sms77-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sms77: '%env(SMS77_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMS77_DSN=sms77://API_KEY@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "60137ec7228646093fb3e05c5f44a1c8b1209b3b"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/smsapi-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " smsapi: '%env(SMSAPI_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "See https://www.smsapi.pl/docs/#autoryzacja",
|
||||
"#2": "SMSAPI_DSN=smsapi://TOKEN@default?from=SENDERNAME"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "31f1932331dec7f8f16b1805eb971f2781da3101"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/smsbox-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " smsbox: '%env(SMSBOX_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMSBOX_DSN=smsbox://APIKEY@default?mode=MODE&strategy=STRATEGY&sender=SENDER"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "cfe0a1138b51dc2fd3debcfda93fedaf53042601"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/smsc-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " smsc: '%env(SMSC_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMSC_DSN=smsc://LOGIN:PASSWORD@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "fff515f5869a98b012c13469b9526bafbd6458fa"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/smsense-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " smsense: '%env(SMSENSE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMSENSE_DSN=smsense://API_TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "877aa9023da60afb9027c37e1323854e37a9561e"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/smsmode-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " smsmode: '%env(SMSMODE_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SMSMODE_DSN=smsmode://API_KEY@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "cc672b284cdaf849740c14561a36506e03c42ed3"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/spot-hit-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " spothit: '%env(SPOTHIT_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SPOTHIT_DSN=spothit://TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "e14968adee1e84916c81917e9199f1f8dba9418d"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,178 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/stimulus-bundle": {
|
||||
"manifest": {
|
||||
"bundles": {
|
||||
"Symfony\\UX\\StimulusBundle\\StimulusBundle": [
|
||||
"all"
|
||||
]
|
||||
},
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/framework-bundle": "<7.2",
|
||||
"symfony/security-csrf": "<7.2",
|
||||
"symfony/webpack-encore-bundle": "<2.0",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "webpack.config.js",
|
||||
"content": "\n // enables the Symfony UX Stimulus bridge (used in assets/bootstrap.js)\n .enableStimulusBridge('./assets/controllers.json')",
|
||||
"position": "after_target",
|
||||
"target": ".splitEntryChunks()"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "import './bootstrap.js';",
|
||||
"position": "top",
|
||||
"warn_if_missing": true
|
||||
},
|
||||
{
|
||||
"file": "assets/bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bridge';\n\n// Registers Stimulus controllers from controllers.json and in the controllers/ directory\nexport const app = startStimulusApp(require.context(\n '@symfony/stimulus-bridge/lazy-controller-loader!./controllers',\n true,\n /\\.[jt]sx?$/\n));",
|
||||
"position": "top",
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bundle';\n\nconst app = startStimulusApp();",
|
||||
"position": "top",
|
||||
"requires": "symfony/asset-mapper"
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
"assets/bootstrap.js": {
|
||||
"contents": [
|
||||
"// register any custom, 3rd party controllers here",
|
||||
"// app.register('some_controller_name', SomeImportedController);",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers.json": {
|
||||
"contents": [
|
||||
"{",
|
||||
" \"controllers\": [],",
|
||||
" \"entrypoints\": []",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers/csrf_protection_controller.js": {
|
||||
"contents": [
|
||||
"const nameCheck = /^[-_a-zA-Z0-9]{4,22}$/;",
|
||||
"const tokenCheck = /^[-_/+a-zA-Z0-9]{24,}$/;",
|
||||
"",
|
||||
"// Generate and double-submit a CSRF token in a form field and a cookie, as defined by Symfony's SameOriginCsrfTokenManager",
|
||||
"// Use `form.requestSubmit()` to ensure that the submit event is triggered. Using `form.submit()` will not trigger the event",
|
||||
"// and thus this event-listener will not be executed.",
|
||||
"document.addEventListener('submit', function (event) {",
|
||||
" generateCsrfToken(event.target);",
|
||||
"}, true);",
|
||||
"",
|
||||
"// When @hotwired/turbo handles form submissions, send the CSRF token in a header in addition to a cookie",
|
||||
"// The `framework.csrf_protection.check_header` config option needs to be enabled for the header to be checked",
|
||||
"document.addEventListener('turbo:submit-start', function (event) {",
|
||||
" const h = generateCsrfHeaders(event.detail.formSubmission.formElement);",
|
||||
" Object.keys(h).map(function (k) {",
|
||||
" event.detail.formSubmission.fetchRequest.headers[k] = h[k];",
|
||||
" });",
|
||||
"});",
|
||||
"",
|
||||
"// When @hotwired/turbo handles form submissions, remove the CSRF cookie once a form has been submitted",
|
||||
"document.addEventListener('turbo:submit-end', function (event) {",
|
||||
" removeCsrfToken(event.detail.formSubmission.formElement);",
|
||||
"});",
|
||||
"",
|
||||
"export function generateCsrfToken (formElement) {",
|
||||
" const csrfField = formElement.querySelector('input[data-controller=\"csrf-protection\"], input[name=\"_csrf_token\"]');",
|
||||
"",
|
||||
" if (!csrfField) {",
|
||||
" return;",
|
||||
" }",
|
||||
"",
|
||||
" let csrfCookie = csrfField.getAttribute('data-csrf-protection-cookie-value');",
|
||||
" let csrfToken = csrfField.value;",
|
||||
"",
|
||||
" if (!csrfCookie && nameCheck.test(csrfToken)) {",
|
||||
" csrfField.setAttribute('data-csrf-protection-cookie-value', csrfCookie = csrfToken);",
|
||||
" csrfField.defaultValue = csrfToken = btoa(String.fromCharCode.apply(null, (window.crypto || window.msCrypto).getRandomValues(new Uint8Array(18))));",
|
||||
" }",
|
||||
" csrfField.dispatchEvent(new Event('change', { bubbles: true }));",
|
||||
"",
|
||||
" if (csrfCookie && tokenCheck.test(csrfToken)) {",
|
||||
" const cookie = csrfCookie + '_' + csrfToken + '=' + csrfCookie + '; path=/; samesite=strict';",
|
||||
" document.cookie = window.location.protocol === 'https:' ? '__Host-' + cookie + '; secure' : cookie;",
|
||||
" }",
|
||||
"}",
|
||||
"",
|
||||
"export function generateCsrfHeaders (formElement) {",
|
||||
" const headers = {};",
|
||||
" const csrfField = formElement.querySelector('input[data-controller=\"csrf-protection\"], input[name=\"_csrf_token\"]');",
|
||||
"",
|
||||
" if (!csrfField) {",
|
||||
" return headers;",
|
||||
" }",
|
||||
"",
|
||||
" const csrfCookie = csrfField.getAttribute('data-csrf-protection-cookie-value');",
|
||||
"",
|
||||
" if (tokenCheck.test(csrfField.value) && nameCheck.test(csrfCookie)) {",
|
||||
" headers[csrfCookie] = csrfField.value;",
|
||||
" }",
|
||||
"",
|
||||
" return headers;",
|
||||
"}",
|
||||
"",
|
||||
"export function removeCsrfToken (formElement) {",
|
||||
" const csrfField = formElement.querySelector('input[data-controller=\"csrf-protection\"], input[name=\"_csrf_token\"]');",
|
||||
"",
|
||||
" if (!csrfField) {",
|
||||
" return;",
|
||||
" }",
|
||||
"",
|
||||
" const csrfCookie = csrfField.getAttribute('data-csrf-protection-cookie-value');",
|
||||
"",
|
||||
" if (tokenCheck.test(csrfField.value) && nameCheck.test(csrfCookie)) {",
|
||||
" const cookie = csrfCookie + '_' + csrfField.value + '=0; path=/; samesite=strict; max-age=0';",
|
||||
"",
|
||||
" document.cookie = window.location.protocol === 'https:' ? '__Host-' + cookie + '; secure' : cookie;",
|
||||
" }",
|
||||
"}",
|
||||
"",
|
||||
"/* stimulusFetch: 'lazy' */",
|
||||
"export default 'csrf-protection-controller';",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers/hello_controller.js": {
|
||||
"contents": [
|
||||
"import { Controller } from '@hotwired/stimulus';",
|
||||
"",
|
||||
"/*",
|
||||
" * This is an example Stimulus controller!",
|
||||
" *",
|
||||
" * Any element with a data-controller=\"hello\" attribute will cause",
|
||||
" * this controller to be executed. The name \"hello\" comes from the filename:",
|
||||
" * hello_controller.js -> \"hello\"",
|
||||
" *",
|
||||
" * Delete this file or adapt it for your use!",
|
||||
" */",
|
||||
"export default class extends Controller {",
|
||||
" connect() {",
|
||||
" this.element.textContent = 'Hello Stimulus! Edit me in assets/controllers/hello_controller.js';",
|
||||
" }",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "0750ce73b01d8ea9e9aafa703b557963cb7448c4"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/stimulus-bundle": {
|
||||
"manifest": {
|
||||
"bundles": {
|
||||
"Symfony\\UX\\StimulusBundle\\StimulusBundle": [
|
||||
"all"
|
||||
]
|
||||
},
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/webpack-encore-bundle": "<2.0",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "webpack.config.js",
|
||||
"content": "\n // enables the Symfony UX Stimulus bridge (used in assets/bootstrap.js)\n .enableStimulusBridge('./assets/controllers.json')",
|
||||
"position": "after_target",
|
||||
"target": ".splitEntryChunks()"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "import './bootstrap.js';",
|
||||
"position": "top",
|
||||
"warn_if_missing": true
|
||||
},
|
||||
{
|
||||
"file": "assets/bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bridge';\n\n// Registers Stimulus controllers from controllers.json and in the controllers/ directory\nexport const app = startStimulusApp(require.context(\n '@symfony/stimulus-bridge/lazy-controller-loader!./controllers',\n true,\n /\\.[jt]sx?$/\n));",
|
||||
"position": "top",
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bundle';\n\nconst app = startStimulusApp();",
|
||||
"position": "top",
|
||||
"requires": "symfony/asset-mapper"
|
||||
},
|
||||
{
|
||||
"file": "templates/base.html.twig",
|
||||
"content": " {{ ux_controller_link_tags() }}",
|
||||
"position": "after_target",
|
||||
"target": "{% block stylesheets %}",
|
||||
"warn_if_missing": true,
|
||||
"requires": "symfony/asset-mapper"
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
"assets/bootstrap.js": {
|
||||
"contents": [
|
||||
"// register any custom, 3rd party controllers here",
|
||||
"// app.register('some_controller_name', SomeImportedController);",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers.json": {
|
||||
"contents": [
|
||||
"{",
|
||||
" \"controllers\": [],",
|
||||
" \"entrypoints\": []",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers/hello_controller.js": {
|
||||
"contents": [
|
||||
"import { Controller } from '@hotwired/stimulus';",
|
||||
"",
|
||||
"/*",
|
||||
" * This is an example Stimulus controller!",
|
||||
" *",
|
||||
" * Any element with a data-controller=\"hello\" attribute will cause",
|
||||
" * this controller to be executed. The name \"hello\" comes from the filename:",
|
||||
" * hello_controller.js -> \"hello\"",
|
||||
" *",
|
||||
" * Delete this file or adapt it for your use!",
|
||||
" */",
|
||||
"export default class extends Controller {",
|
||||
" connect() {",
|
||||
" this.element.textContent = 'Hello Stimulus! Edit me in assets/controllers/hello_controller.js';",
|
||||
" }",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "5c4c0324e829848168b76794f0cc61aae02823d9"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/stimulus-bundle": {
|
||||
"manifest": {
|
||||
"bundles": {
|
||||
"Symfony\\UX\\StimulusBundle\\StimulusBundle": [
|
||||
"all"
|
||||
]
|
||||
},
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/webpack-encore-bundle": "<2.0",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "webpack.config.js",
|
||||
"content": "\n // enables the Symfony UX Stimulus bridge (used in assets/bootstrap.js)\n .enableStimulusBridge('./assets/controllers.json')",
|
||||
"position": "after_target",
|
||||
"target": ".splitEntryChunks()"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "import './bootstrap.js';",
|
||||
"position": "top",
|
||||
"warn_if_missing": true
|
||||
},
|
||||
{
|
||||
"file": "assets/bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bridge';\n\n// Registers Stimulus controllers from controllers.json and in the controllers/ directory\nexport const app = startStimulusApp(require.context(\n '@symfony/stimulus-bridge/lazy-controller-loader!./controllers',\n true,\n /\\.[jt]sx?$/\n));",
|
||||
"position": "top",
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bundle';\n\nconst app = startStimulusApp();",
|
||||
"position": "top",
|
||||
"requires": "symfony/asset-mapper"
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
"assets/bootstrap.js": {
|
||||
"contents": [
|
||||
"// register any custom, 3rd party controllers here",
|
||||
"// app.register('some_controller_name', SomeImportedController);",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers.json": {
|
||||
"contents": [
|
||||
"{",
|
||||
" \"controllers\": [],",
|
||||
" \"entrypoints\": []",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers/hello_controller.js": {
|
||||
"contents": [
|
||||
"import { Controller } from '@hotwired/stimulus';",
|
||||
"",
|
||||
"/*",
|
||||
" * This is an example Stimulus controller!",
|
||||
" *",
|
||||
" * Any element with a data-controller=\"hello\" attribute will cause",
|
||||
" * this controller to be executed. The name \"hello\" comes from the filename:",
|
||||
" * hello_controller.js -> \"hello\"",
|
||||
" *",
|
||||
" * Delete this file or adapt it for your use!",
|
||||
" */",
|
||||
"export default class extends Controller {",
|
||||
" connect() {",
|
||||
" this.element.textContent = 'Hello Stimulus! Edit me in assets/controllers/hello_controller.js';",
|
||||
" }",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "cef742b8d032ecf36f5da9386af91d012b5f5110"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,178 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/stimulus-bundle": {
|
||||
"manifest": {
|
||||
"bundles": {
|
||||
"Symfony\\UX\\StimulusBundle\\StimulusBundle": [
|
||||
"all"
|
||||
]
|
||||
},
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/framework-bundle": "<7.2",
|
||||
"symfony/security-csrf": "<7.2",
|
||||
"symfony/webpack-encore-bundle": "<2.0",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "webpack.config.js",
|
||||
"content": "\n // enables the Symfony UX Stimulus bridge (used in assets/stimulus_bootstrap.js)\n .enableStimulusBridge('./assets/controllers.json')",
|
||||
"position": "after_target",
|
||||
"target": ".splitEntryChunks()"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "import './stimulus_bootstrap.js';",
|
||||
"position": "top",
|
||||
"warn_if_missing": true
|
||||
},
|
||||
{
|
||||
"file": "assets/stimulus_bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bridge';\n\n// Registers Stimulus controllers from controllers.json and in the controllers/ directory\nexport const app = startStimulusApp(require.context(\n '@symfony/stimulus-bridge/lazy-controller-loader!./controllers',\n true,\n /\\.[jt]sx?$/\n));",
|
||||
"position": "top",
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/stimulus_bootstrap.js",
|
||||
"content": "import { startStimulusApp } from '@symfony/stimulus-bundle';\n\nconst app = startStimulusApp();",
|
||||
"position": "top",
|
||||
"requires": "symfony/asset-mapper"
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
"assets/controllers.json": {
|
||||
"contents": [
|
||||
"{",
|
||||
" \"controllers\": [],",
|
||||
" \"entrypoints\": []",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers/csrf_protection_controller.js": {
|
||||
"contents": [
|
||||
"const nameCheck = /^[-_a-zA-Z0-9]{4,22}$/;",
|
||||
"const tokenCheck = /^[-_/+a-zA-Z0-9]{24,}$/;",
|
||||
"",
|
||||
"// Generate and double-submit a CSRF token in a form field and a cookie, as defined by Symfony's SameOriginCsrfTokenManager",
|
||||
"// Use `form.requestSubmit()` to ensure that the submit event is triggered. Using `form.submit()` will not trigger the event",
|
||||
"// and thus this event-listener will not be executed.",
|
||||
"document.addEventListener('submit', function (event) {",
|
||||
" generateCsrfToken(event.target);",
|
||||
"}, true);",
|
||||
"",
|
||||
"// When @hotwired/turbo handles form submissions, send the CSRF token in a header in addition to a cookie",
|
||||
"// The `framework.csrf_protection.check_header` config option needs to be enabled for the header to be checked",
|
||||
"document.addEventListener('turbo:submit-start', function (event) {",
|
||||
" const h = generateCsrfHeaders(event.detail.formSubmission.formElement);",
|
||||
" Object.keys(h).map(function (k) {",
|
||||
" event.detail.formSubmission.fetchRequest.headers[k] = h[k];",
|
||||
" });",
|
||||
"});",
|
||||
"",
|
||||
"// When @hotwired/turbo handles form submissions, remove the CSRF cookie once a form has been submitted",
|
||||
"document.addEventListener('turbo:submit-end', function (event) {",
|
||||
" removeCsrfToken(event.detail.formSubmission.formElement);",
|
||||
"});",
|
||||
"",
|
||||
"export function generateCsrfToken (formElement) {",
|
||||
" const csrfField = formElement.querySelector('input[data-controller=\"csrf-protection\"], input[name=\"_csrf_token\"]');",
|
||||
"",
|
||||
" if (!csrfField) {",
|
||||
" return;",
|
||||
" }",
|
||||
"",
|
||||
" let csrfCookie = csrfField.getAttribute('data-csrf-protection-cookie-value');",
|
||||
" let csrfToken = csrfField.value;",
|
||||
"",
|
||||
" if (!csrfCookie && nameCheck.test(csrfToken)) {",
|
||||
" csrfField.setAttribute('data-csrf-protection-cookie-value', csrfCookie = csrfToken);",
|
||||
" csrfField.defaultValue = csrfToken = btoa(String.fromCharCode.apply(null, (window.crypto || window.msCrypto).getRandomValues(new Uint8Array(18))));",
|
||||
" }",
|
||||
" csrfField.dispatchEvent(new Event('change', { bubbles: true }));",
|
||||
"",
|
||||
" if (csrfCookie && tokenCheck.test(csrfToken)) {",
|
||||
" const cookie = csrfCookie + '_' + csrfToken + '=' + csrfCookie + '; path=/; samesite=strict';",
|
||||
" document.cookie = window.location.protocol === 'https:' ? '__Host-' + cookie + '; secure' : cookie;",
|
||||
" }",
|
||||
"}",
|
||||
"",
|
||||
"export function generateCsrfHeaders (formElement) {",
|
||||
" const headers = {};",
|
||||
" const csrfField = formElement.querySelector('input[data-controller=\"csrf-protection\"], input[name=\"_csrf_token\"]');",
|
||||
"",
|
||||
" if (!csrfField) {",
|
||||
" return headers;",
|
||||
" }",
|
||||
"",
|
||||
" const csrfCookie = csrfField.getAttribute('data-csrf-protection-cookie-value');",
|
||||
"",
|
||||
" if (tokenCheck.test(csrfField.value) && nameCheck.test(csrfCookie)) {",
|
||||
" headers[csrfCookie] = csrfField.value;",
|
||||
" }",
|
||||
"",
|
||||
" return headers;",
|
||||
"}",
|
||||
"",
|
||||
"export function removeCsrfToken (formElement) {",
|
||||
" const csrfField = formElement.querySelector('input[data-controller=\"csrf-protection\"], input[name=\"_csrf_token\"]');",
|
||||
"",
|
||||
" if (!csrfField) {",
|
||||
" return;",
|
||||
" }",
|
||||
"",
|
||||
" const csrfCookie = csrfField.getAttribute('data-csrf-protection-cookie-value');",
|
||||
"",
|
||||
" if (tokenCheck.test(csrfField.value) && nameCheck.test(csrfCookie)) {",
|
||||
" const cookie = csrfCookie + '_' + csrfField.value + '=0; path=/; samesite=strict; max-age=0';",
|
||||
"",
|
||||
" document.cookie = window.location.protocol === 'https:' ? '__Host-' + cookie + '; secure' : cookie;",
|
||||
" }",
|
||||
"}",
|
||||
"",
|
||||
"/* stimulusFetch: 'lazy' */",
|
||||
"export default 'csrf-protection-controller';",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/controllers/hello_controller.js": {
|
||||
"contents": [
|
||||
"import { Controller } from '@hotwired/stimulus';",
|
||||
"",
|
||||
"/*",
|
||||
" * This is an example Stimulus controller!",
|
||||
" *",
|
||||
" * Any element with a data-controller=\"hello\" attribute will cause",
|
||||
" * this controller to be executed. The name \"hello\" comes from the filename:",
|
||||
" * hello_controller.js -> \"hello\"",
|
||||
" *",
|
||||
" * Delete this file or adapt it for your use!",
|
||||
" */",
|
||||
"export default class extends Controller {",
|
||||
" connect() {",
|
||||
" this.element.textContent = 'Hello Stimulus! Edit me in assets/controllers/hello_controller.js';",
|
||||
" }",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"assets/stimulus_bootstrap.js": {
|
||||
"contents": [
|
||||
"// register any custom, 3rd party controllers here",
|
||||
"// app.register('some_controller_name', SomeImportedController);",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "d21494ed2ddbde38942e8278299a23ce5cf4a9a1"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/sweego-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " sweego: '%env(SWEEGO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "SWEEGO_DSN=sweego://API_KEY@default?region=REGION&campaign_type=CAMPAIGN_TYPE"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "dec983319f49f71388983b5f0a00f4dd2bb39084"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/telegram-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " telegram: '%env(TELEGRAM_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "TELEGRAM_DSN=telegram://TOKEN@default?channel=CHAT_ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "a3b62351bdaf9af180ffaf8a9c5ae0df70886abe"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/telnyx-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " telnyx: '%env(TELNYX_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "TELNYX_DSN=telnyx://API_KEY@default?from=FROM&messaging_profile_id=MESSAGING_PROFILE_ID"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "607f48d0a036d2eb19e570c4db5799b7d772354b"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/termii-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " termii: '%env(TERMII_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "TERMII_DSN=termii://API_KEY@default?from=FROM&channel=CHANNEL"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "1430125b75fa6145256be83d7014d5835ff5df82"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/turbo-sms-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " turbosms: '%env(TURBOSMS_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "TURBOSMS_DSN=turbosms://AUTH_TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "7ca7a7541f8a3c7b3432bf0f2ffaa8b4a543bc29"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/twilio-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " twilio: '%env(TWILIO_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "TWILIO_DSN=twilio://SID:TOKEN@default?from=FROM"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "295c79af6b41fb4b6aa18f6f63eaa02051ebba5b"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/twitter-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " chatter_transports:",
|
||||
"content": " twitter: '%env(TWITTER_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "TWITTER_DSN=twitter://API_KEY:API_SECRET:ACCESS_TOKEN:ACCESS_SECRET@default"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "ad5b4e37c083b22ada0006dd7e4beba1d26b3926"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/unifonic-notifier": {
|
||||
"manifest": {
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/notifier.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " texter_transports:",
|
||||
"content": " unifonic: '%env(UNIFONIC_DSN)%'"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "UNIFONIC_DSN=unifonic://APP_SID@default?from=SENDER"
|
||||
}
|
||||
},
|
||||
"files": [],
|
||||
"ref": "bb6809575c343139d49ee890a40bfea950087cd1"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/ux-google-map": {
|
||||
"manifest": {
|
||||
"conflict": {
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "config/packages/ux_map.yaml",
|
||||
"position": "after_target",
|
||||
"warn_if_missing": true,
|
||||
"target": " renderer: '%env(resolve:default::UX_MAP_DSN)%'",
|
||||
"content": " google_maps:\n # define the default map id for all maps (https://developers.google.com/maps/documentation/get-map-id)\n default_map_id: null"
|
||||
}
|
||||
],
|
||||
"env": {
|
||||
"#1": "Options available at https://github.com/symfony/ux/blob/2.x/src/Map/src/Bridge/Google/README.md",
|
||||
"#2": "",
|
||||
"GOOGLE_MAPS_API_KEY": "# Get your API key at https://developers.google.com/maps/documentation/javascript/get-api-key",
|
||||
"UX_MAP_DSN": "google://%env(GOOGLE_MAPS_API_KEY)%@default"
|
||||
},
|
||||
"post-install-output": [
|
||||
" * <fg=blue>Read</> the documentation at <comment>https://github.com/symfony/ux/blob/2.x/src/Map/src/Bridge/Google/README.md</>"
|
||||
]
|
||||
},
|
||||
"files": [],
|
||||
"ref": "c571ed5f392f3574791a65f9881c54af3c44368d"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/ux-react": {
|
||||
"manifest": {
|
||||
"bundles": {
|
||||
"Symfony\\UX\\React\\ReactBundle": [
|
||||
"all"
|
||||
]
|
||||
},
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/webpack-encore-bundle": "<2.0",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "webpack.config.js",
|
||||
"content": "\n .enableReactPreset()",
|
||||
"position": "after_target",
|
||||
"target": ".splitEntryChunks()"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "import { registerReactControllerComponents } from '@symfony/ux-react';",
|
||||
"position": "top",
|
||||
"warn_if_missing": true
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "registerReactControllerComponents(require.context('./react/controllers', true, /\\.(j|t)sx?$/));",
|
||||
"position": "bottom",
|
||||
"warn_if_missing": true,
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "registerReactControllerComponents();",
|
||||
"position": "bottom",
|
||||
"warn_if_missing": true,
|
||||
"requires": "symfony/asset-mapper"
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
"assets/react/controllers/Hello.jsx": {
|
||||
"contents": [
|
||||
"import React from 'react';",
|
||||
"",
|
||||
"export default function (props) {",
|
||||
" return <div>Hello {props.fullName}</div>;",
|
||||
"}",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "adec905b8d643c7e15a3a8d070c58ff3021288c6"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/ux-svelte": {
|
||||
"manifest": {
|
||||
"bundles": {
|
||||
"Symfony\\UX\\Svelte\\SvelteBundle": [
|
||||
"all"
|
||||
]
|
||||
},
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/webpack-encore-bundle": "<2.0",
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "webpack.config.js",
|
||||
"content": "\n .enableSvelte()",
|
||||
"position": "after_target",
|
||||
"target": ".splitEntryChunks()"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "import { registerSvelteControllerComponents } from '@symfony/ux-svelte';",
|
||||
"position": "top",
|
||||
"warn_if_missing": true
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "registerSvelteControllerComponents(require.context('./svelte/controllers', true, /\\.svelte$/));",
|
||||
"position": "bottom",
|
||||
"warn_if_missing": true,
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/app.js",
|
||||
"content": "registerSvelteControllerComponents();",
|
||||
"position": "bottom",
|
||||
"warn_if_missing": true,
|
||||
"requires": "symfony/asset-mapper"
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
"assets/svelte/controllers/Hello.svelte": {
|
||||
"contents": [
|
||||
"<script>",
|
||||
" export let name = \"Svelte\";",
|
||||
"</script>",
|
||||
"",
|
||||
"<div>Hello {name}</div>",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "c85ee9983c42bd20221bddf87c4f66abb7077fdd"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
{
|
||||
"manifests": {
|
||||
"symfony/ux-translator": {
|
||||
"manifest": {
|
||||
"bundles": {
|
||||
"Symfony\\UX\\Translator\\UxTranslatorBundle": [
|
||||
"all"
|
||||
]
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/flex": "<1.20.0 || >=2.0.0,<2.3.0"
|
||||
},
|
||||
"copy-from-recipe": {
|
||||
"assets/": "assets/",
|
||||
"config/": "%CONFIG_DIR%/",
|
||||
"var/": "var/"
|
||||
},
|
||||
"add-lines": [
|
||||
{
|
||||
"file": "assets/translator.js",
|
||||
"content": "import { localeFallbacks } from '../var/translations/configuration';",
|
||||
"position": "top",
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/translator.js",
|
||||
"content": "import { localeFallbacks } from '@app/translations/configuration';",
|
||||
"position": "top",
|
||||
"requires": "symfony/asset-mapper"
|
||||
},
|
||||
{
|
||||
"file": "assets/translator.js",
|
||||
"content": "export * from '../var/translations';",
|
||||
"position": "bottom",
|
||||
"requires": "symfony/webpack-encore-bundle"
|
||||
},
|
||||
{
|
||||
"file": "assets/translator.js",
|
||||
"content": "export * from '@app/translations';",
|
||||
"position": "bottom",
|
||||
"requires": "symfony/asset-mapper"
|
||||
}
|
||||
]
|
||||
},
|
||||
"files": {
|
||||
"assets/translator.js": {
|
||||
"contents": [
|
||||
"import { trans, getLocale, setLocale, setLocaleFallbacks } from '@symfony/ux-translator';",
|
||||
"/*",
|
||||
" * This file is part of the Symfony UX Translator package.",
|
||||
" *",
|
||||
" * If folder \"../var/translations\" does not exist, or some translations are missing,",
|
||||
" * you must warmup your Symfony cache to refresh JavaScript translations.",
|
||||
" *",
|
||||
" * If you use TypeScript, you can rename this file to \"translator.ts\" to take advantage of types checking.",
|
||||
" */",
|
||||
"",
|
||||
"setLocaleFallbacks(localeFallbacks);",
|
||||
"",
|
||||
"export { trans };",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"config/packages/ux_translator.yaml": {
|
||||
"contents": [
|
||||
"ux_translator:",
|
||||
" # The directory where the JavaScript translations are dumped",
|
||||
" dump_directory: '%kernel.project_dir%/var/translations'",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"var/translations/configuration.js": {
|
||||
"contents": [
|
||||
"export const localeFallbacks = {};",
|
||||
"",
|
||||
"console.log('Run bin/console cache:warmup to generate the translation files.');",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
},
|
||||
"var/translations/index.js": {
|
||||
"contents": [
|
||||
"console.log('Run bin/console cache:warmup to generate the translation files.');",
|
||||
""
|
||||
],
|
||||
"executable": false
|
||||
}
|
||||
},
|
||||
"ref": "f68700d541af05e44e82ed777a549afe5b3f115c"
|
||||
}
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user