diff --git a/composer.json b/composer.json index 149e160..b324678 100644 --- a/composer.json +++ b/composer.json @@ -1,19 +1,19 @@ { "require": { - "php": ">=8.0.0", + "php": "^8.1", "ext-curl": "*", "ext-json": "*", - "doctrine/dbal": "^2.6", - "hashids/hashids": "^4.0", - "illuminate/database": "^8.0", - "illuminate/translation": "^8.0", + "doctrine/dbal": "^3.7.1", + "hashids/hashids": "^5.0", + "illuminate/database": "^10.0", + "illuminate/translation": "^10.0", "matthiasmullie/minify": "^1.3", "nesbot/carbon": "^2.31", "phroute/phroute": "^2.1", - "predis/predis": "^1.1", - "symfony/console": "^5.3", - "twig/twig": "^3.0", - "wohali/oauth2-discord-new": "^1.0" + "predis/predis": "^2.0", + "spatie/array-to-xml": "^3.2", + "symfony/console": "^6.0", + "twig/twig": "^3.0" }, "autoload": { "classmap": [ @@ -31,6 +31,6 @@ "optimize-autoloader": true }, "require-dev": { - "phpstan/phpstan": "^0.12" + "phpstan/phpstan": "^1.0" } } diff --git a/composer.lock b/composer.lock index d831df7..3f30a43 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,132 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d34dfaccf7721c66a28854fc8c364871", + "content-hash": "1debd3a3d1f3da80924bfb98a83c3e03", "packages": [ + { + "name": "brick/math", + "version": "0.11.0", + "source": { + "type": "git", + "url": "https://github.com/brick/math.git", + "reference": "0ad82ce168c82ba30d1c01ec86116ab52f589478" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/brick/math/zipball/0ad82ce168c82ba30d1c01ec86116ab52f589478", + "reference": "0ad82ce168c82ba30d1c01ec86116ab52f589478", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.2", + "phpunit/phpunit": "^9.0", + "vimeo/psalm": "5.0.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Brick\\Math\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Arbitrary-precision arithmetic library", + "keywords": [ + "Arbitrary-precision", + "BigInteger", + "BigRational", + "arithmetic", + "bigdecimal", + "bignum", + "brick", + "math" + ], + "support": { + "issues": "https://github.com/brick/math/issues", + "source": "https://github.com/brick/math/tree/0.11.0" + }, + "funding": [ + { + "url": "https://github.com/BenMorel", + "type": "github" + } + ], + "time": "2023-01-15T23:15:59+00:00" + }, + { + "name": "carbonphp/carbon-doctrine-types", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/CarbonPHP/carbon-doctrine-types.git", + "reference": "99f76ffa36cce3b70a4a6abce41dba15ca2e84cb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/CarbonPHP/carbon-doctrine-types/zipball/99f76ffa36cce3b70a4a6abce41dba15ca2e84cb", + "reference": "99f76ffa36cce3b70a4a6abce41dba15ca2e84cb", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "conflict": { + "doctrine/dbal": "<3.7.0 || >=4.0.0" + }, + "require-dev": { + "doctrine/dbal": "^3.7.0", + "nesbot/carbon": "^2.71.0 || ^3.0.0", + "phpunit/phpunit": "^10.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Carbon\\Doctrine\\": "src/Carbon/Doctrine/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "KyleKatarn", + "email": "kylekatarnls@gmail.com" + } + ], + "description": "Types to use Carbon in Doctrine", + "keywords": [ + "carbon", + "date", + "datetime", + "doctrine", + "time" + ], + "support": { + "issues": "https://github.com/CarbonPHP/carbon-doctrine-types/issues", + "source": "https://github.com/CarbonPHP/carbon-doctrine-types/tree/2.1.0" + }, + "funding": [ + { + "url": "https://github.com/kylekatarnls", + "type": "github" + }, + { + "url": "https://opencollective.com/Carbon", + "type": "open_collective" + }, + { + "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon", + "type": "tidelift" + } + ], + "time": "2023-12-11T17:09:12+00:00" + }, { "name": "doctrine/cache", "version": "2.2.0", @@ -101,35 +225,40 @@ }, { "name": "doctrine/dbal", - "version": "2.13.9", + "version": "3.7.2", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "c480849ca3ad6706a39c970cdfe6888fa8a058b8" + "reference": "0ac3c270590e54910715e9a1a044cc368df282b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/c480849ca3ad6706a39c970cdfe6888fa8a058b8", - "reference": "c480849ca3ad6706a39c970cdfe6888fa8a058b8", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/0ac3c270590e54910715e9a1a044cc368df282b2", + "reference": "0ac3c270590e54910715e9a1a044cc368df282b2", "shasum": "" }, "require": { - "doctrine/cache": "^1.0|^2.0", + "composer-runtime-api": "^2", + "doctrine/cache": "^1.11|^2.0", "doctrine/deprecations": "^0.5.3|^1", - "doctrine/event-manager": "^1.0", - "ext-pdo": "*", - "php": "^7.1 || ^8" + "doctrine/event-manager": "^1|^2", + "php": "^7.4 || ^8.0", + "psr/cache": "^1|^2|^3", + "psr/log": "^1|^2|^3" }, "require-dev": { - "doctrine/coding-standard": "9.0.0", - "jetbrains/phpstorm-stubs": "2021.1", - "phpstan/phpstan": "1.4.6", - "phpunit/phpunit": "^7.5.20|^8.5|9.5.16", - "psalm/plugin-phpunit": "0.16.1", - "squizlabs/php_codesniffer": "3.6.2", - "symfony/cache": "^4.4", - "symfony/console": "^2.0.5|^3.0|^4.0|^5.0", - "vimeo/psalm": "4.22.0" + "doctrine/coding-standard": "12.0.0", + "fig/log-test": "^1", + "jetbrains/phpstorm-stubs": "2023.1", + "phpstan/phpstan": "1.10.42", + "phpstan/phpstan-strict-rules": "^1.5", + "phpunit/phpunit": "9.6.13", + "psalm/plugin-phpunit": "0.18.4", + "slevomat/coding-standard": "8.13.1", + "squizlabs/php_codesniffer": "3.7.2", + "symfony/cache": "^5.4|^6.0", + "symfony/console": "^4.4|^5.4|^6.0", + "vimeo/psalm": "4.30.0" }, "suggest": { "symfony/console": "For helpful console commands such as SQL execution and import of files." @@ -140,7 +269,7 @@ "type": "library", "autoload": { "psr-4": { - "Doctrine\\DBAL\\": "lib/Doctrine/DBAL" + "Doctrine\\DBAL\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -183,14 +312,13 @@ "queryobject", "sasql", "sql", - "sqlanywhere", "sqlite", "sqlserver", "sqlsrv" ], "support": { "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/2.13.9" + "source": "https://github.com/doctrine/dbal/tree/3.7.2" }, "funding": [ { @@ -206,20 +334,20 @@ "type": "tidelift" } ], - "time": "2022-05-02T20:28:55+00:00" + "time": "2023-11-19T08:06:58+00:00" }, { "name": "doctrine/deprecations", - "version": "v1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/doctrine/deprecations.git", - "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3" + "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/612a3ee5ab0d5dd97b7cf3874a6efe24325efac3", - "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/4f2d4f2836e7ec4e7a8625e75c6aa916004db931", + "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931", "shasum": "" }, "require": { @@ -251,36 +379,35 @@ "homepage": "https://www.doctrine-project.org/", "support": { "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/v1.1.1" + "source": "https://github.com/doctrine/deprecations/tree/1.1.2" }, - "time": "2023-06-03T09:27:29+00:00" + "time": "2023-09-27T20:04:15+00:00" }, { "name": "doctrine/event-manager", - "version": "1.2.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/event-manager.git", - "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520" + "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/event-manager/zipball/95aa4cb529f1e96576f3fda9f5705ada4056a520", - "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/750671534e0241a7c50ea5b43f67e23eb5c96f32", + "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32", "shasum": "" }, "require": { - "doctrine/deprecations": "^0.5.3 || ^1", - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "conflict": { "doctrine/common": "<2.9" }, "require-dev": { - "doctrine/coding-standard": "^9 || ^10", - "phpstan/phpstan": "~1.4.10 || ^1.8.8", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.24" + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.8", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^4.28" }, "type": "library", "autoload": { @@ -329,7 +456,7 @@ ], "support": { "issues": "https://github.com/doctrine/event-manager/issues", - "source": "https://github.com/doctrine/event-manager/tree/1.2.0" + "source": "https://github.com/doctrine/event-manager/tree/2.0.0" }, "funding": [ { @@ -345,7 +472,7 @@ "type": "tidelift" } ], - "time": "2022-10-12T20:51:15+00:00" + "time": "2022-10-12T20:59:15+00:00" }, { "name": "doctrine/inflector", @@ -439,256 +566,39 @@ "time": "2023-06-16T13:40:37+00:00" }, { - "name": "guzzlehttp/guzzle", - "version": "7.7.0", - "source": { - "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/fb7566caccf22d74d1ab270de3551f72a58399f5", - "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5", - "shasum": "" - }, - "require": { - "ext-json": "*", - "guzzlehttp/promises": "^1.5.3 || ^2.0", - "guzzlehttp/psr7": "^1.9.1 || ^2.4.5", - "php": "^7.2.5 || ^8.0", - "psr/http-client": "^1.0", - "symfony/deprecation-contracts": "^2.2 || ^3.0" - }, - "provide": { - "psr/http-client-implementation": "1.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", - "ext-curl": "*", - "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", - "php-http/message-factory": "^1.1", - "phpunit/phpunit": "^8.5.29 || ^9.5.23", - "psr/log": "^1.1 || ^2.0 || ^3.0" - }, - "suggest": { - "ext-curl": "Required for CURL handler support", - "ext-intl": "Required for Internationalized Domain Name (IDN) support", - "psr/log": "Required for using the Log middleware" - }, - "type": "library", - "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false - } - }, - "autoload": { - "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", - "keywords": [ - "client", - "curl", - "framework", - "http", - "http client", - "psr-18", - "psr-7", - "rest", - "web service" - ], - "support": { - "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.7.0" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", - "type": "tidelift" - } - ], - "time": "2023-05-21T14:04:53+00:00" - }, - { - "name": "guzzlehttp/promises", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/guzzle/promises.git", - "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/3a494dc7dc1d7d12e511890177ae2d0e6c107da6", - "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6", - "shasum": "" - }, - "require": { - "php": "^7.2.5 || ^8.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", - "phpunit/phpunit": "^8.5.29 || ^9.5.23" - }, - "type": "library", - "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false - } - }, - "autoload": { - "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" - ], - "support": { - "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/2.0.0" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", - "type": "tidelift" - } - ], - "time": "2023-05-21T13:50:22+00:00" - }, - { - "name": "guzzlehttp/psr7", - "version": "2.5.0", + "name": "hashids/hashids", + "version": "5.0.2", "source": { "type": "git", - "url": "https://github.com/guzzle/psr7.git", - "reference": "b635f279edd83fc275f822a1188157ffea568ff6" + "url": "https://github.com/vinkla/hashids.git", + "reference": "197171016b77ddf14e259e186559152eb3f8cf33" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6", - "reference": "b635f279edd83fc275f822a1188157ffea568ff6", + "url": "https://api.github.com/repos/vinkla/hashids/zipball/197171016b77ddf14e259e186559152eb3f8cf33", + "reference": "197171016b77ddf14e259e186559152eb3f8cf33", "shasum": "" }, "require": { - "php": "^7.2.5 || ^8.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.1 || ^2.0", - "ralouphie/getallheaders": "^3.0" - }, - "provide": { - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" + "ext-mbstring": "*", + "php": "^8.1" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", - "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.29 || ^9.5.23" + "phpunit/phpunit": "^10.0" }, "suggest": { - "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + "ext-bcmath": "Required to use BC Math arbitrary precision mathematics (*).", + "ext-gmp": "Required to use GNU multiple precision mathematics (*)." }, "type": "library", "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false + "branch-alias": { + "dev-master": "5.0-dev" } }, "autoload": { "psr-4": { - "GuzzleHttp\\Psr7\\": "src/" + "Hashids\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -697,107 +607,68 @@ ], "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" + "name": "Ivan Akimov", + "email": "ivan@barreleye.com" }, { - "name": "Márk Sági-Kazár", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://sagikazarmark.hu" + "name": "Vincent Klaiber", + "email": "hello@doubledip.se" } ], - "description": "PSR-7 message implementation that also provides common utility methods", + "description": "Generate short, unique, non-sequential ids (like YouTube and Bitly) from numbers", + "homepage": "https://hashids.org/php", "keywords": [ - "http", - "message", - "psr-7", - "request", - "response", - "stream", - "uri", - "url" + "bitly", + "decode", + "encode", + "hash", + "hashid", + "hashids", + "ids", + "obfuscate", + "youtube" ], "support": { - "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.5.0" + "issues": "https://github.com/vinkla/hashids/issues", + "source": "https://github.com/vinkla/hashids/tree/5.0.2" }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", - "type": "tidelift" - } - ], - "time": "2023-04-17T16:11:26+00:00" + "time": "2023-02-23T15:00:54+00:00" }, { - "name": "hashids/hashids", - "version": "4.1.0", + "name": "illuminate/collections", + "version": "v10.39.0", "source": { "type": "git", - "url": "https://github.com/vinkla/hashids.git", - "reference": "8cab111f78e0bd9c76953b082919fc9e251761be" + "url": "https://github.com/illuminate/collections.git", + "reference": "63fc240a047788fbc2ebe153de85cb72fce88440" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vinkla/hashids/zipball/8cab111f78e0bd9c76953b082919fc9e251761be", - "reference": "8cab111f78e0bd9c76953b082919fc9e251761be", + "url": "https://api.github.com/repos/illuminate/collections/zipball/63fc240a047788fbc2ebe153de85cb72fce88440", + "reference": "63fc240a047788fbc2ebe153de85cb72fce88440", "shasum": "" }, "require": { - "ext-mbstring": "*", - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^8.0 || ^9.4", - "squizlabs/php_codesniffer": "^3.5" + "illuminate/conditionable": "^10.0", + "illuminate/contracts": "^10.0", + "illuminate/macroable": "^10.0", + "php": "^8.1" }, "suggest": { - "ext-bcmath": "Required to use BC Math arbitrary precision mathematics (*).", - "ext-gmp": "Required to use GNU multiple precision mathematics (*)." + "symfony/var-dumper": "Required to use the dump method (^6.2)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.1-dev" + "dev-master": "10.x-dev" } }, "autoload": { + "files": [ + "helpers.php" + ], "psr-4": { - "Hashids\\": "src/" + "Illuminate\\Support\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -806,65 +677,42 @@ ], "authors": [ { - "name": "Ivan Akimov", - "email": "ivan@barreleye.com" - }, - { - "name": "Vincent Klaiber", - "email": "hello@doubledip.se" + "name": "Taylor Otwell", + "email": "taylor@laravel.com" } ], - "description": "Generate short, unique, non-sequential ids (like YouTube and Bitly) from numbers", - "homepage": "https://hashids.org/php", - "keywords": [ - "bitly", - "decode", - "encode", - "hash", - "hashid", - "hashids", - "ids", - "obfuscate", - "youtube" - ], + "description": "The Illuminate Collections package.", + "homepage": "https://laravel.com", "support": { - "issues": "https://github.com/vinkla/hashids/issues", - "source": "https://github.com/vinkla/hashids/tree/4.1.0" + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" }, - "time": "2020-11-26T19:24:33+00:00" + "time": "2023-12-21T14:17:35+00:00" }, { - "name": "illuminate/collections", - "version": "v8.83.27", + "name": "illuminate/conditionable", + "version": "v10.39.0", "source": { "type": "git", - "url": "https://github.com/illuminate/collections.git", - "reference": "705a4e1ef93cd492c45b9b3e7911cccc990a07f4" + "url": "https://github.com/illuminate/conditionable.git", + "reference": "d0958e4741fc9d6f516a552060fd1b829a85e009" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/collections/zipball/705a4e1ef93cd492c45b9b3e7911cccc990a07f4", - "reference": "705a4e1ef93cd492c45b9b3e7911cccc990a07f4", + "url": "https://api.github.com/repos/illuminate/conditionable/zipball/d0958e4741fc9d6f516a552060fd1b829a85e009", + "reference": "d0958e4741fc9d6f516a552060fd1b829a85e009", "shasum": "" }, "require": { - "illuminate/contracts": "^8.0", - "illuminate/macroable": "^8.0", - "php": "^7.3|^8.0" - }, - "suggest": { - "symfony/var-dumper": "Required to use the dump method (^5.4)." + "php": "^8.0.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "8.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { - "files": [ - "helpers.php" - ], "psr-4": { "Illuminate\\Support\\": "" } @@ -879,40 +727,40 @@ "email": "taylor@laravel.com" } ], - "description": "The Illuminate Collections package.", + "description": "The Illuminate Conditionable package.", "homepage": "https://laravel.com", "support": { "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-06-23T15:29:49+00:00" + "time": "2023-02-03T08:06:17+00:00" }, { "name": "illuminate/container", - "version": "v8.83.27", + "version": "v10.39.0", "source": { "type": "git", "url": "https://github.com/illuminate/container.git", - "reference": "14062628d05f75047c5a1360b9350028427d568e" + "reference": "ddc26273085fad3c471b2602ad820e0097ff7939" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/container/zipball/14062628d05f75047c5a1360b9350028427d568e", - "reference": "14062628d05f75047c5a1360b9350028427d568e", + "url": "https://api.github.com/repos/illuminate/container/zipball/ddc26273085fad3c471b2602ad820e0097ff7939", + "reference": "ddc26273085fad3c471b2602ad820e0097ff7939", "shasum": "" }, "require": { - "illuminate/contracts": "^8.0", - "php": "^7.3|^8.0", - "psr/container": "^1.0" + "illuminate/contracts": "^10.0", + "php": "^8.1", + "psr/container": "^1.1.1|^2.0.1" }, "provide": { - "psr/container-implementation": "1.0" + "psr/container-implementation": "1.1|2.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "8.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { @@ -936,31 +784,31 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-02-02T21:03:35+00:00" + "time": "2023-06-18T09:12:03+00:00" }, { "name": "illuminate/contracts", - "version": "v8.83.27", + "version": "v10.39.0", "source": { "type": "git", "url": "https://github.com/illuminate/contracts.git", - "reference": "5e0fd287a1b22a6b346a9f7cd484d8cf0234585d" + "reference": "f6bf37a272fda164f6c451407c99f820eb1eb95b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/contracts/zipball/5e0fd287a1b22a6b346a9f7cd484d8cf0234585d", - "reference": "5e0fd287a1b22a6b346a9f7cd484d8cf0234585d", + "url": "https://api.github.com/repos/illuminate/contracts/zipball/f6bf37a272fda164f6c451407c99f820eb1eb95b", + "reference": "f6bf37a272fda164f6c451407c99f820eb1eb95b", "shasum": "" }, "require": { - "php": "^7.3|^8.0", - "psr/container": "^1.0", - "psr/simple-cache": "^1.0" + "php": "^8.1", + "psr/container": "^1.1.1|^2.0.1", + "psr/simple-cache": "^1.0|^2.0|^3.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "8.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { @@ -984,45 +832,50 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-01-13T14:47:47+00:00" + "time": "2023-10-30T00:59:22+00:00" }, { "name": "illuminate/database", - "version": "v8.83.27", + "version": "v10.39.0", "source": { "type": "git", "url": "https://github.com/illuminate/database.git", - "reference": "1a5b0e4e6913415464fa2aab554a38b9e6fa44b1" + "reference": "f014850671278a8d1a0e9fd2f421aad5b487ab9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/database/zipball/1a5b0e4e6913415464fa2aab554a38b9e6fa44b1", - "reference": "1a5b0e4e6913415464fa2aab554a38b9e6fa44b1", + "url": "https://api.github.com/repos/illuminate/database/zipball/f014850671278a8d1a0e9fd2f421aad5b487ab9e", + "reference": "f014850671278a8d1a0e9fd2f421aad5b487ab9e", "shasum": "" }, "require": { - "ext-json": "*", - "illuminate/collections": "^8.0", - "illuminate/container": "^8.0", - "illuminate/contracts": "^8.0", - "illuminate/macroable": "^8.0", - "illuminate/support": "^8.0", - "php": "^7.3|^8.0", - "symfony/console": "^5.4" + "brick/math": "^0.9.3|^0.10.2|^0.11", + "ext-pdo": "*", + "illuminate/collections": "^10.0", + "illuminate/container": "^10.0", + "illuminate/contracts": "^10.0", + "illuminate/macroable": "^10.0", + "illuminate/support": "^10.0", + "php": "^8.1" + }, + "conflict": { + "carbonphp/carbon-doctrine-types": ">=3.0", + "doctrine/dbal": ">=4.0" }, "suggest": { - "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.13.3|^3.1.4).", - "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", - "illuminate/console": "Required to use the database commands (^8.0).", - "illuminate/events": "Required to use the observers with Eloquent (^8.0).", - "illuminate/filesystem": "Required to use the migrations (^8.0).", - "illuminate/pagination": "Required to paginate the result set (^8.0).", - "symfony/finder": "Required to use Eloquent model factories (^5.4)." + "doctrine/dbal": "Required to rename columns and drop SQLite columns (^3.5.1).", + "ext-filter": "Required to use the Postgres database driver.", + "fakerphp/faker": "Required to use the eloquent factory builder (^1.21).", + "illuminate/console": "Required to use the database commands (^10.0).", + "illuminate/events": "Required to use the observers with Eloquent (^10.0).", + "illuminate/filesystem": "Required to use the migrations (^10.0).", + "illuminate/pagination": "Required to paginate the result set (^10.0).", + "symfony/finder": "Required to use Eloquent model factories (^6.2)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "8.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { @@ -1052,48 +905,53 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-08-31T16:16:06+00:00" + "time": "2023-12-21T01:49:42+00:00" }, { "name": "illuminate/filesystem", - "version": "v8.83.27", + "version": "v10.39.0", "source": { "type": "git", "url": "https://github.com/illuminate/filesystem.git", - "reference": "73db3e9a233ed587ba54f52ab8580f3c7bc872b2" + "reference": "c765c61cf1308d4f5f3dc3c03ed5f920953b795c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/filesystem/zipball/73db3e9a233ed587ba54f52ab8580f3c7bc872b2", - "reference": "73db3e9a233ed587ba54f52ab8580f3c7bc872b2", + "url": "https://api.github.com/repos/illuminate/filesystem/zipball/c765c61cf1308d4f5f3dc3c03ed5f920953b795c", + "reference": "c765c61cf1308d4f5f3dc3c03ed5f920953b795c", "shasum": "" }, "require": { - "illuminate/collections": "^8.0", - "illuminate/contracts": "^8.0", - "illuminate/macroable": "^8.0", - "illuminate/support": "^8.0", - "php": "^7.3|^8.0", - "symfony/finder": "^5.4" + "illuminate/collections": "^10.0", + "illuminate/contracts": "^10.0", + "illuminate/macroable": "^10.0", + "illuminate/support": "^10.0", + "php": "^8.1", + "symfony/finder": "^6.2" }, "suggest": { + "ext-fileinfo": "Required to use the Filesystem class.", "ext-ftp": "Required to use the Flysystem FTP driver.", + "ext-hash": "Required to use the Filesystem class.", "illuminate/http": "Required for handling uploaded files (^7.0).", - "league/flysystem": "Required to use the Flysystem local and FTP drivers (^1.1).", - "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", - "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", - "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", + "league/flysystem": "Required to use the Flysystem local driver (^3.0.16).", + "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).", + "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).", + "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).", "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", - "symfony/filesystem": "Required to enable support for relative symbolic links (^5.4).", - "symfony/mime": "Required to enable support for guessing extensions (^5.4)." + "symfony/filesystem": "Required to enable support for relative symbolic links (^6.2).", + "symfony/mime": "Required to enable support for guessing extensions (^6.2)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "8.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { + "files": [ + "functions.php" + ], "psr-4": { "Illuminate\\Filesystem\\": "" } @@ -1114,29 +972,29 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-01-15T15:00:40+00:00" + "time": "2023-12-21T15:30:21+00:00" }, { "name": "illuminate/macroable", - "version": "v8.83.27", + "version": "v10.39.0", "source": { "type": "git", "url": "https://github.com/illuminate/macroable.git", - "reference": "aed81891a6e046fdee72edd497f822190f61c162" + "reference": "dff667a46ac37b634dcf68909d9d41e94dc97c27" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/macroable/zipball/aed81891a6e046fdee72edd497f822190f61c162", - "reference": "aed81891a6e046fdee72edd497f822190f61c162", + "url": "https://api.github.com/repos/illuminate/macroable/zipball/dff667a46ac37b634dcf68909d9d41e94dc97c27", + "reference": "dff667a46ac37b634dcf68909d9d41e94dc97c27", "shasum": "" }, "require": { - "php": "^7.3|^8.0" + "php": "^8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "8.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { @@ -1160,108 +1018,59 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-11-16T13:57:03+00:00" + "time": "2023-06-05T12:46:42+00:00" }, { "name": "illuminate/support", - "version": "v8.83.27", + "version": "v10.39.0", "source": { "type": "git", "url": "https://github.com/illuminate/support.git", - "reference": "1c79242468d3bbd9a0f7477df34f9647dde2a09b" + "reference": "6705007f24091863fefdf1f9320ac2c121cf37f1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/support/zipball/1c79242468d3bbd9a0f7477df34f9647dde2a09b", - "reference": "1c79242468d3bbd9a0f7477df34f9647dde2a09b", + "url": "https://api.github.com/repos/illuminate/support/zipball/6705007f24091863fefdf1f9320ac2c121cf37f1", + "reference": "6705007f24091863fefdf1f9320ac2c121cf37f1", "shasum": "" }, "require": { - "doctrine/inflector": "^1.4|^2.0", - "ext-json": "*", + "doctrine/inflector": "^2.0", + "ext-ctype": "*", + "ext-filter": "*", "ext-mbstring": "*", - "illuminate/collections": "^8.0", - "illuminate/contracts": "^8.0", - "illuminate/macroable": "^8.0", - "nesbot/carbon": "^2.53.1", - "php": "^7.3|^8.0", - "voku/portable-ascii": "^1.6.1" + "illuminate/collections": "^10.0", + "illuminate/conditionable": "^10.0", + "illuminate/contracts": "^10.0", + "illuminate/macroable": "^10.0", + "nesbot/carbon": "^2.67", + "php": "^8.1", + "voku/portable-ascii": "^2.0" }, "conflict": { "tightenco/collect": "<5.5.33" }, "suggest": { - "illuminate/filesystem": "Required to use the composer class (^8.0).", - "league/commonmark": "Required to use Str::markdown() and Stringable::markdown() (^1.3|^2.0.2).", - "ramsey/uuid": "Required to use Str::uuid() (^4.2.2).", - "symfony/process": "Required to use the composer class (^5.4).", - "symfony/var-dumper": "Required to use the dd function (^5.4).", + "illuminate/filesystem": "Required to use the composer class (^10.0).", + "league/commonmark": "Required to use Str::markdown() and Stringable::markdown() (^2.0.2).", + "ramsey/uuid": "Required to use Str::uuid() (^4.7).", + "symfony/process": "Required to use the composer class (^6.2).", + "symfony/uid": "Required to use Str::ulid() (^6.2).", + "symfony/var-dumper": "Required to use the dd function (^6.2).", "vlucas/phpdotenv": "Required to use the Env class and env helper (^5.4.1)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "8.x-dev" - } - }, - "autoload": { - "files": [ - "helpers.php" - ], - "psr-4": { - "Illuminate\\Support\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Support package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-09-21T21:30:03+00:00" - }, - { - "name": "illuminate/translation", - "version": "v8.83.27", - "source": { - "type": "git", - "url": "https://github.com/illuminate/translation.git", - "reference": "e119d1e55351bd846579c333dd24f9a042b724b2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/translation/zipball/e119d1e55351bd846579c333dd24f9a042b724b2", - "reference": "e119d1e55351bd846579c333dd24f9a042b724b2", - "shasum": "" - }, - "require": { - "ext-json": "*", - "illuminate/collections": "^8.0", - "illuminate/contracts": "^8.0", - "illuminate/filesystem": "^8.0", - "illuminate/macroable": "^8.0", - "illuminate/support": "^8.0", - "php": "^7.3|^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "8.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { + "files": [ + "helpers.php" + ], "psr-4": { - "Illuminate\\Translation\\": "" + "Illuminate\\Support\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1274,48 +1083,45 @@ "email": "taylor@laravel.com" } ], - "description": "The Illuminate Translation package.", + "description": "The Illuminate Support package.", "homepage": "https://laravel.com", "support": { "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-05-02T13:55:33+00:00" + "time": "2023-12-25T01:11:56+00:00" }, { - "name": "league/oauth2-client", - "version": "2.7.0", + "name": "illuminate/translation", + "version": "v10.39.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/oauth2-client.git", - "reference": "160d6274b03562ebeb55ed18399281d8118b76c8" + "url": "https://github.com/illuminate/translation.git", + "reference": "9df0066e77e0d2afcc9a23838ee52e2542530682" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/160d6274b03562ebeb55ed18399281d8118b76c8", - "reference": "160d6274b03562ebeb55ed18399281d8118b76c8", + "url": "https://api.github.com/repos/illuminate/translation/zipball/9df0066e77e0d2afcc9a23838ee52e2542530682", + "reference": "9df0066e77e0d2afcc9a23838ee52e2542530682", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "^6.0 || ^7.0", - "paragonie/random_compat": "^1 || ^2 || ^9.99", - "php": "^5.6 || ^7.0 || ^8.0" - }, - "require-dev": { - "mockery/mockery": "^1.3.5", - "php-parallel-lint/php-parallel-lint": "^1.3.1", - "phpunit/phpunit": "^5.7 || ^6.0 || ^9.5", - "squizlabs/php_codesniffer": "^2.3 || ^3.0" + "illuminate/collections": "^10.0", + "illuminate/contracts": "^10.0", + "illuminate/filesystem": "^10.0", + "illuminate/macroable": "^10.0", + "illuminate/support": "^10.0", + "php": "^8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-2.x": "2.0.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { "psr-4": { - "League\\OAuth2\\Client\\": "src/" + "Illuminate\\Translation\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1324,33 +1130,17 @@ ], "authors": [ { - "name": "Alex Bilbie", - "email": "hello@alexbilbie.com", - "homepage": "http://www.alexbilbie.com", - "role": "Developer" - }, - { - "name": "Woody Gilk", - "homepage": "https://github.com/shadowhand", - "role": "Contributor" + "name": "Taylor Otwell", + "email": "taylor@laravel.com" } ], - "description": "OAuth 2.0 Client Library", - "keywords": [ - "Authentication", - "SSO", - "authorization", - "identity", - "idp", - "oauth", - "oauth2", - "single sign on" - ], + "description": "The Illuminate Translation package.", + "homepage": "https://laravel.com", "support": { - "issues": "https://github.com/thephpleague/oauth2-client/issues", - "source": "https://github.com/thephpleague/oauth2-client/tree/2.7.0" + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" }, - "time": "2023-04-16T18:19:15+00:00" + "time": "2023-12-12T14:56:20+00:00" }, { "name": "matthiasmullie/minify", @@ -1478,28 +1268,33 @@ }, { "name": "nesbot/carbon", - "version": "2.67.0", + "version": "2.72.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "c1001b3bc75039b07f38a79db5237c4c529e04c8" + "reference": "2b3b3db0a2d0556a177392ff1a3bf5608fa09f78" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/c1001b3bc75039b07f38a79db5237c4c529e04c8", - "reference": "c1001b3bc75039b07f38a79db5237c4c529e04c8", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/2b3b3db0a2d0556a177392ff1a3bf5608fa09f78", + "reference": "2b3b3db0a2d0556a177392ff1a3bf5608fa09f78", "shasum": "" }, "require": { + "carbonphp/carbon-doctrine-types": "*", "ext-json": "*", "php": "^7.1.8 || ^8.0", + "psr/clock": "^1.0", "symfony/polyfill-mbstring": "^1.0", "symfony/polyfill-php80": "^1.16", "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" }, + "provide": { + "psr/clock-implementation": "1.0" + }, "require-dev": { - "doctrine/dbal": "^2.0 || ^3.1.4", - "doctrine/orm": "^2.7", + "doctrine/dbal": "^2.0 || ^3.1.4 || ^4.0", + "doctrine/orm": "^2.7 || ^3.0", "friendsofphp/php-cs-fixer": "^3.0", "kylekatarnls/multi-tester": "^2.0", "ondrejmirtes/better-reflection": "*", @@ -1576,57 +1371,7 @@ "type": "tidelift" } ], - "time": "2023-05-25T22:09:47+00:00" - }, - { - "name": "paragonie/random_compat", - "version": "v9.99.100", - "source": { - "type": "git", - "url": "https://github.com/paragonie/random_compat.git", - "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/996434e5492cb4c3edcb9168db6fbb1359ef965a", - "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a", - "shasum": "" - }, - "require": { - "php": ">= 7" - }, - "require-dev": { - "phpunit/phpunit": "4.*|5.*", - "vimeo/psalm": "^1" - }, - "suggest": { - "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." - }, - "type": "library", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paragon Initiative Enterprises", - "email": "security@paragonie.com", - "homepage": "https://paragonie.com" - } - ], - "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", - "keywords": [ - "csprng", - "polyfill", - "pseudorandom", - "random" - ], - "support": { - "email": "info@paragonie.com", - "issues": "https://github.com/paragonie/random_compat/issues", - "source": "https://github.com/paragonie/random_compat" - }, - "time": "2020-10-15T08:29:30+00:00" + "time": "2023-12-08T23:47:49+00:00" }, { "name": "phroute/phroute", @@ -1678,27 +1423,28 @@ }, { "name": "predis/predis", - "version": "v1.1.10", + "version": "v2.2.2", "source": { "type": "git", "url": "https://github.com/predis/predis.git", - "reference": "a2fb02d738bedadcffdbb07efa3a5e7bd57f8d6e" + "reference": "b1d3255ed9ad4d7254f9f9bba386c99f4bb983d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/predis/predis/zipball/a2fb02d738bedadcffdbb07efa3a5e7bd57f8d6e", - "reference": "a2fb02d738bedadcffdbb07efa3a5e7bd57f8d6e", + "url": "https://api.github.com/repos/predis/predis/zipball/b1d3255ed9ad4d7254f9f9bba386c99f4bb983d1", + "reference": "b1d3255ed9ad4d7254f9f9bba386c99f4bb983d1", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": "^7.2 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "~4.8" + "friendsofphp/php-cs-fixer": "^3.3", + "phpstan/phpstan": "^1.9", + "phpunit/phpunit": "^8.0 || ~9.4.4" }, "suggest": { - "ext-curl": "Allows access to Webdis when paired with phpiredis", - "ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol" + "ext-relay": "Faster connection with in-memory caching (>=0.6.2)" }, "type": "library", "autoload": { @@ -1711,19 +1457,13 @@ "MIT" ], "authors": [ - { - "name": "Daniele Alessandri", - "email": "suppakilla@gmail.com", - "homepage": "http://clorophilla.net", - "role": "Creator & Maintainer" - }, { "name": "Till Krüss", "homepage": "https://till.im", "role": "Maintainer" } ], - "description": "Flexible and feature-complete Redis client for PHP and HHVM", + "description": "A flexible and feature-complete Redis client for PHP.", "homepage": "http://github.com/predis/predis", "keywords": [ "nosql", @@ -1732,7 +1472,7 @@ ], "support": { "issues": "https://github.com/predis/predis/issues", - "source": "https://github.com/predis/predis/tree/v1.1.10" + "source": "https://github.com/predis/predis/tree/v2.2.2" }, "funding": [ { @@ -1740,29 +1480,34 @@ "type": "github" } ], - "time": "2022-01-05T17:46:08+00:00" + "time": "2023-09-13T16:42:03+00:00" }, { - "name": "psr/container", - "version": "1.1.2", + "name": "psr/cache", + "version": "3.0.0", "source": { "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + "url": "https://github.com/php-fig/cache.git", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", "shasum": "" }, "require": { - "php": ">=7.4.0" + "php": ">=8.0.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, "autoload": { "psr-4": { - "Psr\\Container\\": "src/" + "Psr\\Cache\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1775,48 +1520,38 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", + "description": "Common interface for caching libraries", "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" + "cache", + "psr", + "psr-6" ], "support": { - "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" + "source": "https://github.com/php-fig/cache/tree/3.0.0" }, - "time": "2021-11-05T16:50:12+00:00" + "time": "2021-02-03T23:26:27+00:00" }, { - "name": "psr/http-client", - "version": "1.0.2", + "name": "psr/clock", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/php-fig/http-client.git", - "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" + "url": "https://github.com/php-fig/clock.git", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31", - "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", + "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", "shasum": "" }, "require": { - "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0 || ^2.0" + "php": "^7.0 || ^8.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, "autoload": { "psr-4": { - "Psr\\Http\\Client\\": "src/" + "Psr\\Clock\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1829,46 +1564,47 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "Common interface for HTTP clients", - "homepage": "https://github.com/php-fig/http-client", + "description": "Common interface for reading the clock.", + "homepage": "https://github.com/php-fig/clock", "keywords": [ - "http", - "http-client", + "clock", + "now", "psr", - "psr-18" + "psr-20", + "time" ], "support": { - "source": "https://github.com/php-fig/http-client/tree/1.0.2" + "issues": "https://github.com/php-fig/clock/issues", + "source": "https://github.com/php-fig/clock/tree/1.0.0" }, - "time": "2023-04-10T20:12:12+00:00" + "time": "2022-11-25T14:36:26+00:00" }, { - "name": "psr/http-factory", - "version": "1.0.2", + "name": "psr/container", + "version": "2.0.2", "source": { "type": "git", - "url": "https://github.com/php-fig/http-factory.git", - "reference": "e616d01114759c4c489f93b099585439f795fe35" + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", - "reference": "e616d01114759c4c489f93b099585439f795fe35", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", "shasum": "" }, "require": { - "php": ">=7.0.0", - "psr/http-message": "^1.0 || ^2.0" + "php": ">=7.4.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { "psr-4": { - "Psr\\Http\\Message\\": "src/" + "Psr\\Container\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1881,48 +1617,47 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "Common interfaces for PSR-7 HTTP message factories", + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", "keywords": [ - "factory", - "http", - "message", - "psr", - "psr-17", - "psr-7", - "request", - "response" + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/1.0.2" + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" }, - "time": "2023-04-10T20:10:41+00:00" + "time": "2021-11-05T16:47:00+00:00" }, { - "name": "psr/http-message", - "version": "2.0", + "name": "psr/log", + "version": "3.0.0", "source": { "type": "git", - "url": "https://github.com/php-fig/http-message.git", - "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" + "url": "https://github.com/php-fig/log.git", + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", - "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001", + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0" + "php": ">=8.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.x-dev" } }, "autoload": { "psr-4": { - "Psr\\Http\\Message\\": "src/" + "Psr\\Log\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1935,42 +1670,39 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "Common interface for HTTP messages", - "homepage": "https://github.com/php-fig/http-message", + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", "keywords": [ - "http", - "http-message", + "log", "psr", - "psr-7", - "request", - "response" + "psr-3" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/2.0" + "source": "https://github.com/php-fig/log/tree/3.0.0" }, - "time": "2023-04-04T09:54:51+00:00" + "time": "2021-07-14T16:46:02+00:00" }, { "name": "psr/simple-cache", - "version": "1.0.1", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/simple-cache.git", - "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", - "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { @@ -1985,7 +1717,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interfaces for simple caching", @@ -1997,36 +1729,38 @@ "simple-cache" ], "support": { - "source": "https://github.com/php-fig/simple-cache/tree/master" + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" }, - "time": "2017-10-23T01:57:42+00:00" + "time": "2021-10-29T13:26:27+00:00" }, { - "name": "ralouphie/getallheaders", - "version": "3.0.3", + "name": "spatie/array-to-xml", + "version": "3.2.2", "source": { "type": "git", - "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "120b605dfeb996808c31b6477290a714d356e822" + "url": "https://github.com/spatie/array-to-xml.git", + "reference": "96be97e664c87613121d073ea39af4c74e57a7f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", - "reference": "120b605dfeb996808c31b6477290a714d356e822", + "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/96be97e664c87613121d073ea39af4c74e57a7f8", + "reference": "96be97e664c87613121d073ea39af4c74e57a7f8", "shasum": "" }, "require": { - "php": ">=5.6" + "ext-dom": "*", + "php": "^8.0" }, "require-dev": { - "php-coveralls/php-coveralls": "^2.1", - "phpunit/phpunit": "^5 || ^6.5" + "mockery/mockery": "^1.2", + "pestphp/pest": "^1.21", + "spatie/pest-plugin-snapshots": "^1.1" }, "type": "library", "autoload": { - "files": [ - "src/getallheaders.php" - ] + "psr-4": { + "Spatie\\ArrayToXml\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2034,65 +1768,77 @@ ], "authors": [ { - "name": "Ralph Khattar", - "email": "ralph.khattar@gmail.com" + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://freek.dev", + "role": "Developer" } ], - "description": "A polyfill for getallheaders.", + "description": "Convert an array to xml", + "homepage": "https://github.com/spatie/array-to-xml", + "keywords": [ + "array", + "convert", + "xml" + ], "support": { - "issues": "https://github.com/ralouphie/getallheaders/issues", - "source": "https://github.com/ralouphie/getallheaders/tree/develop" + "source": "https://github.com/spatie/array-to-xml/tree/3.2.2" }, - "time": "2019-03-08T08:55:37+00:00" + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + }, + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-11-14T14:08:51+00:00" }, { "name": "symfony/console", - "version": "v5.4.24", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "560fc3ed7a43e6d30ea94a07d77f9a60b8ed0fb8" + "reference": "0254811a143e6bc6c8deea08b589a7e68a37f625" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/560fc3ed7a43e6d30ea94a07d77f9a60b8ed0fb8", - "reference": "560fc3ed7a43e6d30ea94a07d77f9a60b8ed0fb8", + "url": "https://api.github.com/repos/symfony/console/zipball/0254811a143e6bc6c8deea08b589a7e68a37f625", + "reference": "0254811a143e6bc6c8deea08b589a7e68a37f625", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^5.4|^6.0|^7.0" }, "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" }, "provide": { - "psr/log-implementation": "1.0|2.0" + "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/lock": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/stopwatch": "^5.4|^6.0|^7.0", + "symfony/var-dumper": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -2126,7 +1872,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.24" + "source": "https://github.com/symfony/console/tree/v6.4.2" }, "funding": [ { @@ -2142,11 +1888,11 @@ "type": "tidelift" } ], - "time": "2023-05-26T05:13:16+00:00" + "time": "2023-12-10T16:15:48+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.3.0", + "version": "v3.4.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", @@ -2193,7 +1939,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.4.0" }, "funding": [ { @@ -2213,22 +1959,23 @@ }, { "name": "symfony/finder", - "version": "v5.4.21", + "version": "v6.4.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "078e9a5e1871fcfe6a5ce421b539344c21afef19" + "reference": "11d736e97f116ac375a81f96e662911a34cd50ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/078e9a5e1871fcfe6a5ce421b539344c21afef19", - "reference": "078e9a5e1871fcfe6a5ce421b539344c21afef19", + "url": "https://api.github.com/repos/symfony/finder/zipball/11d736e97f116ac375a81f96e662911a34cd50ce", + "reference": "11d736e97f116ac375a81f96e662911a34cd50ce", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0|^7.0" }, "type": "library", "autoload": { @@ -2256,7 +2003,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.21" + "source": "https://github.com/symfony/finder/tree/v6.4.0" }, "funding": [ { @@ -2272,20 +2019,20 @@ "type": "tidelift" } ], - "time": "2023-02-16T09:33:00+00:00" + "time": "2023-10-31T17:30:12+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" + "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb", + "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb", "shasum": "" }, "require": { @@ -2300,7 +2047,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -2338,7 +2085,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.28.0" }, "funding": [ { @@ -2354,20 +2101,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354" + "reference": "875e90aeea2777b6f135677f618529449334a612" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/875e90aeea2777b6f135677f618529449334a612", + "reference": "875e90aeea2777b6f135677f618529449334a612", "shasum": "" }, "require": { @@ -2379,7 +2126,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -2419,7 +2166,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.28.0" }, "funding": [ { @@ -2435,20 +2182,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" + "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92", + "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92", "shasum": "" }, "require": { @@ -2460,7 +2207,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -2503,7 +2250,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.28.0" }, "funding": [ { @@ -2519,20 +2266,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" + "reference": "42292d99c55abe617799667f454222c54c60e229" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229", + "reference": "42292d99c55abe617799667f454222c54c60e229", "shasum": "" }, "require": { @@ -2547,7 +2294,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -2586,86 +2333,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-php73", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0" }, "funding": [ { @@ -2681,20 +2349,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-07-28T09:04:16+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5", + "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5", "shasum": "" }, "require": { @@ -2703,7 +2371,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -2748,7 +2416,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0" }, "funding": [ { @@ -2764,37 +2432,33 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.5.2", + "version": "v3.4.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c" + "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c", - "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/fe07cbc8d837f60caf7018068e350cc5163681a0", + "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/container": "^1.1", - "symfony/deprecation-contracts": "^2.1|^3" + "php": ">=8.1", + "psr/container": "^1.1|^2.0" }, "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -2804,7 +2468,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Service\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2831,7 +2498,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.5.2" + "source": "https://github.com/symfony/service-contracts/tree/v3.4.1" }, "funding": [ { @@ -2847,24 +2514,24 @@ "type": "tidelift" } ], - "time": "2022-05-30T19:17:29+00:00" + "time": "2023-12-26T14:02:43+00:00" }, { "name": "symfony/string", - "version": "v6.3.0", + "version": "v7.0.2", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f" + "reference": "cc78f14f91f5e53b42044d0620961c48028ff9f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/f2e190ee75ff0f5eced645ec0be5c66fac81f51f", - "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f", + "url": "https://api.github.com/repos/symfony/string/zipball/cc78f14f91f5e53b42044d0620961c48028ff9f5", + "reference": "cc78f14f91f5e53b42044d0620961c48028ff9f5", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", @@ -2874,11 +2541,11 @@ "symfony/translation-contracts": "<2.5" }, "require-dev": { - "symfony/error-handler": "^5.4|^6.0", - "symfony/http-client": "^5.4|^6.0", - "symfony/intl": "^6.2", + "symfony/error-handler": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/intl": "^6.4|^7.0", "symfony/translation-contracts": "^2.5|^3.0", - "symfony/var-exporter": "^5.4|^6.0" + "symfony/var-exporter": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -2917,7 +2584,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.3.0" + "source": "https://github.com/symfony/string/tree/v7.0.2" }, "funding": [ { @@ -2933,24 +2600,25 @@ "type": "tidelift" } ], - "time": "2023-03-21T21:06:29+00:00" + "time": "2023-12-10T16:54:46+00:00" }, { "name": "symfony/translation", - "version": "v6.3.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "f72b2cba8f79dd9d536f534f76874b58ad37876f" + "reference": "a2ab2ec1a462e53016de8e8d5e8912bfd62ea681" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/f72b2cba8f79dd9d536f534f76874b58ad37876f", - "reference": "f72b2cba8f79dd9d536f534f76874b58ad37876f", + "url": "https://api.github.com/repos/symfony/translation/zipball/a2ab2ec1a462e53016de8e8d5e8912bfd62ea681", + "reference": "a2ab2ec1a462e53016de8e8d5e8912bfd62ea681", "shasum": "" }, "require": { "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", "symfony/translation-contracts": "^2.5|^3.0" }, @@ -2970,17 +2638,17 @@ "require-dev": { "nikic/php-parser": "^4.13", "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", - "symfony/console": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/finder": "^5.4|^6.0", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/console": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/finder": "^5.4|^6.0|^7.0", "symfony/http-client-contracts": "^2.5|^3.0", - "symfony/http-kernel": "^5.4|^6.0", - "symfony/intl": "^5.4|^6.0", + "symfony/http-kernel": "^5.4|^6.0|^7.0", + "symfony/intl": "^5.4|^6.0|^7.0", "symfony/polyfill-intl-icu": "^1.21", - "symfony/routing": "^5.4|^6.0", + "symfony/routing": "^5.4|^6.0|^7.0", "symfony/service-contracts": "^2.5|^3", - "symfony/yaml": "^5.4|^6.0" + "symfony/yaml": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -3011,7 +2679,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.3.0" + "source": "https://github.com/symfony/translation/tree/v6.4.2" }, "funding": [ { @@ -3027,20 +2695,20 @@ "type": "tidelift" } ], - "time": "2023-05-19T12:46:45+00:00" + "time": "2023-12-18T09:25:29+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.3.0", + "version": "v3.4.1", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "02c24deb352fb0d79db5486c0c79905a85e37e86" + "reference": "06450585bf65e978026bda220cdebca3f867fde7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/02c24deb352fb0d79db5486c0c79905a85e37e86", - "reference": "02c24deb352fb0d79db5486c0c79905a85e37e86", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/06450585bf65e978026bda220cdebca3f867fde7", + "reference": "06450585bf65e978026bda220cdebca3f867fde7", "shasum": "" }, "require": { @@ -3089,7 +2757,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.3.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.4.1" }, "funding": [ { @@ -3105,30 +2773,31 @@ "type": "tidelift" } ], - "time": "2023-05-30T17:17:10+00:00" + "time": "2023-12-26T14:02:43+00:00" }, { "name": "twig/twig", - "version": "v3.6.1", + "version": "v3.8.0", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "7e7d5839d4bec168dfeef0ac66d5c5a2edbabffd" + "reference": "9d15f0ac07f44dc4217883ec6ae02fd555c6f71d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/7e7d5839d4bec168dfeef0ac66d5c5a2edbabffd", - "reference": "7e7d5839d4bec168dfeef0ac66d5c5a2edbabffd", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/9d15f0ac07f44dc4217883ec6ae02fd555c6f71d", + "reference": "9d15f0ac07f44dc4217883ec6ae02fd555c6f71d", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/polyfill-ctype": "^1.8", - "symfony/polyfill-mbstring": "^1.3" + "symfony/polyfill-mbstring": "^1.3", + "symfony/polyfill-php80": "^1.22" }, "require-dev": { "psr/container": "^1.0|^2.0", - "symfony/phpunit-bridge": "^4.4.9|^5.0.9|^6.0" + "symfony/phpunit-bridge": "^5.4.9|^6.3|^7.0" }, "type": "library", "autoload": { @@ -3164,7 +2833,7 @@ ], "support": { "issues": "https://github.com/twigphp/Twig/issues", - "source": "https://github.com/twigphp/Twig/tree/v3.6.1" + "source": "https://github.com/twigphp/Twig/tree/v3.8.0" }, "funding": [ { @@ -3176,20 +2845,20 @@ "type": "tidelift" } ], - "time": "2023-06-08T12:52:13+00:00" + "time": "2023-11-21T18:54:41+00:00" }, { "name": "voku/portable-ascii", - "version": "1.6.1", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/voku/portable-ascii.git", - "reference": "87337c91b9dfacee02452244ee14ab3c43bc485a" + "reference": "b56450eed252f6801410d810c8e1727224ae0743" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/87337c91b9dfacee02452244ee14ab3c43bc485a", - "reference": "87337c91b9dfacee02452244ee14ab3c43bc485a", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743", + "reference": "b56450eed252f6801410d810c8e1727224ae0743", "shasum": "" }, "require": { @@ -3226,7 +2895,7 @@ ], "support": { "issues": "https://github.com/voku/portable-ascii/issues", - "source": "https://github.com/voku/portable-ascii/tree/1.6.1" + "source": "https://github.com/voku/portable-ascii/tree/2.0.1" }, "funding": [ { @@ -3250,91 +2919,26 @@ "type": "tidelift" } ], - "time": "2022-01-24T18:55:24+00:00" - }, - { - "name": "wohali/oauth2-discord-new", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/wohali/oauth2-discord-new.git", - "reference": "2df4d2a882e04c749880797704e4bde8f00ea1d9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/wohali/oauth2-discord-new/zipball/2df4d2a882e04c749880797704e4bde8f00ea1d9", - "reference": "2df4d2a882e04c749880797704e4bde8f00ea1d9", - "shasum": "" - }, - "require": { - "ext-json": "*", - "league/oauth2-client": "^2.0", - "php": "^7.2|^8.0" - }, - "conflict": { - "team-reflex/oauth2-discord": ">=1.0" - }, - "require-dev": { - "mockery/mockery": "~1.3.0", - "php-parallel-lint/php-parallel-lint": "~0.9", - "phpunit/phpunit": "~8.0", - "squizlabs/php_codesniffer": "^2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Wohali\\OAuth2\\Client\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Joan Touzet", - "email": "code@atypical.net", - "homepage": "https://github.com/wohali" - } - ], - "description": "Discord OAuth 2.0 Client Provider for The PHP League OAuth2-Client", - "keywords": [ - "authorisation", - "authorization", - "client", - "discord", - "oauth", - "oauth2" - ], - "support": { - "issues": "https://github.com/wohali/oauth2-discord-new/issues", - "source": "https://github.com/wohali/oauth2-discord-new/tree/1.2.1" - }, - "time": "2022-12-29T18:45:10+00:00" + "time": "2022-03-08T17:03:00+00:00" } ], "packages-dev": [ { "name": "phpstan/phpstan", - "version": "0.12.100", + "version": "1.10.50", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "48236ddf823547081b2b153d1cd2994b784328c3" + "reference": "06a98513ac72c03e8366b5a0cb00750b487032e4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/48236ddf823547081b2b153d1cd2994b784328c3", - "reference": "48236ddf823547081b2b153d1cd2994b784328c3", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/06a98513ac72c03e8366b5a0cb00750b487032e4", + "reference": "06a98513ac72c03e8366b5a0cb00750b487032e4", "shasum": "" }, "require": { - "php": "^7.1|^8.0" + "php": "^7.2|^8.0" }, "conflict": { "phpstan/phpstan-shim": "*" @@ -3344,11 +2948,6 @@ "phpstan.phar" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.12-dev" - } - }, "autoload": { "files": [ "bootstrap.php" @@ -3359,9 +2958,16 @@ "MIT" ], "description": "PHPStan - PHP Static Analysis Tool", + "keywords": [ + "dev", + "static analysis" + ], "support": { + "docs": "https://phpstan.org/user-guide/getting-started", + "forum": "https://github.com/phpstan/phpstan/discussions", "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/0.12.100" + "security": "https://github.com/phpstan/phpstan/security/policy", + "source": "https://github.com/phpstan/phpstan-src" }, "funding": [ { @@ -3377,7 +2983,7 @@ "type": "tidelift" } ], - "time": "2022-11-01T09:52:08+00:00" + "time": "2023-12-13T10:59:42+00:00" } ], "aliases": [], @@ -3386,10 +2992,10 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": ">=8.0.0", + "php": "^8.1", "ext-curl": "*", "ext-json": "*" }, "platform-dev": [], - "plugin-api-version": "2.2.0" + "plugin-api-version": "2.6.0" } diff --git a/config.example.php b/config.example.php index 434e237..fee2ec4 100644 --- a/config.example.php +++ b/config.example.php @@ -14,8 +14,14 @@ 'password' => '', 'prefix' => '', 'database' => 'rverse2_dev', - 'charset' => 'utf8', - 'collation' => 'utf8_unicode_ci', + 'charset' => 'utf8mb4', + 'collation' => 'utf8mb4_unicode_ci', + ], + + // Cache settings + 'cache' => [ + 'host' => 'localhost', + 'port' => 6379, ], // General site settings @@ -180,6 +186,7 @@ 'wiiu' => [], 'web' => [], 'admin' => [], + 'api' => [''], ], // Admin panel settings diff --git a/core.php b/core.php index 14fab3a..4f875ef 100644 --- a/core.php +++ b/core.php @@ -36,9 +36,19 @@ header('X-PJAX-PATH: '.$pjaxurl); header('X-PJAX-OK: 1'); } + require_once path('routes/3ds.php'); } else if (in_array($siteUrl, config('sites.wiiu'))) { $template = 'wiiu'; + + // Wii U pjax stuff + if (array_key_exists('_pjax', $_GET) && array_key_exists('HTTP_X_PJAX', $_SERVER)) { + // pjax doesn't like queries on the header, for some reason + $pjaxurl = preg_replace('/\?.+/', '', $_SERVER['REQUEST_URI']); + header('X-PJAX-PATH: '.$pjaxurl); + header('X-PJAX-OK: 1'); + } + require_once path('routes/wiiu.php'); } else if (in_array($siteUrl, config('sites.web'))) { $template = 'web'; @@ -46,6 +56,9 @@ } else if (in_array($siteUrl, config('sites.admin'))) { $template = 'admin'; require_once path('routes/admin.php'); + } else if (in_array($siteUrl, config('sites.api'))) { + $template = "web"; + require_once path('routes/api.php'); } else { require_once path('routes/default.php'); } diff --git a/database/2023_10_27_133625_create_index_entries.php b/database/2023_10_27_133625_create_index_entries.php new file mode 100644 index 0000000..4401ded --- /dev/null +++ b/database/2023_10_27_133625_create_index_entries.php @@ -0,0 +1,128 @@ +table('comments', function (Blueprint $table) { + $table->index('post'); + $table->index('user'); + $table->fullText('content'); + }); + + $schema->table('communities', function (Blueprint $table) { + $table->index('platform'); + $table->index('type'); + $table->fullText(['name', 'description']); + }); + + $schema->table('console_auth', function (Blueprint $table) { + $table->primary('user_id'); + $table->unique('short_id'); + $table->unique('long_id'); + }); + + $schema->table('empathies', function (Blueprint $table) { + $table->unique(['type', 'id', 'user']); + }); + + $schema->table('favorites', function (Blueprint $table) { + $table->unique(['user_id', 'community_id']); + }); + + $schema->table('followers', function (Blueprint $table) { + $table->unique(['user_id', 'follower_id']); + }); + + $schema->table('mii_mappings', function (Blueprint $table) { + $table->primary('user_id'); + }); + + $schema->table('notifications', function (Blueprint $table) { + $table->index('from'); + $table->index('to'); + }); + + $schema->table('posts', function (Blueprint $table) { + $table->index('community'); + $table->index('user_id'); + $table->fullText('content'); + }); + + $schema->table('users', function (Blueprint $table) { + $table->index('display_name'); + $table->index('username'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('comments', function (Blueprint $table) { + $table->dropIndex(['post']); + $table->dropIndex(['user']); + $table->dropFullText(['content']); + }); + + $schema->table('communities', function (Blueprint $table) { + $table->dropIndex(['platform']); + $table->dropIndex(['type']); + $table->dropFullText(['name', 'description']); + }); + + $schema->table('console_auth', function (Blueprint $table) { + $table->dropPrimary(['user_id']); + $table->dropUnique(['short_id']); + $table->dropUnique(['long_id']); + }); + + $schema->table('empathies', function (Blueprint $table) { + $table->dropUnique(['type', 'id', 'user']); + }); + + $schema->table('favorites', function (Blueprint $table) { + $table->dropUnique(['user_id', 'community_id']); + }); + + $schema->table('followers', function (Blueprint $table) { + $table->dropUnique(['user_id', 'follower_id']); + }); + + $schema->table('mii_mappings', function (Blueprint $table) { + $table->dropPrimary(['user_id']); + }); + + $schema->table('notifications', function (Blueprint $table) { + $table->dropIndex(['from']); + $table->dropIndex(['to']); + }); + + $schema->table('posts', function (Blueprint $table) { + $table->dropIndex(['community']); + $table->dropIndex(['user_id']); + $table->dropFullText(['content']); + }); + + $schema->table('users', function (Blueprint $table) { + $table->dropIndex(['display_name']); + $table->dropIndex(['username']); + }); + } +} \ No newline at end of file diff --git a/database/2023_10_29_190449_add_community_title_id_table.php b/database/2023_10_29_190449_add_community_title_id_table.php new file mode 100644 index 0000000..dab0c02 --- /dev/null +++ b/database/2023_10_29_190449_add_community_title_id_table.php @@ -0,0 +1,45 @@ +create('community_title_ids', function (Blueprint $table) { + $table->integer('community_id')->unsigned()->index(); + $table->string('title_id')->unique(); + + $table->foreign('community_id')->references('id')->on('communities')->cascadeOnDelete(); + }); + + $schema->table('communities', function (Blueprint $table) { + $table->dropColumn('title_id'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->drop('community_title_ids'); + + $schema->table('communities', function (Blueprint $table) { + $table->bigInteger('title_id')->after('id'); + }); + } +} \ No newline at end of file diff --git a/database/2023_10_30_050806_add_community_categories_table.php b/database/2023_10_30_050806_add_community_categories_table.php new file mode 100644 index 0000000..5ead0d5 --- /dev/null +++ b/database/2023_10_30_050806_add_community_categories_table.php @@ -0,0 +1,77 @@ +drop('community_categories'); + + $schema->create('community_categories', function (Blueprint $table) { + $table->increments('id'); + + $table->string('name', 80); + + $table->string('class', 80)->default(''); + + $table->boolean('has_filter')->default(true); + + $table->unsignedInteger('order')->default(0); + }); + + DB::table('community_categories')->insert([ + [ + 'name' => '#new', + 'class' => '#console', + 'has_filter' => true, + 'order' => 1, + ], + [ + 'name' => '#special', + 'class' => 'special', + 'has_filter' => false, + 'order' => 2, + ], + [ + 'name' => '#supporter', + 'class' => 'supporter', + 'has_filter' => false, + 'order' => 3 + ] + ]); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->drop('community_categories'); + + // Recreate the old table, just in case + $schema->create('community_categories', function (Blueprint $table) { + $table->increments('id'); + + $table->string('name', 80); + + $table->string('name_safe', 80); + + $table->boolean('enabled')->default(1); + }); + } +} \ No newline at end of file diff --git a/database/2023_10_30_071807_add_community_platforms_column.php b/database/2023_10_30_071807_add_community_platforms_column.php new file mode 100644 index 0000000..eca31d3 --- /dev/null +++ b/database/2023_10_30_071807_add_community_platforms_column.php @@ -0,0 +1,159 @@ +table('communities', function (Blueprint $table) { + $table->set('platforms', [ + '3ds', + 'wiiu', + 'switch', + 'wii', + 'ds', + 'special', + 'supporter', + ]); + + $table->enum('title_type', [ + 'console', + 'virtual', + 'other' + ])->nullable(); + }); + + // Migrate old platform code to new platform column + $communities = DB::table('communities')->get(['id', 'platform', 'type']); + + foreach ($communities as $community) { + $platform = intval($community->platform); + $type = intval($community->type); + $platforms = match ($platform) { + 1 => ['3ds'], + 2 => ['wiiu'], + 3 => ['3ds','wiiu'], + 4 => ['switch'], + 5 => ['wiiu','switch'], + 6 => ['wii'], + 7 => ['ds'], + 8 => ['wii','ds'], + default => [], + }; + + + $title_type = match ($type) { + 0 => 'console', + 1 => 'virtual', + 2 => 'other', + default => null, + }; + + // Type 3 is special, add it to platforms instead + if ($type === 3) { + $platforms[] = 'special'; + } + + DB::table('communities') + ->where('id', intval($community->id)) + ->update([ + 'platforms' => implode(',', $platforms), + 'title_type' => $title_type + ]); + } + + $schema->table('communities', function (Blueprint $table) { + $table->dropColumn('platform'); + $table->dropColumn('type'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('communities', function (Blueprint $table) { + $table->integer('type')->unsigned()->default(0); + $table->integer('platform')->unsigned()->default(0); + }); + + // Rollback platform migration + $platforms = [ + 1 => ['3ds'], + 2 => ['wiiu'], + 3 => ['3ds','wiiu'], + 4 => ['switch'], + 5 => ['wiiu','switch'], + 6 => ['wii'], + 7 => ['ds'], + 8 => ['wii','ds'], + ]; + + // Do console migration first + foreach ($platforms as $old_platform => $new_platform) { + $communities = DB::table('communities') + ->whereRaw("FIND_IN_SET(?, `platforms`) > 0", implode(',', $new_platform)) + ->get(['id']); + + foreach ($communities as $community) { + DB::table('communities') + ->where('id', intval($community->id)) + ->update([ + 'platform' => $old_platform + ]); + } + } + + // Do types now + $new_types = [ + 0 => 'console', + 1 => 'virtual', + 2 => 'other', + ]; + + foreach ($new_types as $old_type => $new_type) { + $communities = DB::table('communities') + ->where('title_type', $new_type) + ->update([ + 'type' => $old_type + ]); + } + + // Do special communities now + $communities = DB::table('communities') + ->whereRaw("FIND_IN_SET(?, `platforms`) > 0", 'special') + ->get(['id']); + + foreach ($communities as $community) { + DB::table('communities') + ->where('id', intval($community->id)) + ->update([ + 'type' => 3 + ]); + } + + // Everything else that wasn't migrated will default to special community in the old platform type + DB::table('communities')->where('platform', 0)->where('type', 0)->update(['type' => 3]); + + // Finally delete the platforms and title types columns + $schema->table('communities', function (Blueprint $table) { + $table->dropColumn('platforms'); + $table->dropColumn('title_type'); + }); + } +} \ No newline at end of file diff --git a/database/2023_10_30_165224_separate_title_ids_by_region_and_console.php b/database/2023_10_30_165224_separate_title_ids_by_region_and_console.php new file mode 100644 index 0000000..6e71e1e --- /dev/null +++ b/database/2023_10_30_165224_separate_title_ids_by_region_and_console.php @@ -0,0 +1,52 @@ +table('community_title_ids', function (Blueprint $table) { + $table->enum('console', [ + '3ds', + 'wiiu', + ])->nullable(); + + // Regions set and ordered by the account services + // https://github.com/PretendoNetwork/nintendo-wiki/blob/master/docs/wiiu/account.md#headers + $table->set('region', [ + 'japan', + 'usa', + 'europe', + 'australia', + 'china', + 'korea', + 'taiwan' + ]); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('community_title_ids', function (Blueprint $table) { + $table->dropColumn('console'); + $table->dropColumn('region'); + }); + } +} \ No newline at end of file diff --git a/database/2023_10_30_172534_default_region_for_titles.php b/database/2023_10_30_172534_default_region_for_titles.php new file mode 100644 index 0000000..91fca9d --- /dev/null +++ b/database/2023_10_30_172534_default_region_for_titles.php @@ -0,0 +1,49 @@ +table('communities', function (Blueprint $table) { + // Regions set and ordered by the account services + // https://github.com/PretendoNetwork/nintendo-wiki/blob/master/docs/wiiu/account.md#headers + $regionList = [ + 'japan', + 'usa', + 'europe', + 'australia', + 'china', + 'korea', + 'taiwan' + ]; + + // The default for titles is region free now + $table->set('default_region', $regionList)->default(implode(',', $regionList)); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('communities', function (Blueprint $table) { + $table->dropColumn('default_region'); + }); + } +} \ No newline at end of file diff --git a/database/2023_10_31_053719_default_platform_for_titles.php b/database/2023_10_31_053719_default_platform_for_titles.php new file mode 100644 index 0000000..58617ae --- /dev/null +++ b/database/2023_10_31_053719_default_platform_for_titles.php @@ -0,0 +1,42 @@ +table('communities', function (Blueprint $table) { + $table->enum('default_platform', [ + '3ds', + 'wiiu', + 'switch', + 'wii', + 'ds', + ])->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('communities', function (Blueprint $table) { + $table->dropColumn('default_platform'); + }); + } +} \ No newline at end of file diff --git a/database/2024_01_02_035343_add_app_keys_for_posts.php b/database/2024_01_02_035343_add_app_keys_for_posts.php new file mode 100644 index 0000000..9c92869 --- /dev/null +++ b/database/2024_01_02_035343_add_app_keys_for_posts.php @@ -0,0 +1,36 @@ +table('posts', function (Blueprint $table) { + $table->json('app_keys')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('posts', function (Blueprint $table) { + $table->dropColumn('app_keys'); + }); + } +} \ No newline at end of file diff --git a/database/2024_01_02_222106_add_app_data_to_posts_and_communities.php b/database/2024_01_02_222106_add_app_data_to_posts_and_communities.php new file mode 100644 index 0000000..493b358 --- /dev/null +++ b/database/2024_01_02_222106_add_app_data_to_posts_and_communities.php @@ -0,0 +1,44 @@ +table('communities', function (Blueprint $table) { + $table->longText('app_data')->nullable(); + }); + + $schema->table('posts', function (Blueprint $table) { + $table->longText('app_data')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('communities', function (Blueprint $table) { + $table->dropColumn('app_data'); + }); + + $schema->table('posts', function (Blueprint $table) { + $table->dropColumn('app_data'); + }); + } +} \ No newline at end of file diff --git a/database/2024_01_03_031926_add_user_extra_info.php b/database/2024_01_03_031926_add_user_extra_info.php new file mode 100644 index 0000000..b852208 --- /dev/null +++ b/database/2024_01_03_031926_add_user_extra_info.php @@ -0,0 +1,40 @@ +table('users', function (Blueprint $table) { + $table->bigInteger('pid')->nullable()->unique(); + $table->integer('country_id')->nullable(); + $table->integer('region_id')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $schema = DB::getSchemaBuilder(); + + $schema->table('users', function (Blueprint $table) { + $table->dropColumn('pid'); + $table->dropColumn('country_id'); + $table->dropColumn('region_id'); + }); + } +} \ No newline at end of file diff --git a/public/css/n3ds/style.css b/public/css/n3ds/style.css index 144069b..19896d1 100644 --- a/public/css/n3ds/style.css +++ b/public/css/n3ds/style.css @@ -11,7 +11,7 @@ .profile-tutorial .checkbox-button.checked:after, .add-post-page .spoiler-button.checked:after, .add-reply-page .spoiler-button.checked:after { - background: url('/img/checkbox-checked.png') no-repeat center center, -webkit-gradient(linear, left top, left bottom, from(#81e52e), to(#5ac800)) 0 0; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAANBAMAAABvB5JxAAAAMFBMVEVMaXH8/Pz5+fkAAAANDQ3///9lZWX19fX////+/v79/f2lpaXNzc3S0tL////////s9f/RAAAAD3RSTlMA9+QUKT1gwRBmkImasiVVrIMrAAAAU0lEQVR4AWNiAAEWCOUBppj7wJSFHRMzkFKrYHJ2YGA7WMDU2czgeJmBaYOFyYxqBibmb+ZCBQxMzXrbOBUYmH433NNjYGBiyGbQAFHfpm1gYAAANJ0QsJcX9TUAAAAASUVORK5CYII=') no-repeat center center, -webkit-gradient(linear, left top, left bottom, from(#81e52e), to(#5ac800)) 0 0; } .eshop-button:before { background-position: -34px 0; @@ -222,7 +222,7 @@ body { padding: 0; color: #323232; word-wrap: break-word; - background: #eeeeee url('/img/background.png'); + background: #eee url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAABaCAAAAAAdwx7eAAAA4ElEQVR4Ae3Yt5LDQAwDUP7/x94SOyuqdGJl+wJY0OcA1Jo3CpsE278N8EUH+N4QLVq06Jeio5N2nnZEgV41ehXoicHTA5Om86brt03QG/Km+dvGxtELedPDHX/EfeRtY/1JR6yZ8nBQ8ZH2XHFLkxd/n19vxPhHzPCvz/gPk+E/upVmQWl+GT8JMvwEM+am+dsm6KjQUaCBvRRAtGjRokWLFi1atOjPogPoP7r3/3D0/yb1/9x1/JI2/kjXf//ZHsL4roAvLfqrlv6CqKfWaijjGirEhuJT/XU3LVq0aNFHOlH+pCn6LDkAAAAASUVORK5CYII='); background-attachment: fixed; min-height: 460px; } @@ -367,7 +367,7 @@ button { display: inline-block; } #header { - background: url('/img/header.png') #5ac800; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAFVBMVEVOywBOwwBjzQBTzQBUxQBcywBYxQBlXBfjAAAC1UlEQVQ4ywXBwaGEIAwFwMch93CggYTdAoJaAOieg5oG/PZfw58BqLYINbgOYtVJtTnaAo/vH9H6ONZn8ucKl3tiezHzoZ6tBuQJFnX6XeHbA8/aJllnEvHcRkLbEWYYDb4bcRMmMbjZRDUirDfHdjF/NOZ2eenPLL/LAXnTPM6C7+Ozn57tDBzCBW146TtN05mqzqR7Yl0KwFBzEoO3Oou1xHsnSIVjfYD1dKxKfggVuzhZReA45/w9M8ubSj+5iM5sCi7dMu19Zlm8SHfXJee2Qw2+aMrLUooK8S4+98HA56+UTYHvBfpcPD8Sfigc61t4Oye+t9OhVFYN2q5wiMwQBY0Frgo2i9x3T0iwyrk1ZBszrIFUnGtDyscN384UH83luJP/7hR2IeXjJD+uMrcrs2n235XIBIWsoQzx2I1IKqMbQiq6ImTn3CTQWpAYqPXp6JcnuRnbX+Rei8tZQq7J6CewaslHTSRXin4VWhUF1WgO5dR0okua1iKWBsZEM8eoHqrsTVMZteQx4JC3uJ2gVYg/taRDKX1fONtfKfZHuWumr5bo6r69SKQtczUibZSHMQ+jWBZYDWo2XSVBdlDbfTZNwHZ5+p4RqwJ2B75KkCsX/IRYhLGeFD8h7jrTekVBtcliNE0phqasg0g0Asi9IUSJhpQ0hKcoce2gJDel7Sr0e4jXm+ZaibcXkbYTsf1xXm/wV8FHLVNueF5a+DB3M/dmKe8aUxbI8FktpToC0pBliaQSE6ITdibuJ0Ik8aqFVw3C+rp/JFE/yeWdsCv4+3DAmodIJquZRCZVm24SAU66T68DGA1zF8doKeoCYnsIXQObwn9/Ef3JfAhyrDd5V4QI+/qCP9fE+gBpVApdgNpAWmeRPYXs0MXT3jx1yz40pTa4LEaM3+Pc3xImibcTWf6cfpcnbH9Bx0lu5yymoP7SXG8qGA00zGFLsAnntjO1PfE/5HXHm7oqfbEAAAAASUVORK5CYII=') #5ac800; } #header { height: 220px; @@ -2371,7 +2371,7 @@ ul + .headline { .platform-tag-wiiu { background-position: -36px -86px; } -.platform-tag-wiiu-3ds { +.platform-tag-3ds-wiiu { background-position: -72px -86px; width: 67px; } @@ -2714,25 +2714,25 @@ ul + .headline { display: inline-block; } .post-subtype-diary-container { - background: url('/img/diary-header.gif') #04c9db !important; + background: url('data:image/gif;base64,R0lGODlhMAAwAJEAAATC1QTF2QTN3QAAACH5BAQAAAAALAAAAAAwADAAAAL/lB+Seu34onxhLXURkDmL7UXXtRnVUU7ollLqNL5fFTIi9J45LN+Q1fMFh4FWIwGo0WzDHUJnqh1dpiYFyps2jcWk1VEzTsQGb1T47WGZ7BMSzQGP1k/t3BrqyFrSbKxEU2EGl6YSWJVG99NHRZTwiIijKDOpx3YpQQZWiJl45BETM6SJh2Oaefr1aOExuBLFKALJA+SJFRv54RpkiWLIGUfYdCvVgduoBZvjZqxIUqeskrLEMPnx03acC5vHxUy9vSlXeUgJeiY+Jcp7PgywuyX2rlRuyAiOjB2cT7VuXYhrTh5f8EphSLaNxT9zw64w7DQKzLtU1bS9IKVk3y+IGJTC8ToYER9HWSNpIew4bqITFANF0VtQAAA7') #04c9db !important; } .post-subtype-diary-container .count { background-color: #039ba9; } .post-subtype-artwork-container { - background: url('/img/artwork-header.png') #fcc735; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAADFBMVEX8xC38yzr8yy38zDTQSENqAAACN0lEQVR4XgVAQUsiURz/zTAO7/1PrZSoJzfacOdU0UZ5cqUGZ04lJTqnJTaxjrEs1MnCDZ1TG7uyzmkEHcb3KSLcSE8RFOWncCVDPS2ohWdbvzSTt3kzhqqrtUQK9UPhuLCZGtClY6VrvhCOcYe/3KIc9UMwY/uFHyLC/pwdGXBipiyKiqgU9AbIVNbo1liiOzaF2pMHbJVPMjrbQHLx7H2RHfhiURRQyuwZwvbEVaVhoidlpZNonifULsc/6Z42ki/msdWTUPfjmqk52ynPt2H7M3zz3Nv5ItIOFJq5SU/CL9KU3QKfjImVkSV5MjNCU1usl2pGtWLPt6DNR5z3lf3tkmgcoStv8AdmzYFOFEzlExqwXmr9XZfBBLcdN75vVI9stFNWIy77mLM/C5iTzGN6SNbOttlHeJpLgMn9wCDVR/1cbXFRdsmNZdH+KGyXiXjJrxXxTOsY0pAb6Q7HrvyNT7dWA8S3LFzOJyO1rBencr2MYg2Nq+bvxqFedSGN6UkGPUTfojdQR6Yu9ehhdlkeo9b2Ph4eCZdZrQJ0ClwdXJi//Kok8J36uWH+VH1UVwgD6vApy1thY2AAYiFZuQilDi+cAhbMufOfnu075eIHhK6Do+geS4Q5VGRvldfAUH0iHkxg81KEhOfH5JijoRkU2VaBXFmreVCoE+mE+zTdOQ3gVLnmY2sp9RYYBVBoNlWxGy9pHhOgBa3oNL9W3ZCdg/w6uxJ81vvWmJ5BVf2eEZbza5Hif5ky2Up1UlbNAAAAAElFTkSuQmCC') #fcc735; } .post-subtype-artwork-container .count { background-color: #f0b104; } .post-subtype-topic-container { - background: url('/img/topic-header.png') #e8316e; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAADFBMVEX8xC38yzr8yy38zDTQSENqAAACN0lEQVR4XgVAQUsiURz/zTAO7/1PrZSoJzfacOdU0UZ5cqUGZ04lJTqnJTaxjrEs1MnCDZ1TG7uyzmkEHcb3KSLcSE8RFOWncCVDPS2ohWdbvzSTt3kzhqqrtUQK9UPhuLCZGtClY6VrvhCOcYe/3KIc9UMwY/uFHyLC/pwdGXBipiyKiqgU9AbIVNbo1liiOzaF2pMHbJVPMjrbQHLx7H2RHfhiURRQyuwZwvbEVaVhoidlpZNonifULsc/6Z42ki/msdWTUPfjmqk52ynPt2H7M3zz3Nv5ItIOFJq5SU/CL9KU3QKfjImVkSV5MjNCU1usl2pGtWLPt6DNR5z3lf3tkmgcoStv8AdmzYFOFEzlExqwXmr9XZfBBLcdN75vVI9stFNWIy77mLM/C5iTzGN6SNbOttlHeJpLgMn9wCDVR/1cbXFRdsmNZdH+KGyXiXjJrxXxTOsY0pAb6Q7HrvyNT7dWA8S3LFzOJyO1rBencr2MYg2Nq+bvxqFedSGN6UkGPUTfojdQR6Yu9ehhdlkeo9b2Ph4eCZdZrQJ0ClwdXJi//Kok8J36uWH+VH1UVwgD6vApy1thY2AAYiFZuQilDi+cAhbMufOfnu075eIHhK6Do+geS4Q5VGRvldfAUH0iHkxg81KEhOfH5JijoRkU2VaBXFmreVCoE+mE+zTdOQ3gVLnmY2sp9RYYBVBoNlWxGy9pHhOgBa3oNL9W3ZCdg/w6uxJ81vvWmJ5BVf2eEZbza5Hif5ky2Up1UlbNAAAAAElFTkSuQmCC') #e8316e; } .post-subtype-topic-container .count { background-color: #c61651; } .post-subtype-default-container { - background: url('/img/header.png') #5ac800; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAFVBMVEVOywBOwwBjzQBTzQBUxQBcywBYxQBlXBfjAAAC1UlEQVQ4ywXBwaGEIAwFwMch93CggYTdAoJaAOieg5oG/PZfw58BqLYINbgOYtVJtTnaAo/vH9H6ONZn8ucKl3tiezHzoZ6tBuQJFnX6XeHbA8/aJllnEvHcRkLbEWYYDb4bcRMmMbjZRDUirDfHdjF/NOZ2eenPLL/LAXnTPM6C7+Ozn57tDBzCBW146TtN05mqzqR7Yl0KwFBzEoO3Oou1xHsnSIVjfYD1dKxKfggVuzhZReA45/w9M8ubSj+5iM5sCi7dMu19Zlm8SHfXJee2Qw2+aMrLUooK8S4+98HA56+UTYHvBfpcPD8Sfigc61t4Oye+t9OhVFYN2q5wiMwQBY0Frgo2i9x3T0iwyrk1ZBszrIFUnGtDyscN384UH83luJP/7hR2IeXjJD+uMrcrs2n235XIBIWsoQzx2I1IKqMbQiq6ImTn3CTQWpAYqPXp6JcnuRnbX+Rei8tZQq7J6CewaslHTSRXin4VWhUF1WgO5dR0okua1iKWBsZEM8eoHqrsTVMZteQx4JC3uJ2gVYg/taRDKX1fONtfKfZHuWumr5bo6r69SKQtczUibZSHMQ+jWBZYDWo2XSVBdlDbfTZNwHZ5+p4RqwJ2B75KkCsX/IRYhLGeFD8h7jrTekVBtcliNE0phqasg0g0Asi9IUSJhpQ0hKcoce2gJDel7Sr0e4jXm+ZaibcXkbYTsf1xXm/wV8FHLVNueF5a+DB3M/dmKe8aUxbI8FktpToC0pBliaQSE6ITdibuJ0Ik8aqFVw3C+rp/JFE/yeWdsCv4+3DAmodIJquZRCZVm24SAU66T68DGA1zF8doKeoCYnsIXQObwn9/Ef3JfAhyrDd5V4QI+/qCP9fE+gBpVApdgNpAWmeRPYXs0MXT3jx1yz40pTa4LEaM3+Pc3xImibcTWf6cfpcnbH9Bx0lu5yymoP7SXG8qGA00zGFLsAnntjO1PfE/5HXHm7oqfbEAAAAASUVORK5CYII=') #5ac800; } #header-meta { border-bottom: 1px solid #dddddd; @@ -4202,7 +4202,7 @@ ul + .headline { background-color: #fff; } #post-permalink-body.post-subtype-diary:before { - background-image: url('/img/diary-permalink.png'); + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAPCAYAAADd/14OAAAAkUlEQVQoFe3QQQrDIBAF0G8qgrgUwXThrrjzHt1L8VY9mTfIKmspgaArSYIeoPUAHRgYmAfDH3KeJ0ZqGkHNDEPatPf+HkJ4W2snYwwopUgp9Y4xYlmWT4fbtj0ZYy+tNTjnOI4DhBDUWlFKwb7vIC2Mc+6mlHoIIaZ5nvtyXVdIKZFzbkdLh236VcNh/vDrKy/jiDKX9bf8+gAAAABJRU5ErkJggg=='); content: ''; left: -4px; height: 100%; @@ -4352,7 +4352,7 @@ ul + .headline { top: -6px; z-index: 2; left: 58px; - background: url('/img/empathy-selector.png') no-repeat 0 0; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAHCAYAAAAxrNxjAAAAjUlEQVQYlV3OQQqDMBCF4X8kRVeeIdnkki1VobfKTbJReoSuYoWZboyEvt3wvoEnKSVqzAzgdZ4PEbk61yIzm2KMd4Cc8wEsFbuKVHWKMc7e+/o455zpum4REVyLQgiUUgAIIQBc2Knqs0XnTkopLTZZ1/Xrvb+1qEZEGIaBbdsOUdX3vu/jP2px3/efHwHnWT2afX3IAAAAAElFTkSuQmCC') no-repeat 0 0; } #empathy-content .post-permalink-feeling-text { font-size: 12.48px; @@ -4772,7 +4772,7 @@ ul + .headline { .post-list .post-subtype-artwork, .post-list .post-subtype-topic, .post-list .post-subtype-default { - background: url('/img/post-separator.png') repeat-y #ffffff -8px 0px; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADcAAAAGCAIAAADon5EZAAAAOUlEQVQoFWN49+7dr1+//oMBkDE4uQyD34nAgGMY5KEIiVuQKwdtRMOTHyjG4ZxB62KGwe9EYNgBAB1VxX0YvPP9AAAAAElFTkSuQmCC') repeat-y #ffffff -8px 0px; } .post-list .post-subtype-diary .post-meta, .post-list .post-subtype-artwork .post-meta, @@ -4781,10 +4781,10 @@ ul + .headline { background-color: #fff; } .post-list .post-subtype-diary { - background: url('/img/diary-separator.png') repeat-y #ffffff -8px 0; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAAGCAIAAAAZlMqUAAAAqklEQVQoFdWSyQ4DIQxDC4RF/P+3Inb6pNzm2iK1OSDjcRJjjTnnvP6hBKO99723cy6EgOc55xgD4L0XEQCCtZa1FoExBnFrDZ6vaADo6QLEGJHdmClsLaVwslKNshWGrTlnNVprhcQBV96DJxVgS43yEjS06GtvzLRM/7xu/D+PmUJOJEcGhKGOCQkGrGkBUkpglBRXclWB5g1DtNquDLKvzzQP42z9zXoDJUWXl20P0SQAAAAASUVORK5CYII=') repeat-y #ffffff -8px 0; } .post-list .post-subtype-diary:before { - background-image: url('/img/diary-permalink.png'); + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAPCAYAAADd/14OAAAAkUlEQVQoFe3QQQrDIBAF0G8qgrgUwXThrrjzHt1L8VY9mTfIKmspgaArSYIeoPUAHRgYmAfDH3KeJ0ZqGkHNDEPatPf+HkJ4W2snYwwopUgp9Y4xYlmWT4fbtj0ZYy+tNTjnOI4DhBDUWlFKwb7vIC2Mc+6mlHoIIaZ5nvtyXVdIKZFzbkdLh236VcNh/vDrKy/jiDKX9bf8+gAAAABJRU5ErkJggg=='); content: ''; left: -4px; height: 100%; @@ -5330,7 +5330,7 @@ ul + .headline { .favorite-communities .platform-tag-wiiu { background-position: -296px -86px; } -.favorite-communities .platform-tag-wiiu-3ds { +.favorite-communities .platform-tag-3ds-wiiu { background-position: -334px -86px; left: -2px; width: 42px; @@ -5568,6 +5568,9 @@ ul + .headline { .headline-switch { background: #e60012; } +.headline-supporter { + background: #307fe2; +} #body #community-top #identified-user-banner { margin: 0 auto 8px; } @@ -5782,7 +5785,7 @@ ul + .headline { .community-list .platform-tag-3ds { background-position: -139px -86px; } -.community-list .platform-tag-wiiu-3ds { +.community-list .platform-tag-3ds-wiiu { background-position: -197px -86px; width: 61px; } @@ -5802,6 +5805,41 @@ ul + .headline { #favorite-community-list { margin: 0px auto 38px; } +.close-announce-content a { + display: -webkit-box; + -webkit-box-align: center; + -webkit-box-pack: center; + -webkit-box-sizing: content-box; + min-height: 20px; + padding: 5px; + margin: 0 auto; + font-size: 12.48px; + color: #323232; + line-height: 1.2; + background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.5, #ffffff), color-stop(0.8, #f6f6f6), color-stop(0.96, #f5f5f5), to(#bbbbbb)) 0 0; + border-top: 1px solid #ddd; + border-left: 1px solid #ddd; + border-right: 1px solid #b7b7b7; + border-bottom: 1px solid #b7b7b7; + cursor: pointer; + color: #FF9100; + font-weight: bold; + background: -webkit-gradient(linear, left top, left bottom, from(#fffdf0), color-stop(0.5, #fffce4), color-stop(0.8, #fff9cd), color-stop(0.96, #fff9cd), to(#f3e99e)) 0 0; + border: 1px solid #f2db1c; + padding: 3px 10px; + text-align: center; + -webkit-border-radius: 6px; +} +.close-announce-content a a { + color: #323232; +} +.close-announce-content a.disabled, +.close-announce-content a:disabled { + color: #969696; +} +.body-content > .close-announce-content { + margin: 0 auto 6px; +} .identified-user-page .toggle-follow-button { float: right; margin: 5px 0 6px; @@ -6165,12 +6203,12 @@ ul + .headline { } .message-post-list .post:before { position: absolute; - content: url('/img/balloon-message.png'); + content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAJCAYAAAARml2dAAAAkElEQVQIHWP8//8/Awzs2LFDE8jOFRcXz2RBEvQAsjM1NTX95OXlGRhBOoAqTbi4uE5raGgwiImJMYDEmKA6MpWUlMCCIP7fv3/hEtNv3brF8ObNG7A6RkZGiISHh8eZX79+BZw5c2bP27dvGZiZmSF2QI0D2RUEZGfq6Oi4gC2HSYBooKQxHx/fGQwJqKQRAAgsO4TVh8+4AAAAAElFTkSuQmCC'); left: -6px; } .message-post-list .post.my:before { position: absolute; - content: url('/img/balloon-message-own.png'); + content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAJCAYAAAARml2dAAAAnElEQVQIHWPYf3zn/+3bt0/7//8/AzJmkrNgZ+CVYM7csWPHNAYkwHj3/4H/IP7zC78YPr/4Ox3IrPLw8PjA9O8PRJmkARuDkBJLJpAHwgxMDIwQCRAJtAYEwEpZmJgZGP79/s/w5Owvhh8f/oGMAmEGlm9v/zG8uPyL4c+P/+1As6tAgiDA8gxoKVBHMFBwHUQISgL9IIDsfhgbAL7PVL0uVC06AAAAAElFTkSuQmCC'); left: auto; right: -6px; } @@ -6612,7 +6650,7 @@ ul + .headline { } .multi-timeline-post.post-subtype-diary .body:before, .multi-timeline-post.post-subtype-default .body:before { - content: url('/img/balloon-multi-post.png'); + content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAJCAYAAAD6reaeAAAAf0lEQVQIHWP8//8/Awzcv39fjoWF5SETkgCIHc/IyMjAAFJ57969VCD+//r16/9//vwBC1g8ffr0/48fP4DyEADScpyLi4uBnZ0dZhIDSFD+/fv3U1+8eMHw9+9fiARQA8zcmocPH/7/+vXrf0aQIAwAneQBdNJ2uJOgEtdANAA9Ik+NfFf5GAAAAABJRU5ErkJggg=='); width: 5px; height: 9px; position: absolute; @@ -6711,7 +6749,7 @@ ul + .headline { margin-left: 0; } .multi-timeline-post.post-subtype-diary .body:before { - background-image: url('/img/diary-permalink.png'); + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAPCAYAAADd/14OAAAAkUlEQVQoFe3QQQrDIBAF0G8qgrgUwXThrrjzHt1L8VY9mTfIKmspgaArSYIeoPUAHRgYmAfDH3KeJ0ZqGkHNDEPatPf+HkJ4W2snYwwopUgp9Y4xYlmWT4fbtj0ZYy+tNTjnOI4DhBDUWlFKwb7vIC2Mc+6mlHoIIaZ5nvtyXVdIKZFzbkdLh236VcNh/vDrKy/jiDKX9bf8+gAAAABJRU5ErkJggg=='); content: ''; height: 100%; left: -4px; @@ -7066,7 +7104,7 @@ ul + .headline { clear: both; } #post-diary-window:before { - background-image: url('/img/post-diary-window.png'); + background-image: url('data:image/png;base64,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'); background-size: 40px auto; content: ''; height: 35px; @@ -7092,7 +7130,7 @@ ul + .headline { word-wrap: normal; } #post-diary-window .community-container-inner a.arrow-button { - background: url('/img/diary-arrow.png') no-repeat 250px center; + background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAaCAQAAAAUYRSMAAABbklEQVR4AW2KJXTbYRwAPx1V/0ZeTdfbednIYceMZsy8MJcDDRfDNGZQUZkZ86Zu3/vnF86dvFPHNpzKnOMKV+sXNqphnHpygyniJJn9cs88ZDinc44qNYoksA8ul4gZWUuJFI7+xV+fp0xVNJZTPcN3V7K+rENFLOrF5eoa2IJl+d0CBUpiQS+ezoIJvSy+S5OnKOZJyyIwhmXhXZIseTFLEveTcyM9y6NMlBWyYoYk3ifne5cHmTDLZMRVUvgyqgOjWGqZIIusiMvEUYIsqxkLUZbaLvYOu83HuEuEhbbFRlfeZT7CVSaJkxIzH/+4Otl1lGtMECMprurMXsk7Xce4wSTzxMXKOywcw2TkcdcRyVGx3MnbRsbDR7nOBBHmxZLOjKkmO4wcIERYfPhQcpN9XNY5SEh8lUGycAgLcwTFlzqzSXVzpWFhljlt+J+RR1Uv31yuho8Z5r+/n+vNAnuxiFd7s4BJljOsVUP4D0R1qRL4an5FAAAAAElFTkSuQmCC') no-repeat 250px center; background-size: 6px auto; position: absolute; width: 265px; @@ -7125,7 +7163,7 @@ ul + .headline { margin: 0 -5px; } #post-diary-window .diary-screenshot-container label.checked:before { - background-image: url('/img/diary-checkmark.png'); + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAABBCAYAAABo3gIBAAADtklEQVR4Ae1cNZRUQRDckASL2ATX8DI2hGjJcMlwS9AIt4joyCbDJeLh7g4J7u7u7s00Lj2//9b+N3szS71X2d0xr/b/6q6eXnLVBCJqYznAsiZXrSCiRpbLLO/Qn3hhucGyRTWJ0cXyOiXjuWW/ahCjg+VzSo9uMYtRz/I4lYY7MQsyjyS8uE90YTt9fnyVHCjGKMZoEsAifJ7Xij6bHJOFIQGzIjRRAe9eES3vzUL8JK0bSQJ2VoeJbp3IIvzJPbNJwPxYxMg7TfTokn/E4FeHnxoBg2MRZAVJuH6IBfiHLJID7WMQY5pmon9waSfX02FiEKNbWhNVqgujQehiFBwmyhVEFkOuLAwTrYl+PmREMZh09xTQoYZsotyFymJw6Y0zwxBRrWKiIrltF3AgdDH6OUyUq4cohFJmO4belusmmr4JWxZ6W36FBHALLouhltlmIQuyI4WJyk2YDJPVwRpbdrasqRMmKgqhl9mymjD+ZUtjecIxpC1WxETdFUVrwoaX2xrfIR0rLPPZm6gIoS1PXWaPZBeadKzI2ESvIybK5G7VgSJ6mB2EoTYjQY4rJoqU2RXoY3qFHOB/iI2KDS0B/coUw5AE/ndNTiWdWgWWWdnAnhND/nRY/TSm9ZyFBcUY4JiWKyaacZnlMkoSlATJ77MDVyw7ZDwgRsvsm5LLLIcc5DBKJ7gDHhDLJuqnzHLA0dOjQrenTMNv2Yj9QPu3sy+zRDReNTDc2RndgFs24Qz+yuxK/R5DJb9aSSZbwG/Z8DKLlrmdqeM0/kkdt8zjJuoxzfJtFWJkwAFXoLdswFNpymmEBusTqJL8JNFkS75lq0CabY/Fa4H6ZRCVeMuGDI37ZpEdDJodgL4AMFHBSPGhMR6ocD+RTRYwUWBo7OMmTD+wk/wqCIAqmpJXlvmbUOnhCjJZMSPhAjfyMsMEOke5PPKrgfuT5kujvU+5hWwBVwXZROG8csbXPch1pXGCRGFDlMWAjbRYVxbYvFDpa1b4viAaAPcNAAEjbVb5JViws0TpfckFGOAgZRMu2f6NFB/xYY1VSEaKmiycjLFovyLcFUiASrRn5IPf78owFI4OYwMQSMZAz+FzH8x/MgZelZpgt4hhPzlkvPYc/pMxkIgFHI9z/wsfTBdC3hCURcHFMOF/tUvKPLKncJebJMbxeLaMBaPlp4XLMovA5sk+k4Dn8jpFyKLgkBduwhflvxjqrpqCwP5jAnzhV9tzPRD+N6qx++PBlvMtd1rOsexp2SRXx/AFr7aFtJFcc4cAAAAASUVORK5CYII='); background-size: 27px auto; content: ''; width: 27px; diff --git a/public/css/portal/style.css b/public/css/portal/style.css index ec8aea3..bd996a6 100644 --- a/public/css/portal/style.css +++ b/public/css/portal/style.css @@ -1,5 +1,4 @@ -@font-face{ font-family: 'nintendo';src: url('/img/font/nintendoNTLG-DB002.woff');} * {font-family: 'nintendo' !important; -} +/*@font-face{ font-family: 'nintendo';src: url('/img/font/nintendoNTLG-DB002.woff');} * {font-family: 'nintendo' !important;}*/ body { position: relative; font-size: 28px; @@ -3188,10 +3187,37 @@ input.fixed-bottom-button { padding-bottom: 40px; text-align: center; } +.window .window-bottom-input { + padding-bottom: 40px; + text-align: center; + margin: 0 auto; +} .window .window-bottom-buttons.single-button { width: 420px; margin: 0 auto; } +.window .window-bottom-input input { + box-align: center; + -webkit-box-align: center; + box-pack: center; + -webkit-box-pack: center; + box-sizing: content-box; + -webkit-box-sizing: content-box; + min-height: 60px; + padding: 5px 15px; + border: 0; + margin: 0 25px 15px; + font-size: 24px; + color: #323232; + line-height: 1.2; + background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.5, #ffffff), color-stop(0.8, #f6f6f6), color-stop(0.96, #f5f5f5), to(#bbbbbb)) 0 0; + border-radius: 12px; + -webkit-border-radius: 12px; + cursor: pointer; + box-shadow: 0 3px 10px rgba(0, 0, 0, 0.6); + -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.6); + width: 300px; +} .window .window-bottom-buttons .button { display: box; display: -webkit-box; @@ -12309,3 +12335,32 @@ textarea.placeholder { box-shadow: 0 3px 10px rgba(0, 0, 0, 0.6); -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.6); } +.close-announce-content a { + display: block; + min-height: 20px; + padding: 5px; + margin: 0 auto; + font-size: 100%; + cursor: pointer; + color: #FF9100; + line-height: 1.5; + background: -webkit-gradient(linear, left top, left bottom, from(#fffdf0), color-stop(0.5, #fffce4), color-stop(0.8, #fff9cd), color-stop(0.96, #fff9cd), to(#f3e99e)) 0 0; + border: 1px solid #f2db1c; + border-top: 0px; + border-left: 0px; + border-right: 0px; + padding: 6px 20px; + text-align: left; +} +.close-announce-content a a { + color: #323232; +} +.close-announce-content a.disabled, +.close-announce-content a:disabled { + color: #969696; +} +.body-content > .close-announce-content { + margin: -30px 0px 0px -40px; + padding-right: 0; + padding-bottom: 0; +} \ No newline at end of file diff --git a/public/img/artwork-header.png b/public/img/artwork-header.png deleted file mode 100644 index da966f4..0000000 Binary files a/public/img/artwork-header.png and /dev/null differ diff --git a/public/img/background.png b/public/img/background.png deleted file mode 100644 index 1770003..0000000 Binary files a/public/img/background.png and /dev/null differ diff --git a/public/img/balloon-message-own.png b/public/img/balloon-message-own.png deleted file mode 100644 index 474ea45..0000000 Binary files a/public/img/balloon-message-own.png and /dev/null differ diff --git a/public/img/balloon-message.png b/public/img/balloon-message.png deleted file mode 100644 index a615102..0000000 Binary files a/public/img/balloon-message.png and /dev/null differ diff --git a/public/img/balloon-multi-post.png b/public/img/balloon-multi-post.png deleted file mode 100644 index e061ad9..0000000 Binary files a/public/img/balloon-multi-post.png and /dev/null differ diff --git a/public/img/checkbox-checked.png b/public/img/checkbox-checked.png deleted file mode 100644 index 64d3519..0000000 Binary files a/public/img/checkbox-checked.png and /dev/null differ diff --git a/public/img/diary-arrow.png b/public/img/diary-arrow.png deleted file mode 100644 index 9976070..0000000 Binary files a/public/img/diary-arrow.png and /dev/null differ diff --git a/public/img/diary-checkmark.png b/public/img/diary-checkmark.png deleted file mode 100644 index 2f3d1ce..0000000 Binary files a/public/img/diary-checkmark.png and /dev/null differ diff --git a/public/img/diary-header.gif b/public/img/diary-header.gif deleted file mode 100644 index 26db364..0000000 Binary files a/public/img/diary-header.gif and /dev/null differ diff --git a/public/img/diary-permalink.png b/public/img/diary-permalink.png deleted file mode 100644 index 4813295..0000000 Binary files a/public/img/diary-permalink.png and /dev/null differ diff --git a/public/img/diary-separator.png b/public/img/diary-separator.png deleted file mode 100644 index cd3789d..0000000 Binary files a/public/img/diary-separator.png and /dev/null differ diff --git a/public/img/empathy-selector.png b/public/img/empathy-selector.png deleted file mode 100644 index a4e704f..0000000 Binary files a/public/img/empathy-selector.png and /dev/null differ diff --git a/public/img/header.png b/public/img/header.png deleted file mode 100644 index 4caadfa..0000000 Binary files a/public/img/header.png and /dev/null differ diff --git a/public/img/post-diary-window.png b/public/img/post-diary-window.png deleted file mode 100644 index ede0bbf..0000000 Binary files a/public/img/post-diary-window.png and /dev/null differ diff --git a/public/img/post-header.png b/public/img/post-header.png deleted file mode 100644 index 4caadfa..0000000 Binary files a/public/img/post-header.png and /dev/null differ diff --git a/public/img/post-separator.png b/public/img/post-separator.png deleted file mode 100644 index e938ffc..0000000 Binary files a/public/img/post-separator.png and /dev/null differ diff --git a/public/img/signin_base.png b/public/img/signin_base.png deleted file mode 100644 index ff90df2..0000000 Binary files a/public/img/signin_base.png and /dev/null differ diff --git a/public/img/topic-header.png b/public/img/topic-header.png deleted file mode 100644 index 62fa86c..0000000 Binary files a/public/img/topic-header.png and /dev/null differ diff --git a/public/js/n3ds/complete-chi.js b/public/js/n3ds/complete-chi.js index 95d6d1b..d5286f8 100644 --- a/public/js/n3ds/complete-chi.js +++ b/public/js/n3ds/complete-chi.js @@ -1,42 +1,33 @@ - /** - * #Simply Deferred - * ###Simplified Deferred Library (jQuery API) for Node and the Browser - * ####MIT Licensed. - * Portions of this code are inspired and borrowed from [underscore.js](http://underscorejs.org/) (MIT License) - * ####[Source (github)](http://github.com/sudhirj/simply-deferred) | [Documentation](https://github.com/sudhirj/simply-deferred#simply-deferred) - * © Sudhir Jonathan [sudhirjonathan.com](http://www.sudhirjonathan.com) - */ - /** * @license * Lo-Dash 1.3.1 (Custom Build) lodash.com/license | Underscore.js 1.5.1 underscorejs.org/LICENSE * Build: `lodash backbone exports="amd,commonjs,global,node" -o ./dist/lodash.backbone.js` */ -(function(e){String.prototype.trim===e&&(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),Array.prototype.reduce===e&&(Array.prototype.reduce=function(t){if(this===void 0||this===null)throw new TypeError;var n=Object(this),r=n.length>>>0,i=0,s;if(typeof t!="function")throw new TypeError;if(r==0&&arguments.length==1)throw new TypeError;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError}while(!0);while(i0?n.fn.concat.apply([],e):e}function q(e){return e.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}function R(e){return e in f?f[e]:f[e]=new RegExp("(^|\\s)"+e+"(\\s|$)")}function U(e,t){return typeof t=="number"&&!c[q(e)]?t+"px":t}function z(e){var t,n;return a[e]||(t=u.createElement(e),u.body.appendChild(t),n=l(t,"").getPropertyValue("display"),t.parentNode.removeChild(t),n=="none"&&(n="block"),a[e]=n),a[e]}function W(e){return"children"in e?s.call(e.children):n.map(e.childNodes,function(e){if(e.nodeType==1)return e})}function X(n,r,i){for(t in r)i&&(H(r[t])||B(r[t]))?(H(r[t])&&!H(n[t])&&(n[t]={}),B(r[t])&&!B(n[t])&&(n[t]=[]),X(n[t],r[t],i)):r[t]!==e&&(n[t]=r[t])}function V(t,r){return r===e?n(t):n(t).filter(r)}function $(e,t,n,r){return M(t)?t.call(e,n,r):t}function J(e,t,n){n==null?e.removeAttribute(t):e.setAttribute(t,n)}function K(t,n){var r=t.className,i=r&&r.baseVal!==e;if(n===e)return i?r.baseVal:r;i?r.baseVal=n:t.className=n}function Q(e){var t;try{return e?e=="true"||(e=="false"?!1:e=="null"?null:isNaN(t=Number(e))?/^[\[\{]/.test(e)?n.parseJSON(e):e:t):e}catch(r){return e}}function G(e,t){t(e);for(var n in e.childNodes)G(e.childNodes[n],t)}var e,t,n,r,i=[],s=i.slice,o=i.filter,u=window.document,a={},f={},l=u.defaultView.getComputedStyle,c={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},h=/^\s*<(\w+|!)[^>]*>/,p=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/^(?:body|html)$/i,v=["val","css","html","text","data","width","height","offset"],m=["after","prepend","before","append"],g=u.createElement("table"),y=u.createElement("tr"),b={tr:u.createElement("tbody"),tbody:g,thead:g,tfoot:g,td:y,th:y,"*":u.createElement("div")},w=/complete|loaded|interactive/,E=/^\.([\w-]+)$/,S=/^#([\w-]*)$/,x=/^[\w-]+$/,T={},N=T.toString,C={},k,L,A=u.createElement("div");return C.matches=function(e,t){if(!e||e.nodeType!==1)return!1;var n=e.webkitMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.matchesSelector;if(n)return n.call(e,t);var r,i=e.parentNode,s=!i;return s&&(i=A).appendChild(e),r=~C.qsa(i,t).indexOf(e),s&&A.removeChild(e),r},k=function(e){return e.replace(/-+(.)?/g,function(e,t){return t?t.toUpperCase():""})},L=function(e){return o.call(e,function(t,n){return e.indexOf(t)==n})},C.fragment=function(t,r,i){t.replace&&(t=t.replace(p,"<$1>")),r===e&&(r=h.test(t)&&RegExp.$1),r in b||(r="*");var o,u,a=b[r];return a.innerHTML=""+t,u=n.each(s.call(a.childNodes),function(){a.removeChild(this)}),H(i)&&(o=n(u),n.each(i,function(e,t){v.indexOf(e)>-1?o[e](t):o.attr(e,t)})),u},C.Z=function(e,t){return e=e||[],e.__proto__=n.fn,e.selector=t||"",e},C.isZ=function(e){return e instanceof C.Z},C.init=function(t,r){if(!t)return C.Z();if(M(t))return n(u).ready(t);if(C.isZ(t))return t;var i;if(B(t))i=F(t);else if(P(t))i=[H(t)?n.extend({},t):t],t=null;else if(h.test(t))i=C.fragment(t.trim(),RegExp.$1,r),t=null;else{if(r!==e)return n(r).find(t);i=C.qsa(u,t)}return C.Z(i,t)},n=function(e,t){return C.init(e,t)},n.extend=function(e){var t,n=s.call(arguments,1);return typeof e=="boolean"&&(t=e,e=n.shift()),n.forEach(function(n){X(e,n,t)}),e},C.qsa=function(e,t){var n;return D(e)&&S.test(t)?(n=e.getElementById(RegExp.$1))?[n]:[]:e.nodeType!==1&&e.nodeType!==9?[]:s.call(E.test(t)?e.getElementsByClassName(RegExp.$1):x.test(t)?e.getElementsByTagName(t):e.querySelectorAll(t))},n.contains=function(e,t){return e!==t&&e.contains(t)},n.type=O,n.isFunction=M,n.isWindow=_,n.isArray=B,n.isPlainObject=H,n.isEmptyObject=function(e){var t;for(t in e)return!1;return!0},n.inArray=function(e,t,n){return i.indexOf.call(t,e,n)},n.camelCase=k,n.trim=function(e){return e.trim()},n.uuid=0,n.support={},n.expr={},n.map=function(e,t){var n,r=[],i,s;if(j(e))for(i=0;i=0?t:t+this.length]},toArray:function(){return this.get()},size:function(){return this.length},remove:function(){return this.each(function(){this.parentNode!=null&&this.parentNode.removeChild(this)})},each:function(e){return i.every.call(this,function(t,n){return e.call(t,n,t)!==!1}),this},filter:function(e){return M(e)?this.not(this.not(e)):n(o.call(this,function(t){return C.matches(t,e)}))},add:function(e,t){return n(L(this.concat(n(e,t))))},is:function(e){return this.length>0&&C.matches(this[0],e)},not:function(t){var r=[];if(M(t)&&t.call!==e)this.each(function(e){t.call(this,e)||r.push(this)});else{var i=typeof t=="string"?this.filter(t):j(t)&&M(t.item)?s.call(t):n(t);this.forEach(function(e){i.indexOf(e)<0&&r.push(e)})}return n(r)},has:function(e){return this.filter(function(){return P(e)?n.contains(this,e):n(this).find(e).size()})},eq:function(e){return e===-1?this.slice(e):this.slice(e,+e+1)},first:function(){var e=this[0];return e&&!P(e)?e:n(e)},last:function(){var e=this[this.length-1];return e&&!P(e)?e:n(e)},find:function(e){var t,r=this;return typeof e=="object"?t=n(e).filter(function(){var e=this;return i.some.call(r,function(t){return n.contains(t,e)})}):this.length==1?t=n(C.qsa(this[0],e)):t=this.map(function(){return C.qsa(this,e)}),t},closest:function(e,t){var r=this[0],i=!1;typeof e=="object"&&(i=n(e));while(r&&!(i?i.indexOf(r)>=0:C.matches(r,e)))r=r!==t&&!D(r)&&r.parentNode;return n(r)},parents:function(e){var t=[],r=this;while(r.length>0)r=n.map(r,function(e){if((e=e.parentNode)&&!D(e)&&t.indexOf(e)<0)return t.push(e),e});return V(t,e)},parent:function(e){return V(L(this.pluck("parentNode")),e)},children:function(e){return V(this.map(function(){return W(this)}),e)},contents:function(){return this.map(function(){return s.call(this.childNodes)})},siblings:function(e){return V(this.map(function(e,t){return o.call(W(t.parentNode),function(e){return e!==t})}),e)},empty:function(){return this.each(function(){this.innerHTML=""})},pluck:function(e){return n.map(this,function(t){return t[e]})},show:function(){return this.each(function(){this.style.display=="none"&&(this.style.display=null),l(this,"").getPropertyValue("display")=="none"&&(this.style.display=z(this.nodeName))})},replaceWith:function(e){return this.before(e).remove()},wrap:function(e){var t=M(e);if(this[0]&&!t)var r=n(e).get(0),i=r.parentNode||this.length>1;return this.each(function(s){n(this).wrapAll(t?e.call(this,s):i?r.cloneNode(!0):r)})},wrapAll:function(e){if(this[0]){n(this[0]).before(e=n(e));var t;while((t=e.children()).length)e=t.first();n(e).append(this)}return this},wrapInner:function(e){var t=M(e);return this.each(function(r){var i=n(this),s=i.contents(),o=t?e.call(this,r):e;s.length?s.wrapAll(o):i.append(o)})},unwrap:function(){return this.parent().each(function(){n(this).replaceWith(n(this).children())}),this},clone:function(){return this.map(function(){return this.cloneNode(!0)})},hide:function(){return this.css("display","none")},toggle:function(t){return this.each(function(){var r=n(this);(t===e?r.css("display")=="none":t)?r.show():r.hide()})},prev:function(e){return n(this.pluck("previousElementSibling")).filter(e||"*")},next:function(e){return n(this.pluck("nextElementSibling")).filter(e||"*")},html:function(t){return t===e?this.length>0?this[0].innerHTML:null:this.each(function(e){var r=this.innerHTML;n(this).empty().append($(this,t,e,r))})},text:function(t){return t===e?this.length>0?this[0].textContent:null:this.each(function(){this.textContent=t})},attr:function(n,r){var i;return typeof n=="string"&&r===e?this.length==0||this[0].nodeType!==1?e:n=="value"&&this[0].nodeName=="INPUT"?this.val():!(i=this[0].getAttribute(n))&&n in this[0]?this[0][n]:i:this.each(function(e){if(this.nodeType!==1)return;if(P(n))for(t in n)J(this,t,n[t]);else J(this,n,$(this,r,e,this.getAttribute(n)))})},removeAttr:function(e){return this.each(function(){this.nodeType===1&&J(this,e)})},prop:function(t,n){return n===e?this[0]&&this[0][t]:this.each(function(e){this[t]=$(this,n,e,this[t])})},data:function(t,n){var r=this.attr("data-"+q(t),n);return r!==null?Q(r):e},val:function(t){return t===e?this[0]&&(this[0].multiple?n(this[0]).find("option").filter(function(e){return this.selected}).pluck("value"):this[0].value):this.each(function(e){this.value=$(this,t,e,this.value)})},offset:function(e){if(e)return this.each(function(t){var r=n(this),i=$(this,e,t,r.offset()),s=r.offsetParent().offset(),o={top:i.top-s.top,left:i.left-s.left};r.css("position")=="static"&&(o.position="relative"),r.css(o)});if(this.length==0)return null;var t=this[0].getBoundingClientRect();return{left:t.left+window.pageXOffset,top:t.top+window.pageYOffset,width:Math.round(t.width),height:Math.round(t.height)}},css:function(e,n){if(arguments.length<2&&typeof e=="string")return this[0]&&(this[0].style[k(e)]||l(this[0],"").getPropertyValue(e));var r="";if(O(e)=="string")!n&&n!==0?this.each(function(){this.style.removeProperty(q(e))}):r=q(e)+":"+U(e,n);else for(t in e)!e[t]&&e[t]!==0?this.each(function(){this.style.removeProperty(q(t))}):r+=q(t)+":"+U(t,e[t])+";";return this.each(function(){this.style.cssText+=";"+r})},index:function(e){return e?this.indexOf(n(e)[0]):this.parent().children().indexOf(this[0])},hasClass:function(e){return i.some.call(this,function(e){return this.test(K(e))},R(e))},addClass:function(e){return this.each(function(t){r=[];var i=K(this),s=$(this,e,t,i);s.split(/\s+/g).forEach(function(e){n(this).hasClass(e)||r.push(e)},this),r.length&&K(this,i+(i?" ":"")+r.join(" "))})},removeClass:function(t){return this.each(function(n){if(t===e)return K(this,"");r=K(this),$(this,t,n,r).split(/\s+/g).forEach(function(e){r=r.replace(R(e)," ")}),K(this,r.trim())})},toggleClass:function(t,r){return this.each(function(i){var s=n(this),o=$(this,t,i,K(this));o.split(/\s+/g).forEach(function(t){(r===e?!s.hasClass(t):r)?s.addClass(t):s.removeClass(t)})})},scrollTop:function(){if(!this.length)return;return"scrollTop"in this[0]?this[0].scrollTop:this[0].scrollY},position:function(){if(!this.length)return;var e=this[0],t=this.offsetParent(),r=this.offset(),i=d.test(t[0].nodeName)?{top:0,left:0}:t.offset();return r.top-=parseFloat(n(e).css("margin-top"))||0,r.left-=parseFloat(n(e).css("margin-left"))||0,i.top+=parseFloat(n(t[0]).css("border-top-width"))||0,i.left+=parseFloat(n(t[0]).css("border-left-width"))||0,{top:r.top-i.top,left:r.left-i.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||u.body;while(e&&!d.test(e.nodeName)&&n(e).css("position")=="static")e=e.offsetParent;return e})}},n.fn.detach=n.fn.remove,["width","height"].forEach(function(t){n.fn[t]=function(r){var i,s=this[0],o=t.replace(/./,function(e){return e[0].toUpperCase()});return r===e?_(s)?s["inner"+o]:D(s)?s.documentElement["offset"+o]:(i=this.offset())&&i[t]:this.each(function(e){s=n(this),s.css(t,$(this,r,e,s[t]()))})}}),m.forEach(function(e,t){var r=t%2;n.fn[e]=function(){var e,i=n.map(arguments,function(t){return e=O(t),e=="object"||e=="array"||t==null?t:C.fragment(t)}),s,o=this.length>1;return i.length<1?this:this.each(function(e,u){s=r?u:u.parentNode,u=t==0?u.nextSibling:t==1?u.firstChild:t==2?u:null,i.forEach(function(e){if(o)e=e.cloneNode(!0);else if(!s)return n(e).remove();G(s.insertBefore(e,u),function(e){e.nodeName!=null&&e.nodeName.toUpperCase()==="SCRIPT"&&(!e.type||e.type==="text/javascript")&&!e.src&&window.eval.call(window,e.innerHTML)})})})},n.fn[r?e+"To":"insert"+(t?"Before":"After")]=function(t){return n(t)[e](this),this}}),C.Z.prototype=n.fn,C.uniq=L,C.deserializeValue=Q,n.zepto=C,n}();window.Zepto=Zepto,"$"in window||(window.$=Zepto),function(e){function t(e){var t=this.os={},n=this.browser={},r=e.match(/WebKit\/([\d.]+)/),i=e.match(/(Android)\s+([\d.]+)/),s=e.match(/(iPad).*OS\s([\d_]+)/),o=!s&&e.match(/(iPhone\sOS)\s([\d_]+)/),u=e.match(/(webOS|hpwOS)[\s\/]([\d.]+)/),a=u&&e.match(/TouchPad/),f=e.match(/Kindle\/([\d.]+)/),l=e.match(/Silk\/([\d._]+)/),c=e.match(/(BlackBerry).*Version\/([\d.]+)/),h=e.match(/(BB10).*Version\/([\d.]+)/),p=e.match(/(RIM\sTablet\sOS)\s([\d.]+)/),d=e.match(/PlayBook/),v=e.match(/Chrome\/([\d.]+)/)||e.match(/CriOS\/([\d.]+)/),m=e.match(/Firefox\/([\d.]+)/);if(n.webkit=!!r)n.version=r[1];i&&(t.android=!0,t.version=i[2]),o&&(t.ios=t.iphone=!0,t.version=o[2].replace(/_/g,".")),s&&(t.ios=t.ipad=!0,t.version=s[2].replace(/_/g,".")),u&&(t.webos=!0,t.version=u[2]),a&&(t.touchpad=!0),c&&(t.blackberry=!0,t.version=c[2]),h&&(t.bb10=!0,t.version=h[2]),p&&(t.rimtabletos=!0,t.version=p[2]),d&&(n.playbook=!0),f&&(t.kindle=!0,t.version=f[1]),l&&(n.silk=!0,n.version=l[1]),!l&&t.android&&e.match(/Kindle Fire/)&&(n.silk=!0),v&&(n.chrome=!0,n.version=v[1]),m&&(n.firefox=!0,n.version=m[1]),t.tablet=!!(s||d||i&&!e.match(/Mobile/)||m&&e.match(/Tablet/)),t.phone=!t.tablet&&!!(i||o||u||c||h||v&&e.match(/Android/)||v&&e.match(/CriOS\/([\d.]+)/)||m&&e.match(/Mobile/))}t.call(e,navigator.userAgent),e.__detect=t}(Zepto),function(e){function o(e){return e._zid||(e._zid=r++)}function u(e,t,r,i){t=a(t);if(t.ns)var s=f(t.ns);return(n[o(e)]||[]).filter(function(e){return e&&(!t.e||e.e==t.e)&&(!t.ns||s.test(e.ns))&&(!r||o(e.fn)===o(r))&&(!i||e.sel==i)})}function a(e){var t=(""+e).split(".");return{e:t[0],ns:t.slice(1).sort().join(" ")}}function f(e){return new RegExp("(?:^| )"+e.replace(" "," .* ?")+"(?: |$)")}function l(t,n,r){e.type(t)!="string"?e.each(t,r):t.split(/\s/).forEach(function(e){r(e,n)})}function c(e,t){return e.del&&(e.e=="focus"||e.e=="blur")||!!t}function h(e){return s[e]||e}function p(t,r,i,u,f,p){var d=o(t),v=n[d]||(n[d]=[]);l(r,i,function(n,r){var i=a(n);i.fn=r,i.sel=u,i.e in s&&(r=function(t){var n=t.relatedTarget;if(!n||n!==this&&!e.contains(this,n))return i.fn.apply(this,arguments)}),i.del=f&&f(r,n);var o=i.del||r;i.proxy=function(e){var n=o.apply(t,[e].concat(e.data));return n===!1&&(e.preventDefault(),e.stopPropagation()),n},i.i=v.length,v.push(i),t.addEventListener(h(i.e),i.proxy,c(i,p))})}function d(e,t,r,i,s){var a=o(e);l(t||"",r,function(t,r){u(e,t,r,i).forEach(function(t){delete n[a][t.i],e.removeEventListener(h(t.e),t.proxy,c(t,s))})})}function b(t){var n,r={originalEvent:t};for(n in t)!g.test(n)&&t[n]!==undefined&&(r[n]=t[n]);return e.each(y,function(e,n){r[e]=function(){return this[n]=v,t[e].apply(t,arguments)},r[n]=m}),r}function w(e){if(!("defaultPrevented"in e)){e.defaultPrevented=!1;var t=e.preventDefault;e.preventDefault=function(){this.defaultPrevented=!0,t.call(this)}}}var t=e.zepto.qsa,n={},r=1,i={},s={mouseenter:"mouseover",mouseleave:"mouseout"};i.click=i.mousedown=i.mouseup=i.mousemove="MouseEvents",e.event={add:p,remove:d},e.proxy=function(t,n){if(e.isFunction(t)){var r=function(){return t.apply(n,arguments)};return r._zid=o(t),r}if(typeof n=="string")return e.proxy(t[n],t);throw new TypeError("expected function")},e.fn.bind=function(e,t){return this.each(function(){p(this,e,t)})},e.fn.unbind=function(e,t){return this.each(function(){d(this,e,t)})},e.fn.one=function(e,t){return this.each(function(n,r){p(this,e,t,null,function(e,t){return function(){var n=e.apply(r,arguments);return d(r,t,e),n}})})};var v=function(){return!0},m=function(){return!1},g=/^([A-Z]|layer[XY]$)/,y={preventDefault:"isDefaultPrevented",stopImmediatePropagation:"isImmediatePropagationStopped",stopPropagation:"isPropagationStopped"};e.fn.delegate=function(t,n,r){return this.each(function(i,s){p(s,n,r,t,function(n){return function(r){var i,o=e(r.target).closest(t,s).get(0);if(o)return i=e.extend(b(r),{currentTarget:o,liveFired:s}),n.apply(o,[i].concat([].slice.call(arguments,1)))}})})},e.fn.undelegate=function(e,t,n){return this.each(function(){d(this,t,n,e)})},e.fn.live=function(t,n){return e(document.body).delegate(this.selector,t,n),this},e.fn.die=function(t,n){return e(document.body).undelegate(this.selector,t,n),this},e.fn.on=function(t,n,r){return!n||e.isFunction(n)?this.bind(t,n||r):this.delegate(n,t,r)},e.fn.off=function(t,n,r){return!n||e.isFunction(n)?this.unbind(t,n||r):this.undelegate(n,t,r)},e.fn.trigger=function(t,n){if(typeof t=="string"||e.isPlainObject(t))t=e.Event(t);return w(t),t.data=n,this.each(function(){"dispatchEvent"in this&&this.dispatchEvent(t)})},e.fn.triggerHandler=function(t,n){var r,i;return this.each(function(s,o){r=b(typeof t=="string"?e.Event(t):t),r.data=n,r.target=o,e.each(u(o,t.type||t),function(e,t){i=t.proxy(r);if(r.isImmediatePropagationStopped())return!1})}),i},"focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select keydown keypress keyup error".split(" ").forEach(function(t){e.fn[t]=function(e){return e?this.bind(t,e):this.trigger(t)}}),["focus","blur"].forEach(function(t){e.fn[t]=function(e){return e?this.bind(t,e):this.each(function(){try{this[t]()}catch(e){}}),this}}),e.Event=function(e,t){typeof e!="string"&&(t=e,e=t.type);var n=document.createEvent(i[e]||"Events"),r=!0;if(t)for(var s in t)s=="bubbles"?r=!!t[s]:n[s]=t[s];return n.initEvent(e,r,!0,null,null,null,null,null,null,null,null,null,null,null,null),n.isDefaultPrevented=function(){return this.defaultPrevented},n}}(Zepto),function($){function triggerAndReturn(e,t,n){var r=$.Event(t);return $(e).trigger(r,n),!r.defaultPrevented}function triggerGlobal(e,t,n,r){if(e.global)return triggerAndReturn(t||document,n,r)}function ajaxStart(e){e.global&&$.active++===0&&triggerGlobal(e,null,"ajaxStart")}function ajaxStop(e){e.global&&!--$.active&&triggerGlobal(e,null,"ajaxStop")}function ajaxBeforeSend(e,t){var n=t.context;if(t.beforeSend.call(n,e,t)===!1||triggerGlobal(t,n,"ajaxBeforeSend",[e,t])===!1)return!1;triggerGlobal(t,n,"ajaxSend",[e,t])}function ajaxSuccess(e,t,n){var r=n.context,i="success";n.success.call(r,e,i,t),triggerGlobal(n,r,"ajaxSuccess",[t,n,e]),ajaxComplete(i,t,n)}function ajaxError(e,t,n,r){var i=r.context;r.error.call(i,n,t,e),triggerGlobal(r,i,"ajaxError",[n,r,e]),ajaxComplete(t,n,r)}function ajaxComplete(e,t,n){var r=n.context;n.complete.call(r,t,e),triggerGlobal(n,r,"ajaxComplete",[t,n]),ajaxStop(n)}function empty(){}function mimeToDataType(e){return e&&(e=e.split(";",2)[0]),e&&(e==htmlType?"html":e==jsonType?"json":scriptTypeRE.test(e)?"script":xmlTypeRE.test(e)&&"xml")||"text"}function appendQuery(e,t){return(e+"&"+t).replace(/[&?]{1,2}/,"?")}function serializeData(e){e.processData&&e.data&&$.type(e.data)!="string"&&(e.data=$.param(e.data,e.traditional)),e.data&&(!e.type||e.type.toUpperCase()=="GET")&&(e.url=appendQuery(e.url,e.data))}function parseArguments(e,t,n,r){var i=!$.isFunction(t);return{url:e,data:i?t:undefined,success:i?$.isFunction(n)?n:undefined:t,dataType:i?r||n:n}}function serialize(e,t,n,r){var i,s=$.isArray(t);$.each(t,function(t,o){i=$.type(o),r&&(t=n?r:r+"["+(s?"":t)+"]"),!r&&s?e.add(o.name,o.value):i=="array"||!n&&i=="object"?serialize(e,o,n,t):e.add(t,o)})}var jsonpID=0,document=window.document,key,name,rscript=/)<[^<]*)*<\/script>/gi,scriptTypeRE=/^(?:text|application)\/javascript/i,xmlTypeRE=/^(?:text|application)\/xml/i,jsonType="application/json",htmlType="text/html",blankRE=/^\s*$/;$.active=0,$.ajaxJSONP=function(e){if("type"in e){var t="jsonp"+ ++jsonpID,n=document.createElement("script"),r=function(){clearTimeout(o),$(n).remove(),delete window[t]},i=function(n){r();if(!n||n=="timeout")window[t]=empty;ajaxError(null,n||"abort",s,e)},s={abort:i},o;return ajaxBeforeSend(s,e)===!1?(i("abort"),!1):(window[t]=function(t){r(),ajaxSuccess(t,s,e)},n.onerror=function(){i("error")},n.src=e.url.replace(/=\?/,"="+t),$("head").append(n),e.timeout>0&&(o=setTimeout(function(){i("timeout")},e.timeout)),s)}return $.ajax(e)},$.ajaxSettings={type:"GET",beforeSend:empty,success:empty,error:empty,complete:empty,context:null,global:!0,xhr:function(){return new window.XMLHttpRequest},accepts:{script:"text/javascript, application/javascript",json:jsonType,xml:"application/xml, text/xml",html:htmlType,text:"text/plain"},crossDomain:!1,timeout:0,processData:!0,cache:!0},$.ajax=function(options){var settings=$.extend({},options||{});for(key in $.ajaxSettings)settings[key]===undefined&&(settings[key]=$.ajaxSettings[key]);ajaxStart(settings),settings.crossDomain||(settings.crossDomain=/^([\w-]+:)?\/\/([^\/]+)/.test(settings.url)&&RegExp.$2!=window.location.host),settings.url||(settings.url=window.location.toString()),serializeData(settings),settings.cache===!1&&(settings.url=appendQuery(settings.url,"_="+Date.now()));var dataType=settings.dataType,hasPlaceholder=/=\?/.test(settings.url);if(dataType=="jsonp"||hasPlaceholder)return hasPlaceholder||(settings.url=appendQuery(settings.url,"callback=?")),$.ajaxJSONP(settings);var mime=settings.accepts[dataType],baseHeaders={},protocol=/^([\w-]+:)\/\//.test(settings.url)?RegExp.$1:window.location.protocol,xhr=settings.xhr(),abortTimeout;settings.crossDomain||(baseHeaders["X-Requested-With"]="XMLHttpRequest"),mime&&(baseHeaders.Accept=mime,mime.indexOf(",")>-1&&(mime=mime.split(",",2)[0]),xhr.overrideMimeType&&xhr.overrideMimeType(mime));if(settings.contentType||settings.contentType!==!1&&settings.data&&settings.type.toUpperCase()!="GET")baseHeaders["Content-Type"]=settings.contentType||"application/x-www-form-urlencoded";settings.headers=$.extend(baseHeaders,settings.headers||{}),xhr.onreadystatechange=function(){if(xhr.readyState==4){xhr.onreadystatechange=empty,clearTimeout(abortTimeout);var result,error=!1;if(xhr.status>=200&&xhr.status<300||xhr.status==304||xhr.status==0&&protocol=="file:"){dataType=dataType||mimeToDataType(xhr.getResponseHeader("content-type")),result=xhr.responseText;try{dataType=="script"?(1,eval)(result):dataType=="xml"?result=xhr.responseXML:dataType=="json"&&(result=blankRE.test(result)?null:$.parseJSON(result))}catch(e){error=e}error?ajaxError(error,"parsererror",xhr,settings):ajaxSuccess(result,xhr,settings)}else ajaxError(null,xhr.status?"error":"abort",xhr,settings)}};var async="async"in settings?settings.async:!0;xhr.open(settings.type,settings.url,async);for(name in settings.headers)xhr.setRequestHeader(name,settings.headers[name]);return ajaxBeforeSend(xhr,settings)===!1?(xhr.abort(),!1):(settings.timeout>0&&(abortTimeout=setTimeout(function(){xhr.onreadystatechange=empty,xhr.abort(),ajaxError(null,"timeout",xhr,settings)},settings.timeout)),xhr.send(settings.data?settings.data:null),xhr)},$.get=function(e,t,n,r){return $.ajax(parseArguments.apply(null,arguments))},$.post=function(e,t,n,r){var i=parseArguments.apply(null,arguments);return i.type="POST",$.ajax(i)},$.getJSON=function(e,t,n){var r=parseArguments.apply(null,arguments);return r.dataType="json",$.ajax(r)},$.fn.load=function(e,t,n){if(!this.length)return this;var r=this,i=e.split(/\s/),s,o=parseArguments(e,t,n),u=o.success;return i.length>1&&(o.url=i[0],s=i[1]),o.success=function(e){r.html(s?$("
").html(e.replace(rscript,"")).find(s):e),u&&u.apply(r,arguments)},$.ajax(o),this};var escape=encodeURIComponent;$.param=function(e,t){var n=[];return n.add=function(e,t){this.push(escape(e)+"="+escape(t))},serialize(n,e,t),n.join("&").replace(/%20/g,"+")}}(Zepto),function(e){e.fn.serializeArray=function(){var t=[],n;return e(Array.prototype.slice.call(this.get(0).elements)).each(function(){n=e(this);var r=n.attr("type");this.nodeName.toLowerCase()!="fieldset"&&!this.disabled&&r!="submit"&&r!="reset"&&r!="button"&&(r!="radio"&&r!="checkbox"||this.checked)&&t.push({name:n.attr("name"),value:n.val()})}),t},e.fn.serialize=function(){var e=[];return this.serializeArray().forEach(function(t){e.push(encodeURIComponent(t.name)+"="+encodeURIComponent(t.value))}),e.join("&")},e.fn.submit=function(t){if(t)this.bind("submit",t);else if(this.length){var n=e.Event("submit");this.eq(0).trigger(n),n.defaultPrevented||this.get(0).submit()}return this}}(Zepto),function(e,t){function y(e){return b(e.replace(/([a-z])([A-Z])/,"$1-$2"))}function b(e){return e.toLowerCase()}function w(e){return r?r+e:b(e)}var n="",r,i,s,o={Webkit:"webkit",Moz:"",O:"o",ms:"MS"},u=window.document,a=u.createElement("div"),f=/^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i,l,c,h,p,d,v,m,g={};e.each(o,function(e,i){if(a.style[e+"TransitionProperty"]!==t)return n="-"+b(e)+"-",r=i,!1}),l=n+"transform",g[c=n+"transition-property"]=g[h=n+"transition-duration"]=g[p=n+"transition-timing-function"]=g[d=n+"animation-name"]=g[v=n+"animation-duration"]=g[m=n+"animation-timing-function"]="",e.fx={off:r===t&&a.style.transitionProperty===t,speeds:{_default:400,fast:200,slow:600},cssPrefix:n,transitionEnd:w("TransitionEnd"),animationEnd:w("AnimationEnd")},e.fn.animate=function(t,n,r,i){return e.isPlainObject(n)&&(r=n.easing,i=n.complete,n=n.duration),n&&(n=(typeof n=="number"?n:e.fx.speeds[n]||e.fx.speeds._default)/1e3),this.anim(t,n,r,i)},e.fn.anim=function(n,r,i,s){var o,u={},a,b="",w=this,E,S=e.fx.transitionEnd;r===t&&(r=.4),e.fx.off&&(r=0);if(typeof n=="string")u[d]=n,u[v]=r+"s",u[m]=i||"linear",S=e.fx.animationEnd;else{a=[];for(o in n)f.test(o)?b+=o+"("+n[o]+") ":(u[o]=n[o],a.push(y(o)));b&&(u[l]=b,a.push(l)),r>0&&typeof n=="object"&&(u[c]=a.join(", "),u[h]=r+"s",u[p]=i||"linear")}return E=function(t){if(typeof t!="undefined"){if(t.target!==t.currentTarget)return;e(t.target).unbind(S,E)}e(this).css(g),s&&s.call(this)},r>0&&this.bind(S,E),this.size()&&this.get(0).clientLeft,this.css(u),r<=0&&setTimeout(function(){w.each(function(){E.call(this)})},0),this},a=null}(Zepto);!function(){var n,r,e,t,u,o,i,l,a,c,s,f,p,h,g=[].slice;u="2.4.0",r="pending",t="resolved",e="rejected",a=function(n,r){return null!=n?n.hasOwnProperty(r):void 0},s=function(n){return a(n,"length")&&a(n,"callee")},f=function(n){return a(n,"promise")&&"function"==typeof(null!=n?n.promise:void 0)},l=function(n){return s(n)?l(Array.prototype.slice.call(n)):Array.isArray(n)?n.reduce(function(n,r){return Array.isArray(r)?n.concat(l(r)):(n.push(r),n)},[]):[n]},o=function(n,r){return 0>=n?r():function(){return--n<1?r.apply(this,arguments):void 0}},p=function(n,r){return function(){var e;return e=[n].concat(Array.prototype.slice.call(arguments,0)),r.apply(this,e)}},i=function(n,r,e){var t,u,o,i,a;for(i=l(n),a=[],u=0,o=i.length;o>u;u++)t=i[u],a.push(t.call.apply(t,[e].concat(g.call(r))));return a},n=function(){var u,o,a,c,s,p;return p=r,c=[],s=[],a={},this.promise=function(u){var o,h;return u=u||{},u.state=function(){return p},h=function(n,e){return function(){return p===r&&e.push.apply(e,l(arguments)),n()&&i(arguments,a),u}},u.done=h(function(){return p===t},c),u.fail=h(function(){return p===e},s),u.always=function(){var n;return(n=u.done.apply(u,arguments)).fail.apply(n,arguments)},o=function(r,e){var t,o;return o=new n,t=function(n,r,e){return e?u[n](function(){var n,t;return n=1<=arguments.length?g.call(arguments,0):[],t=e.apply(null,n),f(t)?t.done(o.resolve).fail(o.reject):o[r](t)}):u[n](o[r])},t("done","resolve",r),t("fail","reject",e),o},u.pipe=o,u.then=o,null==u.promise&&(u.promise=function(){return u}),u},this.promise(this),u=this,o=function(n,e,t){return function(){return p===r?(p=n,a=arguments,i(e,a,t),u):this}},this.resolve=o(t,c),this.reject=o(e,s),this.resolveWith=function(n,r){return o(t,c,n).apply(null,r)},this.rejectWith=function(n,r){return o(e,s,n).apply(null,r)},this},h=function(){var r,e,t,u,i,a,c;if(e=l(arguments),1===e.length)return f(e[0])?e[0]:(new n).resolve(e[0]).promise();if(i=new n,!e.length)return i.resolve().promise();for(u=[],t=o(e.length,function(){return i.resolve.apply(i,u)}),e.forEach(function(n,r){return f(n)?n.done(function(){var n;return n=1<=arguments.length?g.call(arguments,0):[],u[r]=n.length>1?n:n[0],t()}):(u[r]=n,t())}),a=0,c=e.length;c>a;a++)r=e[a],f(r)&&r.fail(i.reject);return i.promise()},c=function(r){return r.Deferred=function(){return new n},r.ajax=p(r.ajax,function(r,e){var t,u,o,i;return null==e&&(e={}),u=new n,t=function(n,r){return p(n,function(){var n,e;return e=arguments[0],n=2<=arguments.length?g.call(arguments,1):[],e&&e.apply(null,n),r.apply(null,n)})},e.success=t(e.success,u.resolve),e.error=t(e.error,u.reject),i=r(e),o=u.promise(),o.abort=function(){return i.abort()},o}),r.when=h},"undefined"!=typeof exports?(exports.Deferred=function(){return new n},exports.when=h,exports.installInto=c):"function"==typeof define&&define.amd?define(function(){return Zepto?c(Zepto):n}):Zepto?c(Zepto):(this.Deferred=function(){return new n},this.Deferred.when=h,this.Deferred.installInto=c)}.call(this);!function(n){function t(n,t,r){r=(r||0)-1;for(var e=n.length;++rt||typeof n=="undefined")return 1;if(narguments.length;t=q(t,e,4);var o=-1,f=n.length;if(typeof f=="number")for(u&&(r=n[++o]);++oarguments.length;if(typeof u!="number")var f=ht(n),u=f.length;return t=q(t,e,4),w(n,function(e,i,a){i=f?f[--u]:--u,r=o?(o=!1,n[i]):t(r,n[i],i,a)}),r}function E(n,t,r){var e;t=q(t,r),r=-1;var u=n?n.length:0;if(typeof u=="number")for(;++rr(u,f)&&o.push(f)}return o}function R(n,t,r){if(n){var e=0,u=n.length;if(typeof t!="number"&&null!=t){var o=-1;for(t=q(t,r);++oe?it(0,u+e):e||0}else if(e)return e=M(n,r),n[e]===r?e:-1;return n?t(n,r,e):-1}function I(n,t,r){if(typeof t!="number"&&null!=t){var e=0,u=-1,o=n?n.length:0;for(t=q(t,r);++u>>1,r(n[e])":">",'"':""","'":"'","/":"/"},gt=RegExp("["+ht(yt).join("")+"]","g"),mt=function(n,t){var r;if(!n||!K[typeof n])return n;for(r in n)if(t(n[r],r,n)===T)break;return n},dt=function(n,t){var r;if(!n||!K[typeof n])return n;for(r in n)if(nt.call(n,r)&&t(n[r],r,n)===T)break;return n};h(/x/)&&(h=function(n){return typeof n=="function"&&"[object Function]"==rt.call(n)}),u.bind=S,u.bindAll=function(n){for(var t=1e&&(e=r,u=n)});else for(;++ou&&(u=r);return u},u.min=function(n,t,r){var e=1/0,u=e,o=-1,f=n?n.length:0;if(t||typeof f!="number")t=q(t,r),w(n,function(n,r,o){r=t(n,r,o),rt(r,u)&&(e[u]=n)}),e},u.once=function(n){var t,r;return function(){return t?r:(t=!0,r=n.apply(this,arguments),n=null,r)}},u.pairs=function(n){for(var t=-1,r=ht(n),e=r.length,u=Array(e);++tr?it(0,e+r):at(r,e-1))+1);e--;)if(n[e]===t)return e;return-1},u.mixin=$,u.reduce=A,u.reduceRight=O,u.result=function(n,t){var r=n?n[t]:void 0;return h(r)?n[t]():r},u.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:ht(n).length},u.some=E,u.sortedIndex=M,u.uniqueId=function(n){var t=++N+"";return n?n+t:t},u.all=_,u.any=E,u.detect=j,u.foldl=A,u.foldr=O,u.include=d,u.inject=A,u.first=R,u.last=function(n,t,r){if(n){var e=0,u=n.length;if(typeof t!="number"&&null!=t){var o=u;for(t=q(t,r);o--&&t(n[o],o,n);)e++}else if(e=t,null==e||r)return n[u-1];return lt.call(n,it(0,u-e))}},u.take=R,u.head=R,u.VERSION="1.3.1",$(u),u.prototype.chain=function(){return this.__chain__=!0,this},u.prototype.value=function(){return this.__wrapped__},w("pop push reverse shift sort splice unshift".split(" "),function(n){var t=W[n];u.prototype[n]=function(){var n=this.__wrapped__;return t.apply(n,arguments),!st.spliceObjects&&0===n.length&&delete n[0],this}}),w(["concat","join","slice"],function(n){var t=W[n];u.prototype[n]=function(){var n=t.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new o(n),n.__chain__=!0),n}}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(n._=u,define(function(){return u})):L&&!L.nodeType?Q?(Q.exports=u)._=u:L._=u:n._=u}(this);(function(){var e=this,t=e.Backbone,n=[],r=n.push,i=n.slice,s=n.splice,o;typeof exports!="undefined"?o=exports:o=e.Backbone={},o.VERSION="1.0.0";var u=e._;!u&&typeof require!="undefined"&&(u=require("underscore")),o.$=e.jQuery||e.Zepto||e.ender||e.$,o.noConflict=function(){return e.Backbone=t,this},o.emulateHTTP=!1,o.emulateJSON=!1;var a=o.Events={on:function(e,t,n){if(!l(this,"on",e,[t,n])||!t)return this;this._events||(this._events={});var r=this._events[e]||(this._events[e]=[]);return r.push({callback:t,context:n,ctx:n||this}),this},once:function(e,t,n){if(!l(this,"once",e,[t,n])||!t)return this;var r=this,i=u.once(function(){r.off(e,i),t.apply(this,arguments)});return i._callback=t,this.on(e,i,n)},off:function(e,t,n){var r,i,s,o,a,f,c,h;if(!this._events||!l(this,"off",e,[t,n]))return this;if(!e&&!t&&!n)return this._events={},this;o=e?[e]:u.keys(this._events);for(a=0,f=o.length;a").attr(e);this.setElement(t,!1)}else this.setElement(u.result(this,"el"),!1)}}),o.sync=function(e,t,n){var r=T[e];u.defaults(n||(n={}),{emulateHTTP:o.emulateHTTP,emulateJSON:o.emulateJSON});var i={type:r,dataType:"json"};n.url||(i.url=u.result(t,"url")||B()),n.data==null&&t&&(e==="create"||e==="update"||e==="patch")&&(i.contentType="application/json",i.data=JSON.stringify(n.attrs||t.toJSON(n))),n.emulateJSON&&(i.contentType="application/x-www-form-urlencoded",i.data=i.data?{model:i.data}:{});if(n.emulateHTTP&&(r==="PUT"||r==="DELETE"||r==="PATCH")){i.type="POST",n.emulateJSON&&(i.data._method=r);var s=n.beforeSend;n.beforeSend=function(e){e.setRequestHeader("X-HTTP-Method-Override",r);if(s)return s.apply(this,arguments)}}i.type!=="GET"&&!n.emulateJSON&&(i.processData=!1),i.type==="PATCH"&&x&&(i.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")});var a=n.xhr=o.ajax(u.extend(i,n));return t.trigger("request",t,a,n),a};var x=typeof window!="undefined"&&!!window.ActiveXObject&&(!window.XMLHttpRequest||!(new XMLHttpRequest).dispatchEvent),T={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};o.ajax=function(){return o.$.ajax.apply(o.$,arguments)};var N=o.Router=function(e){e||(e={}),e.routes&&(this.routes=e.routes),this._bindRoutes(),this.initialize.apply(this,arguments)},C=/\((.*?)\)/g,k=/(\(\?)?:\w+/g,L=/\*\w+/g,A=/[\-{}\[\]+?.,\\\^$|#\s]/g;u.extend(N.prototype,a,{initialize:function(){},route:function(e,t,n){u.isRegExp(e)||(e=this._routeToRegExp(e)),u.isFunction(t)&&(n=t,t=""),n||(n=this[t]);var r=this;return o.history.route(e,function(i){var s=r._extractParameters(e,i);n&&n.apply(r,s),r.trigger.apply(r,["route:"+t].concat(s)),r.trigger("route",t,s),o.history.trigger("route",r,t,s)}),this},navigate:function(e,t){return o.history.navigate(e,t),this},_bindRoutes:function(){if(!this.routes)return;this.routes=u.result(this,"routes");var e,t=u.keys(this.routes);while((e=t.pop())!=null)this.route(e,this.routes[e])},_routeToRegExp:function(e){return e=e.replace(A,"\\$&").replace(C,"(?:$1)?").replace(k,function(e,t){return t?e:"([^/]+)"}).replace(L,"(.*?)"),new RegExp("^"+e+"$")},_extractParameters:function(e,t){var n=e.exec(t).slice(1);return u.map(n,function(e){return e?decodeURIComponent(e):null})}});var O=o.History=function(){this.handlers=[],u.bindAll(this,"checkUrl"),typeof window!="undefined"&&(this.location=window.location,this.history=window.history)},M=/^[#\/]|\s+$/g,_=/^\/+|\/+$/g,D=/msie [\w.]+/,P=/\/$/;O.started=!1,u.extend(O.prototype,a,{interval:50,getHash:function(e){var t=(e||this).location.href.match(/#(.*)$/);return t?t[1]:""},getFragment:function(e,t){if(e==null)if(this._hasPushState||!this._wantsHashChange||t){e=this.location.pathname;var n=this.root.replace(P,"");e.indexOf(n)||(e=e.slice(n.length))}else e=this.getHash();return e.replace(M,"")},start:function(e){if(O.started)throw new Error("Backbone.history has already been started");O.started=!0,this.options=u.extend({},{root:"/"},this.options,e),this.root=this.options.root,this._wantsHashChange=this.options.hashChange!==!1,this._wantsPushState=!!this.options.pushState,this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var t=this.getFragment(),n=document.documentMode,r=D.exec(navigator.userAgent.toLowerCase())&&(!n||n<=7);this.root=("/"+this.root+"/").replace(_,"/"),r&&this._wantsHashChange&&(this.iframe=o.$('