From d0884c5a1132806c94c8c0086e6ad035fb63d2c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Costa=20Silva?= <1574795+joaocsilva@users.noreply.github.com> Date: Fri, 2 Feb 2024 09:04:23 +0100 Subject: [PATCH] DQA-8654: Align project information endpoint with new Envs structure (#734) --- src/Mock.php | 2 +- .../Commands/ComponentCheckCommands.php | 34 +- src/TaskRunner/Commands/DockerCommands.php | 17 +- .../Features/Commands/DockerCommandsTest.php | 4 +- tests/fixtures/commands/component-check.yml | 25 +- .../commands/docker-compose-content.yml | 10 +- tests/fixtures/commands/drupal.yml | 2 +- .../sample-composer-toolkit-in-require.lock | 4 +- .../sample-composer-toolkit-outdated.lock | 2 +- tests/fixtures/samples/sample-composer.lock | 14 +- .../fixtures/samples/sample-d9-composer.lock | 19824 ++++++++++++++++ .../samples/sample-docker-default.yml | 25 +- tests/fixtures/samples/sample-opts.yml | 2 +- 13 files changed, 19903 insertions(+), 62 deletions(-) create mode 100644 tests/fixtures/samples/sample-d9-composer.lock diff --git a/src/Mock.php b/src/Mock.php index 0c5980c18..b8ae7c117 100644 --- a/src/Mock.php +++ b/src/Mock.php @@ -17,7 +17,7 @@ final class Mock * * @var string */ - private static string $defaultTag = '0.0.2'; + private static string $defaultTag = '0.0.3'; /** * The directory to download the mock to. diff --git a/src/TaskRunner/Commands/ComponentCheckCommands.php b/src/TaskRunner/Commands/ComponentCheckCommands.php index 43d362576..3f310a594 100644 --- a/src/TaskRunner/Commands/ComponentCheckCommands.php +++ b/src/TaskRunner/Commands/ComponentCheckCommands.php @@ -431,14 +431,11 @@ protected function validateComponent(array $package) // Check if the module is allowed for this profile. if (!$allowedInProject && !empty($allowedProfiles)) { $allowedProfiles = array_map('trim', explode(',', $allowedProfiles)); - // Load the project from the website. - $project = Website::projectInformation($projectId); - if (array_key_exists('profile', $project)) { - if (in_array($project['profile'], $allowedProfiles)) { - $allowedInProject = true; - $message = "The package $packageName is authorised for the profile {$project['profile']}"; - $messageType = 'Packages authorised:'; - } + $profile = $this->getProjectProfile($projectId); + if (in_array($profile, $allowedProfiles)) { + $allowedInProject = true; + $message = "The package $packageName is authorised for the profile $profile"; + $messageType = 'Packages authorised:'; } } @@ -858,4 +855,25 @@ private function getFailedOrPassed(bool $value): string return $value ? 'failed' : 'passed'; } + /** + * Load given project from website and return the profile in the production env. + * + * @param string $projectId + * The project to use in the endpoint. + */ + private function getProjectProfile(string $projectId): string + { + // Load the project from the website. + $project = Website::projectInformation($projectId); + // Get the profile from the production environment. + if (!empty($project['environments'])) { + foreach ($project['environments'] as $env) { + if (!empty($env['profile']) && $env['type'] === 'Production') { + return $env['profile']; + } + } + } + return ''; + } + } diff --git a/src/TaskRunner/Commands/DockerCommands.php b/src/TaskRunner/Commands/DockerCommands.php index be5133125..551425dbc 100644 --- a/src/TaskRunner/Commands/DockerCommands.php +++ b/src/TaskRunner/Commands/DockerCommands.php @@ -59,7 +59,7 @@ public function dockerRefreshConfiguration(): int $websiteRequirements = $this->getWebsiteRequirements(); $requirementsServiceImage = $this->getServicesVersionsFromRequirements($websiteRequirements['defaults']); - $projectInfo = $this->getWebsiteProjectInformation($projectId); + $projectInfo = $this->getProjectPhpFromWebsite($projectId); $requirements = array_merge($requirementsServiceImage, $projectInfo); @@ -127,7 +127,7 @@ private function getServicesImagesFromDockerCompose(array $dcContent): array * @return array|string[] * @throws \Exception */ - private function getWebsiteProjectInformation(string $projectId): array + private function getProjectPhpFromWebsite(string $projectId): array { $data = Website::projectInformation($projectId); if (!$data) { @@ -135,9 +135,16 @@ private function getWebsiteProjectInformation(string $projectId): array return []; } - return [ - 'php_version' => $data['php_version'], - ]; + // Get the php version from the production environment. + if (!empty($data['environments'])) { + foreach ($data['environments'] as $env) { + if (!empty($data['php_version']) && $env['type'] === 'Production') { + return ['php_version' => $data['php_version']]; + } + } + } + + return []; } /** diff --git a/tests/Features/Commands/DockerCommandsTest.php b/tests/Features/Commands/DockerCommandsTest.php index 47a297270..5a1ae79af 100644 --- a/tests/Features/Commands/DockerCommandsTest.php +++ b/tests/Features/Commands/DockerCommandsTest.php @@ -63,7 +63,7 @@ public function testDockerCommands(string $command, array $config = [], array $r // Run command. $result = $this->runCommand($command); - + $this->debugExpectations($result['output'], $expectations); // Assert expectations. foreach ($expectations as $expectation) { $this->assertDynamic($result['output'], $expectation); @@ -95,10 +95,10 @@ public function testDockerCommandsComposeContent(string $command, array $config, // Run command. $this->runCommand($command, false); - // Assert expectations. foreach ($expectations as $expectation) { $content = file_get_contents($this->getSandboxFilepath($expectation['file'])); + $this->debugExpectations($content, [$expectation]); $this->assertDynamic($content, $expectation); } } diff --git a/tests/fixtures/commands/component-check.yml b/tests/fixtures/commands/component-check.yml index 19a01da84..fdd03b4a3 100644 --- a/tests/fixtures/commands/component-check.yml +++ b/tests/fixtures/commands/component-check.yml @@ -16,7 +16,6 @@ Website not installed, using config/sync/core.extension.yml file. Config file not found at config/sync/core.extension.yml. Package dropsolid_purge is mandatory and is not present on the project. - Package oe_dashboard_agent is mandatory and is not present on the project. Checking Recommended components. ================================ @@ -363,13 +362,13 @@ - file: composer.lock content: | { "packages": [ { "name": "drupal/pipeline", "type": "drupal-module", "version": "1.0.0" } ] } - - file: .toolkit-mock/0.0.2/api/v1/project/ec-europa/toolkit/information.json + - file: .toolkit-mock/0.0.3/api/v1/project/ec-europa/toolkit/information.json content: | - [ { "type": "Drupal 9" ,"profile": "minimal" } ] - - file: .toolkit-mock/0.0.2/api/v1/toolkit-requirements.json + [ { "name":"toolkit", "type": "Openeuropa", "environments": [{ "profile": "minimal", "type": "Production" }] }] + - file: .toolkit-mock/0.0.3/api/v1/toolkit-requirements.json content: | - { "php_version":"8.0", "toolkit": "^3.7.2|^9.11|^10.1", "drupal": "^7.96|^9.5.8|^10.0.9", "vendor_list": [ "drupal" ] } - - file: .toolkit-mock/0.0.2/api/v1/package-reviews.json + { "php_version":"8.1", "toolkit": "^3.7.2|^9.14|^10.4", "drupal": "^7.96|^10.1.4|^10.0.11", "vendor_list": [ "drupal" ] } + - file: .toolkit-mock/0.0.3/api/v1/package-reviews.json content: | [ { "type": "drupal-module", @@ -384,7 +383,7 @@ "status": "rejected", "restricted_use": "1", "allowed_profiles": "minimal", - "allowed_project_types": "Drupal 9", + "allowed_project_types": "Openeuropa", "mandatory": "0", "mandatory_date": false, "core": "8.x", @@ -394,7 +393,7 @@ "dev_component": "false" } ] expectations: - - string_contains: The package drupal/pipeline is authorised for the type of project Drupal 9 + - string_contains: The package drupal/pipeline is authorised for the type of project Openeuropa - command: 'toolkit:component-check' configuration: [ ] @@ -404,13 +403,13 @@ - file: composer.lock content: | { "packages": [ { "name": "drupal/pipeline", "type": "drupal-module", "version": "1.0.0" } ] } - - file: .toolkit-mock/0.0.2/api/v1/project/ec-europa/toolkit/information.json + - file: .toolkit-mock/0.0.3/api/v1/project/ec-europa/toolkit/information.json content: | - [ { "type": "Drupal 9" ,"profile": "minimal" } ] - - file: .toolkit-mock/0.0.2/api/v1/toolkit-requirements.json + [ { "name": "toolkit", "type": "Openeuropa", "environments": [{ "profile":"minimal", "type":"Production" }] } ] + - file: .toolkit-mock/0.0.3/api/v1/toolkit-requirements.json content: | - { "php_version":"8.0", "toolkit": "^3.7.2|^9.11|^10.1", "drupal": "^7.96|^9.5.8|^10.0.9", "vendor_list": [ "drupal" ] } - - file: .toolkit-mock/0.0.2/api/v1/package-reviews.json + { "php_version": "8.1", "toolkit": "^3.7.2|^9.14|^10.4", "drupal": "^7.96|^10.1.4|^10.0.11", "vendor_list": [ "drupal" ] } + - file: .toolkit-mock/0.0.3/api/v1/package-reviews.json content: | [ { "type": "drupal-module", diff --git a/tests/fixtures/commands/docker-compose-content.yml b/tests/fixtures/commands/docker-compose-content.yml index 6a0c61e37..81001faf1 100644 --- a/tests/fixtures/commands/docker-compose-content.yml +++ b/tests/fixtures/commands/docker-compose-content.yml @@ -30,7 +30,7 @@ env_file: - .env mysql: - image: 'percona/percona-server:5.7' + image: 'percona/percona-server:8.0' command: '--innodb-log-file_size=2G --max-allowed-packet=1G --innodb-buffer-pool-size=512M --wait-timeout=31536000' environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' @@ -60,7 +60,7 @@ version: '2' services: mysql: - image: 'percona/percona-server:5.7' + image: 'percona/percona-server:8.0' command: '--innodb-log-file_size=2G --max-allowed-packet=1G --innodb-buffer-pool-size=512M --wait-timeout=31536000' environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' @@ -128,7 +128,7 @@ env_file: - .env mysql: - image: 'percona/percona-server:5.7' + image: 'percona/percona-server:8.0' command: '--innodb-log-file_size=2G --max-allowed-packet=1G --innodb-buffer-pool-size=512M --wait-timeout=31536000' environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' @@ -179,7 +179,7 @@ env_file: - .env mysql: - image: 'percona/percona-server:5.7' + image: 'percona/percona-server:8.0' command: '--innodb-log-file_size=2G --max-allowed-packet=1G --innodb-buffer-pool-size=512M --wait-timeout=31536000' environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' @@ -281,7 +281,7 @@ env_file: - .env mysql: - image: 'percona/percona-server:5.7' + image: 'percona/percona-server:8.0' command: '--innodb-log-file_size=2G --max-allowed-packet=1G --innodb-buffer-pool-size=512M --wait-timeout=31536000' environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' diff --git a/tests/fixtures/commands/drupal.yml b/tests/fixtures/commands/drupal.yml index 50fbe5dbe..172a04dcd 100644 --- a/tests/fixtures/commands/drupal.yml +++ b/tests/fixtures/commands/drupal.yml @@ -291,7 +291,7 @@ configuration: [] tokens: ~ resources: - - from: sample-composer.lock + - from: sample-d9-composer.lock to: composer.lock expectations: - contains: | diff --git a/tests/fixtures/samples/sample-composer-toolkit-in-require.lock b/tests/fixtures/samples/sample-composer-toolkit-in-require.lock index 3a3825de3..5bc379b04 100644 --- a/tests/fixtures/samples/sample-composer-toolkit-in-require.lock +++ b/tests/fixtures/samples/sample-composer-toolkit-in-require.lock @@ -72,7 +72,7 @@ }, { "name": "drupal/core", - "version": "9.5.11", + "version": "10.0.12", "source": { "type": "git", "url": "https://github.com/drupal/core.git", @@ -239,7 +239,7 @@ }, { "name": "drupal/core-composer-scaffold", - "version": "9.5.11", + "version": "10.0.12", "source": { "type": "git", "url": "https://github.com/drupal/core-composer-scaffold.git", diff --git a/tests/fixtures/samples/sample-composer-toolkit-outdated.lock b/tests/fixtures/samples/sample-composer-toolkit-outdated.lock index 541316c86..c93032073 100644 --- a/tests/fixtures/samples/sample-composer-toolkit-outdated.lock +++ b/tests/fixtures/samples/sample-composer-toolkit-outdated.lock @@ -8,7 +8,7 @@ "packages": [ { "name": "drupal/core", - "version": "9.5.11", + "version": "10.0.12", "source": { "type": "git", "url": "https://github.com/drupal/core.git", diff --git a/tests/fixtures/samples/sample-composer.lock b/tests/fixtures/samples/sample-composer.lock index 88f4d6ec0..0809758b0 100644 --- a/tests/fixtures/samples/sample-composer.lock +++ b/tests/fixtures/samples/sample-composer.lock @@ -3283,7 +3283,7 @@ }, { "name": "drupal/core", - "version": "9.5.11", + "version": "10.0.12", "source": { "type": "git", "url": "https://github.com/drupal/core.git", @@ -3450,7 +3450,7 @@ }, { "name": "drupal/core-composer-scaffold", - "version": "9.5.11", + "version": "10.0.12", "source": { "type": "git", "url": "https://github.com/drupal/core-composer-scaffold.git", @@ -7983,7 +7983,7 @@ "phpstan/phpstan": "^1.3.0", "phpstan/phpstan-phpunit": "^1.0.0", "phpstan/phpstan-strict-rules": "^1.1.0", - "phpunit/phpunit": "^9.5.11" + "phpunit/phpunit": "^10.0.12" }, "suggest": { "ext-dom": "Required to use the XMLConverter and or the HTMLConverter classes", @@ -13312,7 +13312,7 @@ "symfony/css-selector": "^4.4 || ^5.0 || ^6.0" }, "require-dev": { - "phpunit/phpunit": "^8.5.22 || ^9.5.11", + "phpunit/phpunit": "^8.5.22 || ^10.0.12", "symfony/error-handler": "^4.4 || ^5.0 || ^6.0", "symfony/phpunit-bridge": "^5.4 || ^6.0" }, @@ -13437,7 +13437,7 @@ }, "require-dev": { "mink/driver-testsuite": "dev-master", - "phpunit/phpunit": "^8.5.22 || ^9.5.11", + "phpunit/phpunit": "^8.5.22 || ^10.0.12", "symfony/error-handler": "^4.4 || ^5.0" }, "type": "mink-driver", @@ -15195,7 +15195,7 @@ }, { "name": "drupal/core-dev", - "version": "9.5.11", + "version": "10.0.12", "source": { "type": "git", "url": "https://github.com/drupal/core-dev.git", @@ -15594,7 +15594,7 @@ }, { "name": "ec-europa/toolkit", - "version": "9.11.0", + "version": "10.5.0", "source": { "type": "git", "url": "https://github.com/ec-europa/toolkit.git", diff --git a/tests/fixtures/samples/sample-d9-composer.lock b/tests/fixtures/samples/sample-d9-composer.lock new file mode 100644 index 000000000..88f4d6ec0 --- /dev/null +++ b/tests/fixtures/samples/sample-d9-composer.lock @@ -0,0 +1,19824 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "bbc6e1d25b65e8da751f3c6e081e1a85", + "packages": [ + { + "name": "asm89/stack-cors", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/asm89/stack-cors.git", + "reference": "b9c31def6a83f84b4d4a40d35996d375755f0e08" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/asm89/stack-cors/zipball/b9c31def6a83f84b4d4a40d35996d375755f0e08", + "reference": "b9c31def6a83f84b4d4a40d35996d375755f0e08", + "shasum": "" + }, + "require": { + "php": ">=5.5.9", + "symfony/http-foundation": "~2.7|~3.0|~4.0|~5.0", + "symfony/http-kernel": "~2.7|~3.0|~4.0|~5.0" + }, + "require-dev": { + "phpunit/phpunit": "^5.0 || ^4.8.10", + "squizlabs/php_codesniffer": "^2.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "psr-4": { + "Asm89\\Stack\\": "src/Asm89/Stack/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alexander", + "email": "iam.asm89@gmail.com" + } + ], + "description": "Cross-origin resource sharing library and stack middleware", + "homepage": "https://github.com/asm89/stack-cors", + "keywords": [ + "cors", + "stack" + ], + "support": { + "issues": "https://github.com/asm89/stack-cors/issues", + "source": "https://github.com/asm89/stack-cors/tree/1.3.0" + }, + "time": "2019-12-24T22:41:47+00:00" + }, + { + "name": "c3js/c3", + "version": "v0.4.18", + "dist": { + "type": "zip", + "url": "https://github.com/c3js/c3/archive/v0.4.18.zip" + }, + "type": "drupal-library", + "extra": { + "installer-name": "c3" + } + }, + { + "name": "caxy/php-htmldiff", + "version": "v0.1.14", + "source": { + "type": "git", + "url": "https://github.com/caxy/php-htmldiff.git", + "reference": "3f8ee7edda3d7c6d2e58a02d70a12d3242c84ea5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/caxy/php-htmldiff/zipball/3f8ee7edda3d7c6d2e58a02d70a12d3242c84ea5", + "reference": "3f8ee7edda3d7c6d2e58a02d70a12d3242c84ea5", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-mbstring": "*", + "ezyang/htmlpurifier": "^4.7", + "php": ">=7.3" + }, + "require-dev": { + "doctrine/cache": "~1.0", + "phpunit/phpunit": "~9.0" + }, + "suggest": { + "doctrine/cache": "Used for caching the calculated diffs using a Doctrine Cache Provider" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.1.x-dev" + } + }, + "autoload": { + "psr-0": { + "Caxy\\HtmlDiff": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0" + ], + "authors": [ + { + "name": "Josh Schroeder", + "email": "jschroeder@caxy.com", + "homepage": "http://www.caxy.com" + } + ], + "description": "A library for comparing two HTML files/snippets and highlighting the differences using simple HTML.", + "homepage": "https://github.com/caxy/php-htmldiff", + "keywords": [ + "diff", + "html" + ], + "support": { + "issues": "https://github.com/caxy/php-htmldiff/issues", + "source": "https://github.com/caxy/php-htmldiff/tree/v0.1.14" + }, + "time": "2022-01-19T11:09:59+00:00" + }, + { + "name": "chi-teck/drupal-code-generator", + "version": "2.6.1", + "source": { + "type": "git", + "url": "https://github.com/Chi-teck/drupal-code-generator.git", + "reference": "3bffb204d29bd6136167f9f03b59f31cf5d5e6d2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Chi-teck/drupal-code-generator/zipball/3bffb204d29bd6136167f9f03b59f31cf5d5e6d2", + "reference": "3bffb204d29bd6136167f9f03b59f31cf5d5e6d2", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": ">=7.4", + "psr/log": "^1.1 || ^2.0 || ^3.0", + "symfony/console": "^4.4.15 || ^5.1 || ^6.0", + "symfony/filesystem": "^4.4 || ^5.1 || ^6", + "symfony/polyfill-php80": "^1.23", + "symfony/string": "^5.1 || ^6", + "twig/twig": "^2.14.11 || ^3.1" + }, + "conflict": { + "squizlabs/php_codesniffer": "<3.6" + }, + "require-dev": { + "chi-teck/drupal-coder-extension": "^1.2", + "drupal/coder": "^8.3.14", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.4", + "squizlabs/php_codesniffer": "^3.5", + "symfony/var-dumper": "^5.2 || ^6.0", + "symfony/yaml": "^5.2 || ^6.0" + }, + "bin": [ + "bin/dcg" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "DrupalCodeGenerator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0-or-later" + ], + "description": "Drupal code generator", + "support": { + "issues": "https://github.com/Chi-teck/drupal-code-generator/issues", + "source": "https://github.com/Chi-teck/drupal-code-generator/tree/2.6.1" + }, + "time": "2022-09-15T09:13:57+00:00" + }, + { + "name": "clue/stream-filter", + "version": "v1.6.0", + "source": { + "type": "git", + "url": "https://github.com/clue/stream-filter.git", + "reference": "d6169430c7731d8509da7aecd0af756a5747b78e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/stream-filter/zipball/d6169430c7731d8509da7aecd0af756a5747b78e", + "reference": "d6169430c7731d8509da7aecd0af756a5747b78e", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.36" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "Clue\\StreamFilter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "A simple and modern approach to stream filtering in PHP", + "homepage": "https://github.com/clue/php-stream-filter", + "keywords": [ + "bucket brigade", + "callback", + "filter", + "php_user_filter", + "stream", + "stream_filter_append", + "stream_filter_register" + ], + "support": { + "issues": "https://github.com/clue/stream-filter/issues", + "source": "https://github.com/clue/stream-filter/tree/v1.6.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2022-02-21T13:15:14+00:00" + }, + { + "name": "composer/installers", + "version": "v1.12.0", + "source": { + "type": "git", + "url": "https://github.com/composer/installers.git", + "reference": "d20a64ed3c94748397ff5973488761b22f6d3f19" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/installers/zipball/d20a64ed3c94748397ff5973488761b22f6d3f19", + "reference": "d20a64ed3c94748397ff5973488761b22f6d3f19", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0 || ^2.0" + }, + "replace": { + "roundcube/plugin-installer": "*", + "shama/baton": "*" + }, + "require-dev": { + "composer/composer": "1.6.* || ^2.0", + "composer/semver": "^1 || ^3", + "phpstan/phpstan": "^0.12.55", + "phpstan/phpstan-phpunit": "^0.12.16", + "symfony/phpunit-bridge": "^4.2 || ^5", + "symfony/process": "^2.3" + }, + "type": "composer-plugin", + "extra": { + "class": "Composer\\Installers\\Plugin", + "branch-alias": { + "dev-main": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Installers\\": "src/Composer/Installers" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kyle Robinson Young", + "email": "kyle@dontkry.com", + "homepage": "https://github.com/shama" + } + ], + "description": "A multi-framework Composer library installer", + "homepage": "https://composer.github.io/installers/", + "keywords": [ + "Craft", + "Dolibarr", + "Eliasis", + "Hurad", + "ImageCMS", + "Kanboard", + "Lan Management System", + "MODX Evo", + "MantisBT", + "Mautic", + "Maya", + "OXID", + "Plentymarkets", + "Porto", + "RadPHP", + "SMF", + "Starbug", + "Thelia", + "Whmcs", + "WolfCMS", + "agl", + "aimeos", + "annotatecms", + "attogram", + "bitrix", + "cakephp", + "chef", + "cockpit", + "codeigniter", + "concrete5", + "croogo", + "dokuwiki", + "drupal", + "eZ Platform", + "elgg", + "expressionengine", + "fuelphp", + "grav", + "installer", + "itop", + "joomla", + "known", + "kohana", + "laravel", + "lavalite", + "lithium", + "magento", + "majima", + "mako", + "mediawiki", + "miaoxing", + "modulework", + "modx", + "moodle", + "osclass", + "pantheon", + "phpbb", + "piwik", + "ppi", + "processwire", + "puppet", + "pxcms", + "reindex", + "roundcube", + "shopware", + "silverstripe", + "sydes", + "sylius", + "symfony", + "tastyigniter", + "typo3", + "wordpress", + "yawik", + "zend", + "zikula" + ], + "support": { + "issues": "https://github.com/composer/installers/issues", + "source": "https://github.com/composer/installers/tree/v1.12.0" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2021-09-13T08:19:44+00:00" + }, + { + "name": "composer/semver", + "version": "3.3.2", + "source": { + "type": "git", + "url": "https://github.com/composer/semver.git", + "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/semver/zipball/3953f23262f2bff1919fc82183ad9acb13ff62c9", + "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.4", + "symfony/phpunit-bridge": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Semver\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "http://www.naderman.de" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + }, + { + "name": "Rob Bast", + "email": "rob.bast@gmail.com", + "homepage": "http://robbast.nl" + } + ], + "description": "Semver library that offers utilities, version constraint parsing and validation.", + "keywords": [ + "semantic", + "semver", + "validation", + "versioning" + ], + "support": { + "irc": "irc://irc.freenode.org/composer", + "issues": "https://github.com/composer/semver/issues", + "source": "https://github.com/composer/semver/tree/3.3.2" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2022-04-01T19:23:25+00:00" + }, + { + "name": "consolidation/annotated-command", + "version": "4.5.6", + "source": { + "type": "git", + "url": "https://github.com/consolidation/annotated-command.git", + "reference": "3968070538761628546270935f0733a0cc408e1f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/3968070538761628546270935f0733a0cc408e1f", + "reference": "3968070538761628546270935f0733a0cc408e1f", + "shasum": "" + }, + "require": { + "consolidation/output-formatters": "^4.1.1", + "php": ">=7.1.3", + "psr/log": "^1|^2|^3", + "symfony/console": "^4.4.8|^5|^6", + "symfony/event-dispatcher": "^4.4.8|^5|^6", + "symfony/finder": "^4.4.8|^5|^6" + }, + "require-dev": { + "composer-runtime-api": "^2.0", + "phpunit/phpunit": "^7.5.20 || ^8 || ^9", + "squizlabs/php_codesniffer": "^3", + "yoast/phpunit-polyfills": "^0.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.x-dev" + } + }, + "autoload": { + "psr-4": { + "Consolidation\\AnnotatedCommand\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + } + ], + "description": "Initialize Symfony Console commands from annotated command class methods.", + "support": { + "issues": "https://github.com/consolidation/annotated-command/issues", + "source": "https://github.com/consolidation/annotated-command/tree/4.5.6" + }, + "time": "2022-06-22T20:17:12+00:00" + }, + { + "name": "consolidation/config", + "version": "2.0.6", + "source": { + "type": "git", + "url": "https://github.com/consolidation/config.git", + "reference": "d90e684c07582ab91916771565f9c768ebfd5dae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/config/zipball/d90e684c07582ab91916771565f9c768ebfd5dae", + "reference": "d90e684c07582ab91916771565f9c768ebfd5dae", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^1.1.0 || ^2 || ^3", + "grasmash/expander": "^1 || ^2", + "php": ">=7.1.3", + "psr/log": "^1.1", + "symfony/event-dispatcher": "^4 || ^5 || ^6" + }, + "require-dev": { + "ext-json": "*", + "phpunit/phpunit": ">=7.5.20", + "squizlabs/php_codesniffer": "^3", + "symfony/console": "^4 || ^5 || ^6", + "symfony/yaml": "^4 || ^5 || ^6", + "yoast/phpunit-polyfills": "^1" + }, + "suggest": { + "symfony/event-dispatcher": "Required to inject configuration into Command options", + "symfony/yaml": "Required to use Consolidation\\Config\\Loader\\YamlConfigLoader" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Consolidation\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + } + ], + "description": "Provide configuration services for a commandline tool.", + "support": { + "issues": "https://github.com/consolidation/config/issues", + "source": "https://github.com/consolidation/config/tree/2.0.6" + }, + "time": "2022-02-21T17:36:52+00:00" + }, + { + "name": "consolidation/filter-via-dot-access-data", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/consolidation/filter-via-dot-access-data.git", + "reference": "cb2eeba41f8e2e3c61698a5cf70ef048ff6c9d5b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/filter-via-dot-access-data/zipball/cb2eeba41f8e2e3c61698a5cf70ef048ff6c9d5b", + "reference": "cb2eeba41f8e2e3c61698a5cf70ef048ff6c9d5b", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^1.1.0 || ^2.0.0 || ^3.0.0", + "php": ">=7.1.3" + }, + "require-dev": { + "phpunit/phpunit": "^7.5.20 || ^8 || ^9", + "squizlabs/php_codesniffer": "^3", + "yoast/phpunit-polyfills": "^0.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Consolidation\\Filter\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + } + ], + "description": "This project uses dflydev/dot-access-data to provide simple output filtering for applications built with annotated-command / Robo.", + "support": { + "source": "https://github.com/consolidation/filter-via-dot-access-data/tree/2.0.2" + }, + "time": "2021-12-30T03:56:08+00:00" + }, + { + "name": "consolidation/log", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/consolidation/log.git", + "reference": "3ad08dc57e8aff9400111bad36beb0ed387fe6a9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/log/zipball/3ad08dc57e8aff9400111bad36beb0ed387fe6a9", + "reference": "3ad08dc57e8aff9400111bad36beb0ed387fe6a9", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "psr/log": "^1 || ^2", + "symfony/console": "^4 || ^5 || ^6" + }, + "require-dev": { + "phpunit/phpunit": ">=7.5.20", + "squizlabs/php_codesniffer": "^3", + "yoast/phpunit-polyfills": "^0.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Consolidation\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + } + ], + "description": "Improved Psr-3 / Psr\\Log logger based on Symfony Console components.", + "support": { + "issues": "https://github.com/consolidation/log/issues", + "source": "https://github.com/consolidation/log/tree/2.1.1" + }, + "time": "2022-02-24T04:27:32+00:00" + }, + { + "name": "consolidation/output-formatters", + "version": "4.2.3", + "source": { + "type": "git", + "url": "https://github.com/consolidation/output-formatters.git", + "reference": "cbb50cc86775f14972003f797b61e232788bee1f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/cbb50cc86775f14972003f797b61e232788bee1f", + "reference": "cbb50cc86775f14972003f797b61e232788bee1f", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^1.1.0 || ^2 || ^3", + "php": ">=7.1.3", + "symfony/console": "^4|^5|^6", + "symfony/finder": "^4|^5|^6" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.4.2", + "phpunit/phpunit": ">=7", + "squizlabs/php_codesniffer": "^3", + "symfony/var-dumper": "^4|^5|^6", + "symfony/yaml": "^4|^5|^6", + "yoast/phpunit-polyfills": "^0.2.0" + }, + "suggest": { + "symfony/var-dumper": "For using the var_dump formatter" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.x-dev" + } + }, + "autoload": { + "psr-4": { + "Consolidation\\OutputFormatters\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + } + ], + "description": "Format text by applying transformations provided by plug-in formatters.", + "support": { + "issues": "https://github.com/consolidation/output-formatters/issues", + "source": "https://github.com/consolidation/output-formatters/tree/4.2.3" + }, + "time": "2022-10-17T04:01:40+00:00" + }, + { + "name": "consolidation/robo", + "version": "3.0.10", + "source": { + "type": "git", + "url": "https://github.com/consolidation/robo.git", + "reference": "206bbe23b34081a36bfefc4de2abbc1abcd29ef4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/robo/zipball/206bbe23b34081a36bfefc4de2abbc1abcd29ef4", + "reference": "206bbe23b34081a36bfefc4de2abbc1abcd29ef4", + "shasum": "" + }, + "require": { + "consolidation/annotated-command": "^4.3", + "consolidation/config": "^1.2.1 || ^2.0.1", + "consolidation/log": "^1.1.1 || ^2.0.2", + "consolidation/output-formatters": "^4.1.2", + "consolidation/self-update": "^2.0", + "league/container": "^3.3.1 || ^4.0", + "php": ">=7.1.3", + "symfony/console": "^4.4.19 || ^5 || ^6", + "symfony/event-dispatcher": "^4.4.19 || ^5 || ^6", + "symfony/filesystem": "^4.4.9 || ^5 || ^6", + "symfony/finder": "^4.4.9 || ^5 || ^6", + "symfony/process": "^4.4.9 || ^5 || ^6", + "symfony/yaml": "^4.4 || ^5 || ^6" + }, + "conflict": { + "codegyre/robo": "*" + }, + "require-dev": { + "natxet/cssmin": "3.0.4", + "patchwork/jsqueeze": "^2", + "pear/archive_tar": "^1.4.4", + "phpunit/phpunit": "^7.5.20 || ^8", + "squizlabs/php_codesniffer": "^3.6", + "yoast/phpunit-polyfills": "^0.2.0" + }, + "suggest": { + "natxet/cssmin": "For minifying CSS files in taskMinify", + "patchwork/jsqueeze": "For minifying JS files in taskMinify", + "pear/archive_tar": "Allows tar archives to be created and extracted in taskPack and taskExtract, respectively.", + "totten/lurkerlite": "For monitoring filesystem changes in taskWatch" + }, + "bin": [ + "robo" + ], + "type": "library", + "extra": { + "scenarios": { + "symfony4": { + "require": { + "symfony/console": "^4.4.11", + "symfony/event-dispatcher": "^4.4.11", + "symfony/filesystem": "^4.4.11", + "symfony/finder": "^4.4.11", + "symfony/process": "^4.4.11", + "phpunit/phpunit": "^6", + "nikic/php-parser": "^2" + }, + "remove": [ + "codeception/phpunit-wrapper" + ], + "config": { + "platform": { + "php": "7.1.3" + } + } + } + }, + "branch-alias": { + "dev-master": "2.x-dev", + "dev-main": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Robo\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Davert", + "email": "davert.php@resend.cc" + } + ], + "description": "Modern task runner", + "support": { + "issues": "https://github.com/consolidation/robo/issues", + "source": "https://github.com/consolidation/robo/tree/3.0.10" + }, + "time": "2022-02-21T17:19:14+00:00" + }, + { + "name": "consolidation/self-update", + "version": "2.0.5", + "source": { + "type": "git", + "url": "https://github.com/consolidation/self-update.git", + "reference": "8a64bdd8daf5faa8e85f56534dd99caf928164b3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/self-update/zipball/8a64bdd8daf5faa8e85f56534dd99caf928164b3", + "reference": "8a64bdd8daf5faa8e85f56534dd99caf928164b3", + "shasum": "" + }, + "require": { + "composer/semver": "^3.2", + "php": ">=5.5.0", + "symfony/console": "^2.8 || ^3 || ^4 || ^5 || ^6", + "symfony/filesystem": "^2.5 || ^3 || ^4 || ^5 || ^6" + }, + "bin": [ + "scripts/release" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "SelfUpdate\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alexander Menk", + "email": "menk@mestrona.net" + }, + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + } + ], + "description": "Provides a self:update command for Symfony Console applications.", + "support": { + "issues": "https://github.com/consolidation/self-update/issues", + "source": "https://github.com/consolidation/self-update/tree/2.0.5" + }, + "time": "2022-02-09T22:44:24+00:00" + }, + { + "name": "consolidation/site-alias", + "version": "3.1.7", + "source": { + "type": "git", + "url": "https://github.com/consolidation/site-alias.git", + "reference": "3b6519592c7e8557423f935806cd73adf69ed6c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/site-alias/zipball/3b6519592c7e8557423f935806cd73adf69ed6c7", + "reference": "3b6519592c7e8557423f935806cd73adf69ed6c7", + "shasum": "" + }, + "require": { + "consolidation/config": "^1.2.1 || ^2", + "php": ">=5.5.0", + "symfony/filesystem": "^4.4 || ^5.4 || ^6", + "symfony/finder": "~2.3 || ^3 || ^4.4 || ^5 || ^6", + "webmozart/path-util": "^2.3" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.4.2", + "phpunit/phpunit": ">=7", + "squizlabs/php_codesniffer": "^3", + "symfony/var-dumper": "^4", + "yoast/phpunit-polyfills": "^0.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Consolidation\\SiteAlias\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + }, + { + "name": "Moshe Weitzman", + "email": "weitzman@tejasa.com" + } + ], + "description": "Manage alias records for local and remote sites.", + "support": { + "issues": "https://github.com/consolidation/site-alias/issues", + "source": "https://github.com/consolidation/site-alias/tree/3.1.7" + }, + "time": "2022-10-15T01:21:09+00:00" + }, + { + "name": "consolidation/site-process", + "version": "4.2.1", + "source": { + "type": "git", + "url": "https://github.com/consolidation/site-process.git", + "reference": "ee3bf69001694b2117cc2f96c2ef70d8d45f1234" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/consolidation/site-process/zipball/ee3bf69001694b2117cc2f96c2ef70d8d45f1234", + "reference": "ee3bf69001694b2117cc2f96c2ef70d8d45f1234", + "shasum": "" + }, + "require": { + "consolidation/config": "^1.2.1 || ^2", + "consolidation/site-alias": "^3 || ^4", + "php": ">=7.1.3", + "symfony/console": "^2.8.52 || ^3 || ^4.4 || ^5", + "symfony/process": "^4.3.4 || ^5" + }, + "require-dev": { + "phpunit/phpunit": "^7.5.20 || ^8.5.14", + "squizlabs/php_codesniffer": "^3", + "yoast/phpunit-polyfills": "^0.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.x-dev" + } + }, + "autoload": { + "psr-4": { + "Consolidation\\SiteProcess\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Greg Anderson", + "email": "greg.1.anderson@greenknowe.org" + }, + { + "name": "Moshe Weitzman", + "email": "weitzman@tejasa.com" + } + ], + "description": "A thin wrapper around the Symfony Process Component that allows applications to use the Site Alias library to specify the target for a remote call.", + "support": { + "issues": "https://github.com/consolidation/site-process/issues", + "source": "https://github.com/consolidation/site-process/tree/4.2.1" + }, + "time": "2022-10-18T13:19:35+00:00" + }, + { + "name": "cweagans/composer-patches", + "version": "1.7.2", + "source": { + "type": "git", + "url": "https://github.com/cweagans/composer-patches.git", + "reference": "e9969cfc0796e6dea9b4e52f77f18e1065212871" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cweagans/composer-patches/zipball/e9969cfc0796e6dea9b4e52f77f18e1065212871", + "reference": "e9969cfc0796e6dea9b4e52f77f18e1065212871", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0 || ^2.0", + "php": ">=5.3.0" + }, + "require-dev": { + "composer/composer": "~1.0 || ~2.0", + "phpunit/phpunit": "~4.6" + }, + "type": "composer-plugin", + "extra": { + "class": "cweagans\\Composer\\Patches" + }, + "autoload": { + "psr-4": { + "cweagans\\Composer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Cameron Eagans", + "email": "me@cweagans.net" + } + ], + "description": "Provides a way to patch Composer packages.", + "support": { + "issues": "https://github.com/cweagans/composer-patches/issues", + "source": "https://github.com/cweagans/composer-patches/tree/1.7.2" + }, + "time": "2022-01-25T19:21:20+00:00" + }, + { + "name": "d3/d3", + "version": "v3.5.17", + "dist": { + "type": "zip", + "url": "https://github.com/d3/d3/archive/v3.5.17.zip" + }, + "type": "drupal-library", + "extra": { + "installer-name": "c3" + } + }, + { + "name": "d3v4/d3", + "version": "4.9.1", + "dist": { + "type": "file", + "url": "https://cdnjs.cloudflare.com/ajax/libs/d3/4.9.1/d3.js" + }, + "require": { + "composer/installers": "^1.0 || ^2.0" + }, + "type": "drupal-library", + "extra": { + "installer-name": "d3v4" + } + }, + { + "name": "dflydev/dot-access-data", + "version": "v1.1.0", + "source": { + "type": "git", + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "3fbd874921ab2c041e899d044585a2ab9795df8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/3fbd874921ab2c041e899d044585a2ab9795df8a", + "reference": "3fbd874921ab2c041e899d044585a2ab9795df8a", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-0": { + "Dflydev\\DotAccessData": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" + } + ], + "description": "Given a deep data structure, access data by dot notation.", + "homepage": "https://github.com/dflydev/dflydev-dot-access-data", + "keywords": [ + "access", + "data", + "dot", + "notation" + ], + "support": { + "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/master" + }, + "time": "2017-01-20T21:14:22+00:00" + }, + { + "name": "digit/digit_qa", + "version": "1.17.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/digit_qa.git", + "reference": "27ae21f4194a5a178d829235660d8a65c743297b" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2455/packages/composer/archives/digit/digit_qa.zip?sha=27ae21f4194a5a178d829235660d8a65c743297b", + "reference": "27ae21f4194a5a178d829235660d8a65c743297b", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10", + "drupal/gin": "^3.0@beta", + "drupal/gin_login": ">=1.0.0-rc7", + "drupal/gin_toolbar": "^1.0@beta" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "consolidation/annotated-command": "4.5.6", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-theme", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Custom theme based on Gin Admin Theme for the QA website." + }, + { + "name": "digit/qa_actions", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_actions.git", + "reference": "c3f34ae62778f12f14a14004d42329b7ac983b6e" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2443/packages/composer/archives/digit/qa_actions.zip?sha=c3f34ae62778f12f14a14004d42329b7ac983b6e", + "reference": "c3f34ae62778f12f14a14004d42329b7ac983b6e", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Custom Actions for Quality Assurance operations." + }, + { + "name": "digit/qa_base", + "version": "dev-main", + "dist": { + "type": "path", + "url": "lib/modules/qa_base", + "reference": "75cbb34b2b5e25ba9d6148b214c82f0c8e4209b5" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "type": "drupal-custom-module", + "description": "Base module for QA Website operations", + "transport-options": { + "relative": true + } + }, + { + "name": "digit/qa_codario", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_codario.git", + "reference": "f8756804097a4f28f75200b424424053cb15339d" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2444/packages/composer/archives/digit/qa_codario.zip?sha=f8756804097a4f28f75200b424424053cb15339d", + "reference": "f8756804097a4f28f75200b424424053cb15339d", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Integration between Digit QA Website and Codario tool." + }, + { + "name": "digit/qa_core", + "version": "1.12.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_core.git", + "reference": "8f5b73179e60c09234cad9413782589290dab6a6" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2435/packages/composer/archives/digit/qa_core.zip?sha=8f5b73179e60c09234cad9413782589290dab6a6", + "reference": "8f5b73179e60c09234cad9413782589290dab6a6", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "consolidation/annotated-command": "4.5.6", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Provides core functionality to the website." + }, + { + "name": "digit/qa_endpoints", + "version": "1.7.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_endpoints.git", + "reference": "2d5df3bd50dd601bf6bc98d24758fb598ff39f49" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2445/packages/composer/archives/digit/qa_endpoints.zip?sha=2d5df3bd50dd601bf6bc98d24758fb598ff39f49", + "reference": "2d5df3bd50dd601bf6bc98d24758fb598ff39f49", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Provide custom endpoints to be used for integrations." + }, + { + "name": "digit/qa_package_reviews", + "version": "2.14.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_package_reviews.git", + "reference": "b32aebeadb77a7c7a911c97771592e85a44d15f2" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2446/packages/composer/archives/digit/qa_package_reviews.zip?sha=b32aebeadb77a7c7a911c97771592e85a44d15f2", + "reference": "b32aebeadb77a7c7a911c97771592e85a44d15f2", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "consolidation/annotated-command": "4.5.6", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drush": { + "services": { + "drush.services.yml": "^9" + } + }, + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Package reviews module." + }, + { + "name": "digit/qa_pipelines", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_pipelines.git", + "reference": "799401e075a765428b7e6abd1d35c3f3d5559603" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2447/packages/composer/archives/digit/qa_pipelines.zip?sha=799401e075a765428b7e6abd1d35c3f3d5559603", + "reference": "799401e075a765428b7e6abd1d35c3f3d5559603", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Pipelines customisation for Quality Assurance." + }, + { + "name": "digit/qa_sanitise", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_sanitise.git", + "reference": "647d816d09d3754484aaaf38987df9c5d2a209aa" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2449/packages/composer/archives/digit/qa_sanitise.zip?sha=647d816d09d3754484aaaf38987df9c5d2a209aa", + "reference": "647d816d09d3754484aaaf38987df9c5d2a209aa", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drush": { + "services": { + "drush.services.yml": "^9" + } + }, + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Provides sanitisation for data sensitive fields." + }, + { + "name": "digit/qa_screenshots", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_screenshots.git", + "reference": "fbe26805775c73e681a54aa6f4cc079e7ccedf97" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2450/packages/composer/archives/digit/qa_screenshots.zip?sha=fbe26805775c73e681a54aa6f4cc079e7ccedf97", + "reference": "fbe26805775c73e681a54aa6f4cc079e7ccedf97", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drush": { + "services": { + "drush.services.yml": "^9" + } + }, + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Screenshots for 'projects' entity." + }, + { + "name": "digit/qa_users", + "version": "1.3.8", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_users.git", + "reference": "b5d3f4c04df6a06cc58b47be2383dc59a308cd4c" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2451/packages/composer/archives/digit/qa_users.zip?sha=b5d3f4c04df6a06cc58b47be2383dc59a308cd4c", + "reference": "b5d3f4c04df6a06cc58b47be2383dc59a308cd4c", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Integration with user information." + }, + { + "name": "digit/qa_vcs", + "version": "1.14.1", + "source": { + "type": "git", + "url": "https://git.fpfis.tech.ec.europa.eu/digit/quality-assurance/packages/qa_vcs.git", + "reference": "dcc094269014f36e24e8a83d4a5963564a1993d9" + }, + "dist": { + "type": "zip", + "url": "https://git.fpfis.tech.ec.europa.eu/api/v4/projects/2452/packages/composer/archives/digit/qa_vcs.zip?sha=dcc094269014f36e24e8a83d4a5963564a1993d9", + "reference": "dcc094269014f36e24e8a83d4a5963564a1993d9", + "shasum": "" + }, + "require": { + "drupal/core": "^9.3 || ^10" + }, + "require-dev": { + "behat/mink": "^1.9", + "composer/installers": "^2.0", + "drupal/core-composer-scaffold": "^9.3", + "ec-europa/toolkit": "^8.6", + "openeuropa/task-runner-drupal-project-symlink": "^1.0@beta", + "phpspec/prophecy-phpunit": "^2", + "symfony/phpunit-bridge": "^6.0" + }, + "type": "drupal-module", + "extra": { + "drupal-scaffold": { + "locations": { + "web-root": "web/" + }, + "allowed-packages": [ + "drupal/core" + ] + }, + "installer-paths": { + "web/core": [ + "type:drupal-core" + ], + "web/libraries/{$name}": [ + "type:drupal-library" + ], + "web/themes/custom/{$name}": [ + "type:drupal-custom-theme" + ], + "web/modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "web/themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "web/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "web/profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "web/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ] + } + }, + "scripts": { + "post-update-cmd": [ + "./vendor/bin/run drupal:symlink-project", + "test ! -f ./vendor/bin/grumphp || ./vendor/bin/grumphp git:deinit" + ] + }, + "description": "Integration with GitHub and GitLab api." + }, + { + "name": "doctrine/annotations", + "version": "1.13.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/annotations.git", + "reference": "648b0343343565c4a056bfc8392201385e8d89f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/648b0343343565c4a056bfc8392201385e8d89f0", + "reference": "648b0343343565c4a056bfc8392201385e8d89f0", + "shasum": "" + }, + "require": { + "doctrine/lexer": "1.*", + "ext-tokenizer": "*", + "php": "^7.1 || ^8.0", + "psr/cache": "^1 || ^2 || ^3" + }, + "require-dev": { + "doctrine/cache": "^1.11 || ^2.0", + "doctrine/coding-standard": "^6.0 || ^8.1", + "phpstan/phpstan": "^1.4.10 || ^1.8.0", + "phpunit/phpunit": "^7.5 || ^8.0 || ^9.1.5", + "symfony/cache": "^4.4 || ^5.2", + "vimeo/psalm": "^4.10" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Docblock Annotations Parser", + "homepage": "https://www.doctrine-project.org/projects/annotations.html", + "keywords": [ + "annotations", + "docblock", + "parser" + ], + "support": { + "issues": "https://github.com/doctrine/annotations/issues", + "source": "https://github.com/doctrine/annotations/tree/1.13.3" + }, + "time": "2022-07-02T10:48:51+00:00" + }, + { + "name": "doctrine/lexer", + "version": "1.2.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", + "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9.0", + "phpstan/phpstan": "^1.3", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "vimeo/psalm": "^4.11" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "keywords": [ + "annotations", + "docblock", + "lexer", + "parser", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/1.2.3" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2022-02-28T11:07:21+00:00" + }, + { + "name": "doctrine/reflection", + "version": "1.2.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/reflection.git", + "reference": "1034e5e71f89978b80f9c1570e7226f6c3b9b6fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/reflection/zipball/1034e5e71f89978b80f9c1570e7226f6c3b9b6fb", + "reference": "1034e5e71f89978b80f9c1570e7226f6c3b9b6fb", + "shasum": "" + }, + "require": { + "doctrine/annotations": "^1.0", + "ext-tokenizer": "*", + "php": "^7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": "<2.9" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "doctrine/common": "^3.3", + "phpstan/phpstan": "^1.4.10", + "phpstan/phpstan-phpunit": "^1", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "lib/Doctrine/Common" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "The Doctrine Reflection project is a simple library used by the various Doctrine projects which adds some additional functionality on top of the reflection functionality that comes with PHP. It allows you to get the reflection information about classes, methods and properties statically.", + "homepage": "https://www.doctrine-project.org/projects/reflection.html", + "keywords": [ + "reflection", + "static" + ], + "support": { + "issues": "https://github.com/doctrine/reflection/issues", + "source": "https://github.com/doctrine/reflection/tree/1.2.3" + }, + "abandoned": "roave/better-reflection", + "time": "2022-05-31T18:46:25+00:00" + }, + { + "name": "drupal-ckeditor-libraries-group/codesnippet", + "version": "4.20.0", + "source": { + "type": "git", + "url": "https://github.com/drupal-ckeditor-libraries-group/codesnippet.git", + "reference": "1d46bcee1f2c437c6c492d5f550790698aa8244b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/drupal-ckeditor-libraries-group/codesnippet/zipball/1d46bcee1f2c437c6c492d5f550790698aa8244b", + "reference": "1d46bcee1f2c437c6c492d5f550790698aa8244b", + "shasum": "" + }, + "type": "drupal-library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0-or-later", + "LGPL-2.1-or-later", + "MPL-1.1" + ], + "description": "CKEditor 4 codesnippet plugin", + "homepage": "https://ckeditor.com/cke4/addon/codesnippet", + "keywords": [ + "CKEditor", + "codesnippet", + "plugin" + ], + "support": { + "issues": "https://github.com/ckeditor/ckeditor4/issues", + "source": "https://github.com/ckeditor/ckeditor4/tree/master/plugins/codesnippet" + }, + "time": "2022-01-25T09:28:39+00:00" + }, + { + "name": "drupal/admin_toolbar", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/admin_toolbar.git", + "reference": "3.2.1" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/admin_toolbar-3.2.1.zip", + "reference": "3.2.1", + "shasum": "7a4bfb716e269be4ca03b7f04e29e4439ec6cf93" + }, + "require": { + "drupal/core": "^8.8.0 || ^9.0" + }, + "require-dev": { + "drupal/admin_toolbar_tools": "*" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "3.2.1", + "datestamp": "1665044276", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Wilfrid Roze (eme)", + "homepage": "https://www.drupal.org/u/eme", + "role": "Maintainer" + }, + { + "name": "Romain Jarraud (romainj)", + "homepage": "https://www.drupal.org/u/romainj", + "role": "Maintainer" + }, + { + "name": "Adrian Cid Almaguer (adriancid)", + "homepage": "https://www.drupal.org/u/adriancid", + "email": "adriancid@gmail.com", + "role": "Maintainer" + }, + { + "name": "Mohamed Anis Taktak (matio89)", + "homepage": "https://www.drupal.org/u/matio89", + "role": "Maintainer" + }, + { + "name": "matio89", + "homepage": "https://www.drupal.org/user/2320090" + }, + { + "name": "Musa.thomas", + "homepage": "https://www.drupal.org/user/1213824" + }, + { + "name": "romainj", + "homepage": "https://www.drupal.org/user/370706" + } + ], + "description": "Provides a drop-down menu interface to the core Drupal Toolbar.", + "homepage": "http://drupal.org/project/admin_toolbar", + "keywords": [ + "Drupal", + "Toolbar" + ], + "support": { + "source": "https://git.drupalcode.org/project/admin_toolbar", + "issues": "https://www.drupal.org/project/issues/admin_toolbar" + } + }, + { + "name": "drupal/autologout", + "version": "4.5.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/autologout.git", + "reference": "8.x-1.4" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/autologout-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "f751062f463d0b52df81764f67cee3a0be97825e" + }, + "require": { + "drupal/core": "^9.2 || ^10" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.4", + "datestamp": "1658168199", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "AjitS", + "homepage": "https://www.drupal.org/user/981944" + }, + { + "name": "AjK", + "homepage": "https://www.drupal.org/user/39030" + }, + { + "name": "boshtian", + "homepage": "https://www.drupal.org/user/1773456" + }, + { + "name": "dandrews", + "homepage": "https://www.drupal.org/user/2014490" + }, + { + "name": "darksnow", + "homepage": "https://www.drupal.org/user/391915" + }, + { + "name": "japerry", + "homepage": "https://www.drupal.org/user/45640" + }, + { + "name": "johnennew", + "homepage": "https://www.drupal.org/user/1150042" + }, + { + "name": "jrglasgow", + "homepage": "https://www.drupal.org/user/36590" + }, + { + "name": "kmasood", + "homepage": "https://www.drupal.org/user/1262860" + }, + { + "name": "levelos", + "homepage": "https://www.drupal.org/user/54135" + }, + { + "name": "prabeen.giri", + "homepage": "https://www.drupal.org/user/913078" + }, + { + "name": "str8", + "homepage": "https://www.drupal.org/user/2865063" + } + ], + "description": "Adds automated timed logout.", + "homepage": "http://drupal.org/project/autologout", + "support": { + "source": "https://git.drupalcode.org/project/autologout" + } + }, + { + "name": "drupal/better_exposed_filters", + "version": "6.0.2", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/better_exposed_filters.git", + "reference": "6.0.2" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/better_exposed_filters-6.0.2.zip", + "reference": "6.0.2", + "shasum": "e06e8f88fab14942e4d3f71faaa64a30f136792c" + }, + "require": { + "drupal/core": "^9 || ^10", + "drupal/jquery_ui": "^1.4", + "drupal/jquery_ui_datepicker": "^1.2", + "drupal/jquery_ui_slider": "^1.1", + "drupal/jquery_ui_touch_punch": "^1.0" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "6.0.2", + "datestamp": "1666017720", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Mike Keran", + "homepage": "https://www.drupal.org/u/mikeker" + }, + { + "name": "Martin Keereman", + "homepage": "https://www.drupal.org/u/etroid" + }, + { + "name": "Neslee Canil Pinto", + "homepage": "https://www.drupal.org/u/neslee-canil-pinto" + }, + { + "name": "mikeker", + "homepage": "https://www.drupal.org/user/192273" + }, + { + "name": "Neslee Canil Pinto", + "homepage": "https://www.drupal.org/user/3580850" + }, + { + "name": "podarok", + "homepage": "https://www.drupal.org/user/116002" + }, + { + "name": "rlhawk", + "homepage": "https://www.drupal.org/user/352283" + } + ], + "description": "Replaces the Views default single- or multi-select boxes with more advanced options.", + "homepage": "https://www.drupal.org/project/better_exposed_filters", + "support": { + "source": "https://git.drupalcode.org/project/better_exposed_filters", + "issues": "https://www.drupal.org/project/issues/better_exposed_filters" + } + }, + { + "name": "drupal/cas", + "version": "1.7.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/cas.git", + "reference": "8.x-1.7" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/cas-8.x-1.7.zip", + "reference": "8.x-1.7", + "shasum": "a8f7689f1e610bf3d9390d5a2a97eaa6911842d1" + }, + "require": { + "drupal/core": "^8 || ^9", + "drupal/externalauth": "^1.2" + }, + "require-dev": { + "drupal/cas_mock_server": "^1.0||dev-0.x" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.7", + "datestamp": "1592250922", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + }, + "drush": { + "services": { + "drush.services.yml": "^9" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0+" + ], + "authors": [ + { + "name": "David Metzler", + "homepage": "https://www.drupal.org/u/metzlerd", + "role": "Maintainer" + }, + { + "name": "Brian Osborne", + "homepage": "https://www.drupal.org/u/bkosborne", + "role": "Maintainer" + }, + { + "name": "Tim Yale", + "homepage": "https://www.drupal.org/u/yalet", + "role": "Maintainer" + }, + { + "name": "See other contributors", + "homepage": "https://www.drupal.org/node/78967/committers", + "role": "contributor" + } + ], + "description": "Provides CAS authentication for Drupal.", + "homepage": "http://drupal.org/project/cas", + "support": { + "source": "https://git.drupalcode.org/project/cas", + "issues": "http://drupal.org/project/issues/cas", + "irc": "irc://irc.freenode.org/drupal-contribute" + } + }, + { + "name": "drupal/cas_attributes", + "version": "2.0.0-beta3", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/cas_attributes.git", + "reference": "2.0.0-beta3" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/cas_attributes-2.0.0-beta3.zip", + "reference": "2.0.0-beta3", + "shasum": "e76b90f025b88e5ed43556f23ac48045fb9488b5" + }, + "require": { + "drupal/cas": "^1.7 || ^2.0@beta", + "drupal/core": "^8.8 || ^9", + "drupal/token": "*" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "2.0.0-beta3", + "datestamp": "1617032053", + "security-coverage": { + "status": "not-covered", + "message": "Beta releases are not covered by Drupal security advisories." + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0+" + ], + "authors": [ + { + "name": "Olarin", + "homepage": "https://www.drupal.org/user/334773" + }, + { + "name": "bfroehle", + "homepage": "https://www.drupal.org/user/381391" + }, + { + "name": "bkosborne", + "homepage": "https://www.drupal.org/user/788032" + }, + { + "name": "metzlerd", + "homepage": "https://www.drupal.org/user/32494" + }, + { + "name": "redndahead", + "homepage": "https://www.drupal.org/user/160320" + }, + { + "name": "yalet", + "homepage": "https://www.drupal.org/user/2413764" + } + ], + "description": "Provides tokens for CAS attributes and an interface for token replacement in user account fields as well as advanced role mapping capability.", + "homepage": "https://www.drupal.org/project/cas_attributes", + "keywords": [ + "CAS", + "Drupal", + "single sign-on" + ], + "support": { + "source": "https://git.drupalcode.org/project/cas_attributes", + "issues": "https://www.drupal.org/project/issues/cas_attributes" + } + }, + { + "name": "drupal/charts", + "version": "5.0.3", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/charts.git", + "reference": "5.0.3" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/charts-5.0.3.zip", + "reference": "5.0.3", + "shasum": "8add98474c6313539ab7d19bd1b72474ee27e180" + }, + "require": { + "drupal/core": "^9.2 || ^10" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "5.0.3", + "datestamp": "1663595977", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "andileco", + "homepage": "https://www.drupal.org/user/2054544" + }, + { + "name": "nikathone", + "homepage": "https://www.drupal.org/user/2421800" + }, + { + "name": "quicksketch", + "homepage": "https://www.drupal.org/user/35821" + } + ], + "description": "A charting API for Drupal that provides chart elements and integration with Views.", + "homepage": "https://www.drupal.org/project/charts", + "support": { + "source": "https://git.drupalcode.org/project/charts" + } + }, + { + "name": "drupal/ckeditor", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/ckeditor.git", + "reference": "1.0.1" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/ckeditor-1.0.1.zip", + "reference": "1.0.1", + "shasum": "d3dd8bfb2301b749599ba48cf76208becdf0eeb3" + }, + "require": { + "drupal/core": "^9.4 || ^10" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "1.0.1", + "datestamp": "1662977541", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "dczepierga", + "homepage": "https://www.drupal.org/user/911466" + }, + { + "name": "hass", + "homepage": "https://www.drupal.org/user/85918" + }, + { + "name": "jcisio", + "homepage": "https://www.drupal.org/user/210762" + }, + { + "name": "Jorrit", + "homepage": "https://www.drupal.org/user/161217" + }, + { + "name": "lauriii", + "homepage": "https://www.drupal.org/user/1078742" + }, + { + "name": "Magnus", + "homepage": "https://www.drupal.org/user/73919" + }, + { + "name": "mkesicki", + "homepage": "https://www.drupal.org/user/922884" + }, + { + "name": "nod_", + "homepage": "https://www.drupal.org/user/598310" + }, + { + "name": "p.wiaderny", + "homepage": "https://www.drupal.org/user/2956619" + }, + { + "name": "vokiel", + "homepage": "https://www.drupal.org/user/2793801" + }, + { + "name": "Wim Leers", + "homepage": "https://www.drupal.org/user/99777" + }, + { + "name": "wwalc", + "homepage": "https://www.drupal.org/user/184556" + }, + { + "name": "xjm", + "homepage": "https://www.drupal.org/user/65776" + } + ], + "description": "WYSIWYG editing for rich text fields using CKEditor.", + "homepage": "https://www.drupal.org/project/ckeditor", + "support": { + "source": "https://git.drupalcode.org/project/ckeditor" + } + }, + { + "name": "drupal/codesnippet", + "version": "1.8.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/codesnippet.git", + "reference": "8.x-1.8" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/codesnippet-8.x-1.8.zip", + "reference": "8.x-1.8", + "shasum": "cea22ab4910f1a095fce942f323490bf627bfa8d" + }, + "require": { + "drupal-ckeditor-libraries-group/codesnippet": "^4.5.11", + "drupal/ckeditor": "*", + "drupal/core": "^9.2 || ^10" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.8", + "datestamp": "1663847734", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Kevin Quillen (kevinquillen)", + "homepage": "https://www.drupal.org/u/kevinquillen", + "role": "Maintainer" + }, + { + "name": "kevinquillen", + "homepage": "https://www.drupal.org/user/317279" + }, + { + "name": "szloredan", + "homepage": "https://www.drupal.org/user/3531611" + } + ], + "description": "Adds the CodeSnippet plugin to CKEditor.", + "homepage": "http://drupal.org/project/codesnippet", + "keywords": [ + "Drupal" + ], + "support": { + "source": "http://cgit.drupalcode.org/codesnippet", + "issues": "http://drupal.org/project/issues/codesnippet" + } + }, + { + "name": "drupal/coffee", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/coffee.git", + "reference": "8.x-1.2" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/coffee-8.x-1.2.zip", + "reference": "8.x-1.2", + "shasum": "3c3f251004ec0d0995a86407592f7f54872ebe87" + }, + "require": { + "drupal/core": "^8 || ^9" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.2", + "datestamp": "1617351412", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + }, + "branch-alias": { + "dev-8.x-1.x": "8.1.x-dev" + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0+" + ], + "authors": [ + { + "name": "Michael Mol", + "homepage": "https://www.drupal.org/u/michaelmol", + "role": "Maintainer" + }, + { + "name": "Marco", + "homepage": "https://www.drupal.org/u/willzyx", + "role": "Maintainer" + }, + { + "name": "Oliver Köhler", + "homepage": "https://www.drupal.org/u/nebel54", + "role": "Maintainer" + }, + { + "name": "Alli Price", + "homepage": "https://www.drupal.org/u/heylookalive", + "role": "Maintainer" + }, + { + "name": "See other contributors", + "homepage": "https://www.drupal.org/node/1356930/committers", + "role": "contributor" + } + ], + "description": "Provides an Alfred like search box to navigate within your site.", + "homepage": "https://drupal.org/project/coffee", + "support": { + "source": "https://git.drupalcode.org/project/coffee", + "issues": "https://drupal.org/project/issues/coffee", + "irc": "irc://irc.freenode.org/drupal-contribute" + } + }, + { + "name": "drupal/color", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/color.git", + "reference": "1.0.3" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/color-1.0.3.zip", + "reference": "1.0.3", + "shasum": "b88ab527bed65b67eec555ee4b17e633c19f3194" + }, + "require": { + "drupal/core": "^9.4 || ^10" + }, + "require-dev": { + "drupal/bartik": "^1.0" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "1.0.3", + "datestamp": "1663234622", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "andypost", + "homepage": "https://www.drupal.org/user/118908" + }, + { + "name": "kostyashupenko", + "homepage": "https://www.drupal.org/user/3281537" + } + ], + "description": "Allows users to change the color scheme of compatible themes", + "homepage": "https://www.drupal.org/project/color", + "support": { + "source": "https://git.drupalcode.org/project/color" + } + }, + { + "name": "drupal/conditional_fields", + "version": "4.0.0-alpha1", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/conditional_fields.git", + "reference": "4.0.0-alpha1" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/conditional_fields-4.0.0-alpha1.zip", + "reference": "4.0.0-alpha1", + "shasum": "2e5f493f1ae09494857f58fde97715cdb7e21553" + }, + "require": { + "drupal/core": "^8 || ^9" + }, + "require-dev": { + "drupal/paragraphs": "*" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "4.0.0-alpha1", + "datestamp": "1621481938", + "security-coverage": { + "status": "not-covered", + "message": "Project has not opted into security advisory coverage!" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "OlgaRabodzei", + "homepage": "https://www.drupal.org/user/3389198" + }, + { + "name": "colan", + "homepage": "https://www.drupal.org/user/58704" + }, + { + "name": "ergonlogic", + "homepage": "https://www.drupal.org/user/368613" + }, + { + "name": "geek-merlin", + "homepage": "https://www.drupal.org/user/229048" + }, + { + "name": "itsekhmistro", + "homepage": "https://www.drupal.org/user/928152" + }, + { + "name": "mparker17", + "homepage": "https://www.drupal.org/user/536298" + }, + { + "name": "peterpoe", + "homepage": "https://www.drupal.org/user/55674" + }, + { + "name": "thalles", + "homepage": "https://www.drupal.org/user/3589086" + } + ], + "description": "Define dependencies between fields based on their states and values.", + "homepage": "https://www.drupal.org/project/conditional_fields", + "support": { + "source": "https://git.drupalcode.org/project/conditional_fields" + } + }, + { + "name": "drupal/config_filter", + "version": "1.10.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/config_filter.git", + "reference": "8.x-1.10" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/config_filter-8.x-1.10.zip", + "reference": "8.x-1.10", + "shasum": "c5002f2b9dece3c684db754123936d1388b80b8d" + }, + "require": { + "drupal/core": "^8.8 || ^9 || ^10" + }, + "suggest": { + "drupal/config_split": "Split site configuration for different environments." + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.10", + "datestamp": "1656936763", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Fabian Bircher", + "homepage": "https://www.drupal.org/u/bircher", + "email": "opensource@fabianbircher.com", + "role": "Maintainer" + }, + { + "name": "Nuvole Web", + "homepage": "http://nuvole.org", + "email": "info@nuvole.org", + "role": "Maintainer" + }, + { + "name": "pescetti", + "homepage": "https://www.drupal.org/user/436244" + } + ], + "description": "Config Filter allows other modules to interact with a ConfigStorage through filter plugins.", + "homepage": "https://www.drupal.org/project/config_filter", + "keywords": [ + "Drupal", + "configuration", + "configuration management" + ], + "support": { + "source": "https://git.drupalcode.org/project/config_filter", + "issues": "https://www.drupal.org/project/issues/config_filter", + "slack": "https://drupal.slack.com/archives/C45342CDD" + } + }, + { + "name": "drupal/config_ignore", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/config_ignore.git", + "reference": "8.x-2.3" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/config_ignore-8.x-2.3.zip", + "reference": "8.x-2.3", + "shasum": "2e1f07a455275fb6637909921a8915646601fc00" + }, + "require": { + "drupal/config_filter": "^1 || ^2", + "drupal/core": "^8 || ^9" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-2.3", + "datestamp": "1608306489", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Tommy Lynge Jørgensen", + "homepage": "https://www.drupal.org/u/tlyngej", + "email": "tlyngej@gmail.com", + "role": "Maintainer" + }, + { + "name": "Fabian Bircher", + "homepage": "https://www.drupal.org/u/bircher", + "role": "Maintainer" + }, + { + "name": "tlyngej", + "homepage": "https://www.drupal.org/user/413139" + } + ], + "description": "Ignore certain configuration during import.", + "homepage": "http://drupal.org/project/config_ignore", + "support": { + "source": "https://git.drupalcode.org/project/config_ignore", + "issues": "http://drupal.org/project/config_ignore", + "irc": "irc://irc.freenode.org/drupal-contribute" + } + }, + { + "name": "drupal/config_split", + "version": "2.0.0-rc4", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/config_split.git", + "reference": "2.0.0-rc4" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/config_split-2.0.0-rc4.zip", + "reference": "2.0.0-rc4", + "shasum": "d4c06efbadd34793b0c9b71772162057afa58111" + }, + "require": { + "drupal/core": "^8.8 || ^9 || ^10" + }, + "conflict": { + "drush/drush": "<10" + }, + "require-dev": { + "drupal/config_filter": "^1||^2" + }, + "suggest": { + "drupal/chosen": "Chosen uses the Chosen jQuery plugin to make the