├── .gitignore ├── LICENSE ├── README.md ├── composer.json ├── composer.lock ├── config └── ilkbyte.php └── src ├── Api ├── Account.php ├── Base.php ├── Domain.php └── Server.php ├── Facades └── Ilkbyte.php ├── Helpers └── functions.php ├── Ilkbyte.php └── IlkbyteServiceProvider.php /.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | /node_modules 3 | /public/storage 4 | /public/panel 5 | Homestead.yaml 6 | Homestead.json 7 | .env 8 | .env_backup 9 | .idea 10 | .DS_Store 11 | .php_cs.cache 12 | storage/debugbar 13 | npm-debug.log 14 | /tests/config.ini 15 | .vcode -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 ilkbyte.com 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ### **Ilkbyte Package** 2 | 3 | This package mainly developed for laravel package but you can use as a standalone package. 4 | 5 | #### **Installation** 6 | 7 | `composer require ilkbyte/api-php` 8 | 9 | Package should be autodiscover by default but if you are using older versions of laravel you should change config/app.php with below; 10 | 11 | Add this in providers array; 12 | 13 | ```js 14 | Netinternet\Ilkbyte\IlkbyteServiceProvider::class, 15 | ``` 16 | 17 | Add this in aliases array; 18 | 19 | ```js 20 | 'Ilkbyte' => Netinternet\Ilkbyte\Facades\Ilkbyte::class, 21 | ``` 22 | 23 | #### **Configuration** 24 | 25 | Use command below and choose ilkbyte option when asked. It will create ilkbyte.php in config directory. 26 | 27 | `php artisan vendor:publish` 28 | 29 | You can also create this file manually and paste below content in file; 30 | 31 | ```php 32 | env('ILKBYTE_ACCESSKEY'), 35 | 'secret' => env('İLKBYTE_SECRETKEY') 36 | ]; 37 | ``` 38 | 39 | #### **Usage** 40 | 41 | You can choose to use facade or helper function. We will use helper functions for examples in this documentation. 42 | 43 | ```php 44 | use Ilkbyte; 45 | // With Facade 46 | public function myMethod() 47 | { 48 | return Ilkbyte::server()->all(); 49 | } 50 | ``` 51 | 52 | ```php 53 | public function myMethod() 54 | { 55 | return ilkbyte()->server()->all(); 56 | } 57 | ``` 58 | #### **Avalaible Methods** 59 | 60 | ##### **Account** 61 | ```php 62 | // get account info 63 | ilkbyte()->account()->info() 64 | // get your account users. 65 | ilkbyte()->account()->users() 66 | ``` 67 | 68 | ##### **Server** 69 | 70 | ```php 71 | // get all servers 72 | ilkbyte()->server()->all() 73 | // get only active servers 74 | ilkbyte()->server()->active() 75 | // create a new server 76 | ilkbyte()->server()->create([ 77 | 'username' => $username, 78 | 'password' => $password, 79 | 'name' => $name, 80 | 'os_id' => $osID, 81 | 'app_id' => $appID, 82 | 'package_id' => $packageID, 83 | 'sshkey' => $sshkey, 84 | ]) 85 | // Get server configs you can choose 86 | ilkbyte()->server()->getConfig() 87 | // Get server details 88 | ilkbyte()->server('server-name')->show() 89 | // Server power settings 90 | ilkbyte()->server('server-name')->power($status) 91 | // Get all ips from server 92 | ilkbyte()->server('server-name')->ip() 93 | // Get ip logs 94 | ilkbyte()->server('server-name')->ipLogs() 95 | // Add a new rdns record 96 | ilkbyte()->server('server-name')->ipRdns($ip, $rdns) 97 | ``` 98 | ##### **Backup** 99 | ```php 100 | // Get backup list. 101 | ilkbyte()->server('server-name')->backupList() 102 | // Restore your backup. 103 | ilkbyte()->server('server-name')->backupRestore('backup-name') 104 | ``` 105 | ##### **Snapshot** 106 | ```php 107 | // Get all snapshots. 108 | ilkbyte()->server('server-name')->snapshotList() 109 | // Create a new snapshot. 110 | ilkbyte()->server('server-name')->snapshotCreate('snapshot-name') 111 | // Revert snapshot. 112 | ilkbyte()->server('server-name')->snapshotRevert('snapshot-name') 113 | // Recreate your snapshot. 114 | ilkbyte()->server('server-name')->snapshotUpdate('snapshot-name') 115 | // Delete snapshot. 116 | ilkbyte()->server('server-name')->snapshotDelete('snapshot-name') 117 | // Add cron to your snapshot. 118 | ilkbyte()->server('server-name')->snapshotAddCron($snapshotName, $day, $hour, $minute) 119 | // Delete cron. 120 | ilkbyte()->server('server-name')->snapshotDeleteCron('snapshot-name') 121 | ``` 122 | 123 | ##### **Domain** 124 | 125 | ```php 126 | // Get all domains 127 | ilkbyte()->domain()->all() 128 | // Create a new domain 129 | ilkbyte()->domain()->create([ 130 | 'domain' => $domainName, 131 | 'server' => $serverName, 132 | 'ipv6' => $ipv6, 133 | ]) 134 | // Get domain details 135 | ilkbyte()->domain('domain-name')->show() 136 | // Add a new record 137 | ilkbyte()->domain('domain-name')->add([ 138 | 'record_name' => $recordName, 139 | 'record_type' => $recordType, 140 | 'record_content' => $recordContent, 141 | 'record_priority' => $recordPriority, 142 | ]) 143 | // Update an existing record 144 | ilkbyte()->domain('domain-name')->update([ 145 | 'record_id' => $recordID, 146 | 'record_content' => $recordContent, 147 | 'record_priority' => $recordPriority, 148 | ]) 149 | // Delete domain 150 | ilkbyte()->domain('domain-name')->delete([ 151 | 'record_id' => $recordId, 152 | ]) 153 | // Push changes to server 154 | ilkbyte()->domain('domain-name')->push() 155 | ``` 156 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ilkbyte/api-php", 3 | "description": "Laravel ilkbyte package", 4 | "keywords": [ 5 | "laravel", 6 | "server", 7 | "domain", 8 | "dns" 9 | ], 10 | "type": "project", 11 | "license": "MIT", 12 | "authors": [ 13 | { 14 | "name": "Umut Aktepe", 15 | "email": "umtaktpe@gmail.com" 16 | } 17 | ], 18 | "require": { 19 | "php": ">=5.4.0", 20 | "illuminate/support": ">=5.4", 21 | "illuminate/console": ">=5.4", 22 | "illuminate/filesystem": ">=5.4", 23 | "symfony/class-loader": "^2.3|^3.0" 24 | }, 25 | "require-dev": { 26 | "illuminate/config": ">=5.4", 27 | "illuminate/view": ">=5.4", 28 | "guzzlehttp/guzzle": "~6.0", 29 | "squizlabs/php_codesniffer": "^3.4" 30 | }, 31 | "autoload": { 32 | "psr-4": { 33 | "Netinternet\\Ilkbyte\\": "src" 34 | }, 35 | "files" : [ 36 | "src/Helpers/functions.php" 37 | ] 38 | }, 39 | "extra": { 40 | "branch-alias": { 41 | "dev-master": "1.0-dev" 42 | }, 43 | "laravel": { 44 | "providers": [ 45 | "Netinternet\\Ilkbyte\\IlkbyteServiceProvider" 46 | ], 47 | "aliases": { 48 | "Ilkbyte": "Netinternet\\Ilkbyte\\Facades\\Ilkbyte" 49 | } 50 | } 51 | } 52 | 53 | } 54 | -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_readme": [ 3 | "This file locks the dependencies of your project to a known state", 4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", 5 | "This file is @generated automatically" 6 | ], 7 | "content-hash": "72e9e149111ab71803cd6219bf2ad10c", 8 | "packages": [ 9 | { 10 | "name": "doctrine/inflector", 11 | "version": "2.0.3", 12 | "source": { 13 | "type": "git", 14 | "url": "https://github.com/doctrine/inflector.git", 15 | "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210" 16 | }, 17 | "dist": { 18 | "type": "zip", 19 | "url": "https://api.github.com/repos/doctrine/inflector/zipball/9cf661f4eb38f7c881cac67c75ea9b00bf97b210", 20 | "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210", 21 | "shasum": "" 22 | }, 23 | "require": { 24 | "php": "^7.2 || ^8.0" 25 | }, 26 | "require-dev": { 27 | "doctrine/coding-standard": "^7.0", 28 | "phpstan/phpstan": "^0.11", 29 | "phpstan/phpstan-phpunit": "^0.11", 30 | "phpstan/phpstan-strict-rules": "^0.11", 31 | "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" 32 | }, 33 | "type": "library", 34 | "extra": { 35 | "branch-alias": { 36 | "dev-master": "2.0.x-dev" 37 | } 38 | }, 39 | "autoload": { 40 | "psr-4": { 41 | "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" 42 | } 43 | }, 44 | "notification-url": "https://packagist.org/downloads/", 45 | "license": [ 46 | "MIT" 47 | ], 48 | "authors": [ 49 | { 50 | "name": "Guilherme Blanco", 51 | "email": "guilhermeblanco@gmail.com" 52 | }, 53 | { 54 | "name": "Roman Borschel", 55 | "email": "roman@code-factory.org" 56 | }, 57 | { 58 | "name": "Benjamin Eberlei", 59 | "email": "kontakt@beberlei.de" 60 | }, 61 | { 62 | "name": "Jonathan Wage", 63 | "email": "jonwage@gmail.com" 64 | }, 65 | { 66 | "name": "Johannes Schmitt", 67 | "email": "schmittjoh@gmail.com" 68 | } 69 | ], 70 | "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", 71 | "homepage": "https://www.doctrine-project.org/projects/inflector.html", 72 | "keywords": [ 73 | "inflection", 74 | "inflector", 75 | "lowercase", 76 | "manipulation", 77 | "php", 78 | "plural", 79 | "singular", 80 | "strings", 81 | "uppercase", 82 | "words" 83 | ], 84 | "funding": [ 85 | { 86 | "url": "https://www.doctrine-project.org/sponsorship.html", 87 | "type": "custom" 88 | }, 89 | { 90 | "url": "https://www.patreon.com/phpdoctrine", 91 | "type": "patreon" 92 | }, 93 | { 94 | "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", 95 | "type": "tidelift" 96 | } 97 | ], 98 | "time": "2020-05-29T15:13:26+00:00" 99 | }, 100 | { 101 | "name": "illuminate/collections", 102 | "version": "v8.11.2", 103 | "source": { 104 | "type": "git", 105 | "url": "https://github.com/illuminate/collections.git", 106 | "reference": "2b1dfd52c05bb98bf9630eda948cb39aa8c89487" 107 | }, 108 | "dist": { 109 | "type": "zip", 110 | "url": "https://api.github.com/repos/illuminate/collections/zipball/2b1dfd52c05bb98bf9630eda948cb39aa8c89487", 111 | "reference": "2b1dfd52c05bb98bf9630eda948cb39aa8c89487", 112 | "shasum": "" 113 | }, 114 | "require": { 115 | "illuminate/contracts": "^8.0", 116 | "illuminate/macroable": "^8.0", 117 | "php": "^7.3" 118 | }, 119 | "suggest": { 120 | "symfony/var-dumper": "Required to use the dump method (^5.1)." 121 | }, 122 | "type": "library", 123 | "extra": { 124 | "branch-alias": { 125 | "dev-master": "8.x-dev" 126 | } 127 | }, 128 | "autoload": { 129 | "psr-4": { 130 | "Illuminate\\Support\\": "" 131 | }, 132 | "files": [ 133 | "helpers.php" 134 | ] 135 | }, 136 | "notification-url": "https://packagist.org/downloads/", 137 | "license": [ 138 | "MIT" 139 | ], 140 | "authors": [ 141 | { 142 | "name": "Taylor Otwell", 143 | "email": "taylor@laravel.com" 144 | } 145 | ], 146 | "description": "The Illuminate Collections package.", 147 | "homepage": "https://laravel.com", 148 | "time": "2020-10-19T14:08:41+00:00" 149 | }, 150 | { 151 | "name": "illuminate/console", 152 | "version": "v8.11.2", 153 | "source": { 154 | "type": "git", 155 | "url": "https://github.com/illuminate/console.git", 156 | "reference": "07c73d11e85a08ee38cf92ab56731cb243be12ba" 157 | }, 158 | "dist": { 159 | "type": "zip", 160 | "url": "https://api.github.com/repos/illuminate/console/zipball/07c73d11e85a08ee38cf92ab56731cb243be12ba", 161 | "reference": "07c73d11e85a08ee38cf92ab56731cb243be12ba", 162 | "shasum": "" 163 | }, 164 | "require": { 165 | "illuminate/collections": "^8.0", 166 | "illuminate/contracts": "^8.0", 167 | "illuminate/macroable": "^8.0", 168 | "illuminate/support": "^8.0", 169 | "php": "^7.3", 170 | "symfony/console": "^5.1", 171 | "symfony/process": "^5.1" 172 | }, 173 | "suggest": { 174 | "dragonmantank/cron-expression": "Required to use scheduler (^3.0.2).", 175 | "guzzlehttp/guzzle": "Required to use the ping methods on schedules (^6.5.5|^7.0.1).", 176 | "illuminate/bus": "Required to use the scheduled job dispatcher (^8.0).", 177 | "illuminate/container": "Required to use the scheduler (^8.0).", 178 | "illuminate/filesystem": "Required to use the generator command (^8.0).", 179 | "illuminate/queue": "Required to use closures for scheduled jobs (^8.0)." 180 | }, 181 | "type": "library", 182 | "extra": { 183 | "branch-alias": { 184 | "dev-master": "8.x-dev" 185 | } 186 | }, 187 | "autoload": { 188 | "psr-4": { 189 | "Illuminate\\Console\\": "" 190 | } 191 | }, 192 | "notification-url": "https://packagist.org/downloads/", 193 | "license": [ 194 | "MIT" 195 | ], 196 | "authors": [ 197 | { 198 | "name": "Taylor Otwell", 199 | "email": "taylor@laravel.com" 200 | } 201 | ], 202 | "description": "The Illuminate Console package.", 203 | "homepage": "https://laravel.com", 204 | "time": "2020-10-19T14:08:41+00:00" 205 | }, 206 | { 207 | "name": "illuminate/contracts", 208 | "version": "v8.11.2", 209 | "source": { 210 | "type": "git", 211 | "url": "https://github.com/illuminate/contracts.git", 212 | "reference": "6e04ca4122ee72ef272875bf3f32d83bd68d4827" 213 | }, 214 | "dist": { 215 | "type": "zip", 216 | "url": "https://api.github.com/repos/illuminate/contracts/zipball/6e04ca4122ee72ef272875bf3f32d83bd68d4827", 217 | "reference": "6e04ca4122ee72ef272875bf3f32d83bd68d4827", 218 | "shasum": "" 219 | }, 220 | "require": { 221 | "php": "^7.3", 222 | "psr/container": "^1.0", 223 | "psr/simple-cache": "^1.0" 224 | }, 225 | "type": "library", 226 | "extra": { 227 | "branch-alias": { 228 | "dev-master": "8.x-dev" 229 | } 230 | }, 231 | "autoload": { 232 | "psr-4": { 233 | "Illuminate\\Contracts\\": "" 234 | } 235 | }, 236 | "notification-url": "https://packagist.org/downloads/", 237 | "license": [ 238 | "MIT" 239 | ], 240 | "authors": [ 241 | { 242 | "name": "Taylor Otwell", 243 | "email": "taylor@laravel.com" 244 | } 245 | ], 246 | "description": "The Illuminate Contracts package.", 247 | "homepage": "https://laravel.com", 248 | "time": "2020-10-13T11:07:30+00:00" 249 | }, 250 | { 251 | "name": "illuminate/filesystem", 252 | "version": "v8.11.2", 253 | "source": { 254 | "type": "git", 255 | "url": "https://github.com/illuminate/filesystem.git", 256 | "reference": "8df782c7020ac869b6938d1e9f5ec948b5a25395" 257 | }, 258 | "dist": { 259 | "type": "zip", 260 | "url": "https://api.github.com/repos/illuminate/filesystem/zipball/8df782c7020ac869b6938d1e9f5ec948b5a25395", 261 | "reference": "8df782c7020ac869b6938d1e9f5ec948b5a25395", 262 | "shasum": "" 263 | }, 264 | "require": { 265 | "illuminate/collections": "^8.0", 266 | "illuminate/contracts": "^8.0", 267 | "illuminate/macroable": "^8.0", 268 | "illuminate/support": "^8.0", 269 | "php": "^7.3", 270 | "symfony/finder": "^5.1" 271 | }, 272 | "suggest": { 273 | "ext-ftp": "Required to use the Flysystem FTP driver.", 274 | "illuminate/http": "Required for handling uploaded files (^7.0).", 275 | "league/flysystem": "Required to use the Flysystem local and FTP drivers (^1.1).", 276 | "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", 277 | "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", 278 | "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", 279 | "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", 280 | "symfony/filesystem": "Required to enable support for relative symbolic links (^5.1).", 281 | "symfony/mime": "Required to enable support for guessing extensions (^5.1)." 282 | }, 283 | "type": "library", 284 | "extra": { 285 | "branch-alias": { 286 | "dev-master": "8.x-dev" 287 | } 288 | }, 289 | "autoload": { 290 | "psr-4": { 291 | "Illuminate\\Filesystem\\": "" 292 | } 293 | }, 294 | "notification-url": "https://packagist.org/downloads/", 295 | "license": [ 296 | "MIT" 297 | ], 298 | "authors": [ 299 | { 300 | "name": "Taylor Otwell", 301 | "email": "taylor@laravel.com" 302 | } 303 | ], 304 | "description": "The Illuminate Filesystem package.", 305 | "homepage": "https://laravel.com", 306 | "time": "2020-10-19T14:08:41+00:00" 307 | }, 308 | { 309 | "name": "illuminate/macroable", 310 | "version": "v8.11.2", 311 | "source": { 312 | "type": "git", 313 | "url": "https://github.com/illuminate/macroable.git", 314 | "reference": "3182b39bac376cf3791a94f4c397897a46b85fcd" 315 | }, 316 | "dist": { 317 | "type": "zip", 318 | "url": "https://api.github.com/repos/illuminate/macroable/zipball/3182b39bac376cf3791a94f4c397897a46b85fcd", 319 | "reference": "3182b39bac376cf3791a94f4c397897a46b85fcd", 320 | "shasum": "" 321 | }, 322 | "require": { 323 | "php": "^7.3" 324 | }, 325 | "type": "library", 326 | "extra": { 327 | "branch-alias": { 328 | "dev-master": "8.x-dev" 329 | } 330 | }, 331 | "autoload": { 332 | "psr-4": { 333 | "Illuminate\\Support\\": "" 334 | } 335 | }, 336 | "notification-url": "https://packagist.org/downloads/", 337 | "license": [ 338 | "MIT" 339 | ], 340 | "authors": [ 341 | { 342 | "name": "Taylor Otwell", 343 | "email": "taylor@laravel.com" 344 | } 345 | ], 346 | "description": "The Illuminate Macroable package.", 347 | "homepage": "https://laravel.com", 348 | "time": "2020-10-19T14:08:41+00:00" 349 | }, 350 | { 351 | "name": "illuminate/support", 352 | "version": "v8.11.2", 353 | "source": { 354 | "type": "git", 355 | "url": "https://github.com/illuminate/support.git", 356 | "reference": "52fa3552b996746e48bd539bc80877151c8503b1" 357 | }, 358 | "dist": { 359 | "type": "zip", 360 | "url": "https://api.github.com/repos/illuminate/support/zipball/52fa3552b996746e48bd539bc80877151c8503b1", 361 | "reference": "52fa3552b996746e48bd539bc80877151c8503b1", 362 | "shasum": "" 363 | }, 364 | "require": { 365 | "doctrine/inflector": "^1.4|^2.0", 366 | "ext-json": "*", 367 | "ext-mbstring": "*", 368 | "illuminate/collections": "^8.0", 369 | "illuminate/contracts": "^8.0", 370 | "illuminate/macroable": "^8.0", 371 | "nesbot/carbon": "^2.31", 372 | "php": "^7.3", 373 | "voku/portable-ascii": "^1.4.8" 374 | }, 375 | "conflict": { 376 | "tightenco/collect": "<5.5.33" 377 | }, 378 | "suggest": { 379 | "illuminate/filesystem": "Required to use the composer class (^8.0).", 380 | "ramsey/uuid": "Required to use Str::uuid() (^4.0).", 381 | "symfony/process": "Required to use the composer class (^5.1).", 382 | "symfony/var-dumper": "Required to use the dd function (^5.1).", 383 | "vlucas/phpdotenv": "Required to use the Env class and env helper (^5.2)." 384 | }, 385 | "type": "library", 386 | "extra": { 387 | "branch-alias": { 388 | "dev-master": "8.x-dev" 389 | } 390 | }, 391 | "autoload": { 392 | "psr-4": { 393 | "Illuminate\\Support\\": "" 394 | }, 395 | "files": [ 396 | "helpers.php" 397 | ] 398 | }, 399 | "notification-url": "https://packagist.org/downloads/", 400 | "license": [ 401 | "MIT" 402 | ], 403 | "authors": [ 404 | { 405 | "name": "Taylor Otwell", 406 | "email": "taylor@laravel.com" 407 | } 408 | ], 409 | "description": "The Illuminate Support package.", 410 | "homepage": "https://laravel.com", 411 | "time": "2020-10-20T20:12:11+00:00" 412 | }, 413 | { 414 | "name": "nesbot/carbon", 415 | "version": "2.41.5", 416 | "source": { 417 | "type": "git", 418 | "url": "https://github.com/briannesbitt/Carbon.git", 419 | "reference": "c4a9caf97cfc53adfc219043bcecf42bc663acee" 420 | }, 421 | "dist": { 422 | "type": "zip", 423 | "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/c4a9caf97cfc53adfc219043bcecf42bc663acee", 424 | "reference": "c4a9caf97cfc53adfc219043bcecf42bc663acee", 425 | "shasum": "" 426 | }, 427 | "require": { 428 | "ext-json": "*", 429 | "php": "^7.1.8 || ^8.0", 430 | "symfony/polyfill-mbstring": "^1.0", 431 | "symfony/translation": "^3.4 || ^4.0 || ^5.0" 432 | }, 433 | "require-dev": { 434 | "doctrine/orm": "^2.7", 435 | "friendsofphp/php-cs-fixer": "^2.14 || ^3.0", 436 | "kylekatarnls/multi-tester": "^2.0", 437 | "phpmd/phpmd": "^2.9", 438 | "phpstan/extension-installer": "^1.0", 439 | "phpstan/phpstan": "^0.12.35", 440 | "phpunit/phpunit": "^7.5 || ^8.0", 441 | "squizlabs/php_codesniffer": "^3.4" 442 | }, 443 | "bin": [ 444 | "bin/carbon" 445 | ], 446 | "type": "library", 447 | "extra": { 448 | "branch-alias": { 449 | "dev-master": "2.x-dev", 450 | "dev-3.x": "3.x-dev" 451 | }, 452 | "laravel": { 453 | "providers": [ 454 | "Carbon\\Laravel\\ServiceProvider" 455 | ] 456 | }, 457 | "phpstan": { 458 | "includes": [ 459 | "extension.neon" 460 | ] 461 | } 462 | }, 463 | "autoload": { 464 | "psr-4": { 465 | "Carbon\\": "src/Carbon/" 466 | } 467 | }, 468 | "notification-url": "https://packagist.org/downloads/", 469 | "license": [ 470 | "MIT" 471 | ], 472 | "authors": [ 473 | { 474 | "name": "Brian Nesbitt", 475 | "email": "brian@nesbot.com", 476 | "homepage": "http://nesbot.com" 477 | }, 478 | { 479 | "name": "kylekatarnls", 480 | "homepage": "http://github.com/kylekatarnls" 481 | } 482 | ], 483 | "description": "An API extension for DateTime that supports 281 different languages.", 484 | "homepage": "http://carbon.nesbot.com", 485 | "keywords": [ 486 | "date", 487 | "datetime", 488 | "time" 489 | ], 490 | "funding": [ 491 | { 492 | "url": "https://opencollective.com/Carbon", 493 | "type": "open_collective" 494 | }, 495 | { 496 | "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon", 497 | "type": "tidelift" 498 | } 499 | ], 500 | "time": "2020-10-23T06:02:30+00:00" 501 | }, 502 | { 503 | "name": "psr/container", 504 | "version": "1.0.0", 505 | "source": { 506 | "type": "git", 507 | "url": "https://github.com/php-fig/container.git", 508 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" 509 | }, 510 | "dist": { 511 | "type": "zip", 512 | "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 513 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 514 | "shasum": "" 515 | }, 516 | "require": { 517 | "php": ">=5.3.0" 518 | }, 519 | "type": "library", 520 | "extra": { 521 | "branch-alias": { 522 | "dev-master": "1.0.x-dev" 523 | } 524 | }, 525 | "autoload": { 526 | "psr-4": { 527 | "Psr\\Container\\": "src/" 528 | } 529 | }, 530 | "notification-url": "https://packagist.org/downloads/", 531 | "license": [ 532 | "MIT" 533 | ], 534 | "authors": [ 535 | { 536 | "name": "PHP-FIG", 537 | "homepage": "http://www.php-fig.org/" 538 | } 539 | ], 540 | "description": "Common Container Interface (PHP FIG PSR-11)", 541 | "homepage": "https://github.com/php-fig/container", 542 | "keywords": [ 543 | "PSR-11", 544 | "container", 545 | "container-interface", 546 | "container-interop", 547 | "psr" 548 | ], 549 | "time": "2017-02-14T16:28:37+00:00" 550 | }, 551 | { 552 | "name": "psr/simple-cache", 553 | "version": "1.0.1", 554 | "source": { 555 | "type": "git", 556 | "url": "https://github.com/php-fig/simple-cache.git", 557 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" 558 | }, 559 | "dist": { 560 | "type": "zip", 561 | "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 562 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 563 | "shasum": "" 564 | }, 565 | "require": { 566 | "php": ">=5.3.0" 567 | }, 568 | "type": "library", 569 | "extra": { 570 | "branch-alias": { 571 | "dev-master": "1.0.x-dev" 572 | } 573 | }, 574 | "autoload": { 575 | "psr-4": { 576 | "Psr\\SimpleCache\\": "src/" 577 | } 578 | }, 579 | "notification-url": "https://packagist.org/downloads/", 580 | "license": [ 581 | "MIT" 582 | ], 583 | "authors": [ 584 | { 585 | "name": "PHP-FIG", 586 | "homepage": "http://www.php-fig.org/" 587 | } 588 | ], 589 | "description": "Common interfaces for simple caching", 590 | "keywords": [ 591 | "cache", 592 | "caching", 593 | "psr", 594 | "psr-16", 595 | "simple-cache" 596 | ], 597 | "time": "2017-10-23T01:57:42+00:00" 598 | }, 599 | { 600 | "name": "symfony/class-loader", 601 | "version": "v3.4.45", 602 | "source": { 603 | "type": "git", 604 | "url": "https://github.com/symfony/class-loader.git", 605 | "reference": "5e119b7df5e4db6fcd0570ea20f28e2bc57c3da2" 606 | }, 607 | "dist": { 608 | "type": "zip", 609 | "url": "https://api.github.com/repos/symfony/class-loader/zipball/5e119b7df5e4db6fcd0570ea20f28e2bc57c3da2", 610 | "reference": "5e119b7df5e4db6fcd0570ea20f28e2bc57c3da2", 611 | "shasum": "" 612 | }, 613 | "require": { 614 | "php": "^5.5.9|>=7.0.8" 615 | }, 616 | "require-dev": { 617 | "symfony/finder": "~2.8|~3.0|~4.0", 618 | "symfony/polyfill-apcu": "~1.1" 619 | }, 620 | "suggest": { 621 | "symfony/polyfill-apcu": "For using ApcClassLoader on HHVM" 622 | }, 623 | "type": "library", 624 | "extra": { 625 | "branch-alias": { 626 | "dev-master": "3.4-dev" 627 | } 628 | }, 629 | "autoload": { 630 | "psr-4": { 631 | "Symfony\\Component\\ClassLoader\\": "" 632 | }, 633 | "exclude-from-classmap": [ 634 | "/Tests/" 635 | ] 636 | }, 637 | "notification-url": "https://packagist.org/downloads/", 638 | "license": [ 639 | "MIT" 640 | ], 641 | "authors": [ 642 | { 643 | "name": "Fabien Potencier", 644 | "email": "fabien@symfony.com" 645 | }, 646 | { 647 | "name": "Symfony Community", 648 | "homepage": "https://symfony.com/contributors" 649 | } 650 | ], 651 | "description": "Symfony ClassLoader Component", 652 | "homepage": "https://symfony.com", 653 | "funding": [ 654 | { 655 | "url": "https://symfony.com/sponsor", 656 | "type": "custom" 657 | }, 658 | { 659 | "url": "https://github.com/fabpot", 660 | "type": "github" 661 | }, 662 | { 663 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 664 | "type": "tidelift" 665 | } 666 | ], 667 | "time": "2020-09-02T16:06:40+00:00" 668 | }, 669 | { 670 | "name": "symfony/console", 671 | "version": "v5.1.7", 672 | "source": { 673 | "type": "git", 674 | "url": "https://github.com/symfony/console.git", 675 | "reference": "ae789a8a2ad189ce7e8216942cdb9b77319f5eb8" 676 | }, 677 | "dist": { 678 | "type": "zip", 679 | "url": "https://api.github.com/repos/symfony/console/zipball/ae789a8a2ad189ce7e8216942cdb9b77319f5eb8", 680 | "reference": "ae789a8a2ad189ce7e8216942cdb9b77319f5eb8", 681 | "shasum": "" 682 | }, 683 | "require": { 684 | "php": ">=7.2.5", 685 | "symfony/polyfill-mbstring": "~1.0", 686 | "symfony/polyfill-php73": "^1.8", 687 | "symfony/polyfill-php80": "^1.15", 688 | "symfony/service-contracts": "^1.1|^2", 689 | "symfony/string": "^5.1" 690 | }, 691 | "conflict": { 692 | "symfony/dependency-injection": "<4.4", 693 | "symfony/dotenv": "<5.1", 694 | "symfony/event-dispatcher": "<4.4", 695 | "symfony/lock": "<4.4", 696 | "symfony/process": "<4.4" 697 | }, 698 | "provide": { 699 | "psr/log-implementation": "1.0" 700 | }, 701 | "require-dev": { 702 | "psr/log": "~1.0", 703 | "symfony/config": "^4.4|^5.0", 704 | "symfony/dependency-injection": "^4.4|^5.0", 705 | "symfony/event-dispatcher": "^4.4|^5.0", 706 | "symfony/lock": "^4.4|^5.0", 707 | "symfony/process": "^4.4|^5.0", 708 | "symfony/var-dumper": "^4.4|^5.0" 709 | }, 710 | "suggest": { 711 | "psr/log": "For using the console logger", 712 | "symfony/event-dispatcher": "", 713 | "symfony/lock": "", 714 | "symfony/process": "" 715 | }, 716 | "type": "library", 717 | "extra": { 718 | "branch-alias": { 719 | "dev-master": "5.1-dev" 720 | } 721 | }, 722 | "autoload": { 723 | "psr-4": { 724 | "Symfony\\Component\\Console\\": "" 725 | }, 726 | "exclude-from-classmap": [ 727 | "/Tests/" 728 | ] 729 | }, 730 | "notification-url": "https://packagist.org/downloads/", 731 | "license": [ 732 | "MIT" 733 | ], 734 | "authors": [ 735 | { 736 | "name": "Fabien Potencier", 737 | "email": "fabien@symfony.com" 738 | }, 739 | { 740 | "name": "Symfony Community", 741 | "homepage": "https://symfony.com/contributors" 742 | } 743 | ], 744 | "description": "Symfony Console Component", 745 | "homepage": "https://symfony.com", 746 | "funding": [ 747 | { 748 | "url": "https://symfony.com/sponsor", 749 | "type": "custom" 750 | }, 751 | { 752 | "url": "https://github.com/fabpot", 753 | "type": "github" 754 | }, 755 | { 756 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 757 | "type": "tidelift" 758 | } 759 | ], 760 | "time": "2020-10-07T15:23:00+00:00" 761 | }, 762 | { 763 | "name": "symfony/finder", 764 | "version": "v5.1.7", 765 | "source": { 766 | "type": "git", 767 | "url": "https://github.com/symfony/finder.git", 768 | "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8" 769 | }, 770 | "dist": { 771 | "type": "zip", 772 | "url": "https://api.github.com/repos/symfony/finder/zipball/2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8", 773 | "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8", 774 | "shasum": "" 775 | }, 776 | "require": { 777 | "php": ">=7.2.5" 778 | }, 779 | "type": "library", 780 | "extra": { 781 | "branch-alias": { 782 | "dev-master": "5.1-dev" 783 | } 784 | }, 785 | "autoload": { 786 | "psr-4": { 787 | "Symfony\\Component\\Finder\\": "" 788 | }, 789 | "exclude-from-classmap": [ 790 | "/Tests/" 791 | ] 792 | }, 793 | "notification-url": "https://packagist.org/downloads/", 794 | "license": [ 795 | "MIT" 796 | ], 797 | "authors": [ 798 | { 799 | "name": "Fabien Potencier", 800 | "email": "fabien@symfony.com" 801 | }, 802 | { 803 | "name": "Symfony Community", 804 | "homepage": "https://symfony.com/contributors" 805 | } 806 | ], 807 | "description": "Symfony Finder Component", 808 | "homepage": "https://symfony.com", 809 | "funding": [ 810 | { 811 | "url": "https://symfony.com/sponsor", 812 | "type": "custom" 813 | }, 814 | { 815 | "url": "https://github.com/fabpot", 816 | "type": "github" 817 | }, 818 | { 819 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 820 | "type": "tidelift" 821 | } 822 | ], 823 | "time": "2020-09-02T16:23:27+00:00" 824 | }, 825 | { 826 | "name": "symfony/polyfill-ctype", 827 | "version": "v1.19.0", 828 | "source": { 829 | "type": "git", 830 | "url": "https://github.com/symfony/polyfill-ctype.git", 831 | "reference": "aed596913b70fae57be53d86faa2e9ef85a2297b" 832 | }, 833 | "dist": { 834 | "type": "zip", 835 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/aed596913b70fae57be53d86faa2e9ef85a2297b", 836 | "reference": "aed596913b70fae57be53d86faa2e9ef85a2297b", 837 | "shasum": "" 838 | }, 839 | "require": { 840 | "php": ">=5.3.3" 841 | }, 842 | "suggest": { 843 | "ext-ctype": "For best performance" 844 | }, 845 | "type": "library", 846 | "extra": { 847 | "branch-alias": { 848 | "dev-main": "1.19-dev" 849 | }, 850 | "thanks": { 851 | "name": "symfony/polyfill", 852 | "url": "https://github.com/symfony/polyfill" 853 | } 854 | }, 855 | "autoload": { 856 | "psr-4": { 857 | "Symfony\\Polyfill\\Ctype\\": "" 858 | }, 859 | "files": [ 860 | "bootstrap.php" 861 | ] 862 | }, 863 | "notification-url": "https://packagist.org/downloads/", 864 | "license": [ 865 | "MIT" 866 | ], 867 | "authors": [ 868 | { 869 | "name": "Gert de Pagter", 870 | "email": "BackEndTea@gmail.com" 871 | }, 872 | { 873 | "name": "Symfony Community", 874 | "homepage": "https://symfony.com/contributors" 875 | } 876 | ], 877 | "description": "Symfony polyfill for ctype functions", 878 | "homepage": "https://symfony.com", 879 | "keywords": [ 880 | "compatibility", 881 | "ctype", 882 | "polyfill", 883 | "portable" 884 | ], 885 | "funding": [ 886 | { 887 | "url": "https://symfony.com/sponsor", 888 | "type": "custom" 889 | }, 890 | { 891 | "url": "https://github.com/fabpot", 892 | "type": "github" 893 | }, 894 | { 895 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 896 | "type": "tidelift" 897 | } 898 | ], 899 | "time": "2020-10-23T09:01:57+00:00" 900 | }, 901 | { 902 | "name": "symfony/polyfill-intl-grapheme", 903 | "version": "v1.19.0", 904 | "source": { 905 | "type": "git", 906 | "url": "https://github.com/symfony/polyfill-intl-grapheme.git", 907 | "reference": "64fbe93b02024763359aea2bc81af05086c6af82" 908 | }, 909 | "dist": { 910 | "type": "zip", 911 | "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/64fbe93b02024763359aea2bc81af05086c6af82", 912 | "reference": "64fbe93b02024763359aea2bc81af05086c6af82", 913 | "shasum": "" 914 | }, 915 | "require": { 916 | "php": ">=5.3.3" 917 | }, 918 | "suggest": { 919 | "ext-intl": "For best performance" 920 | }, 921 | "type": "library", 922 | "extra": { 923 | "branch-alias": { 924 | "dev-main": "1.19-dev" 925 | }, 926 | "thanks": { 927 | "name": "symfony/polyfill", 928 | "url": "https://github.com/symfony/polyfill" 929 | } 930 | }, 931 | "autoload": { 932 | "psr-4": { 933 | "Symfony\\Polyfill\\Intl\\Grapheme\\": "" 934 | }, 935 | "files": [ 936 | "bootstrap.php" 937 | ] 938 | }, 939 | "notification-url": "https://packagist.org/downloads/", 940 | "license": [ 941 | "MIT" 942 | ], 943 | "authors": [ 944 | { 945 | "name": "Nicolas Grekas", 946 | "email": "p@tchwork.com" 947 | }, 948 | { 949 | "name": "Symfony Community", 950 | "homepage": "https://symfony.com/contributors" 951 | } 952 | ], 953 | "description": "Symfony polyfill for intl's grapheme_* functions", 954 | "homepage": "https://symfony.com", 955 | "keywords": [ 956 | "compatibility", 957 | "grapheme", 958 | "intl", 959 | "polyfill", 960 | "portable", 961 | "shim" 962 | ], 963 | "funding": [ 964 | { 965 | "url": "https://symfony.com/sponsor", 966 | "type": "custom" 967 | }, 968 | { 969 | "url": "https://github.com/fabpot", 970 | "type": "github" 971 | }, 972 | { 973 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 974 | "type": "tidelift" 975 | } 976 | ], 977 | "time": "2020-10-23T09:01:57+00:00" 978 | }, 979 | { 980 | "name": "symfony/polyfill-intl-normalizer", 981 | "version": "v1.19.0", 982 | "source": { 983 | "type": "git", 984 | "url": "https://github.com/symfony/polyfill-intl-normalizer.git", 985 | "reference": "8db0ae7936b42feb370840cf24de1a144fb0ef27" 986 | }, 987 | "dist": { 988 | "type": "zip", 989 | "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8db0ae7936b42feb370840cf24de1a144fb0ef27", 990 | "reference": "8db0ae7936b42feb370840cf24de1a144fb0ef27", 991 | "shasum": "" 992 | }, 993 | "require": { 994 | "php": ">=5.3.3" 995 | }, 996 | "suggest": { 997 | "ext-intl": "For best performance" 998 | }, 999 | "type": "library", 1000 | "extra": { 1001 | "branch-alias": { 1002 | "dev-main": "1.19-dev" 1003 | }, 1004 | "thanks": { 1005 | "name": "symfony/polyfill", 1006 | "url": "https://github.com/symfony/polyfill" 1007 | } 1008 | }, 1009 | "autoload": { 1010 | "psr-4": { 1011 | "Symfony\\Polyfill\\Intl\\Normalizer\\": "" 1012 | }, 1013 | "files": [ 1014 | "bootstrap.php" 1015 | ], 1016 | "classmap": [ 1017 | "Resources/stubs" 1018 | ] 1019 | }, 1020 | "notification-url": "https://packagist.org/downloads/", 1021 | "license": [ 1022 | "MIT" 1023 | ], 1024 | "authors": [ 1025 | { 1026 | "name": "Nicolas Grekas", 1027 | "email": "p@tchwork.com" 1028 | }, 1029 | { 1030 | "name": "Symfony Community", 1031 | "homepage": "https://symfony.com/contributors" 1032 | } 1033 | ], 1034 | "description": "Symfony polyfill for intl's Normalizer class and related functions", 1035 | "homepage": "https://symfony.com", 1036 | "keywords": [ 1037 | "compatibility", 1038 | "intl", 1039 | "normalizer", 1040 | "polyfill", 1041 | "portable", 1042 | "shim" 1043 | ], 1044 | "funding": [ 1045 | { 1046 | "url": "https://symfony.com/sponsor", 1047 | "type": "custom" 1048 | }, 1049 | { 1050 | "url": "https://github.com/fabpot", 1051 | "type": "github" 1052 | }, 1053 | { 1054 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1055 | "type": "tidelift" 1056 | } 1057 | ], 1058 | "time": "2020-10-23T09:01:57+00:00" 1059 | }, 1060 | { 1061 | "name": "symfony/polyfill-mbstring", 1062 | "version": "v1.19.0", 1063 | "source": { 1064 | "type": "git", 1065 | "url": "https://github.com/symfony/polyfill-mbstring.git", 1066 | "reference": "b5f7b932ee6fa802fc792eabd77c4c88084517ce" 1067 | }, 1068 | "dist": { 1069 | "type": "zip", 1070 | "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b5f7b932ee6fa802fc792eabd77c4c88084517ce", 1071 | "reference": "b5f7b932ee6fa802fc792eabd77c4c88084517ce", 1072 | "shasum": "" 1073 | }, 1074 | "require": { 1075 | "php": ">=5.3.3" 1076 | }, 1077 | "suggest": { 1078 | "ext-mbstring": "For best performance" 1079 | }, 1080 | "type": "library", 1081 | "extra": { 1082 | "branch-alias": { 1083 | "dev-main": "1.19-dev" 1084 | }, 1085 | "thanks": { 1086 | "name": "symfony/polyfill", 1087 | "url": "https://github.com/symfony/polyfill" 1088 | } 1089 | }, 1090 | "autoload": { 1091 | "psr-4": { 1092 | "Symfony\\Polyfill\\Mbstring\\": "" 1093 | }, 1094 | "files": [ 1095 | "bootstrap.php" 1096 | ] 1097 | }, 1098 | "notification-url": "https://packagist.org/downloads/", 1099 | "license": [ 1100 | "MIT" 1101 | ], 1102 | "authors": [ 1103 | { 1104 | "name": "Nicolas Grekas", 1105 | "email": "p@tchwork.com" 1106 | }, 1107 | { 1108 | "name": "Symfony Community", 1109 | "homepage": "https://symfony.com/contributors" 1110 | } 1111 | ], 1112 | "description": "Symfony polyfill for the Mbstring extension", 1113 | "homepage": "https://symfony.com", 1114 | "keywords": [ 1115 | "compatibility", 1116 | "mbstring", 1117 | "polyfill", 1118 | "portable", 1119 | "shim" 1120 | ], 1121 | "funding": [ 1122 | { 1123 | "url": "https://symfony.com/sponsor", 1124 | "type": "custom" 1125 | }, 1126 | { 1127 | "url": "https://github.com/fabpot", 1128 | "type": "github" 1129 | }, 1130 | { 1131 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1132 | "type": "tidelift" 1133 | } 1134 | ], 1135 | "time": "2020-10-23T09:01:57+00:00" 1136 | }, 1137 | { 1138 | "name": "symfony/polyfill-php73", 1139 | "version": "v1.19.0", 1140 | "source": { 1141 | "type": "git", 1142 | "url": "https://github.com/symfony/polyfill-php73.git", 1143 | "reference": "9d920e3218205554171b2503bb3e4a1366824a16" 1144 | }, 1145 | "dist": { 1146 | "type": "zip", 1147 | "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9d920e3218205554171b2503bb3e4a1366824a16", 1148 | "reference": "9d920e3218205554171b2503bb3e4a1366824a16", 1149 | "shasum": "" 1150 | }, 1151 | "require": { 1152 | "php": ">=5.3.3" 1153 | }, 1154 | "type": "library", 1155 | "extra": { 1156 | "branch-alias": { 1157 | "dev-main": "1.19-dev" 1158 | }, 1159 | "thanks": { 1160 | "name": "symfony/polyfill", 1161 | "url": "https://github.com/symfony/polyfill" 1162 | } 1163 | }, 1164 | "autoload": { 1165 | "psr-4": { 1166 | "Symfony\\Polyfill\\Php73\\": "" 1167 | }, 1168 | "files": [ 1169 | "bootstrap.php" 1170 | ], 1171 | "classmap": [ 1172 | "Resources/stubs" 1173 | ] 1174 | }, 1175 | "notification-url": "https://packagist.org/downloads/", 1176 | "license": [ 1177 | "MIT" 1178 | ], 1179 | "authors": [ 1180 | { 1181 | "name": "Nicolas Grekas", 1182 | "email": "p@tchwork.com" 1183 | }, 1184 | { 1185 | "name": "Symfony Community", 1186 | "homepage": "https://symfony.com/contributors" 1187 | } 1188 | ], 1189 | "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", 1190 | "homepage": "https://symfony.com", 1191 | "keywords": [ 1192 | "compatibility", 1193 | "polyfill", 1194 | "portable", 1195 | "shim" 1196 | ], 1197 | "funding": [ 1198 | { 1199 | "url": "https://symfony.com/sponsor", 1200 | "type": "custom" 1201 | }, 1202 | { 1203 | "url": "https://github.com/fabpot", 1204 | "type": "github" 1205 | }, 1206 | { 1207 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1208 | "type": "tidelift" 1209 | } 1210 | ], 1211 | "time": "2020-10-23T09:01:57+00:00" 1212 | }, 1213 | { 1214 | "name": "symfony/polyfill-php80", 1215 | "version": "v1.19.0", 1216 | "source": { 1217 | "type": "git", 1218 | "url": "https://github.com/symfony/polyfill-php80.git", 1219 | "reference": "f54ef00f4678f348f133097fa8c3701d197ff44d" 1220 | }, 1221 | "dist": { 1222 | "type": "zip", 1223 | "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/f54ef00f4678f348f133097fa8c3701d197ff44d", 1224 | "reference": "f54ef00f4678f348f133097fa8c3701d197ff44d", 1225 | "shasum": "" 1226 | }, 1227 | "require": { 1228 | "php": ">=7.0.8" 1229 | }, 1230 | "type": "library", 1231 | "extra": { 1232 | "branch-alias": { 1233 | "dev-main": "1.19-dev" 1234 | }, 1235 | "thanks": { 1236 | "name": "symfony/polyfill", 1237 | "url": "https://github.com/symfony/polyfill" 1238 | } 1239 | }, 1240 | "autoload": { 1241 | "psr-4": { 1242 | "Symfony\\Polyfill\\Php80\\": "" 1243 | }, 1244 | "files": [ 1245 | "bootstrap.php" 1246 | ], 1247 | "classmap": [ 1248 | "Resources/stubs" 1249 | ] 1250 | }, 1251 | "notification-url": "https://packagist.org/downloads/", 1252 | "license": [ 1253 | "MIT" 1254 | ], 1255 | "authors": [ 1256 | { 1257 | "name": "Ion Bazan", 1258 | "email": "ion.bazan@gmail.com" 1259 | }, 1260 | { 1261 | "name": "Nicolas Grekas", 1262 | "email": "p@tchwork.com" 1263 | }, 1264 | { 1265 | "name": "Symfony Community", 1266 | "homepage": "https://symfony.com/contributors" 1267 | } 1268 | ], 1269 | "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", 1270 | "homepage": "https://symfony.com", 1271 | "keywords": [ 1272 | "compatibility", 1273 | "polyfill", 1274 | "portable", 1275 | "shim" 1276 | ], 1277 | "funding": [ 1278 | { 1279 | "url": "https://symfony.com/sponsor", 1280 | "type": "custom" 1281 | }, 1282 | { 1283 | "url": "https://github.com/fabpot", 1284 | "type": "github" 1285 | }, 1286 | { 1287 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1288 | "type": "tidelift" 1289 | } 1290 | ], 1291 | "time": "2020-10-23T09:01:57+00:00" 1292 | }, 1293 | { 1294 | "name": "symfony/process", 1295 | "version": "v5.1.7", 1296 | "source": { 1297 | "type": "git", 1298 | "url": "https://github.com/symfony/process.git", 1299 | "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9" 1300 | }, 1301 | "dist": { 1302 | "type": "zip", 1303 | "url": "https://api.github.com/repos/symfony/process/zipball/d3a2e64866169586502f0cd9cab69135ad12cee9", 1304 | "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9", 1305 | "shasum": "" 1306 | }, 1307 | "require": { 1308 | "php": ">=7.2.5", 1309 | "symfony/polyfill-php80": "^1.15" 1310 | }, 1311 | "type": "library", 1312 | "extra": { 1313 | "branch-alias": { 1314 | "dev-master": "5.1-dev" 1315 | } 1316 | }, 1317 | "autoload": { 1318 | "psr-4": { 1319 | "Symfony\\Component\\Process\\": "" 1320 | }, 1321 | "exclude-from-classmap": [ 1322 | "/Tests/" 1323 | ] 1324 | }, 1325 | "notification-url": "https://packagist.org/downloads/", 1326 | "license": [ 1327 | "MIT" 1328 | ], 1329 | "authors": [ 1330 | { 1331 | "name": "Fabien Potencier", 1332 | "email": "fabien@symfony.com" 1333 | }, 1334 | { 1335 | "name": "Symfony Community", 1336 | "homepage": "https://symfony.com/contributors" 1337 | } 1338 | ], 1339 | "description": "Symfony Process Component", 1340 | "homepage": "https://symfony.com", 1341 | "funding": [ 1342 | { 1343 | "url": "https://symfony.com/sponsor", 1344 | "type": "custom" 1345 | }, 1346 | { 1347 | "url": "https://github.com/fabpot", 1348 | "type": "github" 1349 | }, 1350 | { 1351 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1352 | "type": "tidelift" 1353 | } 1354 | ], 1355 | "time": "2020-09-02T16:23:27+00:00" 1356 | }, 1357 | { 1358 | "name": "symfony/service-contracts", 1359 | "version": "v2.2.0", 1360 | "source": { 1361 | "type": "git", 1362 | "url": "https://github.com/symfony/service-contracts.git", 1363 | "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1" 1364 | }, 1365 | "dist": { 1366 | "type": "zip", 1367 | "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1", 1368 | "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1", 1369 | "shasum": "" 1370 | }, 1371 | "require": { 1372 | "php": ">=7.2.5", 1373 | "psr/container": "^1.0" 1374 | }, 1375 | "suggest": { 1376 | "symfony/service-implementation": "" 1377 | }, 1378 | "type": "library", 1379 | "extra": { 1380 | "branch-alias": { 1381 | "dev-master": "2.2-dev" 1382 | }, 1383 | "thanks": { 1384 | "name": "symfony/contracts", 1385 | "url": "https://github.com/symfony/contracts" 1386 | } 1387 | }, 1388 | "autoload": { 1389 | "psr-4": { 1390 | "Symfony\\Contracts\\Service\\": "" 1391 | } 1392 | }, 1393 | "notification-url": "https://packagist.org/downloads/", 1394 | "license": [ 1395 | "MIT" 1396 | ], 1397 | "authors": [ 1398 | { 1399 | "name": "Nicolas Grekas", 1400 | "email": "p@tchwork.com" 1401 | }, 1402 | { 1403 | "name": "Symfony Community", 1404 | "homepage": "https://symfony.com/contributors" 1405 | } 1406 | ], 1407 | "description": "Generic abstractions related to writing services", 1408 | "homepage": "https://symfony.com", 1409 | "keywords": [ 1410 | "abstractions", 1411 | "contracts", 1412 | "decoupling", 1413 | "interfaces", 1414 | "interoperability", 1415 | "standards" 1416 | ], 1417 | "funding": [ 1418 | { 1419 | "url": "https://symfony.com/sponsor", 1420 | "type": "custom" 1421 | }, 1422 | { 1423 | "url": "https://github.com/fabpot", 1424 | "type": "github" 1425 | }, 1426 | { 1427 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1428 | "type": "tidelift" 1429 | } 1430 | ], 1431 | "time": "2020-09-07T11:33:47+00:00" 1432 | }, 1433 | { 1434 | "name": "symfony/string", 1435 | "version": "v5.1.7", 1436 | "source": { 1437 | "type": "git", 1438 | "url": "https://github.com/symfony/string.git", 1439 | "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e" 1440 | }, 1441 | "dist": { 1442 | "type": "zip", 1443 | "url": "https://api.github.com/repos/symfony/string/zipball/4a9afe9d07bac506f75bcee8ed3ce76da5a9343e", 1444 | "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e", 1445 | "shasum": "" 1446 | }, 1447 | "require": { 1448 | "php": ">=7.2.5", 1449 | "symfony/polyfill-ctype": "~1.8", 1450 | "symfony/polyfill-intl-grapheme": "~1.0", 1451 | "symfony/polyfill-intl-normalizer": "~1.0", 1452 | "symfony/polyfill-mbstring": "~1.0", 1453 | "symfony/polyfill-php80": "~1.15" 1454 | }, 1455 | "require-dev": { 1456 | "symfony/error-handler": "^4.4|^5.0", 1457 | "symfony/http-client": "^4.4|^5.0", 1458 | "symfony/translation-contracts": "^1.1|^2", 1459 | "symfony/var-exporter": "^4.4|^5.0" 1460 | }, 1461 | "type": "library", 1462 | "extra": { 1463 | "branch-alias": { 1464 | "dev-master": "5.1-dev" 1465 | } 1466 | }, 1467 | "autoload": { 1468 | "psr-4": { 1469 | "Symfony\\Component\\String\\": "" 1470 | }, 1471 | "files": [ 1472 | "Resources/functions.php" 1473 | ], 1474 | "exclude-from-classmap": [ 1475 | "/Tests/" 1476 | ] 1477 | }, 1478 | "notification-url": "https://packagist.org/downloads/", 1479 | "license": [ 1480 | "MIT" 1481 | ], 1482 | "authors": [ 1483 | { 1484 | "name": "Nicolas Grekas", 1485 | "email": "p@tchwork.com" 1486 | }, 1487 | { 1488 | "name": "Symfony Community", 1489 | "homepage": "https://symfony.com/contributors" 1490 | } 1491 | ], 1492 | "description": "Symfony String component", 1493 | "homepage": "https://symfony.com", 1494 | "keywords": [ 1495 | "grapheme", 1496 | "i18n", 1497 | "string", 1498 | "unicode", 1499 | "utf-8", 1500 | "utf8" 1501 | ], 1502 | "funding": [ 1503 | { 1504 | "url": "https://symfony.com/sponsor", 1505 | "type": "custom" 1506 | }, 1507 | { 1508 | "url": "https://github.com/fabpot", 1509 | "type": "github" 1510 | }, 1511 | { 1512 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1513 | "type": "tidelift" 1514 | } 1515 | ], 1516 | "time": "2020-09-15T12:23:47+00:00" 1517 | }, 1518 | { 1519 | "name": "symfony/translation", 1520 | "version": "v5.1.7", 1521 | "source": { 1522 | "type": "git", 1523 | "url": "https://github.com/symfony/translation.git", 1524 | "reference": "e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b" 1525 | }, 1526 | "dist": { 1527 | "type": "zip", 1528 | "url": "https://api.github.com/repos/symfony/translation/zipball/e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b", 1529 | "reference": "e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b", 1530 | "shasum": "" 1531 | }, 1532 | "require": { 1533 | "php": ">=7.2.5", 1534 | "symfony/polyfill-mbstring": "~1.0", 1535 | "symfony/polyfill-php80": "^1.15", 1536 | "symfony/translation-contracts": "^2" 1537 | }, 1538 | "conflict": { 1539 | "symfony/config": "<4.4", 1540 | "symfony/dependency-injection": "<5.0", 1541 | "symfony/http-kernel": "<5.0", 1542 | "symfony/twig-bundle": "<5.0", 1543 | "symfony/yaml": "<4.4" 1544 | }, 1545 | "provide": { 1546 | "symfony/translation-implementation": "2.0" 1547 | }, 1548 | "require-dev": { 1549 | "psr/log": "~1.0", 1550 | "symfony/config": "^4.4|^5.0", 1551 | "symfony/console": "^4.4|^5.0", 1552 | "symfony/dependency-injection": "^5.0", 1553 | "symfony/finder": "^4.4|^5.0", 1554 | "symfony/http-kernel": "^5.0", 1555 | "symfony/intl": "^4.4|^5.0", 1556 | "symfony/service-contracts": "^1.1.2|^2", 1557 | "symfony/yaml": "^4.4|^5.0" 1558 | }, 1559 | "suggest": { 1560 | "psr/log-implementation": "To use logging capability in translator", 1561 | "symfony/config": "", 1562 | "symfony/yaml": "" 1563 | }, 1564 | "type": "library", 1565 | "extra": { 1566 | "branch-alias": { 1567 | "dev-master": "5.1-dev" 1568 | } 1569 | }, 1570 | "autoload": { 1571 | "psr-4": { 1572 | "Symfony\\Component\\Translation\\": "" 1573 | }, 1574 | "exclude-from-classmap": [ 1575 | "/Tests/" 1576 | ] 1577 | }, 1578 | "notification-url": "https://packagist.org/downloads/", 1579 | "license": [ 1580 | "MIT" 1581 | ], 1582 | "authors": [ 1583 | { 1584 | "name": "Fabien Potencier", 1585 | "email": "fabien@symfony.com" 1586 | }, 1587 | { 1588 | "name": "Symfony Community", 1589 | "homepage": "https://symfony.com/contributors" 1590 | } 1591 | ], 1592 | "description": "Symfony Translation Component", 1593 | "homepage": "https://symfony.com", 1594 | "funding": [ 1595 | { 1596 | "url": "https://symfony.com/sponsor", 1597 | "type": "custom" 1598 | }, 1599 | { 1600 | "url": "https://github.com/fabpot", 1601 | "type": "github" 1602 | }, 1603 | { 1604 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1605 | "type": "tidelift" 1606 | } 1607 | ], 1608 | "time": "2020-09-27T03:44:28+00:00" 1609 | }, 1610 | { 1611 | "name": "symfony/translation-contracts", 1612 | "version": "v2.3.0", 1613 | "source": { 1614 | "type": "git", 1615 | "url": "https://github.com/symfony/translation-contracts.git", 1616 | "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105" 1617 | }, 1618 | "dist": { 1619 | "type": "zip", 1620 | "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e2eaa60b558f26a4b0354e1bbb25636efaaad105", 1621 | "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105", 1622 | "shasum": "" 1623 | }, 1624 | "require": { 1625 | "php": ">=7.2.5" 1626 | }, 1627 | "suggest": { 1628 | "symfony/translation-implementation": "" 1629 | }, 1630 | "type": "library", 1631 | "extra": { 1632 | "branch-alias": { 1633 | "dev-master": "2.3-dev" 1634 | }, 1635 | "thanks": { 1636 | "name": "symfony/contracts", 1637 | "url": "https://github.com/symfony/contracts" 1638 | } 1639 | }, 1640 | "autoload": { 1641 | "psr-4": { 1642 | "Symfony\\Contracts\\Translation\\": "" 1643 | } 1644 | }, 1645 | "notification-url": "https://packagist.org/downloads/", 1646 | "license": [ 1647 | "MIT" 1648 | ], 1649 | "authors": [ 1650 | { 1651 | "name": "Nicolas Grekas", 1652 | "email": "p@tchwork.com" 1653 | }, 1654 | { 1655 | "name": "Symfony Community", 1656 | "homepage": "https://symfony.com/contributors" 1657 | } 1658 | ], 1659 | "description": "Generic abstractions related to translation", 1660 | "homepage": "https://symfony.com", 1661 | "keywords": [ 1662 | "abstractions", 1663 | "contracts", 1664 | "decoupling", 1665 | "interfaces", 1666 | "interoperability", 1667 | "standards" 1668 | ], 1669 | "funding": [ 1670 | { 1671 | "url": "https://symfony.com/sponsor", 1672 | "type": "custom" 1673 | }, 1674 | { 1675 | "url": "https://github.com/fabpot", 1676 | "type": "github" 1677 | }, 1678 | { 1679 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1680 | "type": "tidelift" 1681 | } 1682 | ], 1683 | "time": "2020-09-28T13:05:58+00:00" 1684 | }, 1685 | { 1686 | "name": "voku/portable-ascii", 1687 | "version": "1.5.3", 1688 | "source": { 1689 | "type": "git", 1690 | "url": "https://github.com/voku/portable-ascii.git", 1691 | "reference": "25bcbf01678930251fd572891447d9e318a6e2b8" 1692 | }, 1693 | "dist": { 1694 | "type": "zip", 1695 | "url": "https://api.github.com/repos/voku/portable-ascii/zipball/25bcbf01678930251fd572891447d9e318a6e2b8", 1696 | "reference": "25bcbf01678930251fd572891447d9e318a6e2b8", 1697 | "shasum": "" 1698 | }, 1699 | "require": { 1700 | "php": ">=7.0.0" 1701 | }, 1702 | "require-dev": { 1703 | "phpunit/phpunit": "~6.0 || ~7.0" 1704 | }, 1705 | "suggest": { 1706 | "ext-intl": "Use Intl for transliterator_transliterate() support" 1707 | }, 1708 | "type": "library", 1709 | "autoload": { 1710 | "psr-4": { 1711 | "voku\\": "src/voku/" 1712 | } 1713 | }, 1714 | "notification-url": "https://packagist.org/downloads/", 1715 | "license": [ 1716 | "MIT" 1717 | ], 1718 | "authors": [ 1719 | { 1720 | "name": "Lars Moelleken", 1721 | "homepage": "http://www.moelleken.org/" 1722 | } 1723 | ], 1724 | "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", 1725 | "homepage": "https://github.com/voku/portable-ascii", 1726 | "keywords": [ 1727 | "ascii", 1728 | "clean", 1729 | "php" 1730 | ], 1731 | "funding": [ 1732 | { 1733 | "url": "https://www.paypal.me/moelleken", 1734 | "type": "custom" 1735 | }, 1736 | { 1737 | "url": "https://github.com/voku", 1738 | "type": "github" 1739 | }, 1740 | { 1741 | "url": "https://opencollective.com/portable-ascii", 1742 | "type": "open_collective" 1743 | }, 1744 | { 1745 | "url": "https://www.patreon.com/voku", 1746 | "type": "patreon" 1747 | }, 1748 | { 1749 | "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", 1750 | "type": "tidelift" 1751 | } 1752 | ], 1753 | "time": "2020-07-22T23:32:04+00:00" 1754 | } 1755 | ], 1756 | "packages-dev": [ 1757 | { 1758 | "name": "guzzlehttp/guzzle", 1759 | "version": "6.5.5", 1760 | "source": { 1761 | "type": "git", 1762 | "url": "https://github.com/guzzle/guzzle.git", 1763 | "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e" 1764 | }, 1765 | "dist": { 1766 | "type": "zip", 1767 | "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", 1768 | "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", 1769 | "shasum": "" 1770 | }, 1771 | "require": { 1772 | "ext-json": "*", 1773 | "guzzlehttp/promises": "^1.0", 1774 | "guzzlehttp/psr7": "^1.6.1", 1775 | "php": ">=5.5", 1776 | "symfony/polyfill-intl-idn": "^1.17.0" 1777 | }, 1778 | "require-dev": { 1779 | "ext-curl": "*", 1780 | "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0", 1781 | "psr/log": "^1.1" 1782 | }, 1783 | "suggest": { 1784 | "psr/log": "Required for using the Log middleware" 1785 | }, 1786 | "type": "library", 1787 | "extra": { 1788 | "branch-alias": { 1789 | "dev-master": "6.5-dev" 1790 | } 1791 | }, 1792 | "autoload": { 1793 | "psr-4": { 1794 | "GuzzleHttp\\": "src/" 1795 | }, 1796 | "files": [ 1797 | "src/functions_include.php" 1798 | ] 1799 | }, 1800 | "notification-url": "https://packagist.org/downloads/", 1801 | "license": [ 1802 | "MIT" 1803 | ], 1804 | "authors": [ 1805 | { 1806 | "name": "Michael Dowling", 1807 | "email": "mtdowling@gmail.com", 1808 | "homepage": "https://github.com/mtdowling" 1809 | } 1810 | ], 1811 | "description": "Guzzle is a PHP HTTP client library", 1812 | "homepage": "http://guzzlephp.org/", 1813 | "keywords": [ 1814 | "client", 1815 | "curl", 1816 | "framework", 1817 | "http", 1818 | "http client", 1819 | "rest", 1820 | "web service" 1821 | ], 1822 | "time": "2020-06-16T21:01:06+00:00" 1823 | }, 1824 | { 1825 | "name": "guzzlehttp/promises", 1826 | "version": "1.4.0", 1827 | "source": { 1828 | "type": "git", 1829 | "url": "https://github.com/guzzle/promises.git", 1830 | "reference": "60d379c243457e073cff02bc323a2a86cb355631" 1831 | }, 1832 | "dist": { 1833 | "type": "zip", 1834 | "url": "https://api.github.com/repos/guzzle/promises/zipball/60d379c243457e073cff02bc323a2a86cb355631", 1835 | "reference": "60d379c243457e073cff02bc323a2a86cb355631", 1836 | "shasum": "" 1837 | }, 1838 | "require": { 1839 | "php": ">=5.5" 1840 | }, 1841 | "require-dev": { 1842 | "symfony/phpunit-bridge": "^4.4 || ^5.1" 1843 | }, 1844 | "type": "library", 1845 | "extra": { 1846 | "branch-alias": { 1847 | "dev-master": "1.4-dev" 1848 | } 1849 | }, 1850 | "autoload": { 1851 | "psr-4": { 1852 | "GuzzleHttp\\Promise\\": "src/" 1853 | }, 1854 | "files": [ 1855 | "src/functions_include.php" 1856 | ] 1857 | }, 1858 | "notification-url": "https://packagist.org/downloads/", 1859 | "license": [ 1860 | "MIT" 1861 | ], 1862 | "authors": [ 1863 | { 1864 | "name": "Michael Dowling", 1865 | "email": "mtdowling@gmail.com", 1866 | "homepage": "https://github.com/mtdowling" 1867 | } 1868 | ], 1869 | "description": "Guzzle promises library", 1870 | "keywords": [ 1871 | "promise" 1872 | ], 1873 | "time": "2020-09-30T07:37:28+00:00" 1874 | }, 1875 | { 1876 | "name": "guzzlehttp/psr7", 1877 | "version": "1.7.0", 1878 | "source": { 1879 | "type": "git", 1880 | "url": "https://github.com/guzzle/psr7.git", 1881 | "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3" 1882 | }, 1883 | "dist": { 1884 | "type": "zip", 1885 | "url": "https://api.github.com/repos/guzzle/psr7/zipball/53330f47520498c0ae1f61f7e2c90f55690c06a3", 1886 | "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3", 1887 | "shasum": "" 1888 | }, 1889 | "require": { 1890 | "php": ">=5.4.0", 1891 | "psr/http-message": "~1.0", 1892 | "ralouphie/getallheaders": "^2.0.5 || ^3.0.0" 1893 | }, 1894 | "provide": { 1895 | "psr/http-message-implementation": "1.0" 1896 | }, 1897 | "require-dev": { 1898 | "ext-zlib": "*", 1899 | "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10" 1900 | }, 1901 | "suggest": { 1902 | "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" 1903 | }, 1904 | "type": "library", 1905 | "extra": { 1906 | "branch-alias": { 1907 | "dev-master": "1.7-dev" 1908 | } 1909 | }, 1910 | "autoload": { 1911 | "psr-4": { 1912 | "GuzzleHttp\\Psr7\\": "src/" 1913 | }, 1914 | "files": [ 1915 | "src/functions_include.php" 1916 | ] 1917 | }, 1918 | "notification-url": "https://packagist.org/downloads/", 1919 | "license": [ 1920 | "MIT" 1921 | ], 1922 | "authors": [ 1923 | { 1924 | "name": "Michael Dowling", 1925 | "email": "mtdowling@gmail.com", 1926 | "homepage": "https://github.com/mtdowling" 1927 | }, 1928 | { 1929 | "name": "Tobias Schultze", 1930 | "homepage": "https://github.com/Tobion" 1931 | } 1932 | ], 1933 | "description": "PSR-7 message implementation that also provides common utility methods", 1934 | "keywords": [ 1935 | "http", 1936 | "message", 1937 | "psr-7", 1938 | "request", 1939 | "response", 1940 | "stream", 1941 | "uri", 1942 | "url" 1943 | ], 1944 | "time": "2020-09-30T07:37:11+00:00" 1945 | }, 1946 | { 1947 | "name": "illuminate/bus", 1948 | "version": "v8.11.2", 1949 | "source": { 1950 | "type": "git", 1951 | "url": "https://github.com/illuminate/bus.git", 1952 | "reference": "e79da50a5857a747059557e1e3fd8f10e3c3644a" 1953 | }, 1954 | "dist": { 1955 | "type": "zip", 1956 | "url": "https://api.github.com/repos/illuminate/bus/zipball/e79da50a5857a747059557e1e3fd8f10e3c3644a", 1957 | "reference": "e79da50a5857a747059557e1e3fd8f10e3c3644a", 1958 | "shasum": "" 1959 | }, 1960 | "require": { 1961 | "illuminate/collections": "^8.0", 1962 | "illuminate/contracts": "^8.0", 1963 | "illuminate/pipeline": "^8.0", 1964 | "illuminate/support": "^8.0", 1965 | "php": "^7.3" 1966 | }, 1967 | "suggest": { 1968 | "illuminate/queue": "Required to use closures when chaining jobs (^7.0)." 1969 | }, 1970 | "type": "library", 1971 | "extra": { 1972 | "branch-alias": { 1973 | "dev-master": "8.x-dev" 1974 | } 1975 | }, 1976 | "autoload": { 1977 | "psr-4": { 1978 | "Illuminate\\Bus\\": "" 1979 | } 1980 | }, 1981 | "notification-url": "https://packagist.org/downloads/", 1982 | "license": [ 1983 | "MIT" 1984 | ], 1985 | "authors": [ 1986 | { 1987 | "name": "Taylor Otwell", 1988 | "email": "taylor@laravel.com" 1989 | } 1990 | ], 1991 | "description": "The Illuminate Bus package.", 1992 | "homepage": "https://laravel.com", 1993 | "time": "2020-10-19T13:32:03+00:00" 1994 | }, 1995 | { 1996 | "name": "illuminate/config", 1997 | "version": "v8.11.2", 1998 | "source": { 1999 | "type": "git", 2000 | "url": "https://github.com/illuminate/config.git", 2001 | "reference": "d858eee78c95491f599e5df49870c9e3bb5dec7e" 2002 | }, 2003 | "dist": { 2004 | "type": "zip", 2005 | "url": "https://api.github.com/repos/illuminate/config/zipball/d858eee78c95491f599e5df49870c9e3bb5dec7e", 2006 | "reference": "d858eee78c95491f599e5df49870c9e3bb5dec7e", 2007 | "shasum": "" 2008 | }, 2009 | "require": { 2010 | "illuminate/collections": "^8.0", 2011 | "illuminate/contracts": "^8.0", 2012 | "php": "^7.3" 2013 | }, 2014 | "type": "library", 2015 | "extra": { 2016 | "branch-alias": { 2017 | "dev-master": "8.x-dev" 2018 | } 2019 | }, 2020 | "autoload": { 2021 | "psr-4": { 2022 | "Illuminate\\Config\\": "" 2023 | } 2024 | }, 2025 | "notification-url": "https://packagist.org/downloads/", 2026 | "license": [ 2027 | "MIT" 2028 | ], 2029 | "authors": [ 2030 | { 2031 | "name": "Taylor Otwell", 2032 | "email": "taylor@laravel.com" 2033 | } 2034 | ], 2035 | "description": "The Illuminate Config package.", 2036 | "homepage": "https://laravel.com", 2037 | "time": "2020-08-24T13:16:11+00:00" 2038 | }, 2039 | { 2040 | "name": "illuminate/container", 2041 | "version": "v8.11.2", 2042 | "source": { 2043 | "type": "git", 2044 | "url": "https://github.com/illuminate/container.git", 2045 | "reference": "bcceb7ae1eae421e1f5f06e849f4287e948a36ea" 2046 | }, 2047 | "dist": { 2048 | "type": "zip", 2049 | "url": "https://api.github.com/repos/illuminate/container/zipball/bcceb7ae1eae421e1f5f06e849f4287e948a36ea", 2050 | "reference": "bcceb7ae1eae421e1f5f06e849f4287e948a36ea", 2051 | "shasum": "" 2052 | }, 2053 | "require": { 2054 | "illuminate/contracts": "^8.0", 2055 | "php": "^7.3", 2056 | "psr/container": "^1.0" 2057 | }, 2058 | "provide": { 2059 | "psr/container-implementation": "1.0" 2060 | }, 2061 | "type": "library", 2062 | "extra": { 2063 | "branch-alias": { 2064 | "dev-master": "8.x-dev" 2065 | } 2066 | }, 2067 | "autoload": { 2068 | "psr-4": { 2069 | "Illuminate\\Container\\": "" 2070 | } 2071 | }, 2072 | "notification-url": "https://packagist.org/downloads/", 2073 | "license": [ 2074 | "MIT" 2075 | ], 2076 | "authors": [ 2077 | { 2078 | "name": "Taylor Otwell", 2079 | "email": "taylor@laravel.com" 2080 | } 2081 | ], 2082 | "description": "The Illuminate Container package.", 2083 | "homepage": "https://laravel.com", 2084 | "time": "2020-10-20T18:42:47+00:00" 2085 | }, 2086 | { 2087 | "name": "illuminate/events", 2088 | "version": "v8.11.2", 2089 | "source": { 2090 | "type": "git", 2091 | "url": "https://github.com/illuminate/events.git", 2092 | "reference": "4cb69561cac9cd2ea5e0bfef1ed70d3cd2d5b157" 2093 | }, 2094 | "dist": { 2095 | "type": "zip", 2096 | "url": "https://api.github.com/repos/illuminate/events/zipball/4cb69561cac9cd2ea5e0bfef1ed70d3cd2d5b157", 2097 | "reference": "4cb69561cac9cd2ea5e0bfef1ed70d3cd2d5b157", 2098 | "shasum": "" 2099 | }, 2100 | "require": { 2101 | "illuminate/bus": "^8.0", 2102 | "illuminate/collections": "^8.0", 2103 | "illuminate/container": "^8.0", 2104 | "illuminate/contracts": "^8.0", 2105 | "illuminate/macroable": "^8.0", 2106 | "illuminate/support": "^8.0", 2107 | "php": "^7.3" 2108 | }, 2109 | "type": "library", 2110 | "extra": { 2111 | "branch-alias": { 2112 | "dev-master": "8.x-dev" 2113 | } 2114 | }, 2115 | "autoload": { 2116 | "psr-4": { 2117 | "Illuminate\\Events\\": "" 2118 | }, 2119 | "files": [ 2120 | "functions.php" 2121 | ] 2122 | }, 2123 | "notification-url": "https://packagist.org/downloads/", 2124 | "license": [ 2125 | "MIT" 2126 | ], 2127 | "authors": [ 2128 | { 2129 | "name": "Taylor Otwell", 2130 | "email": "taylor@laravel.com" 2131 | } 2132 | ], 2133 | "description": "The Illuminate Events package.", 2134 | "homepage": "https://laravel.com", 2135 | "time": "2020-10-19T14:08:41+00:00" 2136 | }, 2137 | { 2138 | "name": "illuminate/pipeline", 2139 | "version": "v8.11.2", 2140 | "source": { 2141 | "type": "git", 2142 | "url": "https://github.com/illuminate/pipeline.git", 2143 | "reference": "f9987d7644a31177163b4526e99877609fd572b3" 2144 | }, 2145 | "dist": { 2146 | "type": "zip", 2147 | "url": "https://api.github.com/repos/illuminate/pipeline/zipball/f9987d7644a31177163b4526e99877609fd572b3", 2148 | "reference": "f9987d7644a31177163b4526e99877609fd572b3", 2149 | "shasum": "" 2150 | }, 2151 | "require": { 2152 | "illuminate/contracts": "^8.0", 2153 | "illuminate/support": "^8.0", 2154 | "php": "^7.3" 2155 | }, 2156 | "type": "library", 2157 | "extra": { 2158 | "branch-alias": { 2159 | "dev-master": "8.x-dev" 2160 | } 2161 | }, 2162 | "autoload": { 2163 | "psr-4": { 2164 | "Illuminate\\Pipeline\\": "" 2165 | } 2166 | }, 2167 | "notification-url": "https://packagist.org/downloads/", 2168 | "license": [ 2169 | "MIT" 2170 | ], 2171 | "authors": [ 2172 | { 2173 | "name": "Taylor Otwell", 2174 | "email": "taylor@laravel.com" 2175 | } 2176 | ], 2177 | "description": "The Illuminate Pipeline package.", 2178 | "homepage": "https://laravel.com", 2179 | "time": "2020-10-19T14:08:41+00:00" 2180 | }, 2181 | { 2182 | "name": "illuminate/view", 2183 | "version": "v8.11.2", 2184 | "source": { 2185 | "type": "git", 2186 | "url": "https://github.com/illuminate/view.git", 2187 | "reference": "85ad555d633cc14d12f0e110e13064fba38d60fc" 2188 | }, 2189 | "dist": { 2190 | "type": "zip", 2191 | "url": "https://api.github.com/repos/illuminate/view/zipball/85ad555d633cc14d12f0e110e13064fba38d60fc", 2192 | "reference": "85ad555d633cc14d12f0e110e13064fba38d60fc", 2193 | "shasum": "" 2194 | }, 2195 | "require": { 2196 | "ext-json": "*", 2197 | "illuminate/collections": "^8.0", 2198 | "illuminate/container": "^8.0", 2199 | "illuminate/contracts": "^8.0", 2200 | "illuminate/events": "^8.0", 2201 | "illuminate/filesystem": "^8.0", 2202 | "illuminate/macroable": "^8.0", 2203 | "illuminate/support": "^8.0", 2204 | "php": "^7.3" 2205 | }, 2206 | "type": "library", 2207 | "extra": { 2208 | "branch-alias": { 2209 | "dev-master": "8.x-dev" 2210 | } 2211 | }, 2212 | "autoload": { 2213 | "psr-4": { 2214 | "Illuminate\\View\\": "" 2215 | } 2216 | }, 2217 | "notification-url": "https://packagist.org/downloads/", 2218 | "license": [ 2219 | "MIT" 2220 | ], 2221 | "authors": [ 2222 | { 2223 | "name": "Taylor Otwell", 2224 | "email": "taylor@laravel.com" 2225 | } 2226 | ], 2227 | "description": "The Illuminate View package.", 2228 | "homepage": "https://laravel.com", 2229 | "time": "2020-10-19T14:08:41+00:00" 2230 | }, 2231 | { 2232 | "name": "paragonie/random_compat", 2233 | "version": "v9.99.100", 2234 | "source": { 2235 | "type": "git", 2236 | "url": "https://github.com/paragonie/random_compat.git", 2237 | "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a" 2238 | }, 2239 | "dist": { 2240 | "type": "zip", 2241 | "url": "https://api.github.com/repos/paragonie/random_compat/zipball/996434e5492cb4c3edcb9168db6fbb1359ef965a", 2242 | "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a", 2243 | "shasum": "" 2244 | }, 2245 | "require": { 2246 | "php": ">= 7" 2247 | }, 2248 | "require-dev": { 2249 | "phpunit/phpunit": "4.*|5.*", 2250 | "vimeo/psalm": "^1" 2251 | }, 2252 | "suggest": { 2253 | "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." 2254 | }, 2255 | "type": "library", 2256 | "notification-url": "https://packagist.org/downloads/", 2257 | "license": [ 2258 | "MIT" 2259 | ], 2260 | "authors": [ 2261 | { 2262 | "name": "Paragon Initiative Enterprises", 2263 | "email": "security@paragonie.com", 2264 | "homepage": "https://paragonie.com" 2265 | } 2266 | ], 2267 | "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", 2268 | "keywords": [ 2269 | "csprng", 2270 | "polyfill", 2271 | "pseudorandom", 2272 | "random" 2273 | ], 2274 | "time": "2020-10-15T08:29:30+00:00" 2275 | }, 2276 | { 2277 | "name": "psr/http-message", 2278 | "version": "1.0.1", 2279 | "source": { 2280 | "type": "git", 2281 | "url": "https://github.com/php-fig/http-message.git", 2282 | "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" 2283 | }, 2284 | "dist": { 2285 | "type": "zip", 2286 | "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", 2287 | "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", 2288 | "shasum": "" 2289 | }, 2290 | "require": { 2291 | "php": ">=5.3.0" 2292 | }, 2293 | "type": "library", 2294 | "extra": { 2295 | "branch-alias": { 2296 | "dev-master": "1.0.x-dev" 2297 | } 2298 | }, 2299 | "autoload": { 2300 | "psr-4": { 2301 | "Psr\\Http\\Message\\": "src/" 2302 | } 2303 | }, 2304 | "notification-url": "https://packagist.org/downloads/", 2305 | "license": [ 2306 | "MIT" 2307 | ], 2308 | "authors": [ 2309 | { 2310 | "name": "PHP-FIG", 2311 | "homepage": "http://www.php-fig.org/" 2312 | } 2313 | ], 2314 | "description": "Common interface for HTTP messages", 2315 | "homepage": "https://github.com/php-fig/http-message", 2316 | "keywords": [ 2317 | "http", 2318 | "http-message", 2319 | "psr", 2320 | "psr-7", 2321 | "request", 2322 | "response" 2323 | ], 2324 | "time": "2016-08-06T14:39:51+00:00" 2325 | }, 2326 | { 2327 | "name": "ralouphie/getallheaders", 2328 | "version": "3.0.3", 2329 | "source": { 2330 | "type": "git", 2331 | "url": "https://github.com/ralouphie/getallheaders.git", 2332 | "reference": "120b605dfeb996808c31b6477290a714d356e822" 2333 | }, 2334 | "dist": { 2335 | "type": "zip", 2336 | "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", 2337 | "reference": "120b605dfeb996808c31b6477290a714d356e822", 2338 | "shasum": "" 2339 | }, 2340 | "require": { 2341 | "php": ">=5.6" 2342 | }, 2343 | "require-dev": { 2344 | "php-coveralls/php-coveralls": "^2.1", 2345 | "phpunit/phpunit": "^5 || ^6.5" 2346 | }, 2347 | "type": "library", 2348 | "autoload": { 2349 | "files": [ 2350 | "src/getallheaders.php" 2351 | ] 2352 | }, 2353 | "notification-url": "https://packagist.org/downloads/", 2354 | "license": [ 2355 | "MIT" 2356 | ], 2357 | "authors": [ 2358 | { 2359 | "name": "Ralph Khattar", 2360 | "email": "ralph.khattar@gmail.com" 2361 | } 2362 | ], 2363 | "description": "A polyfill for getallheaders.", 2364 | "time": "2019-03-08T08:55:37+00:00" 2365 | }, 2366 | { 2367 | "name": "symfony/polyfill-intl-idn", 2368 | "version": "v1.19.0", 2369 | "source": { 2370 | "type": "git", 2371 | "url": "https://github.com/symfony/polyfill-intl-idn.git", 2372 | "reference": "4ad5115c0f5d5172a9fe8147675ec6de266d8826" 2373 | }, 2374 | "dist": { 2375 | "type": "zip", 2376 | "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/4ad5115c0f5d5172a9fe8147675ec6de266d8826", 2377 | "reference": "4ad5115c0f5d5172a9fe8147675ec6de266d8826", 2378 | "shasum": "" 2379 | }, 2380 | "require": { 2381 | "php": ">=5.3.3", 2382 | "symfony/polyfill-intl-normalizer": "^1.10", 2383 | "symfony/polyfill-php70": "^1.10", 2384 | "symfony/polyfill-php72": "^1.10" 2385 | }, 2386 | "suggest": { 2387 | "ext-intl": "For best performance" 2388 | }, 2389 | "type": "library", 2390 | "extra": { 2391 | "branch-alias": { 2392 | "dev-main": "1.19-dev" 2393 | }, 2394 | "thanks": { 2395 | "name": "symfony/polyfill", 2396 | "url": "https://github.com/symfony/polyfill" 2397 | } 2398 | }, 2399 | "autoload": { 2400 | "psr-4": { 2401 | "Symfony\\Polyfill\\Intl\\Idn\\": "" 2402 | }, 2403 | "files": [ 2404 | "bootstrap.php" 2405 | ] 2406 | }, 2407 | "notification-url": "https://packagist.org/downloads/", 2408 | "license": [ 2409 | "MIT" 2410 | ], 2411 | "authors": [ 2412 | { 2413 | "name": "Laurent Bassin", 2414 | "email": "laurent@bassin.info" 2415 | }, 2416 | { 2417 | "name": "Trevor Rowbotham", 2418 | "email": "trevor.rowbotham@pm.me" 2419 | }, 2420 | { 2421 | "name": "Symfony Community", 2422 | "homepage": "https://symfony.com/contributors" 2423 | } 2424 | ], 2425 | "description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions", 2426 | "homepage": "https://symfony.com", 2427 | "keywords": [ 2428 | "compatibility", 2429 | "idn", 2430 | "intl", 2431 | "polyfill", 2432 | "portable", 2433 | "shim" 2434 | ], 2435 | "funding": [ 2436 | { 2437 | "url": "https://symfony.com/sponsor", 2438 | "type": "custom" 2439 | }, 2440 | { 2441 | "url": "https://github.com/fabpot", 2442 | "type": "github" 2443 | }, 2444 | { 2445 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 2446 | "type": "tidelift" 2447 | } 2448 | ], 2449 | "time": "2020-10-21T09:57:48+00:00" 2450 | }, 2451 | { 2452 | "name": "symfony/polyfill-php70", 2453 | "version": "v1.19.0", 2454 | "source": { 2455 | "type": "git", 2456 | "url": "https://github.com/symfony/polyfill-php70.git", 2457 | "reference": "3fe414077251a81a1b15b1c709faf5c2fbae3d4e" 2458 | }, 2459 | "dist": { 2460 | "type": "zip", 2461 | "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/3fe414077251a81a1b15b1c709faf5c2fbae3d4e", 2462 | "reference": "3fe414077251a81a1b15b1c709faf5c2fbae3d4e", 2463 | "shasum": "" 2464 | }, 2465 | "require": { 2466 | "paragonie/random_compat": "~1.0|~2.0|~9.99", 2467 | "php": ">=5.3.3" 2468 | }, 2469 | "type": "library", 2470 | "extra": { 2471 | "branch-alias": { 2472 | "dev-main": "1.19-dev" 2473 | }, 2474 | "thanks": { 2475 | "name": "symfony/polyfill", 2476 | "url": "https://github.com/symfony/polyfill" 2477 | } 2478 | }, 2479 | "autoload": { 2480 | "psr-4": { 2481 | "Symfony\\Polyfill\\Php70\\": "" 2482 | }, 2483 | "files": [ 2484 | "bootstrap.php" 2485 | ], 2486 | "classmap": [ 2487 | "Resources/stubs" 2488 | ] 2489 | }, 2490 | "notification-url": "https://packagist.org/downloads/", 2491 | "license": [ 2492 | "MIT" 2493 | ], 2494 | "authors": [ 2495 | { 2496 | "name": "Nicolas Grekas", 2497 | "email": "p@tchwork.com" 2498 | }, 2499 | { 2500 | "name": "Symfony Community", 2501 | "homepage": "https://symfony.com/contributors" 2502 | } 2503 | ], 2504 | "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions", 2505 | "homepage": "https://symfony.com", 2506 | "keywords": [ 2507 | "compatibility", 2508 | "polyfill", 2509 | "portable", 2510 | "shim" 2511 | ], 2512 | "funding": [ 2513 | { 2514 | "url": "https://symfony.com/sponsor", 2515 | "type": "custom" 2516 | }, 2517 | { 2518 | "url": "https://github.com/fabpot", 2519 | "type": "github" 2520 | }, 2521 | { 2522 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 2523 | "type": "tidelift" 2524 | } 2525 | ], 2526 | "time": "2020-10-23T09:01:57+00:00" 2527 | }, 2528 | { 2529 | "name": "symfony/polyfill-php72", 2530 | "version": "v1.19.0", 2531 | "source": { 2532 | "type": "git", 2533 | "url": "https://github.com/symfony/polyfill-php72.git", 2534 | "reference": "beecef6b463b06954638f02378f52496cb84bacc" 2535 | }, 2536 | "dist": { 2537 | "type": "zip", 2538 | "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/beecef6b463b06954638f02378f52496cb84bacc", 2539 | "reference": "beecef6b463b06954638f02378f52496cb84bacc", 2540 | "shasum": "" 2541 | }, 2542 | "require": { 2543 | "php": ">=5.3.3" 2544 | }, 2545 | "type": "library", 2546 | "extra": { 2547 | "branch-alias": { 2548 | "dev-main": "1.19-dev" 2549 | }, 2550 | "thanks": { 2551 | "name": "symfony/polyfill", 2552 | "url": "https://github.com/symfony/polyfill" 2553 | } 2554 | }, 2555 | "autoload": { 2556 | "psr-4": { 2557 | "Symfony\\Polyfill\\Php72\\": "" 2558 | }, 2559 | "files": [ 2560 | "bootstrap.php" 2561 | ] 2562 | }, 2563 | "notification-url": "https://packagist.org/downloads/", 2564 | "license": [ 2565 | "MIT" 2566 | ], 2567 | "authors": [ 2568 | { 2569 | "name": "Nicolas Grekas", 2570 | "email": "p@tchwork.com" 2571 | }, 2572 | { 2573 | "name": "Symfony Community", 2574 | "homepage": "https://symfony.com/contributors" 2575 | } 2576 | ], 2577 | "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", 2578 | "homepage": "https://symfony.com", 2579 | "keywords": [ 2580 | "compatibility", 2581 | "polyfill", 2582 | "portable", 2583 | "shim" 2584 | ], 2585 | "funding": [ 2586 | { 2587 | "url": "https://symfony.com/sponsor", 2588 | "type": "custom" 2589 | }, 2590 | { 2591 | "url": "https://github.com/fabpot", 2592 | "type": "github" 2593 | }, 2594 | { 2595 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 2596 | "type": "tidelift" 2597 | } 2598 | ], 2599 | "time": "2020-10-23T09:01:57+00:00" 2600 | } 2601 | ], 2602 | "aliases": [], 2603 | "minimum-stability": "stable", 2604 | "stability-flags": [], 2605 | "prefer-stable": false, 2606 | "prefer-lowest": false, 2607 | "platform": { 2608 | "php": ">=5.4.0" 2609 | }, 2610 | "platform-dev": [], 2611 | "plugin-api-version": "1.1.0" 2612 | } 2613 | -------------------------------------------------------------------------------- /config/ilkbyte.php: -------------------------------------------------------------------------------- 1 | env('ILKBYTE_ACCESSKEY'), 4 | 'secret' => env('ILKBYTE_SECRETKEY') 5 | ]; -------------------------------------------------------------------------------- /src/Api/Account.php: -------------------------------------------------------------------------------- 1 | request('/account'); 15 | } 16 | 17 | /** 18 | * Get your account's users. 19 | * 20 | * @return array|mixed 21 | */ 22 | public function users() 23 | { 24 | return $this->request('/account/users'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/Api/Base.php: -------------------------------------------------------------------------------- 1 | $this->url(), 12 | 'query' => [ 13 | 'access' => config('ilkbyte.access'), 14 | 'secret' => config('ilkbyte.secret'), 15 | ], 16 | ]); 17 | } 18 | 19 | public function url() 20 | { 21 | return 'https://api.ilkbyte.com/'; 22 | } 23 | 24 | public function request($url = null, $query = [], $method = 'GET') 25 | { 26 | $fullUrl = $this->url().$url; 27 | 28 | try { 29 | $response = $this->client()->request($method, $fullUrl, [ 30 | 'query' => array_merge($this->client()->getConfig('query'), $query), 31 | ]); 32 | 33 | return json_decode((string) $response->getBody()); 34 | } catch (\Exception $e) { 35 | return [ 36 | 'status' => false, 37 | 'response' => null, 38 | 'message' => $e->getMessage() 39 | ]; 40 | } 41 | 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/Api/Domain.php: -------------------------------------------------------------------------------- 1 | domain = $arguments[0]; 17 | } 18 | } 19 | 20 | /** 21 | * Get all domains. 22 | * 23 | * @return array|mixed 24 | */ 25 | public function all() 26 | { 27 | return $this->request('/domain/list'); 28 | } 29 | 30 | /** 31 | * Create a new domain. 32 | * 33 | * @param $query 34 | * @return array|mixed 35 | */ 36 | public function create($query) 37 | { 38 | return $this->request('/domain/create', $query); 39 | } 40 | 41 | /** 42 | * Get domain details. 43 | * 44 | * @return array|mixed 45 | */ 46 | public function show() 47 | { 48 | return $this->request("/domain/manage/$this->domain/show"); 49 | } 50 | 51 | /** 52 | * Add a new record. 53 | * 54 | * @param $query 55 | * @return array|mixed 56 | */ 57 | public function add($query) 58 | { 59 | return $this->request("/domain/manage/$this->domain/add", $query); 60 | } 61 | 62 | /** 63 | * Update an existing record. 64 | * 65 | * @param $query 66 | * @return array|mixed 67 | */ 68 | public function update($query) 69 | { 70 | return $this->request("/domain/manage/$this->domain/update", $query); 71 | } 72 | 73 | /** 74 | * Delete domain. 75 | * 76 | * @return array|mixed 77 | */ 78 | public function delete($query) 79 | { 80 | return $this->request("/domain/manage/$this->domain/delete", $query); 81 | } 82 | 83 | /** 84 | * @return array|mixed 85 | */ 86 | public function push() 87 | { 88 | return $this->request("/domain/manage/$this->domain/push"); 89 | } 90 | } 91 | -------------------------------------------------------------------------------- /src/Api/Server.php: -------------------------------------------------------------------------------- 1 | server = $arguments[0]; 17 | } 18 | } 19 | 20 | /** 21 | * Get all servers. 22 | * 23 | * @return array|mixed 24 | */ 25 | public function all() 26 | { 27 | return $this->request('/server/list/all'); 28 | } 29 | 30 | /** 31 | * Get only active servers. 32 | * 33 | * @return array|mixed 34 | */ 35 | public function active() 36 | { 37 | return $this->request('/server/list'); 38 | } 39 | 40 | /** 41 | * Create a new server. 42 | * 43 | * @param $query 44 | * @return array|mixed 45 | */ 46 | public function create($query) 47 | { 48 | return $this->request('/server/create/config', $query); 49 | } 50 | 51 | /** 52 | * Get server configs you can choose. 53 | * 54 | * @return array|mixed 55 | */ 56 | public function getConfig() 57 | { 58 | return $this->request('/server/create'); 59 | } 60 | 61 | /** 62 | * Get server details. 63 | * 64 | * @return array|mixed 65 | */ 66 | public function show() 67 | { 68 | return $this->request("/server/manage/$this->server/show"); 69 | } 70 | 71 | /** 72 | * Get monitoring data. 73 | * 74 | * @return array|mixed 75 | */ 76 | public function monitor() 77 | { 78 | return $this->request("/server/manage/$this->server/monitor"); 79 | } 80 | 81 | /** 82 | * Server power settings. 83 | * 84 | * @param $set 85 | * @return array|mixed 86 | */ 87 | public function power($set) 88 | { 89 | $query = [ 90 | 'set' => $set, 91 | ]; 92 | 93 | return $this->request("/server/manage/$this->server/power", $query); 94 | } 95 | 96 | /** 97 | * Get all ips from server. 98 | * 99 | * @return array|mixed 100 | */ 101 | public function ip() 102 | { 103 | return $this->request("/server/manage/$this->server/ip/list"); 104 | } 105 | 106 | /** 107 | * Get ip logs. 108 | * 109 | * @return array|mixed 110 | */ 111 | public function ipLogs() 112 | { 113 | return $this->request("/server/manage/$this->server/ip/logs"); 114 | } 115 | 116 | /** 117 | * Add a new rdns record. 118 | * 119 | * @param $ip 120 | * @param $rdns 121 | * @return array|mixed 122 | */ 123 | public function ipRdns($ip, $rdns) 124 | { 125 | $query = [ 126 | 'ip' => $ip, 127 | 'rdns' => $rdns, 128 | ]; 129 | 130 | return $this->request("/server/manage/$this->server/ip/rdns", $query); 131 | } 132 | 133 | /** 134 | * Get all snapshots. 135 | * 136 | * @return array|mixed 137 | */ 138 | public function snapshotList() 139 | { 140 | return $this->request("/server/manage/$this->server/snapshot"); 141 | } 142 | 143 | /** 144 | * Create a new snapshot. 145 | * 146 | * @param string $snapshotName 147 | * @return array|mixed 148 | */ 149 | public function snapshotCreate($snapshotName) 150 | { 151 | $query = [ 152 | 'name' => $snapshotName, 153 | ]; 154 | 155 | return $this->request("/server/manage/$this->server/snapshot/create", $query); 156 | } 157 | 158 | /** 159 | * @param string $snapshotName 160 | * @return array|mixed 161 | */ 162 | public function snapshotRevert($snapshotName) 163 | { 164 | $query = [ 165 | 'name' => $snapshotName, 166 | ]; 167 | 168 | return $this->request("/server/manage/$this->server/snapshot/revert", $query); 169 | } 170 | 171 | /** 172 | * Recreate your snapshots. 173 | * 174 | * @param string $snapshotName 175 | * @return array|mixed 176 | */ 177 | public function snapshotUpdate($snapshotName) 178 | { 179 | $query = [ 180 | 'name' => $snapshotName, 181 | ]; 182 | 183 | return $this->request("/server/manage/$this->server/snapshot/update", $query); 184 | } 185 | 186 | /** 187 | * Delete snapshot. 188 | * 189 | * @param string $snapshotName 190 | * @return array|mixed 191 | */ 192 | public function snapshotDelete($snapshotName) 193 | { 194 | $query = [ 195 | 'name' => $snapshotName, 196 | ]; 197 | 198 | return $this->request("/server/manage/$this->server/snapshot/delete", $query); 199 | } 200 | 201 | /** 202 | * Add cron to your snapshot. 203 | * 204 | * @param array $query 205 | * @return array|mixed 206 | */ 207 | public function snapshotAddCron($snapshotName, $day, $hour, $minute) 208 | { 209 | $query = [ 210 | 'name' => $snapshotName, 211 | 'day' => $day, 212 | 'hour' => $hour, 213 | 'min' => $minute, 214 | ]; 215 | 216 | return $this->request("/server/manage/$this->server/snapshot/cron/add", $query); 217 | } 218 | 219 | /** 220 | * Delete cron. 221 | * 222 | * @param string $query 223 | * @return array|mixed 224 | */ 225 | public function snapshotDeleteCron($snapshotName) 226 | { 227 | $query = [ 228 | 'name' => $snapshotName, 229 | ]; 230 | 231 | return $this->request("/server/manage/$this->server/snapshot/cron/delete", $query); 232 | } 233 | 234 | /** 235 | * Get backup list. 236 | * 237 | * @return array|mixed 238 | */ 239 | public function backupList() 240 | { 241 | return $this->request("/server/manage/$this->server/backup"); 242 | } 243 | 244 | /** 245 | * Restore your backup. 246 | * 247 | * @param string $backupName 248 | * @return array|mixed 249 | */ 250 | public function backupRestore($backupName) 251 | { 252 | $query = [ 253 | 'backup_name' => $backupName, 254 | ]; 255 | 256 | return $this->request("/server/manage/$this->server/backup/restore", $query); 257 | } 258 | } 259 | -------------------------------------------------------------------------------- /src/Facades/Ilkbyte.php: -------------------------------------------------------------------------------- 1 | registerServices(); 23 | } 24 | 25 | /** 26 | * Get the services provided by the provider. 27 | * 28 | * @return array 29 | */ 30 | public function provides() 31 | { 32 | return ['ilkbyte']; 33 | } 34 | 35 | public function boot() 36 | { 37 | $this->handleConfiguration(); 38 | } 39 | 40 | public function handleConfiguration() 41 | { 42 | $configPath = __DIR__.'/../config/ilkbyte.php'; 43 | 44 | $this->publishes([$configPath => config_path('ilkbyte.php')], 'Ilkbyte'); 45 | // Merge config files... 46 | $this->mergeConfigFrom($configPath, 'ilkbyte'); 47 | } 48 | /** 49 | * Register the package services. 50 | * 51 | * @return void 52 | */ 53 | protected function registerServices() 54 | { 55 | $this->app->singleton('ilkbyte', function ($app) { 56 | return new Ilkbyte(); 57 | }); 58 | } 59 | } --------------------------------------------------------------------------------