The start of something beautiful

This commit is contained in:
2024-09-11 22:48:07 -06:00
parent 45acea47f3
commit f5997ee5ec
5614 changed files with 630696 additions and 0 deletions
@@ -0,0 +1,101 @@
<?php
namespace Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler;
use Symfony\Component\Config\Loader\ParamConfigurator;
use Symfony\Component\Config\Definition\Exception\InvalidConfigurationException;
/**
* This class is automatically generated to help in creating a config.
*/
class CasConfig
{
private $validationUrl;
private $prefix;
private $httpClient;
private $_usedProperties = [];
/**
* CAS server validation URL
* @default null
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function validationUrl($value): static
{
$this->_usedProperties['validationUrl'] = true;
$this->validationUrl = $value;
return $this;
}
/**
* CAS prefix
* @default 'cas'
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function prefix($value): static
{
$this->_usedProperties['prefix'] = true;
$this->prefix = $value;
return $this;
}
/**
* HTTP Client service
* @default null
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function httpClient($value): static
{
$this->_usedProperties['httpClient'] = true;
$this->httpClient = $value;
return $this;
}
public function __construct(array $value = [])
{
if (array_key_exists('validation_url', $value)) {
$this->_usedProperties['validationUrl'] = true;
$this->validationUrl = $value['validation_url'];
unset($value['validation_url']);
}
if (array_key_exists('prefix', $value)) {
$this->_usedProperties['prefix'] = true;
$this->prefix = $value['prefix'];
unset($value['prefix']);
}
if (array_key_exists('http_client', $value)) {
$this->_usedProperties['httpClient'] = true;
$this->httpClient = $value['http_client'];
unset($value['http_client']);
}
if ([] !== $value) {
throw new InvalidConfigurationException(sprintf('The following keys are not supported by "%s": ', __CLASS__).implode(', ', array_keys($value)));
}
}
public function toArray(): array
{
$output = [];
if (isset($this->_usedProperties['validationUrl'])) {
$output['validation_url'] = $this->validationUrl;
}
if (isset($this->_usedProperties['prefix'])) {
$output['prefix'] = $this->prefix;
}
if (isset($this->_usedProperties['httpClient'])) {
$output['http_client'] = $this->httpClient;
}
return $output;
}
}
@@ -0,0 +1,27 @@
<?php
namespace Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\Oidc;
use Symfony\Component\Config\Definition\Exception\InvalidConfigurationException;
/**
* This class is automatically generated to help in creating a config.
*/
class AlgorithmConfig
{
public function __construct(array $value = [])
{
if ([] !== $value) {
throw new InvalidConfigurationException(sprintf('The following keys are not supported by "%s": ', __CLASS__).implode(', ', array_keys($value)));
}
}
public function toArray(): array
{
$output = [];
return $output;
}
}
@@ -0,0 +1,200 @@
<?php
namespace Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler;
require_once __DIR__.\DIRECTORY_SEPARATOR.'Oidc'.\DIRECTORY_SEPARATOR.'AlgorithmConfig.php';
use Symfony\Component\Config\Loader\ParamConfigurator;
use Symfony\Component\Config\Definition\Exception\InvalidConfigurationException;
/**
* This class is automatically generated to help in creating a config.
*/
class OidcConfig
{
private $claim;
private $audience;
private $issuers;
private $algorithm;
private $algorithms;
private $key;
private $keyset;
private $_usedProperties = [];
/**
* Claim which contains the user identifier (e.g.: sub, email..).
* @default 'sub'
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function claim($value): static
{
$this->_usedProperties['claim'] = true;
$this->claim = $value;
return $this;
}
/**
* Audience set in the token, for validation purpose.
* @default null
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function audience($value): static
{
$this->_usedProperties['audience'] = true;
$this->audience = $value;
return $this;
}
/**
* @param ParamConfigurator|list<ParamConfigurator|mixed> $value
*
* @return $this
*/
public function issuers(ParamConfigurator|array $value): static
{
$this->_usedProperties['issuers'] = true;
$this->issuers = $value;
return $this;
}
/**
* Algorithm used to sign the token.
* @deprecated The "algorithm" option is deprecated and will be removed in 8.0. Use the "algorithms" option instead.
*/
public function algorithm(array $value = []): \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\Oidc\AlgorithmConfig
{
if (null === $this->algorithm) {
$this->_usedProperties['algorithm'] = true;
$this->algorithm = new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\Oidc\AlgorithmConfig($value);
} elseif (0 < \func_num_args()) {
throw new InvalidConfigurationException('The node created by "algorithm()" has already been initialized. You cannot pass values the second time you call algorithm().');
}
return $this->algorithm;
}
/**
* @param ParamConfigurator|list<ParamConfigurator|mixed> $value
*
* @return $this
*/
public function algorithms(ParamConfigurator|array $value): static
{
$this->_usedProperties['algorithms'] = true;
$this->algorithms = $value;
return $this;
}
/**
* JSON-encoded JWK used to sign the token (must contain a "kty" key).
* @default null
* @param ParamConfigurator|mixed $value
* @deprecated The "key" option is deprecated and will be removed in 8.0. Use the "keyset" option instead.
* @return $this
*/
public function key($value): static
{
$this->_usedProperties['key'] = true;
$this->key = $value;
return $this;
}
/**
* JSON-encoded JWKSet used to sign the token (must contain a list of valid keys).
* @default null
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function keyset($value): static
{
$this->_usedProperties['keyset'] = true;
$this->keyset = $value;
return $this;
}
public function __construct(array $value = [])
{
if (array_key_exists('claim', $value)) {
$this->_usedProperties['claim'] = true;
$this->claim = $value['claim'];
unset($value['claim']);
}
if (array_key_exists('audience', $value)) {
$this->_usedProperties['audience'] = true;
$this->audience = $value['audience'];
unset($value['audience']);
}
if (array_key_exists('issuers', $value)) {
$this->_usedProperties['issuers'] = true;
$this->issuers = $value['issuers'];
unset($value['issuers']);
}
if (array_key_exists('algorithm', $value)) {
$this->_usedProperties['algorithm'] = true;
$this->algorithm = new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\Oidc\AlgorithmConfig($value['algorithm']);
unset($value['algorithm']);
}
if (array_key_exists('algorithms', $value)) {
$this->_usedProperties['algorithms'] = true;
$this->algorithms = $value['algorithms'];
unset($value['algorithms']);
}
if (array_key_exists('key', $value)) {
$this->_usedProperties['key'] = true;
$this->key = $value['key'];
unset($value['key']);
}
if (array_key_exists('keyset', $value)) {
$this->_usedProperties['keyset'] = true;
$this->keyset = $value['keyset'];
unset($value['keyset']);
}
if ([] !== $value) {
throw new InvalidConfigurationException(sprintf('The following keys are not supported by "%s": ', __CLASS__).implode(', ', array_keys($value)));
}
}
public function toArray(): array
{
$output = [];
if (isset($this->_usedProperties['claim'])) {
$output['claim'] = $this->claim;
}
if (isset($this->_usedProperties['audience'])) {
$output['audience'] = $this->audience;
}
if (isset($this->_usedProperties['issuers'])) {
$output['issuers'] = $this->issuers;
}
if (isset($this->_usedProperties['algorithm'])) {
$output['algorithm'] = $this->algorithm->toArray();
}
if (isset($this->_usedProperties['algorithms'])) {
$output['algorithms'] = $this->algorithms;
}
if (isset($this->_usedProperties['key'])) {
$output['key'] = $this->key;
}
if (isset($this->_usedProperties['keyset'])) {
$output['keyset'] = $this->keyset;
}
return $output;
}
}
@@ -0,0 +1,101 @@
<?php
namespace Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler;
use Symfony\Component\Config\Loader\ParamConfigurator;
use Symfony\Component\Config\Definition\Exception\InvalidConfigurationException;
/**
* This class is automatically generated to help in creating a config.
*/
class OidcUserInfoConfig
{
private $baseUri;
private $claim;
private $client;
private $_usedProperties = [];
/**
* Base URI of the userinfo endpoint on the OIDC server.
* @default null
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function baseUri($value): static
{
$this->_usedProperties['baseUri'] = true;
$this->baseUri = $value;
return $this;
}
/**
* Claim which contains the user identifier (e.g. sub, email, etc.).
* @default 'sub'
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function claim($value): static
{
$this->_usedProperties['claim'] = true;
$this->claim = $value;
return $this;
}
/**
* HttpClient service id to use to call the OIDC server.
* @default null
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function client($value): static
{
$this->_usedProperties['client'] = true;
$this->client = $value;
return $this;
}
public function __construct(array $value = [])
{
if (array_key_exists('base_uri', $value)) {
$this->_usedProperties['baseUri'] = true;
$this->baseUri = $value['base_uri'];
unset($value['base_uri']);
}
if (array_key_exists('claim', $value)) {
$this->_usedProperties['claim'] = true;
$this->claim = $value['claim'];
unset($value['claim']);
}
if (array_key_exists('client', $value)) {
$this->_usedProperties['client'] = true;
$this->client = $value['client'];
unset($value['client']);
}
if ([] !== $value) {
throw new InvalidConfigurationException(sprintf('The following keys are not supported by "%s": ', __CLASS__).implode(', ', array_keys($value)));
}
}
public function toArray(): array
{
$output = [];
if (isset($this->_usedProperties['baseUri'])) {
$output['base_uri'] = $this->baseUri;
}
if (isset($this->_usedProperties['claim'])) {
$output['claim'] = $this->claim;
}
if (isset($this->_usedProperties['client'])) {
$output['client'] = $this->client;
}
return $output;
}
}
@@ -0,0 +1,148 @@
<?php
namespace Symfony\Config\Security\FirewallConfig\AccessToken;
require_once __DIR__.\DIRECTORY_SEPARATOR.'TokenHandler'.\DIRECTORY_SEPARATOR.'OidcUserInfoConfig.php';
require_once __DIR__.\DIRECTORY_SEPARATOR.'TokenHandler'.\DIRECTORY_SEPARATOR.'OidcConfig.php';
require_once __DIR__.\DIRECTORY_SEPARATOR.'TokenHandler'.\DIRECTORY_SEPARATOR.'CasConfig.php';
use Symfony\Component\Config\Loader\ParamConfigurator;
use Symfony\Component\Config\Definition\Exception\InvalidConfigurationException;
/**
* This class is automatically generated to help in creating a config.
*/
class TokenHandlerConfig
{
private $id;
private $oidcUserInfo;
private $oidc;
private $cas;
private $_usedProperties = [];
/**
* @default null
* @param ParamConfigurator|mixed $value
* @return $this
*/
public function id($value): static
{
$this->_usedProperties['id'] = true;
$this->id = $value;
return $this;
}
/**
* @template TValue
* @param TValue $value
* @return \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcUserInfoConfig|$this
* @psalm-return (TValue is array ? \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcUserInfoConfig : static)
*/
public function oidcUserInfo(string|array $value = []): \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcUserInfoConfig|static
{
if (!\is_array($value)) {
$this->_usedProperties['oidcUserInfo'] = true;
$this->oidcUserInfo = $value;
return $this;
}
if (!$this->oidcUserInfo instanceof \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcUserInfoConfig) {
$this->_usedProperties['oidcUserInfo'] = true;
$this->oidcUserInfo = new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcUserInfoConfig($value);
} elseif (0 < \func_num_args()) {
throw new InvalidConfigurationException('The node created by "oidcUserInfo()" has already been initialized. You cannot pass values the second time you call oidcUserInfo().');
}
return $this->oidcUserInfo;
}
/**
* @template TValue
* @param TValue $value
* @return \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcConfig|$this
* @psalm-return (TValue is array ? \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcConfig : static)
*/
public function oidc(mixed $value = []): \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcConfig|static
{
if (!\is_array($value)) {
$this->_usedProperties['oidc'] = true;
$this->oidc = $value;
return $this;
}
if (!$this->oidc instanceof \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcConfig) {
$this->_usedProperties['oidc'] = true;
$this->oidc = new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcConfig($value);
} elseif (0 < \func_num_args()) {
throw new InvalidConfigurationException('The node created by "oidc()" has already been initialized. You cannot pass values the second time you call oidc().');
}
return $this->oidc;
}
public function cas(array $value = []): \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\CasConfig
{
if (null === $this->cas) {
$this->_usedProperties['cas'] = true;
$this->cas = new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\CasConfig($value);
} elseif (0 < \func_num_args()) {
throw new InvalidConfigurationException('The node created by "cas()" has already been initialized. You cannot pass values the second time you call cas().');
}
return $this->cas;
}
public function __construct(array $value = [])
{
if (array_key_exists('id', $value)) {
$this->_usedProperties['id'] = true;
$this->id = $value['id'];
unset($value['id']);
}
if (array_key_exists('oidc_user_info', $value)) {
$this->_usedProperties['oidcUserInfo'] = true;
$this->oidcUserInfo = \is_array($value['oidc_user_info']) ? new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcUserInfoConfig($value['oidc_user_info']) : $value['oidc_user_info'];
unset($value['oidc_user_info']);
}
if (array_key_exists('oidc', $value)) {
$this->_usedProperties['oidc'] = true;
$this->oidc = \is_array($value['oidc']) ? new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcConfig($value['oidc']) : $value['oidc'];
unset($value['oidc']);
}
if (array_key_exists('cas', $value)) {
$this->_usedProperties['cas'] = true;
$this->cas = new \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\CasConfig($value['cas']);
unset($value['cas']);
}
if ([] !== $value) {
throw new InvalidConfigurationException(sprintf('The following keys are not supported by "%s": ', __CLASS__).implode(', ', array_keys($value)));
}
}
public function toArray(): array
{
$output = [];
if (isset($this->_usedProperties['id'])) {
$output['id'] = $this->id;
}
if (isset($this->_usedProperties['oidcUserInfo'])) {
$output['oidc_user_info'] = $this->oidcUserInfo instanceof \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcUserInfoConfig ? $this->oidcUserInfo->toArray() : $this->oidcUserInfo;
}
if (isset($this->_usedProperties['oidc'])) {
$output['oidc'] = $this->oidc instanceof \Symfony\Config\Security\FirewallConfig\AccessToken\TokenHandler\OidcConfig ? $this->oidc->toArray() : $this->oidc;
}
if (isset($this->_usedProperties['cas'])) {
$output['cas'] = $this->cas->toArray();
}
return $output;
}
}