diff --git a/common/composer.json b/common/composer.json old mode 100644 new mode 100755 index 5e2f2348..fd0d0edd --- a/common/composer.json +++ b/common/composer.json @@ -1,8 +1,9 @@ { "require": { - "gregwar/image": "^2.1", + "gregwar/image": "^2.1", "tencentcloud/ocr": "^3.0", - "wechatpay/wechatpay-guzzle-middleware": "^0.2.2", - "mikehaertl/php-pdftk": "^0.11.0" + "wechatpay/wechatpay-guzzle-middleware": "^0.2.2", + "mikehaertl/php-pdftk": "^0.11.0", + "lcobucci/jwt": "^3.4" } } diff --git a/common/composer.lock b/common/composer.lock old mode 100644 new mode 100755 index 50480203..0b5c109b --- a/common/composer.lock +++ b/common/composer.lock @@ -4,12 +4,17 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "9f27737ffbf35aa1f124c7f62201bb1c", + "content-hash": "9372f5e234fb33f7279f5b6fe524b15d", "packages": [ { "name": "gregwar/cache", "version": "v1.0.13", "target-dir": "Gregwar/Cache", + "source": { + "type": "git", + "url": "https://github.com/Gregwar/Cache.git", + "reference": "184cc341c25298ff7d584f86b55b6ca26626da4f" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/Gregwar/Cache/zipball/184cc341c25298ff7d584f86b55b6ca26626da4f", @@ -48,6 +53,11 @@ "name": "gregwar/image", "version": "v2.1.0", "target-dir": "Gregwar/Image", + "source": { + "type": "git", + "url": "https://github.com/Gregwar/Image.git", + "reference": "1cf64c34cbb22933b36727c16b15ed4d925b6fc6" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/Gregwar/Image/zipball/1cf64c34cbb22933b36727c16b15ed4d925b6fc6", @@ -93,19 +103,24 @@ }, { "name": "guzzlehttp/guzzle", - "version": "6.5.5", + "version": "6.5.8", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "a52f0440530b54fa079ce76e8c5d196a42cad981" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", - "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/a52f0440530b54fa079ce76e8c5d196a42cad981", + "reference": "a52f0440530b54fa079ce76e8c5d196a42cad981", "shasum": "" }, "require": { "ext-json": "*", "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.6.1", + "guzzlehttp/psr7": "^1.9", "php": ">=5.5", - "symfony/polyfill-intl-idn": "^1.17.0" + "symfony/polyfill-intl-idn": "^1.17" }, "require-dev": { "ext-curl": "*", @@ -122,22 +137,52 @@ } }, "autoload": { - "psr-4": { - "GuzzleHttp\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" } ], "description": "Guzzle is a PHP HTTP client library", @@ -151,15 +196,20 @@ "rest", "web service" ], - "time": "2020-06-16T21:01:06+00:00" + "time": "2022-06-20T22:16:07+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.4.1", + "version": "1.5.2", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "b94b2807d85443f9719887892882d0329d1e2598" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/8e7d04f1f6450fef59366c399cfad4b9383aa30d", - "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d", + "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", + "reference": "b94b2807d85443f9719887892882d0329d1e2598", "shasum": "" }, "require": { @@ -171,41 +221,61 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.4-dev" + "dev-master": "1.5-dev" } }, "autoload": { - "psr-4": { - "GuzzleHttp\\Promise\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" } ], "description": "Guzzle promises library", "keywords": [ "promise" ], - "time": "2021-03-07T09:25:29+00:00" + "time": "2022-08-28T14:55:35+00:00" }, { "name": "guzzlehttp/psr7", - "version": "1.8.2", + "version": "1.9.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/dc960a912984efb74d0a90222870c72c87f10c91", - "reference": "dc960a912984efb74d0a90222870c72c87f10c91", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", + "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", "shasum": "" }, "require": { @@ -226,29 +296,50 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.7-dev" + "dev-master": "1.9-dev" } }, "autoload": { - "psr-4": { - "GuzzleHttp\\Psr7\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, { "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", "homepage": "https://github.com/Tobion" } ], @@ -263,14 +354,82 @@ "uri", "url" ], - "time": "2021-04-26T09:17:50+00:00" + "time": "2022-06-20T21:43:03+00:00" + }, + { + "name": "lcobucci/jwt", + "version": "3.4.6", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "3ef8657a78278dfeae7707d51747251db4176240" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/3ef8657a78278dfeae7707d51747251db4176240", + "reference": "3ef8657a78278dfeae7707d51747251db4176240", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "ext-openssl": "*", + "php": "^5.6 || ^7.0" + }, + "require-dev": { + "mikey179/vfsstream": "~1.5", + "phpmd/phpmd": "~2.2", + "phpunit/php-invoker": "~1.1", + "phpunit/phpunit": "^5.7 || ^7.3", + "squizlabs/php_codesniffer": "~2.3" + }, + "suggest": { + "lcobucci/clock": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + }, + "autoload": { + "files": [ + "compat/class-aliases.php", + "compat/json-exception-polyfill.php", + "compat/lcobucci-clock-polyfill.php" + ], + "psr-4": { + "Lcobucci\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Luís Otávio Cobucci Oblonczyk", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "keywords": [ + "JWS", + "jwt" + ], + "time": "2021-09-28T19:18:28+00:00" }, { "name": "mikehaertl/php-pdftk", "version": "0.11.0", + "source": { + "type": "git", + "url": "https://github.com/mikehaertl/php-pdftk.git", + "reference": "61ba14c08491c1bb7d479c87087f236389b4babf" + }, "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/mikehaertl/php-pdftk/0.11.0/mikehaertl-php-pdftk-0.11.0.zip", + "url": "https://api.github.com/repos/mikehaertl/php-pdftk/zipball/61ba14c08491c1bb7d479c87087f236389b4babf", "reference": "61ba14c08491c1bb7d479c87087f236389b4babf", "shasum": "" }, @@ -288,6 +447,7 @@ "mikehaertl\\pdftk\\": "src/" } }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -307,9 +467,14 @@ { "name": "mikehaertl/php-shellcommand", "version": "1.6.4", + "source": { + "type": "git", + "url": "https://github.com/mikehaertl/php-shellcommand.git", + "reference": "3488d7803df1e8f1a343d3d0ca452d527ad8d5e5" + }, "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/mikehaertl/php-shellcommand/1.6.4/mikehaertl-php-shellcommand-1.6.4.zip", + "url": "https://api.github.com/repos/mikehaertl/php-shellcommand/zipball/3488d7803df1e8f1a343d3d0ca452d527ad8d5e5", "reference": "3488d7803df1e8f1a343d3d0ca452d527ad8d5e5", "shasum": "" }, @@ -325,6 +490,7 @@ "mikehaertl\\shellcommand\\": "src/" } }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -343,9 +509,14 @@ { "name": "mikehaertl/php-tmpfile", "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/mikehaertl/php-tmpfile.git", + "reference": "70a5b70b17bc0d9666388e6a551ecc93d0b40a10" + }, "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/mikehaertl/php-tmpfile/1.2.1/mikehaertl-php-tmpfile-1.2.1.zip", + "url": "https://api.github.com/repos/mikehaertl/php-tmpfile/zipball/70a5b70b17bc0d9666388e6a551ecc93d0b40a10", "reference": "70a5b70b17bc0d9666388e6a551ecc93d0b40a10", "shasum": "" }, @@ -359,6 +530,7 @@ "mikehaertl\\tmp\\": "src/" } }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -376,18 +548,23 @@ }, { "name": "paragonie/random_compat", - "version": "v2.0.20", + "version": "v2.0.21", + "source": { + "type": "git", + "url": "https://github.com/paragonie/random_compat.git", + "reference": "96c132c7f2f7bc3230723b66e89f8f150b29d5ae" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/0f1f60250fccffeaf5dda91eea1c018aed1adc2a", - "reference": "0f1f60250fccffeaf5dda91eea1c018aed1adc2a", + "url": "https://api.github.com/repos/paragonie/random_compat/zipball/96c132c7f2f7bc3230723b66e89f8f150b29d5ae", + "reference": "96c132c7f2f7bc3230723b66e89f8f150b29d5ae", "shasum": "" }, "require": { "php": ">=5.2.0" }, "require-dev": { - "phpunit/phpunit": "4.*|5.*" + "phpunit/phpunit": "*" }, "suggest": { "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." @@ -416,11 +593,16 @@ "pseudorandom", "random" ], - "time": "2021-04-17T09:33:01+00:00" + "time": "2022-02-16T17:07:03+00:00" }, { "name": "psr/http-message", "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", @@ -466,6 +648,11 @@ { "name": "ralouphie/getallheaders", "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", @@ -501,6 +688,11 @@ { "name": "symfony/polyfill-intl-idn", "version": "v1.19.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-idn.git", + "reference": "4ad5115c0f5d5172a9fe8147675ec6de266d8826" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/4ad5115c0f5d5172a9fe8147675ec6de266d8826", @@ -567,6 +759,11 @@ { "name": "symfony/polyfill-intl-normalizer", "version": "v1.19.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "8db0ae7936b42feb370840cf24de1a144fb0ef27" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8db0ae7936b42feb370840cf24de1a144fb0ef27", @@ -629,6 +826,11 @@ { "name": "symfony/polyfill-php70", "version": "v1.19.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php70.git", + "reference": "3fe414077251a81a1b15b1c709faf5c2fbae3d4e" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/3fe414077251a81a1b15b1c709faf5c2fbae3d4e", @@ -687,6 +889,11 @@ { "name": "symfony/polyfill-php72", "version": "v1.19.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php72.git", + "reference": "beecef6b463b06954638f02378f52496cb84bacc" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/beecef6b463b06954638f02378f52496cb84bacc", @@ -740,16 +947,20 @@ }, { "name": "tencentcloud/common", - "version": "3.0.436", + "version": "3.0.712", + "source": { + "type": "git", + "url": "https://github.com/tencentcloud-sdk-php/common.git", + "reference": "5d49bdbc237148c2082858ade73610d9e9d61cbc" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tencentcloud-sdk-php/common/zipball/8e1742f06287accfd173141a919d3460d097ac03", - "reference": "8e1742f06287accfd173141a919d3460d097ac03", + "url": "https://api.github.com/repos/tencentcloud-sdk-php/common/zipball/5d49bdbc237148c2082858ade73610d9e9d61cbc", + "reference": "5d49bdbc237148c2082858ade73610d9e9d61cbc", "shasum": "" }, "require": { "guzzlehttp/guzzle": "^6.3||^7.0", - "guzzlehttp/psr7": "^1.4", "php": ">=5.6.0" }, "type": "library", @@ -772,19 +983,24 @@ ], "description": "TencentCloudApi php sdk", "homepage": "https://github.com/tencentcloud-sdk-php/common", - "time": "2021-07-16T01:04:49+00:00" + "time": "2022-08-29T03:14:37+00:00" }, { "name": "tencentcloud/ocr", - "version": "3.0.436", + "version": "3.0.712", + "source": { + "type": "git", + "url": "https://github.com/tencentcloud-sdk-php/ocr.git", + "reference": "c0d21b263eccfe067731aad39232f537100d43b3" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tencentcloud-sdk-php/ocr/zipball/3158bf1b0d4c89ca0623d0c4eda76a4a8eba656b", - "reference": "3158bf1b0d4c89ca0623d0c4eda76a4a8eba656b", + "url": "https://api.github.com/repos/tencentcloud-sdk-php/ocr/zipball/c0d21b263eccfe067731aad39232f537100d43b3", + "reference": "c0d21b263eccfe067731aad39232f537100d43b3", "shasum": "" }, "require": { - "tencentcloud/common": "3.0.436" + "tencentcloud/common": "3.0.712" }, "type": "library", "autoload": { @@ -806,11 +1022,16 @@ ], "description": "TencentCloudApi php sdk ocr", "homepage": "https://github.com/tencentcloud-sdk-php/ocr", - "time": "2021-07-16T01:13:52+00:00" + "time": "2022-08-29T03:29:43+00:00" }, { "name": "wechatpay/wechatpay-guzzle-middleware", "version": "0.2.2", + "source": { + "type": "git", + "url": "https://github.com/wechatpay-apiv3/wechatpay-guzzle-middleware.git", + "reference": "6782ac33ed8cf97628609a71cdc5e84a6a40677a" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/wechatpay-apiv3/wechatpay-guzzle-middleware/zipball/6782ac33ed8cf97628609a71cdc5e84a6a40677a", diff --git a/common/vendor/autoload.php b/common/vendor/autoload.php old mode 100644 new mode 100755 index 2eb194ba..1705251e --- a/common/vendor/autoload.php +++ b/common/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInitd0872984a1db7aa104ae1184a3170d3e::getLoader(); +return ComposerAutoloaderInit100dfac5df6b34365a27ff7ef036db8c::getLoader(); diff --git a/common/vendor/bin/CertificateDownloader.php b/common/vendor/bin/CertificateDownloader.php deleted file mode 120000 index 8a1312ec..00000000 --- a/common/vendor/bin/CertificateDownloader.php +++ /dev/null @@ -1 +0,0 @@ -../wechatpay/wechatpay-guzzle-middleware/tool/CertificateDownloader.php \ No newline at end of file diff --git a/common/vendor/bin/CertificateDownloader.php b/common/vendor/bin/CertificateDownloader.php new file mode 100755 index 00000000..5518db09 --- /dev/null +++ b/common/vendor/bin/CertificateDownloader.php @@ -0,0 +1,14 @@ +#!/usr/bin/env sh + +dir=$(cd "${0%[/\\]*}" > /dev/null; cd '../wechatpay/wechatpay-guzzle-middleware/tool' && pwd) + +if [ -d /proc/cygdrive ]; then + case $(which php) in + $(readlink -n /proc/cygdrive)/*) + # We are in Cygwin using Windows php, so the path must be translated + dir=$(cygpath -m "$dir"); + ;; + esac +fi + +"${dir}/CertificateDownloader.php" "$@" diff --git a/common/vendor/composer/ClassLoader.php b/common/vendor/composer/ClassLoader.php old mode 100644 new mode 100755 diff --git a/common/vendor/composer/LICENSE b/common/vendor/composer/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/composer/autoload_classmap.php b/common/vendor/composer/autoload_classmap.php old mode 100644 new mode 100755 diff --git a/common/vendor/composer/autoload_files.php b/common/vendor/composer/autoload_files.php old mode 100644 new mode 100755 index 3a7d47b5..e0c8528f --- a/common/vendor/composer/autoload_files.php +++ b/common/vendor/composer/autoload_files.php @@ -6,13 +6,16 @@ $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( - '7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php', - 'a0edc8309cc5e1d60e3047b5df6b7052' => $vendorDir . '/guzzlehttp/psr7/src/functions_include.php', '5255c38a0faeba867671b61dfda6d864' => $vendorDir . '/paragonie/random_compat/lib/random.php', + '7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php', 'e69f7f6ee287b969198c3c9d6777bd38' => $vendorDir . '/symfony/polyfill-intl-normalizer/bootstrap.php', '023d27dca8066ef29e6739335ea73bad' => $vendorDir . '/symfony/polyfill-php70/bootstrap.php', '25072dd6e2470089de65ae7bf11d3109' => $vendorDir . '/symfony/polyfill-php72/bootstrap.php', 'c964ee0ededf28c96ebd9db5099ef910' => $vendorDir . '/guzzlehttp/promises/src/functions_include.php', + 'a0edc8309cc5e1d60e3047b5df6b7052' => $vendorDir . '/guzzlehttp/psr7/src/functions_include.php', 'f598d06aa772fa33d905e87be6398fb1' => $vendorDir . '/symfony/polyfill-intl-idn/bootstrap.php', '37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php', + '256c1545158fc915c75e51a931bdba60' => $vendorDir . '/lcobucci/jwt/compat/class-aliases.php', + '0d273777b2b0d96e49fb3d800c6b0e81' => $vendorDir . '/lcobucci/jwt/compat/json-exception-polyfill.php', + 'd6b246ac924292702635bb2349f4a64b' => $vendorDir . '/lcobucci/jwt/compat/lcobucci-clock-polyfill.php', ); diff --git a/common/vendor/composer/autoload_namespaces.php b/common/vendor/composer/autoload_namespaces.php old mode 100644 new mode 100755 diff --git a/common/vendor/composer/autoload_psr4.php b/common/vendor/composer/autoload_psr4.php old mode 100644 new mode 100755 index c945418e..a7186a05 --- a/common/vendor/composer/autoload_psr4.php +++ b/common/vendor/composer/autoload_psr4.php @@ -16,6 +16,7 @@ return array( 'Symfony\\Polyfill\\Intl\\Normalizer\\' => array($vendorDir . '/symfony/polyfill-intl-normalizer'), 'Symfony\\Polyfill\\Intl\\Idn\\' => array($vendorDir . '/symfony/polyfill-intl-idn'), 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src'), + 'Lcobucci\\JWT\\' => array($vendorDir . '/lcobucci/jwt/src'), 'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'), 'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'), 'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'), diff --git a/common/vendor/composer/autoload_real.php b/common/vendor/composer/autoload_real.php old mode 100644 new mode 100755 index 72880593..c49a21d5 --- a/common/vendor/composer/autoload_real.php +++ b/common/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInitd0872984a1db7aa104ae1184a3170d3e +class ComposerAutoloaderInit100dfac5df6b34365a27ff7ef036db8c { private static $loader; @@ -19,15 +19,15 @@ class ComposerAutoloaderInitd0872984a1db7aa104ae1184a3170d3e return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInitd0872984a1db7aa104ae1184a3170d3e', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit100dfac5df6b34365a27ff7ef036db8c', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInitd0872984a1db7aa104ae1184a3170d3e', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit100dfac5df6b34365a27ff7ef036db8c', 'loadClassLoader')); $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); if ($useStaticLoader) { require_once __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit100dfac5df6b34365a27ff7ef036db8c::getInitializer($loader)); } else { $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { @@ -48,19 +48,19 @@ class ComposerAutoloaderInitd0872984a1db7aa104ae1184a3170d3e $loader->register(true); if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e::$files; + $includeFiles = Composer\Autoload\ComposerStaticInit100dfac5df6b34365a27ff7ef036db8c::$files; } else { $includeFiles = require __DIR__ . '/autoload_files.php'; } foreach ($includeFiles as $fileIdentifier => $file) { - composerRequired0872984a1db7aa104ae1184a3170d3e($fileIdentifier, $file); + composerRequire100dfac5df6b34365a27ff7ef036db8c($fileIdentifier, $file); } return $loader; } } -function composerRequired0872984a1db7aa104ae1184a3170d3e($fileIdentifier, $file) +function composerRequire100dfac5df6b34365a27ff7ef036db8c($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { require $file; diff --git a/common/vendor/composer/autoload_static.php b/common/vendor/composer/autoload_static.php old mode 100644 new mode 100755 index e5a88f61..2c70fd3a --- a/common/vendor/composer/autoload_static.php +++ b/common/vendor/composer/autoload_static.php @@ -4,18 +4,21 @@ namespace Composer\Autoload; -class ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e +class ComposerStaticInit100dfac5df6b34365a27ff7ef036db8c { public static $files = array ( - '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php', - 'a0edc8309cc5e1d60e3047b5df6b7052' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/functions_include.php', '5255c38a0faeba867671b61dfda6d864' => __DIR__ . '/..' . '/paragonie/random_compat/lib/random.php', + '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php', 'e69f7f6ee287b969198c3c9d6777bd38' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/bootstrap.php', '023d27dca8066ef29e6739335ea73bad' => __DIR__ . '/..' . '/symfony/polyfill-php70/bootstrap.php', '25072dd6e2470089de65ae7bf11d3109' => __DIR__ . '/..' . '/symfony/polyfill-php72/bootstrap.php', 'c964ee0ededf28c96ebd9db5099ef910' => __DIR__ . '/..' . '/guzzlehttp/promises/src/functions_include.php', + 'a0edc8309cc5e1d60e3047b5df6b7052' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/functions_include.php', 'f598d06aa772fa33d905e87be6398fb1' => __DIR__ . '/..' . '/symfony/polyfill-intl-idn/bootstrap.php', '37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php', + '256c1545158fc915c75e51a931bdba60' => __DIR__ . '/..' . '/lcobucci/jwt/compat/class-aliases.php', + '0d273777b2b0d96e49fb3d800c6b0e81' => __DIR__ . '/..' . '/lcobucci/jwt/compat/json-exception-polyfill.php', + 'd6b246ac924292702635bb2349f4a64b' => __DIR__ . '/..' . '/lcobucci/jwt/compat/lcobucci-clock-polyfill.php', ); public static $prefixLengthsPsr4 = array ( @@ -44,6 +47,10 @@ class ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e array ( 'Psr\\Http\\Message\\' => 17, ), + 'L' => + array ( + 'Lcobucci\\JWT\\' => 13, + ), 'G' => array ( 'GuzzleHttp\\Psr7\\' => 16, @@ -94,6 +101,10 @@ class ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e array ( 0 => __DIR__ . '/..' . '/psr/http-message/src', ), + 'Lcobucci\\JWT\\' => + array ( + 0 => __DIR__ . '/..' . '/lcobucci/jwt/src', + ), 'GuzzleHttp\\Psr7\\' => array ( 0 => __DIR__ . '/..' . '/guzzlehttp/psr7/src', @@ -136,10 +147,10 @@ class ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e::$prefixDirsPsr4; - $loader->prefixesPsr0 = ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e::$prefixesPsr0; - $loader->classMap = ComposerStaticInitd0872984a1db7aa104ae1184a3170d3e::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit100dfac5df6b34365a27ff7ef036db8c::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit100dfac5df6b34365a27ff7ef036db8c::$prefixDirsPsr4; + $loader->prefixesPsr0 = ComposerStaticInit100dfac5df6b34365a27ff7ef036db8c::$prefixesPsr0; + $loader->classMap = ComposerStaticInit100dfac5df6b34365a27ff7ef036db8c::$classMap; }, null, ClassLoader::class); } diff --git a/common/vendor/composer/installed.json b/common/vendor/composer/installed.json old mode 100644 new mode 100755 index 982dc8d8..7dc65590 --- a/common/vendor/composer/installed.json +++ b/common/vendor/composer/installed.json @@ -4,6 +4,11 @@ "version": "v1.0.13", "version_normalized": "1.0.13.0", "target-dir": "Gregwar/Cache", + "source": { + "type": "git", + "url": "https://github.com/Gregwar/Cache.git", + "reference": "184cc341c25298ff7d584f86b55b6ca26626da4f" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/Gregwar/Cache/zipball/184cc341c25298ff7d584f86b55b6ca26626da4f", @@ -44,6 +49,11 @@ "version": "v2.1.0", "version_normalized": "2.1.0.0", "target-dir": "Gregwar/Image", + "source": { + "type": "git", + "url": "https://github.com/Gregwar/Image.git", + "reference": "1cf64c34cbb22933b36727c16b15ed4d925b6fc6" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/Gregwar/Image/zipball/1cf64c34cbb22933b36727c16b15ed4d925b6fc6", @@ -90,20 +100,25 @@ }, { "name": "guzzlehttp/guzzle", - "version": "6.5.5", - "version_normalized": "6.5.5.0", + "version": "6.5.8", + "version_normalized": "6.5.8.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "a52f0440530b54fa079ce76e8c5d196a42cad981" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", - "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/a52f0440530b54fa079ce76e8c5d196a42cad981", + "reference": "a52f0440530b54fa079ce76e8c5d196a42cad981", "shasum": "" }, "require": { "ext-json": "*", "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.6.1", + "guzzlehttp/psr7": "^1.9", "php": ">=5.5", - "symfony/polyfill-intl-idn": "^1.17.0" + "symfony/polyfill-intl-idn": "^1.17" }, "require-dev": { "ext-curl": "*", @@ -113,7 +128,7 @@ "suggest": { "psr/log": "Required for using the Log middleware" }, - "time": "2020-06-16T21:01:06+00:00", + "time": "2022-06-20T22:16:07+00:00", "type": "library", "extra": { "branch-alias": { @@ -122,22 +137,52 @@ }, "installation-source": "dist", "autoload": { - "psr-4": { - "GuzzleHttp\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" } ], "description": "Guzzle is a PHP HTTP client library", @@ -154,12 +199,17 @@ }, { "name": "guzzlehttp/promises", - "version": "1.4.1", - "version_normalized": "1.4.1.0", + "version": "1.5.2", + "version_normalized": "1.5.2.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "b94b2807d85443f9719887892882d0329d1e2598" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/8e7d04f1f6450fef59366c399cfad4b9383aa30d", - "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d", + "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", + "reference": "b94b2807d85443f9719887892882d0329d1e2598", "shasum": "" }, "require": { @@ -168,31 +218,46 @@ "require-dev": { "symfony/phpunit-bridge": "^4.4 || ^5.1" }, - "time": "2021-03-07T09:25:29+00:00", + "time": "2022-08-28T14:55:35+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.4-dev" + "dev-master": "1.5-dev" } }, "installation-source": "dist", "autoload": { - "psr-4": { - "GuzzleHttp\\Promise\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" } ], "description": "Guzzle promises library", @@ -202,12 +267,17 @@ }, { "name": "guzzlehttp/psr7", - "version": "1.8.2", - "version_normalized": "1.8.2.0", + "version": "1.9.0", + "version_normalized": "1.9.0.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/dc960a912984efb74d0a90222870c72c87f10c91", - "reference": "dc960a912984efb74d0a90222870c72c87f10c91", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", + "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", "shasum": "" }, "require": { @@ -225,34 +295,55 @@ "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" }, - "time": "2021-04-26T09:17:50+00:00", + "time": "2022-06-20T21:43:03+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.7-dev" + "dev-master": "1.9-dev" } }, "installation-source": "dist", "autoload": { - "psr-4": { - "GuzzleHttp\\Psr7\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, { "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", "homepage": "https://github.com/Tobion" } ], @@ -268,13 +359,83 @@ "url" ] }, + { + "name": "lcobucci/jwt", + "version": "3.4.6", + "version_normalized": "3.4.6.0", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "3ef8657a78278dfeae7707d51747251db4176240" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/3ef8657a78278dfeae7707d51747251db4176240", + "reference": "3ef8657a78278dfeae7707d51747251db4176240", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "ext-openssl": "*", + "php": "^5.6 || ^7.0" + }, + "require-dev": { + "mikey179/vfsstream": "~1.5", + "phpmd/phpmd": "~2.2", + "phpunit/php-invoker": "~1.1", + "phpunit/phpunit": "^5.7 || ^7.3", + "squizlabs/php_codesniffer": "~2.3" + }, + "suggest": { + "lcobucci/clock": "*" + }, + "time": "2021-09-28T19:18:28+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "compat/class-aliases.php", + "compat/json-exception-polyfill.php", + "compat/lcobucci-clock-polyfill.php" + ], + "psr-4": { + "Lcobucci\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Luís Otávio Cobucci Oblonczyk", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "keywords": [ + "JWS", + "jwt" + ] + }, { "name": "mikehaertl/php-pdftk", "version": "0.11.0", "version_normalized": "0.11.0.0", + "source": { + "type": "git", + "url": "https://github.com/mikehaertl/php-pdftk.git", + "reference": "61ba14c08491c1bb7d479c87087f236389b4babf" + }, "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/mikehaertl/php-pdftk/0.11.0/mikehaertl-php-pdftk-0.11.0.zip", + "url": "https://api.github.com/repos/mikehaertl/php-pdftk/zipball/61ba14c08491c1bb7d479c87087f236389b4babf", "reference": "61ba14c08491c1bb7d479c87087f236389b4babf", "shasum": "" }, @@ -294,6 +455,7 @@ "mikehaertl\\pdftk\\": "src/" } }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -313,9 +475,14 @@ "name": "mikehaertl/php-shellcommand", "version": "1.6.4", "version_normalized": "1.6.4.0", + "source": { + "type": "git", + "url": "https://github.com/mikehaertl/php-shellcommand.git", + "reference": "3488d7803df1e8f1a343d3d0ca452d527ad8d5e5" + }, "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/mikehaertl/php-shellcommand/1.6.4/mikehaertl-php-shellcommand-1.6.4.zip", + "url": "https://api.github.com/repos/mikehaertl/php-shellcommand/zipball/3488d7803df1e8f1a343d3d0ca452d527ad8d5e5", "reference": "3488d7803df1e8f1a343d3d0ca452d527ad8d5e5", "shasum": "" }, @@ -333,6 +500,7 @@ "mikehaertl\\shellcommand\\": "src/" } }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -351,9 +519,14 @@ "name": "mikehaertl/php-tmpfile", "version": "1.2.1", "version_normalized": "1.2.1.0", + "source": { + "type": "git", + "url": "https://github.com/mikehaertl/php-tmpfile.git", + "reference": "70a5b70b17bc0d9666388e6a551ecc93d0b40a10" + }, "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/mikehaertl/php-tmpfile/1.2.1/mikehaertl-php-tmpfile-1.2.1.zip", + "url": "https://api.github.com/repos/mikehaertl/php-tmpfile/zipball/70a5b70b17bc0d9666388e6a551ecc93d0b40a10", "reference": "70a5b70b17bc0d9666388e6a551ecc93d0b40a10", "shasum": "" }, @@ -369,6 +542,7 @@ "mikehaertl\\tmp\\": "src/" } }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -385,24 +559,29 @@ }, { "name": "paragonie/random_compat", - "version": "v2.0.20", - "version_normalized": "2.0.20.0", + "version": "v2.0.21", + "version_normalized": "2.0.21.0", + "source": { + "type": "git", + "url": "https://github.com/paragonie/random_compat.git", + "reference": "96c132c7f2f7bc3230723b66e89f8f150b29d5ae" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/0f1f60250fccffeaf5dda91eea1c018aed1adc2a", - "reference": "0f1f60250fccffeaf5dda91eea1c018aed1adc2a", + "url": "https://api.github.com/repos/paragonie/random_compat/zipball/96c132c7f2f7bc3230723b66e89f8f150b29d5ae", + "reference": "96c132c7f2f7bc3230723b66e89f8f150b29d5ae", "shasum": "" }, "require": { "php": ">=5.2.0" }, "require-dev": { - "phpunit/phpunit": "4.*|5.*" + "phpunit/phpunit": "*" }, "suggest": { "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." }, - "time": "2021-04-17T09:33:01+00:00", + "time": "2022-02-16T17:07:03+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -433,6 +612,11 @@ "name": "psr/http-message", "version": "1.0.1", "version_normalized": "1.0.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", @@ -480,6 +664,11 @@ "name": "ralouphie/getallheaders", "version": "3.0.3", "version_normalized": "3.0.3.0", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", @@ -517,6 +706,11 @@ "name": "symfony/polyfill-intl-idn", "version": "v1.19.0", "version_normalized": "1.19.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-idn.git", + "reference": "4ad5115c0f5d5172a9fe8147675ec6de266d8826" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/4ad5115c0f5d5172a9fe8147675ec6de266d8826", @@ -585,6 +779,11 @@ "name": "symfony/polyfill-intl-normalizer", "version": "v1.19.0", "version_normalized": "1.19.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "8db0ae7936b42feb370840cf24de1a144fb0ef27" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8db0ae7936b42feb370840cf24de1a144fb0ef27", @@ -649,6 +848,11 @@ "name": "symfony/polyfill-php70", "version": "v1.19.0", "version_normalized": "1.19.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php70.git", + "reference": "3fe414077251a81a1b15b1c709faf5c2fbae3d4e" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/3fe414077251a81a1b15b1c709faf5c2fbae3d4e", @@ -709,6 +913,11 @@ "name": "symfony/polyfill-php72", "version": "v1.19.0", "version_normalized": "1.19.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php72.git", + "reference": "beecef6b463b06954638f02378f52496cb84bacc" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/beecef6b463b06954638f02378f52496cb84bacc", @@ -763,20 +972,24 @@ }, { "name": "tencentcloud/common", - "version": "3.0.436", - "version_normalized": "3.0.436.0", + "version": "3.0.712", + "version_normalized": "3.0.712.0", + "source": { + "type": "git", + "url": "https://github.com/tencentcloud-sdk-php/common.git", + "reference": "5d49bdbc237148c2082858ade73610d9e9d61cbc" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tencentcloud-sdk-php/common/zipball/8e1742f06287accfd173141a919d3460d097ac03", - "reference": "8e1742f06287accfd173141a919d3460d097ac03", + "url": "https://api.github.com/repos/tencentcloud-sdk-php/common/zipball/5d49bdbc237148c2082858ade73610d9e9d61cbc", + "reference": "5d49bdbc237148c2082858ade73610d9e9d61cbc", "shasum": "" }, "require": { "guzzlehttp/guzzle": "^6.3||^7.0", - "guzzlehttp/psr7": "^1.4", "php": ">=5.6.0" }, - "time": "2021-07-16T01:04:49+00:00", + "time": "2022-08-29T03:14:37+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -801,18 +1014,23 @@ }, { "name": "tencentcloud/ocr", - "version": "3.0.436", - "version_normalized": "3.0.436.0", + "version": "3.0.712", + "version_normalized": "3.0.712.0", + "source": { + "type": "git", + "url": "https://github.com/tencentcloud-sdk-php/ocr.git", + "reference": "c0d21b263eccfe067731aad39232f537100d43b3" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tencentcloud-sdk-php/ocr/zipball/3158bf1b0d4c89ca0623d0c4eda76a4a8eba656b", - "reference": "3158bf1b0d4c89ca0623d0c4eda76a4a8eba656b", + "url": "https://api.github.com/repos/tencentcloud-sdk-php/ocr/zipball/c0d21b263eccfe067731aad39232f537100d43b3", + "reference": "c0d21b263eccfe067731aad39232f537100d43b3", "shasum": "" }, "require": { - "tencentcloud/common": "3.0.436" + "tencentcloud/common": "3.0.712" }, - "time": "2021-07-16T01:13:52+00:00", + "time": "2022-08-29T03:29:43+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -839,6 +1057,11 @@ "name": "wechatpay/wechatpay-guzzle-middleware", "version": "0.2.2", "version_normalized": "0.2.2.0", + "source": { + "type": "git", + "url": "https://github.com/wechatpay-apiv3/wechatpay-guzzle-middleware.git", + "reference": "6782ac33ed8cf97628609a71cdc5e84a6a40677a" + }, "dist": { "type": "zip", "url": "https://api.github.com/repos/wechatpay-apiv3/wechatpay-guzzle-middleware/zipball/6782ac33ed8cf97628609a71cdc5e84a6a40677a", diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/.gitignore b/common/vendor/gregwar/cache/Gregwar/Cache/.gitignore old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/.travis.yml b/common/vendor/gregwar/cache/Gregwar/Cache/.travis.yml old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/CacheInterface.php b/common/vendor/gregwar/cache/Gregwar/Cache/CacheInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/GarbageCollect.php b/common/vendor/gregwar/cache/Gregwar/Cache/GarbageCollect.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/LICENSE b/common/vendor/gregwar/cache/Gregwar/Cache/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/README.md b/common/vendor/gregwar/cache/Gregwar/Cache/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/autoload.php b/common/vendor/gregwar/cache/Gregwar/Cache/autoload.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/composer.json b/common/vendor/gregwar/cache/Gregwar/Cache/composer.json old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/demo/.gitignore b/common/vendor/gregwar/cache/Gregwar/Cache/demo/.gitignore old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/demo/garbage.php b/common/vendor/gregwar/cache/Gregwar/Cache/demo/garbage.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/demo/max-age.php b/common/vendor/gregwar/cache/Gregwar/Cache/demo/max-age.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/demo/original.txt b/common/vendor/gregwar/cache/Gregwar/Cache/demo/original.txt old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/demo/red-file.php b/common/vendor/gregwar/cache/Gregwar/Cache/demo/red-file.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/demo/red.php b/common/vendor/gregwar/cache/Gregwar/Cache/demo/red.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/demo/uppercase.php b/common/vendor/gregwar/cache/Gregwar/Cache/demo/uppercase.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/phpunit.xml b/common/vendor/gregwar/cache/Gregwar/Cache/phpunit.xml old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/tests/CacheTests.php b/common/vendor/gregwar/cache/Gregwar/Cache/tests/CacheTests.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/cache/Gregwar/Cache/tests/bootstrap.php b/common/vendor/gregwar/cache/Gregwar/Cache/tests/bootstrap.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/.editorconfig b/common/vendor/gregwar/image/Gregwar/Image/.editorconfig old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/.gitignore b/common/vendor/gregwar/image/Gregwar/Image/.gitignore old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/.php_cs b/common/vendor/gregwar/image/Gregwar/Image/.php_cs old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/.styleci.yml b/common/vendor/gregwar/image/Gregwar/Image/.styleci.yml old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/.travis.yml b/common/vendor/gregwar/image/Gregwar/Image/.travis.yml old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Adapter/Adapter.php b/common/vendor/gregwar/image/Gregwar/Image/Adapter/Adapter.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Adapter/AdapterInterface.php b/common/vendor/gregwar/image/Gregwar/Image/Adapter/AdapterInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Adapter/Common.php b/common/vendor/gregwar/image/Gregwar/Image/Adapter/Common.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Adapter/GD.php b/common/vendor/gregwar/image/Gregwar/Image/Adapter/GD.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Adapter/Imagick.php b/common/vendor/gregwar/image/Gregwar/Image/Adapter/Imagick.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Exceptions/GenerationError.php b/common/vendor/gregwar/image/Gregwar/Image/Exceptions/GenerationError.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/GarbageCollect.php b/common/vendor/gregwar/image/Gregwar/Image/GarbageCollect.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Image.php b/common/vendor/gregwar/image/Gregwar/Image/Image.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/ImageColor.php b/common/vendor/gregwar/image/Gregwar/Image/ImageColor.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/LICENSE b/common/vendor/gregwar/image/Gregwar/Image/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Makefile b/common/vendor/gregwar/image/Gregwar/Image/Makefile old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/README.md b/common/vendor/gregwar/image/Gregwar/Image/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Source/Create.php b/common/vendor/gregwar/image/Gregwar/Image/Source/Create.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Source/Data.php b/common/vendor/gregwar/image/Gregwar/Image/Source/Data.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Source/File.php b/common/vendor/gregwar/image/Gregwar/Image/Source/File.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Source/Resource.php b/common/vendor/gregwar/image/Gregwar/Image/Source/Resource.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/Source/Source.php b/common/vendor/gregwar/image/Gregwar/Image/Source/Source.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/autoload.php b/common/vendor/gregwar/image/Gregwar/Image/autoload.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/basic.php b/common/vendor/gregwar/image/Gregwar/Image/demo/basic.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/cache.php b/common/vendor/gregwar/image/Gregwar/Image/demo/cache.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/cacheCreate.php b/common/vendor/gregwar/image/Gregwar/Image/demo/cacheCreate.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/cacheName.php b/common/vendor/gregwar/image/Gregwar/Image/demo/cacheName.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/crop.php b/common/vendor/gregwar/image/Gregwar/Image/demo/crop.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/data.php b/common/vendor/gregwar/image/Gregwar/Image/demo/data.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/fallback.php b/common/vendor/gregwar/image/Gregwar/Image/demo/fallback.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/fonts/CaviarDreams.ttf b/common/vendor/gregwar/image/Gregwar/Image/demo/fonts/CaviarDreams.ttf old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/gc.php b/common/vendor/gregwar/image/Gregwar/Image/demo/gc.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/get.php b/common/vendor/gregwar/image/Gregwar/Image/demo/get.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/guess.php b/common/vendor/gregwar/image/Gregwar/Image/demo/guess.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/img/mona.jpg b/common/vendor/gregwar/image/Gregwar/Image/demo/img/mona.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/img/test.png b/common/vendor/gregwar/image/Gregwar/Image/demo/img/test.png old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/img/test2.jpg b/common/vendor/gregwar/image/Gregwar/Image/demo/img/test2.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/img/vinci.png b/common/vendor/gregwar/image/Gregwar/Image/demo/img/vinci.png old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/inline.php b/common/vendor/gregwar/image/Gregwar/Image/demo/inline.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/merge.php b/common/vendor/gregwar/image/Gregwar/Image/demo/merge.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/percent.php b/common/vendor/gregwar/image/Gregwar/Image/demo/percent.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/resource.php b/common/vendor/gregwar/image/Gregwar/Image/demo/resource.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/watermark.php b/common/vendor/gregwar/image/Gregwar/Image/demo/watermark.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/demo/write.php b/common/vendor/gregwar/image/Gregwar/Image/demo/write.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/cropResize.jpg b/common/vendor/gregwar/image/Gregwar/Image/doc/cropResize.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/forceResize.jpg b/common/vendor/gregwar/image/Gregwar/Image/doc/forceResize.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/generate.php b/common/vendor/gregwar/image/Gregwar/Image/doc/generate.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/mona.jpg b/common/vendor/gregwar/image/Gregwar/Image/doc/mona.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/resize.jpg b/common/vendor/gregwar/image/Gregwar/Image/doc/resize.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/scaleResize.jpg b/common/vendor/gregwar/image/Gregwar/Image/doc/scaleResize.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/zoomCrop.jpg b/common/vendor/gregwar/image/Gregwar/Image/doc/zoomCrop.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/doc/zoomCropTop.jpg b/common/vendor/gregwar/image/Gregwar/Image/doc/zoomCropTop.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/images/error.jpg b/common/vendor/gregwar/image/Gregwar/Image/images/error.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/phpunit.xml.dist b/common/vendor/gregwar/image/Gregwar/Image/phpunit.xml.dist old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/tests/.gitignore b/common/vendor/gregwar/image/Gregwar/Image/tests/.gitignore old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/tests/bootstrap.php b/common/vendor/gregwar/image/Gregwar/Image/tests/bootstrap.php old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/tests/files/monalisa.gif b/common/vendor/gregwar/image/Gregwar/Image/tests/files/monalisa.gif old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/tests/files/monalisa.jpg b/common/vendor/gregwar/image/Gregwar/Image/tests/files/monalisa.jpg old mode 100644 new mode 100755 diff --git a/common/vendor/gregwar/image/Gregwar/Image/tests/files/monalisa.png b/common/vendor/gregwar/image/Gregwar/Image/tests/files/monalisa.png old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/.php_cs b/common/vendor/guzzlehttp/guzzle/.php_cs old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/CHANGELOG.md b/common/vendor/guzzlehttp/guzzle/CHANGELOG.md old mode 100644 new mode 100755 index 464cf1c5..b053017a --- a/common/vendor/guzzlehttp/guzzle/CHANGELOG.md +++ b/common/vendor/guzzlehttp/guzzle/CHANGELOG.md @@ -1,5 +1,19 @@ # Change Log +## 6.5.8 - 2022-06-20 + +* Fix change in port should be considered a change in origin +* Fix `CURLOPT_HTTPAUTH` option not cleared on change of origin + +## 6.5.7 - 2022-06-09 + +* Fix failure to strip Authorization header on HTTP downgrade +* Fix failure to strip the Cookie header on change in host or HTTP downgrade + +## 6.5.6 - 2022-05-25 + +* Fix cross-domain cookie leakage + ## 6.5.5 - 2020-06-16 * Unpin version constraint for `symfony/polyfill-intl-idn` [#2678](https://github.com/guzzle/guzzle/pull/2678) diff --git a/common/vendor/guzzlehttp/guzzle/Dockerfile b/common/vendor/guzzlehttp/guzzle/Dockerfile old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/LICENSE b/common/vendor/guzzlehttp/guzzle/LICENSE old mode 100644 new mode 100755 index 50a177b0..fd2375d8 --- a/common/vendor/guzzlehttp/guzzle/LICENSE +++ b/common/vendor/guzzlehttp/guzzle/LICENSE @@ -1,4 +1,12 @@ -Copyright (c) 2011-2018 Michael Dowling, https://github.com/mtdowling +The MIT License (MIT) + +Copyright (c) 2011 Michael Dowling +Copyright (c) 2012 Jeremy Lindblom +Copyright (c) 2014 Graham Campbell +Copyright (c) 2015 Márk Sági-Kazár +Copyright (c) 2015 Tobias Schultze +Copyright (c) 2016 Tobias Nyholm +Copyright (c) 2016 George Mponos Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/common/vendor/guzzlehttp/guzzle/README.md b/common/vendor/guzzlehttp/guzzle/README.md old mode 100644 new mode 100755 index 5fdb6c5f..bc98e1a1 --- a/common/vendor/guzzlehttp/guzzle/README.md +++ b/common/vendor/guzzlehttp/guzzle/README.md @@ -1,8 +1,9 @@ -Guzzle, PHP HTTP client -======================= +![Guzzle](.github/logo.png?raw=true) + +# Guzzle, PHP HTTP client [![Latest Version](https://img.shields.io/github/release/guzzle/guzzle.svg?style=flat-square)](https://github.com/guzzle/guzzle/releases) -[![Build Status](https://img.shields.io/travis/guzzle/guzzle.svg?style=flat-square)](https://travis-ci.org/guzzle/guzzle) +[![Build Status](https://img.shields.io/github/workflow/status/guzzle/guzzle/CI?label=ci%20build&style=flat-square)](https://github.com/guzzle/guzzle/actions?query=workflow%3ACI) [![Total Downloads](https://img.shields.io/packagist/dt/guzzlehttp/guzzle.svg?style=flat-square)](https://packagist.org/packages/guzzlehttp/guzzle) Guzzle is a PHP HTTP client that makes it easy to send HTTP requests and @@ -38,15 +39,18 @@ $promise->wait(); ## Help and docs -- [Documentation](http://guzzlephp.org/) -- [Stack Overflow](http://stackoverflow.com/questions/tagged/guzzle) +We use GitHub issues only to discuss bugs and new features. For support please refer to: + +- [Documentation](https://docs.guzzlephp.org) +- [Stack Overflow](https://stackoverflow.com/questions/tagged/guzzle) +- [#guzzle](https://app.slack.com/client/T0D2S9JCT/CE6UAAKL4) channel on [PHP-HTTP Slack](https://slack.httplug.io/) - [Gitter](https://gitter.im/guzzle/guzzle) ## Installing Guzzle The recommended way to install Guzzle is through -[Composer](http://getcomposer.org). +[Composer](https://getcomposer.org/). ```bash # Install Composer @@ -74,17 +78,20 @@ composer update ## Version Guidance -| Version | Status | Packagist | Namespace | Repo | Docs | PSR-7 | PHP Version | -|---------|------------|---------------------|--------------|---------------------|---------------------|-------|-------------| -| 3.x | EOL | `guzzle/guzzle` | `Guzzle` | [v3][guzzle-3-repo] | [v3][guzzle-3-docs] | No | >= 5.3.3 | -| 4.x | EOL | `guzzlehttp/guzzle` | `GuzzleHttp` | [v4][guzzle-4-repo] | N/A | No | >= 5.4 | -| 5.x | EOL | `guzzlehttp/guzzle` | `GuzzleHttp` | [v5][guzzle-5-repo] | [v5][guzzle-5-docs] | No | >= 5.4 | -| 6.x | Latest | `guzzlehttp/guzzle` | `GuzzleHttp` | [v6][guzzle-6-repo] | [v6][guzzle-6-docs] | Yes | >= 5.5 | +| Version | Status | Packagist | Namespace | Repo | Docs | PSR-7 | PHP Version | +|---------|----------------|---------------------|--------------|---------------------|---------------------|-------|--------------| +| 3.x | EOL | `guzzle/guzzle` | `Guzzle` | [v3][guzzle-3-repo] | [v3][guzzle-3-docs] | No | >=5.3.3,<7.0 | +| 4.x | EOL | `guzzlehttp/guzzle` | `GuzzleHttp` | [v4][guzzle-4-repo] | N/A | No | >=5.4,<7.0 | +| 5.x | EOL | `guzzlehttp/guzzle` | `GuzzleHttp` | [v5][guzzle-5-repo] | [v5][guzzle-5-docs] | No | >=5.4,<7.4 | +| 6.x | Security fixes | `guzzlehttp/guzzle` | `GuzzleHttp` | [v6][guzzle-6-repo] | [v6][guzzle-6-docs] | Yes | >=5.5,<8.0 | +| 7.x | Latest | `guzzlehttp/guzzle` | `GuzzleHttp` | [v7][guzzle-7-repo] | [v7][guzzle-7-docs] | Yes | >=7.2.5,<8.2 | [guzzle-3-repo]: https://github.com/guzzle/guzzle3 [guzzle-4-repo]: https://github.com/guzzle/guzzle/tree/4.x [guzzle-5-repo]: https://github.com/guzzle/guzzle/tree/5.3 -[guzzle-6-repo]: https://github.com/guzzle/guzzle -[guzzle-3-docs]: http://guzzle3.readthedocs.org -[guzzle-5-docs]: http://guzzle.readthedocs.org/en/5.3/ -[guzzle-6-docs]: http://guzzle.readthedocs.org/en/latest/ +[guzzle-6-repo]: https://github.com/guzzle/guzzle/tree/6.5 +[guzzle-7-repo]: https://github.com/guzzle/guzzle +[guzzle-3-docs]: https://guzzle3.readthedocs.io/ +[guzzle-5-docs]: https://docs.guzzlephp.org/en/5.3/ +[guzzle-6-docs]: https://docs.guzzlephp.org/en/6.5/ +[guzzle-7-docs]: https://docs.guzzlephp.org/en/latest/ diff --git a/common/vendor/guzzlehttp/guzzle/UPGRADING.md b/common/vendor/guzzlehttp/guzzle/UPGRADING.md old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/composer.json b/common/vendor/guzzlehttp/guzzle/composer.json old mode 100644 new mode 100755 index c01864f0..a57d78f6 --- a/common/vendor/guzzlehttp/guzzle/composer.json +++ b/common/vendor/guzzlehttp/guzzle/composer.json @@ -14,18 +14,48 @@ "homepage": "http://guzzlephp.org/", "license": "MIT", "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" } ], "require": { "php": ">=5.5", "ext-json": "*", - "symfony/polyfill-intl-idn": "^1.17.0", + "symfony/polyfill-intl-idn": "^1.17", "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.6.1" + "guzzlehttp/psr7": "^1.9" }, "require-dev": { "ext-curl": "*", @@ -36,7 +66,10 @@ "psr/log": "Required for using the Log middleware" }, "config": { - "sort-packages": true + "sort-packages": true, + "allow-plugins": { + "bamarni/composer-bin-plugin": true + } }, "extra": { "branch-alias": { diff --git a/common/vendor/guzzlehttp/guzzle/src/Client.php b/common/vendor/guzzlehttp/guzzle/src/Client.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/ClientInterface.php b/common/vendor/guzzlehttp/guzzle/src/ClientInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Cookie/CookieJar.php b/common/vendor/guzzlehttp/guzzle/src/Cookie/CookieJar.php old mode 100644 new mode 100755 index 38f98ad7..394df3a7 --- a/common/vendor/guzzlehttp/guzzle/src/Cookie/CookieJar.php +++ b/common/vendor/guzzlehttp/guzzle/src/Cookie/CookieJar.php @@ -240,6 +240,11 @@ class CookieJar implements CookieJarInterface if (0 !== strpos($sc->getPath(), '/')) { $sc->setPath($this->getCookiePathFromRequest($request)); } + if (!$sc->matchesDomain($request->getUri()->getHost())) { + continue; + } + // Note: At this point `$sc->getDomain()` being a public suffix should + // be rejected, but we don't want to pull in the full PSL dependency. $this->setCookie($sc); } } diff --git a/common/vendor/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php b/common/vendor/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Cookie/FileCookieJar.php b/common/vendor/guzzlehttp/guzzle/src/Cookie/FileCookieJar.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php b/common/vendor/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php b/common/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php old mode 100644 new mode 100755 index 3d776a70..55f6901a --- a/common/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php +++ b/common/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php @@ -333,12 +333,19 @@ class SetCookie */ public function matchesDomain($domain) { + $cookieDomain = $this->getDomain(); + if (null === $cookieDomain) { + return true; + } + // Remove the leading '.' as per spec in RFC 6265. // http://tools.ietf.org/html/rfc6265#section-5.2.3 - $cookieDomain = ltrim($this->getDomain(), '.'); + $cookieDomain = ltrim(strtolower($cookieDomain), '.'); + + $domain = strtolower($domain); // Domain not set or exact match. - if (!$cookieDomain || !strcasecmp($domain, $cookieDomain)) { + if ('' === $cookieDomain || $domain === $cookieDomain) { return true; } diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/BadResponseException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/BadResponseException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/ClientException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/ClientException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/ConnectException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/ConnectException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/GuzzleException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/GuzzleException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/InvalidArgumentException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/InvalidArgumentException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/SeekException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/SeekException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/ServerException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/ServerException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Exception/TransferException.php b/common/vendor/guzzlehttp/guzzle/src/Exception/TransferException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php b/common/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/CurlFactoryInterface.php b/common/vendor/guzzlehttp/guzzle/src/Handler/CurlFactoryInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/CurlHandler.php b/common/vendor/guzzlehttp/guzzle/src/Handler/CurlHandler.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php b/common/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/EasyHandle.php b/common/vendor/guzzlehttp/guzzle/src/Handler/EasyHandle.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/MockHandler.php b/common/vendor/guzzlehttp/guzzle/src/Handler/MockHandler.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php b/common/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php b/common/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/HandlerStack.php b/common/vendor/guzzlehttp/guzzle/src/HandlerStack.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/MessageFormatter.php b/common/vendor/guzzlehttp/guzzle/src/MessageFormatter.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Middleware.php b/common/vendor/guzzlehttp/guzzle/src/Middleware.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Pool.php b/common/vendor/guzzlehttp/guzzle/src/Pool.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php b/common/vendor/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/RedirectMiddleware.php b/common/vendor/guzzlehttp/guzzle/src/RedirectMiddleware.php old mode 100644 new mode 100755 index e4644b7a..008a29b8 --- a/common/vendor/guzzlehttp/guzzle/src/RedirectMiddleware.php +++ b/common/vendor/guzzlehttp/guzzle/src/RedirectMiddleware.php @@ -94,6 +94,14 @@ class RedirectMiddleware $this->guardMax($request, $options); $nextRequest = $this->modifyRequest($request, $options, $response); + // If authorization is handled by curl, unset it if URI is cross-origin. + if (Psr7\UriComparator::isCrossOrigin($request->getUri(), $nextRequest->getUri()) && defined('\CURLOPT_HTTPAUTH')) { + unset( + $options['curl'][\CURLOPT_HTTPAUTH], + $options['curl'][\CURLOPT_USERPWD] + ); + } + if (isset($options['allow_redirects']['on_redirect'])) { call_user_func( $options['allow_redirects']['on_redirect'], @@ -141,7 +149,7 @@ class RedirectMiddleware } /** - * Check for too many redirects + * Check for too many redirects. * * @return void * @@ -190,7 +198,7 @@ class RedirectMiddleware $modify['body'] = ''; } - $uri = $this->redirectUri($request, $response, $protocols); + $uri = self::redirectUri($request, $response, $protocols); if (isset($options['idn_conversion']) && ($options['idn_conversion'] !== false)) { $idnOptions = ($options['idn_conversion'] === true) ? IDNA_DEFAULT : $options['idn_conversion']; $uri = Utils::idnUriConvert($uri, $idnOptions); @@ -210,16 +218,17 @@ class RedirectMiddleware $modify['remove_headers'][] = 'Referer'; } - // Remove Authorization header if host is different. - if ($request->getUri()->getHost() !== $modify['uri']->getHost()) { + // Remove Authorization and Cookie headers if URI is cross-origin. + if (Psr7\UriComparator::isCrossOrigin($request->getUri(), $modify['uri'])) { $modify['remove_headers'][] = 'Authorization'; + $modify['remove_headers'][] = 'Cookie'; } return Psr7\modify_request($request, $modify); } /** - * Set the appropriate URL on the request based on the location header + * Set the appropriate URL on the request based on the location header. * * @param RequestInterface $request * @param ResponseInterface $response @@ -227,7 +236,7 @@ class RedirectMiddleware * * @return UriInterface */ - private function redirectUri( + private static function redirectUri( RequestInterface $request, ResponseInterface $response, array $protocols diff --git a/common/vendor/guzzlehttp/guzzle/src/RequestOptions.php b/common/vendor/guzzlehttp/guzzle/src/RequestOptions.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/RetryMiddleware.php b/common/vendor/guzzlehttp/guzzle/src/RetryMiddleware.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/TransferStats.php b/common/vendor/guzzlehttp/guzzle/src/TransferStats.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/UriTemplate.php b/common/vendor/guzzlehttp/guzzle/src/UriTemplate.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/Utils.php b/common/vendor/guzzlehttp/guzzle/src/Utils.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/functions.php b/common/vendor/guzzlehttp/guzzle/src/functions.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/guzzle/src/functions_include.php b/common/vendor/guzzlehttp/guzzle/src/functions_include.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/CHANGELOG.md b/common/vendor/guzzlehttp/promises/CHANGELOG.md old mode 100644 new mode 100755 index 14796c47..253282eb --- a/common/vendor/guzzlehttp/promises/CHANGELOG.md +++ b/common/vendor/guzzlehttp/promises/CHANGELOG.md @@ -1,7 +1,33 @@ # CHANGELOG +## 1.5.2 - 2022-08-07 + +### Changed + +- Officially support PHP 8.2 + +## 1.5.1 - 2021-10-22 + +### Fixed + +- Revert "Call handler when waiting on fulfilled/rejected Promise" +- Fix pool memory leak when empty array of promises provided + +## 1.5.0 - 2021-10-07 + +### Changed + +- Call handler when waiting on fulfilled/rejected Promise +- Officially support PHP 8.1 + +### Fixed + +- Fix manually settle promises generated with `Utils::task` + ## 1.4.1 - 2021-02-18 +### Fixed + - Fixed `each_limit` skipping promises and failing ## 1.4.0 - 2020-09-30 diff --git a/common/vendor/guzzlehttp/promises/LICENSE b/common/vendor/guzzlehttp/promises/LICENSE old mode 100644 new mode 100755 index 67f91a14..9f0f943b --- a/common/vendor/guzzlehttp/promises/LICENSE +++ b/common/vendor/guzzlehttp/promises/LICENSE @@ -1,4 +1,9 @@ -Copyright (c) 2015-2016 Michael Dowling, https://github.com/mtdowling +The MIT License (MIT) + +Copyright (c) 2015 Michael Dowling +Copyright (c) 2015 Graham Campbell +Copyright (c) 2017 Tobias Schultze +Copyright (c) 2020 Tobias Nyholm Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/common/vendor/guzzlehttp/promises/README.md b/common/vendor/guzzlehttp/promises/README.md old mode 100644 new mode 100755 index a95c6059..1ea667ab --- a/common/vendor/guzzlehttp/promises/README.md +++ b/common/vendor/guzzlehttp/promises/README.md @@ -17,7 +17,7 @@ for a general introduction to promises. - [Implementation notes](#implementation-notes) -# Features +## Features - [Promises/A+](https://promisesaplus.com/) implementation. - Promise resolution and chaining is handled iteratively, allowing for @@ -29,15 +29,14 @@ for a general introduction to promises. `GuzzleHttp\Promise\Coroutine::of()`. -# Quick start +## Quick Start A *promise* represents the eventual result of an asynchronous operation. The primary way of interacting with a promise is through its `then` method, which registers callbacks to receive either a promise's eventual value or the reason why the promise cannot be fulfilled. - -## Callbacks +### Callbacks Callbacks are registered with the `then` method by providing an optional `$onFulfilled` followed by an optional `$onRejected` function. @@ -60,12 +59,11 @@ $promise->then( ``` *Resolving* a promise means that you either fulfill a promise with a *value* or -reject a promise with a *reason*. Resolving a promises triggers callbacks -registered with the promises's `then` method. These callbacks are triggered +reject a promise with a *reason*. Resolving a promise triggers callbacks +registered with the promise's `then` method. These callbacks are triggered only once and in the order in which they were added. - -## Resolving a promise +### Resolving a Promise Promises are fulfilled using the `resolve($value)` method. Resolving a promise with any value other than a `GuzzleHttp\Promise\RejectedPromise` will trigger @@ -92,8 +90,7 @@ $promise $promise->resolve('reader.'); ``` - -## Promise forwarding +### Promise Forwarding Promises can be chained one after the other. Each then in the chain is a new promise. The return value of a promise is what's forwarded to the next @@ -123,7 +120,7 @@ $promise->resolve('A'); $nextPromise->resolve('B'); ``` -## Promise rejection +### Promise Rejection When a promise is rejected, the `$onRejected` callbacks are invoked with the rejection reason. @@ -140,7 +137,7 @@ $promise->reject('Error!'); // Outputs "Error!" ``` -## Rejection forwarding +### Rejection Forwarding If an exception is thrown in an `$onRejected` callback, subsequent `$onRejected` callbacks are invoked with the thrown exception as the reason. @@ -195,7 +192,8 @@ $promise $promise->reject('Error!'); ``` -# Synchronous wait + +## Synchronous Wait You can synchronously force promises to complete using a promise's `wait` method. When creating a promise, you can provide a wait function that is used @@ -247,8 +245,7 @@ $promise->wait(); > PHP Fatal error: Uncaught exception 'GuzzleHttp\Promise\RejectionException' with message 'The promise was rejected with value: foo' - -## Unwrapping a promise +### Unwrapping a Promise When synchronously waiting on a promise, you are joining the state of the promise into the current state of execution (i.e., return the value of the @@ -275,7 +272,7 @@ wait function will be the value delivered to promise B. **Note**: when you do not unwrap the promise, no value is returned. -# Cancellation +## Cancellation You can cancel a promise that has not yet been fulfilled using the `cancel()` method of a promise. When creating a promise you can provide an optional @@ -283,10 +280,9 @@ cancel function that when invoked cancels the action of computing a resolution of the promise. -# API +## API - -## Promise +### Promise When creating a promise object, you can provide an optional `$waitFn` and `$cancelFn`. `$waitFn` is a function that is invoked with no arguments and is @@ -349,7 +345,7 @@ A promise has the following methods: Rejects the promise with the given `$reason`. -## FulfilledPromise +### FulfilledPromise A fulfilled promise can be created to represent a promise that has been fulfilled. @@ -366,7 +362,7 @@ $promise->then(function ($value) { ``` -## RejectedPromise +### RejectedPromise A rejected promise can be created to represent a promise that has been rejected. @@ -383,7 +379,7 @@ $promise->then(null, function ($reason) { ``` -# Promise interop +## Promise Interoperability This library works with foreign promises that have a `then` method. This means you can use Guzzle promises with [React promises](https://github.com/reactphp/promise) @@ -409,7 +405,7 @@ a foreign promise. You will need to wrap a third-party promise with a Guzzle promise in order to utilize wait and cancel functions with foreign promises. -## Event Loop Integration +### Event Loop Integration In order to keep the stack size constant, Guzzle promises are resolved asynchronously using a task queue. When waiting on promises synchronously, the @@ -437,10 +433,9 @@ $loop->addPeriodicTimer(0, [$queue, 'run']); *TODO*: Perhaps adding a `futureTick()` on each tick would be faster? -# Implementation notes +## Implementation Notes - -## Promise resolution and chaining is handled iteratively +### Promise Resolution and Chaining is Handled Iteratively By shuffling pending handlers from one owner to another, promises are resolved iteratively, allowing for "infinite" then chaining. @@ -476,8 +471,7 @@ all of its pending handlers to the new promise. When the new promise is eventually resolved, all of the pending handlers are delivered the forwarded value. - -## A promise is the deferred. +### A Promise is the Deferred Some promise libraries implement promises using a deferred object to represent a computation and a promise object to represent the delivery of the result of @@ -505,7 +499,10 @@ $promise->resolve('foo'); ## Upgrading from Function API -A static API was first introduced in 1.4.0, in order to mitigate problems with functions conflicting between global and local copies of the package. The function API will be removed in 2.0.0. A migration table has been provided here for your convenience: +A static API was first introduced in 1.4.0, in order to mitigate problems with +functions conflicting between global and local copies of the package. The +function API will be removed in 2.0.0. A migration table has been provided here +for your convenience: | Original Function | Replacement Method | |----------------|----------------| @@ -530,3 +527,20 @@ A static API was first introduced in 1.4.0, in order to mitigate problems with f | `is_rejected` | `Is::rejected` | | `is_settled` | `Is::settled` | | `coroutine` | `Coroutine::of` | + + +## Security + +If you discover a security vulnerability within this package, please send an email to security@tidelift.com. All security vulnerabilities will be promptly addressed. Please do not disclose security-related issues publicly until a fix has been announced. Please see [Security Policy](https://github.com/guzzle/promises/security/policy) for more information. + + +## License + +Guzzle is made available under the MIT License (MIT). Please see [License File](LICENSE) for more information. + + +## For Enterprise + +Available as part of the Tidelift Subscription + +The maintainers of Guzzle and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/packagist-guzzlehttp-promises?utm_source=packagist-guzzlehttp-promises&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) diff --git a/common/vendor/guzzlehttp/promises/composer.json b/common/vendor/guzzlehttp/promises/composer.json old mode 100644 new mode 100755 index db44d9e3..c959fb32 --- a/common/vendor/guzzlehttp/promises/composer.json +++ b/common/vendor/guzzlehttp/promises/composer.json @@ -4,10 +4,25 @@ "keywords": ["promise"], "license": "MIT", "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" } ], "require": { @@ -33,7 +48,11 @@ }, "extra": { "branch-alias": { - "dev-master": "1.4-dev" + "dev-master": "1.5-dev" } + }, + "config": { + "preferred-install": "dist", + "sort-packages": true } } diff --git a/common/vendor/guzzlehttp/promises/src/AggregateException.php b/common/vendor/guzzlehttp/promises/src/AggregateException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/CancellationException.php b/common/vendor/guzzlehttp/promises/src/CancellationException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/Coroutine.php b/common/vendor/guzzlehttp/promises/src/Coroutine.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/Create.php b/common/vendor/guzzlehttp/promises/src/Create.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/Each.php b/common/vendor/guzzlehttp/promises/src/Each.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/EachPromise.php b/common/vendor/guzzlehttp/promises/src/EachPromise.php old mode 100644 new mode 100755 index 748f4712..280d7995 --- a/common/vendor/guzzlehttp/promises/src/EachPromise.php +++ b/common/vendor/guzzlehttp/promises/src/EachPromise.php @@ -79,20 +79,10 @@ class EachPromise implements PromisorInterface $this->createPromise(); /** @psalm-assert Promise $this->aggregate */ $this->iterable->rewind(); - if (!$this->checkIfFinished()) { - $this->refillPending(); - } + $this->refillPending(); } catch (\Throwable $e) { - /** - * @psalm-suppress NullReference - * @phpstan-ignore-next-line - */ $this->aggregate->reject($e); } catch (\Exception $e) { - /** - * @psalm-suppress NullReference - * @phpstan-ignore-next-line - */ $this->aggregate->reject($e); } @@ -107,6 +97,9 @@ class EachPromise implements PromisorInterface { $this->mutex = false; $this->aggregate = new Promise(function () { + if ($this->checkIfFinished()) { + return; + } reset($this->pending); // Consume a potentially fluctuating list of promises while // ensuring that indexes are maintained (precluding array_shift). diff --git a/common/vendor/guzzlehttp/promises/src/FulfilledPromise.php b/common/vendor/guzzlehttp/promises/src/FulfilledPromise.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/Is.php b/common/vendor/guzzlehttp/promises/src/Is.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/Promise.php b/common/vendor/guzzlehttp/promises/src/Promise.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/PromiseInterface.php b/common/vendor/guzzlehttp/promises/src/PromiseInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/PromisorInterface.php b/common/vendor/guzzlehttp/promises/src/PromisorInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/RejectedPromise.php b/common/vendor/guzzlehttp/promises/src/RejectedPromise.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/RejectionException.php b/common/vendor/guzzlehttp/promises/src/RejectionException.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/TaskQueue.php b/common/vendor/guzzlehttp/promises/src/TaskQueue.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/TaskQueueInterface.php b/common/vendor/guzzlehttp/promises/src/TaskQueueInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/Utils.php b/common/vendor/guzzlehttp/promises/src/Utils.php old mode 100644 new mode 100755 index 1cee8620..8647126d --- a/common/vendor/guzzlehttp/promises/src/Utils.php +++ b/common/vendor/guzzlehttp/promises/src/Utils.php @@ -48,7 +48,9 @@ final class Utils $promise = new Promise([$queue, 'run']); $queue->add(function () use ($task, $promise) { try { - $promise->resolve($task()); + if (Is::pending($promise)) { + $promise->resolve($task()); + } } catch (\Throwable $e) { $promise->reject($e); } catch (\Exception $e) { diff --git a/common/vendor/guzzlehttp/promises/src/functions.php b/common/vendor/guzzlehttp/promises/src/functions.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/promises/src/functions_include.php b/common/vendor/guzzlehttp/promises/src/functions_include.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/.github/FUNDING.yml b/common/vendor/guzzlehttp/psr7/.github/FUNDING.yml new file mode 100755 index 00000000..7d222c58 --- /dev/null +++ b/common/vendor/guzzlehttp/psr7/.github/FUNDING.yml @@ -0,0 +1,2 @@ +github: [Nyholm, GrahamCampbell] +tidelift: "packagist/guzzlehttp/psr7" diff --git a/common/vendor/guzzlehttp/psr7/.github/stale.yml b/common/vendor/guzzlehttp/psr7/.github/stale.yml new file mode 100755 index 00000000..53faa71b --- /dev/null +++ b/common/vendor/guzzlehttp/psr7/.github/stale.yml @@ -0,0 +1,14 @@ +daysUntilStale: 120 +daysUntilClose: 14 +exemptLabels: + - lifecycle/keep-open + - lifecycle/ready-for-merge +# Label to use when marking an issue as stale +staleLabel: lifecycle/stale +# Comment to post when marking an issue as stale. Set to `false` to disable +markComment: > + This issue has been automatically marked as stale because it has not had + recent activity. It will be closed after 2 weeks if no further activity occurs. Thank you + for your contributions. +# Comment to post when closing a stale issue. Set to `false` to disable +closeComment: false diff --git a/common/vendor/guzzlehttp/psr7/.github/workflows/ci.yml b/common/vendor/guzzlehttp/psr7/.github/workflows/ci.yml old mode 100644 new mode 100755 index da7414e5..eda7dceb --- a/common/vendor/guzzlehttp/psr7/.github/workflows/ci.yml +++ b/common/vendor/guzzlehttp/psr7/.github/workflows/ci.yml @@ -10,7 +10,7 @@ jobs: strategy: max-parallel: 10 matrix: - php: ['5.6', '7.0', '7.1', '7.2', '7.3', '7.4'] + php: ['5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1'] steps: - name: Set up PHP @@ -23,8 +23,12 @@ jobs: - name: Checkout code uses: actions/checkout@v2 + - name: Mimic PHP 8.0 + run: composer config platform.php 8.0.999 + if: matrix.php > 8 + - name: Install dependencies - run: composer update --no-interaction --no-progress --prefer-dist + run: composer update --no-interaction --no-progress - name: Run tests run: make test diff --git a/common/vendor/guzzlehttp/psr7/.github/workflows/integration.yml b/common/vendor/guzzlehttp/psr7/.github/workflows/integration.yml old mode 100644 new mode 100755 index b6e0eb24..3c31f9ef --- a/common/vendor/guzzlehttp/psr7/.github/workflows/integration.yml +++ b/common/vendor/guzzlehttp/psr7/.github/workflows/integration.yml @@ -26,7 +26,7 @@ jobs: - name: Download dependencies uses: ramsey/composer-install@v1 with: - composer-options: --no-interaction --prefer-dist --optimize-autoloader + composer-options: --no-interaction --optimize-autoloader - name: Start server run: php -S 127.0.0.1:10002 tests/Integration/server.php & diff --git a/common/vendor/guzzlehttp/psr7/.github/workflows/static.yml b/common/vendor/guzzlehttp/psr7/.github/workflows/static.yml old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/.php_cs.dist b/common/vendor/guzzlehttp/psr7/.php_cs.dist old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/CHANGELOG.md b/common/vendor/guzzlehttp/psr7/CHANGELOG.md old mode 100644 new mode 100755 index 6a6b7bf9..b4fdf3c6 --- a/common/vendor/guzzlehttp/psr7/CHANGELOG.md +++ b/common/vendor/guzzlehttp/psr7/CHANGELOG.md @@ -3,12 +3,36 @@ All notable changes to this project will be documented in this file. -The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) -and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## Unreleased +## 1.9.0 - 2022-06-20 + +### Added + +- Added `UriComparator::isCrossOrigin` method + +## 1.8.5 - 2022-03-20 + +### Fixed + +- Correct header value validation + +## 1.8.4 - 2022-03-20 + +### Fixed + +- Validate header values properly + +## 1.8.3 - 2021-10-05 + +### Fixed + +- Return `null` in caching stream size if remote size is `null` + ## 1.8.2 - 2021-04-26 ### Fixed diff --git a/common/vendor/guzzlehttp/psr7/LICENSE b/common/vendor/guzzlehttp/psr7/LICENSE old mode 100644 new mode 100755 index 581d95f9..51c7ec81 --- a/common/vendor/guzzlehttp/psr7/LICENSE +++ b/common/vendor/guzzlehttp/psr7/LICENSE @@ -1,4 +1,11 @@ -Copyright (c) 2015 Michael Dowling, https://github.com/mtdowling +The MIT License (MIT) + +Copyright (c) 2015 Michael Dowling +Copyright (c) 2015 Márk Sági-Kazár +Copyright (c) 2015 Graham Campbell +Copyright (c) 2016 Tobias Schultze +Copyright (c) 2016 George Mponos +Copyright (c) 2018 Tobias Nyholm Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/common/vendor/guzzlehttp/psr7/README.md b/common/vendor/guzzlehttp/psr7/README.md old mode 100644 new mode 100755 index acfabfdc..64776cb6 --- a/common/vendor/guzzlehttp/psr7/README.md +++ b/common/vendor/guzzlehttp/psr7/README.md @@ -1,6 +1,6 @@ # PSR-7 Message Implementation -This repository contains a full [PSR-7](http://www.php-fig.org/psr/psr-7/) +This repository contains a full [PSR-7](https://www.php-fig.org/psr/psr-7/) message implementation, several stream decorators, and some helpful functionality like query string parsing. @@ -659,7 +659,7 @@ manually but instead is used indirectly via `Psr\Http\Message\UriInterface::__to `public static function fromParts(array $parts): UriInterface` -Creates a URI from a hash of [`parse_url`](http://php.net/manual/en/function.parse-url.php) components. +Creates a URI from a hash of [`parse_url`](https://www.php.net/manual/en/function.parse-url.php) components. ### `GuzzleHttp\Psr7\Uri::withQueryValue` @@ -684,6 +684,16 @@ associative array of key => value. Creates a new URI with a specific query string value removed. Any existing query string values that exactly match the provided key are removed. +## Cross-Origin Detection + +`GuzzleHttp\Psr7\UriComparator` provides methods to determine if a modified URL should be considered cross-origin. + +### `GuzzleHttp\Psr7\UriComparator::isCrossOrigin` + +`public static function isCrossOrigin(UriInterface $original, UriInterface $modified): bool` + +Determines if a modified URL should be considered cross-origin with respect to an original URL. + ## Reference Resolution `GuzzleHttp\Psr7\UriResolver` provides methods to resolve a URI reference in the context of a base URI according @@ -807,3 +817,28 @@ Whether two URIs can be considered equivalent. Both URIs are normalized automati `$normalizations` bitmask. The method also accepts relative URI references and returns true when they are equivalent. This of course assumes they will be resolved against the same base URI. If this is not the case, determination of equivalence or difference of relative references does not mean anything. + + +## Version Guidance + +| Version | Status | PHP Version | +|---------|----------------|------------------| +| 1.x | Security fixes | >=5.4,<8.1 | +| 2.x | Latest | ^7.2.5 \|\| ^8.0 | + + +## Security + +If you discover a security vulnerability within this package, please send an email to security@tidelift.com. All security vulnerabilities will be promptly addressed. Please do not disclose security-related issues publicly until a fix has been announced. Please see [Security Policy](https://github.com/guzzle/psr7/security/policy) for more information. + + +## License + +Guzzle is made available under the MIT License (MIT). Please see [License File](LICENSE) for more information. + + +## For Enterprise + +Available as part of the Tidelift Subscription + +The maintainers of Guzzle and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/packagist-guzzlehttp-psr7?utm_source=packagist-guzzlehttp-psr7&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) diff --git a/common/vendor/guzzlehttp/psr7/composer.json b/common/vendor/guzzlehttp/psr7/composer.json old mode 100644 new mode 100755 index 58dcb07e..0e36920d --- a/common/vendor/guzzlehttp/psr7/composer.json +++ b/common/vendor/guzzlehttp/psr7/composer.json @@ -1,17 +1,37 @@ { "name": "guzzlehttp/psr7", - "type": "library", "description": "PSR-7 message implementation that also provides common utility methods", "keywords": ["request", "response", "message", "stream", "http", "uri", "url", "psr-7"], "license": "MIT", "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, { "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", "homepage": "https://github.com/Tobion" } ], @@ -43,7 +63,14 @@ }, "extra": { "branch-alias": { - "dev-master": "1.7-dev" + "dev-master": "1.9-dev" + } + }, + "config": { + "preferred-install": "dist", + "sort-packages": true, + "allow-plugins": { + "bamarni/composer-bin-plugin": true } } } diff --git a/common/vendor/guzzlehttp/psr7/src/AppendStream.php b/common/vendor/guzzlehttp/psr7/src/AppendStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/BufferStream.php b/common/vendor/guzzlehttp/psr7/src/BufferStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/CachingStream.php b/common/vendor/guzzlehttp/psr7/src/CachingStream.php old mode 100644 new mode 100755 index fe749e98..febade9f --- a/common/vendor/guzzlehttp/psr7/src/CachingStream.php +++ b/common/vendor/guzzlehttp/psr7/src/CachingStream.php @@ -36,7 +36,13 @@ class CachingStream implements StreamInterface public function getSize() { - return max($this->stream->getSize(), $this->remoteStream->getSize()); + $remoteSize = $this->remoteStream->getSize(); + + if (null === $remoteSize) { + return null; + } + + return max($this->stream->getSize(), $remoteSize); } public function rewind() diff --git a/common/vendor/guzzlehttp/psr7/src/DroppingStream.php b/common/vendor/guzzlehttp/psr7/src/DroppingStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/FnStream.php b/common/vendor/guzzlehttp/psr7/src/FnStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Header.php b/common/vendor/guzzlehttp/psr7/src/Header.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/InflateStream.php b/common/vendor/guzzlehttp/psr7/src/InflateStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/LazyOpenStream.php b/common/vendor/guzzlehttp/psr7/src/LazyOpenStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/LimitStream.php b/common/vendor/guzzlehttp/psr7/src/LimitStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Message.php b/common/vendor/guzzlehttp/psr7/src/Message.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/MessageTrait.php b/common/vendor/guzzlehttp/psr7/src/MessageTrait.php old mode 100644 new mode 100755 index 99203bb4..0ac8663d --- a/common/vendor/guzzlehttp/psr7/src/MessageTrait.php +++ b/common/vendor/guzzlehttp/psr7/src/MessageTrait.php @@ -157,17 +157,22 @@ trait MessageTrait } } + /** + * @param mixed $value + * + * @return string[] + */ private function normalizeHeaderValue($value) { if (!is_array($value)) { - return $this->trimHeaderValues([$value]); + return $this->trimAndValidateHeaderValues([$value]); } if (count($value) === 0) { throw new \InvalidArgumentException('Header value can not be an empty array.'); } - return $this->trimHeaderValues($value); + return $this->trimAndValidateHeaderValues($value); } /** @@ -178,13 +183,13 @@ trait MessageTrait * header-field = field-name ":" OWS field-value OWS * OWS = *( SP / HTAB ) * - * @param string[] $values Header values + * @param mixed[] $values Header values * * @return string[] Trimmed header values * * @see https://tools.ietf.org/html/rfc7230#section-3.2.4 */ - private function trimHeaderValues(array $values) + private function trimAndValidateHeaderValues(array $values) { return array_map(function ($value) { if (!is_scalar($value) && null !== $value) { @@ -194,10 +199,20 @@ trait MessageTrait )); } - return trim((string) $value, " \t"); + $trimmed = trim((string) $value, " \t"); + $this->assertValue($trimmed); + + return $trimmed; }, array_values($values)); } + /** + * @see https://tools.ietf.org/html/rfc7230#section-3.2 + * + * @param mixed $header + * + * @return void + */ private function assertHeader($header) { if (!is_string($header)) { @@ -210,5 +225,46 @@ trait MessageTrait if ($header === '') { throw new \InvalidArgumentException('Header name can not be empty.'); } + + if (! preg_match('/^[a-zA-Z0-9\'`#$%&*+.^_|~!-]+$/', $header)) { + throw new \InvalidArgumentException( + sprintf( + '"%s" is not valid header name', + $header + ) + ); + } + } + + /** + * @param string $value + * + * @return void + * + * @see https://tools.ietf.org/html/rfc7230#section-3.2 + * + * field-value = *( field-content / obs-fold ) + * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ] + * field-vchar = VCHAR / obs-text + * VCHAR = %x21-7E + * obs-text = %x80-FF + * obs-fold = CRLF 1*( SP / HTAB ) + */ + private function assertValue($value) + { + // The regular expression intentionally does not support the obs-fold production, because as + // per RFC 7230#3.2.4: + // + // A sender MUST NOT generate a message that includes + // line folding (i.e., that has any field-value that contains a match to + // the obs-fold rule) unless the message is intended for packaging + // within the message/http media type. + // + // Clients must not send a request with line folding and a server sending folded headers is + // likely very rare. Line folding is a fairly obscure feature of HTTP/1.1 and thus not accepting + // folding is not likely to break any legitimate use case. + if (! preg_match('/^[\x20\x09\x21-\x7E\x80-\xFF]*$/', $value)) { + throw new \InvalidArgumentException(sprintf('"%s" is not valid header value', $value)); + } } } diff --git a/common/vendor/guzzlehttp/psr7/src/MimeType.php b/common/vendor/guzzlehttp/psr7/src/MimeType.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/MultipartStream.php b/common/vendor/guzzlehttp/psr7/src/MultipartStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/NoSeekStream.php b/common/vendor/guzzlehttp/psr7/src/NoSeekStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/PumpStream.php b/common/vendor/guzzlehttp/psr7/src/PumpStream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Query.php b/common/vendor/guzzlehttp/psr7/src/Query.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Request.php b/common/vendor/guzzlehttp/psr7/src/Request.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Response.php b/common/vendor/guzzlehttp/psr7/src/Response.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Rfc7230.php b/common/vendor/guzzlehttp/psr7/src/Rfc7230.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/ServerRequest.php b/common/vendor/guzzlehttp/psr7/src/ServerRequest.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Stream.php b/common/vendor/guzzlehttp/psr7/src/Stream.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/StreamDecoratorTrait.php b/common/vendor/guzzlehttp/psr7/src/StreamDecoratorTrait.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/StreamWrapper.php b/common/vendor/guzzlehttp/psr7/src/StreamWrapper.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/UploadedFile.php b/common/vendor/guzzlehttp/psr7/src/UploadedFile.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Uri.php b/common/vendor/guzzlehttp/psr7/src/Uri.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/UriComparator.php b/common/vendor/guzzlehttp/psr7/src/UriComparator.php new file mode 100755 index 00000000..ccf51ffb --- /dev/null +++ b/common/vendor/guzzlehttp/psr7/src/UriComparator.php @@ -0,0 +1,55 @@ +getHost(), $modified->getHost()) !== 0) { + return true; + } + + if ($original->getScheme() !== $modified->getScheme()) { + return true; + } + + if (self::computePort($original) !== self::computePort($modified)) { + return true; + } + + return false; + } + + /** + * @return int + */ + private static function computePort(UriInterface $uri) + { + $port = $uri->getPort(); + + if (null !== $port) { + return $port; + } + + return 'https' === $uri->getScheme() ? 443 : 80; + } + + private function __construct() + { + // cannot be instantiated + } +} diff --git a/common/vendor/guzzlehttp/psr7/src/UriNormalizer.php b/common/vendor/guzzlehttp/psr7/src/UriNormalizer.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/UriResolver.php b/common/vendor/guzzlehttp/psr7/src/UriResolver.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/Utils.php b/common/vendor/guzzlehttp/psr7/src/Utils.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/functions.php b/common/vendor/guzzlehttp/psr7/src/functions.php old mode 100644 new mode 100755 diff --git a/common/vendor/guzzlehttp/psr7/src/functions_include.php b/common/vendor/guzzlehttp/psr7/src/functions_include.php old mode 100644 new mode 100755 diff --git a/common/vendor/lcobucci/jwt/LICENSE b/common/vendor/lcobucci/jwt/LICENSE new file mode 100755 index 00000000..8721a7a5 --- /dev/null +++ b/common/vendor/lcobucci/jwt/LICENSE @@ -0,0 +1,27 @@ +Copyright (c) 2014-2015, Luís Otávio Cobucci Oblonczyk +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the {organization} nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/common/vendor/lcobucci/jwt/compat/class-aliases.php b/common/vendor/lcobucci/jwt/compat/class-aliases.php new file mode 100755 index 00000000..004f66c6 --- /dev/null +++ b/common/vendor/lcobucci/jwt/compat/class-aliases.php @@ -0,0 +1,4 @@ +now = $now; + } + + /** @return self */ + public static function fromUTC() + { + return new self(new DateTimeImmutable('now', new DateTimeZone('UTC'))); + } + + public function setTo(DateTimeImmutable $now) + { + $this->now = $now; + } + + public function now() + { + return $this->now; + } + } + + final class SystemClock implements Clock + { + /** @var DateTimeZone */ + private $timezone; + + public function __construct(DateTimeZone $timezone) + { + $this->timezone = $timezone; + } + + /** @return self */ + public static function fromUTC() + { + return new self(new DateTimeZone('UTC')); + } + + /** @return self */ + public static function fromSystemTimezone() + { + return new self(new DateTimeZone(date_default_timezone_get())); + } + + public function now() + { + return new DateTimeImmutable('now', $this->timezone); + } + } +} diff --git a/common/vendor/lcobucci/jwt/composer.json b/common/vendor/lcobucci/jwt/composer.json new file mode 100755 index 00000000..b3298d86 --- /dev/null +++ b/common/vendor/lcobucci/jwt/composer.json @@ -0,0 +1,57 @@ +{ + "name": "lcobucci/jwt", + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "type": "library", + "authors": [ + { + "name": "Luís Otávio Cobucci Oblonczyk", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "keywords": [ + "JWT", + "JWS" + ], + "license": [ + "BSD-3-Clause" + ], + "require": { + "php": "^5.6 || ^7.0", + "ext-mbstring": "*", + "ext-openssl": "*" + }, + "require-dev": { + "phpunit/phpunit": "^5.7 || ^7.3", + "squizlabs/php_codesniffer": "~2.3", + "phpmd/phpmd": "~2.2", + "phpunit/php-invoker": "~1.1", + "mikey179/vfsstream": "~1.5" + }, + "autoload": { + "psr-4": { + "Lcobucci\\JWT\\": "src" + }, + "files": [ + "compat/class-aliases.php", + "compat/json-exception-polyfill.php", + "compat/lcobucci-clock-polyfill.php" + ] + }, + "autoload-dev": { + "psr-4": { + "Lcobucci\\JWT\\": [ + "test/unit", + "test/functional" + ] + } + }, + "suggest": { + "lcobucci/clock": "*" + }, + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/Builder.php b/common/vendor/lcobucci/jwt/src/Builder.php new file mode 100755 index 00000000..0dafec6c --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Builder.php @@ -0,0 +1,592 @@ + + * @since 0.1.0 + */ +class Builder +{ + /** + * The token header + * + * @var array + */ + private $headers = ['typ'=> 'JWT', 'alg' => 'none']; + + /** + * The token claim set + * + * @var array + */ + private $claims = []; + + /** + * The data encoder + * + * @var Encoder + */ + private $encoder; + + /** + * The factory of claims + * + * @var ClaimFactory + */ + private $claimFactory; + + /** + * @var Signer|null + */ + private $signer; + + /** + * @var Key|null + */ + private $key; + + /** + * Initializes a new builder + * + * @param Encoder $encoder + * @param ClaimFactory $claimFactory + */ + public function __construct( + Encoder $encoder = null, + ClaimFactory $claimFactory = null + ) { + $this->encoder = $encoder ?: new Encoder(); + $this->claimFactory = $claimFactory ?: new ClaimFactory(); + } + + /** + * Configures the audience + * + * @deprecated This method has been wrongly added and doesn't exist on v4 + * @see Builder::permittedFor() + * + * @param string $audience + * @param bool $replicateAsHeader + * + * @return Builder + */ + public function canOnlyBeUsedBy($audience, $replicateAsHeader = false) + { + return $this->permittedFor($audience, $replicateAsHeader); + } + + /** + * Configures the audience + * + * @param list $audiences A list of audiences and, optionally, the instruction to replicate as header + * + * @return Builder + */ + public function permittedFor(...$audiences) + { + $claim = RegisteredClaims::AUDIENCE; + + $replicateAsHeader = false; + + if ($audiences !== [] && is_bool($audiences[count($audiences) - 1])) { + $replicateAsHeader = array_pop($audiences); + } + + $audiences = array_filter($audiences, 'is_string'); + + $configured = array_key_exists($claim, $this->claims) ? $this->claims[$claim] : []; + $toAppend = array_diff($audiences, $configured); + + return $this->setRegisteredClaim($claim, array_merge($configured, $toAppend), $replicateAsHeader); + } + + /** + * Configures the audience + * + * @deprecated This method will be removed on v4 + * @see Builder::permittedFor() + * + * @param string $audience + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function setAudience($audience, $replicateAsHeader = false) + { + return $this->permittedFor($audience, $replicateAsHeader); + } + + /** + * Configures the expiration time + * + * @param int|DateTimeImmutable $expiration + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function expiresAt($expiration, $replicateAsHeader = false) + { + return $this->setRegisteredClaim('exp', $this->convertToDate($expiration), $replicateAsHeader); + } + + /** + * @param int|DateTimeImmutable $value + * + * @return DateTimeImmutable + */ + private function convertToDate($value) + { + if (! $value instanceof DateTimeImmutable) { + trigger_error('Using integers for registered date claims is deprecated, please use DateTimeImmutable objects instead.', E_USER_DEPRECATED); + + return new DateTimeImmutable('@' . $value); + } + + return $value; + } + + /** + * Configures the expiration time + * + * @deprecated This method will be removed on v4 + * @see Builder::expiresAt() + * + * @param int|DateTimeImmutable $expiration + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function setExpiration($expiration, $replicateAsHeader = false) + { + return $this->expiresAt($expiration, $replicateAsHeader); + } + + /** + * Configures the token id + * + * @param string $id + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function identifiedBy($id, $replicateAsHeader = false) + { + return $this->setRegisteredClaim('jti', (string) $id, $replicateAsHeader); + } + + /** + * Configures the token id + * + * @deprecated This method will be removed on v4 + * @see Builder::identifiedBy() + * + * @param string $id + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function setId($id, $replicateAsHeader = false) + { + return $this->identifiedBy($id, $replicateAsHeader); + } + + /** + * Configures the time that the token was issued + * + * @param int|DateTimeImmutable $issuedAt + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function issuedAt($issuedAt, $replicateAsHeader = false) + { + return $this->setRegisteredClaim('iat', $this->convertToDate($issuedAt), $replicateAsHeader); + } + + /** + * Configures the time that the token was issued + * + * @deprecated This method will be removed on v4 + * @see Builder::issuedAt() + * + * @param int|DateTimeImmutable $issuedAt + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function setIssuedAt($issuedAt, $replicateAsHeader = false) + { + return $this->issuedAt($issuedAt, $replicateAsHeader); + } + + /** + * Configures the issuer + * + * @param string $issuer + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function issuedBy($issuer, $replicateAsHeader = false) + { + return $this->setRegisteredClaim('iss', (string) $issuer, $replicateAsHeader); + } + + /** + * Configures the issuer + * + * @deprecated This method will be removed on v4 + * @see Builder::issuedBy() + * + * @param string $issuer + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function setIssuer($issuer, $replicateAsHeader = false) + { + return $this->issuedBy($issuer, $replicateAsHeader); + } + + /** + * Configures the time before which the token cannot be accepted + * + * @param int|DateTimeImmutable $notBefore + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function canOnlyBeUsedAfter($notBefore, $replicateAsHeader = false) + { + return $this->setRegisteredClaim('nbf', $this->convertToDate($notBefore), $replicateAsHeader); + } + + /** + * Configures the time before which the token cannot be accepted + * + * @deprecated This method will be removed on v4 + * @see Builder::canOnlyBeUsedAfter() + * + * @param int|DateTimeImmutable $notBefore + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function setNotBefore($notBefore, $replicateAsHeader = false) + { + return $this->canOnlyBeUsedAfter($notBefore, $replicateAsHeader); + } + + /** + * Configures the subject + * + * @param string $subject + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function relatedTo($subject, $replicateAsHeader = false) + { + return $this->setRegisteredClaim('sub', (string) $subject, $replicateAsHeader); + } + + /** + * Configures the subject + * + * @deprecated This method will be removed on v4 + * @see Builder::relatedTo() + * + * @param string $subject + * @param boolean $replicateAsHeader + * + * @return Builder + */ + public function setSubject($subject, $replicateAsHeader = false) + { + return $this->relatedTo($subject, $replicateAsHeader); + } + + /** + * Configures a registered claim + * + * @param string $name + * @param mixed $value + * @param boolean $replicate + * + * @return Builder + */ + protected function setRegisteredClaim($name, $value, $replicate) + { + $this->configureClaim($name, $value); + + if ($replicate) { + trigger_error('Replicating claims as headers is deprecated and will removed from v4.0. Please manually set the header if you need it replicated.', E_USER_DEPRECATED); + + $this->headers[$name] = $value; + } + + return $this; + } + + /** + * Configures a header item + * + * @param string $name + * @param mixed $value + * + * @return Builder + */ + public function withHeader($name, $value) + { + $this->headers[(string) $name] = $value; + + return $this; + } + + /** + * Configures a header item + * + * @deprecated This method will be removed on v4 + * @see Builder::withHeader() + * + * @param string $name + * @param mixed $value + * + * @return Builder + */ + public function setHeader($name, $value) + { + return $this->withHeader($name, $value); + } + + /** + * Configures a claim item + * + * @deprecated This method has been wrongly added and doesn't exist on v4 + * @see Builder::withClaim() + * + * @param string $name + * @param mixed $value + * + * @return Builder + */ + public function with($name, $value) + { + return $this->withClaim($name, $value); + } + + /** + * @param string $name + * @param mixed $value + * + * @return Builder + */ + private function configureClaim($name, $value) + { + $this->claims[(string) $name] = $value; + + return $this; + } + + /** + * Configures a claim item + * + * @param string $name + * @param mixed $value + * + * @return Builder + * + * @throws RegisteredClaimGiven + */ + public function withClaim($name, $value) + { + if (in_array($name, RegisteredClaims::ALL, true)) { + trigger_error('The use of the method "withClaim" is deprecated for registered claims. Please use dedicated method instead.', E_USER_DEPRECATED); + } + + return $this->forwardCallToCorrectClaimMethod($name, $value); + } + + private function forwardCallToCorrectClaimMethod($name, $value) + { + switch ($name) { + case RegisteredClaims::ID: + return $this->identifiedBy($value); + case RegisteredClaims::EXPIRATION_TIME: + return $this->expiresAt($value); + case RegisteredClaims::NOT_BEFORE: + return $this->canOnlyBeUsedAfter($value); + case RegisteredClaims::ISSUED_AT: + return $this->issuedAt($value); + case RegisteredClaims::ISSUER: + return $this->issuedBy($value); + case RegisteredClaims::AUDIENCE: + return $this->permittedFor($value); + default: + return $this->configureClaim($name, $value); + } + } + + /** + * Configures a claim item + * + * @deprecated This method will be removed on v4 + * @see Builder::withClaim() + * + * @param string $name + * @param mixed $value + * + * @return Builder + */ + public function set($name, $value) + { + return $this->forwardCallToCorrectClaimMethod($name, $value); + } + + /** + * Signs the data + * + * @deprecated This method will be removed on v4 + * @see Builder::getToken() + * + * @param Signer $signer + * @param Key|string $key + * + * @return Builder + */ + public function sign(Signer $signer, $key) + { + if (! $key instanceof Key) { + trigger_error('Implicit conversion of keys from strings is deprecated. Please use InMemory or LocalFileReference classes.', E_USER_DEPRECATED); + + $key = new Key($key); + } + + $this->signer = $signer; + $this->key = $key; + + return $this; + } + + /** + * Removes the signature from the builder + * + * @deprecated This method will be removed on v4 + * @see Builder::getToken() + * + * @return Builder + */ + public function unsign() + { + $this->signer = null; + $this->key = null; + + return $this; + } + + /** + * Returns the resultant token + * + * @return Token + */ + public function getToken(Signer $signer = null, Key $key = null) + { + if ($signer === null || $key === null) { + trigger_error('Not specifying the signer and key to Builder#getToken() is deprecated. Please move the arguments from Builder#sign() to Builder#getToken().', E_USER_DEPRECATED); + } + + $signer = $signer ?: $this->signer; + $key = $key ?: $this->key; + + if ($signer instanceof Signer) { + $signer->modifyHeader($this->headers); + } + + $headers = new DataSet( + $this->headers, + $this->encoder->base64UrlEncode($this->encoder->jsonEncode($this->convertItems($this->headers))) + ); + + $claims = new DataSet( + $this->claims, + $this->encoder->base64UrlEncode($this->encoder->jsonEncode($this->convertItems($this->claims))) + ); + + return new Token( + $headers, + $claims, + $this->createSignature($headers->toString() . '.' . $claims->toString(), $signer, $key), + ['', ''], + $this->claimFactory + ); + } + + /** + * @param array $items + * + * @return array + */ + private function convertItems(array $items) + { + foreach (RegisteredClaims::DATE_CLAIMS as $name) { + if (! array_key_exists($name, $items) || ! $items[$name] instanceof DateTimeImmutable) { + continue; + } + + $items[$name] = $items[$name]->getTimestamp(); + } + + $audience = RegisteredClaims::AUDIENCE; + + if (array_key_exists($audience, $items) && is_array($items[$audience]) && count($items[$audience]) === 1) { + $items[$audience] = current($items[$audience]); + } + + return $items; + } + + /** + * @param string $payload + * + * @return Signature + */ + private function createSignature($payload, Signer $signer = null, Key $key = null) + { + if ($signer === null || $key === null) { + return Signature::fromEmptyData(); + } + + $hash = $signer->sign($payload, $key)->hash(); + + return new Signature($hash, $this->encoder->base64UrlEncode($hash)); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Claim.php b/common/vendor/lcobucci/jwt/src/Claim.php new file mode 100755 index 00000000..89ba72c8 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Claim.php @@ -0,0 +1,40 @@ + + * @since 2.0.0 + */ +interface Claim extends JsonSerializable +{ + /** + * Returns the claim name + * + * @return string + */ + public function getName(); + + /** + * Returns the claim value + * + * @return mixed + */ + public function getValue(); + + /** + * Returns the string representation of the claim + * + * @return string + */ + public function __toString(); +} diff --git a/common/vendor/lcobucci/jwt/src/Claim/Basic.php b/common/vendor/lcobucci/jwt/src/Claim/Basic.php new file mode 100755 index 00000000..3626d1b7 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Claim/Basic.php @@ -0,0 +1,75 @@ + + * @since 2.0.0 + */ +class Basic implements Claim +{ + /** + * @var string + */ + private $name; + + /** + * @var mixed + */ + private $value; + + /** + * Initializes the claim + * + * @param string $name + * @param mixed $value + */ + public function __construct($name, $value) + { + $this->name = $name; + $this->value = $value; + } + + /** + * {@inheritdoc} + */ + public function getName() + { + return $this->name; + } + + /** + * {@inheritdoc} + */ + public function getValue() + { + return $this->value; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() + { + return $this->value; + } + + /** + * {@inheritdoc} + */ + public function __toString() + { + return (string) $this->value; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Claim/EqualsTo.php b/common/vendor/lcobucci/jwt/src/Claim/EqualsTo.php new file mode 100755 index 00000000..b6cc49b9 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Claim/EqualsTo.php @@ -0,0 +1,34 @@ + + * @since 2.0.0 + */ +class EqualsTo extends Basic implements Claim, Validatable +{ + /** + * {@inheritdoc} + */ + public function validate(ValidationData $data) + { + if ($data->has($this->getName())) { + return $this->getValue() === $data->get($this->getName()); + } + + return true; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Claim/Factory.php b/common/vendor/lcobucci/jwt/src/Claim/Factory.php new file mode 100755 index 00000000..9d7fe661 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Claim/Factory.php @@ -0,0 +1,131 @@ + + * @since 2.0.0 + */ +class Factory +{ + /** + * The list of claim callbacks + * + * @var array + */ + private $callbacks; + + /** + * Initializes the factory, registering the default callbacks + * + * @param array $callbacks + */ + public function __construct(array $callbacks = []) + { + $this->callbacks = array_merge( + [ + 'iat' => [$this, 'createLesserOrEqualsTo'], + 'nbf' => [$this, 'createLesserOrEqualsTo'], + 'exp' => [$this, 'createGreaterOrEqualsTo'], + 'iss' => [$this, 'createEqualsTo'], + 'aud' => [$this, 'createEqualsTo'], + 'sub' => [$this, 'createEqualsTo'], + 'jti' => [$this, 'createEqualsTo'] + ], + $callbacks + ); + } + + /** + * Create a new claim + * + * @param string $name + * @param mixed $value + * + * @return Claim + */ + public function create($name, $value) + { + if ($value instanceof DateTimeImmutable && in_array($name, RegisteredClaims::DATE_CLAIMS, true)) { + $value = $value->getTimestamp(); + } + + if ($name === RegisteredClaims::AUDIENCE && is_array($value)) { + $value = current($value); + } + + if (!empty($this->callbacks[$name])) { + return call_user_func($this->callbacks[$name], $name, $value); + } + + return $this->createBasic($name, $value); + } + + /** + * Creates a claim that can be compared (greator or equals) + * + * @param string $name + * @param mixed $value + * + * @return GreaterOrEqualsTo + */ + private function createGreaterOrEqualsTo($name, $value) + { + return new GreaterOrEqualsTo($name, $value); + } + + /** + * Creates a claim that can be compared (greator or equals) + * + * @param string $name + * @param mixed $value + * + * @return LesserOrEqualsTo + */ + private function createLesserOrEqualsTo($name, $value) + { + return new LesserOrEqualsTo($name, $value); + } + + /** + * Creates a claim that can be compared (equals) + * + * @param string $name + * @param mixed $value + * + * @return EqualsTo + */ + private function createEqualsTo($name, $value) + { + return new EqualsTo($name, $value); + } + + /** + * Creates a basic claim + * + * @param string $name + * @param mixed $value + * + * @return Basic + */ + private function createBasic($name, $value) + { + return new Basic($name, $value); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Claim/GreaterOrEqualsTo.php b/common/vendor/lcobucci/jwt/src/Claim/GreaterOrEqualsTo.php new file mode 100755 index 00000000..550e21e0 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Claim/GreaterOrEqualsTo.php @@ -0,0 +1,34 @@ + + * @since 2.0.0 + */ +class GreaterOrEqualsTo extends Basic implements Claim, Validatable +{ + /** + * {@inheritdoc} + */ + public function validate(ValidationData $data) + { + if ($data->has($this->getName())) { + return $this->getValue() >= $data->get($this->getName()); + } + + return true; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Claim/LesserOrEqualsTo.php b/common/vendor/lcobucci/jwt/src/Claim/LesserOrEqualsTo.php new file mode 100755 index 00000000..962edc89 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Claim/LesserOrEqualsTo.php @@ -0,0 +1,34 @@ + + * @since 2.0.0 + */ +class LesserOrEqualsTo extends Basic implements Claim, Validatable +{ + /** + * {@inheritdoc} + */ + public function validate(ValidationData $data) + { + if ($data->has($this->getName())) { + return $this->getValue() <= $data->get($this->getName()); + } + + return true; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Claim/Validatable.php b/common/vendor/lcobucci/jwt/src/Claim/Validatable.php new file mode 100755 index 00000000..63a27744 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Claim/Validatable.php @@ -0,0 +1,30 @@ + + * @since 2.0.0 + */ +interface Validatable +{ + /** + * Returns if claim is valid according with given data + * + * @param ValidationData $data + * + * @return boolean + */ + public function validate(ValidationData $data); +} diff --git a/common/vendor/lcobucci/jwt/src/Configuration.php b/common/vendor/lcobucci/jwt/src/Configuration.php new file mode 100755 index 00000000..3efa716a --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Configuration.php @@ -0,0 +1,178 @@ +signer = $signer; + $this->signingKey = $signingKey; + $this->verificationKey = $verificationKey; + $this->parser = new Parser($decoder ?: new Decoder()); + $this->validator = new Validation\Validator(); + + $this->builderFactory = static function () use ($encoder) { + return new Builder($encoder ?: new Encoder()); + }; + } + + /** @return self */ + public static function forAsymmetricSigner( + Signer $signer, + Key $signingKey, + Key $verificationKey, + Encoder $encoder = null, + Decoder $decoder = null + ) { + return new self( + $signer, + $signingKey, + $verificationKey, + $encoder, + $decoder + ); + } + + /** @return self */ + public static function forSymmetricSigner( + Signer $signer, + Key $key, + Encoder $encoder = null, + Decoder $decoder = null + ) { + return new self( + $signer, + $key, + $key, + $encoder, + $decoder + ); + } + + /** @return self */ + public static function forUnsecuredSigner( + Encoder $encoder = null, + Decoder $decoder = null + ) { + $key = InMemory::plainText(''); + + return new self( + new None(), + $key, + $key, + $encoder, + $decoder + ); + } + + /** @param callable(): Builder $builderFactory */ + public function setBuilderFactory(callable $builderFactory) + { + if (! $builderFactory instanceof Closure) { + $builderFactory = static function() use ($builderFactory) { + return $builderFactory(); + }; + } + $this->builderFactory = $builderFactory; + } + + /** @return Builder */ + public function builder() + { + $factory = $this->builderFactory; + + return $factory(); + } + + /** @return Parser */ + public function parser() + { + return $this->parser; + } + + public function setParser(Parser $parser) + { + $this->parser = $parser; + } + + /** @return Signer */ + public function signer() + { + return $this->signer; + } + + /** @return Key */ + public function signingKey() + { + return $this->signingKey; + } + + /** @return Key */ + public function verificationKey() + { + return $this->verificationKey; + } + + /** @return Validator */ + public function validator() + { + return $this->validator; + } + + public function setValidator(Validator $validator) + { + $this->validator = $validator; + } + + /** @return Constraint[] */ + public function validationConstraints() + { + return $this->validationConstraints; + } + + public function setValidationConstraints(Constraint ...$validationConstraints) + { + $this->validationConstraints = $validationConstraints; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Encoding/CannotDecodeContent.php b/common/vendor/lcobucci/jwt/src/Encoding/CannotDecodeContent.php new file mode 100755 index 00000000..ab1b0b82 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Encoding/CannotDecodeContent.php @@ -0,0 +1,26 @@ + + * @since 0.1.0 + */ +class Parser +{ + /** + * The data decoder + * + * @var Decoder + */ + private $decoder; + + /** + * Initializes the object + * + * @param Decoder $decoder + */ + public function __construct(Decoder $decoder = null) + { + $this->decoder = $decoder ?: new Decoder(); + } + + /** + * Parses the JWT and returns a token + * + * @param string $jwt + * + * @return Token + * + * @throws InvalidArgumentException When JWT is not a string or is invalid. + * @throws RuntimeException When something goes wrong while decoding + */ + public function parse($jwt) + { + $data = $this->splitJwt($jwt); + $header = $this->parseHeader($data[0]); + $claims = $this->parseClaims($data[1]); + $signature = $this->parseSignature($header, $data[2]); + + foreach ($claims as $name => $value) { + if (isset($header[$name])) { + $header[$name] = $value; + } + } + + return new Token( + new DataSet($header, $data[0]), + new DataSet($claims, $data[1]), + $signature, + ['', ''] + ); + } + + /** + * Splits the JWT string into an array + * + * @param string $jwt + * + * @return array + * + * @throws InvalidArgumentException When JWT is not a string or is invalid + */ + protected function splitJwt($jwt) + { + if (!is_string($jwt)) { + throw InvalidTokenStructure::missingOrNotEnoughSeparators(); + } + + $data = explode('.', $jwt); + + if (count($data) != 3) { + throw InvalidTokenStructure::missingOrNotEnoughSeparators(); + } + + return $data; + } + + /** + * Parses the header from a string + * + * @param string $data + * + * @return array + * + * @throws UnsupportedHeaderFound When an invalid header is informed + */ + protected function parseHeader($data) + { + $header = (array) $this->decoder->jsonDecode($this->decoder->base64UrlDecode($data)); + + if (isset($header['enc'])) { + throw UnsupportedHeaderFound::encryption(); + } + + return $this->convertItems($header); + } + + /** + * Parses the claim set from a string + * + * @param string $data + * + * @return array + */ + protected function parseClaims($data) + { + $claims = (array) $this->decoder->jsonDecode($this->decoder->base64UrlDecode($data)); + + return $this->convertItems($claims); + } + + /** + * @param array $items + * + * @return array + */ + private function convertItems(array $items) + { + foreach (RegisteredClaims::DATE_CLAIMS as $name) { + if (! array_key_exists($name, $items)) { + continue; + } + + $items[$name] = new DateTimeImmutable('@' . ((int) $items[$name])); + } + + if (array_key_exists(RegisteredClaims::AUDIENCE, $items) && ! is_array($items[RegisteredClaims::AUDIENCE])) { + $items[RegisteredClaims::AUDIENCE] = [$items[RegisteredClaims::AUDIENCE]]; + } + + return $items; + } + + /** + * Returns the signature from given data + * + * @param array $header + * @param string $data + * + * @return Signature + */ + protected function parseSignature(array $header, $data) + { + if ($data == '' || !isset($header['alg']) || $header['alg'] == 'none') { + return Signature::fromEmptyData(); + } + + $hash = $this->decoder->base64UrlDecode($data); + + return new Signature($hash, $data); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Parsing/Decoder.php b/common/vendor/lcobucci/jwt/src/Parsing/Decoder.php new file mode 100755 index 00000000..95fc71d5 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Parsing/Decoder.php @@ -0,0 +1,70 @@ + + * @since 0.1.0 + * + * @link http://tools.ietf.org/html/rfc4648#section-5 + */ +class Decoder +{ + /** + * Decodes from JSON, validating the errors (will return an associative array + * instead of objects) + * + * @param string $json + * @return mixed + * + * @throws RuntimeException When something goes wrong while decoding + */ + public function jsonDecode($json) + { + if (PHP_VERSION_ID < 70300) { + $data = json_decode($json); + + if (json_last_error() != JSON_ERROR_NONE) { + throw CannotDecodeContent::jsonIssues(new JsonException(json_last_error_msg())); + } + + return $data; + } + + try { + return json_decode($json, false, 512, JSON_THROW_ON_ERROR); + } catch (JsonException $exception) { + throw CannotDecodeContent::jsonIssues($exception); + } + } + + /** + * Decodes from base64url + * + * @param string $data + * @return string + */ + public function base64UrlDecode($data) + { + if ($remainder = strlen($data) % 4) { + $data .= str_repeat('=', 4 - $remainder); + } + + return base64_decode(strtr($data, '-_', '+/')); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Parsing/Encoder.php b/common/vendor/lcobucci/jwt/src/Parsing/Encoder.php new file mode 100755 index 00000000..369db80a --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Parsing/Encoder.php @@ -0,0 +1,65 @@ + + * @since 0.1.0 + * + * @link http://tools.ietf.org/html/rfc4648#section-5 + */ +class Encoder +{ + /** + * Encodes to JSON, validating the errors + * + * @param mixed $data + * @return string + * + * @throws RuntimeException When something goes wrong while encoding + */ + public function jsonEncode($data) + { + if (PHP_VERSION_ID < 70300) { + $json = json_encode($data); + + if (json_last_error() != JSON_ERROR_NONE) { + throw CannotEncodeContent::jsonIssues(new JsonException(json_last_error_msg())); + } + + return $json; + } + + try { + return json_encode($data, JSON_THROW_ON_ERROR); + } catch (JsonException $exception) { + throw CannotEncodeContent::jsonIssues($exception); + } + } + + /** + * Encodes to base64url + * + * @param string $data + * @return string + */ + public function base64UrlEncode($data) + { + return str_replace('=', '', strtr(base64_encode($data), '+/', '-_')); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signature.php b/common/vendor/lcobucci/jwt/src/Signature.php new file mode 100755 index 00000000..9fd96ef4 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signature.php @@ -0,0 +1,87 @@ + + * @since 0.1.0 + */ +class Signature +{ + /** + * The resultant hash + * + * @var string + */ + protected $hash; + + /** @var string */ + private $encoded; + + /** + * Initializes the object + * + * @param string $hash + * @param string $encoded + */ + public function __construct($hash, $encoded = '') + { + $this->hash = $hash; + $this->encoded = $encoded; + } + + /** @return self */ + public static function fromEmptyData() + { + return new self('', ''); + } + + /** + * Verifies if the current hash matches with with the result of the creation of + * a new signature with given data + * + * @param Signer $signer + * @param string $payload + * @param Key|string $key + * + * @return boolean + */ + public function verify(Signer $signer, $payload, $key) + { + return $signer->verify($this->hash, $payload, $key); + } + + /** + * Returns the current hash as a string representation of the signature + * + * @deprecated This method has been removed from the public API in v4 + * @see Signature::hash() + * + * @return string + */ + public function __toString() + { + return $this->hash; + } + + /** @return string */ + public function hash() + { + return $this->hash; + } + + /** @return string */ + public function toString() + { + return $this->encoded; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer.php b/common/vendor/lcobucci/jwt/src/Signer.php new file mode 100755 index 00000000..9b2cd477 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer.php @@ -0,0 +1,59 @@ + + * @since 0.1.0 + */ +interface Signer +{ + /** + * Returns the algorithm id + * + * @return string + */ + public function getAlgorithmId(); + + /** + * Apply changes on headers according with algorithm + * + * @param array $headers + */ + public function modifyHeader(array &$headers); + + /** + * Returns a signature for given data + * + * @param string $payload + * @param Key|string $key + * + * @return Signature + * + * @throws InvalidArgumentException When given key is invalid + */ + public function sign($payload, $key); + + /** + * Returns if the expected hash matches with the data and key + * + * @param string $expected + * @param string $payload + * @param Key|string $key + * + * @return boolean + * + * @throws InvalidArgumentException When given key is invalid + */ + public function verify($expected, $payload, $key); +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/BaseSigner.php b/common/vendor/lcobucci/jwt/src/Signer/BaseSigner.php new file mode 100755 index 00000000..34f47c9f --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/BaseSigner.php @@ -0,0 +1,89 @@ + + * @since 0.1.0 + */ +abstract class BaseSigner implements Signer +{ + /** + * {@inheritdoc} + */ + public function modifyHeader(array &$headers) + { + $headers['alg'] = $this->getAlgorithmId(); + } + + /** + * {@inheritdoc} + */ + public function sign($payload, $key) + { + return new Signature($this->createHash($payload, $this->getKey($key))); + } + + /** + * {@inheritdoc} + */ + public function verify($expected, $payload, $key) + { + return $this->doVerify($expected, $payload, $this->getKey($key)); + } + + /** + * @param Key|string $key + * + * @return Key + */ + private function getKey($key) + { + if (is_string($key)) { + trigger_error('Implicit conversion of keys from strings is deprecated. Please use InMemory or LocalFileReference classes.', E_USER_DEPRECATED); + + $key = new Key($key); + } + + return $key; + } + + /** + * Creates a hash with the given data + * + * @internal + * + * @param string $payload + * @param Key $key + * + * @return string + */ + abstract public function createHash($payload, Key $key); + + /** + * Performs the signature verification + * + * @internal + * + * @param string $expected + * @param string $payload + * @param Key $key + * + * @return boolean + */ + abstract public function doVerify($expected, $payload, Key $key); +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/CannotSignPayload.php b/common/vendor/lcobucci/jwt/src/Signer/CannotSignPayload.php new file mode 100755 index 00000000..59ce8fc2 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/CannotSignPayload.php @@ -0,0 +1,19 @@ + + * @since 2.1.0 + */ +abstract class Ecdsa extends OpenSSL +{ + /** + * @var SignatureConverter + */ + private $converter; + + public function __construct(SignatureConverter $converter = null) + { + $this->converter = $converter ?: new MultibyteStringConverter(); + } + + /** + * {@inheritdoc} + */ + public function createHash($payload, Key $key) + { + return $this->converter->fromAsn1( + parent::createHash($payload, $key), + $this->getKeyLength() + ); + } + + /** + * {@inheritdoc} + */ + public function doVerify($expected, $payload, Key $key) + { + return parent::doVerify( + $this->converter->toAsn1($expected, $this->getKeyLength()), + $payload, + $key + ); + } + + /** + * Returns the length of each point in the signature, so that we can calculate and verify R and S points properly + * + * @internal + */ + abstract public function getKeyLength(); + + /** + * {@inheritdoc} + */ + final public function getKeyType() + { + return OPENSSL_KEYTYPE_EC; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/ConversionFailed.php b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/ConversionFailed.php new file mode 100755 index 00000000..6f38cfcb --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/ConversionFailed.php @@ -0,0 +1,27 @@ + self::ASN1_MAX_SINGLE_BYTE ? self::ASN1_LENGTH_2BYTES : ''; + + $asn1 = hex2bin( + self::ASN1_SEQUENCE + . $lengthPrefix . dechex($totalLength) + . self::ASN1_INTEGER . dechex($lengthR) . $pointR + . self::ASN1_INTEGER . dechex($lengthS) . $pointS + ); + + return $asn1; + } + + private static function octetLength($data) + { + return (int) (mb_strlen($data, '8bit') / self::BYTE_SIZE); + } + + private static function preparePositiveInteger($data) + { + if (mb_substr($data, 0, self::BYTE_SIZE, '8bit') > self::ASN1_BIG_INTEGER_LIMIT) { + return self::ASN1_NEGATIVE_INTEGER . $data; + } + + while (mb_substr($data, 0, self::BYTE_SIZE, '8bit') === self::ASN1_NEGATIVE_INTEGER + && mb_substr($data, 2, self::BYTE_SIZE, '8bit') <= self::ASN1_BIG_INTEGER_LIMIT) { + $data = mb_substr($data, 2, null, '8bit'); + } + + return $data; + } + + public function fromAsn1($signature, $length) + { + $message = bin2hex($signature); + $position = 0; + + if (self::readAsn1Content($message, $position, self::BYTE_SIZE) !== self::ASN1_SEQUENCE) { + throw ConversionFailed::incorrectStartSequence(); + } + + if (self::readAsn1Content($message, $position, self::BYTE_SIZE) === self::ASN1_LENGTH_2BYTES) { + $position += self::BYTE_SIZE; + } + + $pointR = self::retrievePositiveInteger(self::readAsn1Integer($message, $position)); + $pointS = self::retrievePositiveInteger(self::readAsn1Integer($message, $position)); + + $points = hex2bin(str_pad($pointR, $length, '0', STR_PAD_LEFT) . str_pad($pointS, $length, '0', STR_PAD_LEFT)); + + return $points; + } + + private static function readAsn1Content($message, &$position, $length) + { + $content = mb_substr($message, $position, $length, '8bit'); + $position += $length; + + return $content; + } + + private static function readAsn1Integer($message, &$position) + { + if (self::readAsn1Content($message, $position, self::BYTE_SIZE) !== self::ASN1_INTEGER) { + throw ConversionFailed::integerExpected(); + } + + $length = (int) hexdec(self::readAsn1Content($message, $position, self::BYTE_SIZE)); + + return self::readAsn1Content($message, $position, $length * self::BYTE_SIZE); + } + + private static function retrievePositiveInteger($data) + { + while (mb_substr($data, 0, self::BYTE_SIZE, '8bit') === self::ASN1_NEGATIVE_INTEGER + && mb_substr($data, 2, self::BYTE_SIZE, '8bit') > self::ASN1_BIG_INTEGER_LIMIT) { + $data = mb_substr($data, 2, null, '8bit'); + } + + return $data; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha256.php b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha256.php new file mode 100755 index 00000000..16a010ff --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha256.php @@ -0,0 +1,43 @@ + + * @since 2.1.0 + */ +class Sha256 extends Ecdsa +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'ES256'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return 'sha256'; + } + + /** + * {@inheritdoc} + */ + public function getKeyLength() + { + return 64; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha384.php b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha384.php new file mode 100755 index 00000000..ee56c244 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha384.php @@ -0,0 +1,43 @@ + + * @since 2.1.0 + */ +class Sha384 extends Ecdsa +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'ES384'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return 'sha384'; + } + + /** + * {@inheritdoc} + */ + public function getKeyLength() + { + return 96; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha512.php b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha512.php new file mode 100755 index 00000000..e0bf4d60 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/Sha512.php @@ -0,0 +1,43 @@ + + * @since 2.1.0 + */ +class Sha512 extends Ecdsa +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'ES512'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return 'sha512'; + } + + /** + * {@inheritdoc} + */ + public function getKeyLength() + { + return 132; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/SignatureConverter.php b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/SignatureConverter.php new file mode 100755 index 00000000..b411dd35 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Ecdsa/SignatureConverter.php @@ -0,0 +1,38 @@ + + * @since 0.1.0 + */ +abstract class Hmac extends BaseSigner +{ + /** + * {@inheritdoc} + */ + public function createHash($payload, Key $key) + { + return hash_hmac($this->getAlgorithm(), $payload, $key->getContent(), true); + } + + /** + * {@inheritdoc} + */ + public function doVerify($expected, $payload, Key $key) + { + if (!is_string($expected)) { + return false; + } + + return hash_equals($expected, $this->createHash($payload, $key)); + } + + /** + * Returns the algorithm name + * + * @internal + * + * @return string + */ + abstract public function getAlgorithm(); +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha256.php b/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha256.php new file mode 100755 index 00000000..49d10b3b --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha256.php @@ -0,0 +1,35 @@ + + * @since 0.1.0 + */ +class Sha256 extends Hmac +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'HS256'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return 'sha256'; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha384.php b/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha384.php new file mode 100755 index 00000000..8618801a --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha384.php @@ -0,0 +1,35 @@ + + * @since 0.1.0 + */ +class Sha384 extends Hmac +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'HS384'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return 'sha384'; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha512.php b/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha512.php new file mode 100755 index 00000000..8ae19d8f --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Hmac/Sha512.php @@ -0,0 +1,35 @@ + + * @since 0.1.0 + */ +class Sha512 extends Hmac +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'HS512'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return 'sha512'; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/InvalidKeyProvided.php b/common/vendor/lcobucci/jwt/src/Signer/InvalidKeyProvided.php new file mode 100755 index 00000000..9da7d8dc --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/InvalidKeyProvided.php @@ -0,0 +1,25 @@ + + * @since 3.0.4 + */ +class Key +{ + /** + * @var string + */ + protected $content; + + /** + * @var string + */ + private $passphrase; + + /** + * @param string $content + * @param string $passphrase + */ + public function __construct($content, $passphrase = '') + { + $this->setContent($content); + $this->passphrase = $passphrase; + } + + /** + * @param string $content + * + * @throws InvalidArgumentException + */ + private function setContent($content) + { + if (strpos($content, 'file://') === 0) { + $content = $this->readFile($content); + } + + $this->content = $content; + } + + /** + * @param string $content + * + * @return string + * + * @throws InvalidArgumentException + */ + private function readFile($content) + { + $path = substr($content, 7); + + try { + $file = new SplFileObject($path); + } catch (Exception $exception) { + throw FileCouldNotBeRead::onPath($path, $exception); + } + + $content = ''; + + while (! $file->eof()) { + $content .= $file->fgets(); + } + + return $content; + } + + /** @return string */ + public function contents() + { + return $this->content; + } + + /** @return string */ + public function passphrase() + { + return $this->passphrase; + } + + /** + * @deprecated This method is no longer part of the public interface + * @see Key::contents() + * + * @return string + */ + public function getContent() + { + return $this->content; + } + + /** + * @deprecated This method is no longer part of the public interface + * @see Key::passphrase() + * + * @return string + */ + public function getPassphrase() + { + return $this->passphrase; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Key/FileCouldNotBeRead.php b/common/vendor/lcobucci/jwt/src/Signer/Key/FileCouldNotBeRead.php new file mode 100755 index 00000000..184c368e --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Key/FileCouldNotBeRead.php @@ -0,0 +1,39 @@ + + * @since 2.1.0 + * + * @deprecated Since we've removed OpenSSL from ECDSA there's no reason to use this class + */ +class Keychain +{ + /** + * Returns a private key from file path or content + * + * @param string $key + * @param string $passphrase + * + * @return Key + */ + public function getPrivateKey($key, $passphrase = null) + { + return new Key($key, $passphrase); + } + + /** + * Returns a public key from file path or content + * + * @param string $certificate + * + * @return Key + */ + public function getPublicKey($certificate) + { + return new Key($certificate); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/None.php b/common/vendor/lcobucci/jwt/src/Signer/None.php new file mode 100755 index 00000000..1f35d3d6 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/None.php @@ -0,0 +1,21 @@ +getPrivateKey($key->getContent(), $key->getPassphrase()); + + try { + $signature = ''; + + if (! openssl_sign($payload, $signature, $privateKey, $this->getAlgorithm())) { + throw CannotSignPayload::errorHappened(openssl_error_string()); + } + + return $signature; + } finally { + openssl_free_key($privateKey); + } + } + + /** + * @param string $pem + * @param string $passphrase + * + * @return resource + */ + private function getPrivateKey($pem, $passphrase) + { + $privateKey = openssl_pkey_get_private($pem, $passphrase); + $this->validateKey($privateKey); + + return $privateKey; + } + + /** + * @param $expected + * @param $payload + * @param $key + * @return bool + */ + public function doVerify($expected, $payload, Key $key) + { + $publicKey = $this->getPublicKey($key->getContent()); + $result = openssl_verify($payload, $expected, $publicKey, $this->getAlgorithm()); + openssl_free_key($publicKey); + + return $result === 1; + } + + /** + * @param string $pem + * + * @return resource + */ + private function getPublicKey($pem) + { + $publicKey = openssl_pkey_get_public($pem); + $this->validateKey($publicKey); + + return $publicKey; + } + + /** + * Raises an exception when the key type is not the expected type + * + * @param resource|bool $key + * + * @throws InvalidArgumentException + */ + private function validateKey($key) + { + if (! is_resource($key)) { + throw InvalidKeyProvided::cannotBeParsed(openssl_error_string()); + } + + $details = openssl_pkey_get_details($key); + + if (! isset($details['key']) || $details['type'] !== $this->getKeyType()) { + throw InvalidKeyProvided::incompatibleKey(); + } + } + + /** + * Returns the type of key to be used to create/verify the signature (using OpenSSL constants) + * + * @internal + */ + abstract public function getKeyType(); + + /** + * Returns which algorithm to be used to create/verify the signature (using OpenSSL constants) + * + * @internal + */ + abstract public function getAlgorithm(); +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Rsa.php b/common/vendor/lcobucci/jwt/src/Signer/Rsa.php new file mode 100755 index 00000000..55cc3611 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Rsa.php @@ -0,0 +1,24 @@ + + * @since 2.1.0 + */ +abstract class Rsa extends OpenSSL +{ + final public function getKeyType() + { + return OPENSSL_KEYTYPE_RSA; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha256.php b/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha256.php new file mode 100755 index 00000000..4e873e16 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha256.php @@ -0,0 +1,35 @@ + + * @since 2.1.0 + */ +class Sha256 extends Rsa +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'RS256'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return OPENSSL_ALGO_SHA256; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha384.php b/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha384.php new file mode 100755 index 00000000..c5d26313 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha384.php @@ -0,0 +1,35 @@ + + * @since 2.1.0 + */ +class Sha384 extends Rsa +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'RS384'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return OPENSSL_ALGO_SHA384; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha512.php b/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha512.php new file mode 100755 index 00000000..0d8074b5 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Signer/Rsa/Sha512.php @@ -0,0 +1,35 @@ + + * @since 2.1.0 + */ +class Sha512 extends Rsa +{ + /** + * {@inheritdoc} + */ + public function getAlgorithmId() + { + return 'RS512'; + } + + /** + * {@inheritdoc} + */ + public function getAlgorithm() + { + return OPENSSL_ALGO_SHA512; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Token.php b/common/vendor/lcobucci/jwt/src/Token.php new file mode 100755 index 00000000..02305a7f --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Token.php @@ -0,0 +1,430 @@ + + * @since 0.1.0 + */ +class Token +{ + /** + * The token headers + * + * @var DataSet + */ + private $headers; + + /** + * The token claim set + * + * @var DataSet + */ + private $claims; + + /** + * The token signature + * + * @var Signature + */ + private $signature; + + /** + * @internal This serves just as compatibility layer + * + * @var Factory + */ + private $claimFactory; + + /** + * Initializes the object + * + * @param array|DataSet $headers + * @param array|DataSet $claims + * @param Signature|null $signature + * @param array $payload + * @param Factory|null $claimFactory + */ + public function __construct( + $headers = ['alg' => 'none'], + $claims = [], + Signature $signature = null, + array $payload = ['', ''], + Factory $claimFactory = null + ) { + $this->headers = $this->convertToDataSet($headers, $payload[0]); + $this->claims = $this->convertToDataSet($claims, $payload[1]); + $this->signature = $signature ?: Signature::fromEmptyData(); + $this->claimFactory = $claimFactory ?: new Factory(); + } + + /** + * @param array|DataSet $data + * @param string $payload + */ + private function convertToDataSet($data, $payload) + { + if ($data instanceof DataSet) { + return $data; + } + + return new DataSet($data, $payload); + } + + /** @return DataSet */ + public function headers() + { + return $this->headers; + } + + /** + * Returns the token headers + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::headers() + * + * @return array + */ + public function getHeaders() + { + $items = []; + + foreach ($this->headers->all() as $name => $value) { + if (! in_array($name, RegisteredClaims::ALL, true) || ! $this->claims->has($name)) { + $items[$name] = $value; + continue; + } + + $items[$name] = $this->claimFactory->create($name, $value); + } + + return $items; + } + + /** + * Returns if the header is configured + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::headers() + * @see DataSet::has() + * + * @param string $name + * + * @return boolean + */ + public function hasHeader($name) + { + return $this->headers->has($name); + } + + /** + * Returns the value of a token header + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::headers() + * @see DataSet::has() + * + * @param string $name + * @param mixed $default + * + * @return mixed + * + * @throws OutOfBoundsException + */ + public function getHeader($name, $default = null) + { + if (func_num_args() === 1 && ! $this->headers->has($name)) { + throw new OutOfBoundsException(sprintf('Requested header "%s" is not configured', $name)); + } + + return $this->headers->get($name, $default); + } + + /** @return DataSet */ + public function claims() + { + return $this->claims; + } + + /** + * Returns the token claim set + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::claims() + * + * @return array + */ + public function getClaims() + { + $items = []; + + foreach ($this->claims->all() as $name => $value) { + $items[$name] = $this->claimFactory->create($name, $value); + } + + return $items; + } + + /** + * Returns if the claim is configured + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::claims() + * @see DataSet::has() + * + * @param string $name + * + * @return boolean + */ + public function hasClaim($name) + { + return $this->claims->has($name); + } + + /** + * Returns the value of a token claim + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::claims() + * @see DataSet::get() + * + * @param string $name + * @param mixed $default + * + * @return mixed + * + * @throws OutOfBoundsException + */ + public function getClaim($name, $default = null) + { + if (func_num_args() === 1 && ! $this->claims->has($name)) { + throw new OutOfBoundsException(sprintf('Requested header "%s" is not configured', $name)); + } + + $value = $this->claims->get($name, $default); + + if ($value instanceof DateTimeImmutable && in_array($name, RegisteredClaims::DATE_CLAIMS, true)) { + return $value->getTimestamp(); + } + + if ($name === RegisteredClaims::AUDIENCE && is_array($value)) { + if (count($value) > 1) { + trigger_error('You will only get the first array entry as a string. Use Token::claims()->get() instead.', E_USER_DEPRECATED); + } + return current($value); + } + + return $value; + } + + /** + * Verify if the key matches with the one that created the signature + * + * @deprecated This method has been removed from the interface in v4.0 + * @see \Lcobucci\JWT\Validation\Validator + * + * @param Signer $signer + * @param Key|string $key + * + * @return boolean + */ + public function verify(Signer $signer, $key) + { + if ($this->headers->get('alg') !== $signer->getAlgorithmId()) { + return false; + } + + return $this->signature->verify($signer, $this->getPayload(), $key); + } + + /** + * Validates if the token is valid + * + * @deprecated This method has been removed from the interface in v4.0 + * @see \Lcobucci\JWT\Validation\Validator + * + * @param ValidationData $data + * + * @return boolean + */ + public function validate(ValidationData $data) + { + foreach ($this->getValidatableClaims() as $claim) { + if (!$claim->validate($data)) { + return false; + } + } + + return true; + } + + /** + * Determine if the token is expired. + * + * @param DateTimeInterface|null $now Defaults to the current time. + * + * @return bool + */ + public function isExpired(DateTimeInterface $now = null) + { + if (! $this->claims->has('exp')) { + return false; + } + + if ($now === null) { + trigger_error('Not providing the current time is deprecated. Please pass an instance of DateTimeInterface.', E_USER_DEPRECATED); + } + + $now = $now ?: new DateTimeImmutable(); + + return $now >= $this->claims->get(RegisteredClaims::EXPIRATION_TIME); + } + + /** + * @param string $audience + * + * @return bool + */ + public function isPermittedFor($audience) + { + return in_array($audience, $this->claims->get(RegisteredClaims::AUDIENCE, []), true); + } + + /** + * @param string $id + * + * @return bool + */ + public function isIdentifiedBy($id) + { + return $this->claims->get(RegisteredClaims::ID) === $id; + } + + /** + * @param string $subject + * + * @return bool + */ + public function isRelatedTo($subject) + { + return $this->claims->get(RegisteredClaims::SUBJECT) === $subject; + } + + /** + * @param list $issuers + * + * @return bool + */ + public function hasBeenIssuedBy(...$issuers) + { + return in_array($this->claims->get(RegisteredClaims::ISSUER), $issuers, true); + } + + /** + * @param DateTimeInterface $now + * + * @return bool + */ + public function hasBeenIssuedBefore(DateTimeInterface $now) + { + return $now >= $this->claims->get(RegisteredClaims::ISSUED_AT); + } + + /** + * @param DateTimeInterface $now + * + * @return bool + */ + public function isMinimumTimeBefore(DateTimeInterface $now) + { + return $now >= $this->claims->get(RegisteredClaims::NOT_BEFORE); + } + + /** + * Yields the validatable claims + * + * @return Generator + */ + private function getValidatableClaims() + { + foreach ($this->getClaims() as $claim) { + if ($claim instanceof Validatable) { + yield $claim; + } + } + } + + /** + * Returns the token payload + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::payload() + * + * @return string + */ + public function getPayload() + { + return $this->payload(); + } + + /** + * Returns the token payload + * + * @return string + */ + public function payload() + { + return $this->headers->toString() . '.' . $this->claims->toString(); + } + + /** @return Signature */ + public function signature() + { + return $this->signature; + } + + /** + * Returns an encoded representation of the token + * + * @deprecated This method has been removed from the interface in v4.0 + * @see Token::toString() + * + * @return string + */ + public function __toString() + { + return $this->toString(); + } + + /** @return string */ + public function toString() + { + return $this->headers->toString() . '.' + . $this->claims->toString() . '.' + . $this->signature->toString(); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Token/DataSet.php b/common/vendor/lcobucci/jwt/src/Token/DataSet.php new file mode 100755 index 00000000..696a4e6a --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Token/DataSet.php @@ -0,0 +1,56 @@ + */ + private $data; + /** @var string */ + private $encoded; + + /** + * @param array $data + * @param string $encoded + */ + public function __construct(array $data, $encoded) + { + $this->data = $data; + $this->encoded = $encoded; + } + + /** + * @param string $name + * @param mixed|null $default + * + * @return mixed|null + */ + public function get($name, $default = null) + { + return $this->has($name) ? $this->data[$name] : $default; + } + + /** + * @param string $name + * + * @return bool + */ + public function has($name) + { + return array_key_exists($name, $this->data); + } + + /** @return array */ + public function all() + { + return $this->data; + } + + /** @return string */ + public function toString() + { + return $this->encoded; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Token/InvalidTokenStructure.php b/common/vendor/lcobucci/jwt/src/Token/InvalidTokenStructure.php new file mode 100755 index 00000000..7a97a927 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Token/InvalidTokenStructure.php @@ -0,0 +1,35 @@ +id = $id; + } + + public function assert(Token $token) + { + if (! $token->isIdentifiedBy($this->id)) { + throw new ConstraintViolation( + 'The token is not identified with the expected ID' + ); + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validation/Constraint/IssuedBy.php b/common/vendor/lcobucci/jwt/src/Validation/Constraint/IssuedBy.php new file mode 100755 index 00000000..84219349 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validation/Constraint/IssuedBy.php @@ -0,0 +1,28 @@ + $issuers */ + public function __construct(...$issuers) + { + $this->issuers = $issuers; + } + + public function assert(Token $token) + { + if (! $token->hasBeenIssuedBy(...$this->issuers)) { + throw new ConstraintViolation( + 'The token was not issued by the given issuers' + ); + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validation/Constraint/LeewayCannotBeNegative.php b/common/vendor/lcobucci/jwt/src/Validation/Constraint/LeewayCannotBeNegative.php new file mode 100755 index 00000000..0e20b154 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validation/Constraint/LeewayCannotBeNegative.php @@ -0,0 +1,15 @@ +audience = $audience; + } + + public function assert(Token $token) + { + if (! $token->isPermittedFor($this->audience)) { + throw new ConstraintViolation( + 'The token is not allowed to be used by this audience' + ); + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validation/Constraint/RelatedTo.php b/common/vendor/lcobucci/jwt/src/Validation/Constraint/RelatedTo.php new file mode 100755 index 00000000..61782186 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validation/Constraint/RelatedTo.php @@ -0,0 +1,27 @@ +subject = $subject; + } + + public function assert(Token $token) + { + if (! $token->isRelatedTo($this->subject)) { + throw new ConstraintViolation( + 'The token is not related to the expected subject' + ); + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validation/Constraint/SignedWith.php b/common/vendor/lcobucci/jwt/src/Validation/Constraint/SignedWith.php new file mode 100755 index 00000000..d3675a72 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validation/Constraint/SignedWith.php @@ -0,0 +1,34 @@ +signer = $signer; + $this->key = $key; + } + + public function assert(Token $token) + { + if ($token->headers()->get('alg') !== $this->signer->getAlgorithmId()) { + throw new ConstraintViolation('Token signer mismatch'); + } + + if (! $this->signer->verify((string) $token->signature(), $token->getPayload(), $this->key)) { + throw new ConstraintViolation('Token signature mismatch'); + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validation/Constraint/ValidAt.php b/common/vendor/lcobucci/jwt/src/Validation/Constraint/ValidAt.php new file mode 100755 index 00000000..3190af3e --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validation/Constraint/ValidAt.php @@ -0,0 +1,72 @@ +clock = $clock; + $this->leeway = $this->guardLeeway($leeway); + } + + /** @return DateInterval */ + private function guardLeeway(DateInterval $leeway = null) + { + if ($leeway === null) { + return new DateInterval('PT0S'); + } + + if ($leeway->invert === 1) { + throw LeewayCannotBeNegative::create(); + } + + return $leeway; + } + + public function assert(Token $token) + { + $now = $this->clock->now(); + + $this->assertIssueTime($token, $now->add($this->leeway)); + $this->assertMinimumTime($token, $now->add($this->leeway)); + $this->assertExpiration($token, $now->sub($this->leeway)); + } + + /** @throws ConstraintViolation */ + private function assertExpiration(Token $token, DateTimeInterface $now) + { + if ($token->isExpired($now)) { + throw new ConstraintViolation('The token is expired'); + } + } + + /** @throws ConstraintViolation */ + private function assertMinimumTime(Token $token, DateTimeInterface $now) + { + if (! $token->isMinimumTimeBefore($now)) { + throw new ConstraintViolation('The token cannot be used yet'); + } + } + + /** @throws ConstraintViolation */ + private function assertIssueTime(Token $token, DateTimeInterface $now) + { + if (! $token->hasBeenIssuedBefore($now)) { + throw new ConstraintViolation('The token was issued in the future'); + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validation/ConstraintViolation.php b/common/vendor/lcobucci/jwt/src/Validation/ConstraintViolation.php new file mode 100755 index 00000000..bc50c6bd --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validation/ConstraintViolation.php @@ -0,0 +1,10 @@ +violations = $violations; + + return $exception; + } + + /** + * @param ConstraintViolation[] $violations + * + * @return string + */ + private static function buildMessage(array $violations) + { + $violations = array_map( + static function (ConstraintViolation $violation) { + return '- ' . $violation->getMessage(); + }, + $violations + ); + + $message = "The token violates some mandatory constraints, details:\n"; + $message .= implode("\n", $violations); + + return $message; + } + + /** @return ConstraintViolation[] */ + public function violations() + { + return $this->violations; + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validation/Validator.php b/common/vendor/lcobucci/jwt/src/Validation/Validator.php new file mode 100755 index 00000000..752f6c1b --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validation/Validator.php @@ -0,0 +1,55 @@ +checkConstraint($constraint, $token, $violations); + } + + if ($violations) { + throw RequiredConstraintsViolated::fromViolations(...$violations); + } + } + + /** @param ConstraintViolation[] $violations */ + private function checkConstraint( + Constraint $constraint, + Token $token, + array &$violations + ) { + try { + $constraint->assert($token); + } catch (ConstraintViolation $e) { + $violations[] = $e; + } + } + + public function validate(Token $token, Constraint ...$constraints) + { + if ($constraints === []) { + throw new NoConstraintsGiven('No constraint given.'); + } + + try { + foreach ($constraints as $constraint) { + $constraint->assert($token); + } + + return true; + } catch (ConstraintViolation $e) { + return false; + } + } +} diff --git a/common/vendor/lcobucci/jwt/src/ValidationData.php b/common/vendor/lcobucci/jwt/src/ValidationData.php new file mode 100755 index 00000000..e0cef21b --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/ValidationData.php @@ -0,0 +1,132 @@ + + * @since 2.0.0 + */ +class ValidationData +{ + /** + * The list of things to be validated + * + * @var array + */ + private $items; + + /** + * The leeway (in seconds) to use when validating time claims + * @var int + */ + private $leeway; + + /** + * Initializes the object + * + * @param int $currentTime + * @param int $leeway + */ + public function __construct($currentTime = null, $leeway = 0) + { + $currentTime = $currentTime ?: time(); + $this->leeway = (int) $leeway; + + $this->items = [ + 'jti' => null, + 'iss' => null, + 'aud' => null, + 'sub' => null + ]; + + $this->setCurrentTime($currentTime); + } + + /** + * Configures the id + * + * @param string $id + */ + public function setId($id) + { + $this->items['jti'] = (string) $id; + } + + /** + * Configures the issuer + * + * @param string $issuer + */ + public function setIssuer($issuer) + { + $this->items['iss'] = (string) $issuer; + } + + /** + * Configures the audience + * + * @param string $audience + */ + public function setAudience($audience) + { + $this->items['aud'] = (string) $audience; + } + + /** + * Configures the subject + * + * @param string $subject + */ + public function setSubject($subject) + { + $this->items['sub'] = (string) $subject; + } + + /** + * Configures the time that "iat", "nbf" and "exp" should be based on + * + * @param int $currentTime + */ + public function setCurrentTime($currentTime) + { + $currentTime = (int) $currentTime; + + $this->items['iat'] = $currentTime + $this->leeway; + $this->items['nbf'] = $currentTime + $this->leeway; + $this->items['exp'] = $currentTime - $this->leeway; + } + + /** + * Returns the requested item + * + * @param string $name + * + * @return mixed + */ + public function get($name) + { + return isset($this->items[$name]) ? $this->items[$name] : null; + } + + /** + * Returns if the item is present + * + * @param string $name + * + * @return boolean + */ + public function has($name) + { + return !empty($this->items[$name]); + } +} diff --git a/common/vendor/lcobucci/jwt/src/Validator.php b/common/vendor/lcobucci/jwt/src/Validator.php new file mode 100755 index 00000000..689a6243 --- /dev/null +++ b/common/vendor/lcobucci/jwt/src/Validator.php @@ -0,0 +1,23 @@ +=5.2.0" }, "require-dev": { - "phpunit/phpunit": "4.*|5.*" + "phpunit/phpunit": "*" }, "suggest": { "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." diff --git a/common/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey b/common/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey.asc b/common/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey.asc old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/byte_safe_strings.php b/common/vendor/paragonie/random_compat/lib/byte_safe_strings.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/cast_to_int.php b/common/vendor/paragonie/random_compat/lib/cast_to_int.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/error_polyfill.php b/common/vendor/paragonie/random_compat/lib/error_polyfill.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/random.php b/common/vendor/paragonie/random_compat/lib/random.php old mode 100644 new mode 100755 index 6df1cb0c..9429ec30 --- a/common/vendor/paragonie/random_compat/lib/random.php +++ b/common/vendor/paragonie/random_compat/lib/random.php @@ -183,7 +183,7 @@ if (!is_callable('random_bytes')) { try { $RandomCompatCOMtest = new COM('CAPICOM.Utilities.1'); /** @psalm-suppress TypeDoesNotContainType */ - if (method_exists($RandomCompatCOMtest, 'GetRandom')) { + if (is_callable(array($RandomCompatCOMtest, 'GetRandom'))) { // See random_bytes_com_dotnet.php require_once $RandomCompatDIR.DIRECTORY_SEPARATOR.'random_bytes_com_dotnet.php'; } diff --git a/common/vendor/paragonie/random_compat/lib/random_bytes_com_dotnet.php b/common/vendor/paragonie/random_compat/lib/random_bytes_com_dotnet.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php b/common/vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/random_bytes_libsodium.php b/common/vendor/paragonie/random_compat/lib/random_bytes_libsodium.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/random_bytes_libsodium_legacy.php b/common/vendor/paragonie/random_compat/lib/random_bytes_libsodium_legacy.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php b/common/vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php old mode 100644 new mode 100755 diff --git a/common/vendor/paragonie/random_compat/lib/random_int.php b/common/vendor/paragonie/random_compat/lib/random_int.php old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/CHANGELOG.md b/common/vendor/psr/http-message/CHANGELOG.md old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/LICENSE b/common/vendor/psr/http-message/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/README.md b/common/vendor/psr/http-message/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/composer.json b/common/vendor/psr/http-message/composer.json old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/src/MessageInterface.php b/common/vendor/psr/http-message/src/MessageInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/src/RequestInterface.php b/common/vendor/psr/http-message/src/RequestInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/src/ResponseInterface.php b/common/vendor/psr/http-message/src/ResponseInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/src/ServerRequestInterface.php b/common/vendor/psr/http-message/src/ServerRequestInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/src/StreamInterface.php b/common/vendor/psr/http-message/src/StreamInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/src/UploadedFileInterface.php b/common/vendor/psr/http-message/src/UploadedFileInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/psr/http-message/src/UriInterface.php b/common/vendor/psr/http-message/src/UriInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/ralouphie/getallheaders/LICENSE b/common/vendor/ralouphie/getallheaders/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/ralouphie/getallheaders/README.md b/common/vendor/ralouphie/getallheaders/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/ralouphie/getallheaders/composer.json b/common/vendor/ralouphie/getallheaders/composer.json old mode 100644 new mode 100755 diff --git a/common/vendor/ralouphie/getallheaders/src/getallheaders.php b/common/vendor/ralouphie/getallheaders/src/getallheaders.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Idn.php b/common/vendor/symfony/polyfill-intl-idn/Idn.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Info.php b/common/vendor/symfony/polyfill-intl-idn/Info.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/LICENSE b/common/vendor/symfony/polyfill-intl-idn/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/README.md b/common/vendor/symfony/polyfill-intl-idn/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/DisallowedRanges.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/DisallowedRanges.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/Regex.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/Regex.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/deviation.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/deviation.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/disallowed.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/disallowed.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_mapped.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_mapped.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_valid.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_valid.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/ignored.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/ignored.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/mapped.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/mapped.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/virama.php b/common/vendor/symfony/polyfill-intl-idn/Resources/unidata/virama.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/bootstrap.php b/common/vendor/symfony/polyfill-intl-idn/bootstrap.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-idn/composer.json b/common/vendor/symfony/polyfill-intl-idn/composer.json old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/LICENSE b/common/vendor/symfony/polyfill-intl-normalizer/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/Normalizer.php b/common/vendor/symfony/polyfill-intl-normalizer/Normalizer.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/README.md b/common/vendor/symfony/polyfill-intl-normalizer/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php b/common/vendor/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/canonicalComposition.php b/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/canonicalComposition.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/canonicalDecomposition.php b/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/canonicalDecomposition.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/combiningClass.php b/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/combiningClass.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/compatibilityDecomposition.php b/common/vendor/symfony/polyfill-intl-normalizer/Resources/unidata/compatibilityDecomposition.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/bootstrap.php b/common/vendor/symfony/polyfill-intl-normalizer/bootstrap.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-intl-normalizer/composer.json b/common/vendor/symfony/polyfill-intl-normalizer/composer.json old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/LICENSE b/common/vendor/symfony/polyfill-php70/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Php70.php b/common/vendor/symfony/polyfill-php70/Php70.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/README.md b/common/vendor/symfony/polyfill-php70/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Resources/stubs/ArithmeticError.php b/common/vendor/symfony/polyfill-php70/Resources/stubs/ArithmeticError.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Resources/stubs/AssertionError.php b/common/vendor/symfony/polyfill-php70/Resources/stubs/AssertionError.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Resources/stubs/DivisionByZeroError.php b/common/vendor/symfony/polyfill-php70/Resources/stubs/DivisionByZeroError.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Resources/stubs/Error.php b/common/vendor/symfony/polyfill-php70/Resources/stubs/Error.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Resources/stubs/ParseError.php b/common/vendor/symfony/polyfill-php70/Resources/stubs/ParseError.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Resources/stubs/SessionUpdateTimestampHandlerInterface.php b/common/vendor/symfony/polyfill-php70/Resources/stubs/SessionUpdateTimestampHandlerInterface.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/Resources/stubs/TypeError.php b/common/vendor/symfony/polyfill-php70/Resources/stubs/TypeError.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/bootstrap.php b/common/vendor/symfony/polyfill-php70/bootstrap.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php70/composer.json b/common/vendor/symfony/polyfill-php70/composer.json old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php72/LICENSE b/common/vendor/symfony/polyfill-php72/LICENSE old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php72/Php72.php b/common/vendor/symfony/polyfill-php72/Php72.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php72/README.md b/common/vendor/symfony/polyfill-php72/README.md old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php72/bootstrap.php b/common/vendor/symfony/polyfill-php72/bootstrap.php old mode 100644 new mode 100755 diff --git a/common/vendor/symfony/polyfill-php72/composer.json b/common/vendor/symfony/polyfill-php72/composer.json old mode 100644 new mode 100755 diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/LicensePlateInfo.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/LicensePlateInfo.php new file mode 100755 index 00000000..b33322a1 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/LicensePlateInfo.php @@ -0,0 +1,90 @@ +Number = $param["Number"]; + } + + if (array_key_exists("Confidence",$param) and $param["Confidence"] !== null) { + $this->Confidence = $param["Confidence"]; + } + + if (array_key_exists("Rect",$param) and $param["Rect"] !== null) { + $this->Rect = new Rect(); + $this->Rect->deserialize($param["Rect"]); + } + + if (array_key_exists("Color",$param) and $param["Color"] !== null) { + $this->Color = $param["Color"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/OnlineTaxiItineraryInfo.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/OnlineTaxiItineraryInfo.php new file mode 100755 index 00000000..fb130ff2 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/OnlineTaxiItineraryInfo.php @@ -0,0 +1,69 @@ +Name = $param["Name"]; + } + + if (array_key_exists("Value",$param) and $param["Value"] !== null) { + $this->Value = $param["Value"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/PassInvoiceInfo.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/PassInvoiceInfo.php new file mode 100755 index 00000000..2ad3cbd6 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/PassInvoiceInfo.php @@ -0,0 +1,101 @@ +NumberPlate = $param["NumberPlate"]; + } + + if (array_key_exists("Type",$param) and $param["Type"] !== null) { + $this->Type = $param["Type"]; + } + + if (array_key_exists("PassDateBegin",$param) and $param["PassDateBegin"] !== null) { + $this->PassDateBegin = $param["PassDateBegin"]; + } + + if (array_key_exists("PassDateEnd",$param) and $param["PassDateEnd"] !== null) { + $this->PassDateEnd = $param["PassDateEnd"]; + } + + if (array_key_exists("TaxClassifyCode",$param) and $param["TaxClassifyCode"] !== null) { + $this->TaxClassifyCode = $param["TaxClassifyCode"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeContainerOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeContainerOCRRequest.php new file mode 100755 index 00000000..b7e5b128 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeContainerOCRRequest.php @@ -0,0 +1,93 @@ +ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ImageUrl",$param) and $param["ImageUrl"] !== null) { + $this->ImageUrl = $param["ImageUrl"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeContainerOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeContainerOCRResponse.php new file mode 100755 index 00000000..5498e5a4 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeContainerOCRResponse.php @@ -0,0 +1,193 @@ +ContainerId = $param["ContainerId"]; + } + + if (array_key_exists("ContainerType",$param) and $param["ContainerType"] !== null) { + $this->ContainerType = $param["ContainerType"]; + } + + if (array_key_exists("GrossKG",$param) and $param["GrossKG"] !== null) { + $this->GrossKG = $param["GrossKG"]; + } + + if (array_key_exists("GrossLB",$param) and $param["GrossLB"] !== null) { + $this->GrossLB = $param["GrossLB"]; + } + + if (array_key_exists("PayloadKG",$param) and $param["PayloadKG"] !== null) { + $this->PayloadKG = $param["PayloadKG"]; + } + + if (array_key_exists("PayloadLB",$param) and $param["PayloadLB"] !== null) { + $this->PayloadLB = $param["PayloadLB"]; + } + + if (array_key_exists("CapacityM3",$param) and $param["CapacityM3"] !== null) { + $this->CapacityM3 = $param["CapacityM3"]; + } + + if (array_key_exists("CapacityFT3",$param) and $param["CapacityFT3"] !== null) { + $this->CapacityFT3 = $param["CapacityFT3"]; + } + + if (array_key_exists("Warn",$param) and $param["Warn"] !== null) { + $this->Warn = $param["Warn"]; + } + + if (array_key_exists("TareKG",$param) and $param["TareKG"] !== null) { + $this->TareKG = $param["TareKG"]; + } + + if (array_key_exists("TareLB",$param) and $param["TareLB"] !== null) { + $this->TareLB = $param["TareLB"]; + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeHealthCodeOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeHealthCodeOCRRequest.php new file mode 100755 index 00000000..96de6eb2 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeHealthCodeOCRRequest.php @@ -0,0 +1,109 @@ +ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ImageUrl",$param) and $param["ImageUrl"] !== null) { + $this->ImageUrl = $param["ImageUrl"]; + } + + if (array_key_exists("Type",$param) and $param["Type"] !== null) { + $this->Type = $param["Type"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeHealthCodeOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeHealthCodeOCRResponse.php new file mode 100755 index 00000000..52cfd0a5 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeHealthCodeOCRResponse.php @@ -0,0 +1,149 @@ +Name = $param["Name"]; + } + + if (array_key_exists("IDNumber",$param) and $param["IDNumber"] !== null) { + $this->IDNumber = $param["IDNumber"]; + } + + if (array_key_exists("Time",$param) and $param["Time"] !== null) { + $this->Time = $param["Time"]; + } + + if (array_key_exists("Color",$param) and $param["Color"] !== null) { + $this->Color = $param["Color"]; + } + + if (array_key_exists("TestingInterval",$param) and $param["TestingInterval"] !== null) { + $this->TestingInterval = $param["TestingInterval"]; + } + + if (array_key_exists("TestingResult",$param) and $param["TestingResult"] !== null) { + $this->TestingResult = $param["TestingResult"]; + } + + if (array_key_exists("TestingTime",$param) and $param["TestingTime"] !== null) { + $this->TestingTime = $param["TestingTime"]; + } + + if (array_key_exists("Vaccination",$param) and $param["Vaccination"] !== null) { + $this->Vaccination = $param["Vaccination"]; + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeIndonesiaIDCardOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeIndonesiaIDCardOCRRequest.php new file mode 100755 index 00000000..8078d1fe --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeIndonesiaIDCardOCRRequest.php @@ -0,0 +1,129 @@ +ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ImageUrl",$param) and $param["ImageUrl"] !== null) { + $this->ImageUrl = $param["ImageUrl"]; + } + + if (array_key_exists("ReturnHeadImage",$param) and $param["ReturnHeadImage"] !== null) { + $this->ReturnHeadImage = $param["ReturnHeadImage"]; + } + + if (array_key_exists("Scene",$param) and $param["Scene"] !== null) { + $this->Scene = $param["Scene"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeIndonesiaIDCardOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeIndonesiaIDCardOCRResponse.php new file mode 100755 index 00000000..a2fb46e8 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeIndonesiaIDCardOCRResponse.php @@ -0,0 +1,245 @@ +NIK = $param["NIK"]; + } + + if (array_key_exists("Nama",$param) and $param["Nama"] !== null) { + $this->Nama = $param["Nama"]; + } + + if (array_key_exists("TempatTglLahir",$param) and $param["TempatTglLahir"] !== null) { + $this->TempatTglLahir = $param["TempatTglLahir"]; + } + + if (array_key_exists("JenisKelamin",$param) and $param["JenisKelamin"] !== null) { + $this->JenisKelamin = $param["JenisKelamin"]; + } + + if (array_key_exists("GolDarah",$param) and $param["GolDarah"] !== null) { + $this->GolDarah = $param["GolDarah"]; + } + + if (array_key_exists("Alamat",$param) and $param["Alamat"] !== null) { + $this->Alamat = $param["Alamat"]; + } + + if (array_key_exists("RTRW",$param) and $param["RTRW"] !== null) { + $this->RTRW = $param["RTRW"]; + } + + if (array_key_exists("KelDesa",$param) and $param["KelDesa"] !== null) { + $this->KelDesa = $param["KelDesa"]; + } + + if (array_key_exists("Kecamatan",$param) and $param["Kecamatan"] !== null) { + $this->Kecamatan = $param["Kecamatan"]; + } + + if (array_key_exists("Agama",$param) and $param["Agama"] !== null) { + $this->Agama = $param["Agama"]; + } + + if (array_key_exists("StatusPerkawinan",$param) and $param["StatusPerkawinan"] !== null) { + $this->StatusPerkawinan = $param["StatusPerkawinan"]; + } + + if (array_key_exists("Perkerjaan",$param) and $param["Perkerjaan"] !== null) { + $this->Perkerjaan = $param["Perkerjaan"]; + } + + if (array_key_exists("KewargaNegaraan",$param) and $param["KewargaNegaraan"] !== null) { + $this->KewargaNegaraan = $param["KewargaNegaraan"]; + } + + if (array_key_exists("BerlakuHingga",$param) and $param["BerlakuHingga"] !== null) { + $this->BerlakuHingga = $param["BerlakuHingga"]; + } + + if (array_key_exists("IssuedDate",$param) and $param["IssuedDate"] !== null) { + $this->IssuedDate = $param["IssuedDate"]; + } + + if (array_key_exists("Photo",$param) and $param["Photo"] !== null) { + $this->Photo = $param["Photo"]; + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeOnlineTaxiItineraryOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeOnlineTaxiItineraryOCRRequest.php new file mode 100755 index 00000000..47ea2004 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeOnlineTaxiItineraryOCRRequest.php @@ -0,0 +1,117 @@ +ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ImageUrl",$param) and $param["ImageUrl"] !== null) { + $this->ImageUrl = $param["ImageUrl"]; + } + + if (array_key_exists("IsPdf",$param) and $param["IsPdf"] !== null) { + $this->IsPdf = $param["IsPdf"]; + } + + if (array_key_exists("PdfPageNumber",$param) and $param["PdfPageNumber"] !== null) { + $this->PdfPageNumber = $param["PdfPageNumber"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeOnlineTaxiItineraryOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeOnlineTaxiItineraryOCRResponse.php new file mode 100755 index 00000000..d7c8b799 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeOnlineTaxiItineraryOCRResponse.php @@ -0,0 +1,70 @@ +OnlineTaxiItineraryInfos = []; + foreach ($param["OnlineTaxiItineraryInfos"] as $key => $value){ + $obj = new OnlineTaxiItineraryInfo(); + $obj->deserialize($value); + array_push($this->OnlineTaxiItineraryInfos, $obj); + } + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesDrivingLicenseOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesDrivingLicenseOCRRequest.php new file mode 100755 index 00000000..6a953513 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesDrivingLicenseOCRRequest.php @@ -0,0 +1,105 @@ +ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ImageUrl",$param) and $param["ImageUrl"] !== null) { + $this->ImageUrl = $param["ImageUrl"]; + } + + if (array_key_exists("ReturnHeadImage",$param) and $param["ReturnHeadImage"] !== null) { + $this->ReturnHeadImage = $param["ReturnHeadImage"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesDrivingLicenseOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesDrivingLicenseOCRResponse.php new file mode 100755 index 00000000..935b9d1d --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesDrivingLicenseOCRResponse.php @@ -0,0 +1,209 @@ +HeadPortrait = new TextDetectionResult(); + $this->HeadPortrait->deserialize($param["HeadPortrait"]); + } + + if (array_key_exists("Name",$param) and $param["Name"] !== null) { + $this->Name = new TextDetectionResult(); + $this->Name->deserialize($param["Name"]); + } + + if (array_key_exists("LastName",$param) and $param["LastName"] !== null) { + $this->LastName = new TextDetectionResult(); + $this->LastName->deserialize($param["LastName"]); + } + + if (array_key_exists("FirstName",$param) and $param["FirstName"] !== null) { + $this->FirstName = new TextDetectionResult(); + $this->FirstName->deserialize($param["FirstName"]); + } + + if (array_key_exists("MiddleName",$param) and $param["MiddleName"] !== null) { + $this->MiddleName = new TextDetectionResult(); + $this->MiddleName->deserialize($param["MiddleName"]); + } + + if (array_key_exists("Nationality",$param) and $param["Nationality"] !== null) { + $this->Nationality = new TextDetectionResult(); + $this->Nationality->deserialize($param["Nationality"]); + } + + if (array_key_exists("Sex",$param) and $param["Sex"] !== null) { + $this->Sex = new TextDetectionResult(); + $this->Sex->deserialize($param["Sex"]); + } + + if (array_key_exists("Address",$param) and $param["Address"] !== null) { + $this->Address = new TextDetectionResult(); + $this->Address->deserialize($param["Address"]); + } + + if (array_key_exists("LicenseNo",$param) and $param["LicenseNo"] !== null) { + $this->LicenseNo = new TextDetectionResult(); + $this->LicenseNo->deserialize($param["LicenseNo"]); + } + + if (array_key_exists("ExpiresDate",$param) and $param["ExpiresDate"] !== null) { + $this->ExpiresDate = new TextDetectionResult(); + $this->ExpiresDate->deserialize($param["ExpiresDate"]); + } + + if (array_key_exists("AgencyCode",$param) and $param["AgencyCode"] !== null) { + $this->AgencyCode = new TextDetectionResult(); + $this->AgencyCode->deserialize($param["AgencyCode"]); + } + + if (array_key_exists("Birthday",$param) and $param["Birthday"] !== null) { + $this->Birthday = new TextDetectionResult(); + $this->Birthday->deserialize($param["Birthday"]); + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesVoteIDOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesVoteIDOCRRequest.php new file mode 100755 index 00000000..1ccb3fda --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesVoteIDOCRRequest.php @@ -0,0 +1,105 @@ +ReturnHeadImage = $param["ReturnHeadImage"]; + } + + if (array_key_exists("ImageBase64",$param) and $param["ImageBase64"] !== null) { + $this->ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ImageUrl",$param) and $param["ImageUrl"] !== null) { + $this->ImageUrl = $param["ImageUrl"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesVoteIDOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesVoteIDOCRResponse.php new file mode 100755 index 00000000..0e95d1ed --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizePhilippinesVoteIDOCRResponse.php @@ -0,0 +1,170 @@ +HeadPortrait = new TextDetectionResult(); + $this->HeadPortrait->deserialize($param["HeadPortrait"]); + } + + if (array_key_exists("VIN",$param) and $param["VIN"] !== null) { + $this->VIN = new TextDetectionResult(); + $this->VIN->deserialize($param["VIN"]); + } + + if (array_key_exists("FirstName",$param) and $param["FirstName"] !== null) { + $this->FirstName = new TextDetectionResult(); + $this->FirstName->deserialize($param["FirstName"]); + } + + if (array_key_exists("LastName",$param) and $param["LastName"] !== null) { + $this->LastName = new TextDetectionResult(); + $this->LastName->deserialize($param["LastName"]); + } + + if (array_key_exists("Birthday",$param) and $param["Birthday"] !== null) { + $this->Birthday = new TextDetectionResult(); + $this->Birthday->deserialize($param["Birthday"]); + } + + if (array_key_exists("CivilStatus",$param) and $param["CivilStatus"] !== null) { + $this->CivilStatus = new TextDetectionResult(); + $this->CivilStatus->deserialize($param["CivilStatus"]); + } + + if (array_key_exists("Citizenship",$param) and $param["Citizenship"] !== null) { + $this->Citizenship = new TextDetectionResult(); + $this->Citizenship->deserialize($param["Citizenship"]); + } + + if (array_key_exists("Address",$param) and $param["Address"] !== null) { + $this->Address = new TextDetectionResult(); + $this->Address->deserialize($param["Address"]); + } + + if (array_key_exists("PrecinctNo",$param) and $param["PrecinctNo"] !== null) { + $this->PrecinctNo = new TextDetectionResult(); + $this->PrecinctNo->deserialize($param["PrecinctNo"]); + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeTravelCardOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeTravelCardOCRRequest.php new file mode 100755 index 00000000..13d16ef2 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeTravelCardOCRRequest.php @@ -0,0 +1,93 @@ +ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ImageUrl",$param) and $param["ImageUrl"] !== null) { + $this->ImageUrl = $param["ImageUrl"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeTravelCardOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeTravelCardOCRResponse.php new file mode 100755 index 00000000..5a96e264 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/RecognizeTravelCardOCRResponse.php @@ -0,0 +1,113 @@ +Time = $param["Time"]; + } + + if (array_key_exists("Color",$param) and $param["Color"] !== null) { + $this->Color = $param["Color"]; + } + + if (array_key_exists("ReachedCity",$param) and $param["ReachedCity"] !== null) { + $this->ReachedCity = $param["ReachedCity"]; + } + + if (array_key_exists("RiskArea",$param) and $param["RiskArea"] !== null) { + $this->RiskArea = $param["RiskArea"]; + } + + if (array_key_exists("Telephone",$param) and $param["Telephone"] !== null) { + $this->Telephone = $param["Telephone"]; + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SealInfo.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SealInfo.php new file mode 100755 index 00000000..511759b6 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SealInfo.php @@ -0,0 +1,78 @@ +SealBody = $param["SealBody"]; + } + + if (array_key_exists("Location",$param) and $param["Location"] !== null) { + $this->Location = new Rect(); + $this->Location->deserialize($param["Location"]); + } + + if (array_key_exists("OtherTexts",$param) and $param["OtherTexts"] !== null) { + $this->OtherTexts = $param["OtherTexts"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SmartStructuralOCRRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SmartStructuralOCRRequest.php new file mode 100755 index 00000000..1c0bed30 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SmartStructuralOCRRequest.php @@ -0,0 +1,149 @@ +ImageUrl = $param["ImageUrl"]; + } + + if (array_key_exists("ImageBase64",$param) and $param["ImageBase64"] !== null) { + $this->ImageBase64 = $param["ImageBase64"]; + } + + if (array_key_exists("ItemNames",$param) and $param["ItemNames"] !== null) { + $this->ItemNames = $param["ItemNames"]; + } + + if (array_key_exists("IsPdf",$param) and $param["IsPdf"] !== null) { + $this->IsPdf = $param["IsPdf"]; + } + + if (array_key_exists("PdfPageNumber",$param) and $param["PdfPageNumber"] !== null) { + $this->PdfPageNumber = $param["PdfPageNumber"]; + } + + if (array_key_exists("ReturnFullText",$param) and $param["ReturnFullText"] !== null) { + $this->ReturnFullText = $param["ReturnFullText"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SmartStructuralOCRResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SmartStructuralOCRResponse.php new file mode 100755 index 00000000..337cecb4 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/SmartStructuralOCRResponse.php @@ -0,0 +1,86 @@ +Angle = $param["Angle"]; + } + + if (array_key_exists("StructuralItems",$param) and $param["StructuralItems"] !== null) { + $this->StructuralItems = []; + foreach ($param["StructuralItems"] as $key => $value){ + $obj = new StructuralItem(); + $obj->deserialize($value); + array_push($this->StructuralItems, $obj); + } + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/StructuralItem.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/StructuralItem.php new file mode 100755 index 00000000..946e8ffc --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/StructuralItem.php @@ -0,0 +1,94 @@ +Name = $param["Name"]; + } + + if (array_key_exists("Value",$param) and $param["Value"] !== null) { + $this->Value = $param["Value"]; + } + + if (array_key_exists("Confidence",$param) and $param["Confidence"] !== null) { + $this->Confidence = $param["Confidence"]; + } + + if (array_key_exists("ItemCoord",$param) and $param["ItemCoord"] !== null) { + $this->ItemCoord = new ItemCoord(); + $this->ItemCoord->deserialize($param["ItemCoord"]); + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/TextDetectionResult.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/TextDetectionResult.php new file mode 100755 index 00000000..4fdf1855 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/TextDetectionResult.php @@ -0,0 +1,70 @@ +Value = $param["Value"]; + } + + if (array_key_exists("Polygon",$param) and $param["Polygon"] !== null) { + $this->Polygon = []; + foreach ($param["Polygon"] as $key => $value){ + $obj = new Coord(); + $obj->deserialize($value); + array_push($this->Polygon, $obj); + } + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/UsedVehicleInvoiceInfo.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/UsedVehicleInvoiceInfo.php new file mode 100755 index 00000000..2b9d2329 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/UsedVehicleInvoiceInfo.php @@ -0,0 +1,329 @@ +TaxBureau = $param["TaxBureau"]; + } + + if (array_key_exists("Buyer",$param) and $param["Buyer"] !== null) { + $this->Buyer = $param["Buyer"]; + } + + if (array_key_exists("BuyerNo",$param) and $param["BuyerNo"] !== null) { + $this->BuyerNo = $param["BuyerNo"]; + } + + if (array_key_exists("BuyerAddress",$param) and $param["BuyerAddress"] !== null) { + $this->BuyerAddress = $param["BuyerAddress"]; + } + + if (array_key_exists("BuyerTel",$param) and $param["BuyerTel"] !== null) { + $this->BuyerTel = $param["BuyerTel"]; + } + + if (array_key_exists("Seller",$param) and $param["Seller"] !== null) { + $this->Seller = $param["Seller"]; + } + + if (array_key_exists("SellerNo",$param) and $param["SellerNo"] !== null) { + $this->SellerNo = $param["SellerNo"]; + } + + if (array_key_exists("SellerAddress",$param) and $param["SellerAddress"] !== null) { + $this->SellerAddress = $param["SellerAddress"]; + } + + if (array_key_exists("SellerTel",$param) and $param["SellerTel"] !== null) { + $this->SellerTel = $param["SellerTel"]; + } + + if (array_key_exists("VehicleLicenseNo",$param) and $param["VehicleLicenseNo"] !== null) { + $this->VehicleLicenseNo = $param["VehicleLicenseNo"]; + } + + if (array_key_exists("RegisterNo",$param) and $param["RegisterNo"] !== null) { + $this->RegisterNo = $param["RegisterNo"]; + } + + if (array_key_exists("VehicleIdentifyNo",$param) and $param["VehicleIdentifyNo"] !== null) { + $this->VehicleIdentifyNo = $param["VehicleIdentifyNo"]; + } + + if (array_key_exists("ManagementOffice",$param) and $param["ManagementOffice"] !== null) { + $this->ManagementOffice = $param["ManagementOffice"]; + } + + if (array_key_exists("VehicleTotalPrice",$param) and $param["VehicleTotalPrice"] !== null) { + $this->VehicleTotalPrice = $param["VehicleTotalPrice"]; + } + + if (array_key_exists("Auctioneer",$param) and $param["Auctioneer"] !== null) { + $this->Auctioneer = $param["Auctioneer"]; + } + + if (array_key_exists("AuctioneerAddress",$param) and $param["AuctioneerAddress"] !== null) { + $this->AuctioneerAddress = $param["AuctioneerAddress"]; + } + + if (array_key_exists("AuctioneerTaxpayerNum",$param) and $param["AuctioneerTaxpayerNum"] !== null) { + $this->AuctioneerTaxpayerNum = $param["AuctioneerTaxpayerNum"]; + } + + if (array_key_exists("AuctioneerBankAccount",$param) and $param["AuctioneerBankAccount"] !== null) { + $this->AuctioneerBankAccount = $param["AuctioneerBankAccount"]; + } + + if (array_key_exists("AuctioneerTel",$param) and $param["AuctioneerTel"] !== null) { + $this->AuctioneerTel = $param["AuctioneerTel"]; + } + + if (array_key_exists("Market",$param) and $param["Market"] !== null) { + $this->Market = $param["Market"]; + } + + if (array_key_exists("MarketTaxpayerNum",$param) and $param["MarketTaxpayerNum"] !== null) { + $this->MarketTaxpayerNum = $param["MarketTaxpayerNum"]; + } + + if (array_key_exists("MarketAddress",$param) and $param["MarketAddress"] !== null) { + $this->MarketAddress = $param["MarketAddress"]; + } + + if (array_key_exists("MarketBankAccount",$param) and $param["MarketBankAccount"] !== null) { + $this->MarketBankAccount = $param["MarketBankAccount"]; + } + + if (array_key_exists("MarketTel",$param) and $param["MarketTel"] !== null) { + $this->MarketTel = $param["MarketTel"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VatInvoiceVerifyNewRequest.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VatInvoiceVerifyNewRequest.php new file mode 100755 index 00000000..a65e2070 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VatInvoiceVerifyNewRequest.php @@ -0,0 +1,117 @@ +InvoiceNo = $param["InvoiceNo"]; + } + + if (array_key_exists("InvoiceDate",$param) and $param["InvoiceDate"] !== null) { + $this->InvoiceDate = $param["InvoiceDate"]; + } + + if (array_key_exists("InvoiceCode",$param) and $param["InvoiceCode"] !== null) { + $this->InvoiceCode = $param["InvoiceCode"]; + } + + if (array_key_exists("InvoiceKind",$param) and $param["InvoiceKind"] !== null) { + $this->InvoiceKind = $param["InvoiceKind"]; + } + + if (array_key_exists("CheckCode",$param) and $param["CheckCode"] !== null) { + $this->CheckCode = $param["CheckCode"]; + } + + if (array_key_exists("Amount",$param) and $param["Amount"] !== null) { + $this->Amount = $param["Amount"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VatInvoiceVerifyNewResponse.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VatInvoiceVerifyNewResponse.php new file mode 100755 index 00000000..bffb61c6 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VatInvoiceVerifyNewResponse.php @@ -0,0 +1,109 @@ +Invoice = new VatInvoice(); + $this->Invoice->deserialize($param["Invoice"]); + } + + if (array_key_exists("VehicleInvoiceInfo",$param) and $param["VehicleInvoiceInfo"] !== null) { + $this->VehicleInvoiceInfo = new VehicleInvoiceInfo(); + $this->VehicleInvoiceInfo->deserialize($param["VehicleInvoiceInfo"]); + } + + if (array_key_exists("UsedVehicleInvoiceInfo",$param) and $param["UsedVehicleInvoiceInfo"] !== null) { + $this->UsedVehicleInvoiceInfo = new UsedVehicleInvoiceInfo(); + $this->UsedVehicleInvoiceInfo->deserialize($param["UsedVehicleInvoiceInfo"]); + } + + if (array_key_exists("PassInvoiceInfoList",$param) and $param["PassInvoiceInfoList"] !== null) { + $this->PassInvoiceInfoList = []; + foreach ($param["PassInvoiceInfoList"] as $key => $value){ + $obj = new PassInvoiceInfo(); + $obj->deserialize($value); + array_push($this->PassInvoiceInfoList, $obj); + } + } + + if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) { + $this->RequestId = $param["RequestId"]; + } + } +} diff --git a/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VehicleInvoiceInfo.php b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VehicleInvoiceInfo.php new file mode 100755 index 00000000..e55ce846 --- /dev/null +++ b/common/vendor/tencentcloud/ocr/src/TencentCloud/Ocr/V20181119/Models/VehicleInvoiceInfo.php @@ -0,0 +1,269 @@ +CarType = $param["CarType"]; + } + + if (array_key_exists("PlateModel",$param) and $param["PlateModel"] !== null) { + $this->PlateModel = $param["PlateModel"]; + } + + if (array_key_exists("ProduceAddress",$param) and $param["ProduceAddress"] !== null) { + $this->ProduceAddress = $param["ProduceAddress"]; + } + + if (array_key_exists("CertificateNo",$param) and $param["CertificateNo"] !== null) { + $this->CertificateNo = $param["CertificateNo"]; + } + + if (array_key_exists("ImportNo",$param) and $param["ImportNo"] !== null) { + $this->ImportNo = $param["ImportNo"]; + } + + if (array_key_exists("VinNo",$param) and $param["VinNo"] !== null) { + $this->VinNo = $param["VinNo"]; + } + + if (array_key_exists("PayTaxesNo",$param) and $param["PayTaxesNo"] !== null) { + $this->PayTaxesNo = $param["PayTaxesNo"]; + } + + if (array_key_exists("Tonnage",$param) and $param["Tonnage"] !== null) { + $this->Tonnage = $param["Tonnage"]; + } + + if (array_key_exists("LimitCount",$param) and $param["LimitCount"] !== null) { + $this->LimitCount = $param["LimitCount"]; + } + + if (array_key_exists("EngineNo",$param) and $param["EngineNo"] !== null) { + $this->EngineNo = $param["EngineNo"]; + } + + if (array_key_exists("BizCheckFormNo",$param) and $param["BizCheckFormNo"] !== null) { + $this->BizCheckFormNo = $param["BizCheckFormNo"]; + } + + if (array_key_exists("TaxtationOrgCode",$param) and $param["TaxtationOrgCode"] !== null) { + $this->TaxtationOrgCode = $param["TaxtationOrgCode"]; + } + + if (array_key_exists("TaxtationOrgName",$param) and $param["TaxtationOrgName"] !== null) { + $this->TaxtationOrgName = $param["TaxtationOrgName"]; + } + + if (array_key_exists("MotorTaxRate",$param) and $param["MotorTaxRate"] !== null) { + $this->MotorTaxRate = $param["MotorTaxRate"]; + } + + if (array_key_exists("MotorBankName",$param) and $param["MotorBankName"] !== null) { + $this->MotorBankName = $param["MotorBankName"]; + } + + if (array_key_exists("MotorBankAccount",$param) and $param["MotorBankAccount"] !== null) { + $this->MotorBankAccount = $param["MotorBankAccount"]; + } + + if (array_key_exists("SellerAddress",$param) and $param["SellerAddress"] !== null) { + $this->SellerAddress = $param["SellerAddress"]; + } + + if (array_key_exists("SellerTel",$param) and $param["SellerTel"] !== null) { + $this->SellerTel = $param["SellerTel"]; + } + + if (array_key_exists("BuyerNo",$param) and $param["BuyerNo"] !== null) { + $this->BuyerNo = $param["BuyerNo"]; + } + } +}