From 1ed55edfc6c5778509ea28f85368de92dfeca16a Mon Sep 17 00:00:00 2001 From: mambax7 Date: Tue, 6 Aug 2024 05:09:06 -0400 Subject: [PATCH] vendor updates --- htdocs/class/libraries/vendor/autoload.php | 2 +- htdocs/class/libraries/vendor/bin/reloadpsl | 12 +- .../vendor/composer/autoload_classmap.php | 194 ------ .../vendor/composer/autoload_files.php | 3 +- .../vendor/composer/autoload_psr4.php | 2 +- .../vendor/composer/autoload_real.php | 11 +- .../vendor/composer/autoload_static.php | 220 +------ .../libraries/vendor/composer/installed.json | 578 ++++++++++-------- .../libraries/vendor/composer/installed.php | 108 ++-- .../vendor/composer/platform_check.php | 4 +- .../vendor/firebase/php-jwt/README.md | 349 +++++++---- .../vendor/firebase/php-jwt/composer.json | 12 +- .../php-jwt/src/BeforeValidException.php | 13 +- .../firebase/php-jwt/src/ExpiredException.php | 13 +- .../vendor/firebase/php-jwt/src/JWK.php | 225 ++++++- .../vendor/firebase/php-jwt/src/JWT.php | 407 +++++++----- .../vendor/firebase/php-jwt/src/Key.php | 35 +- 17 files changed, 1119 insertions(+), 1069 deletions(-) diff --git a/htdocs/class/libraries/vendor/autoload.php b/htdocs/class/libraries/vendor/autoload.php index 0c5705c11..c572f1392 100644 --- a/htdocs/class/libraries/vendor/autoload.php +++ b/htdocs/class/libraries/vendor/autoload.php @@ -22,4 +22,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInit6352cb8ef79af2c7649e83bf921c4678::getLoader(); +return ComposerAutoloaderInit061ee1edadbea94fc801da5b706af3d2::getLoader(); diff --git a/htdocs/class/libraries/vendor/bin/reloadpsl b/htdocs/class/libraries/vendor/bin/reloadpsl index d3505cfcf..dfcd4ab60 100755 --- a/htdocs/class/libraries/vendor/bin/reloadpsl +++ b/htdocs/class/libraries/vendor/bin/reloadpsl @@ -4,7 +4,7 @@ /** * Proxy PHP file generated by Composer * - * This file includes the referenced bin path (../geekwright/regdom/bin/reloadpsl) + * This file includes the referenced bin path (../xoops/regdom/bin/reloadpsl) * using a stream wrapper to prevent the shebang from being output on PHP<8 * * @generated @@ -108,10 +108,12 @@ if (PHP_VERSION_ID < 80000) { } } - if (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper')) { - include("phpvfscomposer://" . __DIR__ . '/..'.'/geekwright/regdom/bin/reloadpsl'); - exit(0); + if ( + (function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true)) + || (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper')) + ) { + return include("phpvfscomposer://" . __DIR__ . '/..'.'/xoops/regdom/bin/reloadpsl'); } } -include __DIR__ . '/..'.'/geekwright/regdom/bin/reloadpsl'; +return include __DIR__ . '/..'.'/xoops/regdom/bin/reloadpsl'; diff --git a/htdocs/class/libraries/vendor/composer/autoload_classmap.php b/htdocs/class/libraries/vendor/composer/autoload_classmap.php index c41283bb5..841a528ef 100644 --- a/htdocs/class/libraries/vendor/composer/autoload_classmap.php +++ b/htdocs/class/libraries/vendor/composer/autoload_classmap.php @@ -7,95 +7,7 @@ return array( 'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', - 'Firebase\\JWT\\BeforeValidException' => $vendorDir . '/firebase/php-jwt/src/BeforeValidException.php', - 'Firebase\\JWT\\ExpiredException' => $vendorDir . '/firebase/php-jwt/src/ExpiredException.php', - 'Firebase\\JWT\\JWK' => $vendorDir . '/firebase/php-jwt/src/JWK.php', - 'Firebase\\JWT\\JWT' => $vendorDir . '/firebase/php-jwt/src/JWT.php', - 'Firebase\\JWT\\Key' => $vendorDir . '/firebase/php-jwt/src/Key.php', - 'Firebase\\JWT\\SignatureInvalidException' => $vendorDir . '/firebase/php-jwt/src/SignatureInvalidException.php', - 'Geekwright\\RegDom\\PublicSuffixList' => $vendorDir . '/geekwright/regdom/src/PublicSuffixList.php', - 'Geekwright\\RegDom\\RegisteredDomain' => $vendorDir . '/geekwright/regdom/src/RegisteredDomain.php', - 'Kint\\CallFinder' => $vendorDir . '/kint-php/kint/src/CallFinder.php', - 'Kint\\Kint' => $vendorDir . '/kint-php/kint/src/Kint.php', - 'Kint\\Object\\BasicObject' => $vendorDir . '/kint-php/kint/src/Object/BasicObject.php', - 'Kint\\Object\\BlobObject' => $vendorDir . '/kint-php/kint/src/Object/BlobObject.php', - 'Kint\\Object\\ClosureObject' => $vendorDir . '/kint-php/kint/src/Object/ClosureObject.php', - 'Kint\\Object\\DateTimeObject' => $vendorDir . '/kint-php/kint/src/Object/DateTimeObject.php', - 'Kint\\Object\\InstanceObject' => $vendorDir . '/kint-php/kint/src/Object/InstanceObject.php', - 'Kint\\Object\\MethodObject' => $vendorDir . '/kint-php/kint/src/Object/MethodObject.php', - 'Kint\\Object\\ParameterObject' => $vendorDir . '/kint-php/kint/src/Object/ParameterObject.php', - 'Kint\\Object\\Representation\\ColorRepresentation' => $vendorDir . '/kint-php/kint/src/Object/Representation/ColorRepresentation.php', - 'Kint\\Object\\Representation\\DocstringRepresentation' => $vendorDir . '/kint-php/kint/src/Object/Representation/DocstringRepresentation.php', - 'Kint\\Object\\Representation\\MicrotimeRepresentation' => $vendorDir . '/kint-php/kint/src/Object/Representation/MicrotimeRepresentation.php', - 'Kint\\Object\\Representation\\Representation' => $vendorDir . '/kint-php/kint/src/Object/Representation/Representation.php', - 'Kint\\Object\\Representation\\SourceRepresentation' => $vendorDir . '/kint-php/kint/src/Object/Representation/SourceRepresentation.php', - 'Kint\\Object\\Representation\\SplFileInfoRepresentation' => $vendorDir . '/kint-php/kint/src/Object/Representation/SplFileInfoRepresentation.php', - 'Kint\\Object\\ResourceObject' => $vendorDir . '/kint-php/kint/src/Object/ResourceObject.php', - 'Kint\\Object\\StreamObject' => $vendorDir . '/kint-php/kint/src/Object/StreamObject.php', - 'Kint\\Object\\ThrowableObject' => $vendorDir . '/kint-php/kint/src/Object/ThrowableObject.php', - 'Kint\\Object\\TraceFrameObject' => $vendorDir . '/kint-php/kint/src/Object/TraceFrameObject.php', - 'Kint\\Object\\TraceObject' => $vendorDir . '/kint-php/kint/src/Object/TraceObject.php', - 'Kint\\Parser\\ArrayObjectPlugin' => $vendorDir . '/kint-php/kint/src/Parser/ArrayObjectPlugin.php', - 'Kint\\Parser\\Base64Plugin' => $vendorDir . '/kint-php/kint/src/Parser/Base64Plugin.php', - 'Kint\\Parser\\BinaryPlugin' => $vendorDir . '/kint-php/kint/src/Parser/BinaryPlugin.php', - 'Kint\\Parser\\BlacklistPlugin' => $vendorDir . '/kint-php/kint/src/Parser/BlacklistPlugin.php', - 'Kint\\Parser\\ClassMethodsPlugin' => $vendorDir . '/kint-php/kint/src/Parser/ClassMethodsPlugin.php', - 'Kint\\Parser\\ClassStaticsPlugin' => $vendorDir . '/kint-php/kint/src/Parser/ClassStaticsPlugin.php', - 'Kint\\Parser\\ClosurePlugin' => $vendorDir . '/kint-php/kint/src/Parser/ClosurePlugin.php', - 'Kint\\Parser\\ColorPlugin' => $vendorDir . '/kint-php/kint/src/Parser/ColorPlugin.php', - 'Kint\\Parser\\DOMDocumentPlugin' => $vendorDir . '/kint-php/kint/src/Parser/DOMDocumentPlugin.php', - 'Kint\\Parser\\DateTimePlugin' => $vendorDir . '/kint-php/kint/src/Parser/DateTimePlugin.php', - 'Kint\\Parser\\FsPathPlugin' => $vendorDir . '/kint-php/kint/src/Parser/FsPathPlugin.php', - 'Kint\\Parser\\IteratorPlugin' => $vendorDir . '/kint-php/kint/src/Parser/IteratorPlugin.php', - 'Kint\\Parser\\JsonPlugin' => $vendorDir . '/kint-php/kint/src/Parser/JsonPlugin.php', - 'Kint\\Parser\\MicrotimePlugin' => $vendorDir . '/kint-php/kint/src/Parser/MicrotimePlugin.php', - 'Kint\\Parser\\MysqliPlugin' => $vendorDir . '/kint-php/kint/src/Parser/MysqliPlugin.php', - 'Kint\\Parser\\Parser' => $vendorDir . '/kint-php/kint/src/Parser/Parser.php', - 'Kint\\Parser\\Plugin' => $vendorDir . '/kint-php/kint/src/Parser/Plugin.php', - 'Kint\\Parser\\ProxyPlugin' => $vendorDir . '/kint-php/kint/src/Parser/ProxyPlugin.php', - 'Kint\\Parser\\SerializePlugin' => $vendorDir . '/kint-php/kint/src/Parser/SerializePlugin.php', - 'Kint\\Parser\\SimpleXMLElementPlugin' => $vendorDir . '/kint-php/kint/src/Parser/SimpleXMLElementPlugin.php', - 'Kint\\Parser\\SplFileInfoPlugin' => $vendorDir . '/kint-php/kint/src/Parser/SplFileInfoPlugin.php', - 'Kint\\Parser\\SplObjectStoragePlugin' => $vendorDir . '/kint-php/kint/src/Parser/SplObjectStoragePlugin.php', - 'Kint\\Parser\\StreamPlugin' => $vendorDir . '/kint-php/kint/src/Parser/StreamPlugin.php', - 'Kint\\Parser\\TablePlugin' => $vendorDir . '/kint-php/kint/src/Parser/TablePlugin.php', - 'Kint\\Parser\\ThrowablePlugin' => $vendorDir . '/kint-php/kint/src/Parser/ThrowablePlugin.php', - 'Kint\\Parser\\TimestampPlugin' => $vendorDir . '/kint-php/kint/src/Parser/TimestampPlugin.php', - 'Kint\\Parser\\ToStringPlugin' => $vendorDir . '/kint-php/kint/src/Parser/ToStringPlugin.php', - 'Kint\\Parser\\TracePlugin' => $vendorDir . '/kint-php/kint/src/Parser/TracePlugin.php', - 'Kint\\Parser\\XmlPlugin' => $vendorDir . '/kint-php/kint/src/Parser/XmlPlugin.php', - 'Kint\\Renderer\\CliRenderer' => $vendorDir . '/kint-php/kint/src/Renderer/CliRenderer.php', - 'Kint\\Renderer\\PlainRenderer' => $vendorDir . '/kint-php/kint/src/Renderer/PlainRenderer.php', - 'Kint\\Renderer\\Renderer' => $vendorDir . '/kint-php/kint/src/Renderer/Renderer.php', - 'Kint\\Renderer\\RichRenderer' => $vendorDir . '/kint-php/kint/src/Renderer/RichRenderer.php', - 'Kint\\Renderer\\Rich\\BinaryPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/BinaryPlugin.php', - 'Kint\\Renderer\\Rich\\BlacklistPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/BlacklistPlugin.php', - 'Kint\\Renderer\\Rich\\CallablePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/CallablePlugin.php', - 'Kint\\Renderer\\Rich\\ClosurePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/ClosurePlugin.php', - 'Kint\\Renderer\\Rich\\ColorPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/ColorPlugin.php', - 'Kint\\Renderer\\Rich\\DepthLimitPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/DepthLimitPlugin.php', - 'Kint\\Renderer\\Rich\\DocstringPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/DocstringPlugin.php', - 'Kint\\Renderer\\Rich\\MicrotimePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/MicrotimePlugin.php', - 'Kint\\Renderer\\Rich\\ObjectPluginInterface' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/ObjectPluginInterface.php', - 'Kint\\Renderer\\Rich\\Plugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/Plugin.php', - 'Kint\\Renderer\\Rich\\PluginInterface' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/PluginInterface.php', - 'Kint\\Renderer\\Rich\\RecursionPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/RecursionPlugin.php', - 'Kint\\Renderer\\Rich\\SimpleXMLElementPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/SimpleXMLElementPlugin.php', - 'Kint\\Renderer\\Rich\\SourcePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/SourcePlugin.php', - 'Kint\\Renderer\\Rich\\TabPluginInterface' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/TabPluginInterface.php', - 'Kint\\Renderer\\Rich\\TablePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/TablePlugin.php', - 'Kint\\Renderer\\Rich\\TimestampPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/TimestampPlugin.php', - 'Kint\\Renderer\\Rich\\TraceFramePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Rich/TraceFramePlugin.php', - 'Kint\\Renderer\\TextRenderer' => $vendorDir . '/kint-php/kint/src/Renderer/TextRenderer.php', - 'Kint\\Renderer\\Text\\BlacklistPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Text/BlacklistPlugin.php', - 'Kint\\Renderer\\Text\\DepthLimitPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Text/DepthLimitPlugin.php', - 'Kint\\Renderer\\Text\\MicrotimePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Text/MicrotimePlugin.php', - 'Kint\\Renderer\\Text\\Plugin' => $vendorDir . '/kint-php/kint/src/Renderer/Text/Plugin.php', - 'Kint\\Renderer\\Text\\RecursionPlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Text/RecursionPlugin.php', - 'Kint\\Renderer\\Text\\TracePlugin' => $vendorDir . '/kint-php/kint/src/Renderer/Text/TracePlugin.php', - 'Kint\\Utils' => $vendorDir . '/kint-php/kint/src/Utils.php', 'Smarty' => $vendorDir . '/smarty/smarty/libs/Smarty.class.php', - 'SmartyBC' => $vendorDir . '/smarty/smarty/libs/SmartyBC.class.php', 'SmartyCompilerException' => $vendorDir . '/smarty/smarty/libs/sysplugins/smartycompilerexception.php', 'SmartyException' => $vendorDir . '/smarty/smarty/libs/sysplugins/smartyexception.php', 'Smarty_Autoloader' => $vendorDir . '/smarty/smarty/libs/Autoloader.php', @@ -135,7 +47,6 @@ 'Smarty_Internal_Compile_If' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_if.php', 'Smarty_Internal_Compile_Ifclose' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_if.php', 'Smarty_Internal_Compile_Include' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_include.php', - 'Smarty_Internal_Compile_Include_Php' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_include_php.php', 'Smarty_Internal_Compile_Insert' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_insert.php', 'Smarty_Internal_Compile_Ldelim' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_ldelim.php', 'Smarty_Internal_Compile_Make_Nocache' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_make_nocache.php', @@ -148,7 +59,6 @@ 'Smarty_Internal_Compile_Private_Modifier' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_modifier.php', 'Smarty_Internal_Compile_Private_Object_Block_Function' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_object_block_function.php', 'Smarty_Internal_Compile_Private_Object_Function' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_object_function.php', - 'Smarty_Internal_Compile_Private_Php' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_php.php', 'Smarty_Internal_Compile_Private_Print_Expression' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_print_expression.php', 'Smarty_Internal_Compile_Private_Registered_Block' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_registered_block.php', 'Smarty_Internal_Compile_Private_Registered_Function' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_registered_function.php', @@ -229,7 +139,6 @@ 'Smarty_Internal_Resource_Extends' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_extends.php', 'Smarty_Internal_Resource_File' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_file.php', 'Smarty_Internal_Resource_Php' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_php.php', - 'Smarty_Internal_Resource_Registered' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_registered.php', 'Smarty_Internal_Resource_Stream' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_stream.php', 'Smarty_Internal_Resource_String' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_string.php', 'Smarty_Internal_Runtime_CacheModify' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_runtime_cachemodify.php', @@ -265,109 +174,6 @@ 'Smarty_Template_Source' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_template_source.php', 'Smarty_Undefined_Variable' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_undefined_variable.php', 'Smarty_Variable' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_variable.php', - 'Symfony\\Component\\Yaml\\Dumper' => $vendorDir . '/symfony/yaml/Dumper.php', - 'Symfony\\Component\\Yaml\\Escaper' => $vendorDir . '/symfony/yaml/Escaper.php', - 'Symfony\\Component\\Yaml\\Exception\\DumpException' => $vendorDir . '/symfony/yaml/Exception/DumpException.php', - 'Symfony\\Component\\Yaml\\Exception\\ExceptionInterface' => $vendorDir . '/symfony/yaml/Exception/ExceptionInterface.php', - 'Symfony\\Component\\Yaml\\Exception\\ParseException' => $vendorDir . '/symfony/yaml/Exception/ParseException.php', - 'Symfony\\Component\\Yaml\\Exception\\RuntimeException' => $vendorDir . '/symfony/yaml/Exception/RuntimeException.php', - 'Symfony\\Component\\Yaml\\Inline' => $vendorDir . '/symfony/yaml/Inline.php', - 'Symfony\\Component\\Yaml\\Parser' => $vendorDir . '/symfony/yaml/Parser.php', - 'Symfony\\Component\\Yaml\\Unescaper' => $vendorDir . '/symfony/yaml/Unescaper.php', - 'Symfony\\Component\\Yaml\\Yaml' => $vendorDir . '/symfony/yaml/Yaml.php', - 'Symfony\\Polyfill\\Ctype\\Ctype' => $vendorDir . '/symfony/polyfill-ctype/Ctype.php', - 'Symfony\\Polyfill\\Iconv\\Iconv' => $vendorDir . '/symfony/polyfill-iconv/Iconv.php', - 'Symfony\\Polyfill\\Mbstring\\Mbstring' => $vendorDir . '/symfony/polyfill-mbstring/Mbstring.php', 'TPC_yyStackEntry' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_configfileparser.php', 'TP_yyStackEntry' => $vendorDir . '/smarty/smarty/libs/sysplugins/smarty_internal_templateparser.php', - 'Webmozart\\Assert\\Assert' => $vendorDir . '/webmozart/assert/src/Assert.php', - 'Webmozart\\Assert\\Mixin' => $vendorDir . '/webmozart/assert/src/Mixin.php', - 'WideImage\\Canvas' => $vendorDir . '/smottt/wideimage/lib/WideImage/Canvas.php', - 'WideImage\\Coordinate' => $vendorDir . '/smottt/wideimage/lib/WideImage/Coordinate.php', - 'WideImage\\Exception\\Exception' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/Exception.php', - 'WideImage\\Exception\\GDFunctionResultException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/GDFunctionResultException.php', - 'WideImage\\Exception\\InvalidCanvasMethodException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/InvalidCanvasMethodException.php', - 'WideImage\\Exception\\InvalidCoordinateException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/InvalidCoordinateException.php', - 'WideImage\\Exception\\InvalidFontFileException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/InvalidFontFileException.php', - 'WideImage\\Exception\\InvalidImageDimensionException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/InvalidImageDimensionException.php', - 'WideImage\\Exception\\InvalidImageHandleException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/InvalidImageHandleException.php', - 'WideImage\\Exception\\InvalidImageSourceException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/InvalidImageSourceException.php', - 'WideImage\\Exception\\NoFontException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/NoFontException.php', - 'WideImage\\Exception\\UnknownErrorWhileMappingException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/UnknownErrorWhileMappingException.php', - 'WideImage\\Exception\\UnknownImageOperationException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/UnknownImageOperationException.php', - 'WideImage\\Exception\\UnsupportedFormatException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Exception/UnsupportedFormatException.php', - 'WideImage\\Font\\GDF' => $vendorDir . '/smottt/wideimage/lib/WideImage/Font/GDF.php', - 'WideImage\\Font\\PS' => $vendorDir . '/smottt/wideimage/lib/WideImage/Font/PS.php', - 'WideImage\\Font\\TTF' => $vendorDir . '/smottt/wideimage/lib/WideImage/Font/TTF.php', - 'WideImage\\Image' => $vendorDir . '/smottt/wideimage/lib/WideImage/Image.php', - 'WideImage\\MapperFactory' => $vendorDir . '/smottt/wideimage/lib/WideImage/MapperFactory.php', - 'WideImage\\Mapper\\BMP' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/BMP.php', - 'WideImage\\Mapper\\GD' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/GD.php', - 'WideImage\\Mapper\\GD2' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/GD2.php', - 'WideImage\\Mapper\\GIF' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/GIF.php', - 'WideImage\\Mapper\\JPEG' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/JPEG.php', - 'WideImage\\Mapper\\PNG' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/PNG.php', - 'WideImage\\Mapper\\TGA' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/TGA.php', - 'WideImage\\Mapper\\WEBP' => $vendorDir . '/smottt/wideimage/lib/WideImage/Mapper/WEBP.php', - 'WideImage\\OperationFactory' => $vendorDir . '/smottt/wideimage/lib/WideImage/OperationFactory.php', - 'WideImage\\Operation\\AddNoise' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/AddNoise.php', - 'WideImage\\Operation\\ApplyConvolution' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/ApplyConvolution.php', - 'WideImage\\Operation\\ApplyFilter' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/ApplyFilter.php', - 'WideImage\\Operation\\ApplyMask' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/ApplyMask.php', - 'WideImage\\Operation\\AsGrayscale' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/AsGrayscale.php', - 'WideImage\\Operation\\AsNegative' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/AsNegative.php', - 'WideImage\\Operation\\AutoCrop' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/AutoCrop.php', - 'WideImage\\Operation\\CopyChannelsPalette' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/CopyChannelsPalette.php', - 'WideImage\\Operation\\CopyChannelsTrueColor' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/CopyChannelsTrueColor.php', - 'WideImage\\Operation\\CorrectGamma' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/CorrectGamma.php', - 'WideImage\\Operation\\Crop' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Crop.php', - 'WideImage\\Operation\\Exception\\InvalidFitMethodException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Exception/InvalidFitMethodException.php', - 'WideImage\\Operation\\Exception\\InvalidResizeDimensionException' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Exception/InvalidResizeDimensionException.php', - 'WideImage\\Operation\\Flip' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Flip.php', - 'WideImage\\Operation\\GetMask' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/GetMask.php', - 'WideImage\\Operation\\Merge' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Merge.php', - 'WideImage\\Operation\\Mirror' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Mirror.php', - 'WideImage\\Operation\\Resize' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Resize.php', - 'WideImage\\Operation\\ResizeCanvas' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/ResizeCanvas.php', - 'WideImage\\Operation\\Rotate' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Rotate.php', - 'WideImage\\Operation\\RoundCorners' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/RoundCorners.php', - 'WideImage\\Operation\\Unsharp' => $vendorDir . '/smottt/wideimage/lib/WideImage/Operation/Unsharp.php', - 'WideImage\\PaletteImage' => $vendorDir . '/smottt/wideimage/lib/WideImage/PaletteImage.php', - 'WideImage\\TrueColorImage' => $vendorDir . '/smottt/wideimage/lib/WideImage/TrueColorImage.php', - 'WideImage\\WideImage' => $vendorDir . '/smottt/wideimage/lib/WideImage/WideImage.php', - 'WideImage\\vendor\\de77\\BMP' => $vendorDir . '/smottt/wideimage/lib/WideImage/vendor/de77/BMP.php', - 'WideImage\\vendor\\de77\\TGA' => $vendorDir . '/smottt/wideimage/lib/WideImage/vendor/de77/TGA.php', - 'Xmf\\Assert' => $vendorDir . '/xoops/xmf/src/Assert.php', - 'Xmf\\Database\\Migrate' => $vendorDir . '/xoops/xmf/src/Database/Migrate.php', - 'Xmf\\Database\\TableLoad' => $vendorDir . '/xoops/xmf/src/Database/TableLoad.php', - 'Xmf\\Database\\Tables' => $vendorDir . '/xoops/xmf/src/Database/Tables.php', - 'Xmf\\Debug' => $vendorDir . '/xoops/xmf/src/Debug.php', - 'Xmf\\FilterInput' => $vendorDir . '/xoops/xmf/src/FilterInput.php', - 'Xmf\\Highlighter' => $vendorDir . '/xoops/xmf/src/Highlighter.php', - 'Xmf\\IPAddress' => $vendorDir . '/xoops/xmf/src/IPAddress.php', - 'Xmf\\Jwt\\JsonWebToken' => $vendorDir . '/xoops/xmf/src/Jwt/JsonWebToken.php', - 'Xmf\\Jwt\\KeyFactory' => $vendorDir . '/xoops/xmf/src/Jwt/KeyFactory.php', - 'Xmf\\Jwt\\TokenFactory' => $vendorDir . '/xoops/xmf/src/Jwt/TokenFactory.php', - 'Xmf\\Jwt\\TokenReader' => $vendorDir . '/xoops/xmf/src/Jwt/TokenReader.php', - 'Xmf\\Key\\ArrayStorage' => $vendorDir . '/xoops/xmf/src/Key/ArrayStorage.php', - 'Xmf\\Key\\Basic' => $vendorDir . '/xoops/xmf/src/Key/Basic.php', - 'Xmf\\Key\\FileStorage' => $vendorDir . '/xoops/xmf/src/Key/FileStorage.php', - 'Xmf\\Key\\KeyAbstract' => $vendorDir . '/xoops/xmf/src/Key/KeyAbstract.php', - 'Xmf\\Key\\StorageInterface' => $vendorDir . '/xoops/xmf/src/Key/StorageInterface.php', - 'Xmf\\Language' => $vendorDir . '/xoops/xmf/src/Language.php', - 'Xmf\\Metagen' => $vendorDir . '/xoops/xmf/src/Metagen.php', - 'Xmf\\Module\\Admin' => $vendorDir . '/xoops/xmf/src/Module/Admin.php', - 'Xmf\\Module\\Helper' => $vendorDir . '/xoops/xmf/src/Module/Helper.php', - 'Xmf\\Module\\Helper\\AbstractHelper' => $vendorDir . '/xoops/xmf/src/Module/Helper/AbstractHelper.php', - 'Xmf\\Module\\Helper\\Cache' => $vendorDir . '/xoops/xmf/src/Module/Helper/Cache.php', - 'Xmf\\Module\\Helper\\GenericHelper' => $vendorDir . '/xoops/xmf/src/Module/Helper/GenericHelper.php', - 'Xmf\\Module\\Helper\\Permission' => $vendorDir . '/xoops/xmf/src/Module/Helper/Permission.php', - 'Xmf\\Module\\Helper\\Session' => $vendorDir . '/xoops/xmf/src/Module/Helper/Session.php', - 'Xmf\\ProxyCheck' => $vendorDir . '/xoops/xmf/src/ProxyCheck.php', - 'Xmf\\Random' => $vendorDir . '/xoops/xmf/src/Random.php', - 'Xmf\\Request' => $vendorDir . '/xoops/xmf/src/Request.php', - 'Xmf\\StopWords' => $vendorDir . '/xoops/xmf/src/StopWords.php', - 'Xmf\\Ulid' => $vendorDir . '/xoops/xmf/src/Ulid.php', - 'Xmf\\Uuid' => $vendorDir . '/xoops/xmf/src/Uuid.php', - 'Xmf\\Yaml' => $vendorDir . '/xoops/xmf/src/Yaml.php', ); diff --git a/htdocs/class/libraries/vendor/composer/autoload_files.php b/htdocs/class/libraries/vendor/composer/autoload_files.php index d97d54011..358fcf3de 100644 --- a/htdocs/class/libraries/vendor/composer/autoload_files.php +++ b/htdocs/class/libraries/vendor/composer/autoload_files.php @@ -6,11 +6,10 @@ $baseDir = dirname($vendorDir); return array( + '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php', '320cde22f66dd4f5d3fd621d3e88b98f' => $vendorDir . '/symfony/polyfill-ctype/bootstrap.php', '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php', '3917c79c5052b270641b5a200963dbc2' => $vendorDir . '/kint-php/kint/init.php', - '5255c38a0faeba867671b61dfda6d864' => $vendorDir . '/paragonie/random_compat/lib/random.php', 'de2dd2b3c16f4ba958f0437e8840a923' => $vendorDir . '/boenrobot/money_format_polyfill/src/money_format.php', - 'e40631d46120a9c38ea139981f8dab26' => $vendorDir . '/ircmaxell/password-compat/lib/password.php', 'def43f6c87e4f8dfd0c9e1b1bab14fe8' => $vendorDir . '/symfony/polyfill-iconv/bootstrap.php', ); diff --git a/htdocs/class/libraries/vendor/composer/autoload_psr4.php b/htdocs/class/libraries/vendor/composer/autoload_psr4.php index 3850447e1..828895be0 100644 --- a/htdocs/class/libraries/vendor/composer/autoload_psr4.php +++ b/htdocs/class/libraries/vendor/composer/autoload_psr4.php @@ -6,6 +6,7 @@ $baseDir = dirname($vendorDir); return array( + 'Xoops\\RegDom\\' => array($vendorDir . '/xoops/regdom/src'), 'Xmf\\' => array($vendorDir . '/xoops/xmf/src'), 'Webmozart\\Assert\\' => array($vendorDir . '/webmozart/assert/src'), 'Symfony\\Polyfill\\Mbstring\\' => array($vendorDir . '/symfony/polyfill-mbstring'), @@ -13,6 +14,5 @@ 'Symfony\\Polyfill\\Ctype\\' => array($vendorDir . '/symfony/polyfill-ctype'), 'Symfony\\Component\\Yaml\\' => array($vendorDir . '/symfony/yaml'), 'Kint\\' => array($vendorDir . '/kint-php/kint/src'), - 'Geekwright\\RegDom\\' => array($vendorDir . '/geekwright/regdom/src'), 'Firebase\\JWT\\' => array($vendorDir . '/firebase/php-jwt/src'), ); diff --git a/htdocs/class/libraries/vendor/composer/autoload_real.php b/htdocs/class/libraries/vendor/composer/autoload_real.php index 7b1f39697..ef12d116e 100644 --- a/htdocs/class/libraries/vendor/composer/autoload_real.php +++ b/htdocs/class/libraries/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit6352cb8ef79af2c7649e83bf921c4678 +class ComposerAutoloaderInit061ee1edadbea94fc801da5b706af3d2 { private static $loader; @@ -24,17 +24,16 @@ public static function getLoader() require __DIR__ . '/platform_check.php'; - spl_autoload_register(array('ComposerAutoloaderInit6352cb8ef79af2c7649e83bf921c4678', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit061ee1edadbea94fc801da5b706af3d2', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); - spl_autoload_unregister(array('ComposerAutoloaderInit6352cb8ef79af2c7649e83bf921c4678', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit061ee1edadbea94fc801da5b706af3d2', 'loadClassLoader')); require __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit061ee1edadbea94fc801da5b706af3d2::getInitializer($loader)); - $loader->setClassMapAuthoritative(true); $loader->register(true); - $filesToLoad = \Composer\Autoload\ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678::$files; + $filesToLoad = \Composer\Autoload\ComposerStaticInit061ee1edadbea94fc801da5b706af3d2::$files; $requireFile = \Closure::bind(static function ($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; diff --git a/htdocs/class/libraries/vendor/composer/autoload_static.php b/htdocs/class/libraries/vendor/composer/autoload_static.php index 5b07ae28e..d26f6cf5c 100644 --- a/htdocs/class/libraries/vendor/composer/autoload_static.php +++ b/htdocs/class/libraries/vendor/composer/autoload_static.php @@ -4,21 +4,21 @@ namespace Composer\Autoload; -class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 +class ComposerStaticInit061ee1edadbea94fc801da5b706af3d2 { public static $files = array ( + '6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', '320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php', '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', '3917c79c5052b270641b5a200963dbc2' => __DIR__ . '/..' . '/kint-php/kint/init.php', - '5255c38a0faeba867671b61dfda6d864' => __DIR__ . '/..' . '/paragonie/random_compat/lib/random.php', 'de2dd2b3c16f4ba958f0437e8840a923' => __DIR__ . '/..' . '/boenrobot/money_format_polyfill/src/money_format.php', - 'e40631d46120a9c38ea139981f8dab26' => __DIR__ . '/..' . '/ircmaxell/password-compat/lib/password.php', 'def43f6c87e4f8dfd0c9e1b1bab14fe8' => __DIR__ . '/..' . '/symfony/polyfill-iconv/bootstrap.php', ); public static $prefixLengthsPsr4 = array ( 'X' => array ( + 'Xoops\\RegDom\\' => 13, 'Xmf\\' => 4, ), 'W' => @@ -36,10 +36,6 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 array ( 'Kint\\' => 5, ), - 'G' => - array ( - 'Geekwright\\RegDom\\' => 18, - ), 'F' => array ( 'Firebase\\JWT\\' => 13, @@ -47,6 +43,10 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 ); public static $prefixDirsPsr4 = array ( + 'Xoops\\RegDom\\' => + array ( + 0 => __DIR__ . '/..' . '/xoops/regdom/src', + ), 'Xmf\\' => array ( 0 => __DIR__ . '/..' . '/xoops/xmf/src', @@ -75,10 +75,6 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 array ( 0 => __DIR__ . '/..' . '/kint-php/kint/src', ), - 'Geekwright\\RegDom\\' => - array ( - 0 => __DIR__ . '/..' . '/geekwright/regdom/src', - ), 'Firebase\\JWT\\' => array ( 0 => __DIR__ . '/..' . '/firebase/php-jwt/src', @@ -97,95 +93,7 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 public static $classMap = array ( 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', - 'Firebase\\JWT\\BeforeValidException' => __DIR__ . '/..' . '/firebase/php-jwt/src/BeforeValidException.php', - 'Firebase\\JWT\\ExpiredException' => __DIR__ . '/..' . '/firebase/php-jwt/src/ExpiredException.php', - 'Firebase\\JWT\\JWK' => __DIR__ . '/..' . '/firebase/php-jwt/src/JWK.php', - 'Firebase\\JWT\\JWT' => __DIR__ . '/..' . '/firebase/php-jwt/src/JWT.php', - 'Firebase\\JWT\\Key' => __DIR__ . '/..' . '/firebase/php-jwt/src/Key.php', - 'Firebase\\JWT\\SignatureInvalidException' => __DIR__ . '/..' . '/firebase/php-jwt/src/SignatureInvalidException.php', - 'Geekwright\\RegDom\\PublicSuffixList' => __DIR__ . '/..' . '/geekwright/regdom/src/PublicSuffixList.php', - 'Geekwright\\RegDom\\RegisteredDomain' => __DIR__ . '/..' . '/geekwright/regdom/src/RegisteredDomain.php', - 'Kint\\CallFinder' => __DIR__ . '/..' . '/kint-php/kint/src/CallFinder.php', - 'Kint\\Kint' => __DIR__ . '/..' . '/kint-php/kint/src/Kint.php', - 'Kint\\Object\\BasicObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/BasicObject.php', - 'Kint\\Object\\BlobObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/BlobObject.php', - 'Kint\\Object\\ClosureObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/ClosureObject.php', - 'Kint\\Object\\DateTimeObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/DateTimeObject.php', - 'Kint\\Object\\InstanceObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/InstanceObject.php', - 'Kint\\Object\\MethodObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/MethodObject.php', - 'Kint\\Object\\ParameterObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/ParameterObject.php', - 'Kint\\Object\\Representation\\ColorRepresentation' => __DIR__ . '/..' . '/kint-php/kint/src/Object/Representation/ColorRepresentation.php', - 'Kint\\Object\\Representation\\DocstringRepresentation' => __DIR__ . '/..' . '/kint-php/kint/src/Object/Representation/DocstringRepresentation.php', - 'Kint\\Object\\Representation\\MicrotimeRepresentation' => __DIR__ . '/..' . '/kint-php/kint/src/Object/Representation/MicrotimeRepresentation.php', - 'Kint\\Object\\Representation\\Representation' => __DIR__ . '/..' . '/kint-php/kint/src/Object/Representation/Representation.php', - 'Kint\\Object\\Representation\\SourceRepresentation' => __DIR__ . '/..' . '/kint-php/kint/src/Object/Representation/SourceRepresentation.php', - 'Kint\\Object\\Representation\\SplFileInfoRepresentation' => __DIR__ . '/..' . '/kint-php/kint/src/Object/Representation/SplFileInfoRepresentation.php', - 'Kint\\Object\\ResourceObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/ResourceObject.php', - 'Kint\\Object\\StreamObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/StreamObject.php', - 'Kint\\Object\\ThrowableObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/ThrowableObject.php', - 'Kint\\Object\\TraceFrameObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/TraceFrameObject.php', - 'Kint\\Object\\TraceObject' => __DIR__ . '/..' . '/kint-php/kint/src/Object/TraceObject.php', - 'Kint\\Parser\\ArrayObjectPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ArrayObjectPlugin.php', - 'Kint\\Parser\\Base64Plugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/Base64Plugin.php', - 'Kint\\Parser\\BinaryPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/BinaryPlugin.php', - 'Kint\\Parser\\BlacklistPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/BlacklistPlugin.php', - 'Kint\\Parser\\ClassMethodsPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ClassMethodsPlugin.php', - 'Kint\\Parser\\ClassStaticsPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ClassStaticsPlugin.php', - 'Kint\\Parser\\ClosurePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ClosurePlugin.php', - 'Kint\\Parser\\ColorPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ColorPlugin.php', - 'Kint\\Parser\\DOMDocumentPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/DOMDocumentPlugin.php', - 'Kint\\Parser\\DateTimePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/DateTimePlugin.php', - 'Kint\\Parser\\FsPathPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/FsPathPlugin.php', - 'Kint\\Parser\\IteratorPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/IteratorPlugin.php', - 'Kint\\Parser\\JsonPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/JsonPlugin.php', - 'Kint\\Parser\\MicrotimePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/MicrotimePlugin.php', - 'Kint\\Parser\\MysqliPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/MysqliPlugin.php', - 'Kint\\Parser\\Parser' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/Parser.php', - 'Kint\\Parser\\Plugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/Plugin.php', - 'Kint\\Parser\\ProxyPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ProxyPlugin.php', - 'Kint\\Parser\\SerializePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/SerializePlugin.php', - 'Kint\\Parser\\SimpleXMLElementPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/SimpleXMLElementPlugin.php', - 'Kint\\Parser\\SplFileInfoPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/SplFileInfoPlugin.php', - 'Kint\\Parser\\SplObjectStoragePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/SplObjectStoragePlugin.php', - 'Kint\\Parser\\StreamPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/StreamPlugin.php', - 'Kint\\Parser\\TablePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/TablePlugin.php', - 'Kint\\Parser\\ThrowablePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ThrowablePlugin.php', - 'Kint\\Parser\\TimestampPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/TimestampPlugin.php', - 'Kint\\Parser\\ToStringPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/ToStringPlugin.php', - 'Kint\\Parser\\TracePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/TracePlugin.php', - 'Kint\\Parser\\XmlPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Parser/XmlPlugin.php', - 'Kint\\Renderer\\CliRenderer' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/CliRenderer.php', - 'Kint\\Renderer\\PlainRenderer' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/PlainRenderer.php', - 'Kint\\Renderer\\Renderer' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Renderer.php', - 'Kint\\Renderer\\RichRenderer' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/RichRenderer.php', - 'Kint\\Renderer\\Rich\\BinaryPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/BinaryPlugin.php', - 'Kint\\Renderer\\Rich\\BlacklistPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/BlacklistPlugin.php', - 'Kint\\Renderer\\Rich\\CallablePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/CallablePlugin.php', - 'Kint\\Renderer\\Rich\\ClosurePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/ClosurePlugin.php', - 'Kint\\Renderer\\Rich\\ColorPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/ColorPlugin.php', - 'Kint\\Renderer\\Rich\\DepthLimitPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/DepthLimitPlugin.php', - 'Kint\\Renderer\\Rich\\DocstringPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/DocstringPlugin.php', - 'Kint\\Renderer\\Rich\\MicrotimePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/MicrotimePlugin.php', - 'Kint\\Renderer\\Rich\\ObjectPluginInterface' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/ObjectPluginInterface.php', - 'Kint\\Renderer\\Rich\\Plugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/Plugin.php', - 'Kint\\Renderer\\Rich\\PluginInterface' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/PluginInterface.php', - 'Kint\\Renderer\\Rich\\RecursionPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/RecursionPlugin.php', - 'Kint\\Renderer\\Rich\\SimpleXMLElementPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/SimpleXMLElementPlugin.php', - 'Kint\\Renderer\\Rich\\SourcePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/SourcePlugin.php', - 'Kint\\Renderer\\Rich\\TabPluginInterface' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/TabPluginInterface.php', - 'Kint\\Renderer\\Rich\\TablePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/TablePlugin.php', - 'Kint\\Renderer\\Rich\\TimestampPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/TimestampPlugin.php', - 'Kint\\Renderer\\Rich\\TraceFramePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Rich/TraceFramePlugin.php', - 'Kint\\Renderer\\TextRenderer' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/TextRenderer.php', - 'Kint\\Renderer\\Text\\BlacklistPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Text/BlacklistPlugin.php', - 'Kint\\Renderer\\Text\\DepthLimitPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Text/DepthLimitPlugin.php', - 'Kint\\Renderer\\Text\\MicrotimePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Text/MicrotimePlugin.php', - 'Kint\\Renderer\\Text\\Plugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Text/Plugin.php', - 'Kint\\Renderer\\Text\\RecursionPlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Text/RecursionPlugin.php', - 'Kint\\Renderer\\Text\\TracePlugin' => __DIR__ . '/..' . '/kint-php/kint/src/Renderer/Text/TracePlugin.php', - 'Kint\\Utils' => __DIR__ . '/..' . '/kint-php/kint/src/Utils.php', 'Smarty' => __DIR__ . '/..' . '/smarty/smarty/libs/Smarty.class.php', - 'SmartyBC' => __DIR__ . '/..' . '/smarty/smarty/libs/SmartyBC.class.php', 'SmartyCompilerException' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smartycompilerexception.php', 'SmartyException' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smartyexception.php', 'Smarty_Autoloader' => __DIR__ . '/..' . '/smarty/smarty/libs/Autoloader.php', @@ -225,7 +133,6 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 'Smarty_Internal_Compile_If' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_if.php', 'Smarty_Internal_Compile_Ifclose' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_if.php', 'Smarty_Internal_Compile_Include' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_include.php', - 'Smarty_Internal_Compile_Include_Php' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_include_php.php', 'Smarty_Internal_Compile_Insert' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_insert.php', 'Smarty_Internal_Compile_Ldelim' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_ldelim.php', 'Smarty_Internal_Compile_Make_Nocache' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_make_nocache.php', @@ -238,7 +145,6 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 'Smarty_Internal_Compile_Private_Modifier' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_modifier.php', 'Smarty_Internal_Compile_Private_Object_Block_Function' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_object_block_function.php', 'Smarty_Internal_Compile_Private_Object_Function' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_object_function.php', - 'Smarty_Internal_Compile_Private_Php' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_php.php', 'Smarty_Internal_Compile_Private_Print_Expression' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_print_expression.php', 'Smarty_Internal_Compile_Private_Registered_Block' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_registered_block.php', 'Smarty_Internal_Compile_Private_Registered_Function' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_registered_function.php', @@ -319,7 +225,6 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 'Smarty_Internal_Resource_Extends' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_extends.php', 'Smarty_Internal_Resource_File' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_file.php', 'Smarty_Internal_Resource_Php' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_php.php', - 'Smarty_Internal_Resource_Registered' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_registered.php', 'Smarty_Internal_Resource_Stream' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_stream.php', 'Smarty_Internal_Resource_String' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_resource_string.php', 'Smarty_Internal_Runtime_CacheModify' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_runtime_cachemodify.php', @@ -355,120 +260,17 @@ class ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678 'Smarty_Template_Source' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_template_source.php', 'Smarty_Undefined_Variable' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_undefined_variable.php', 'Smarty_Variable' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_variable.php', - 'Symfony\\Component\\Yaml\\Dumper' => __DIR__ . '/..' . '/symfony/yaml/Dumper.php', - 'Symfony\\Component\\Yaml\\Escaper' => __DIR__ . '/..' . '/symfony/yaml/Escaper.php', - 'Symfony\\Component\\Yaml\\Exception\\DumpException' => __DIR__ . '/..' . '/symfony/yaml/Exception/DumpException.php', - 'Symfony\\Component\\Yaml\\Exception\\ExceptionInterface' => __DIR__ . '/..' . '/symfony/yaml/Exception/ExceptionInterface.php', - 'Symfony\\Component\\Yaml\\Exception\\ParseException' => __DIR__ . '/..' . '/symfony/yaml/Exception/ParseException.php', - 'Symfony\\Component\\Yaml\\Exception\\RuntimeException' => __DIR__ . '/..' . '/symfony/yaml/Exception/RuntimeException.php', - 'Symfony\\Component\\Yaml\\Inline' => __DIR__ . '/..' . '/symfony/yaml/Inline.php', - 'Symfony\\Component\\Yaml\\Parser' => __DIR__ . '/..' . '/symfony/yaml/Parser.php', - 'Symfony\\Component\\Yaml\\Unescaper' => __DIR__ . '/..' . '/symfony/yaml/Unescaper.php', - 'Symfony\\Component\\Yaml\\Yaml' => __DIR__ . '/..' . '/symfony/yaml/Yaml.php', - 'Symfony\\Polyfill\\Ctype\\Ctype' => __DIR__ . '/..' . '/symfony/polyfill-ctype/Ctype.php', - 'Symfony\\Polyfill\\Iconv\\Iconv' => __DIR__ . '/..' . '/symfony/polyfill-iconv/Iconv.php', - 'Symfony\\Polyfill\\Mbstring\\Mbstring' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/Mbstring.php', 'TPC_yyStackEntry' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_configfileparser.php', 'TP_yyStackEntry' => __DIR__ . '/..' . '/smarty/smarty/libs/sysplugins/smarty_internal_templateparser.php', - 'Webmozart\\Assert\\Assert' => __DIR__ . '/..' . '/webmozart/assert/src/Assert.php', - 'Webmozart\\Assert\\Mixin' => __DIR__ . '/..' . '/webmozart/assert/src/Mixin.php', - 'WideImage\\Canvas' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Canvas.php', - 'WideImage\\Coordinate' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Coordinate.php', - 'WideImage\\Exception\\Exception' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/Exception.php', - 'WideImage\\Exception\\GDFunctionResultException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/GDFunctionResultException.php', - 'WideImage\\Exception\\InvalidCanvasMethodException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/InvalidCanvasMethodException.php', - 'WideImage\\Exception\\InvalidCoordinateException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/InvalidCoordinateException.php', - 'WideImage\\Exception\\InvalidFontFileException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/InvalidFontFileException.php', - 'WideImage\\Exception\\InvalidImageDimensionException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/InvalidImageDimensionException.php', - 'WideImage\\Exception\\InvalidImageHandleException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/InvalidImageHandleException.php', - 'WideImage\\Exception\\InvalidImageSourceException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/InvalidImageSourceException.php', - 'WideImage\\Exception\\NoFontException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/NoFontException.php', - 'WideImage\\Exception\\UnknownErrorWhileMappingException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/UnknownErrorWhileMappingException.php', - 'WideImage\\Exception\\UnknownImageOperationException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/UnknownImageOperationException.php', - 'WideImage\\Exception\\UnsupportedFormatException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Exception/UnsupportedFormatException.php', - 'WideImage\\Font\\GDF' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Font/GDF.php', - 'WideImage\\Font\\PS' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Font/PS.php', - 'WideImage\\Font\\TTF' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Font/TTF.php', - 'WideImage\\Image' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Image.php', - 'WideImage\\MapperFactory' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/MapperFactory.php', - 'WideImage\\Mapper\\BMP' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/BMP.php', - 'WideImage\\Mapper\\GD' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/GD.php', - 'WideImage\\Mapper\\GD2' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/GD2.php', - 'WideImage\\Mapper\\GIF' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/GIF.php', - 'WideImage\\Mapper\\JPEG' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/JPEG.php', - 'WideImage\\Mapper\\PNG' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/PNG.php', - 'WideImage\\Mapper\\TGA' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/TGA.php', - 'WideImage\\Mapper\\WEBP' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Mapper/WEBP.php', - 'WideImage\\OperationFactory' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/OperationFactory.php', - 'WideImage\\Operation\\AddNoise' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/AddNoise.php', - 'WideImage\\Operation\\ApplyConvolution' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/ApplyConvolution.php', - 'WideImage\\Operation\\ApplyFilter' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/ApplyFilter.php', - 'WideImage\\Operation\\ApplyMask' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/ApplyMask.php', - 'WideImage\\Operation\\AsGrayscale' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/AsGrayscale.php', - 'WideImage\\Operation\\AsNegative' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/AsNegative.php', - 'WideImage\\Operation\\AutoCrop' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/AutoCrop.php', - 'WideImage\\Operation\\CopyChannelsPalette' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/CopyChannelsPalette.php', - 'WideImage\\Operation\\CopyChannelsTrueColor' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/CopyChannelsTrueColor.php', - 'WideImage\\Operation\\CorrectGamma' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/CorrectGamma.php', - 'WideImage\\Operation\\Crop' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Crop.php', - 'WideImage\\Operation\\Exception\\InvalidFitMethodException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Exception/InvalidFitMethodException.php', - 'WideImage\\Operation\\Exception\\InvalidResizeDimensionException' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Exception/InvalidResizeDimensionException.php', - 'WideImage\\Operation\\Flip' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Flip.php', - 'WideImage\\Operation\\GetMask' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/GetMask.php', - 'WideImage\\Operation\\Merge' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Merge.php', - 'WideImage\\Operation\\Mirror' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Mirror.php', - 'WideImage\\Operation\\Resize' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Resize.php', - 'WideImage\\Operation\\ResizeCanvas' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/ResizeCanvas.php', - 'WideImage\\Operation\\Rotate' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Rotate.php', - 'WideImage\\Operation\\RoundCorners' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/RoundCorners.php', - 'WideImage\\Operation\\Unsharp' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/Operation/Unsharp.php', - 'WideImage\\PaletteImage' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/PaletteImage.php', - 'WideImage\\TrueColorImage' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/TrueColorImage.php', - 'WideImage\\WideImage' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/WideImage.php', - 'WideImage\\vendor\\de77\\BMP' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/vendor/de77/BMP.php', - 'WideImage\\vendor\\de77\\TGA' => __DIR__ . '/..' . '/smottt/wideimage/lib/WideImage/vendor/de77/TGA.php', - 'Xmf\\Assert' => __DIR__ . '/..' . '/xoops/xmf/src/Assert.php', - 'Xmf\\Database\\Migrate' => __DIR__ . '/..' . '/xoops/xmf/src/Database/Migrate.php', - 'Xmf\\Database\\TableLoad' => __DIR__ . '/..' . '/xoops/xmf/src/Database/TableLoad.php', - 'Xmf\\Database\\Tables' => __DIR__ . '/..' . '/xoops/xmf/src/Database/Tables.php', - 'Xmf\\Debug' => __DIR__ . '/..' . '/xoops/xmf/src/Debug.php', - 'Xmf\\FilterInput' => __DIR__ . '/..' . '/xoops/xmf/src/FilterInput.php', - 'Xmf\\Highlighter' => __DIR__ . '/..' . '/xoops/xmf/src/Highlighter.php', - 'Xmf\\IPAddress' => __DIR__ . '/..' . '/xoops/xmf/src/IPAddress.php', - 'Xmf\\Jwt\\JsonWebToken' => __DIR__ . '/..' . '/xoops/xmf/src/Jwt/JsonWebToken.php', - 'Xmf\\Jwt\\KeyFactory' => __DIR__ . '/..' . '/xoops/xmf/src/Jwt/KeyFactory.php', - 'Xmf\\Jwt\\TokenFactory' => __DIR__ . '/..' . '/xoops/xmf/src/Jwt/TokenFactory.php', - 'Xmf\\Jwt\\TokenReader' => __DIR__ . '/..' . '/xoops/xmf/src/Jwt/TokenReader.php', - 'Xmf\\Key\\ArrayStorage' => __DIR__ . '/..' . '/xoops/xmf/src/Key/ArrayStorage.php', - 'Xmf\\Key\\Basic' => __DIR__ . '/..' . '/xoops/xmf/src/Key/Basic.php', - 'Xmf\\Key\\FileStorage' => __DIR__ . '/..' . '/xoops/xmf/src/Key/FileStorage.php', - 'Xmf\\Key\\KeyAbstract' => __DIR__ . '/..' . '/xoops/xmf/src/Key/KeyAbstract.php', - 'Xmf\\Key\\StorageInterface' => __DIR__ . '/..' . '/xoops/xmf/src/Key/StorageInterface.php', - 'Xmf\\Language' => __DIR__ . '/..' . '/xoops/xmf/src/Language.php', - 'Xmf\\Metagen' => __DIR__ . '/..' . '/xoops/xmf/src/Metagen.php', - 'Xmf\\Module\\Admin' => __DIR__ . '/..' . '/xoops/xmf/src/Module/Admin.php', - 'Xmf\\Module\\Helper' => __DIR__ . '/..' . '/xoops/xmf/src/Module/Helper.php', - 'Xmf\\Module\\Helper\\AbstractHelper' => __DIR__ . '/..' . '/xoops/xmf/src/Module/Helper/AbstractHelper.php', - 'Xmf\\Module\\Helper\\Cache' => __DIR__ . '/..' . '/xoops/xmf/src/Module/Helper/Cache.php', - 'Xmf\\Module\\Helper\\GenericHelper' => __DIR__ . '/..' . '/xoops/xmf/src/Module/Helper/GenericHelper.php', - 'Xmf\\Module\\Helper\\Permission' => __DIR__ . '/..' . '/xoops/xmf/src/Module/Helper/Permission.php', - 'Xmf\\Module\\Helper\\Session' => __DIR__ . '/..' . '/xoops/xmf/src/Module/Helper/Session.php', - 'Xmf\\ProxyCheck' => __DIR__ . '/..' . '/xoops/xmf/src/ProxyCheck.php', - 'Xmf\\Random' => __DIR__ . '/..' . '/xoops/xmf/src/Random.php', - 'Xmf\\Request' => __DIR__ . '/..' . '/xoops/xmf/src/Request.php', - 'Xmf\\StopWords' => __DIR__ . '/..' . '/xoops/xmf/src/StopWords.php', - 'Xmf\\Ulid' => __DIR__ . '/..' . '/xoops/xmf/src/Ulid.php', - 'Xmf\\Uuid' => __DIR__ . '/..' . '/xoops/xmf/src/Uuid.php', - 'Xmf\\Yaml' => __DIR__ . '/..' . '/xoops/xmf/src/Yaml.php', ); public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678::$prefixDirsPsr4; - $loader->prefixesPsr0 = ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678::$prefixesPsr0; - $loader->classMap = ComposerStaticInit6352cb8ef79af2c7649e83bf921c4678::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit061ee1edadbea94fc801da5b706af3d2::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit061ee1edadbea94fc801da5b706af3d2::$prefixDirsPsr4; + $loader->prefixesPsr0 = ComposerStaticInit061ee1edadbea94fc801da5b706af3d2::$prefixesPsr0; + $loader->classMap = ComposerStaticInit061ee1edadbea94fc801da5b706af3d2::$classMap; }, null, ClassLoader::class); } diff --git a/htdocs/class/libraries/vendor/composer/installed.json b/htdocs/class/libraries/vendor/composer/installed.json index be27b8e3f..3535ad474 100644 --- a/htdocs/class/libraries/vendor/composer/installed.json +++ b/htdocs/class/libraries/vendor/composer/installed.json @@ -55,29 +55,35 @@ }, { "name": "firebase/php-jwt", - "version": "v6.0.0", - "version_normalized": "6.0.0.0", + "version": "v6.10.0", + "version_normalized": "6.10.0.0", "source": { "type": "git", "url": "https://github.com/firebase/php-jwt.git", - "reference": "0541cba75ab108ef901985e68055a92646c73534" + "reference": "a49db6f0a5033aef5143295342f1c95521b075ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/firebase/php-jwt/zipball/0541cba75ab108ef901985e68055a92646c73534", - "reference": "0541cba75ab108ef901985e68055a92646c73534", + "url": "https://api.github.com/repos/firebase/php-jwt/zipball/a49db6f0a5033aef5143295342f1c95521b075ff", + "reference": "a49db6f0a5033aef5143295342f1c95521b075ff", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": "^7.4||^8.0" }, "require-dev": { - "phpunit/phpunit": ">=4.8 <=9" + "guzzlehttp/guzzle": "^6.5||^7.4", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "psr/cache": "^1.0||^2.0", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0" }, "suggest": { + "ext-sodium": "Support EdDSA (Ed25519) signatures", "paragonie/sodium_compat": "Support EdDSA (Ed25519) signatures when libsodium is not present" }, - "time": "2022-01-24T15:18:34+00:00", + "time": "2023-12-01T16:26:39+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -109,152 +115,41 @@ ], "support": { "issues": "https://github.com/firebase/php-jwt/issues", - "source": "https://github.com/firebase/php-jwt/tree/v6.0.0" + "source": "https://github.com/firebase/php-jwt/tree/v6.10.0" }, "install-path": "../firebase/php-jwt" }, - { - "name": "geekwright/regdom", - "version": "v1.0.9", - "version_normalized": "1.0.9.0", - "source": { - "type": "git", - "url": "https://github.com/geekwright/RegDom.git", - "reference": "5948ac178650fd93d6e847893aa52fc964627683" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/geekwright/RegDom/zipball/5948ac178650fd93d6e847893aa52fc964627683", - "reference": "5948ac178650fd93d6e847893aa52fc964627683", - "shasum": "" - }, - "require": { - "php": ">=5.3.9", - "symfony/polyfill-mbstring": "^1.3.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8|^5.7" - }, - "time": "2023-05-01T00:09:34+00:00", - "bin": [ - "bin/reloadpsl" - ], - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "Geekwright\\RegDom\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache-2.0" - ], - "authors": [ - { - "name": "Richard Griffith", - "email": "richard@geekwright.com" - } - ], - "description": "OO adaptation of Florian Sager's regdom library for querying Mozilla Public Suffix List", - "homepage": "https://github.com/geekwright/RegDom", - "keywords": [ - "public", - "regdom", - "suffix", - "tld" - ], - "support": { - "issues": "https://github.com/geekwright/RegDom/issues", - "source": "https://github.com/geekwright/RegDom/tree/v1.0.9" - }, - "install-path": "../geekwright/regdom" - }, - { - "name": "ircmaxell/password-compat", - "version": "v1.0.4", - "version_normalized": "1.0.4.0", - "source": { - "type": "git", - "url": "https://github.com/ircmaxell/password_compat.git", - "reference": "5c5cde8822a69545767f7c7f3058cb15ff84614c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ircmaxell/password_compat/zipball/5c5cde8822a69545767f7c7f3058cb15ff84614c", - "reference": "5c5cde8822a69545767f7c7f3058cb15ff84614c", - "shasum": "" - }, - "require-dev": { - "phpunit/phpunit": "4.*" - }, - "time": "2014-11-20T16:49:30+00:00", - "type": "library", - "installation-source": "dist", - "autoload": { - "files": [ - "lib/password.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Anthony Ferrara", - "email": "ircmaxell@php.net", - "homepage": "http://blog.ircmaxell.com" - } - ], - "description": "A compatibility library for the proposed simplified password hashing algorithm: https://wiki.php.net/rfc/password_hash", - "homepage": "https://github.com/ircmaxell/password_compat", - "keywords": [ - "hashing", - "password" - ], - "support": { - "issues": "https://github.com/ircmaxell/password_compat/issues", - "source": "https://github.com/ircmaxell/password_compat/tree/v1.0" - }, - "install-path": "../ircmaxell/password-compat" - }, { "name": "kint-php/kint", - "version": "3.3", - "version_normalized": "3.3.0.0", + "version": "5.1.1", + "version_normalized": "5.1.1.0", "source": { "type": "git", "url": "https://github.com/kint-php/kint.git", - "reference": "335ac1bcaf04d87df70d8aa51e8887ba2c6d203b" + "reference": "8c5ec370c3382ceae0b88e91f9bbb00e6bb4f93b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/kint-php/kint/zipball/335ac1bcaf04d87df70d8aa51e8887ba2c6d203b", - "reference": "335ac1bcaf04d87df70d8aa51e8887ba2c6d203b", + "url": "https://api.github.com/repos/kint-php/kint/zipball/8c5ec370c3382ceae0b88e91f9bbb00e6bb4f93b", + "reference": "8c5ec370c3382ceae0b88e91f9bbb00e6bb4f93b", "shasum": "" }, "require": { - "php": ">=5.3.6" + "php": ">=7.1" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^2.0", - "phpunit/phpunit": "^4.0", - "seld/phar-utils": "^1.0", - "symfony/finder": "^2.0 || ^3.0 || ^4.0", - "vimeo/psalm": "^3.0" + "friendsofphp/php-cs-fixer": "^3", + "phpspec/prophecy-phpunit": "^2", + "phpunit/phpunit": "^9", + "seld/phar-utils": "^1", + "symfony/finder": ">=4.0", + "vimeo/psalm": "^5" }, "suggest": { - "ext-ctype": "Simple data type tests", - "ext-iconv": "Provides fallback detection for ambiguous legacy string encodings such as the Windows and ISO 8859 code pages", - "ext-mbstring": "Provides string encoding detection", - "kint-php/kint-js": "Provides a simplified dump to console.log()", - "kint-php/kint-twig": "Provides d() and s() functions in twig templates", - "symfony/polyfill-ctype": "Replacement for ext-ctype if missing", - "symfony/polyfill-iconv": "Replacement for ext-iconv if missing", - "symfony/polyfill-mbstring": "Replacement for ext-mbstring if missing" - }, - "time": "2019-10-17T18:05:24+00:00", + "kint-php/kint-helpers": "Provides extra helper functions", + "kint-php/kint-twig": "Provides d() and s() functions in twig templates" + }, + "time": "2024-04-26T14:20:09+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -274,10 +169,6 @@ "name": "Jonathan Vollebregt", "homepage": "https://github.com/jnvsor" }, - { - "name": "Rokas Å leinius", - "homepage": "https://github.com/raveren" - }, { "name": "Contributors", "homepage": "https://github.com/kint-php/kint/graphs/contributors" @@ -292,42 +183,38 @@ ], "support": { "issues": "https://github.com/kint-php/kint/issues", - "source": "https://github.com/kint-php/kint/tree/master" + "source": "https://github.com/kint-php/kint/tree/5.1.1" }, "install-path": "../kint-php/kint" }, { "name": "paragonie/random_compat", - "version": "v2.0.21", - "version_normalized": "2.0.21.0", + "version": "v9.99.100", + "version_normalized": "9.99.100.0", "source": { "type": "git", "url": "https://github.com/paragonie/random_compat.git", - "reference": "96c132c7f2f7bc3230723b66e89f8f150b29d5ae" + "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/96c132c7f2f7bc3230723b66e89f8f150b29d5ae", - "reference": "96c132c7f2f7bc3230723b66e89f8f150b29d5ae", + "url": "https://api.github.com/repos/paragonie/random_compat/zipball/996434e5492cb4c3edcb9168db6fbb1359ef965a", + "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a", "shasum": "" }, "require": { - "php": ">=5.2.0" + "php": ">= 7" }, "require-dev": { - "phpunit/phpunit": "*" + "phpunit/phpunit": "4.*|5.*", + "vimeo/psalm": "^1" }, "suggest": { "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." }, - "time": "2022-02-16T17:07:03+00:00", + "time": "2020-10-15T08:29:30+00:00", "type": "library", "installation-source": "dist", - "autoload": { - "files": [ - "lib/random.php" - ] - }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" @@ -355,31 +242,31 @@ }, { "name": "smarty/smarty", - "version": "v3.1.48", - "version_normalized": "3.1.48.0", + "version": "v4.5.3", + "version_normalized": "4.5.3.0", "source": { "type": "git", "url": "https://github.com/smarty-php/smarty.git", - "reference": "2fc443806cdcaee4441be4d0bb09f8fa56a17f2c" + "reference": "9fc96a13dbaf546c3d7bcf95466726578cd4e0fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/smarty-php/smarty/zipball/2fc443806cdcaee4441be4d0bb09f8fa56a17f2c", - "reference": "2fc443806cdcaee4441be4d0bb09f8fa56a17f2c", + "url": "https://api.github.com/repos/smarty-php/smarty/zipball/9fc96a13dbaf546c3d7bcf95466726578cd4e0fa", + "reference": "9fc96a13dbaf546c3d7bcf95466726578cd4e0fa", "shasum": "" }, "require": { - "php": "^5.2 || ^7.0" + "php": "^7.1 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^7.5 || ^6.5 || ^5.7 || ^4.8", + "phpunit/phpunit": "^8.5 || ^7.5", "smarty/smarty-lexer": "^3.1" }, - "time": "2023-03-28T19:45:54+00:00", + "time": "2024-05-28T21:46:01+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1.x-dev" + "dev-master": "4.0.x-dev" } }, "installation-source": "dist", @@ -404,18 +291,21 @@ { "name": "Rodney Rehm", "email": "rodney.rehm@medialize.de" + }, + { + "name": "Simon Wisselink", + "homepage": "https://www.iwink.nl/" } ], "description": "Smarty - the compiling PHP template engine", - "homepage": "http://www.smarty.net", + "homepage": "https://smarty-php.github.io/smarty/", "keywords": [ "templating" ], "support": { - "forum": "http://www.smarty.net/forums/", - "irc": "irc://irc.freenode.org/smarty", + "forum": "https://github.com/smarty-php/smarty/discussions", "issues": "https://github.com/smarty-php/smarty/issues", - "source": "https://github.com/smarty-php/smarty/tree/v3.1.48" + "source": "https://github.com/smarty-php/smarty/tree/v4.5.3" }, "install-path": "../smarty/smarty" }, @@ -461,33 +351,103 @@ }, "install-path": "../smottt/wideimage" }, + { + "name": "symfony/deprecation-contracts", + "version": "v2.5.3", + "version_normalized": "2.5.3.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "80d075412b557d41002320b96a096ca65aa2c98d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/80d075412b557d41002320b96a096ca65aa2c98d", + "reference": "80d075412b557d41002320b96a096ca65aa2c98d", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "time": "2023-01-24T14:02:46+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/deprecation-contracts" + }, { "name": "symfony/polyfill-ctype", - "version": "v1.19.0", - "version_normalized": "1.19.0.0", + "version": "v1.30.0", + "version_normalized": "1.30.0.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "aed596913b70fae57be53d86faa2e9ef85a2297b" + "reference": "0424dff1c58f028c451efff2045f5d92410bd540" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/aed596913b70fae57be53d86faa2e9ef85a2297b", - "reference": "aed596913b70fae57be53d86faa2e9ef85a2297b", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/0424dff1c58f028c451efff2045f5d92410bd540", + "reference": "0424dff1c58f028c451efff2045f5d92410bd540", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" + }, + "provide": { + "ext-ctype": "*" }, "suggest": { "ext-ctype": "For best performance" }, - "time": "2020-10-23T09:01:57+00:00", + "time": "2024-05-31T15:07:36+00:00", "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.19-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -495,12 +455,12 @@ }, "installation-source": "dist", "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -525,7 +485,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.19.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.30.0" }, "funding": [ { @@ -545,31 +505,31 @@ }, { "name": "symfony/polyfill-iconv", - "version": "v1.19.0", - "version_normalized": "1.19.0.0", + "version": "v1.30.0", + "version_normalized": "1.30.0.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "085241787d52fa6f7a774fd034135fef0cfd5496" + "reference": "c027e6a3c6aee334663ec21f5852e89738abc805" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/085241787d52fa6f7a774fd034135fef0cfd5496", - "reference": "085241787d52fa6f7a774fd034135fef0cfd5496", + "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/c027e6a3c6aee334663ec21f5852e89738abc805", + "reference": "c027e6a3c6aee334663ec21f5852e89738abc805", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" + }, + "provide": { + "ext-iconv": "*" }, "suggest": { "ext-iconv": "For best performance" }, - "time": "2020-10-23T09:01:57+00:00", + "time": "2024-05-31T15:07:36+00:00", "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.19-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -577,12 +537,12 @@ }, "installation-source": "dist", "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Iconv\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Iconv\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -608,7 +568,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-iconv/tree/v1.19.0" + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.30.0" }, "funding": [ { @@ -628,31 +588,31 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.19.0", - "version_normalized": "1.19.0.0", + "version": "v1.30.0", + "version_normalized": "1.30.0.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "b5f7b932ee6fa802fc792eabd77c4c88084517ce" + "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b5f7b932ee6fa802fc792eabd77c4c88084517ce", - "reference": "b5f7b932ee6fa802fc792eabd77c4c88084517ce", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fd22ab50000ef01661e2a31d850ebaa297f8e03c", + "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" + }, + "provide": { + "ext-mbstring": "*" }, "suggest": { "ext-mbstring": "For best performance" }, - "time": "2020-10-23T09:01:57+00:00", + "time": "2024-06-19T12:30:46+00:00", "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.19-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -660,12 +620,12 @@ }, "installation-source": "dist", "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -691,7 +651,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.19.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.30.0" }, "funding": [ { @@ -711,30 +671,38 @@ }, { "name": "symfony/yaml", - "version": "v2.8.52", - "version_normalized": "2.8.52.0", + "version": "v5.4.40", + "version_normalized": "5.4.40.0", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "02c1859112aa779d9ab394ae4f3381911d84052b" + "reference": "81cad0ceab3d61fe14fe941ff18a230ac9c80f83" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/02c1859112aa779d9ab394ae4f3381911d84052b", - "reference": "02c1859112aa779d9ab394ae4f3381911d84052b", + "url": "https://api.github.com/repos/symfony/yaml/zipball/81cad0ceab3d61fe14fe941ff18a230ac9c80f83", + "reference": "81cad0ceab3d61fe14fe941ff18a230ac9c80f83", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/polyfill-ctype": "~1.8" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-ctype": "^1.8" }, - "time": "2018-11-11T11:18:13+00:00", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } + "conflict": { + "symfony/console": "<5.3" }, + "require-dev": { + "symfony/console": "^5.3|^6.0" + }, + "suggest": { + "symfony/console": "For validating YAML files using the lint command" + }, + "time": "2024-05-31T14:33:22+00:00", + "bin": [ + "Resources/bin/yaml-lint" + ], + "type": "library", "installation-source": "dist", "autoload": { "psr-4": { @@ -758,41 +726,60 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Yaml Component", + "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v2.8.52" + "source": "https://github.com/symfony/yaml/tree/v5.4.40" }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], "install-path": "../symfony/yaml" }, { "name": "webmozart/assert", - "version": "1.9.1", - "version_normalized": "1.9.1.0", + "version": "1.11.0", + "version_normalized": "1.11.0.0", "source": { "type": "git", "url": "https://github.com/webmozarts/assert.git", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389" + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", "shasum": "" }, "require": { - "php": "^5.3.3 || ^7.0 || ^8.0", - "symfony/polyfill-ctype": "^1.8" + "ext-ctype": "*", + "php": "^7.2 || ^8.0" }, "conflict": { "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<3.9.1" + "vimeo/psalm": "<4.6.1 || 4.6.2" }, "require-dev": { - "phpunit/phpunit": "^4.8.36 || ^7.5.13" + "phpunit/phpunit": "^8.5.13" }, - "time": "2020-07-08T17:02:28+00:00", + "time": "2022-06-03T18:03:27+00:00", "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, "installation-source": "dist", "autoload": { "psr-4": { @@ -817,37 +804,36 @@ ], "support": { "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.9.1" + "source": "https://github.com/webmozarts/assert/tree/1.11.0" }, "install-path": "../webmozart/assert" }, { "name": "xoops/base-requires25", - "version": "v1.1.2", - "version_normalized": "1.1.2.0", + "version": "v1.1.6", + "version_normalized": "1.1.6.0", "source": { "type": "git", "url": "https://github.com/XOOPS/base-requires25.git", - "reference": "b2f26012863d2ee30aec744847e09c77f8403804" + "reference": "d5cdce5e9b496e309bc18d0ebfd612801b875a11" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/XOOPS/base-requires25/zipball/b2f26012863d2ee30aec744847e09c77f8403804", - "reference": "b2f26012863d2ee30aec744847e09c77f8403804", + "url": "https://api.github.com/repos/XOOPS/base-requires25/zipball/d5cdce5e9b496e309bc18d0ebfd612801b875a11", + "reference": "d5cdce5e9b496e309bc18d0ebfd612801b875a11", "shasum": "" }, "require": { "boenrobot/money_format_polyfill": "^1.0.2", - "geekwright/regdom": "^1.0.0", - "ircmaxell/password-compat": "^1.0.4", - "php": ">=5.6.0", - "smarty/smarty": "^3.1.47", + "php": ">=7.4.0", + "smarty/smarty": "^4.5.3", "smottt/wideimage": "^1.1.4", - "symfony/polyfill-iconv": "^1.10.0", - "symfony/polyfill-mbstring": "^1.10.0", - "xoops/xmf": "^1.2.29" + "symfony/polyfill-iconv": "^1.30.0", + "symfony/polyfill-mbstring": "^1.30.0", + "xoops/regdom": "^2.0.0", + "xoops/xmf": "^1.2.30" }, - "time": "2023-12-05T05:29:09+00:00", + "time": "2024-07-27T04:05:09+00:00", "type": "project", "installation-source": "dist", "notification-url": "https://packagist.org/downloads/", @@ -857,38 +843,94 @@ "description": "Primary dependencies for XOOPS/XoopsCore25", "support": { "issues": "https://github.com/XOOPS/base-requires25/issues", - "source": "https://github.com/XOOPS/base-requires25/tree/v1.1.2" + "source": "https://github.com/XOOPS/base-requires25/tree/v1.1.6" }, "install-path": "../xoops/base-requires25" }, + { + "name": "xoops/regdom", + "version": "v2.0.0", + "version_normalized": "2.0.0.0", + "source": { + "type": "git", + "url": "https://github.com/XOOPS/RegDom.git", + "reference": "5ba86dad323bc29a7b59037161cec165d314fcbc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/XOOPS/RegDom/zipball/5ba86dad323bc29a7b59037161cec165d314fcbc", + "reference": "5ba86dad323bc29a7b59037161cec165d314fcbc", + "shasum": "" + }, + "require": { + "php": ">=7.4.0", + "symfony/polyfill-mbstring": "^1.30.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6|^11.2.2" + }, + "time": "2024-07-27T03:57:13+00:00", + "bin": [ + "bin/reloadpsl" + ], + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Xoops\\RegDom\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Richard Griffith", + "email": "richard@geekwright.com" + } + ], + "description": "OO adaptation of Florian Sager's regdom library for querying Mozilla Public Suffix List", + "homepage": "https://github.com/XOOPS/RegDom", + "keywords": [ + "public", + "regdom", + "suffix", + "tld" + ], + "support": { + "source": "https://github.com/XOOPS/RegDom/tree/v2.0.0" + }, + "install-path": "../xoops/regdom" + }, { "name": "xoops/xmf", - "version": "v1.2.29", - "version_normalized": "1.2.29.0", + "version": "v1.2.30", + "version_normalized": "1.2.30.0", "source": { "type": "git", "url": "https://github.com/XOOPS/xmf.git", - "reference": "4b3222d7dbc19fdbf9e47ea1dbe7721e159feaf1" + "reference": "0c3824c308a198d8051e53e9661dce20579258a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/XOOPS/xmf/zipball/4b3222d7dbc19fdbf9e47ea1dbe7721e159feaf1", - "reference": "4b3222d7dbc19fdbf9e47ea1dbe7721e159feaf1", + "url": "https://api.github.com/repos/XOOPS/xmf/zipball/0c3824c308a198d8051e53e9661dce20579258a0", + "reference": "0c3824c308a198d8051e53e9661dce20579258a0", "shasum": "" }, "require": { - "firebase/php-jwt": "6.0.0", - "kint-php/kint": "^3.3", - "paragonie/random_compat": "^2", - "php": ">=5.6.0", - "symfony/yaml": "^2.8", - "webmozart/assert": "1.9.1" + "firebase/php-jwt": "^6.10.0", + "kint-php/kint": "^5.1.1", + "paragonie/random_compat": "^9.99.100", + "php": ">=7.4.0", + "symfony/yaml": "^5.4.39", + "webmozart/assert": "^1.11.0" }, "require-dev": { - "phpunit/phpunit": "^7.0", - "roave/security-advisories": "dev-master" + "phpunit/phpunit": "^9.6", + "roave/security-advisories": "dev-latest" }, - "time": "2023-12-05T05:12:33+00:00", + "time": "2024-06-16T05:18:02+00:00", "type": "project", "installation-source": "dist", "autoload": { @@ -903,11 +945,11 @@ "description": "XMF - XOOPS Module Framework", "support": { "issues": "https://github.com/XOOPS/xmf/issues", - "source": "https://github.com/XOOPS/xmf/tree/v1.2.29" + "source": "https://github.com/XOOPS/xmf/tree/v1.2.30" }, "install-path": "../xoops/xmf" } ], - "dev": false, + "dev": true, "dev-package-names": [] } diff --git a/htdocs/class/libraries/vendor/composer/installed.php b/htdocs/class/libraries/vendor/composer/installed.php index ea499b840..02ec3cdcd 100644 --- a/htdocs/class/libraries/vendor/composer/installed.php +++ b/htdocs/class/libraries/vendor/composer/installed.php @@ -3,11 +3,11 @@ 'name' => 'xoopscore25/libraries', 'pretty_version' => 'dev-master', 'version' => 'dev-master', - 'reference' => '3eb7b6611e920c84c47b8a56a644b10baa1bc08f', + 'reference' => '3f12b06ef889a6dfb246115c014b2d99aaba725d', 'type' => 'project', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), - 'dev' => false, + 'dev' => true, ), 'versions' => array( 'boenrobot/money_format_polyfill' => array( @@ -20,54 +20,36 @@ 'dev_requirement' => false, ), 'firebase/php-jwt' => array( - 'pretty_version' => 'v6.0.0', - 'version' => '6.0.0.0', - 'reference' => '0541cba75ab108ef901985e68055a92646c73534', + 'pretty_version' => 'v6.10.0', + 'version' => '6.10.0.0', + 'reference' => 'a49db6f0a5033aef5143295342f1c95521b075ff', 'type' => 'library', 'install_path' => __DIR__ . '/../firebase/php-jwt', 'aliases' => array(), 'dev_requirement' => false, ), - 'geekwright/regdom' => array( - 'pretty_version' => 'v1.0.9', - 'version' => '1.0.9.0', - 'reference' => '5948ac178650fd93d6e847893aa52fc964627683', - 'type' => 'library', - 'install_path' => __DIR__ . '/../geekwright/regdom', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'ircmaxell/password-compat' => array( - 'pretty_version' => 'v1.0.4', - 'version' => '1.0.4.0', - 'reference' => '5c5cde8822a69545767f7c7f3058cb15ff84614c', - 'type' => 'library', - 'install_path' => __DIR__ . '/../ircmaxell/password-compat', - 'aliases' => array(), - 'dev_requirement' => false, - ), 'kint-php/kint' => array( - 'pretty_version' => '3.3', - 'version' => '3.3.0.0', - 'reference' => '335ac1bcaf04d87df70d8aa51e8887ba2c6d203b', + 'pretty_version' => '5.1.1', + 'version' => '5.1.1.0', + 'reference' => '8c5ec370c3382ceae0b88e91f9bbb00e6bb4f93b', 'type' => 'library', 'install_path' => __DIR__ . '/../kint-php/kint', 'aliases' => array(), 'dev_requirement' => false, ), 'paragonie/random_compat' => array( - 'pretty_version' => 'v2.0.21', - 'version' => '2.0.21.0', - 'reference' => '96c132c7f2f7bc3230723b66e89f8f150b29d5ae', + 'pretty_version' => 'v9.99.100', + 'version' => '9.99.100.0', + 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', 'type' => 'library', 'install_path' => __DIR__ . '/../paragonie/random_compat', 'aliases' => array(), 'dev_requirement' => false, ), 'smarty/smarty' => array( - 'pretty_version' => 'v3.1.48', - 'version' => '3.1.48.0', - 'reference' => '2fc443806cdcaee4441be4d0bb09f8fa56a17f2c', + 'pretty_version' => 'v4.5.3', + 'version' => '4.5.3.0', + 'reference' => '9fc96a13dbaf546c3d7bcf95466726578cd4e0fa', 'type' => 'library', 'install_path' => __DIR__ . '/../smarty/smarty', 'aliases' => array(), @@ -82,64 +64,82 @@ 'aliases' => array(), 'dev_requirement' => false, ), + 'symfony/deprecation-contracts' => array( + 'pretty_version' => 'v2.5.3', + 'version' => '2.5.3.0', + 'reference' => '80d075412b557d41002320b96a096ca65aa2c98d', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', + 'aliases' => array(), + 'dev_requirement' => false, + ), 'symfony/polyfill-ctype' => array( - 'pretty_version' => 'v1.19.0', - 'version' => '1.19.0.0', - 'reference' => 'aed596913b70fae57be53d86faa2e9ef85a2297b', + 'pretty_version' => 'v1.30.0', + 'version' => '1.30.0.0', + 'reference' => '0424dff1c58f028c451efff2045f5d92410bd540', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => false, ), 'symfony/polyfill-iconv' => array( - 'pretty_version' => 'v1.19.0', - 'version' => '1.19.0.0', - 'reference' => '085241787d52fa6f7a774fd034135fef0cfd5496', + 'pretty_version' => 'v1.30.0', + 'version' => '1.30.0.0', + 'reference' => 'c027e6a3c6aee334663ec21f5852e89738abc805', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-iconv', 'aliases' => array(), 'dev_requirement' => false, ), 'symfony/polyfill-mbstring' => array( - 'pretty_version' => 'v1.19.0', - 'version' => '1.19.0.0', - 'reference' => 'b5f7b932ee6fa802fc792eabd77c4c88084517ce', + 'pretty_version' => 'v1.30.0', + 'version' => '1.30.0.0', + 'reference' => 'fd22ab50000ef01661e2a31d850ebaa297f8e03c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => false, ), 'symfony/yaml' => array( - 'pretty_version' => 'v2.8.52', - 'version' => '2.8.52.0', - 'reference' => '02c1859112aa779d9ab394ae4f3381911d84052b', + 'pretty_version' => 'v5.4.40', + 'version' => '5.4.40.0', + 'reference' => '81cad0ceab3d61fe14fe941ff18a230ac9c80f83', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/yaml', 'aliases' => array(), 'dev_requirement' => false, ), 'webmozart/assert' => array( - 'pretty_version' => '1.9.1', - 'version' => '1.9.1.0', - 'reference' => 'bafc69caeb4d49c39fd0779086c03a3738cbb389', + 'pretty_version' => '1.11.0', + 'version' => '1.11.0.0', + 'reference' => '11cb2199493b2f8a3b53e7f19068fc6aac760991', 'type' => 'library', 'install_path' => __DIR__ . '/../webmozart/assert', 'aliases' => array(), 'dev_requirement' => false, ), 'xoops/base-requires25' => array( - 'pretty_version' => 'v1.1.2', - 'version' => '1.1.2.0', - 'reference' => 'b2f26012863d2ee30aec744847e09c77f8403804', + 'pretty_version' => 'v1.1.6', + 'version' => '1.1.6.0', + 'reference' => 'd5cdce5e9b496e309bc18d0ebfd612801b875a11', 'type' => 'project', 'install_path' => __DIR__ . '/../xoops/base-requires25', 'aliases' => array(), 'dev_requirement' => false, ), + 'xoops/regdom' => array( + 'pretty_version' => 'v2.0.0', + 'version' => '2.0.0.0', + 'reference' => '5ba86dad323bc29a7b59037161cec165d314fcbc', + 'type' => 'library', + 'install_path' => __DIR__ . '/../xoops/regdom', + 'aliases' => array(), + 'dev_requirement' => false, + ), 'xoops/xmf' => array( - 'pretty_version' => 'v1.2.29', - 'version' => '1.2.29.0', - 'reference' => '4b3222d7dbc19fdbf9e47ea1dbe7721e159feaf1', + 'pretty_version' => 'v1.2.30', + 'version' => '1.2.30.0', + 'reference' => '0c3824c308a198d8051e53e9661dce20579258a0', 'type' => 'project', 'install_path' => __DIR__ . '/../xoops/xmf', 'aliases' => array(), @@ -148,7 +148,7 @@ 'xoopscore25/libraries' => array( 'pretty_version' => 'dev-master', 'version' => 'dev-master', - 'reference' => '3eb7b6611e920c84c47b8a56a644b10baa1bc08f', + 'reference' => '3f12b06ef889a6dfb246115c014b2d99aaba725d', 'type' => 'project', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), diff --git a/htdocs/class/libraries/vendor/composer/platform_check.php b/htdocs/class/libraries/vendor/composer/platform_check.php index 8b379f446..580fa9609 100644 --- a/htdocs/class/libraries/vendor/composer/platform_check.php +++ b/htdocs/class/libraries/vendor/composer/platform_check.php @@ -4,8 +4,8 @@ $issues = array(); -if (!(PHP_VERSION_ID >= 50600)) { - $issues[] = 'Your Composer dependencies require a PHP version ">= 5.6.0". You are running ' . PHP_VERSION . '.'; +if (!(PHP_VERSION_ID >= 70400)) { + $issues[] = 'Your Composer dependencies require a PHP version ">= 7.4.0". You are running ' . PHP_VERSION . '.'; } if ($issues) { diff --git a/htdocs/class/libraries/vendor/firebase/php-jwt/README.md b/htdocs/class/libraries/vendor/firebase/php-jwt/README.md index 7839af601..701de23a8 100644 --- a/htdocs/class/libraries/vendor/firebase/php-jwt/README.md +++ b/htdocs/class/libraries/vendor/firebase/php-jwt/README.md @@ -29,13 +29,13 @@ Example use Firebase\JWT\JWT; use Firebase\JWT\Key; -$key = "example_key"; -$payload = array( - "iss" => "http://example.org", - "aud" => "http://example.com", - "iat" => 1356999524, - "nbf" => 1357000000 -); +$key = 'example_key'; +$payload = [ + 'iss' => 'http://example.org', + 'aud' => 'http://example.com', + 'iat' => 1356999524, + 'nbf' => 1357000000 +]; /** * IMPORTANT: @@ -45,9 +45,12 @@ $payload = array( */ $jwt = JWT::encode($payload, $key, 'HS256'); $decoded = JWT::decode($jwt, new Key($key, 'HS256')); - print_r($decoded); +// Pass a stdClass in as the third parameter to get the decoded header values +$decoded = JWT::decode($jwt, new Key($key, 'HS256'), $headers = new stdClass()); +print_r($headers); + /* NOTE: This will now be an object instead of an associative array. To get an associative array, you will need to cast it as such: @@ -65,6 +68,40 @@ $decoded_array = (array) $decoded; JWT::$leeway = 60; // $leeway in seconds $decoded = JWT::decode($jwt, new Key($key, 'HS256')); ``` +Example encode/decode headers +------- +Decoding the JWT headers without verifying the JWT first is NOT recommended, and is not supported by +this library. This is because without verifying the JWT, the header values could have been tampered with. +Any value pulled from an unverified header should be treated as if it could be any string sent in from an +attacker. If this is something you still want to do in your application for whatever reason, it's possible to +decode the header values manually simply by calling `json_decode` and `base64_decode` on the JWT +header part: +```php +use Firebase\JWT\JWT; + +$key = 'example_key'; +$payload = [ + 'iss' => 'http://example.org', + 'aud' => 'http://example.com', + 'iat' => 1356999524, + 'nbf' => 1357000000 +]; + +$headers = [ + 'x-forwarded-for' => 'www.google.com' +]; + +// Encode headers in the JWT string +$jwt = JWT::encode($payload, $key, 'HS256', null, $headers); + +// Decode headers from the JWT string WITHOUT validation +// **IMPORTANT**: This operation is vulnerable to attacks, as the JWT has not yet been verified. +// These headers could be any value sent by an attacker. +list($headersB64, $payloadB64, $sig) = explode('.', $jwt); +$decoded = json_decode(base64_decode($headersB64), true); + +print_r($decoded); +``` Example with RS256 (openssl) ---------------------------- ```php @@ -73,37 +110,52 @@ use Firebase\JWT\Key; $privateKey = << "example.org", - "aud" => "example.com", - "iat" => 1356999524, - "nbf" => 1357000000 -); +$payload = [ + 'iss' => 'example.org', + 'aud' => 'example.com', + 'iat' => 1356999524, + 'nbf' => 1357000000 +]; $jwt = JWT::encode($payload, $privateKey, 'RS256'); echo "Encode:\n" . print_r($jwt, true) . "\n"; @@ -139,12 +191,12 @@ $privateKey = openssl_pkey_get_private( $passphrase ); -$payload = array( - "iss" => "example.org", - "aud" => "example.com", - "iat" => 1356999524, - "nbf" => 1357000000 -); +$payload = [ + 'iss' => 'example.org', + 'aud' => 'example.com', + 'iat' => 1356999524, + 'nbf' => 1357000000 +]; $jwt = JWT::encode($payload, $privateKey, 'RS256'); echo "Encode:\n" . print_r($jwt, true) . "\n"; @@ -173,12 +225,12 @@ $privateKey = base64_encode(sodium_crypto_sign_secretkey($keyPair)); $publicKey = base64_encode(sodium_crypto_sign_publickey($keyPair)); -$payload = array( - "iss" => "example.org", - "aud" => "example.com", - "iat" => 1356999524, - "nbf" => 1357000000 -); +$payload = [ + 'iss' => 'example.org', + 'aud' => 'example.com', + 'iat' => 1356999524, + 'nbf' => 1357000000 +]; $jwt = JWT::encode($payload, $privateKey, 'EdDSA'); echo "Encode:\n" . print_r($jwt, true) . "\n"; @@ -187,6 +239,44 @@ $decoded = JWT::decode($jwt, new Key($publicKey, 'EdDSA')); echo "Decode:\n" . print_r((array) $decoded, true) . "\n"; ```` +Example with multiple keys +-------------------------- +```php +use Firebase\JWT\JWT; +use Firebase\JWT\Key; + +// Example RSA keys from previous example +// $privateKey1 = '...'; +// $publicKey1 = '...'; + +// Example EdDSA keys from previous example +// $privateKey2 = '...'; +// $publicKey2 = '...'; + +$payload = [ + 'iss' => 'example.org', + 'aud' => 'example.com', + 'iat' => 1356999524, + 'nbf' => 1357000000 +]; + +$jwt1 = JWT::encode($payload, $privateKey1, 'RS256', 'kid1'); +$jwt2 = JWT::encode($payload, $privateKey2, 'EdDSA', 'kid2'); +echo "Encode 1:\n" . print_r($jwt1, true) . "\n"; +echo "Encode 2:\n" . print_r($jwt2, true) . "\n"; + +$keys = [ + 'kid1' => new Key($publicKey1, 'RS256'), + 'kid2' => new Key($publicKey2, 'EdDSA'), +]; + +$decoded1 = JWT::decode($jwt1, $keys); +$decoded2 = JWT::decode($jwt2, $keys); + +echo "Decode 1:\n" . print_r((array) $decoded1, true) . "\n"; +echo "Decode 2:\n" . print_r((array) $decoded2, true) . "\n"; +``` + Using JWKs ---------- @@ -203,75 +293,112 @@ $jwks = ['keys' => []]; JWT::decode($payload, JWK::parseKeySet($jwks)); ``` -Changelog ---------- - -#### 6.0.0 / 2022-01-24 - - - **Backwards-Compatibility Breaking Changes**: See the [Release Notes](https://github.com/firebase/php-jwt/releases/tag/v5.5.1) for more information. - - New Key object to prevent key/algorithm type confusion (#365) - - Add JWK support (#273) - - Add ES256 support (#256) - - Add ES384 support (#324) - - Add Ed25519 support (#343) - -#### 5.0.0 / 2017-06-26 -- Support RS384 and RS512. - See [#117](https://github.com/firebase/php-jwt/pull/117). Thanks [@joostfaassen](https://github.com/joostfaassen)! -- Add an example for RS256 openssl. - See [#125](https://github.com/firebase/php-jwt/pull/125). Thanks [@akeeman](https://github.com/akeeman)! -- Detect invalid Base64 encoding in signature. - See [#162](https://github.com/firebase/php-jwt/pull/162). Thanks [@psignoret](https://github.com/psignoret)! -- Update `JWT::verify` to handle OpenSSL errors. - See [#159](https://github.com/firebase/php-jwt/pull/159). Thanks [@bshaffer](https://github.com/bshaffer)! -- Add `array` type hinting to `decode` method - See [#101](https://github.com/firebase/php-jwt/pull/101). Thanks [@hywak](https://github.com/hywak)! -- Add all JSON error types. - See [#110](https://github.com/firebase/php-jwt/pull/110). Thanks [@gbalduzzi](https://github.com/gbalduzzi)! -- Bugfix 'kid' not in given key list. - See [#129](https://github.com/firebase/php-jwt/pull/129). Thanks [@stampycode](https://github.com/stampycode)! -- Miscellaneous cleanup, documentation and test fixes. - See [#107](https://github.com/firebase/php-jwt/pull/107), [#115](https://github.com/firebase/php-jwt/pull/115), - [#160](https://github.com/firebase/php-jwt/pull/160), [#161](https://github.com/firebase/php-jwt/pull/161), and - [#165](https://github.com/firebase/php-jwt/pull/165). Thanks [@akeeman](https://github.com/akeeman), - [@chinedufn](https://github.com/chinedufn), and [@bshaffer](https://github.com/bshaffer)! - -#### 4.0.0 / 2016-07-17 -- Add support for late static binding. See [#88](https://github.com/firebase/php-jwt/pull/88) for details. Thanks to [@chappy84](https://github.com/chappy84)! -- Use static `$timestamp` instead of `time()` to improve unit testing. See [#93](https://github.com/firebase/php-jwt/pull/93) for details. Thanks to [@josephmcdermott](https://github.com/josephmcdermott)! -- Fixes to exceptions classes. See [#81](https://github.com/firebase/php-jwt/pull/81) for details. Thanks to [@Maks3w](https://github.com/Maks3w)! -- Fixes to PHPDoc. See [#76](https://github.com/firebase/php-jwt/pull/76) for details. Thanks to [@akeeman](https://github.com/akeeman)! - -#### 3.0.0 / 2015-07-22 -- Minimum PHP version updated from `5.2.0` to `5.3.0`. -- Add `\Firebase\JWT` namespace. See -[#59](https://github.com/firebase/php-jwt/pull/59) for details. Thanks to -[@Dashron](https://github.com/Dashron)! -- Require a non-empty key to decode and verify a JWT. See -[#60](https://github.com/firebase/php-jwt/pull/60) for details. Thanks to -[@sjones608](https://github.com/sjones608)! -- Cleaner documentation blocks in the code. See -[#62](https://github.com/firebase/php-jwt/pull/62) for details. Thanks to -[@johanderuijter](https://github.com/johanderuijter)! - -#### 2.2.0 / 2015-06-22 -- Add support for adding custom, optional JWT headers to `JWT::encode()`. See -[#53](https://github.com/firebase/php-jwt/pull/53/files) for details. Thanks to -[@mcocaro](https://github.com/mcocaro)! - -#### 2.1.0 / 2015-05-20 -- Add support for adding a leeway to `JWT:decode()` that accounts for clock skew -between signing and verifying entities. Thanks to [@lcabral](https://github.com/lcabral)! -- Add support for passing an object implementing the `ArrayAccess` interface for -`$keys` argument in `JWT::decode()`. Thanks to [@aztech-dev](https://github.com/aztech-dev)! - -#### 2.0.0 / 2015-04-01 -- **Note**: It is strongly recommended that you update to > v2.0.0 to address - known security vulnerabilities in prior versions when both symmetric and - asymmetric keys are used together. -- Update signature for `JWT::decode(...)` to require an array of supported - algorithms to use when verifying token signatures. +Using Cached Key Sets +--------------------- + +The `CachedKeySet` class can be used to fetch and cache JWKS (JSON Web Key Sets) from a public URI. +This has the following advantages: + +1. The results are cached for performance. +2. If an unrecognized key is requested, the cache is refreshed, to accomodate for key rotation. +3. If rate limiting is enabled, the JWKS URI will not make more than 10 requests a second. + +```php +use Firebase\JWT\CachedKeySet; +use Firebase\JWT\JWT; + +// The URI for the JWKS you wish to cache the results from +$jwksUri = 'https://www.gstatic.com/iap/verify/public_key-jwk'; + +// Create an HTTP client (can be any PSR-7 compatible HTTP client) +$httpClient = new GuzzleHttp\Client(); + +// Create an HTTP request factory (can be any PSR-17 compatible HTTP request factory) +$httpFactory = new GuzzleHttp\Psr\HttpFactory(); + +// Create a cache item pool (can be any PSR-6 compatible cache item pool) +$cacheItemPool = Phpfastcache\CacheManager::getInstance('files'); + +$keySet = new CachedKeySet( + $jwksUri, + $httpClient, + $httpFactory, + $cacheItemPool, + null, // $expiresAfter int seconds to set the JWKS to expire + true // $rateLimit true to enable rate limit of 10 RPS on lookup of invalid keys +); + +$jwt = 'eyJhbGci...'; // Some JWT signed by a key from the $jwkUri above +$decoded = JWT::decode($jwt, $keySet); +``` + +Miscellaneous +------------- + +#### Exception Handling + +When a call to `JWT::decode` is invalid, it will throw one of the following exceptions: +```php +use Firebase\JWT\JWT; +use Firebase\JWT\SignatureInvalidException; +use Firebase\JWT\BeforeValidException; +use Firebase\JWT\ExpiredException; +use DomainException; +use InvalidArgumentException; +use UnexpectedValueException; + +try { + $decoded = JWT::decode($payload, $keys); +} catch (InvalidArgumentException $e) { + // provided key/key-array is empty or malformed. +} catch (DomainException $e) { + // provided algorithm is unsupported OR + // provided key is invalid OR + // unknown error thrown in openSSL or libsodium OR + // libsodium is required but not available. +} catch (SignatureInvalidException $e) { + // provided JWT signature verification failed. +} catch (BeforeValidException $e) { + // provided JWT is trying to be used before "nbf" claim OR + // provided JWT is trying to be used before "iat" claim. +} catch (ExpiredException $e) { + // provided JWT is trying to be used after "exp" claim. +} catch (UnexpectedValueException $e) { + // provided JWT is malformed OR + // provided JWT is missing an algorithm / using an unsupported algorithm OR + // provided JWT algorithm does not match provided key OR + // provided key ID in key/key-array is empty or invalid. +} +``` + +All exceptions in the `Firebase\JWT` namespace extend `UnexpectedValueException`, and can be simplified +like this: + +```php +use Firebase\JWT\JWT; +use UnexpectedValueException; +try { + $decoded = JWT::decode($payload, $keys); +} catch (LogicException $e) { + // errors having to do with environmental setup or malformed JWT Keys +} catch (UnexpectedValueException $e) { + // errors having to do with JWT signature and claims +} +``` + +#### Casting to array + +The return value of `JWT::decode` is the generic PHP object `stdClass`. If you'd like to handle with arrays +instead, you can do the following: + +```php +// return type is stdClass +$decoded = JWT::decode($payload, $keys); + +// cast to array +$decoded = json_decode(json_encode($decoded), true); +``` Tests ----- diff --git a/htdocs/class/libraries/vendor/firebase/php-jwt/composer.json b/htdocs/class/libraries/vendor/firebase/php-jwt/composer.json index 6146e2dcc..e23dfe378 100644 --- a/htdocs/class/libraries/vendor/firebase/php-jwt/composer.json +++ b/htdocs/class/libraries/vendor/firebase/php-jwt/composer.json @@ -20,10 +20,11 @@ ], "license": "BSD-3-Clause", "require": { - "php": ">=5.3.0" + "php": "^7.4||^8.0" }, "suggest": { - "paragonie/sodium_compat": "Support EdDSA (Ed25519) signatures when libsodium is not present" + "paragonie/sodium_compat": "Support EdDSA (Ed25519) signatures when libsodium is not present", + "ext-sodium": "Support EdDSA (Ed25519) signatures" }, "autoload": { "psr-4": { @@ -31,6 +32,11 @@ } }, "require-dev": { - "phpunit/phpunit": ">=4.8 <=9" + "guzzlehttp/guzzle": "^6.5||^7.4", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "psr/cache": "^1.0||^2.0", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0" } } diff --git a/htdocs/class/libraries/vendor/firebase/php-jwt/src/BeforeValidException.php b/htdocs/class/libraries/vendor/firebase/php-jwt/src/BeforeValidException.php index c147852b9..595164bf3 100644 --- a/htdocs/class/libraries/vendor/firebase/php-jwt/src/BeforeValidException.php +++ b/htdocs/class/libraries/vendor/firebase/php-jwt/src/BeforeValidException.php @@ -2,6 +2,17 @@ namespace Firebase\JWT; -class BeforeValidException extends \UnexpectedValueException +class BeforeValidException extends \UnexpectedValueException implements JWTExceptionWithPayloadInterface { + private object $payload; + + public function setPayload(object $payload): void + { + $this->payload = $payload; + } + + public function getPayload(): object + { + return $this->payload; + } } diff --git a/htdocs/class/libraries/vendor/firebase/php-jwt/src/ExpiredException.php b/htdocs/class/libraries/vendor/firebase/php-jwt/src/ExpiredException.php index 81ba52d43..12fef0944 100644 --- a/htdocs/class/libraries/vendor/firebase/php-jwt/src/ExpiredException.php +++ b/htdocs/class/libraries/vendor/firebase/php-jwt/src/ExpiredException.php @@ -2,6 +2,17 @@ namespace Firebase\JWT; -class ExpiredException extends \UnexpectedValueException +class ExpiredException extends \UnexpectedValueException implements JWTExceptionWithPayloadInterface { + private object $payload; + + public function setPayload(object $payload): void + { + $this->payload = $payload; + } + + public function getPayload(): object + { + return $this->payload; + } } diff --git a/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWK.php b/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWK.php index c5506548d..63fb2484b 100644 --- a/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWK.php +++ b/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWK.php @@ -20,10 +20,29 @@ */ class JWK { + private const OID = '1.2.840.10045.2.1'; + private const ASN1_OBJECT_IDENTIFIER = 0x06; + private const ASN1_SEQUENCE = 0x10; // also defined in JWT + private const ASN1_BIT_STRING = 0x03; + private const EC_CURVES = [ + 'P-256' => '1.2.840.10045.3.1.7', // Len: 64 + 'secp256k1' => '1.3.132.0.10', // Len: 64 + 'P-384' => '1.3.132.0.34', // Len: 96 + // 'P-521' => '1.3.132.0.35', // Len: 132 (not supported) + ]; + + // For keys with "kty" equal to "OKP" (Octet Key Pair), the "crv" parameter must contain the key subtype. + // This library supports the following subtypes: + private const OKP_SUBTYPES = [ + 'Ed25519' => true, // RFC 8037 + ]; + /** * Parse a set of JWK keys * - * @param array $jwks The JSON Web Key Set as an associative array + * @param array $jwks The JSON Web Key Set as an associative array + * @param string $defaultAlg The algorithm for the Key object if "alg" is not set in the + * JSON Web Key Set * * @return array An associative array of key IDs (kid) to Key objects * @@ -33,21 +52,22 @@ class JWK * * @uses parseKey */ - public static function parseKeySet(array $jwks) + public static function parseKeySet(array $jwks, string $defaultAlg = null): array { - $keys = array(); + $keys = []; if (!isset($jwks['keys'])) { throw new UnexpectedValueException('"keys" member must exist in the JWK Set'); } + if (empty($jwks['keys'])) { throw new InvalidArgumentException('JWK Set did not contain any keys'); } foreach ($jwks['keys'] as $k => $v) { $kid = isset($v['kid']) ? $v['kid'] : $k; - if ($key = self::parseKey($v)) { - $keys[$kid] = $key; + if ($key = self::parseKey($v, $defaultAlg)) { + $keys[(string) $kid] = $key; } } @@ -61,7 +81,9 @@ public static function parseKeySet(array $jwks) /** * Parse a JWK key * - * @param array $jwk An individual JWK + * @param array $jwk An individual JWK + * @param string $defaultAlg The algorithm for the Key object if "alg" is not set in the + * JSON Web Key Set * * @return Key The key object for the JWK * @@ -71,19 +93,25 @@ public static function parseKeySet(array $jwks) * * @uses createPemFromModulusAndExponent */ - public static function parseKey(array $jwk) + public static function parseKey(array $jwk, string $defaultAlg = null): ?Key { if (empty($jwk)) { throw new InvalidArgumentException('JWK must not be empty'); } + if (!isset($jwk['kty'])) { throw new UnexpectedValueException('JWK must contain a "kty" parameter'); } + if (!isset($jwk['alg'])) { - // The "alg" parameter is optional in a KTY, but is required for parsing in - // this library. Add it manually to your JWK array if it doesn't already exist. - // @see https://datatracker.ietf.org/doc/html/rfc7517#section-4.4 - throw new UnexpectedValueException('JWK must contain an "alg" parameter'); + if (\is_null($defaultAlg)) { + // The "alg" parameter is optional in a KTY, but an algorithm is required + // for parsing in this library. Use the $defaultAlg parameter when parsing the + // key set in order to prevent this error. + // @see https://datatracker.ietf.org/doc/html/rfc7517#section-4.4 + throw new UnexpectedValueException('JWK must contain an "alg" parameter'); + } + $jwk['alg'] = $defaultAlg; } switch ($jwk['kty']) { @@ -103,10 +131,91 @@ public static function parseKey(array $jwk) ); } return new Key($publicKey, $jwk['alg']); + case 'EC': + if (isset($jwk['d'])) { + // The key is actually a private key + throw new UnexpectedValueException('Key data must be for a public key'); + } + + if (empty($jwk['crv'])) { + throw new UnexpectedValueException('crv not set'); + } + + if (!isset(self::EC_CURVES[$jwk['crv']])) { + throw new DomainException('Unrecognised or unsupported EC curve'); + } + + if (empty($jwk['x']) || empty($jwk['y'])) { + throw new UnexpectedValueException('x and y not set'); + } + + $publicKey = self::createPemFromCrvAndXYCoordinates($jwk['crv'], $jwk['x'], $jwk['y']); + return new Key($publicKey, $jwk['alg']); + case 'OKP': + if (isset($jwk['d'])) { + // The key is actually a private key + throw new UnexpectedValueException('Key data must be for a public key'); + } + + if (!isset($jwk['crv'])) { + throw new UnexpectedValueException('crv not set'); + } + + if (empty(self::OKP_SUBTYPES[$jwk['crv']])) { + throw new DomainException('Unrecognised or unsupported OKP key subtype'); + } + + if (empty($jwk['x'])) { + throw new UnexpectedValueException('x not set'); + } + + // This library works internally with EdDSA keys (Ed25519) encoded in standard base64. + $publicKey = JWT::convertBase64urlToBase64($jwk['x']); + return new Key($publicKey, $jwk['alg']); default: - // Currently only RSA is supported break; } + + return null; + } + + /** + * Converts the EC JWK values to pem format. + * + * @param string $crv The EC curve (only P-256 & P-384 is supported) + * @param string $x The EC x-coordinate + * @param string $y The EC y-coordinate + * + * @return string + */ + private static function createPemFromCrvAndXYCoordinates(string $crv, string $x, string $y): string + { + $pem = + self::encodeDER( + self::ASN1_SEQUENCE, + self::encodeDER( + self::ASN1_SEQUENCE, + self::encodeDER( + self::ASN1_OBJECT_IDENTIFIER, + self::encodeOID(self::OID) + ) + . self::encodeDER( + self::ASN1_OBJECT_IDENTIFIER, + self::encodeOID(self::EC_CURVES[$crv]) + ) + ) . + self::encodeDER( + self::ASN1_BIT_STRING, + \chr(0x00) . \chr(0x04) + . JWT::urlsafeB64Decode($x) + . JWT::urlsafeB64Decode($y) + ) + ); + + return sprintf( + "-----BEGIN PUBLIC KEY-----\n%s\n-----END PUBLIC KEY-----\n", + wordwrap(base64_encode($pem), 64, "\n", true) + ); } /** @@ -119,22 +228,22 @@ public static function parseKey(array $jwk) * * @uses encodeLength */ - private static function createPemFromModulusAndExponent($n, $e) - { - $modulus = JWT::urlsafeB64Decode($n); - $publicExponent = JWT::urlsafeB64Decode($e); + private static function createPemFromModulusAndExponent( + string $n, + string $e + ): string { + $mod = JWT::urlsafeB64Decode($n); + $exp = JWT::urlsafeB64Decode($e); - $components = array( - 'modulus' => \pack('Ca*a*', 2, self::encodeLength(\strlen($modulus)), $modulus), - 'publicExponent' => \pack('Ca*a*', 2, self::encodeLength(\strlen($publicExponent)), $publicExponent) - ); + $modulus = \pack('Ca*a*', 2, self::encodeLength(\strlen($mod)), $mod); + $publicExponent = \pack('Ca*a*', 2, self::encodeLength(\strlen($exp)), $exp); $rsaPublicKey = \pack( 'Ca*a*a*', 48, - self::encodeLength(\strlen($components['modulus']) + \strlen($components['publicExponent'])), - $components['modulus'], - $components['publicExponent'] + self::encodeLength(\strlen($modulus) + \strlen($publicExponent)), + $modulus, + $publicExponent ); // sequence(oid(1.2.840.113549.1.1.1), null)) = rsaEncryption. @@ -149,11 +258,9 @@ private static function createPemFromModulusAndExponent($n, $e) $rsaOID . $rsaPublicKey ); - $rsaPublicKey = "-----BEGIN PUBLIC KEY-----\r\n" . + return "-----BEGIN PUBLIC KEY-----\r\n" . \chunk_split(\base64_encode($rsaPublicKey), 64) . '-----END PUBLIC KEY-----'; - - return $rsaPublicKey; } /** @@ -165,7 +272,7 @@ private static function createPemFromModulusAndExponent($n, $e) * @param int $length * @return string */ - private static function encodeLength($length) + private static function encodeLength(int $length): string { if ($length <= 0x7F) { return \chr($length); @@ -175,4 +282,68 @@ private static function encodeLength($length) return \pack('Ca*', 0x80 | \strlen($temp), $temp); } + + /** + * Encodes a value into a DER object. + * Also defined in Firebase\JWT\JWT + * + * @param int $type DER tag + * @param string $value the value to encode + * @return string the encoded object + */ + private static function encodeDER(int $type, string $value): string + { + $tag_header = 0; + if ($type === self::ASN1_SEQUENCE) { + $tag_header |= 0x20; + } + + // Type + $der = \chr($tag_header | $type); + + // Length + $der .= \chr(\strlen($value)); + + return $der . $value; + } + + /** + * Encodes a string into a DER-encoded OID. + * + * @param string $oid the OID string + * @return string the binary DER-encoded OID + */ + private static function encodeOID(string $oid): string + { + $octets = explode('.', $oid); + + // Get the first octet + $first = (int) array_shift($octets); + $second = (int) array_shift($octets); + $oid = \chr($first * 40 + $second); + + // Iterate over subsequent octets + foreach ($octets as $octet) { + if ($octet == 0) { + $oid .= \chr(0x00); + continue; + } + $bin = ''; + + while ($octet) { + $bin .= \chr(0x80 | ($octet & 0x7f)); + $octet >>= 7; + } + $bin[0] = $bin[0] & \chr(0x7f); + + // Convert to big endian if necessary + if (pack('V', 65534) == pack('L', 65534)) { + $oid .= strrev($bin); + } else { + $oid .= $bin; + } + } + + return $oid; + } } diff --git a/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWT.php b/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWT.php index 725a0832e..263492068 100644 --- a/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWT.php +++ b/htdocs/class/libraries/vendor/firebase/php-jwt/src/JWT.php @@ -3,12 +3,14 @@ namespace Firebase\JWT; use ArrayAccess; +use DateTime; use DomainException; use Exception; use InvalidArgumentException; use OpenSSLAsymmetricKey; +use OpenSSLCertificate; +use stdClass; use UnexpectedValueException; -use DateTime; /** * JSON Web Token implementation, based on this spec: @@ -25,53 +27,62 @@ */ class JWT { - // const ASN1_INTEGER = 0x02; - // const ASN1_SEQUENCE = 0x10; - // const ASN1_BIT_STRING = 0x03; - private static $asn1Integer = 0x02; - private static $asn1Sequence = 0x10; - private static $asn1BitString = 0x03; + private const ASN1_INTEGER = 0x02; + private const ASN1_SEQUENCE = 0x10; + private const ASN1_BIT_STRING = 0x03; /** * When checking nbf, iat or expiration times, * we want to provide some extra leeway time to * account for clock skew. + * + * @var int */ public static $leeway = 0; /** * Allow the current timestamp to be specified. * Useful for fixing a value within unit testing. - * * Will default to PHP time() value if null. + * + * @var ?int */ public static $timestamp = null; - public static $supported_algs = array( - 'ES384' => array('openssl', 'SHA384'), - 'ES256' => array('openssl', 'SHA256'), - 'HS256' => array('hash_hmac', 'SHA256'), - 'HS384' => array('hash_hmac', 'SHA384'), - 'HS512' => array('hash_hmac', 'SHA512'), - 'RS256' => array('openssl', 'SHA256'), - 'RS384' => array('openssl', 'SHA384'), - 'RS512' => array('openssl', 'SHA512'), - 'EdDSA' => array('sodium_crypto', 'EdDSA'), - ); + /** + * @var array + */ + public static $supported_algs = [ + 'ES384' => ['openssl', 'SHA384'], + 'ES256' => ['openssl', 'SHA256'], + 'ES256K' => ['openssl', 'SHA256'], + 'HS256' => ['hash_hmac', 'SHA256'], + 'HS384' => ['hash_hmac', 'SHA384'], + 'HS512' => ['hash_hmac', 'SHA512'], + 'RS256' => ['openssl', 'SHA256'], + 'RS384' => ['openssl', 'SHA384'], + 'RS512' => ['openssl', 'SHA512'], + 'EdDSA' => ['sodium_crypto', 'EdDSA'], + ]; /** * Decodes a JWT string into a PHP object. * - * @param string $jwt The JWT - * @param Key|array $keyOrKeyArray The Key or associative array of key IDs (kid) to Key objects. - * If the algorithm used is asymmetric, this is the public key - * Each Key object contains an algorithm and matching key. - * Supported algorithms are 'ES384','ES256', 'HS256', 'HS384', - * 'HS512', 'RS256', 'RS384', and 'RS512' - * - * @return object The JWT's payload as a PHP object - * - * @throws InvalidArgumentException Provided key/key-array was empty + * @param string $jwt The JWT + * @param Key|ArrayAccess|array $keyOrKeyArray The Key or associative array of key IDs + * (kid) to Key objects. + * If the algorithm used is asymmetric, this is + * the public key. + * Each Key object contains an algorithm and + * matching key. + * Supported algorithms are 'ES384','ES256', + * 'HS256', 'HS384', 'HS512', 'RS256', 'RS384' + * and 'RS512'. + * @param stdClass $headers Optional. Populates stdClass with headers. + * + * @return stdClass The JWT's payload as a PHP object + * + * @throws InvalidArgumentException Provided key/key-array was empty or malformed * @throws DomainException Provided JWT is malformed * @throws UnexpectedValueException Provided JWT was invalid * @throws SignatureInvalidException Provided JWT was invalid because the signature verification failed @@ -82,8 +93,11 @@ class JWT * @uses jsonDecode * @uses urlsafeB64Decode */ - public static function decode($jwt, $keyOrKeyArray) - { + public static function decode( + string $jwt, + $keyOrKeyArray, + stdClass &$headers = null + ): stdClass { // Validate JWT $timestamp = \is_null(static::$timestamp) ? \time() : static::$timestamp; @@ -91,19 +105,29 @@ public static function decode($jwt, $keyOrKeyArray) throw new InvalidArgumentException('Key may not be empty'); } $tks = \explode('.', $jwt); - if (\count($tks) != 3) { + if (\count($tks) !== 3) { throw new UnexpectedValueException('Wrong number of segments'); } list($headb64, $bodyb64, $cryptob64) = $tks; - if (null === ($header = static::jsonDecode(static::urlsafeB64Decode($headb64)))) { + $headerRaw = static::urlsafeB64Decode($headb64); + if (null === ($header = static::jsonDecode($headerRaw))) { throw new UnexpectedValueException('Invalid header encoding'); } - if (null === $payload = static::jsonDecode(static::urlsafeB64Decode($bodyb64))) { + if ($headers !== null) { + $headers = $header; + } + $payloadRaw = static::urlsafeB64Decode($bodyb64); + if (null === ($payload = static::jsonDecode($payloadRaw))) { throw new UnexpectedValueException('Invalid claims encoding'); } - if (false === ($sig = static::urlsafeB64Decode($cryptob64))) { - throw new UnexpectedValueException('Invalid signature encoding'); + if (\is_array($payload)) { + // prevent PHP Fatal Error in edge-cases when payload is empty array + $payload = (object) $payload; + } + if (!$payload instanceof stdClass) { + throw new UnexpectedValueException('Payload must be a JSON object'); } + $sig = static::urlsafeB64Decode($cryptob64); if (empty($header->alg)) { throw new UnexpectedValueException('Empty algorithm'); } @@ -111,75 +135,85 @@ public static function decode($jwt, $keyOrKeyArray) throw new UnexpectedValueException('Algorithm not supported'); } - $key = self::getKey($keyOrKeyArray, empty($header->kid) ? null : $header->kid); + $key = self::getKey($keyOrKeyArray, property_exists($header, 'kid') ? $header->kid : null); // Check the algorithm if (!self::constantTimeEquals($key->getAlgorithm(), $header->alg)) { // See issue #351 throw new UnexpectedValueException('Incorrect key for this algorithm'); } - if ($header->alg === 'ES256' || $header->alg === 'ES384') { - // OpenSSL expects an ASN.1 DER sequence for ES256/ES384 signatures + if (\in_array($header->alg, ['ES256', 'ES256K', 'ES384'], true)) { + // OpenSSL expects an ASN.1 DER sequence for ES256/ES256K/ES384 signatures $sig = self::signatureToDER($sig); } - if (!static::verify("$headb64.$bodyb64", $sig, $key->getKeyMaterial(), $header->alg)) { + if (!self::verify("{$headb64}.{$bodyb64}", $sig, $key->getKeyMaterial(), $header->alg)) { throw new SignatureInvalidException('Signature verification failed'); } // Check the nbf if it is defined. This is the time that the // token can actually be used. If it's not yet that time, abort. - if (isset($payload->nbf) && $payload->nbf > ($timestamp + static::$leeway)) { - throw new BeforeValidException( - 'Cannot handle token prior to ' . \date(DateTime::ISO8601, $payload->nbf) + if (isset($payload->nbf) && floor($payload->nbf) > ($timestamp + static::$leeway)) { + $ex = new BeforeValidException( + 'Cannot handle token with nbf prior to ' . \date(DateTime::ISO8601, (int) $payload->nbf) ); + $ex->setPayload($payload); + throw $ex; } // Check that this token has been created before 'now'. This prevents // using tokens that have been created for later use (and haven't // correctly used the nbf claim). - if (isset($payload->iat) && $payload->iat > ($timestamp + static::$leeway)) { - throw new BeforeValidException( - 'Cannot handle token prior to ' . \date(DateTime::ISO8601, $payload->iat) + if (!isset($payload->nbf) && isset($payload->iat) && floor($payload->iat) > ($timestamp + static::$leeway)) { + $ex = new BeforeValidException( + 'Cannot handle token with iat prior to ' . \date(DateTime::ISO8601, (int) $payload->iat) ); + $ex->setPayload($payload); + throw $ex; } // Check if this token has expired. if (isset($payload->exp) && ($timestamp - static::$leeway) >= $payload->exp) { - throw new ExpiredException('Expired token'); + $ex = new ExpiredException('Expired token'); + $ex->setPayload($payload); + throw $ex; } return $payload; } /** - * Converts and signs a PHP object or array into a JWT string. + * Converts and signs a PHP array into a JWT string. * - * @param object|array $payload PHP object or array - * @param string|resource $key The secret key. - * If the algorithm used is asymmetric, this is the private key - * @param string $alg The signing algorithm. - * Supported algorithms are 'ES384','ES256', 'HS256', 'HS384', - * 'HS512', 'RS256', 'RS384', and 'RS512' - * @param mixed $keyId - * @param array $head An array with header elements to attach + * @param array $payload PHP array + * @param string|resource|OpenSSLAsymmetricKey|OpenSSLCertificate $key The secret key. + * @param string $alg Supported algorithms are 'ES384','ES256', 'ES256K', 'HS256', + * 'HS384', 'HS512', 'RS256', 'RS384', and 'RS512' + * @param string $keyId + * @param array $head An array with header elements to attach * * @return string A signed JWT * * @uses jsonEncode * @uses urlsafeB64Encode */ - public static function encode($payload, $key, $alg, $keyId = null, $head = null) - { - $header = array('typ' => 'JWT', 'alg' => $alg); + public static function encode( + array $payload, + $key, + string $alg, + string $keyId = null, + array $head = null + ): string { + $header = ['typ' => 'JWT']; + if (isset($head) && \is_array($head)) { + $header = \array_merge($header, $head); + } + $header['alg'] = $alg; if ($keyId !== null) { $header['kid'] = $keyId; } - if (isset($head) && \is_array($head)) { - $header = \array_merge($head, $header); - } - $segments = array(); - $segments[] = static::urlsafeB64Encode(static::jsonEncode($header)); - $segments[] = static::urlsafeB64Encode(static::jsonEncode($payload)); + $segments = []; + $segments[] = static::urlsafeB64Encode((string) static::jsonEncode($header)); + $segments[] = static::urlsafeB64Encode((string) static::jsonEncode($payload)); $signing_input = \implode('.', $segments); $signature = static::sign($signing_input, $key, $alg); @@ -191,67 +225,84 @@ public static function encode($payload, $key, $alg, $keyId = null, $head = null) /** * Sign a string with a given key and algorithm. * - * @param string $msg The message to sign - * @param string|resource $key The secret key - * @param string $alg The signing algorithm. - * Supported algorithms are 'ES384','ES256', 'HS256', 'HS384', - * 'HS512', 'RS256', 'RS384', and 'RS512' + * @param string $msg The message to sign + * @param string|resource|OpenSSLAsymmetricKey|OpenSSLCertificate $key The secret key. + * @param string $alg Supported algorithms are 'EdDSA', 'ES384', 'ES256', 'ES256K', 'HS256', + * 'HS384', 'HS512', 'RS256', 'RS384', and 'RS512' * * @return string An encrypted message * * @throws DomainException Unsupported algorithm or bad key was specified */ - public static function sign($msg, $key, $alg) - { + public static function sign( + string $msg, + $key, + string $alg + ): string { if (empty(static::$supported_algs[$alg])) { throw new DomainException('Algorithm not supported'); } list($function, $algorithm) = static::$supported_algs[$alg]; switch ($function) { case 'hash_hmac': + if (!\is_string($key)) { + throw new InvalidArgumentException('key must be a string when using hmac'); + } return \hash_hmac($algorithm, $msg, $key, true); case 'openssl': $signature = ''; - $success = \openssl_sign($msg, $signature, $key, $algorithm); + $success = \openssl_sign($msg, $signature, $key, $algorithm); // @phpstan-ignore-line if (!$success) { - throw new DomainException("OpenSSL unable to sign data"); + throw new DomainException('OpenSSL unable to sign data'); } - if ($alg === 'ES256') { + if ($alg === 'ES256' || $alg === 'ES256K') { $signature = self::signatureFromDER($signature, 256); } elseif ($alg === 'ES384') { $signature = self::signatureFromDER($signature, 384); } return $signature; case 'sodium_crypto': - if (!function_exists('sodium_crypto_sign_detached')) { + if (!\function_exists('sodium_crypto_sign_detached')) { throw new DomainException('libsodium is not available'); } + if (!\is_string($key)) { + throw new InvalidArgumentException('key must be a string when using EdDSA'); + } try { // The last non-empty line is used as the key. $lines = array_filter(explode("\n", $key)); - $key = base64_decode(end($lines)); + $key = base64_decode((string) end($lines)); + if (\strlen($key) === 0) { + throw new DomainException('Key cannot be empty string'); + } return sodium_crypto_sign_detached($msg, $key); } catch (Exception $e) { throw new DomainException($e->getMessage(), 0, $e); } } + + throw new DomainException('Algorithm not supported'); } /** * Verify a signature with the message, key and method. Not all methods * are symmetric, so we must have a separate verify and sign method. * - * @param string $msg The original message (header and body) - * @param string $signature The original signature - * @param string|resource $key For HS*, a string key works. for RS*, must be a resource of an openssl public key - * @param string $alg The algorithm + * @param string $msg The original message (header and body) + * @param string $signature The original signature + * @param string|resource|OpenSSLAsymmetricKey|OpenSSLCertificate $keyMaterial For Ed*, ES*, HS*, a string key works. for RS*, must be an instance of OpenSSLAsymmetricKey + * @param string $alg The algorithm * * @return bool * * @throws DomainException Invalid Algorithm, bad key, or OpenSSL failure */ - private static function verify($msg, $signature, $key, $alg) - { + private static function verify( + string $msg, + string $signature, + $keyMaterial, + string $alg + ): bool { if (empty(static::$supported_algs[$alg])) { throw new DomainException('Algorithm not supported'); } @@ -259,10 +310,11 @@ private static function verify($msg, $signature, $key, $alg) list($function, $algorithm) = static::$supported_algs[$alg]; switch ($function) { case 'openssl': - $success = \openssl_verify($msg, $signature, $key, $algorithm); + $success = \openssl_verify($msg, $signature, $keyMaterial, $algorithm); // @phpstan-ignore-line if ($success === 1) { return true; - } elseif ($success === 0) { + } + if ($success === 0) { return false; } // returns 1 on success, 0 on failure, -1 on error. @@ -270,21 +322,33 @@ private static function verify($msg, $signature, $key, $alg) 'OpenSSL error: ' . \openssl_error_string() ); case 'sodium_crypto': - if (!function_exists('sodium_crypto_sign_verify_detached')) { - throw new DomainException('libsodium is not available'); - } - try { - // The last non-empty line is used as the key. - $lines = array_filter(explode("\n", $key)); - $key = base64_decode(end($lines)); - return sodium_crypto_sign_verify_detached($signature, $msg, $key); - } catch (Exception $e) { - throw new DomainException($e->getMessage(), 0, $e); - } + if (!\function_exists('sodium_crypto_sign_verify_detached')) { + throw new DomainException('libsodium is not available'); + } + if (!\is_string($keyMaterial)) { + throw new InvalidArgumentException('key must be a string when using EdDSA'); + } + try { + // The last non-empty line is used as the key. + $lines = array_filter(explode("\n", $keyMaterial)); + $key = base64_decode((string) end($lines)); + if (\strlen($key) === 0) { + throw new DomainException('Key cannot be empty string'); + } + if (\strlen($signature) === 0) { + throw new DomainException('Signature cannot be empty string'); + } + return sodium_crypto_sign_verify_detached($signature, $msg, $key); + } catch (Exception $e) { + throw new DomainException($e->getMessage(), 0, $e); + } case 'hash_hmac': default: - $hash = \hash_hmac($algorithm, $msg, $key, true); - return self::constantTimeEquals($signature, $hash); + if (!\is_string($keyMaterial)) { + throw new InvalidArgumentException('key must be a string when using hmac'); + } + $hash = \hash_hmac($algorithm, $msg, $keyMaterial, true); + return self::constantTimeEquals($hash, $signature); } } @@ -293,30 +357,16 @@ private static function verify($msg, $signature, $key, $alg) * * @param string $input JSON string * - * @return object Object representation of JSON string + * @return mixed The decoded JSON string * * @throws DomainException Provided string was invalid JSON */ - public static function jsonDecode($input) + public static function jsonDecode(string $input) { - if (\version_compare(PHP_VERSION, '5.4.0', '>=') && !(\defined('JSON_C_VERSION') && PHP_INT_SIZE > 4)) { - /** In PHP >=5.4.0, json_decode() accepts an options parameter, that allows you - * to specify that large ints (like Steam Transaction IDs) should be treated as - * strings, rather than the PHP default behaviour of converting them to floats. - */ - $obj = \json_decode($input, false, 512, JSON_BIGINT_AS_STRING); - } else { - /** Not all servers will support that, however, so for older versions we must - * manually detect large ints in the JSON string and quote them (thus converting - *them to strings) before decoding, hence the preg_replace() call. - */ - $max_int_length = \strlen((string) PHP_INT_MAX) - 1; - $json_without_bigints = \preg_replace('/:\s*(-?\d{'.$max_int_length.',})/', ': "$1"', $input); - $obj = \json_decode($json_without_bigints); - } + $obj = \json_decode($input, false, 512, JSON_BIGINT_AS_STRING); if ($errno = \json_last_error()) { - static::handleJsonError($errno); + self::handleJsonError($errno); } elseif ($obj === null && $input !== 'null') { throw new DomainException('Null result with non-null input'); } @@ -324,15 +374,15 @@ public static function jsonDecode($input) } /** - * Encode a PHP object into a JSON string. + * Encode a PHP array into a JSON string. * - * @param object|array $input A PHP object or array + * @param array $input A PHP array * - * @return string JSON representation of the PHP object or array + * @return string JSON representation of the PHP array * * @throws DomainException Provided object could not be encoded to valid JSON */ - public static function jsonEncode($input) + public static function jsonEncode(array $input): string { if (PHP_VERSION_ID >= 50400) { $json = \json_encode($input, \JSON_UNESCAPED_SLASHES); @@ -341,10 +391,13 @@ public static function jsonEncode($input) $json = \json_encode($input); } if ($errno = \json_last_error()) { - static::handleJsonError($errno); - } elseif ($json === 'null' && $input !== null) { + self::handleJsonError($errno); + } elseif ($json === 'null') { throw new DomainException('Null result with non-null input'); } + if ($json === false) { + throw new DomainException('Provided object could not be encoded to valid JSON'); + } return $json; } @@ -354,15 +407,32 @@ public static function jsonEncode($input) * @param string $input A Base64 encoded string * * @return string A decoded string + * + * @throws InvalidArgumentException invalid base64 characters + */ + public static function urlsafeB64Decode(string $input): string + { + return \base64_decode(self::convertBase64UrlToBase64($input)); + } + + /** + * Convert a string in the base64url (URL-safe Base64) encoding to standard base64. + * + * @param string $input A Base64 encoded string with URL-safe characters (-_ and no padding) + * + * @return string A Base64 encoded string with standard characters (+/) and padding (=), when + * needed. + * + * @see https://www.rfc-editor.org/rfc/rfc4648 */ - public static function urlsafeB64Decode($input) + public static function convertBase64UrlToBase64(string $input): string { $remainder = \strlen($input) % 4; if ($remainder) { $padlen = 4 - $remainder; $input .= \str_repeat('=', $padlen); } - return \base64_decode(\strtr($input, '-_', '+/')); + return \strtr($input, '-_', '+/'); } /** @@ -372,7 +442,7 @@ public static function urlsafeB64Decode($input) * * @return string The base64 encode of what you passed in */ - public static function urlsafeB64Encode($input) + public static function urlsafeB64Encode(string $input): string { return \str_replace('=', '', \strtr(\base64_encode($input), '+/', '-_')); } @@ -381,61 +451,54 @@ public static function urlsafeB64Encode($input) /** * Determine if an algorithm has been provided for each Key * - * @param Key|array $keyOrKeyArray + * @param Key|ArrayAccess|array $keyOrKeyArray * @param string|null $kid * * @throws UnexpectedValueException * - * @return array containing the keyMaterial and algorithm + * @return Key */ - private static function getKey($keyOrKeyArray, $kid = null) - { + private static function getKey( + $keyOrKeyArray, + ?string $kid + ): Key { if ($keyOrKeyArray instanceof Key) { return $keyOrKeyArray; } - if (is_array($keyOrKeyArray) || $keyOrKeyArray instanceof ArrayAccess) { - foreach ($keyOrKeyArray as $keyId => $key) { - if (!$key instanceof Key) { - throw new UnexpectedValueException( - '$keyOrKeyArray must be an instance of Firebase\JWT\Key key or an ' - . 'array of Firebase\JWT\Key keys' - ); - } - } - if (!isset($kid)) { - throw new UnexpectedValueException('"kid" empty, unable to lookup correct key'); - } - if (!isset($keyOrKeyArray[$kid])) { - throw new UnexpectedValueException('"kid" invalid, unable to lookup correct key'); - } + if (empty($kid) && $kid !== '0') { + throw new UnexpectedValueException('"kid" empty, unable to lookup correct key'); + } + if ($keyOrKeyArray instanceof CachedKeySet) { + // Skip "isset" check, as this will automatically refresh if not set return $keyOrKeyArray[$kid]; } - throw new UnexpectedValueException( - '$keyOrKeyArray must be an instance of Firebase\JWT\Key key or an ' - . 'array of Firebase\JWT\Key keys' - ); + if (!isset($keyOrKeyArray[$kid])) { + throw new UnexpectedValueException('"kid" invalid, unable to lookup correct key'); + } + + return $keyOrKeyArray[$kid]; } /** - * @param string $left - * @param string $right + * @param string $left The string of known length to compare against + * @param string $right The user-supplied string * @return bool */ - public static function constantTimeEquals($left, $right) + public static function constantTimeEquals(string $left, string $right): bool { if (\function_exists('hash_equals')) { return \hash_equals($left, $right); } - $len = \min(static::safeStrlen($left), static::safeStrlen($right)); + $len = \min(self::safeStrlen($left), self::safeStrlen($right)); $status = 0; for ($i = 0; $i < $len; $i++) { $status |= (\ord($left[$i]) ^ \ord($right[$i])); } - $status |= (static::safeStrlen($left) ^ static::safeStrlen($right)); + $status |= (self::safeStrlen($left) ^ self::safeStrlen($right)); return ($status === 0); } @@ -445,17 +508,19 @@ public static function constantTimeEquals($left, $right) * * @param int $errno An error number from json_last_error() * + * @throws DomainException + * * @return void */ - private static function handleJsonError($errno) + private static function handleJsonError(int $errno): void { - $messages = array( + $messages = [ JSON_ERROR_DEPTH => 'Maximum stack depth exceeded', JSON_ERROR_STATE_MISMATCH => 'Invalid or malformed JSON', JSON_ERROR_CTRL_CHAR => 'Unexpected control character found', JSON_ERROR_SYNTAX => 'Syntax error, malformed JSON', JSON_ERROR_UTF8 => 'Malformed UTF-8 characters' //PHP >= 5.3.3 - ); + ]; throw new DomainException( isset($messages[$errno]) ? $messages[$errno] @@ -470,7 +535,7 @@ private static function handleJsonError($errno) * * @return int */ - private static function safeStrlen($str) + private static function safeStrlen(string $str): int { if (\function_exists('mb_strlen')) { return \mb_strlen($str, '8bit'); @@ -484,10 +549,11 @@ private static function safeStrlen($str) * @param string $sig The ECDSA signature to convert * @return string The encoded DER object */ - private static function signatureToDER($sig) + private static function signatureToDER(string $sig): string { // Separate the signature into r-value and s-value - list($r, $s) = \str_split($sig, (int) (\strlen($sig) / 2)); + $length = max(1, (int) (\strlen($sig) / 2)); + list($r, $s) = \str_split($sig, $length); // Trim leading zeros $r = \ltrim($r, "\x00"); @@ -503,9 +569,9 @@ private static function signatureToDER($sig) } return self::encodeDER( - self::$asn1Sequence, - self::encodeDER(self::$asn1Integer, $r) . - self::encodeDER(self::$asn1Integer, $s) + self::ASN1_SEQUENCE, + self::encodeDER(self::ASN1_INTEGER, $r) . + self::encodeDER(self::ASN1_INTEGER, $s) ); } @@ -514,12 +580,13 @@ private static function signatureToDER($sig) * * @param int $type DER tag * @param string $value the value to encode + * * @return string the encoded object */ - private static function encodeDER($type, $value) + private static function encodeDER(int $type, string $value): string { $tag_header = 0; - if ($type === self::$asn1Sequence) { + if ($type === self::ASN1_SEQUENCE) { $tag_header |= 0x20; } @@ -537,9 +604,10 @@ private static function encodeDER($type, $value) * * @param string $der binary signature in DER format * @param int $keySize the number of bits in the key + * * @return string the signature */ - private static function signatureFromDER($der, $keySize) + private static function signatureFromDER(string $der, int $keySize): string { // OpenSSL returns the ECDSA signatures as a binary ASN.1 DER SEQUENCE list($offset, $_) = self::readDER($der); @@ -564,9 +632,10 @@ private static function signatureFromDER($der, $keySize) * @param string $der the binary data in DER format * @param int $offset the offset of the data stream containing the object * to decode - * @return array [$offset, $data] the new offset and the decoded object + * + * @return array{int, string|null} the new offset and the decoded object */ - private static function readDER($der, $offset = 0) + private static function readDER(string $der, int $offset = 0): array { $pos = $offset; $size = \strlen($der); @@ -584,7 +653,7 @@ private static function readDER($der, $offset = 0) } // Value - if ($type == self::$asn1BitString) { + if ($type === self::ASN1_BIT_STRING) { $pos++; // Skip the first contents octet (padding indicator) $data = \substr($der, $pos, $len - 1); $pos += $len - 1; @@ -595,6 +664,6 @@ private static function readDER($der, $offset = 0) $data = null; } - return array($pos, $data); + return [$pos, $data]; } } diff --git a/htdocs/class/libraries/vendor/firebase/php-jwt/src/Key.php b/htdocs/class/libraries/vendor/firebase/php-jwt/src/Key.php index f1ede6f27..00cf7f2ed 100644 --- a/htdocs/class/libraries/vendor/firebase/php-jwt/src/Key.php +++ b/htdocs/class/libraries/vendor/firebase/php-jwt/src/Key.php @@ -4,37 +4,42 @@ use InvalidArgumentException; use OpenSSLAsymmetricKey; +use OpenSSLCertificate; +use TypeError; class Key { - /** @var string $algorithm */ - private $algorithm; - - /** @var string|resource|OpenSSLAsymmetricKey $keyMaterial */ + /** @var string|resource|OpenSSLAsymmetricKey|OpenSSLCertificate */ private $keyMaterial; + /** @var string */ + private $algorithm; /** - * @param string|resource|OpenSSLAsymmetricKey $keyMaterial + * @param string|resource|OpenSSLAsymmetricKey|OpenSSLCertificate $keyMaterial * @param string $algorithm */ - public function __construct($keyMaterial, $algorithm) - { + public function __construct( + $keyMaterial, + string $algorithm + ) { if ( - !is_string($keyMaterial) - && !is_resource($keyMaterial) + !\is_string($keyMaterial) && !$keyMaterial instanceof OpenSSLAsymmetricKey + && !$keyMaterial instanceof OpenSSLCertificate + && !\is_resource($keyMaterial) ) { - throw new InvalidArgumentException('Type error: $keyMaterial must be a string, resource, or OpenSSLAsymmetricKey'); + throw new TypeError('Key material must be a string, resource, or OpenSSLAsymmetricKey'); } if (empty($keyMaterial)) { - throw new InvalidArgumentException('Type error: $keyMaterial must not be empty'); + throw new InvalidArgumentException('Key material must not be empty'); } - if (!is_string($algorithm)|| empty($keyMaterial)) { - throw new InvalidArgumentException('Type error: $algorithm must be a string'); + if (empty($algorithm)) { + throw new InvalidArgumentException('Algorithm must not be empty'); } + // TODO: Remove in PHP 8.0 in favor of class constructor property promotion $this->keyMaterial = $keyMaterial; $this->algorithm = $algorithm; } @@ -44,13 +49,13 @@ public function __construct($keyMaterial, $algorithm) * * @return string */ - public function getAlgorithm() + public function getAlgorithm(): string { return $this->algorithm; } /** - * @return string|resource|OpenSSLAsymmetricKey + * @return string|resource|OpenSSLAsymmetricKey|OpenSSLCertificate */ public function getKeyMaterial() {