{
    "@context": [
      "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^8.0.0/components/context.jsonld",
      "https://linkedsoftwaredependencies.org/bundles/npm/@undefineds.co/xpod/^0.0.0/components/context.jsonld"
    ],
    "import": [
      "css:config/app/init/static-root.json",
      "css:config/app/main/default.json",
      "css:config/app/variables/default.json",
      "css:config/http/handler/default.json",
      "css:config/http/middleware/default.json",
      "css:config/http/notifications/all.json",
      "css:config/http/server-factory/http.json",
      "css:config/http/static/default.json",
      "css:config/identity/access/public.json",
      "css:config/identity/email/example.json",
      "css:config/identity/handler/default.json",
      "css:config/identity/oidc/default.json",
      "css:config/identity/ownership/token.json",
      "css:config/identity/pod/static.json",
      "css:config/ldp/authentication/dpop-bearer.json",
      "css:config/ldp/handler/default.json",
      "css:config/ldp/metadata-parser/default.json",
      "css:config/ldp/metadata-writer/default.json",
      "css:config/ldp/modes/default.json",
      "css:config/storage/backend/regex.json",
      "css:config/storage/key-value/resource-store.json",
      "css:config/storage/location/pod.json",
      "css:config/storage/middleware/default.json",
      "css:config/util/identifiers/suffix.json",
      "css:config/util/index/default.json",
      "css:config/util/logging/winston.json",
      "css:config/util/representation-conversion/default.json",
      "css:config/util/resource-locker/file.json",
      "css:config/util/variables/default.json"
    ],
    "@graph": [
      {
        "comment": "Overrides the default rule to make sure internal data is stored on the file system.",
        "@type": "Override",
        "overrideInstance": {
          "@id": "urn:solid-server:default:RouterRule"
        },
        "overrideParameters": {
          "@type": "RegexRouterRule",
          "rules": [
            {
              "comment": "Stores internal data in the file system",
              "@type": "RegexRule",
              "regex": "^/\\.internal/",
              "store": {
                "@id": "urn:solid-server:default:FileResourceStore"
              }
            },
            {
              "comment": "Send everything else to the SPARQL store.",
              "@type": "RegexRule",
              "regex": ".*",
              "store": {
                "@id": "urn:solid-server:default:SparqlResourceStore"
              }
            }
          ]
        }
      },
      {
        "comment": "The updated OIDC configuration.",
        "@type": "Override",
        "overrideInstance": {
          "@id": "urn:solid-server:default:IdentityProviderFactory"
        },
        "overrideParameters": {
          "@type": "SessionBoundIdentityProviderFactory",
          "args_promptFactory": {
            "@id": "urn:solid-server:default:PromptFactory"
          },
          "args_adapterFactory": {
            "@id": "urn:solid-server:default:IdpAdapterFactory"
          },
          "args_baseUrl": {
            "@id": "urn:solid-server:default:variable:baseUrl"
          },
          "args_oidcPath": "/.oidc",
          "args_clientCredentialsStore": {
            "@id": "urn:solid-server:default:ClientCredentialsStore"
          },
          "args_storage": {
            "@id": "urn:solid-server:default:KeyStorage"
          },
          "args_jwkGenerator": {
            "@id": "urn:solid-server:default:JwkGenerator"
          },
          "args_showStackTrace": {
            "@id": "urn:solid-server:default:variable:showStackTrace"
          },
          "args_errorHandler": {
            "@id": "urn:solid-server:default:ErrorHandler"
          },
          "args_responseWriter": {
            "@id": "urn:solid-server:default:ResponseWriter"
          },
          "args_interactionRoute": {
            "@type": "IdInteractionRoute",
            "base": {
              "@type": "RelativePathInteractionRoute",
              "base": { "@id": "urn:solid-server:default:IndexRoute" },
              "relativePath": "interaction/"
            },
            "idName": "interactionId"
          },
          "config": {
            "extraParams": [
              "provisionCode"
            ],
            "claims": {
              "openid": [
                "azp"
              ],
              "webid": [
                "webid"
              ]
            },
            "clockTolerance": 120,
            "cookies": {
              "long": {
                "signed": true,
                "maxAge": 86400000
              },
              "short": {
                "signed": true
              }
            },
            "enabledJWA": {
              "dPoPSigningAlgValues": [
                "RS256",
                "RS384",
                "RS512",
                "PS256",
                "PS384",
                "PS512",
                "ES256",
                "Ed25519",
                "ES384",
                "ES512",
                "EdDSA"
              ]
            },
            "features": {
              "claimsParameter": {
                "enabled": true
              },
              "clientCredentials": {
                "enabled": true
              },
              "devInteractions": {
                "enabled": false
              },
              "dPoP": {
                "enabled": true
              },
              "introspection": {
                "enabled": true
              },
              "registration": {
                "enabled": true
              },
              "revocation": {
                "enabled": true
              },
              "userinfo": {
                "enabled": false
              }
            },
            "scopes": [
              "openid",
              "profile",
              "offline_access",
              "webid"
            ],
            "subjectTypes": [
              "public"
            ],
            "ttl": {
              "AccessToken": 3600,
              "AuthorizationCode": 600,
              "BackchannelAuthenticationRequest": 600,
              "ClientCredentials": 600,
              "DeviceCode": 600,
              "Grant": 1209600,
              "IdToken": 3600,
              "Interaction": 3600,
              "RefreshToken": 1209600,
              "Session": 1209600
            }
          }
        }
      }
    ]
  }
