From aef25827604d9f6a8e9620ab3de5e9a9ac7d0209 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Fri, 4 Oct 2024 14:57:31 +0200 Subject: [PATCH 01/14] Added the modules: - drupal/next - drupal/graphql - drupal/graphql_compose --- composer.json | 3 + composer.lock | 1760 +++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 1576 insertions(+), 187 deletions(-) diff --git a/composer.json b/composer.json index 408b406b4..4c49e0b02 100644 --- a/composer.json +++ b/composer.json @@ -127,6 +127,8 @@ "drupal/gin": "^3.0@RC", "drupal/gin_login": "^2.1", "drupal/gin_toolbar": "^1.0@RC", + "drupal/graphql": "^4.9", + "drupal/graphql_compose": "^2.2", "drupal/handy_cache_tags": "^1.4", "drupal/health_check": "^3.1", "drupal/honeypot": "^2.1", @@ -140,6 +142,7 @@ "drupal/metatag": "^2.0", "drupal/multiple_fields_remove_button": "^2.2", "drupal/multivalue_form_element": "^1.0@beta", + "drupal/next": "^1.6", "drupal/openapi": "^2.1", "drupal/openapi_rest": "^2.0@RC", "drupal/openapi_ui_swagger": "^1.0", diff --git a/composer.lock b/composer.lock index c5528dad7..8f8c67cd1 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "1643f03442e2f646da90965e93bb157c", + "content-hash": "66b70e07beafebf8f3d5cd2b157b298e", "packages": [ { "name": "amazeeio/drupal_integrations", @@ -1318,6 +1318,73 @@ }, "time": "2023-01-05T11:28:13+00:00" }, + { + "name": "defuse/php-encryption", + "version": "v2.4.0", + "source": { + "type": "git", + "url": "https://github.com/defuse/php-encryption.git", + "reference": "f53396c2d34225064647a05ca76c1da9d99e5828" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/defuse/php-encryption/zipball/f53396c2d34225064647a05ca76c1da9d99e5828", + "reference": "f53396c2d34225064647a05ca76c1da9d99e5828", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "paragonie/random_compat": ">= 2", + "php": ">=5.6.0" + }, + "require-dev": { + "phpunit/phpunit": "^5|^6|^7|^8|^9|^10", + "yoast/phpunit-polyfills": "^2.0.0" + }, + "bin": [ + "bin/generate-defuse-key" + ], + "type": "library", + "autoload": { + "psr-4": { + "Defuse\\Crypto\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Hornby", + "email": "taylor@defuse.ca", + "homepage": "https://defuse.ca/" + }, + { + "name": "Scott Arciszewski", + "email": "info@paragonie.com", + "homepage": "https://paragonie.com" + } + ], + "description": "Secure PHP Encryption Library", + "keywords": [ + "aes", + "authenticated encryption", + "cipher", + "crypto", + "cryptography", + "encrypt", + "encryption", + "openssl", + "security", + "symmetric key cryptography" + ], + "support": { + "issues": "https://github.com/defuse/php-encryption/issues", + "source": "https://github.com/defuse/php-encryption/tree/v2.4.0" + }, + "time": "2023-06-19T06:10:36+00:00" + }, { "name": "dekor/php-array-table", "version": "2.0", @@ -1888,6 +1955,97 @@ ], "time": "2024-05-22T20:47:39+00:00" }, + { + "name": "doctrine/inflector", + "version": "2.0.10", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/5817d0659c5b50c9b950feb9af7b9668e2c436bc", + "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^11.0", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.3", + "phpunit/phpunit": "^8.5 || ^9.5", + "vimeo/psalm": "^4.25 || ^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" + } + }, + "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": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "keywords": [ + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" + ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.0.10" + }, + "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%2Finflector", + "type": "tidelift" + } + ], + "time": "2024-02-18T20:23:39+00:00" + }, { "name": "doctrine/instantiator", "version": "1.5.0", @@ -2954,6 +3112,54 @@ "issues": "https://www.drupal.org/project/issues/config_translation_po" } }, + { + "name": "drupal/consumers", + "version": "1.19.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/consumers.git", + "reference": "8.x-1.19" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/consumers-8.x-1.19.zip", + "reference": "8.x-1.19", + "shasum": "3af0f9866524c40e78924343c319720e1d17c2ef" + }, + "require": { + "drupal/core": "^9.5 || ^10 || ^11" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.19", + "datestamp": "1721753030", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0+" + ], + "authors": [ + { + "name": "e0ipso", + "homepage": "https://www.drupal.org/user/550110" + }, + { + "name": "eojthebrave", + "homepage": "https://www.drupal.org/user/79230" + } + ], + "description": "Declare all the consumers of your API.", + "homepage": "https://www.drupal.org/project/consumers", + "support": { + "source": "https://git.drupalcode.org/project/consumers" + } + }, { "name": "drupal/content_lock", "version": "2.3.0", @@ -3612,6 +3818,63 @@ "source": "https://git.drupalcode.org/project/date_range_formatter" } }, + { + "name": "drupal/decoupled_router", + "version": "2.0.5", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/decoupled_router.git", + "reference": "2.0.5" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/decoupled_router-2.0.5.zip", + "reference": "2.0.5", + "shasum": "0899f6331358aac1476e72fc60a8f03d5654c654" + }, + "require": { + "drupal/core": "^9.5 || ^10 || ^11", + "php": ">=8.1" + }, + "require-dev": { + "drupal/redirect": "dev-1.x" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "2.0.5", + "datestamp": "1720638599", + "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": "Mateu Aguiló Bosch", + "homepage": "https://www.drupal.org/user/103796", + "email": "mateu.aguilo.bosch@gmail.com" + }, + { + "name": "e0ipso", + "homepage": "https://www.drupal.org/user/550110" + }, + { + "name": "mglaman", + "homepage": "https://www.drupal.org/user/2416470" + } + ], + "description": "Provides an endpoint that will help you resolve path aliases and redirects for entity related routes.", + "homepage": "https://www.drupal.org/project/decoupled_router", + "support": { + "source": "https://git.drupalcode.org/project/decoupled_router" + } + }, { "name": "drupal/default_content", "version": "2.0.0-alpha2", @@ -4569,27 +4832,40 @@ ] }, { - "name": "drupal/handy_cache_tags", - "version": "1.4.0", + "name": "drupal/graphql", + "version": "4.9.0", "source": { "type": "git", - "url": "https://git.drupalcode.org/project/handy_cache_tags.git", - "reference": "8.x-1.4" + "url": "https://git.drupalcode.org/project/graphql.git", + "reference": "8.x-4.9" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/handy_cache_tags-8.x-1.4.zip", - "reference": "8.x-1.4", - "shasum": "cf9fd07629949fdda3e3ff77c68265149a7c4ffd" + "url": "https://ftp.drupal.org/files/projects/graphql-8.x-4.9.zip", + "reference": "8.x-4.9", + "shasum": "8045e8f07e82a55f229235bb614ba7df87e718ef" }, "require": { - "drupal/core": "^8 || ^9 || ^10" + "drupal/core": "^10.2 || ^11", + "drupal/typed_data": "^1.0 || ^2.0", + "php": ">=8.1", + "webonyx/graphql-php": "^14.8.0" + }, + "require-dev": { + "drupal/node-node": "*", + "drupal/redirect": "^1.0", + "jangregor/phpstan-prophecy": "^1.0.0", + "mglaman/phpstan-drupal": "^1.1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.11.2", + "phpstan/phpstan-deprecation-rules": "^1.0.0", + "phpstan/phpstan-phpunit": "^1.0.0" }, "type": "drupal-module", "extra": { "drupal": { - "version": "8.x-1.4", - "datestamp": "1664207912", + "version": "8.x-4.9", + "datestamp": "1726057421", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4598,43 +4874,95 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0-or-later" + "GPL-2.0+" ], "authors": [ { - "name": "eiriksm", - "homepage": "https://www.drupal.org/user/1014468" + "name": "fubhy", + "homepage": "https://www.drupal.org/user/761344" + }, + { + "name": "hideaway", + "homepage": "https://www.drupal.org/user/741876" + }, + { + "name": "joaogarin", + "homepage": "https://www.drupal.org/user/612814" + }, + { + "name": "kingdutch", + "homepage": "https://www.drupal.org/user/1868952" + }, + { + "name": "klausi", + "homepage": "https://www.drupal.org/user/262198" + }, + { + "name": "luigisa", + "homepage": "https://www.drupal.org/user/1022312" + }, + { + "name": "pmelab", + "homepage": "https://www.drupal.org/user/555322" } ], - "description": "Provides some handy cache tags for developers.", - "homepage": "https://www.drupal.org/project/handy_cache_tags", + "description": "Exposes your Drupal data model through a GraphQL schema.", + "homepage": "http://drupal.org/project/graphql", "support": { - "source": "https://git.drupalcode.org/project/handy_cache_tags" + "source": "https://git.drupalcode.org/project/graphql" } }, { - "name": "drupal/health_check", - "version": "3.1.0", + "name": "drupal/graphql_compose", + "version": "2.2.1", "source": { "type": "git", - "url": "https://git.drupalcode.org/project/health_check.git", - "reference": "3.1.0" + "url": "https://git.drupalcode.org/project/graphql_compose.git", + "reference": "2.2.1" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/health_check-3.1.0.zip", - "reference": "3.1.0", - "shasum": "7c72666fa1c0c688f7f27f5cad2a0e29a934d5d0" + "url": "https://ftp.drupal.org/files/projects/graphql_compose-2.2.1.zip", + "reference": "2.2.1", + "shasum": "2293a62f322a109f7d38d9549769bcaa65137d2e" }, "require": { - "drupal/core": "^9.4 || ^10 || ^11", - "php": "^8.0" + "doctrine/inflector": "^2", + "drupal/core": "^10.1 || ^11", + "drupal/graphql": "^4.8", + "php": "^8.1" + }, + "require-dev": { + "drupal/address": "^2", + "drupal/backward_compatibility": "^1", + "drupal/block_field": "^1", + "drupal/core-layout_builder": "*", + "drupal/double_field": "^4", + "drupal/dynamic_entity_reference": "^3", + "drupal/eck": "^2", + "drupal/geofield": "^1", + "drupal/graphql_compose_blocks": "*", + "drupal/graphql_compose_edges": "*", + "drupal/graphql_compose_layouts": "*", + "drupal/graphql_compose_routes": "*", + "drupal/layout_paragraphs": "2.0.x-dev@dev", + "drupal/menu_item_extras": "3.0.x-dev@dev", + "drupal/metatag": "^2", + "drupal/paragraphs": "1.x-dev@dev", + "drupal/redirect": "^1", + "drupal/schema_metatag": "^3", + "drupal/search_api": "^1", + "drupal/social_media_links": "2.x-dev@dev", + "drupal/svg_image": "^3", + "drupal/token": "^1", + "drupal/triples_field": "^1", + "drupal/viewfield": "^3" }, "type": "drupal-module", "extra": { "drupal": { - "version": "3.1.0", - "datestamp": "1718772797", + "version": "2.2.1", + "datestamp": "1726380157", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -4643,50 +4971,144 @@ }, "notification-url": "https://packages.drupal.org/8/downloads", "license": [ - "GPL-2.0-or-later" + "GPL-2.0+" ], "authors": [ { - "name": "back-2-95", - "homepage": "https://www.drupal.org/user/327328" + "name": "almunnings", + "homepage": "https://www.drupal.org/user/2251362" }, { - "name": "bfr", - "homepage": "https://www.drupal.org/user/369262" + "name": "jmolivas", + "homepage": "https://www.drupal.org/user/678770" } ], - "description": "Health check for load balancers", - "homepage": "https://www.drupal.org/project/health_check", + "description": "Toolkit for generating GraphQL schemas in Drupal.", + "homepage": "http://drupal.org/project/graphql_compose", "support": { - "source": "https://git.drupalcode.org/project/health_check", - "issues": "https://www.drupal.org/project/issues/health_check" + "source": "http://cgit.drupalcode.org/graphql_compose", + "issues": "https://www.drupal.org/project/issues/graphql_compose" } }, { - "name": "drupal/honeypot", - "version": "2.1.4", + "name": "drupal/handy_cache_tags", + "version": "1.4.0", "source": { "type": "git", - "url": "https://git.drupalcode.org/project/honeypot.git", - "reference": "2.1.4" + "url": "https://git.drupalcode.org/project/handy_cache_tags.git", + "reference": "8.x-1.4" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/honeypot-2.1.4.zip", - "reference": "2.1.4", - "shasum": "adf76c3520c0e458177dbe6d638aa2d6ae40a95b" + "url": "https://ftp.drupal.org/files/projects/handy_cache_tags-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "cf9fd07629949fdda3e3ff77c68265149a7c4ffd" }, "require": { - "drupal/core": "^9.2 || ^10" - }, - "require-dev": { - "drupal/rules": "^3.x-dev" + "drupal/core": "^8 || ^9 || ^10" }, "type": "drupal-module", "extra": { "drupal": { - "version": "2.1.4", - "datestamp": "1723489062", + "version": "8.x-1.4", + "datestamp": "1664207912", + "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": "eiriksm", + "homepage": "https://www.drupal.org/user/1014468" + } + ], + "description": "Provides some handy cache tags for developers.", + "homepage": "https://www.drupal.org/project/handy_cache_tags", + "support": { + "source": "https://git.drupalcode.org/project/handy_cache_tags" + } + }, + { + "name": "drupal/health_check", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/health_check.git", + "reference": "3.1.0" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/health_check-3.1.0.zip", + "reference": "3.1.0", + "shasum": "7c72666fa1c0c688f7f27f5cad2a0e29a934d5d0" + }, + "require": { + "drupal/core": "^9.4 || ^10 || ^11", + "php": "^8.0" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "3.1.0", + "datestamp": "1718772797", + "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": "back-2-95", + "homepage": "https://www.drupal.org/user/327328" + }, + { + "name": "bfr", + "homepage": "https://www.drupal.org/user/369262" + } + ], + "description": "Health check for load balancers", + "homepage": "https://www.drupal.org/project/health_check", + "support": { + "source": "https://git.drupalcode.org/project/health_check", + "issues": "https://www.drupal.org/project/issues/health_check" + } + }, + { + "name": "drupal/honeypot", + "version": "2.1.4", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/honeypot.git", + "reference": "2.1.4" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/honeypot-2.1.4.zip", + "reference": "2.1.4", + "shasum": "adf76c3520c0e458177dbe6d638aa2d6ae40a95b" + }, + "require": { + "drupal/core": "^9.2 || ^10" + }, + "require-dev": { + "drupal/rules": "^3.x-dev" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "2.1.4", + "datestamp": "1723489062", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -5710,6 +6132,80 @@ "issues": "https://www.drupal.org/project/issues/multivalue_form_element" } }, + { + "name": "drupal/next", + "version": "1.6.3", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/next.git", + "reference": "1.6.3" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/next-1.6.3.zip", + "reference": "1.6.3", + "shasum": "e5ce08189ae47ceb6933407f53bfd43a24a9b05c" + }, + "require": { + "cweagans/composer-patches": "~1.0", + "drupal/core": "^9 || ^10", + "drupal/decoupled_router": "^2.0", + "drupal/pathauto": "^1.11", + "drupal/simple_oauth": "^5.0 || ^6.0", + "drupal/subrequests": "^3.0" + }, + "require-dev": { + "drupal/decoupled_router": "*", + "drupal/graphql": "*", + "drupal/graphql_compose": "*", + "drupal/jwt": "*", + "drupal/jwt_auth_consumer": "*", + "drupal/subrequests": "*", + "phpunit/phpunit": "^6.0 || ^7.0 || ^8.0 || ^9.0" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "1.6.3", + "datestamp": "1681969041", + "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": "shadcn", + "homepage": "https://shadcn.com" + }, + { + "name": "minnur", + "homepage": "https://www.drupal.org/user/702026" + }, + { + "name": "roaguicr", + "homepage": "https://www.drupal.org/user/2334450" + }, + { + "name": "rrrob", + "homepage": "https://www.drupal.org/user/273533" + }, + { + "name": "shadcn", + "homepage": "https://www.drupal.org/user/571032" + } + ], + "description": "Next.js + Drupal for Incremental Static Regeneration and Preview mode.", + "homepage": "http://drupal.org/project/next", + "support": { + "source": "https://git.drupalcode.org/project/next" + } + }, { "name": "drupal/openapi", "version": "2.1.0", @@ -7238,6 +7734,128 @@ "source": "https://git.drupalcode.org/project/simple_menu_permissions" } }, + { + "name": "drupal/simple_oauth", + "version": "5.2.5", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/simple_oauth.git", + "reference": "5.2.5" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/simple_oauth-5.2.5.zip", + "reference": "5.2.5", + "shasum": "3517d07e4896a32eddda7446b85a2afa945321a2" + }, + "require": { + "drupal/consumers": "^1.14", + "drupal/core": "^9 || ^10", + "lcobucci/jwt": "^4", + "league/oauth2-server": "^8.3", + "php": ">=7.4", + "steverhoades/oauth2-openid-connect-server": "^2.4" + }, + "require-dev": { + "phpspec/prophecy-phpunit": "^2" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "5.2.5", + "datestamp": "1700206902", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + }, + "drush": { + "services": { + "drush.services.yml": "^9 || ^10 || ^11" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "bojan_dev", + "homepage": "https://www.drupal.org/user/2801849" + }, + { + "name": "bradjones1", + "homepage": "https://www.drupal.org/user/405824" + }, + { + "name": "e0ipso", + "homepage": "https://www.drupal.org/user/550110" + }, + { + "name": "pcambra", + "homepage": "https://www.drupal.org/user/122101" + } + ], + "description": "The Simple OAuth module for Drupal", + "homepage": "https://www.drupal.org/project/simple_oauth", + "support": { + "source": "https://git.drupalcode.org/project/simple_oauth" + } + }, + { + "name": "drupal/subrequests", + "version": "3.0.12", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/subrequests.git", + "reference": "3.0.12" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/subrequests-3.0.12.zip", + "reference": "3.0.12", + "shasum": "b3081a064a0a2275c400cf871bc56aeeb1fe812c" + }, + "require": { + "drupal/core": "^10 || ^11", + "galbar/jsonpath": "^1.0" + }, + "require-dev": { + "justinrainbow/json-schema": "^5.2" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "3.0.12", + "datestamp": "1722952638", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0+" + ], + "authors": [ + { + "name": "Mateu Aguiló Bosch", + "homepage": "https://www.drupal.org/user/550110", + "email": "mateu.aguilo.bosch@gmail.com" + }, + { + "name": "phenaproxima", + "homepage": "https://www.drupal.org/user/205645" + } + ], + "description": "Add a front controller that you can use to make subrequests.", + "homepage": "https://www.drupal.org/project/subrequests", + "support": { + "source": "https://git.drupalcode.org/project/subrequests" + } + }, { "name": "drupal/taxonomy_unique", "version": "2.5.0", @@ -7547,36 +8165,27 @@ } }, { - "name": "drupal/upgrade_status", - "version": "4.3.5", + "name": "drupal/typed_data", + "version": "2.1.0", "source": { "type": "git", - "url": "https://git.drupalcode.org/project/upgrade_status.git", - "reference": "4.3.5" + "url": "https://git.drupalcode.org/project/typed_data.git", + "reference": "2.1.0" }, "dist": { "type": "zip", - "url": "https://ftp.drupal.org/files/projects/upgrade_status-4.3.5.zip", - "reference": "4.3.5", - "shasum": "353c17f14c855f5ba0fe48c6a4f6486360c066a7" + "url": "https://ftp.drupal.org/files/projects/typed_data-2.1.0.zip", + "reference": "2.1.0", + "shasum": "24e76b2add189b8d6baaf177f2e636b1c4cc5417" }, "require": { - "dekor/php-array-table": "^2.0", - "drupal/core": "^9 || ^10 || ^11", - "mglaman/phpstan-drupal": "^1.2.11", - "nikic/php-parser": "^4.0.0|^5.0.0", - "phpstan/phpstan-deprecation-rules": "^1.0.0", - "symfony/process": "^3.4|^4.0|^5.0|^6.0|^7.0", - "webflo/drupal-finder": "^1.2" - }, - "require-dev": { - "drush/drush": "^11|^12|^13" + "drupal/core": "^10.3 | ^11" }, "type": "drupal-module", "extra": { "drupal": { - "version": "4.3.5", - "datestamp": "1723044184", + "version": "2.1.0", + "datestamp": "1720651977", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -7584,7 +8193,7 @@ }, "drush": { "services": { - "drush.services.yml": "^9 || ^10" + "drush.services.yml": ">=9" } } }, @@ -7594,11 +8203,74 @@ ], "authors": [ { - "name": "Gábor Hojtsy", - "homepage": "https://www.drupal.org/user/4166" - } - ], - "description": "Review Drupal major upgrade readiness of the environment and components of the site.", + "name": "fago", + "homepage": "https://www.drupal.org/user/16747" + }, + { + "name": "tr", + "homepage": "https://www.drupal.org/user/202830" + } + ], + "description": "Extends the core Typed Data API with new APIs and features.", + "homepage": "https://www.drupal.org/project/typed_data", + "support": { + "source": "https://git.drupalcode.org/project/typed_data", + "issues": "https://www.drupal.org/project/issues/typed_data" + } + }, + { + "name": "drupal/upgrade_status", + "version": "4.3.5", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/upgrade_status.git", + "reference": "4.3.5" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/upgrade_status-4.3.5.zip", + "reference": "4.3.5", + "shasum": "353c17f14c855f5ba0fe48c6a4f6486360c066a7" + }, + "require": { + "dekor/php-array-table": "^2.0", + "drupal/core": "^9 || ^10 || ^11", + "mglaman/phpstan-drupal": "^1.2.11", + "nikic/php-parser": "^4.0.0|^5.0.0", + "phpstan/phpstan-deprecation-rules": "^1.0.0", + "symfony/process": "^3.4|^4.0|^5.0|^6.0|^7.0", + "webflo/drupal-finder": "^1.2" + }, + "require-dev": { + "drush/drush": "^11|^12|^13" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "4.3.5", + "datestamp": "1723044184", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + }, + "drush": { + "services": { + "drush.services.yml": "^9 || ^10" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Gábor Hojtsy", + "homepage": "https://www.drupal.org/user/4166" + } + ], + "description": "Review Drupal major upgrade readiness of the environment and components of the site.", "homepage": "http://drupal.org/project/upgrade_status", "support": { "source": "https://git.drupalcode.org/project/upgrade_status" @@ -8215,6 +8887,58 @@ ], "time": "2023-10-06T06:47:41+00:00" }, + { + "name": "galbar/jsonpath", + "version": "1.3.1", + "source": { + "type": "git", + "url": "https://github.com/Galbar/JsonPath-PHP.git", + "reference": "38fdd37420626671394bb7e258d3b1be3724537b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Galbar/JsonPath-PHP/zipball/38fdd37420626671394bb7e258d3b1be3724537b", + "reference": "38fdd37420626671394bb7e258d3b1be3724537b", + "shasum": "" + }, + "require": { + "php": ">=5.4" + }, + "require-dev": { + "phpunit/phpunit": "~4.0", + "sami/sami": ">=3.3.0", + "satooshi/php-coveralls": ">=1.0.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "JsonPath\\": "src/Galbar/JsonPath", + "Utilities\\": "src/Galbar/Utilities" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Alessio Linares", + "email": "alessio@alessio.cc", + "role": "Software Engineer" + } + ], + "description": "JSONPath implementation for querying and updating JSON objects", + "keywords": [ + "json", + "jsonpath", + "path" + ], + "support": { + "issues": "https://github.com/Galbar/JsonPath-PHP/issues", + "source": "https://github.com/Galbar/JsonPath-PHP/tree/1.3.1" + }, + "time": "2021-08-19T20:18:48+00:00" + }, { "name": "giggsey/libphonenumber-for-php", "version": "8.13.31", @@ -8961,7 +9685,445 @@ }, "autoload": { "psr-4": { - "JMS\\Serializer\\": "src/" + "JMS\\Serializer\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Asmir Mustafic", + "email": "goetas@gmail.com" + } + ], + "description": "Library for (de-)serializing data of any complexity; supports XML, and JSON.", + "homepage": "http://jmsyst.com/libs/serializer", + "keywords": [ + "deserialization", + "jaxb", + "json", + "serialization", + "xml" + ], + "support": { + "issues": "https://github.com/schmittjoh/serializer/issues", + "source": "https://github.com/schmittjoh/serializer/tree/3.30.0" + }, + "funding": [ + { + "url": "https://github.com/goetas", + "type": "github" + } + ], + "time": "2024-02-24T14:12:14+00:00" + }, + { + "name": "jms/serializer-bundle", + "version": "4.2.0", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/JMSSerializerBundle.git", + "reference": "d402554c66442ba494af7a37e3e43fc0f24e2689" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/JMSSerializerBundle/zipball/d402554c66442ba494af7a37e3e43fc0f24e2689", + "reference": "d402554c66442ba494af7a37e3e43fc0f24e2689", + "shasum": "" + }, + "require": { + "jms/metadata": "^2.5", + "jms/serializer": "^3.18", + "php": "^7.2 || ^8.0", + "symfony/dependency-injection": "^3.4 || ^4.0 || ^5.0 || ^6.0", + "symfony/framework-bundle": "^3.0 || ^4.0 || ^5.0 || ^6.0" + }, + "require-dev": { + "doctrine/coding-standard": "^8.1", + "doctrine/orm": "^2.4", + "phpunit/phpunit": "^8.0 || ^9.0", + "symfony/expression-language": "^3.0 || ^4.0 || ^5.0 || ^6.0", + "symfony/finder": "^3.0 || ^4.0 || ^5.0 || ^6.0", + "symfony/form": "^3.0 || ^4.0 || ^5.0 || ^6.0", + "symfony/stopwatch": "^3.0 || ^4.0 || ^5.0 || ^6.0", + "symfony/templating": "^3.0 || ^4.0 || ^5.0 || ^6.0", + "symfony/twig-bundle": "^3.0 || ^4.0 || ^5.0 || ^6.0", + "symfony/uid": "^5.1 || ^6.0", + "symfony/validator": "^3.0 || ^4.0 || ^5.0 || ^6.0", + "symfony/yaml": "^3.0 || ^4.0 || ^5.0 || ^6.0" + }, + "suggest": { + "jms/di-extra-bundle": "Required to get lazy loading (de)serialization visitors, ^1.3", + "symfony/expression-language": "Required for opcache preloading, ^3.0 || ^4.0 || ^5.0", + "symfony/finder": "Required for cache warmup, supported versions ^3.0|^4.0" + }, + "type": "symfony-bundle", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + } + }, + "autoload": { + "psr-4": { + "JMS\\SerializerBundle\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Asmir Mustafic", + "email": "goetas@gmail.com" + } + ], + "description": "Allows you to easily serialize, and deserialize data of any complexity", + "homepage": "http://jmsyst.com/bundles/JMSSerializerBundle", + "keywords": [ + "deserialization", + "json", + "serialization", + "xml" + ], + "support": { + "issues": "https://github.com/schmittjoh/JMSSerializerBundle/issues", + "source": "https://github.com/schmittjoh/JMSSerializerBundle/tree/4.2.0" + }, + "funding": [ + { + "url": "https://github.com/goetas", + "type": "github" + } + ], + "time": "2022-09-13T19:27:18+00:00" + }, + { + "name": "lcobucci/clock", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/clock.git", + "reference": "039ef98c6b57b101d10bd11d8fdfda12cbd996dc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/clock/zipball/039ef98c6b57b101d10bd11d8fdfda12cbd996dc", + "reference": "039ef98c6b57b101d10bd11d8fdfda12cbd996dc", + "shasum": "" + }, + "require": { + "php": "~8.1.0 || ~8.2.0", + "psr/clock": "^1.0" + }, + "provide": { + "psr/clock-implementation": "1.0" + }, + "require-dev": { + "infection/infection": "^0.26", + "lcobucci/coding-standard": "^9.0", + "phpstan/extension-installer": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-deprecation-rules": "^1.1.1", + "phpstan/phpstan-phpunit": "^1.3.2", + "phpstan/phpstan-strict-rules": "^1.4.4", + "phpunit/phpunit": "^9.5.27" + }, + "type": "library", + "autoload": { + "psr-4": { + "Lcobucci\\Clock\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Luís Cobucci", + "email": "lcobucci@gmail.com" + } + ], + "description": "Yet another clock abstraction", + "support": { + "issues": "https://github.com/lcobucci/clock/issues", + "source": "https://github.com/lcobucci/clock/tree/3.0.0" + }, + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } + ], + "time": "2022-12-19T15:00:24+00:00" + }, + { + "name": "lcobucci/jwt", + "version": "4.3.0", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/4d7de2fe0d51a96418c0d04004986e410e87f6b4", + "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4", + "shasum": "" + }, + "require": { + "ext-hash": "*", + "ext-json": "*", + "ext-mbstring": "*", + "ext-openssl": "*", + "ext-sodium": "*", + "lcobucci/clock": "^2.0 || ^3.0", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "infection/infection": "^0.21", + "lcobucci/coding-standard": "^6.0", + "mikey179/vfsstream": "^1.6.7", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.4", + "phpstan/phpstan-deprecation-rules": "^1.0", + "phpstan/phpstan-phpunit": "^1.0", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/php-invoker": "^3.1", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Lcobucci\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Luís Cobucci", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "keywords": [ + "JWS", + "jwt" + ], + "support": { + "issues": "https://github.com/lcobucci/jwt/issues", + "source": "https://github.com/lcobucci/jwt/tree/4.3.0" + }, + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } + ], + "time": "2023-01-02T13:28:00+00:00" + }, + { + "name": "league/container", + "version": "4.2.2", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/container.git", + "reference": "ff346319ca1ff0e78277dc2311a42107cc1aab88" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/container/zipball/ff346319ca1ff0e78277dc2311a42107cc1aab88", + "reference": "ff346319ca1ff0e78277dc2311a42107cc1aab88", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0", + "psr/container": "^1.1 || ^2.0" + }, + "provide": { + "psr/container-implementation": "^1.0" + }, + "replace": { + "orno/di": "~2.0" + }, + "require-dev": { + "nette/php-generator": "^3.4", + "nikic/php-parser": "^4.10", + "phpstan/phpstan": "^0.12.47", + "phpunit/phpunit": "^8.5.17", + "roave/security-advisories": "dev-latest", + "scrutinizer/ocular": "^1.8", + "squizlabs/php_codesniffer": "^3.6" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev", + "dev-4.x": "4.x-dev", + "dev-3.x": "3.x-dev", + "dev-2.x": "2.x-dev", + "dev-1.x": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Container\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Phil Bennett", + "email": "mail@philbennett.co.uk", + "role": "Developer" + } + ], + "description": "A fast and intuitive dependency injection container.", + "homepage": "https://github.com/thephpleague/container", + "keywords": [ + "container", + "dependency", + "di", + "injection", + "league", + "provider", + "service" + ], + "support": { + "issues": "https://github.com/thephpleague/container/issues", + "source": "https://github.com/thephpleague/container/tree/4.2.2" + }, + "funding": [ + { + "url": "https://github.com/philipobenito", + "type": "github" + } + ], + "time": "2024-03-13T13:12:53+00:00" + }, + { + "name": "league/event", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/event.git", + "reference": "d2cc124cf9a3fab2bb4ff963307f60361ce4d119" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/event/zipball/d2cc124cf9a3fab2bb4ff963307f60361ce4d119", + "reference": "d2cc124cf9a3fab2bb4ff963307f60361ce4d119", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "require-dev": { + "henrikbjorn/phpspec-code-coverage": "~1.0.1", + "phpspec/phpspec": "^2.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Event\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frenky.net" + } + ], + "description": "Event package", + "keywords": [ + "emitter", + "event", + "listener" + ], + "support": { + "issues": "https://github.com/thephpleague/event/issues", + "source": "https://github.com/thephpleague/event/tree/master" + }, + "time": "2018-11-26T11:52:41+00:00" + }, + { + "name": "league/oauth2-server", + "version": "8.5.4", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/oauth2-server.git", + "reference": "ab7714d073844497fd222d5d0a217629089936bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/oauth2-server/zipball/ab7714d073844497fd222d5d0a217629089936bc", + "reference": "ab7714d073844497fd222d5d0a217629089936bc", + "shasum": "" + }, + "require": { + "defuse/php-encryption": "^2.3", + "ext-openssl": "*", + "lcobucci/clock": "^2.2 || ^3.0", + "lcobucci/jwt": "^4.3 || ^5.0", + "league/event": "^2.2", + "league/uri": "^6.7 || ^7.0", + "php": "^8.0", + "psr/http-message": "^1.0.1 || ^2.0" + }, + "replace": { + "league/oauth2server": "*", + "lncd/oauth2": "*" + }, + "require-dev": { + "laminas/laminas-diactoros": "^3.0.0", + "phpstan/phpstan": "^0.12.57", + "phpstan/phpstan-phpunit": "^0.12.16", + "phpunit/phpunit": "^9.6.6", + "roave/security-advisories": "dev-master" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\OAuth2\\Server\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -8970,88 +10132,88 @@ ], "authors": [ { - "name": "Johannes M. Schmitt", - "email": "schmittjoh@gmail.com" + "name": "Alex Bilbie", + "email": "hello@alexbilbie.com", + "homepage": "http://www.alexbilbie.com", + "role": "Developer" }, { - "name": "Asmir Mustafic", - "email": "goetas@gmail.com" + "name": "Andy Millington", + "email": "andrew@noexceptions.io", + "homepage": "https://www.noexceptions.io", + "role": "Developer" } ], - "description": "Library for (de-)serializing data of any complexity; supports XML, and JSON.", - "homepage": "http://jmsyst.com/libs/serializer", + "description": "A lightweight and powerful OAuth 2.0 authorization and resource server library with support for all the core specification grants. This library will allow you to secure your API with OAuth and allow your applications users to approve apps that want to access their data from your API.", + "homepage": "https://oauth2.thephpleague.com/", "keywords": [ - "deserialization", - "jaxb", - "json", - "serialization", - "xml" - ], - "support": { - "issues": "https://github.com/schmittjoh/serializer/issues", - "source": "https://github.com/schmittjoh/serializer/tree/3.30.0" + "Authentication", + "api", + "auth", + "authorisation", + "authorization", + "oauth", + "oauth 2", + "oauth 2.0", + "oauth2", + "protect", + "resource", + "secure", + "server" + ], + "support": { + "issues": "https://github.com/thephpleague/oauth2-server/issues", + "source": "https://github.com/thephpleague/oauth2-server/tree/8.5.4" }, "funding": [ { - "url": "https://github.com/goetas", + "url": "https://github.com/sephster", "type": "github" } ], - "time": "2024-02-24T14:12:14+00:00" + "time": "2023-08-25T22:35:12+00:00" }, { - "name": "jms/serializer-bundle", - "version": "4.2.0", + "name": "league/uri", + "version": "7.4.1", "source": { "type": "git", - "url": "https://github.com/schmittjoh/JMSSerializerBundle.git", - "reference": "d402554c66442ba494af7a37e3e43fc0f24e2689" + "url": "https://github.com/thephpleague/uri.git", + "reference": "bedb6e55eff0c933668addaa7efa1e1f2c417cc4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/JMSSerializerBundle/zipball/d402554c66442ba494af7a37e3e43fc0f24e2689", - "reference": "d402554c66442ba494af7a37e3e43fc0f24e2689", + "url": "https://api.github.com/repos/thephpleague/uri/zipball/bedb6e55eff0c933668addaa7efa1e1f2c417cc4", + "reference": "bedb6e55eff0c933668addaa7efa1e1f2c417cc4", "shasum": "" }, "require": { - "jms/metadata": "^2.5", - "jms/serializer": "^3.18", - "php": "^7.2 || ^8.0", - "symfony/dependency-injection": "^3.4 || ^4.0 || ^5.0 || ^6.0", - "symfony/framework-bundle": "^3.0 || ^4.0 || ^5.0 || ^6.0" + "league/uri-interfaces": "^7.3", + "php": "^8.1" }, - "require-dev": { - "doctrine/coding-standard": "^8.1", - "doctrine/orm": "^2.4", - "phpunit/phpunit": "^8.0 || ^9.0", - "symfony/expression-language": "^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/finder": "^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/form": "^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/stopwatch": "^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/templating": "^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/twig-bundle": "^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/uid": "^5.1 || ^6.0", - "symfony/validator": "^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/yaml": "^3.0 || ^4.0 || ^5.0 || ^6.0" + "conflict": { + "league/uri-schemes": "^1.0" }, "suggest": { - "jms/di-extra-bundle": "Required to get lazy loading (de)serialization visitors, ^1.3", - "symfony/expression-language": "Required for opcache preloading, ^3.0 || ^4.0 || ^5.0", - "symfony/finder": "Required for cache warmup, supported versions ^3.0|^4.0" + "ext-bcmath": "to improve IPV4 host parsing", + "ext-fileinfo": "to create Data URI from file contennts", + "ext-gmp": "to improve IPV4 host parsing", + "ext-intl": "to handle IDN host with the best performance", + "jeremykendall/php-domain-parser": "to resolve Public Suffix and Top Level Domain", + "league/uri-components": "Needed to easily manipulate URI objects components", + "php-64bit": "to improve IPV4 host parsing", + "symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present" }, - "type": "symfony-bundle", + "type": "library", "extra": { "branch-alias": { - "dev-master": "4.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { "psr-4": { - "JMS\\SerializerBundle\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "League\\Uri\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -9059,80 +10221,84 @@ ], "authors": [ { - "name": "Johannes M. Schmitt", - "email": "schmittjoh@gmail.com" - }, - { - "name": "Asmir Mustafic", - "email": "goetas@gmail.com" + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" } ], - "description": "Allows you to easily serialize, and deserialize data of any complexity", - "homepage": "http://jmsyst.com/bundles/JMSSerializerBundle", + "description": "URI manipulation library", + "homepage": "https://uri.thephpleague.com", "keywords": [ - "deserialization", - "json", - "serialization", - "xml" + "data-uri", + "file-uri", + "ftp", + "hostname", + "http", + "https", + "middleware", + "parse_str", + "parse_url", + "psr-7", + "query-string", + "querystring", + "rfc3986", + "rfc3987", + "rfc6570", + "uri", + "uri-template", + "url", + "ws" ], "support": { - "issues": "https://github.com/schmittjoh/JMSSerializerBundle/issues", - "source": "https://github.com/schmittjoh/JMSSerializerBundle/tree/4.2.0" + "docs": "https://uri.thephpleague.com", + "forum": "https://thephpleague.slack.com", + "issues": "https://github.com/thephpleague/uri-src/issues", + "source": "https://github.com/thephpleague/uri/tree/7.4.1" }, "funding": [ { - "url": "https://github.com/goetas", + "url": "https://github.com/sponsors/nyamsprod", "type": "github" } ], - "time": "2022-09-13T19:27:18+00:00" + "time": "2024-03-23T07:42:40+00:00" }, { - "name": "league/container", - "version": "4.2.2", + "name": "league/uri-interfaces", + "version": "7.4.1", "source": { "type": "git", - "url": "https://github.com/thephpleague/container.git", - "reference": "ff346319ca1ff0e78277dc2311a42107cc1aab88" + "url": "https://github.com/thephpleague/uri-interfaces.git", + "reference": "8d43ef5c841032c87e2de015972c06f3865ef718" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/container/zipball/ff346319ca1ff0e78277dc2311a42107cc1aab88", - "reference": "ff346319ca1ff0e78277dc2311a42107cc1aab88", + "url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/8d43ef5c841032c87e2de015972c06f3865ef718", + "reference": "8d43ef5c841032c87e2de015972c06f3865ef718", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "psr/container": "^1.1 || ^2.0" - }, - "provide": { - "psr/container-implementation": "^1.0" - }, - "replace": { - "orno/di": "~2.0" + "ext-filter": "*", + "php": "^8.1", + "psr/http-factory": "^1", + "psr/http-message": "^1.1 || ^2.0" }, - "require-dev": { - "nette/php-generator": "^3.4", - "nikic/php-parser": "^4.10", - "phpstan/phpstan": "^0.12.47", - "phpunit/phpunit": "^8.5.17", - "roave/security-advisories": "dev-latest", - "scrutinizer/ocular": "^1.8", - "squizlabs/php_codesniffer": "^3.6" + "suggest": { + "ext-bcmath": "to improve IPV4 host parsing", + "ext-gmp": "to improve IPV4 host parsing", + "ext-intl": "to handle IDN host with the best performance", + "php-64bit": "to improve IPV4 host parsing", + "symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.x-dev", - "dev-4.x": "4.x-dev", - "dev-3.x": "3.x-dev", - "dev-2.x": "2.x-dev", - "dev-1.x": "1.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { "psr-4": { - "League\\Container\\": "src" + "League\\Uri\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -9141,33 +10307,45 @@ ], "authors": [ { - "name": "Phil Bennett", - "email": "mail@philbennett.co.uk", - "role": "Developer" + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" } ], - "description": "A fast and intuitive dependency injection container.", - "homepage": "https://github.com/thephpleague/container", + "description": "Common interfaces and classes for URI representation and interaction", + "homepage": "https://uri.thephpleague.com", "keywords": [ - "container", - "dependency", - "di", - "injection", - "league", - "provider", - "service" + "data-uri", + "file-uri", + "ftp", + "hostname", + "http", + "https", + "parse_str", + "parse_url", + "psr-7", + "query-string", + "querystring", + "rfc3986", + "rfc3987", + "rfc6570", + "uri", + "url", + "ws" ], "support": { - "issues": "https://github.com/thephpleague/container/issues", - "source": "https://github.com/thephpleague/container/tree/4.2.2" + "docs": "https://uri.thephpleague.com", + "forum": "https://thephpleague.slack.com", + "issues": "https://github.com/thephpleague/uri-src/issues", + "source": "https://github.com/thephpleague/uri-interfaces/tree/7.4.1" }, "funding": [ { - "url": "https://github.com/philipobenito", + "url": "https://github.com/sponsors/nyamsprod", "type": "github" } ], - "time": "2024-03-13T13:12:53+00:00" + "time": "2024-03-23T07:42:40+00:00" }, { "name": "masterminds/html5", @@ -9677,6 +10855,56 @@ }, "time": "2021-12-15T12:32:42+00:00" }, + { + "name": "paragonie/random_compat", + "version": "v9.99.100", + "source": { + "type": "git", + "url": "https://github.com/paragonie/random_compat.git", + "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/paragonie/random_compat/zipball/996434e5492cb4c3edcb9168db6fbb1359ef965a", + "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a", + "shasum": "" + }, + "require": { + "php": ">= 7" + }, + "require-dev": { + "phpunit/phpunit": "4.*|5.*", + "vimeo/psalm": "^1" + }, + "suggest": { + "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." + }, + "type": "library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Paragon Initiative Enterprises", + "email": "security@paragonie.com", + "homepage": "https://paragonie.com" + } + ], + "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", + "keywords": [ + "csprng", + "polyfill", + "pseudorandom", + "random" + ], + "support": { + "email": "info@paragonie.com", + "issues": "https://github.com/paragonie/random_compat/issues", + "source": "https://github.com/paragonie/random_compat" + }, + "time": "2020-10-15T08:29:30+00:00" + }, { "name": "pear/archive_tar", "version": "1.5.0", @@ -10476,6 +11704,54 @@ }, "time": "2021-02-03T23:26:27+00:00" }, + { + "name": "psr/clock", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/clock.git", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Psr\\Clock\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for reading the clock.", + "homepage": "https://github.com/php-fig/clock", + "keywords": [ + "clock", + "now", + "psr", + "psr-20", + "time" + ], + "support": { + "issues": "https://github.com/php-fig/clock/issues", + "source": "https://github.com/php-fig/clock/tree/1.0.0" + }, + "time": "2022-11-25T14:36:26+00:00" + }, { "name": "psr/container", "version": "2.0.2", @@ -11117,6 +12393,51 @@ ], "time": "2024-05-22T21:24:41+00:00" }, + { + "name": "steverhoades/oauth2-openid-connect-server", + "version": "v2.6.1", + "source": { + "type": "git", + "url": "https://github.com/steverhoades/oauth2-openid-connect-server.git", + "reference": "269c4dc071519e8220e249cbdee9b0723e95215e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/steverhoades/oauth2-openid-connect-server/zipball/269c4dc071519e8220e249cbdee9b0723e95215e", + "reference": "269c4dc071519e8220e249cbdee9b0723e95215e", + "shasum": "" + }, + "require": { + "lcobucci/jwt": "4.1.5|^4.2|^4.3|^5.0", + "league/oauth2-server": "^5.1|^6.0|^7.0|^8.0" + }, + "require-dev": { + "laminas/laminas-diactoros": "^1.3.2", + "phpunit/phpunit": "^5.0|^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "OpenIDConnectServer\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Steve Rhoades", + "email": "sedonami@gmail.com" + } + ], + "description": "An OpenID Connect Server that sites on The PHP League's OAuth2 Server", + "support": { + "issues": "https://github.com/steverhoades/oauth2-openid-connect-server/issues", + "source": "https://github.com/steverhoades/oauth2-openid-connect-server/tree/v2.6.1" + }, + "time": "2023-09-08T16:15:47+00:00" + }, { "name": "swagger-api/swagger-ui", "version": "v3.52.5", @@ -14788,6 +16109,71 @@ }, "time": "2022-06-03T18:03:27+00:00" }, + { + "name": "webonyx/graphql-php", + "version": "v14.11.10", + "source": { + "type": "git", + "url": "https://github.com/webonyx/graphql-php.git", + "reference": "d9c2fdebc6aa01d831bc2969da00e8588cffef19" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webonyx/graphql-php/zipball/d9c2fdebc6aa01d831bc2969da00e8588cffef19", + "reference": "d9c2fdebc6aa01d831bc2969da00e8588cffef19", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "php": "^7.1 || ^8" + }, + "require-dev": { + "amphp/amp": "^2.3", + "doctrine/coding-standard": "^6.0", + "nyholm/psr7": "^1.2", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "0.12.82", + "phpstan/phpstan-phpunit": "0.12.18", + "phpstan/phpstan-strict-rules": "0.12.9", + "phpunit/phpunit": "^7.2 || ^8.5", + "psr/http-message": "^1.0", + "react/promise": "2.*", + "simpod/php-coveralls-mirror": "^3.0" + }, + "suggest": { + "psr/http-message": "To use standard GraphQL server", + "react/promise": "To leverage async resolving on React PHP platform" + }, + "type": "library", + "autoload": { + "psr-4": { + "GraphQL\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A PHP port of GraphQL reference implementation", + "homepage": "https://github.com/webonyx/graphql-php", + "keywords": [ + "api", + "graphql" + ], + "support": { + "issues": "https://github.com/webonyx/graphql-php/issues", + "source": "https://github.com/webonyx/graphql-php/tree/v14.11.10" + }, + "funding": [ + { + "url": "https://opencollective.com/webonyx-graphql-php", + "type": "open_collective" + } + ], + "time": "2023-07-05T14:23:37+00:00" + }, { "name": "whichbrowser/parser", "version": "v2.1.8", From f2f0960bb4c601d4be811036eb37f6d0013c5ebf Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Fri, 4 Oct 2024 15:14:03 +0200 Subject: [PATCH 02/14] Added initial configuration for the new modules such as setting up the graphql compose schema configuration and adding a new user role which we intend to use for authenticating when calling the graphql endpoint. This is not set in stone and can be changed at a later point. --- .../sync/administerusersbyrole.settings.yml | 1 + config/sync/core.extension.yml | 9 + ...graphql_servers.graphql_compose_server.yml | 20 ++ config/sync/graphql.settings.yml | 3 + config/sync/graphql_compose.settings.yml | 235 ++++++++++++++++++ config/sync/next.settings.yml | 12 + ....user_add_role_action.graphql_consumer.yml | 14 ++ ...er_remove_role_action.graphql_consumer.yml | 14 ++ config/sync/user.role.graphql_consumer.yml | 9 + 9 files changed, 317 insertions(+) create mode 100644 config/sync/graphql.graphql_servers.graphql_compose_server.yml create mode 100644 config/sync/graphql.settings.yml create mode 100644 config/sync/graphql_compose.settings.yml create mode 100644 config/sync/next.settings.yml create mode 100644 config/sync/system.action.user_add_role_action.graphql_consumer.yml create mode 100644 config/sync/system.action.user_remove_role_action.graphql_consumer.yml create mode 100644 config/sync/user.role.graphql_consumer.yml diff --git a/config/sync/administerusersbyrole.settings.yml b/config/sync/administerusersbyrole.settings.yml index b52cfe365..47b951175 100644 --- a/config/sync/administerusersbyrole.settings.yml +++ b/config/sync/administerusersbyrole.settings.yml @@ -7,3 +7,4 @@ roles: mediator: safe patron: unsafe external_system: safe + graphql_consumer: unsafe diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 06913fdc6..7518f2e24 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -20,6 +20,7 @@ module: config_perms: 0 config_translation: 0 config_translation_po: 0 + consumers: 0 content_lock: 0 cookieinformation: 0 crop: 0 @@ -27,6 +28,7 @@ module: datetime: 0 datetime_range: 0 dblog: 0 + decoupled_router: 0 default_content: 0 devel_generate: 0 dpl_admin: 0 @@ -97,6 +99,8 @@ module: focal_point: 0 gin_login: 0 gin_toolbar: 0 + graphql: 0 + graphql_compose: 0 handy_cache_tags: 0 health_check: 0 honeypot: 0 @@ -125,6 +129,8 @@ module: multiple_fields_remove_button: 0 multivalue_form_element: 0 mysql: 0 + next: 0 + next_graphql: 0 node: 0 openapi: 0 openapi_rest: 0 @@ -158,6 +164,8 @@ module: select2: 0 serialization: 0 simple_menu_permissions: 0 + simple_oauth: 0 + subrequests: 0 system: 0 taxonomy: 0 taxonomy_unique: 0 @@ -168,6 +176,7 @@ module: token: 0 toolbar: 0 twig_tweak: 0 + typed_data: 0 update: 0 user: 0 varnish_purge_tags: 0 diff --git a/config/sync/graphql.graphql_servers.graphql_compose_server.yml b/config/sync/graphql.graphql_servers.graphql_compose_server.yml new file mode 100644 index 000000000..230e93355 --- /dev/null +++ b/config/sync/graphql.graphql_servers.graphql_compose_server.yml @@ -0,0 +1,20 @@ +uuid: d93e445c-0a5f-4570-92bf-977afe7701b9 +langcode: en +status: true +dependencies: { } +_core: + default_config_hash: xS4lJthVTgF89HT831z3_bElyY_aA3Zr5UssqbDh7C0 +name: graphql_compose_server +label: 'GraphQL Compose - Server' +endpoint: /graphql +debug_flag: 15 +schema: graphql_compose +caching: true +batching: true +disable_introspection: false +query_depth: null +query_complexity: null +schema_configuration: + graphql_compose: + enabled: true +persisted_queries_settings: { } diff --git a/config/sync/graphql.settings.yml b/config/sync/graphql.settings.yml new file mode 100644 index 000000000..75671167a --- /dev/null +++ b/config/sync/graphql.settings.yml @@ -0,0 +1,3 @@ +_core: + default_config_hash: tUas-vhAu_deJtESOhghgg-sxP_Ic8kWB6TnwBnbChs +dataproducer_populate_default_values: true diff --git a/config/sync/graphql_compose.settings.yml b/config/sync/graphql_compose.settings.yml new file mode 100644 index 000000000..ca167709f --- /dev/null +++ b/config/sync/graphql_compose.settings.yml @@ -0,0 +1,235 @@ +_core: + default_config_hash: Sd_9jXBxw3mGn9d_y94jvlitI0wpvj6x2dQ0p6aGhJo +entity_config: + media: + document: + enabled: true + image: + enabled: true + video: + enabled: true + node: + article: + enabled: true + query_load_enabled: true + branch: + enabled: false + campaign: + enabled: false + page: + enabled: false + paragraph: + accordion: + enabled: true + banner: + enabled: true + breadcrumb_children: + enabled: true + campaign_rule: + enabled: false + card_grid_automatic: + enabled: true + card_grid_manual: + enabled: true + content_slider: + enabled: true + content_slider_automatic: + enabled: true + event_ticket_category: + enabled: false + files: + enabled: false + filtered_event_list: + enabled: true + hero: + enabled: false + language_selector: + enabled: false + links: + enabled: false + manual_event_list: + enabled: true + material_grid_automatic: + enabled: false + material_grid_manual: + enabled: false + medias: + enabled: false + nav_grid_manual: + enabled: false + nav_spots_manual: + enabled: false + opening_hours: + enabled: false + recommendation: + enabled: false + simple_links: + enabled: false + text_body: + enabled: true + user_registration_item: + enabled: false + user_registration_linklist: + enabled: false + user_registration_section: + enabled: false + video: + enabled: false + webform: + enabled: false + taxonomy_term: + breadcrumb_structure: + enabled: true + categories: + enabled: true + opening_hours_categories: + enabled: true + tags: + enabled: true + webform_email_categories: + enabled: true +field_config: + media: + document: + field_media_file: + enabled: true + image: + field_byline: + enabled: true + field_media_image: + enabled: true + video: + field_media_oembed_video: + enabled: true + node: + article: + field_branch: + enabled: true + field_canonical_url: + enabled: true + field_categories: + enabled: true + field_override_author: + enabled: true + field_paragraphs: + enabled: true + field_publication_date: + enabled: true + field_show_override_author: + enabled: true + field_subtitle: + enabled: true + field_tags: + enabled: true + field_teaser_image: + enabled: true + field_teaser_text: + enabled: true + paragraph: + accordion: + field_accordion_description: + enabled: true + field_accordion_title: + enabled: true + banner: + field_banner_description: + enabled: true + field_banner_image: + enabled: true + field_banner_link: + enabled: true + field_underlined_title: + enabled: true + card_grid_automatic: + field_filter_branches: + enabled: true + field_filter_categories: + enabled: true + field_filter_cond_type: + enabled: true + field_filter_content_types: + enabled: true + field_filter_tags: + enabled: true + field_more_link: + enabled: true + field_title: + enabled: true + card_grid_manual: + field_grid_content: + enabled: true + field_more_link: + enabled: true + field_title: + enabled: true + content_slider: + field_content_references: + enabled: true + field_title: + enabled: true + field_underlined_title: + enabled: true + content_slider_automatic: + field_filter_branches: + enabled: true + field_filter_categories: + enabled: true + field_filter_cond_type: + enabled: true + field_filter_content_types: + enabled: true + field_filter_tags: + enabled: true + field_title: + enabled: true + field_underlined_title: + enabled: true + filtered_event_list: + field_filter_branches: + enabled: true + field_filter_categories: + enabled: true + field_filter_cond_type: + enabled: true + field_filter_tags: + enabled: true + field_max_item_amount: + enabled: true + field_title: + enabled: true + manual_event_list: + field_events: + enabled: true + field_title: + enabled: true + text_body: + field_body: + enabled: true + taxonomy_term: + breadcrumb_structure: + field_children_title: + enabled: true + field_content: + enabled: true + field_show_children: + enabled: true + field_show_children_subtitles: + enabled: true + webform_email_categories: + field_email: + enabled: true +settings: + exclude_unpublished: true + expose_entity_ids: false + field_required_override: false + schema_description: 'GraphQL Compose' + schema_version: '1' + simple_queries: false + simple_unions: true + site_name: false + site_slogan: false + site_front: true + svg_image: false + svg_filesize: 100 + inflector_langcode: en + inflector_singularize: false diff --git a/config/sync/next.settings.yml b/config/sync/next.settings.yml new file mode 100644 index 000000000..40806e690 --- /dev/null +++ b/config/sync/next.settings.yml @@ -0,0 +1,12 @@ +_core: + default_config_hash: jbxXpRK_Rb2LOkn_TkZYWKdj9PolvUxkfrWLJn0_tso +langcode: en +site_previewer: iframe +site_previewer_configuration: + width: 100% + sync_route: false + sync_route_skip_routes: '' +preview_url_generator: simple_oauth +preview_url_generator_configuration: + secret_expiration: 30 +debug: false diff --git a/config/sync/system.action.user_add_role_action.graphql_consumer.yml b/config/sync/system.action.user_add_role_action.graphql_consumer.yml new file mode 100644 index 000000000..e72b7b29d --- /dev/null +++ b/config/sync/system.action.user_add_role_action.graphql_consumer.yml @@ -0,0 +1,14 @@ +uuid: 07d7f391-9749-4d69-b788-c771a16c780c +langcode: en +status: true +dependencies: + config: + - user.role.graphql_consumer + module: + - user +id: user_add_role_action.graphql_consumer +label: 'Add the GraphQl consumer role to the selected user(s)' +type: user +plugin: user_add_role_action +configuration: + rid: graphql_consumer diff --git a/config/sync/system.action.user_remove_role_action.graphql_consumer.yml b/config/sync/system.action.user_remove_role_action.graphql_consumer.yml new file mode 100644 index 000000000..d04b68c4c --- /dev/null +++ b/config/sync/system.action.user_remove_role_action.graphql_consumer.yml @@ -0,0 +1,14 @@ +uuid: 8e2eaac6-54a6-40fe-9852-8e1324aa046e +langcode: en +status: true +dependencies: + config: + - user.role.graphql_consumer + module: + - user +id: user_remove_role_action.graphql_consumer +label: 'Remove the GraphQl consumer role from the selected user(s)' +type: user +plugin: user_remove_role_action +configuration: + rid: graphql_consumer diff --git a/config/sync/user.role.graphql_consumer.yml b/config/sync/user.role.graphql_consumer.yml new file mode 100644 index 000000000..ac519da8b --- /dev/null +++ b/config/sync/user.role.graphql_consumer.yml @@ -0,0 +1,9 @@ +uuid: 2844cde3-5ba7-4a93-958a-70da917913a7 +langcode: en +status: true +dependencies: { } +id: graphql_consumer +label: 'GraphQl consumer' +weight: 8 +is_admin: null +permissions: { } From eaa28426ce95cfc8c3c97f921a4a6cfcaf1ec04a Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Fri, 4 Oct 2024 15:15:47 +0200 Subject: [PATCH 03/14] Added the creating of a new user with the role "graphql_consumer" on development environments. --- Taskfile.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Taskfile.yml b/Taskfile.yml index 6a21a7717..98260a7a1 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -224,6 +224,9 @@ tasks: - task dev:cli -- drush user:create patron --password="test" - task dev:cli -- drush user:role:add 'patron' patron + - task dev:cli -- drush user:create graphql_consumer --password="test" + - task dev:cli -- drush user:role:add 'graphql_consumer' graphql_consumer + dev:import-profile-translations: desc: Import our custom profile translations. This is done automatically on deploy. cmds: From 21decaedc80dc7a0ce88cf778759faf394574d79 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Fri, 4 Oct 2024 15:16:35 +0200 Subject: [PATCH 04/14] Make it possible for anonymous users to call the graphql endpoint. This is only intended to be used in the development phase. --- config/sync/user.role.anonymous.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/sync/user.role.anonymous.yml b/config/sync/user.role.anonymous.yml index c7a60e3bb..f6e5a2609 100644 --- a/config/sync/user.role.anonymous.yml +++ b/config/sync/user.role.anonymous.yml @@ -9,6 +9,7 @@ dependencies: - rest.resource.events - rest.resource.proxy-url module: + - graphql - media - openapi - recurring_events @@ -23,6 +24,7 @@ is_admin: false permissions: - 'access content' - 'access openapi api docs' + - 'execute graphql_compose_server arbitrary graphql requests' - 'restful get dpl_opening_hours_legacy_list' - 'restful get dpl_opening_hours_list' - 'restful get events' From 553cd49186c9903b215d31dfb9fae394cb153b76 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Fri, 4 Oct 2024 15:17:51 +0200 Subject: [PATCH 05/14] Added the generated graphql schema in .json and .sdl format. Only for development usage. --- dpl-go.json | 1 + dpl-go.sdl | 978 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 979 insertions(+) create mode 100644 dpl-go.json create mode 100644 dpl-go.sdl diff --git a/dpl-go.json b/dpl-go.json new file mode 100644 index 000000000..079c67447 --- /dev/null +++ b/dpl-go.json @@ -0,0 +1 @@ +{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":{"name":"Subscription"},"types":[{"kind":"OBJECT","name":"Query","description":"The schema's entry-point for queries.","fields":[{"name":"nodeArticle","description":"Load a NodeArticle entity by id","args":[{"name":"id","description":"The id of the NodeArticle to load.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"defaultValue":null},{"name":"langcode","description":"Optionally set the response language. Eg en, ja, fr.","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"revision","description":"Optionally set the revision of the entity. Eg current, latest, or an ID.","type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null}],"type":{"kind":"OBJECT","name":"NodeArticle","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"info","description":"Schema information.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"SchemaInformation","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to\nrefetch an object or as key for a cache. The ID type appears in a JSON\nresponse as a String; however, it is not intended to be human-readable.\nWhen expected as an input type, any string (such as `\"4\"`) or integer\n(such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8\ncharacter sequences. The String type is most often used by GraphQL to\nrepresent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"NodeArticle","description":"Brug artikler til nyhedspræget indhold med en begrænset levetid.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"branch","description":"Bibliotek","args":[],"type":{"kind":"UNION","name":"NodeUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"canonicalUrl","description":"Oplys en canonical URL hvis indholdet i artiklen er kopieret fra en anden\nhjemmeside (fx kopieret fra et andet biblioteks hjemmeside). Dette hjælper\nmed at signalere til søgemaskiner at kilden til indholdet er den\nspecificerede side, og sikrer at den originale kilde krediteres.","args":[],"type":{"kind":"OBJECT","name":"Link","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"categories","description":"Kategorier","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Tidspunktet hvor indholdselementet sidst blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The date and time that the content was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"overrideAuthor","description":"Overskriv forfatter","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"paragraphs","description":"Paragraphs","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"ParagraphUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"promote","description":"Forfremmet til forside","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"publicationDate","description":"Publication date","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"showOverrideAuthor","description":"Som standard er forfatteren sat til den Drupal-bruger, der ejer indholdet.
Hvis du ønsker at tilsidesætte dette med din egen tekst, kan du","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"sticky","description":"Klæbrig","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"subtitle","description":"Manchet","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tags","description":"Tags","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"teaserImage","description":"Teaserfelterne bruges til cards som blikfang for indholdet. Hvis der ikke er\nvalgt et teaserbillede, vil teksten vises i stedet.","args":[],"type":{"kind":"UNION","name":"MediaUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"teaserText","description":"Teasertekst","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"NodeInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"NodeInterface","description":"Entity type node.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Tidspunktet hvor indholdselementet sidst blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The date and time that the content was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"promote","description":"Forfremmet til forside","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"sticky","description":"Klæbrig","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"NodeArticle","ofType":null}]},{"kind":"OBJECT","name":"DateTime","description":"A DateTime object.","fields":[{"name":"timestamp","description":"Type represents date and time as number of milliseconds from start of the UNIX epoch.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Timestamp","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"timezone","description":"A field whose value exists in the standard IANA Time Zone Database.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"TimeZone","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"offset","description":"A string that will have a value of format ±hh:mm","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"UtcOffset","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"time","description":"RFC 3339 compliant time string.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Time","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Timestamp","description":"Type represents date and time as number of milliseconds from start of the UNIX epoch.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"TimeZone","description":"A field whose value exists in the standard IANA Time Zone Database.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"UtcOffset","description":"A string that will have a value of format ±hh:mm","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Time","description":"RFC 3339 compliant time string.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Language","description":"A language definition provided by the CMS.","fields":[{"name":"id","description":"Sprogkoden.","args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Sprogets navn.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"direction","description":"The language direction.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"NodeUnion","description":"Entity type node.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"NodeArticle","ofType":null}]},{"kind":"OBJECT","name":"Link","description":"A link.","fields":[{"name":"title","description":"The title of the link.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"url","description":"The URL of the link.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"internal","description":"Whether the link is internal to this website.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"TermUnion","description":"Entity type taxonomy_term.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"TermBreadcrumbStructure","ofType":null},{"kind":"OBJECT","name":"TermCategories","ofType":null},{"kind":"OBJECT","name":"TermOpeningHoursCategories","ofType":null},{"kind":"OBJECT","name":"TermTags","ofType":null},{"kind":"OBJECT","name":"TermWebformEmailCategories","ofType":null}]},{"kind":"OBJECT","name":"TermBreadcrumbStructure","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"childrenTitle","description":"Titlen, der vises over listen af refereret indhold. Vil ikke blive vist, hvis der ikke vises nogen børn.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"content","description":"Indhold der linkes til","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"showChildren","description":"Vis en automatisk liste med indhold, som refererer til dette brødkrumme element, på denne side.","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"showChildrenSubtitles","description":"If this is checked, the children teasers will be expanded with possible subtitle descriptions.","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"TermInterface","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"TermBreadcrumbStructure","ofType":null},{"kind":"OBJECT","name":"TermCategories","ofType":null},{"kind":"OBJECT","name":"TermOpeningHoursCategories","ofType":null},{"kind":"OBJECT","name":"TermTags","ofType":null},{"kind":"OBJECT","name":"TermWebformEmailCategories","ofType":null}]},{"kind":"OBJECT","name":"Text","description":"A processed text format defined by the CMS.","fields":[{"name":"value","description":"The raw text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"processed","description":"The processed text value.","args":[],"type":{"kind":"SCALAR","name":"Html","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"format","description":"The text format used to process the text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Html","description":"An HTML string\n\nContent of this type is deemed safe by the server for raw output given the\norigin and the context of its usage. The HTML can still contain scripts or style\ntags where the creating user had permission to input these.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Int","description":"The `Int` scalar type represents non-fractional signed whole numeric\nvalues. Int can represent values between -(2^31) and 2^31 - 1. ","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermCategories","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermOpeningHoursCategories","description":"Kategorier af åbningstider, f.eks. \"Åbent\" eller \"Telefontid\"","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermTags","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermWebformEmailCategories","description":"List of email categories used for sending webform submissions. Each category is associated with an email address.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"email","description":"Add which email to send form submissions of this category to.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Email","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Email","description":"An email address.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"ParagraphUnion","description":"Entity type paragraph.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"ParagraphAccordion","ofType":null},{"kind":"OBJECT","name":"ParagraphBanner","ofType":null},{"kind":"OBJECT","name":"ParagraphBreadcrumbChildren","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridManual","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSlider","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSliderAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphFilteredEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphManualEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphTextBody","ofType":null}]},{"kind":"OBJECT","name":"ParagraphAccordion","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"accordionDescription","description":"Accordion beskrivelse","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accordionTitle","description":"Accordion titel","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"ParagraphInterface","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"ParagraphAccordion","ofType":null},{"kind":"OBJECT","name":"ParagraphBanner","ofType":null},{"kind":"OBJECT","name":"ParagraphBreadcrumbChildren","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridManual","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSlider","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSliderAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphFilteredEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphManualEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphTextBody","ofType":null}]},{"kind":"OBJECT","name":"ParagraphBanner","description":"Banner's purpose is to link internally or externally and can be used with or without a background image.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"bannerDescription","description":"Banner description","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"bannerImage","description":"Banner Image","args":[],"type":{"kind":"UNION","name":"MediaUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"bannerLink","description":"Banner Link","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Link","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"underlinedTitle","description":"Underlined title","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"MediaUnion","description":"Entity type media.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"MediaDocument","ofType":null},{"kind":"OBJECT","name":"MediaImage","ofType":null},{"kind":"OBJECT","name":"MediaVideo","ofType":null}]},{"kind":"OBJECT","name":"MediaDocument","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mediaFile","description":"Fil","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"File","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"MediaInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"MediaInterface","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"MediaDocument","ofType":null},{"kind":"OBJECT","name":"MediaImage","ofType":null},{"kind":"OBJECT","name":"MediaVideo","ofType":null}]},{"kind":"OBJECT","name":"File","description":"A file object to represent an managed file.","fields":[{"name":"name","description":"The name of the file.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"url","description":"The URL of the file.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"size","description":"Filens størrelse i bytes.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mime","description":"The mime type of the file.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"The description of the file.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"MediaImage","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"byline","description":"Bruges til fotokreditering og info om copyright. Vises som regel ved siden af billedet.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mediaImage","description":"Du kan indstille et fokuspunkt ved at klikke på forhåndsvisningen af\nbilledet og flytte det hvide mål.

Ved at indstille et fokuspunkt\nfortæller du systemet, hvilken del af billedet der skal være i fokus, når\ndet beskæres.

Brug funktionen \"forhåndsvisning\" til at se,\nhvordan dit billede vil blive beskåret på tværs af billedstil.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Image","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"MediaInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Image","description":"A image object to represent an managed file.","fields":[{"name":"url","description":"The URL of the image.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"width","description":"The width of the image.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"height","description":"The height of the image.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"alt","description":"The alt text of the image.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"The title text of the image.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"size","description":"The size of the image in bytes.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mime","description":"The mime type of the image.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"MediaVideo","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mediaOembedVideo","description":"URL til video","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"MediaInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphBreadcrumbChildren","description":"Vis automatisk alt indhold, som refererer til dit valgte brødkrumme element.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphCardGridAutomatic","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterBranches","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCategories","description":"Filter efter kategorier","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCondType","description":"Condition type","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterContentTypes","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterTags","description":"Filter efter tags","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"moreLink","description":"More link","args":[],"type":{"kind":"OBJECT","name":"Link","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphCardGridManual","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"gridContent","description":"Indhold","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"NodeArticle","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"moreLink","description":"More link","args":[],"type":{"kind":"OBJECT","name":"Link","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Overskrift","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphContentSlider","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"contentReferences","description":"Indhold","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"NodeArticle","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"deprecated","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"underlinedTitle","description":"Title","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphContentSliderAutomatic","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterBranches","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCategories","description":"Filter by categories","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCondType","description":"Condition type","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterContentTypes","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterTags","description":"Filter by tags","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"deprecated","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"underlinedTitle","description":"Title","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphFilteredEventList","description":"Denne paragraph viser en liste af arrangementer filtreret på kategori, tags og filialer.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterBranches","description":"Tilføj enhver forgrening, du vil inkludere","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCategories","description":"Tilføj en kategori, du vil inkludere","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCondType","description":"Condition type","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterTags","description":"Tilføj et tag, du vil inkludere","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"maxItemAmount","description":"Select the amount of events you want to display.

If the amount\ndisplayed is less than what you put here, it is likely because there are not\nenough results based on your selected filters.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphManualEventList","description":"Dette afsnit vil vise en liste over arrangementer, der er manuelt valgt.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"events","description":"Arrangementer","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"UnsupportedType","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"UnsupportedType","description":"Unsupported entity or field type in the schema.\nThis entity may not have been enabled in the schema yet and is being referenced via entity reference.","fields":[{"name":"unsupported","description":"Unsupported type, always TRUE.","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphTextBody","description":"En basal, formateret brødtekst","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"body","description":"Brødtekst","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"SchemaInformation","description":"Schema information provided by the system.","fields":[{"name":"description","description":"The schema description.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"home","description":"The internal path to the front page.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"version","description":"The schema version.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"languages","description":"List of languages available.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":"The schema's entry-point for mutations.","fields":[{"name":"_","description":"Placeholder for mutation extension.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Subscription","description":"The schema's entry-point for subscriptions.","fields":[{"name":"_","description":"Placeholder for subscription extension.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Float","description":"The `Float` scalar type represents signed double-precision fractional\nvalues as specified by\n[IEEE 754](http://en.wikipedia.org/wiki/IEEE_floating_point). ","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields`, `interfaces`, and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"isRepeatable","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"Address","description":"Complex address data.","fields":[{"name":"langcode","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"country","description":null,"args":[],"type":{"kind":"OBJECT","name":"AddressCountry","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"givenName","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"additionalName","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"familyName","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"organization","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addressLine1","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addressLine2","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"postalCode","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sortingCode","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"dependentLocality","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locality","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"administrativeArea","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"AddressCountry","description":"Address country.","fields":[{"name":"name","description":"The name of the country.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"code","description":"The code of the country.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"DateRange","description":"A Date range has a start and an end.","fields":[{"name":"start","description":"The start of the date range.","args":[],"type":{"kind":"OBJECT","name":"DateTime","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"end","description":"The end of the date range.","args":[],"type":{"kind":"OBJECT","name":"DateTime","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"KeyValueInput","description":"Generic input for key-value pairs.","fields":null,"inputFields":[{"name":"key","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"value","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"PhoneNumber","description":"A field whose value conforms to the standard E.164","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"SortDirection","description":"Sort direction.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"ASC","description":"Stigende","isDeprecated":false,"deprecationReason":null},{"name":"DESC","description":"Faldende","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"TextSummary","description":"A processed text format with summary defined by the CMS.","fields":[{"name":"value","description":"The raw text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"processed","description":"The processed text value.","args":[],"type":{"kind":"SCALAR","name":"Html","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"format","description":"The text format used to process the text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"summary","description":"The processed text summary.","args":[],"type":{"kind":"SCALAR","name":"Html","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Translation","description":"Available translations for content.","fields":[{"name":"title","description":"The title of the translation.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The language of the translation.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"The path to the translated content.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"UntypedStructuredData","description":"Untyped structured data. Eg JSON, configuration, settings, attributes.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null}],"directives":[{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} diff --git a/dpl-go.sdl b/dpl-go.sdl new file mode 100644 index 000000000..997427414 --- /dev/null +++ b/dpl-go.sdl @@ -0,0 +1,978 @@ +"""The schema's entry-point for queries.""" +type Query { + """Load a NodeArticle entity by id""" + nodeArticle( + """The id of the NodeArticle to load.""" + id: ID! + + """Optionally set the response language. Eg en, ja, fr.""" + langcode: String + + """ + Optionally set the revision of the entity. Eg current, latest, or an ID. + """ + revision: ID + ): NodeArticle + + """Schema information.""" + info: SchemaInformation! +} + +"""Brug artikler til nyhedspræget indhold med en begrænset levetid.""" +type NodeArticle implements NodeInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Bibliotek""" + branch: NodeUnion + + """ + Oplys en canonical URL hvis indholdet i artiklen er kopieret fra en anden + hjemmeside (fx kopieret fra et andet biblioteks hjemmeside). Dette hjælper + med at signalere til søgemaskiner at kilden til indholdet er den + specificerede side, og sikrer at den originale kilde krediteres. + """ + canonicalUrl: Link + + """Kategorier""" + categories: TermUnion + + """Tidspunktet hvor indholdselementet sidst blev redigeret.""" + changed: DateTime! + + """The date and time that the content was created.""" + created: DateTime! + + """Sprog""" + langcode: Language! + + """Overskriv forfatter""" + overrideAuthor: String + + """Paragraphs""" + paragraphs: [ParagraphUnion!] + + """Alternativ URL""" + path: String! + + """Forfremmet til forside""" + promote: Boolean! + + """Publication date""" + publicationDate: DateTime! + + """ + Som standard er forfatteren sat til den Drupal-bruger, der ejer indholdet.

Hvis du ønsker at tilsidesætte dette med din egen tekst, kan du + """ + showOverrideAuthor: Boolean + + """Publiceret""" + status: Boolean! + + """Klæbrig""" + sticky: Boolean! + + """Manchet""" + subtitle: String + + """Tags""" + tags: [TermUnion!] + + """ + Teaserfelterne bruges til cards som blikfang for indholdet. Hvis der ikke er + valgt et teaserbillede, vil teksten vises i stedet. + """ + teaserImage: MediaUnion + + """Teasertekst""" + teaserText: String + + """Titel""" + title: String! +} + +"""Entity type node.""" +interface NodeInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Tidspunktet hvor indholdselementet sidst blev redigeret.""" + changed: DateTime! + + """The date and time that the content was created.""" + created: DateTime! + + """Sprog""" + langcode: Language! + + """Alternativ URL""" + path: String! + + """Forfremmet til forside""" + promote: Boolean! + + """Publiceret""" + status: Boolean! + + """Klæbrig""" + sticky: Boolean! + + """Titel""" + title: String! +} + +"""A DateTime object.""" +type DateTime { + """ + Type represents date and time as number of milliseconds from start of the UNIX epoch. + """ + timestamp: Timestamp! + + """A field whose value exists in the standard IANA Time Zone Database.""" + timezone: TimeZone! + + """A string that will have a value of format ±hh:mm""" + offset: UtcOffset! + + """RFC 3339 compliant time string.""" + time: Time! +} + +""" +Type represents date and time as number of milliseconds from start of the UNIX epoch. +""" +scalar Timestamp + +"""A field whose value exists in the standard IANA Time Zone Database.""" +scalar TimeZone + +"""A string that will have a value of format ±hh:mm""" +scalar UtcOffset + +"""RFC 3339 compliant time string.""" +scalar Time + +"""A language definition provided by the CMS.""" +type Language { + """Sprogkoden.""" + id: ID + + """Sprogets navn.""" + name: String + + """The language direction.""" + direction: String +} + +"""Entity type node.""" +union NodeUnion = NodeArticle + +"""A link.""" +type Link { + """The title of the link.""" + title: String + + """The URL of the link.""" + url: String + + """Whether the link is internal to this website.""" + internal: Boolean! +} + +"""Entity type taxonomy_term.""" +union TermUnion = TermBreadcrumbStructure | TermCategories | TermOpeningHoursCategories | TermTags | TermWebformEmailCategories + +"""Entity type taxonomy_term.""" +type TermBreadcrumbStructure implements TermInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Datoen hvor termen senest blev redigeret.""" + changed: DateTime! + + """ + Titlen, der vises over listen af refereret indhold. Vil ikke blive vist, hvis der ikke vises nogen børn. + """ + childrenTitle: String + + """Indhold der linkes til""" + content: NodeUnion! + + """Beskrivelse""" + description: Text! + + """Term sprogkode.""" + langcode: Language! + + """Navn""" + name: String! + + """Denne terms overordnede termer.""" + parent: TermUnion + + """Alternativ URL""" + path: String! + + """ + Vis en automatisk liste med indhold, som refererer til dette brødkrumme element, på denne side. + """ + showChildren: Boolean + + """ + If this is checked, the children teasers will be expanded with possible subtitle descriptions. + """ + showChildrenSubtitles: Boolean + + """Publiceret""" + status: Boolean! + + """Vægten af denne term i forhold til andre termer.""" + weight: Int! +} + +"""Entity type taxonomy_term.""" +interface TermInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Datoen hvor termen senest blev redigeret.""" + changed: DateTime! + + """Beskrivelse""" + description: Text! + + """Term sprogkode.""" + langcode: Language! + + """Navn""" + name: String! + + """Denne terms overordnede termer.""" + parent: TermUnion + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! + + """Vægten af denne term i forhold til andre termer.""" + weight: Int! +} + +"""A processed text format defined by the CMS.""" +type Text { + """The raw text value.""" + value: String + + """The processed text value.""" + processed: Html + + """The text format used to process the text value.""" + format: String +} + +""" +An HTML string + +Content of this type is deemed safe by the server for raw output given the +origin and the context of its usage. The HTML can still contain scripts or style +tags where the creating user had permission to input these. +""" +scalar Html + +"""Entity type taxonomy_term.""" +type TermCategories implements TermInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Datoen hvor termen senest blev redigeret.""" + changed: DateTime! + + """Beskrivelse""" + description: Text! + + """Term sprogkode.""" + langcode: Language! + + """Navn""" + name: String! + + """Denne terms overordnede termer.""" + parent: TermUnion + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! + + """Vægten af denne term i forhold til andre termer.""" + weight: Int! +} + +""" +Kategorier af åbningstider, f.eks. "Åbent" eller "Telefontid" +""" +type TermOpeningHoursCategories implements TermInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Datoen hvor termen senest blev redigeret.""" + changed: DateTime! + + """Beskrivelse""" + description: Text! + + """Term sprogkode.""" + langcode: Language! + + """Navn""" + name: String! + + """Denne terms overordnede termer.""" + parent: TermUnion + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! + + """Vægten af denne term i forhold til andre termer.""" + weight: Int! +} + +"""Entity type taxonomy_term.""" +type TermTags implements TermInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Datoen hvor termen senest blev redigeret.""" + changed: DateTime! + + """Beskrivelse""" + description: Text! + + """Term sprogkode.""" + langcode: Language! + + """Navn""" + name: String! + + """Denne terms overordnede termer.""" + parent: TermUnion + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! + + """Vægten af denne term i forhold til andre termer.""" + weight: Int! +} + +""" +List of email categories used for sending webform submissions. Each category is associated with an email address. +""" +type TermWebformEmailCategories implements TermInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Datoen hvor termen senest blev redigeret.""" + changed: DateTime! + + """Beskrivelse""" + description: Text! + + """Add which email to send form submissions of this category to.""" + email: Email! + + """Term sprogkode.""" + langcode: Language! + + """Navn""" + name: String! + + """Denne terms overordnede termer.""" + parent: TermUnion + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! + + """Vægten af denne term i forhold til andre termer.""" + weight: Int! +} + +"""An email address.""" +scalar Email + +"""Entity type paragraph.""" +union ParagraphUnion = ParagraphAccordion | ParagraphBanner | ParagraphBreadcrumbChildren | ParagraphCardGridAutomatic | ParagraphCardGridManual | ParagraphContentSlider | ParagraphContentSliderAutomatic | ParagraphFilteredEventList | ParagraphManualEventList | ParagraphTextBody + +"""Entity type paragraph.""" +type ParagraphAccordion implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Accordion beskrivelse""" + accordionDescription: Text + + """Accordion titel""" + accordionTitle: Text! + + """The time that the Paragraph was created.""" + created: DateTime! + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! +} + +"""Entity type paragraph.""" +interface ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time that the Paragraph was created.""" + created: DateTime! + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! +} + +""" +Banner's purpose is to link internally or externally and can be used with or without a background image. +""" +type ParagraphBanner implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Banner description""" + bannerDescription: String + + """Banner Image""" + bannerImage: MediaUnion + + """Banner Link""" + bannerLink: Link! + + """The time that the Paragraph was created.""" + created: DateTime! + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! + + """Underlined title""" + underlinedTitle: Text +} + +"""Entity type media.""" +union MediaUnion = MediaDocument | MediaImage | MediaVideo + +"""Entity type media.""" +type MediaDocument implements MediaInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time the media item was last edited.""" + changed: DateTime! + + """The time the media item was created.""" + created: DateTime! + + """Sprog""" + langcode: Language! + + """Fil""" + mediaFile: File! + + """Navn""" + name: String! + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! +} + +"""Entity type media.""" +interface MediaInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time the media item was last edited.""" + changed: DateTime! + + """The time the media item was created.""" + created: DateTime! + + """Sprog""" + langcode: Language! + + """Navn""" + name: String! + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! +} + +"""A file object to represent an managed file.""" +type File { + """The name of the file.""" + name: String + + """The URL of the file.""" + url: String! + + """Filens størrelse i bytes.""" + size: Int! + + """The mime type of the file.""" + mime: String + + """The description of the file.""" + description: String +} + +"""Entity type media.""" +type MediaImage implements MediaInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """ + Bruges til fotokreditering og info om copyright. Vises som regel ved siden af billedet. + """ + byline: String + + """The time the media item was last edited.""" + changed: DateTime! + + """The time the media item was created.""" + created: DateTime! + + """Sprog""" + langcode: Language! + + """ + Du kan indstille et fokuspunkt ved at klikke på forhåndsvisningen af + billedet og flytte det hvide mål.

Ved at indstille et fokuspunkt + fortæller du systemet, hvilken del af billedet der skal være i fokus, når + det beskæres.

Brug funktionen "forhåndsvisning" til at se, + hvordan dit billede vil blive beskåret på tværs af billedstil. + """ + mediaImage: Image! + + """Navn""" + name: String! + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! +} + +"""A image object to represent an managed file.""" +type Image { + """The URL of the image.""" + url: String! + + """The width of the image.""" + width: Int! + + """The height of the image.""" + height: Int! + + """The alt text of the image.""" + alt: String + + """The title text of the image.""" + title: String + + """The size of the image in bytes.""" + size: Int! + + """The mime type of the image.""" + mime: String +} + +"""Entity type media.""" +type MediaVideo implements MediaInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time the media item was last edited.""" + changed: DateTime! + + """The time the media item was created.""" + created: DateTime! + + """Sprog""" + langcode: Language! + + """URL til video""" + mediaOembedVideo: String! + + """Navn""" + name: String! + + """Alternativ URL""" + path: String! + + """Publiceret""" + status: Boolean! +} + +""" +Vis automatisk alt indhold, som refererer til dit valgte brødkrumme element. +""" +type ParagraphBreadcrumbChildren implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time that the Paragraph was created.""" + created: DateTime! + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! +} + +"""Entity type paragraph.""" +type ParagraphCardGridAutomatic implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time that the Paragraph was created.""" + created: DateTime! + + """If nothing is selected, all will be chosen.""" + filterBranches: [NodeUnion!] + + """Filter efter kategorier""" + filterCategories: [TermUnion!] + + """Condition type""" + filterCondType: String! + + """If nothing is selected, all will be chosen.""" + filterContentTypes: [String!] + + """Filter efter tags""" + filterTags: [TermUnion!] + + """The paragraphs entity language code.""" + langcode: Language! + + """More link""" + moreLink: Link + + """Publiceret""" + status: Boolean! + + """Titel""" + title: String +} + +"""Entity type paragraph.""" +type ParagraphCardGridManual implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time that the Paragraph was created.""" + created: DateTime! + + """Indhold""" + gridContent: [NodeArticle!] + + """The paragraphs entity language code.""" + langcode: Language! + + """More link""" + moreLink: Link + + """Publiceret""" + status: Boolean! + + """Overskrift""" + title: String +} + +"""Entity type paragraph.""" +type ParagraphContentSlider implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Indhold""" + contentReferences: [NodeArticle!] + + """The time that the Paragraph was created.""" + created: DateTime! + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! + + """deprecated""" + title: String + + """Title""" + underlinedTitle: Text +} + +"""Entity type paragraph.""" +type ParagraphContentSliderAutomatic implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time that the Paragraph was created.""" + created: DateTime! + + """If nothing is selected, all will be chosen.""" + filterBranches: [NodeUnion!] + + """Filter by categories""" + filterCategories: [TermUnion!] + + """Condition type""" + filterCondType: String! + + """If nothing is selected, all will be chosen.""" + filterContentTypes: [String!] + + """Filter by tags""" + filterTags: [TermUnion!] + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! + + """deprecated""" + title: String + + """Title""" + underlinedTitle: Text +} + +""" +Denne paragraph viser en liste af arrangementer filtreret på kategori, tags og filialer. +""" +type ParagraphFilteredEventList implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time that the Paragraph was created.""" + created: DateTime! + + """Tilføj enhver forgrening, du vil inkludere""" + filterBranches: [NodeUnion!] + + """Tilføj en kategori, du vil inkludere""" + filterCategories: [TermUnion!] + + """Condition type""" + filterCondType: String! + + """Tilføj et tag, du vil inkludere""" + filterTags: [TermUnion!] + + """The paragraphs entity language code.""" + langcode: Language! + + """ + Select the amount of events you want to display.

If the amount + displayed is less than what you put here, it is likely because there are not + enough results based on your selected filters. + """ + maxItemAmount: String! + + """Publiceret""" + status: Boolean! + + """Titel""" + title: String +} + +""" +Dette afsnit vil vise en liste over arrangementer, der er manuelt valgt. +""" +type ParagraphManualEventList implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """The time that the Paragraph was created.""" + created: DateTime! + + """Arrangementer""" + events: [UnsupportedType!] + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! + + """Titel""" + title: String +} + +""" +Unsupported entity or field type in the schema. +This entity may not have been enabled in the schema yet and is being referenced via entity reference. +""" +type UnsupportedType { + """Unsupported type, always TRUE.""" + unsupported: Boolean +} + +"""En basal, formateret brødtekst""" +type ParagraphTextBody implements ParagraphInterface { + """The Universally Unique IDentifier (UUID).""" + id: ID! + + """Brødtekst""" + body: Text + + """The time that the Paragraph was created.""" + created: DateTime! + + """The paragraphs entity language code.""" + langcode: Language! + + """Publiceret""" + status: Boolean! +} + +"""Schema information provided by the system.""" +type SchemaInformation { + """The schema description.""" + description: String + + """The internal path to the front page.""" + home: String + + """The schema version.""" + version: String + + """List of languages available.""" + languages: [Language!]! +} + +"""The schema's entry-point for mutations.""" +type Mutation { + """Placeholder for mutation extension.""" + _: Boolean! +} + +"""The schema's entry-point for subscriptions.""" +type Subscription { + """Placeholder for subscription extension.""" + _: Boolean! +} + +"""Complex address data.""" +type Address { + langcode: String + country: AddressCountry + givenName: String + additionalName: String + familyName: String + organization: String + addressLine1: String + addressLine2: String + postalCode: String + sortingCode: String + dependentLocality: String + locality: String + administrativeArea: String +} + +"""Address country.""" +type AddressCountry { + """The name of the country.""" + name: String + + """The code of the country.""" + code: String +} + +"""A Date range has a start and an end.""" +type DateRange { + """The start of the date range.""" + start: DateTime + + """The end of the date range.""" + end: DateTime +} + +"""Generic input for key-value pairs.""" +input KeyValueInput { + key: String! + value: String +} + +"""A field whose value conforms to the standard E.164""" +scalar PhoneNumber + +"""Sort direction.""" +enum SortDirection { + """Stigende""" + ASC + + """Faldende""" + DESC +} + +"""A processed text format with summary defined by the CMS.""" +type TextSummary { + """The raw text value.""" + value: String + + """The processed text value.""" + processed: Html + + """The text format used to process the text value.""" + format: String + + """The processed text summary.""" + summary: Html +} + +"""Available translations for content.""" +type Translation { + """The title of the translation.""" + title: String + + """The language of the translation.""" + langcode: Language! + + """The path to the translated content.""" + path: String +} + +"""Untyped structured data. Eg JSON, configuration, settings, attributes.""" +scalar UntypedStructuredData From 0675389c76eb40266aa9cacb0304dad6242e3c00 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Mon, 7 Oct 2024 00:02:24 +0200 Subject: [PATCH 06/14] Added missing configuration updates after merging with develop branch and running a reset on the environment. --- ....field.paragraph.card_grid_manual.field_grid_content.yml | 6 ++++++ ...ld.paragraph.content_slider.field_content_references.yml | 6 ++++++ ...d.paragraph.nav_grid_manual.field_content_references.yml | 6 ++++++ ...d.paragraph.nav_spots_manual.field_nav_spots_content.yml | 6 ++++++ config/sync/language.types.yml | 1 + 5 files changed, 25 insertions(+) diff --git a/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml b/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml index 0f9cc67ff..6fac6280a 100644 --- a/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml +++ b/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml @@ -68,4 +68,10 @@ settings: webform_submission: handler: 'default:webform_submission' handler_settings: { } + consumer: + handler: 'default:consumer' + handler_settings: { } + oauth2_token: + handler: 'default:oauth2_token' + handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/field.field.paragraph.content_slider.field_content_references.yml b/config/sync/field.field.paragraph.content_slider.field_content_references.yml index e0ee13b3e..15e631c45 100644 --- a/config/sync/field.field.paragraph.content_slider.field_content_references.yml +++ b/config/sync/field.field.paragraph.content_slider.field_content_references.yml @@ -75,4 +75,10 @@ settings: webform_submission: handler: 'default:webform_submission' handler_settings: { } + consumer: + handler: 'default:consumer' + handler_settings: { } + oauth2_token: + handler: 'default:oauth2_token' + handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml b/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml index bdfdf4811..51c451567 100644 --- a/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml +++ b/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml @@ -71,4 +71,10 @@ settings: webform_submission: handler: 'default:webform_submission' handler_settings: { } + consumer: + handler: 'default:consumer' + handler_settings: { } + oauth2_token: + handler: 'default:oauth2_token' + handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml b/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml index 4c4ee956b..5e86e0fdc 100644 --- a/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml +++ b/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml @@ -71,4 +71,10 @@ settings: webform_submission: handler: 'default:webform_submission' handler_settings: { } + consumer: + handler: 'default:consumer' + handler_settings: { } + oauth2_token: + handler: 'default:oauth2_token' + handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/language.types.yml b/config/sync/language.types.yml index 186c6457c..c2c8a8780 100644 --- a/config/sync/language.types.yml +++ b/config/sync/language.types.yml @@ -16,6 +16,7 @@ negotiation: language-url-fallback: 1 language_interface: enabled: + language-graphql-operation: -999 language-user-admin: -10 language-session: -6 language-selected: 12 From b792b573488e45c125415c80da8ae2179a9f5b20 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Mon, 7 Oct 2024 11:02:41 +0200 Subject: [PATCH 07/14] Added initial oauth2 configuration. --- .../simple_oauth.oauth2_token.bundle.access_token.yml | 10 ++++++++++ .../simple_oauth.oauth2_token.bundle.auth_code.yml | 10 ++++++++++ ...simple_oauth.oauth2_token.bundle.refresh_token.yml | 10 ++++++++++ config/sync/simple_oauth.settings.yml | 11 +++++++++++ 4 files changed, 41 insertions(+) create mode 100644 config/sync/simple_oauth.oauth2_token.bundle.access_token.yml create mode 100644 config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml create mode 100644 config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml create mode 100644 config/sync/simple_oauth.settings.yml diff --git a/config/sync/simple_oauth.oauth2_token.bundle.access_token.yml b/config/sync/simple_oauth.oauth2_token.bundle.access_token.yml new file mode 100644 index 000000000..62b96bced --- /dev/null +++ b/config/sync/simple_oauth.oauth2_token.bundle.access_token.yml @@ -0,0 +1,10 @@ +uuid: 7aae2999-546f-4094-b14e-507e9913c03b +langcode: en +status: true +dependencies: { } +_core: + default_config_hash: z9ULI9nj9yt73YKI3ZE8v9yXhkVfvQsDJToEDzijcxY +id: access_token +label: 'Access Token' +description: 'The access token type.' +locked: true diff --git a/config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml b/config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml new file mode 100644 index 000000000..f3d6fc490 --- /dev/null +++ b/config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml @@ -0,0 +1,10 @@ +uuid: 0bd07fae-50e0-46e8-95f3-83add199f65f +langcode: en +status: true +dependencies: { } +_core: + default_config_hash: zYKaSl4QZrKMFj7aIhSGDRcBy4SoNjvY2EZlT7amrBk +id: auth_code +label: 'Auth code' +description: 'The auth code type.' +locked: true diff --git a/config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml b/config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml new file mode 100644 index 000000000..af6427f5b --- /dev/null +++ b/config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml @@ -0,0 +1,10 @@ +uuid: 9687a981-f94c-4ce8-ac35-c202f9daba4c +langcode: en +status: true +dependencies: { } +_core: + default_config_hash: YWMv3Do9fsPFhylyFkOwcqcFP4jSU6DLRootOlgrC0M +id: refresh_token +label: 'Refresh token' +description: 'The refresh token type.' +locked: true diff --git a/config/sync/simple_oauth.settings.yml b/config/sync/simple_oauth.settings.yml new file mode 100644 index 000000000..0cffd710f --- /dev/null +++ b/config/sync/simple_oauth.settings.yml @@ -0,0 +1,11 @@ +_core: + default_config_hash: KsPFWSp6mgXIQgjBJEShfKUGn6VLRlbpIJ2EysXvXWM +access_token_expiration: 300 +authorization_code_expiration: 300 +refresh_token_expiration: 1209600 +token_cron_batch_size: 0 +public_key: ../public.key +private_key: ../private.key +remember_clients: true +use_implicit: false +disable_openid_connect: false From d2f701d4169ae1290242ed6f17911e933ab70846 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Mon, 7 Oct 2024 14:52:24 +0200 Subject: [PATCH 08/14] Added updated openapi.json specification. --- openapi.json | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/openapi.json b/openapi.json index 99a92cfea..a47cb32f5 100644 --- a/openapi.json +++ b/openapi.json @@ -12,6 +12,29 @@ "basic_auth": { "type": "basic" }, + "oauth2": { + "type": "oauth2", + "description": "For more information see https://developers.getbase.com/docs/rest/articles/oauth2/requests", + "flows": { + "password": { + "tokenUrl": "http://varnish:8080/oauth/token", + "refreshUrl": "http://varnish:8080/oauth/token" + }, + "authorizationCode": { + "authorizationUrl": "http://varnish:8080/oauth/authorize", + "tokenUrl": "http://varnish:8080/oauth/token", + "refreshUrl": "http://varnish:8080/oauth/token" + }, + "implicit": { + "authorizationUrl": "http://varnish:8080/oauth/authorize", + "refreshUrl": "http://varnish:8080/oauth/token" + }, + "clientCredentials": { + "tokenUrl": "http://varnish:8080/oauth/token", + "refreshUrl": "http://varnish:8080/oauth/token" + } + } + }, "csrf_token": { "type": "apiKey", "name": "X-CSRF-Token", @@ -23,6 +46,9 @@ { "basic_auth": [] }, + { + "oauth2": [] + }, { "csrf_token": [] } From a5a74de074c49a20991085ddf8a730c945861afe Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Fri, 11 Oct 2024 05:23:19 +0200 Subject: [PATCH 09/14] Added new patch for openapi module. The patch fixes an issue where the the openapi module was generating security definitions for oauth2 using v3 specification instead of v2. This resulted in errors when trying to generate API SDK files as v2 does not support multiple oauth2 flows. --- composer.json | 3 ++- composer.lock | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 16878cde8..1d0c2ad77 100644 --- a/composer.json +++ b/composer.json @@ -335,7 +335,8 @@ "3251587: Change logging from stdout to stderr": "https://www.drupal.org/files/issues/2021-11-29/jsonlog-change-stdout-to-stderr-3251587-3.patch" }, "drupal/openapi": { - "3313521: OpenAPI security field does not validate": "https://git.drupalcode.org/project/openapi/-/commit/4964cf725242040ddfb0c591b6044ee1fa5912ef.patch" + "3313521: OpenAPI security field does not validate": "https://git.drupalcode.org/project/openapi/-/commit/4964cf725242040ddfb0c591b6044ee1fa5912ef.patch", + "3480050: Update oauth2 security definitions to match openapi v2 specification": "https://www.drupal.org/files/issues/2024-10-11/openapi-add-oauth2-accesscode-flow-3480050-3.patch" }, "drupal/openapi_rest": { "3171530 + 3116760: Add support for parameter and response descriptions": "patches/openapi-parameter-response-descriptions-14-3.patch", diff --git a/composer.lock b/composer.lock index 63abb1e69..c957c4d2d 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d860ec5949d41c8fadafc84cd92f42f0", + "content-hash": "05a880abeeab6bcf52ebcae35e30266d", "packages": [ { "name": "amazeeio/drupal_integrations", From b8769b11ddc496ab56f72d057e0981459614ba2b Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Fri, 11 Oct 2024 05:25:45 +0200 Subject: [PATCH 10/14] Added the updated openapi.json file as well as the updated API SDK files. --- openapi.json | 23 +++-------------------- packages/cms-api/README.md | 7 +++++++ 2 files changed, 10 insertions(+), 20 deletions(-) diff --git a/openapi.json b/openapi.json index a47cb32f5..2bb3c239b 100644 --- a/openapi.json +++ b/openapi.json @@ -14,26 +14,9 @@ }, "oauth2": { "type": "oauth2", - "description": "For more information see https://developers.getbase.com/docs/rest/articles/oauth2/requests", - "flows": { - "password": { - "tokenUrl": "http://varnish:8080/oauth/token", - "refreshUrl": "http://varnish:8080/oauth/token" - }, - "authorizationCode": { - "authorizationUrl": "http://varnish:8080/oauth/authorize", - "tokenUrl": "http://varnish:8080/oauth/token", - "refreshUrl": "http://varnish:8080/oauth/token" - }, - "implicit": { - "authorizationUrl": "http://varnish:8080/oauth/authorize", - "refreshUrl": "http://varnish:8080/oauth/token" - }, - "clientCredentials": { - "tokenUrl": "http://varnish:8080/oauth/token", - "refreshUrl": "http://varnish:8080/oauth/token" - } - } + "flow": "accessCode", + "authorizationUrl": "http://varnish:8080/oauth/authorize", + "tokenUrl": "http://varnish:8080/oauth/token" }, "csrf_token": { "type": "apiKey", diff --git a/packages/cms-api/README.md b/packages/cms-api/README.md index 12253749d..9457e2519 100644 --- a/packages/cms-api/README.md +++ b/packages/cms-api/README.md @@ -147,6 +147,13 @@ Authentication schemes defined for the API: - **Type**: HTTP basic authentication +### oauth2 + +- **Type**: OAuth +- **Flow**: accessCode +- **Authorization URL**: http://varnish:8080/oauth/authorize +- **Scopes**: N/A + ### csrf_token - **Type**: API key From 9016caf1f2ab97c8450fa22ebf2953b2b9354cec Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Tue, 15 Oct 2024 00:40:31 +0200 Subject: [PATCH 11/14] Removed next, next_graphql and simple_oauth modules as they were interfering with the REST API requests for opening_hours. I tried to configure it so the oauth2 authentication method would not apply for other endpoints other than graphql, but was unsuccessful. Decided to skip this for now and return and look on how to enalbe oauth authentication again on a later point. --- config/sync/core.extension.yml | 3 --- config/sync/next.settings.yml | 12 ------------ ...simple_oauth.oauth2_token.bundle.access_token.yml | 10 ---------- .../simple_oauth.oauth2_token.bundle.auth_code.yml | 10 ---------- ...imple_oauth.oauth2_token.bundle.refresh_token.yml | 10 ---------- 5 files changed, 45 deletions(-) delete mode 100644 config/sync/next.settings.yml delete mode 100644 config/sync/simple_oauth.oauth2_token.bundle.access_token.yml delete mode 100644 config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml delete mode 100644 config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 840c4fd8e..d1aa2ffed 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -130,8 +130,6 @@ module: multiple_fields_remove_button: 0 multivalue_form_element: 0 mysql: 0 - next: 0 - next_graphql: 0 node: 0 openapi: 0 openapi_rest: 0 @@ -165,7 +163,6 @@ module: select2: 0 serialization: 0 simple_menu_permissions: 0 - simple_oauth: 0 subrequests: 0 system: 0 taxonomy: 0 diff --git a/config/sync/next.settings.yml b/config/sync/next.settings.yml deleted file mode 100644 index 40806e690..000000000 --- a/config/sync/next.settings.yml +++ /dev/null @@ -1,12 +0,0 @@ -_core: - default_config_hash: jbxXpRK_Rb2LOkn_TkZYWKdj9PolvUxkfrWLJn0_tso -langcode: en -site_previewer: iframe -site_previewer_configuration: - width: 100% - sync_route: false - sync_route_skip_routes: '' -preview_url_generator: simple_oauth -preview_url_generator_configuration: - secret_expiration: 30 -debug: false diff --git a/config/sync/simple_oauth.oauth2_token.bundle.access_token.yml b/config/sync/simple_oauth.oauth2_token.bundle.access_token.yml deleted file mode 100644 index 62b96bced..000000000 --- a/config/sync/simple_oauth.oauth2_token.bundle.access_token.yml +++ /dev/null @@ -1,10 +0,0 @@ -uuid: 7aae2999-546f-4094-b14e-507e9913c03b -langcode: en -status: true -dependencies: { } -_core: - default_config_hash: z9ULI9nj9yt73YKI3ZE8v9yXhkVfvQsDJToEDzijcxY -id: access_token -label: 'Access Token' -description: 'The access token type.' -locked: true diff --git a/config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml b/config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml deleted file mode 100644 index f3d6fc490..000000000 --- a/config/sync/simple_oauth.oauth2_token.bundle.auth_code.yml +++ /dev/null @@ -1,10 +0,0 @@ -uuid: 0bd07fae-50e0-46e8-95f3-83add199f65f -langcode: en -status: true -dependencies: { } -_core: - default_config_hash: zYKaSl4QZrKMFj7aIhSGDRcBy4SoNjvY2EZlT7amrBk -id: auth_code -label: 'Auth code' -description: 'The auth code type.' -locked: true diff --git a/config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml b/config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml deleted file mode 100644 index af6427f5b..000000000 --- a/config/sync/simple_oauth.oauth2_token.bundle.refresh_token.yml +++ /dev/null @@ -1,10 +0,0 @@ -uuid: 9687a981-f94c-4ce8-ac35-c202f9daba4c -langcode: en -status: true -dependencies: { } -_core: - default_config_hash: YWMv3Do9fsPFhylyFkOwcqcFP4jSU6DLRootOlgrC0M -id: refresh_token -label: 'Refresh token' -description: 'The refresh token type.' -locked: true From e8d9acd0f8be8ae8f1c5ce2babb484365455c484 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Tue, 15 Oct 2024 00:46:17 +0200 Subject: [PATCH 12/14] Updated the openapi.json and generated an updated cms-api package. --- ....paragraph.card_grid_manual.field_grid_content.yml | 3 --- ...agraph.content_slider.field_content_references.yml | 3 --- ...graph.nav_grid_manual.field_content_references.yml | 3 --- ...graph.nav_spots_manual.field_nav_spots_content.yml | 3 --- config/sync/simple_oauth.settings.yml | 11 ----------- openapi.json | 9 --------- packages/cms-api/README.md | 7 ------- 7 files changed, 39 deletions(-) delete mode 100644 config/sync/simple_oauth.settings.yml diff --git a/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml b/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml index 6fac6280a..8d60e4852 100644 --- a/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml +++ b/config/sync/field.field.paragraph.card_grid_manual.field_grid_content.yml @@ -71,7 +71,4 @@ settings: consumer: handler: 'default:consumer' handler_settings: { } - oauth2_token: - handler: 'default:oauth2_token' - handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/field.field.paragraph.content_slider.field_content_references.yml b/config/sync/field.field.paragraph.content_slider.field_content_references.yml index 15e631c45..48e6d9360 100644 --- a/config/sync/field.field.paragraph.content_slider.field_content_references.yml +++ b/config/sync/field.field.paragraph.content_slider.field_content_references.yml @@ -78,7 +78,4 @@ settings: consumer: handler: 'default:consumer' handler_settings: { } - oauth2_token: - handler: 'default:oauth2_token' - handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml b/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml index 51c451567..99215cdb4 100644 --- a/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml +++ b/config/sync/field.field.paragraph.nav_grid_manual.field_content_references.yml @@ -74,7 +74,4 @@ settings: consumer: handler: 'default:consumer' handler_settings: { } - oauth2_token: - handler: 'default:oauth2_token' - handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml b/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml index 5e86e0fdc..0b76357b5 100644 --- a/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml +++ b/config/sync/field.field.paragraph.nav_spots_manual.field_nav_spots_content.yml @@ -74,7 +74,4 @@ settings: consumer: handler: 'default:consumer' handler_settings: { } - oauth2_token: - handler: 'default:oauth2_token' - handler_settings: { } field_type: dynamic_entity_reference diff --git a/config/sync/simple_oauth.settings.yml b/config/sync/simple_oauth.settings.yml deleted file mode 100644 index 0cffd710f..000000000 --- a/config/sync/simple_oauth.settings.yml +++ /dev/null @@ -1,11 +0,0 @@ -_core: - default_config_hash: KsPFWSp6mgXIQgjBJEShfKUGn6VLRlbpIJ2EysXvXWM -access_token_expiration: 300 -authorization_code_expiration: 300 -refresh_token_expiration: 1209600 -token_cron_batch_size: 0 -public_key: ../public.key -private_key: ../private.key -remember_clients: true -use_implicit: false -disable_openid_connect: false diff --git a/openapi.json b/openapi.json index 2bb3c239b..99a92cfea 100644 --- a/openapi.json +++ b/openapi.json @@ -12,12 +12,6 @@ "basic_auth": { "type": "basic" }, - "oauth2": { - "type": "oauth2", - "flow": "accessCode", - "authorizationUrl": "http://varnish:8080/oauth/authorize", - "tokenUrl": "http://varnish:8080/oauth/token" - }, "csrf_token": { "type": "apiKey", "name": "X-CSRF-Token", @@ -29,9 +23,6 @@ { "basic_auth": [] }, - { - "oauth2": [] - }, { "csrf_token": [] } diff --git a/packages/cms-api/README.md b/packages/cms-api/README.md index 9457e2519..12253749d 100644 --- a/packages/cms-api/README.md +++ b/packages/cms-api/README.md @@ -147,13 +147,6 @@ Authentication schemes defined for the API: - **Type**: HTTP basic authentication -### oauth2 - -- **Type**: OAuth -- **Flow**: accessCode -- **Authorization URL**: http://varnish:8080/oauth/authorize -- **Scopes**: N/A - ### csrf_token - **Type**: API key From 4dc2df1e7c9fe6d5385294df885316d157ee4613 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Tue, 15 Oct 2024 14:30:23 +0200 Subject: [PATCH 13/14] Removed unneeded openapi patch and also removed the generated dpl-go schema files. --- composer.json | 3 +- composer.lock | 2 +- dpl-go.json | 1 - dpl-go.sdl | 978 -------------------------------------------------- 4 files changed, 2 insertions(+), 982 deletions(-) delete mode 100644 dpl-go.json delete mode 100644 dpl-go.sdl diff --git a/composer.json b/composer.json index 697635655..c733d5b8b 100644 --- a/composer.json +++ b/composer.json @@ -339,8 +339,7 @@ "3251587: Change logging from stdout to stderr": "https://www.drupal.org/files/issues/2021-11-29/jsonlog-change-stdout-to-stderr-3251587-3.patch" }, "drupal/openapi": { - "3313521: OpenAPI security field does not validate": "https://git.drupalcode.org/project/openapi/-/commit/4964cf725242040ddfb0c591b6044ee1fa5912ef.patch", - "3480050: Update oauth2 security definitions to match openapi v2 specification": "https://www.drupal.org/files/issues/2024-10-11/openapi-add-oauth2-accesscode-flow-3480050-3.patch" + "3313521: OpenAPI security field does not validate": "https://git.drupalcode.org/project/openapi/-/commit/4964cf725242040ddfb0c591b6044ee1fa5912ef.patch" }, "drupal/openapi_rest": { "3171530 + 3116760: Add support for parameter and response descriptions": "patches/openapi-parameter-response-descriptions-14-3.patch", diff --git a/composer.lock b/composer.lock index e185138e9..679d970eb 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "e621a0ea524f9ceb2e00f8684d2808f2", + "content-hash": "c0b8045f68dcadbca9b6d46abaa49ee2", "packages": [ { "name": "amazeeio/drupal_integrations", diff --git a/dpl-go.json b/dpl-go.json deleted file mode 100644 index 079c67447..000000000 --- a/dpl-go.json +++ /dev/null @@ -1 +0,0 @@ -{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":{"name":"Subscription"},"types":[{"kind":"OBJECT","name":"Query","description":"The schema's entry-point for queries.","fields":[{"name":"nodeArticle","description":"Load a NodeArticle entity by id","args":[{"name":"id","description":"The id of the NodeArticle to load.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"defaultValue":null},{"name":"langcode","description":"Optionally set the response language. Eg en, ja, fr.","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"revision","description":"Optionally set the revision of the entity. Eg current, latest, or an ID.","type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null}],"type":{"kind":"OBJECT","name":"NodeArticle","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"info","description":"Schema information.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"SchemaInformation","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to\nrefetch an object or as key for a cache. The ID type appears in a JSON\nresponse as a String; however, it is not intended to be human-readable.\nWhen expected as an input type, any string (such as `\"4\"`) or integer\n(such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8\ncharacter sequences. The String type is most often used by GraphQL to\nrepresent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"NodeArticle","description":"Brug artikler til nyhedspræget indhold med en begrænset levetid.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"branch","description":"Bibliotek","args":[],"type":{"kind":"UNION","name":"NodeUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"canonicalUrl","description":"Oplys en canonical URL hvis indholdet i artiklen er kopieret fra en anden\nhjemmeside (fx kopieret fra et andet biblioteks hjemmeside). Dette hjælper\nmed at signalere til søgemaskiner at kilden til indholdet er den\nspecificerede side, og sikrer at den originale kilde krediteres.","args":[],"type":{"kind":"OBJECT","name":"Link","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"categories","description":"Kategorier","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Tidspunktet hvor indholdselementet sidst blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The date and time that the content was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"overrideAuthor","description":"Overskriv forfatter","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"paragraphs","description":"Paragraphs","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"ParagraphUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"promote","description":"Forfremmet til forside","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"publicationDate","description":"Publication date","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"showOverrideAuthor","description":"Som standard er forfatteren sat til den Drupal-bruger, der ejer indholdet.
Hvis du ønsker at tilsidesætte dette med din egen tekst, kan du","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"sticky","description":"Klæbrig","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"subtitle","description":"Manchet","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tags","description":"Tags","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"teaserImage","description":"Teaserfelterne bruges til cards som blikfang for indholdet. Hvis der ikke er\nvalgt et teaserbillede, vil teksten vises i stedet.","args":[],"type":{"kind":"UNION","name":"MediaUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"teaserText","description":"Teasertekst","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"NodeInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"NodeInterface","description":"Entity type node.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Tidspunktet hvor indholdselementet sidst blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The date and time that the content was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"promote","description":"Forfremmet til forside","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"sticky","description":"Klæbrig","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"NodeArticle","ofType":null}]},{"kind":"OBJECT","name":"DateTime","description":"A DateTime object.","fields":[{"name":"timestamp","description":"Type represents date and time as number of milliseconds from start of the UNIX epoch.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Timestamp","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"timezone","description":"A field whose value exists in the standard IANA Time Zone Database.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"TimeZone","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"offset","description":"A string that will have a value of format ±hh:mm","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"UtcOffset","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"time","description":"RFC 3339 compliant time string.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Time","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Timestamp","description":"Type represents date and time as number of milliseconds from start of the UNIX epoch.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"TimeZone","description":"A field whose value exists in the standard IANA Time Zone Database.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"UtcOffset","description":"A string that will have a value of format ±hh:mm","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Time","description":"RFC 3339 compliant time string.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Language","description":"A language definition provided by the CMS.","fields":[{"name":"id","description":"Sprogkoden.","args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Sprogets navn.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"direction","description":"The language direction.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"NodeUnion","description":"Entity type node.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"NodeArticle","ofType":null}]},{"kind":"OBJECT","name":"Link","description":"A link.","fields":[{"name":"title","description":"The title of the link.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"url","description":"The URL of the link.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"internal","description":"Whether the link is internal to this website.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"TermUnion","description":"Entity type taxonomy_term.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"TermBreadcrumbStructure","ofType":null},{"kind":"OBJECT","name":"TermCategories","ofType":null},{"kind":"OBJECT","name":"TermOpeningHoursCategories","ofType":null},{"kind":"OBJECT","name":"TermTags","ofType":null},{"kind":"OBJECT","name":"TermWebformEmailCategories","ofType":null}]},{"kind":"OBJECT","name":"TermBreadcrumbStructure","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"childrenTitle","description":"Titlen, der vises over listen af refereret indhold. Vil ikke blive vist, hvis der ikke vises nogen børn.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"content","description":"Indhold der linkes til","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"showChildren","description":"Vis en automatisk liste med indhold, som refererer til dette brødkrumme element, på denne side.","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"showChildrenSubtitles","description":"If this is checked, the children teasers will be expanded with possible subtitle descriptions.","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"TermInterface","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"TermBreadcrumbStructure","ofType":null},{"kind":"OBJECT","name":"TermCategories","ofType":null},{"kind":"OBJECT","name":"TermOpeningHoursCategories","ofType":null},{"kind":"OBJECT","name":"TermTags","ofType":null},{"kind":"OBJECT","name":"TermWebformEmailCategories","ofType":null}]},{"kind":"OBJECT","name":"Text","description":"A processed text format defined by the CMS.","fields":[{"name":"value","description":"The raw text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"processed","description":"The processed text value.","args":[],"type":{"kind":"SCALAR","name":"Html","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"format","description":"The text format used to process the text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Html","description":"An HTML string\n\nContent of this type is deemed safe by the server for raw output given the\norigin and the context of its usage. The HTML can still contain scripts or style\ntags where the creating user had permission to input these.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Int","description":"The `Int` scalar type represents non-fractional signed whole numeric\nvalues. Int can represent values between -(2^31) and 2^31 - 1. ","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermCategories","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermOpeningHoursCategories","description":"Kategorier af åbningstider, f.eks. \"Åbent\" eller \"Telefontid\"","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermTags","description":"Entity type taxonomy_term.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TermWebformEmailCategories","description":"List of email categories used for sending webform submissions. Each category is associated with an email address.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"Datoen hvor termen senest blev redigeret.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"Beskrivelse","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"email","description":"Add which email to send form submissions of this category to.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Email","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Term sprogkode.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"parent","description":"Denne terms overordnede termer.","args":[],"type":{"kind":"UNION","name":"TermUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"weight","description":"Vægten af denne term i forhold til andre termer.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"TermInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Email","description":"An email address.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"ParagraphUnion","description":"Entity type paragraph.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"ParagraphAccordion","ofType":null},{"kind":"OBJECT","name":"ParagraphBanner","ofType":null},{"kind":"OBJECT","name":"ParagraphBreadcrumbChildren","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridManual","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSlider","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSliderAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphFilteredEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphManualEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphTextBody","ofType":null}]},{"kind":"OBJECT","name":"ParagraphAccordion","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"accordionDescription","description":"Accordion beskrivelse","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accordionTitle","description":"Accordion titel","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Text","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"ParagraphInterface","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"ParagraphAccordion","ofType":null},{"kind":"OBJECT","name":"ParagraphBanner","ofType":null},{"kind":"OBJECT","name":"ParagraphBreadcrumbChildren","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphCardGridManual","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSlider","ofType":null},{"kind":"OBJECT","name":"ParagraphContentSliderAutomatic","ofType":null},{"kind":"OBJECT","name":"ParagraphFilteredEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphManualEventList","ofType":null},{"kind":"OBJECT","name":"ParagraphTextBody","ofType":null}]},{"kind":"OBJECT","name":"ParagraphBanner","description":"Banner's purpose is to link internally or externally and can be used with or without a background image.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"bannerDescription","description":"Banner description","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"bannerImage","description":"Banner Image","args":[],"type":{"kind":"UNION","name":"MediaUnion","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"bannerLink","description":"Banner Link","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Link","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"underlinedTitle","description":"Underlined title","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"MediaUnion","description":"Entity type media.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"MediaDocument","ofType":null},{"kind":"OBJECT","name":"MediaImage","ofType":null},{"kind":"OBJECT","name":"MediaVideo","ofType":null}]},{"kind":"OBJECT","name":"MediaDocument","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mediaFile","description":"Fil","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"File","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"MediaInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"INTERFACE","name":"MediaInterface","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"MediaDocument","ofType":null},{"kind":"OBJECT","name":"MediaImage","ofType":null},{"kind":"OBJECT","name":"MediaVideo","ofType":null}]},{"kind":"OBJECT","name":"File","description":"A file object to represent an managed file.","fields":[{"name":"name","description":"The name of the file.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"url","description":"The URL of the file.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"size","description":"Filens størrelse i bytes.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mime","description":"The mime type of the file.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":"The description of the file.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"MediaImage","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"byline","description":"Bruges til fotokreditering og info om copyright. Vises som regel ved siden af billedet.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mediaImage","description":"Du kan indstille et fokuspunkt ved at klikke på forhåndsvisningen af\nbilledet og flytte det hvide mål.

Ved at indstille et fokuspunkt\nfortæller du systemet, hvilken del af billedet der skal være i fokus, når\ndet beskæres.

Brug funktionen \"forhåndsvisning\" til at se,\nhvordan dit billede vil blive beskåret på tværs af billedstil.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Image","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"MediaInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Image","description":"A image object to represent an managed file.","fields":[{"name":"url","description":"The URL of the image.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"width","description":"The width of the image.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"height","description":"The height of the image.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"alt","description":"The alt text of the image.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"The title text of the image.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"size","description":"The size of the image in bytes.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Int","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mime","description":"The mime type of the image.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"MediaVideo","description":"Entity type media.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"changed","description":"The time the media item was last edited.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time the media item was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"Sprog","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mediaOembedVideo","description":"URL til video","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":"Navn","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"Alternativ URL","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"MediaInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphBreadcrumbChildren","description":"Vis automatisk alt indhold, som refererer til dit valgte brødkrumme element.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphCardGridAutomatic","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterBranches","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCategories","description":"Filter efter kategorier","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCondType","description":"Condition type","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterContentTypes","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterTags","description":"Filter efter tags","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"moreLink","description":"More link","args":[],"type":{"kind":"OBJECT","name":"Link","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphCardGridManual","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"gridContent","description":"Indhold","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"NodeArticle","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"moreLink","description":"More link","args":[],"type":{"kind":"OBJECT","name":"Link","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Overskrift","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphContentSlider","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"contentReferences","description":"Indhold","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"NodeArticle","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"deprecated","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"underlinedTitle","description":"Title","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphContentSliderAutomatic","description":"Entity type paragraph.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterBranches","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCategories","description":"Filter by categories","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCondType","description":"Condition type","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterContentTypes","description":"If nothing is selected, all will be chosen.","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterTags","description":"Filter by tags","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"deprecated","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"underlinedTitle","description":"Title","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphFilteredEventList","description":"Denne paragraph viser en liste af arrangementer filtreret på kategori, tags og filialer.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterBranches","description":"Tilføj enhver forgrening, du vil inkludere","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"NodeUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCategories","description":"Tilføj en kategori, du vil inkludere","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"filterCondType","description":"Condition type","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"filterTags","description":"Tilføj et tag, du vil inkludere","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"UNION","name":"TermUnion","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"maxItemAmount","description":"Select the amount of events you want to display.

If the amount\ndisplayed is less than what you put here, it is likely because there are not\nenough results based on your selected filters.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphManualEventList","description":"Dette afsnit vil vise en liste over arrangementer, der er manuelt valgt.","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"events","description":"Arrangementer","args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"UnsupportedType","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"title","description":"Titel","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"UnsupportedType","description":"Unsupported entity or field type in the schema.\nThis entity may not have been enabled in the schema yet and is being referenced via entity reference.","fields":[{"name":"unsupported","description":"Unsupported type, always TRUE.","args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ParagraphTextBody","description":"En basal, formateret brødtekst","fields":[{"name":"id","description":"The Universally Unique IDentifier (UUID).","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"body","description":"Brødtekst","args":[],"type":{"kind":"OBJECT","name":"Text","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"created","description":"The time that the Paragraph was created.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"DateTime","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The paragraphs entity language code.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"status","description":"Publiceret","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[{"kind":"INTERFACE","name":"ParagraphInterface","ofType":null}],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"SchemaInformation","description":"Schema information provided by the system.","fields":[{"name":"description","description":"The schema description.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"home","description":"The internal path to the front page.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"version","description":"The schema version.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"languages","description":"List of languages available.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":"The schema's entry-point for mutations.","fields":[{"name":"_","description":"Placeholder for mutation extension.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Subscription","description":"The schema's entry-point for subscriptions.","fields":[{"name":"_","description":"Placeholder for subscription extension.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Float","description":"The `Float` scalar type represents signed double-precision fractional\nvalues as specified by\n[IEEE 754](http://en.wikipedia.org/wiki/IEEE_floating_point). ","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields`, `interfaces`, and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"isRepeatable","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"Address","description":"Complex address data.","fields":[{"name":"langcode","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"country","description":null,"args":[],"type":{"kind":"OBJECT","name":"AddressCountry","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"givenName","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"additionalName","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"familyName","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"organization","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addressLine1","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addressLine2","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"postalCode","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sortingCode","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"dependentLocality","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locality","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"administrativeArea","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"AddressCountry","description":"Address country.","fields":[{"name":"name","description":"The name of the country.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"code","description":"The code of the country.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"DateRange","description":"A Date range has a start and an end.","fields":[{"name":"start","description":"The start of the date range.","args":[],"type":{"kind":"OBJECT","name":"DateTime","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"end","description":"The end of the date range.","args":[],"type":{"kind":"OBJECT","name":"DateTime","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"KeyValueInput","description":"Generic input for key-value pairs.","fields":null,"inputFields":[{"name":"key","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"value","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"PhoneNumber","description":"A field whose value conforms to the standard E.164","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"SortDirection","description":"Sort direction.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"ASC","description":"Stigende","isDeprecated":false,"deprecationReason":null},{"name":"DESC","description":"Faldende","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"TextSummary","description":"A processed text format with summary defined by the CMS.","fields":[{"name":"value","description":"The raw text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"processed","description":"The processed text value.","args":[],"type":{"kind":"SCALAR","name":"Html","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"format","description":"The text format used to process the text value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"summary","description":"The processed text summary.","args":[],"type":{"kind":"SCALAR","name":"Html","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Translation","description":"Available translations for content.","fields":[{"name":"title","description":"The title of the translation.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"langcode","description":"The language of the translation.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"Language","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"path","description":"The path to the translated content.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"UntypedStructuredData","description":"Untyped structured data. Eg JSON, configuration, settings, attributes.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null}],"directives":[{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} diff --git a/dpl-go.sdl b/dpl-go.sdl deleted file mode 100644 index 997427414..000000000 --- a/dpl-go.sdl +++ /dev/null @@ -1,978 +0,0 @@ -"""The schema's entry-point for queries.""" -type Query { - """Load a NodeArticle entity by id""" - nodeArticle( - """The id of the NodeArticle to load.""" - id: ID! - - """Optionally set the response language. Eg en, ja, fr.""" - langcode: String - - """ - Optionally set the revision of the entity. Eg current, latest, or an ID. - """ - revision: ID - ): NodeArticle - - """Schema information.""" - info: SchemaInformation! -} - -"""Brug artikler til nyhedspræget indhold med en begrænset levetid.""" -type NodeArticle implements NodeInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Bibliotek""" - branch: NodeUnion - - """ - Oplys en canonical URL hvis indholdet i artiklen er kopieret fra en anden - hjemmeside (fx kopieret fra et andet biblioteks hjemmeside). Dette hjælper - med at signalere til søgemaskiner at kilden til indholdet er den - specificerede side, og sikrer at den originale kilde krediteres. - """ - canonicalUrl: Link - - """Kategorier""" - categories: TermUnion - - """Tidspunktet hvor indholdselementet sidst blev redigeret.""" - changed: DateTime! - - """The date and time that the content was created.""" - created: DateTime! - - """Sprog""" - langcode: Language! - - """Overskriv forfatter""" - overrideAuthor: String - - """Paragraphs""" - paragraphs: [ParagraphUnion!] - - """Alternativ URL""" - path: String! - - """Forfremmet til forside""" - promote: Boolean! - - """Publication date""" - publicationDate: DateTime! - - """ - Som standard er forfatteren sat til den Drupal-bruger, der ejer indholdet.

Hvis du ønsker at tilsidesætte dette med din egen tekst, kan du - """ - showOverrideAuthor: Boolean - - """Publiceret""" - status: Boolean! - - """Klæbrig""" - sticky: Boolean! - - """Manchet""" - subtitle: String - - """Tags""" - tags: [TermUnion!] - - """ - Teaserfelterne bruges til cards som blikfang for indholdet. Hvis der ikke er - valgt et teaserbillede, vil teksten vises i stedet. - """ - teaserImage: MediaUnion - - """Teasertekst""" - teaserText: String - - """Titel""" - title: String! -} - -"""Entity type node.""" -interface NodeInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Tidspunktet hvor indholdselementet sidst blev redigeret.""" - changed: DateTime! - - """The date and time that the content was created.""" - created: DateTime! - - """Sprog""" - langcode: Language! - - """Alternativ URL""" - path: String! - - """Forfremmet til forside""" - promote: Boolean! - - """Publiceret""" - status: Boolean! - - """Klæbrig""" - sticky: Boolean! - - """Titel""" - title: String! -} - -"""A DateTime object.""" -type DateTime { - """ - Type represents date and time as number of milliseconds from start of the UNIX epoch. - """ - timestamp: Timestamp! - - """A field whose value exists in the standard IANA Time Zone Database.""" - timezone: TimeZone! - - """A string that will have a value of format ±hh:mm""" - offset: UtcOffset! - - """RFC 3339 compliant time string.""" - time: Time! -} - -""" -Type represents date and time as number of milliseconds from start of the UNIX epoch. -""" -scalar Timestamp - -"""A field whose value exists in the standard IANA Time Zone Database.""" -scalar TimeZone - -"""A string that will have a value of format ±hh:mm""" -scalar UtcOffset - -"""RFC 3339 compliant time string.""" -scalar Time - -"""A language definition provided by the CMS.""" -type Language { - """Sprogkoden.""" - id: ID - - """Sprogets navn.""" - name: String - - """The language direction.""" - direction: String -} - -"""Entity type node.""" -union NodeUnion = NodeArticle - -"""A link.""" -type Link { - """The title of the link.""" - title: String - - """The URL of the link.""" - url: String - - """Whether the link is internal to this website.""" - internal: Boolean! -} - -"""Entity type taxonomy_term.""" -union TermUnion = TermBreadcrumbStructure | TermCategories | TermOpeningHoursCategories | TermTags | TermWebformEmailCategories - -"""Entity type taxonomy_term.""" -type TermBreadcrumbStructure implements TermInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Datoen hvor termen senest blev redigeret.""" - changed: DateTime! - - """ - Titlen, der vises over listen af refereret indhold. Vil ikke blive vist, hvis der ikke vises nogen børn. - """ - childrenTitle: String - - """Indhold der linkes til""" - content: NodeUnion! - - """Beskrivelse""" - description: Text! - - """Term sprogkode.""" - langcode: Language! - - """Navn""" - name: String! - - """Denne terms overordnede termer.""" - parent: TermUnion - - """Alternativ URL""" - path: String! - - """ - Vis en automatisk liste med indhold, som refererer til dette brødkrumme element, på denne side. - """ - showChildren: Boolean - - """ - If this is checked, the children teasers will be expanded with possible subtitle descriptions. - """ - showChildrenSubtitles: Boolean - - """Publiceret""" - status: Boolean! - - """Vægten af denne term i forhold til andre termer.""" - weight: Int! -} - -"""Entity type taxonomy_term.""" -interface TermInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Datoen hvor termen senest blev redigeret.""" - changed: DateTime! - - """Beskrivelse""" - description: Text! - - """Term sprogkode.""" - langcode: Language! - - """Navn""" - name: String! - - """Denne terms overordnede termer.""" - parent: TermUnion - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! - - """Vægten af denne term i forhold til andre termer.""" - weight: Int! -} - -"""A processed text format defined by the CMS.""" -type Text { - """The raw text value.""" - value: String - - """The processed text value.""" - processed: Html - - """The text format used to process the text value.""" - format: String -} - -""" -An HTML string - -Content of this type is deemed safe by the server for raw output given the -origin and the context of its usage. The HTML can still contain scripts or style -tags where the creating user had permission to input these. -""" -scalar Html - -"""Entity type taxonomy_term.""" -type TermCategories implements TermInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Datoen hvor termen senest blev redigeret.""" - changed: DateTime! - - """Beskrivelse""" - description: Text! - - """Term sprogkode.""" - langcode: Language! - - """Navn""" - name: String! - - """Denne terms overordnede termer.""" - parent: TermUnion - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! - - """Vægten af denne term i forhold til andre termer.""" - weight: Int! -} - -""" -Kategorier af åbningstider, f.eks. "Åbent" eller "Telefontid" -""" -type TermOpeningHoursCategories implements TermInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Datoen hvor termen senest blev redigeret.""" - changed: DateTime! - - """Beskrivelse""" - description: Text! - - """Term sprogkode.""" - langcode: Language! - - """Navn""" - name: String! - - """Denne terms overordnede termer.""" - parent: TermUnion - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! - - """Vægten af denne term i forhold til andre termer.""" - weight: Int! -} - -"""Entity type taxonomy_term.""" -type TermTags implements TermInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Datoen hvor termen senest blev redigeret.""" - changed: DateTime! - - """Beskrivelse""" - description: Text! - - """Term sprogkode.""" - langcode: Language! - - """Navn""" - name: String! - - """Denne terms overordnede termer.""" - parent: TermUnion - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! - - """Vægten af denne term i forhold til andre termer.""" - weight: Int! -} - -""" -List of email categories used for sending webform submissions. Each category is associated with an email address. -""" -type TermWebformEmailCategories implements TermInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Datoen hvor termen senest blev redigeret.""" - changed: DateTime! - - """Beskrivelse""" - description: Text! - - """Add which email to send form submissions of this category to.""" - email: Email! - - """Term sprogkode.""" - langcode: Language! - - """Navn""" - name: String! - - """Denne terms overordnede termer.""" - parent: TermUnion - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! - - """Vægten af denne term i forhold til andre termer.""" - weight: Int! -} - -"""An email address.""" -scalar Email - -"""Entity type paragraph.""" -union ParagraphUnion = ParagraphAccordion | ParagraphBanner | ParagraphBreadcrumbChildren | ParagraphCardGridAutomatic | ParagraphCardGridManual | ParagraphContentSlider | ParagraphContentSliderAutomatic | ParagraphFilteredEventList | ParagraphManualEventList | ParagraphTextBody - -"""Entity type paragraph.""" -type ParagraphAccordion implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Accordion beskrivelse""" - accordionDescription: Text - - """Accordion titel""" - accordionTitle: Text! - - """The time that the Paragraph was created.""" - created: DateTime! - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! -} - -"""Entity type paragraph.""" -interface ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time that the Paragraph was created.""" - created: DateTime! - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! -} - -""" -Banner's purpose is to link internally or externally and can be used with or without a background image. -""" -type ParagraphBanner implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Banner description""" - bannerDescription: String - - """Banner Image""" - bannerImage: MediaUnion - - """Banner Link""" - bannerLink: Link! - - """The time that the Paragraph was created.""" - created: DateTime! - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! - - """Underlined title""" - underlinedTitle: Text -} - -"""Entity type media.""" -union MediaUnion = MediaDocument | MediaImage | MediaVideo - -"""Entity type media.""" -type MediaDocument implements MediaInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time the media item was last edited.""" - changed: DateTime! - - """The time the media item was created.""" - created: DateTime! - - """Sprog""" - langcode: Language! - - """Fil""" - mediaFile: File! - - """Navn""" - name: String! - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! -} - -"""Entity type media.""" -interface MediaInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time the media item was last edited.""" - changed: DateTime! - - """The time the media item was created.""" - created: DateTime! - - """Sprog""" - langcode: Language! - - """Navn""" - name: String! - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! -} - -"""A file object to represent an managed file.""" -type File { - """The name of the file.""" - name: String - - """The URL of the file.""" - url: String! - - """Filens størrelse i bytes.""" - size: Int! - - """The mime type of the file.""" - mime: String - - """The description of the file.""" - description: String -} - -"""Entity type media.""" -type MediaImage implements MediaInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """ - Bruges til fotokreditering og info om copyright. Vises som regel ved siden af billedet. - """ - byline: String - - """The time the media item was last edited.""" - changed: DateTime! - - """The time the media item was created.""" - created: DateTime! - - """Sprog""" - langcode: Language! - - """ - Du kan indstille et fokuspunkt ved at klikke på forhåndsvisningen af - billedet og flytte det hvide mål.

Ved at indstille et fokuspunkt - fortæller du systemet, hvilken del af billedet der skal være i fokus, når - det beskæres.

Brug funktionen "forhåndsvisning" til at se, - hvordan dit billede vil blive beskåret på tværs af billedstil. - """ - mediaImage: Image! - - """Navn""" - name: String! - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! -} - -"""A image object to represent an managed file.""" -type Image { - """The URL of the image.""" - url: String! - - """The width of the image.""" - width: Int! - - """The height of the image.""" - height: Int! - - """The alt text of the image.""" - alt: String - - """The title text of the image.""" - title: String - - """The size of the image in bytes.""" - size: Int! - - """The mime type of the image.""" - mime: String -} - -"""Entity type media.""" -type MediaVideo implements MediaInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time the media item was last edited.""" - changed: DateTime! - - """The time the media item was created.""" - created: DateTime! - - """Sprog""" - langcode: Language! - - """URL til video""" - mediaOembedVideo: String! - - """Navn""" - name: String! - - """Alternativ URL""" - path: String! - - """Publiceret""" - status: Boolean! -} - -""" -Vis automatisk alt indhold, som refererer til dit valgte brødkrumme element. -""" -type ParagraphBreadcrumbChildren implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time that the Paragraph was created.""" - created: DateTime! - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! -} - -"""Entity type paragraph.""" -type ParagraphCardGridAutomatic implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time that the Paragraph was created.""" - created: DateTime! - - """If nothing is selected, all will be chosen.""" - filterBranches: [NodeUnion!] - - """Filter efter kategorier""" - filterCategories: [TermUnion!] - - """Condition type""" - filterCondType: String! - - """If nothing is selected, all will be chosen.""" - filterContentTypes: [String!] - - """Filter efter tags""" - filterTags: [TermUnion!] - - """The paragraphs entity language code.""" - langcode: Language! - - """More link""" - moreLink: Link - - """Publiceret""" - status: Boolean! - - """Titel""" - title: String -} - -"""Entity type paragraph.""" -type ParagraphCardGridManual implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time that the Paragraph was created.""" - created: DateTime! - - """Indhold""" - gridContent: [NodeArticle!] - - """The paragraphs entity language code.""" - langcode: Language! - - """More link""" - moreLink: Link - - """Publiceret""" - status: Boolean! - - """Overskrift""" - title: String -} - -"""Entity type paragraph.""" -type ParagraphContentSlider implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Indhold""" - contentReferences: [NodeArticle!] - - """The time that the Paragraph was created.""" - created: DateTime! - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! - - """deprecated""" - title: String - - """Title""" - underlinedTitle: Text -} - -"""Entity type paragraph.""" -type ParagraphContentSliderAutomatic implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time that the Paragraph was created.""" - created: DateTime! - - """If nothing is selected, all will be chosen.""" - filterBranches: [NodeUnion!] - - """Filter by categories""" - filterCategories: [TermUnion!] - - """Condition type""" - filterCondType: String! - - """If nothing is selected, all will be chosen.""" - filterContentTypes: [String!] - - """Filter by tags""" - filterTags: [TermUnion!] - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! - - """deprecated""" - title: String - - """Title""" - underlinedTitle: Text -} - -""" -Denne paragraph viser en liste af arrangementer filtreret på kategori, tags og filialer. -""" -type ParagraphFilteredEventList implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time that the Paragraph was created.""" - created: DateTime! - - """Tilføj enhver forgrening, du vil inkludere""" - filterBranches: [NodeUnion!] - - """Tilføj en kategori, du vil inkludere""" - filterCategories: [TermUnion!] - - """Condition type""" - filterCondType: String! - - """Tilføj et tag, du vil inkludere""" - filterTags: [TermUnion!] - - """The paragraphs entity language code.""" - langcode: Language! - - """ - Select the amount of events you want to display.

If the amount - displayed is less than what you put here, it is likely because there are not - enough results based on your selected filters. - """ - maxItemAmount: String! - - """Publiceret""" - status: Boolean! - - """Titel""" - title: String -} - -""" -Dette afsnit vil vise en liste over arrangementer, der er manuelt valgt. -""" -type ParagraphManualEventList implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """The time that the Paragraph was created.""" - created: DateTime! - - """Arrangementer""" - events: [UnsupportedType!] - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! - - """Titel""" - title: String -} - -""" -Unsupported entity or field type in the schema. -This entity may not have been enabled in the schema yet and is being referenced via entity reference. -""" -type UnsupportedType { - """Unsupported type, always TRUE.""" - unsupported: Boolean -} - -"""En basal, formateret brødtekst""" -type ParagraphTextBody implements ParagraphInterface { - """The Universally Unique IDentifier (UUID).""" - id: ID! - - """Brødtekst""" - body: Text - - """The time that the Paragraph was created.""" - created: DateTime! - - """The paragraphs entity language code.""" - langcode: Language! - - """Publiceret""" - status: Boolean! -} - -"""Schema information provided by the system.""" -type SchemaInformation { - """The schema description.""" - description: String - - """The internal path to the front page.""" - home: String - - """The schema version.""" - version: String - - """List of languages available.""" - languages: [Language!]! -} - -"""The schema's entry-point for mutations.""" -type Mutation { - """Placeholder for mutation extension.""" - _: Boolean! -} - -"""The schema's entry-point for subscriptions.""" -type Subscription { - """Placeholder for subscription extension.""" - _: Boolean! -} - -"""Complex address data.""" -type Address { - langcode: String - country: AddressCountry - givenName: String - additionalName: String - familyName: String - organization: String - addressLine1: String - addressLine2: String - postalCode: String - sortingCode: String - dependentLocality: String - locality: String - administrativeArea: String -} - -"""Address country.""" -type AddressCountry { - """The name of the country.""" - name: String - - """The code of the country.""" - code: String -} - -"""A Date range has a start and an end.""" -type DateRange { - """The start of the date range.""" - start: DateTime - - """The end of the date range.""" - end: DateTime -} - -"""Generic input for key-value pairs.""" -input KeyValueInput { - key: String! - value: String -} - -"""A field whose value conforms to the standard E.164""" -scalar PhoneNumber - -"""Sort direction.""" -enum SortDirection { - """Stigende""" - ASC - - """Faldende""" - DESC -} - -"""A processed text format with summary defined by the CMS.""" -type TextSummary { - """The raw text value.""" - value: String - - """The processed text value.""" - processed: Html - - """The text format used to process the text value.""" - format: String - - """The processed text summary.""" - summary: Html -} - -"""Available translations for content.""" -type Translation { - """The title of the translation.""" - title: String - - """The language of the translation.""" - langcode: Language! - - """The path to the translated content.""" - path: String -} - -"""Untyped structured data. Eg JSON, configuration, settings, attributes.""" -scalar UntypedStructuredData From 715253d933865520ec11ad5163f6e30c7f84b814 Mon Sep 17 00:00:00 2001 From: Andreas Nielsen Date: Thu, 17 Oct 2024 16:48:30 +0200 Subject: [PATCH 14/14] Removed anonymous graphql permissions. Added graphql permission to graphql_consumer role instead. --- config/sync/user.role.anonymous.yml | 2 -- config/sync/user.role.graphql_consumer.yml | 7 +++++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/config/sync/user.role.anonymous.yml b/config/sync/user.role.anonymous.yml index f6e5a2609..c7a60e3bb 100644 --- a/config/sync/user.role.anonymous.yml +++ b/config/sync/user.role.anonymous.yml @@ -9,7 +9,6 @@ dependencies: - rest.resource.events - rest.resource.proxy-url module: - - graphql - media - openapi - recurring_events @@ -24,7 +23,6 @@ is_admin: false permissions: - 'access content' - 'access openapi api docs' - - 'execute graphql_compose_server arbitrary graphql requests' - 'restful get dpl_opening_hours_legacy_list' - 'restful get dpl_opening_hours_list' - 'restful get events' diff --git a/config/sync/user.role.graphql_consumer.yml b/config/sync/user.role.graphql_consumer.yml index ac519da8b..67b41276d 100644 --- a/config/sync/user.role.graphql_consumer.yml +++ b/config/sync/user.role.graphql_consumer.yml @@ -1,9 +1,12 @@ uuid: 2844cde3-5ba7-4a93-958a-70da917913a7 langcode: en status: true -dependencies: { } +dependencies: + module: + - graphql id: graphql_consumer label: 'GraphQl consumer' weight: 8 is_admin: null -permissions: { } +permissions: + - 'execute graphql_compose_server arbitrary graphql requests'