From afd9118d1e779f8c22268a2ba9025de3e5e7d948 Mon Sep 17 00:00:00 2001 From: Torch2196 Date: Tue, 13 Jan 2026 20:57:58 -0600 Subject: [PATCH] first commit --- .editorconfig | 15 + .env.example | 44 + .gitattributes | 5 + .gitignore | 12 + .rnd | Bin 0 -> 1024 bytes .styleci.yml | 13 + app.yaml | 64 + app/Console/Kernel.php | 42 + app/Exceptions/Handler.php | 51 + app/Http/Controllers/Auth/AuthController.php | 219 + .../Auth/ForgotPasswordController.php | 51 + app/Http/Controllers/Auth/LoginController.php | 71 + .../Controllers/Auth/RegisterController.php | 77 + .../Auth/ResetPasswordController.php | 39 + .../Auth/VerificationController.php | 41 + app/Http/Controllers/BanksController.php | 162 + app/Http/Controllers/CategoriesController.php | 161 + app/Http/Controllers/ContractController.php | 994 ++ app/Http/Controllers/Controller.php | 13 + app/Http/Controllers/CouponController.php | 170 + app/Http/Controllers/HomeController.php | 28 + .../IChambaParameterController.php | 179 + app/Http/Controllers/NoHomeController.php | 254 + app/Http/Controllers/PaymentController.php | 381 + .../Controllers/PostulationController.php | 370 + .../Controllers/ReportCommentController.php | 112 + app/Http/Controllers/ReportController.php | 183 + app/Http/Controllers/StatusController.php | 151 + app/Http/Controllers/SupplierController.php | 1273 ++ app/Http/Controllers/UserController.php | 147 + app/Http/Kernel.php | 84 + app/Http/Middleware/AppEngineCron.php | 24 + app/Http/Middleware/Authenticate.php | 21 + .../Middleware/CheckForMaintenanceMode.php | 17 + app/Http/Middleware/Cors.php | 27 + app/Http/Middleware/EncryptCookies.php | 17 + .../Middleware/RedirectIfAuthenticated.php | 26 + app/Http/Middleware/RoleCheck.php | 26 + app/Http/Middleware/SuperAdmin.php | 24 + app/Http/Middleware/TrimStrings.php | 18 + app/Http/Middleware/TrustProxies.php | 23 + app/Http/Middleware/VerifyCsrfToken.php | 24 + app/Models/Banks.php | 22 + app/Models/Cards.php | 18 + app/Models/Categories.php | 40 + app/Models/Coupon.php | 29 + app/Models/CurrentContracts.php | 63 + app/Models/FinishedContracts.php | 82 + app/Models/LinkedSocialAccount.php | 18 + app/Models/Payments.php | 34 + app/Models/Postulations.php | 53 + app/Models/Status.php | 32 + app/Models/Suppliers.php | 79 + app/NoHome.php | 29 + app/Notifications/PasswordReset.php | 56 + app/Providers/AppServiceProvider.php | 41 + app/Providers/AuthServiceProvider.php | 32 + app/Providers/BroadcastServiceProvider.php | 21 + app/Providers/EventServiceProvider.php | 34 + app/Providers/RouteServiceProvider.php | 73 + app/Report.php | 34 + app/ReportComment.php | 29 + app/Role.php | 19 + app/Services/SocialAccountsService.php | 48 + app/Services/SocialUserResolver.php | 33 + app/User.php | 94 + app/Verify_accounts.php | 18 + app/iChambaParameter.php | 21 + artisan | 53 + bootstrap/app.php | 55 + bootstrap/cache/.gitignore | 2 + composer.json | 81 + composer.lock | 8253 ++++++++++++ config/app.php | 248 + config/auth.php | 102 + config/broadcasting.php | 59 + config/cache.php | 103 + config/database.php | 147 + config/debug-server.php | 8 + config/filesystems.php | 78 + config/googlerecaptchav3.php | 166 + config/hashing.php | 52 + config/logging.php | 94 + config/mail.php | 136 + config/onesignal.php | 23 + config/queue.php | 87 + config/services.php | 66 + config/session.php | 199 + config/view.php | 36 + cron.yaml | 9 + database/.gitignore | 2 + database/factories/UserFactory.php | 27 + ...64933_create_i_chamba_parameters_table.php | 34 + .../2014_10_11_000000_create_roles_table.php | 31 + .../2014_10_12_000000_create_users_table.php | 44 + ...12_100000_create_password_resets_table.php | 32 + ...04_create_linked_social_accounts_table.php | 34 + ...19_07_30_192317_create_verify_accounts.php | 35 + .../2019_08_30_174320_create_cards_table.php | 34 + .../2019_08_30_174444_create_banks_table.php | 32 + ...19_08_30_175029_create_suppliers_table.php | 54 + ...9_08_30_185123_create_categories_table.php | 32 + .../2019_08_30_185156_create_status_table.php | 32 + ...08_30_185219_create_postulations_table.php | 45 + ...5221_create_postulation_supplier_table.php | 35 + ...5936_create_categories_suppliers_table.php | 34 + ..._155229_create_finishedcontracts_table.php | 58 + ...8_155228_create_currentcontracts_table.php | 55 + ...019_12_28_155312_create_payments_table.php | 38 + ...2020_09_12_210712_create_reports_table.php | 36 + ...12_211555_create_report_comments_table.php | 36 + ...020_09_12_212847_create_no_homes_table.php | 37 + ..._10_235536_add_references_to_suppliers.php | 34 + ...2022_03_24_132526_create_coupons_table.php | 60 + database/seeds/DatabaseSeeder.php | 115 + ichamba-1562349005909-00951194d3fa.json | 12 + package.json | 25 + phpunit.xml | 33 + public/.htaccess | 21 + public/css/app.css | 8538 ++++++++++++ public/css/bootstrap-tagsinput.css | 73 + public/css/sidebar.css | 10876 ++++++++++++++++ public/favicon.ico | Bin 0 -> 76150 bytes ...he_App_Store_Badge_ESMX_RGB_blk_100217.svg | 47 + public/img/background_ic.jpg | Bin 0 -> 648478 bytes public/img/google-play-badge.png | Bin 0 -> 14969 bytes public/img/ichamba.svg | 239 + public/img/jobhero.svg | 267 + public/img/users/banner.png | Bin 0 -> 87455 bytes public/img/users/default.png | Bin 0 -> 15076 bytes public/index.php | 60 + public/js/ajaxcrud.js | 105 + public/js/app.js | 1 + public/js/autofill.js | 89 + public/js/bootstrap-tagsinput.min.js | 7 + public/js/jquery.geocomplete.js | 722 + public/robots.txt | 2 + public/vendor/maps/css/index.css | 1 + public/vendor/maps/js/index.js | 2 + public/vendor/maps/mix-manifest.json | 4 + resources/js/app.js | 32 + resources/js/bootstrap.js | 55 + resources/js/components/ExampleComponent.vue | 23 + resources/lang/en/auth.php | 19 + resources/lang/en/pagination.php | 19 + resources/lang/en/passwords.php | 22 + resources/lang/en/validation.php | 150 + resources/sass/_variables.scss | 19 + resources/sass/app.scss | 8 + resources/views/auth/login.blade.php | 62 + .../views/auth/passwords/email.blade.php | 47 + .../views/auth/passwords/reset.blade.php | 65 + resources/views/auth/register.blade.php | 95 + resources/views/auth/verify.blade.php | 24 + resources/views/banks/ajax.blade.php | 16 + resources/views/banks/form.blade.php | 47 + resources/views/banks/index.blade.php | 83 + resources/views/cards/ajax.blade.php | 16 + resources/views/cards/form.blade.php | 47 + resources/views/cards/index.blade.php | 78 + resources/views/categories/ajax.blade.php | 16 + resources/views/categories/form.blade.php | 47 + resources/views/categories/index.blade.php | 83 + resources/views/coupons/ajax.blade.php | 16 + resources/views/coupons/form.blade.php | 61 + resources/views/coupons/index.blade.php | 91 + .../views/currentcontracts/ajax.blade.php | 16 + .../views/currentcontracts/index.blade.php | 123 + .../views/currentcontracts/map.blade.php | 64 + .../views/finishedcontracts/ajax.blade.php | 16 + .../views/finishedcontracts/index.blade.php | 131 + .../views/finishedcontracts/map.blade.php | 64 + resources/views/home.blade.php | 69 + resources/views/layouts/app.blade.php | 90 + resources/views/parameters/ajax.blade.php | 16 + resources/views/parameters/form.blade.php | 54 + resources/views/parameters/index.blade.php | 87 + resources/views/payments/ajax.blade.php | 16 + resources/views/payments/index.blade.php | 103 + resources/views/postulations/ajax.blade.php | 16 + resources/views/postulations/index.blade.php | 107 + resources/views/postulations/map.blade.php | 62 + resources/views/reports/ajax.blade.php | 16 + resources/views/reports/comments.blade.php | 119 + resources/views/reports/index.blade.php | 86 + resources/views/reports/veredict.blade.php | 40 + resources/views/sidebar.blade.php | 19 + resources/views/status/ajax.blade.php | 16 + resources/views/status/form.blade.php | 40 + resources/views/status/index.blade.php | 81 + resources/views/supplier/ajax.blade.php | 16 + resources/views/supplier/form.blade.php | 182 + resources/views/supplier/index.blade.php | 154 + resources/views/users/ajax.blade.php | 16 + resources/views/users/form.blade.php | 72 + resources/views/users/index.blade.php | 115 + .../views/vendor/mail/html/button.blade.php | 19 + .../views/vendor/mail/html/footer.blade.php | 11 + .../views/vendor/mail/html/header.blade.php | 7 + .../views/vendor/mail/html/layout.blade.php | 54 + .../views/vendor/mail/html/message.blade.php | 27 + .../views/vendor/mail/html/panel.blade.php | 13 + .../vendor/mail/html/promotion.blade.php | 7 + .../mail/html/promotion/button.blade.php | 13 + .../views/vendor/mail/html/subcopy.blade.php | 7 + .../views/vendor/mail/html/table.blade.php | 3 + .../views/vendor/mail/html/themes/default.css | 300 + .../views/vendor/mail/text/button.blade.php | 1 + .../views/vendor/mail/text/footer.blade.php | 1 + .../views/vendor/mail/text/header.blade.php | 1 + .../views/vendor/mail/text/layout.blade.php | 9 + .../views/vendor/mail/text/message.blade.php | 27 + .../views/vendor/mail/text/panel.blade.php | 1 + .../vendor/mail/text/promotion.blade.php | 1 + .../mail/text/promotion/button.blade.php | 1 + .../views/vendor/mail/text/subcopy.blade.php | 1 + .../views/vendor/mail/text/table.blade.php | 1 + .../vendor/notifications/email.blade.php | 63 + resources/views/welcome.blade.php | 99 + routes/api.php | 93 + routes/channels.php | 16 + routes/console.php | 18 + routes/web.php | 140 + server.php | 21 + storage/app/.gitignore | 3 + storage/app/public/.gitignore | 2 + storage/framework/.gitignore | 8 + storage/framework/cache/.gitignore | 3 + storage/framework/cache/data/.gitignore | 2 + storage/framework/sessions/.gitignore | 2 + storage/framework/testing/.gitignore | 2 + storage/framework/views/.gitignore | 2 + storage/logs/.gitignore | 2 + tests/CreatesApplication.php | 22 + tests/Feature/ExampleTest.php | 21 + tests/TestCase.php | 10 + tests/Unit/ExampleTest.php | 19 + webpack.mix.js | 15 + yarn.lock | 5794 ++++++++ 239 files changed, 49001 insertions(+) create mode 100644 .editorconfig create mode 100644 .env.example create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .rnd create mode 100644 .styleci.yml create mode 100644 app.yaml create mode 100644 app/Console/Kernel.php create mode 100644 app/Exceptions/Handler.php create mode 100644 app/Http/Controllers/Auth/AuthController.php create mode 100644 app/Http/Controllers/Auth/ForgotPasswordController.php create mode 100644 app/Http/Controllers/Auth/LoginController.php create mode 100644 app/Http/Controllers/Auth/RegisterController.php create mode 100644 app/Http/Controllers/Auth/ResetPasswordController.php create mode 100644 app/Http/Controllers/Auth/VerificationController.php create mode 100644 app/Http/Controllers/BanksController.php create mode 100644 app/Http/Controllers/CategoriesController.php create mode 100644 app/Http/Controllers/ContractController.php create mode 100644 app/Http/Controllers/Controller.php create mode 100644 app/Http/Controllers/CouponController.php create mode 100644 app/Http/Controllers/HomeController.php create mode 100644 app/Http/Controllers/IChambaParameterController.php create mode 100644 app/Http/Controllers/NoHomeController.php create mode 100644 app/Http/Controllers/PaymentController.php create mode 100644 app/Http/Controllers/PostulationController.php create mode 100644 app/Http/Controllers/ReportCommentController.php create mode 100644 app/Http/Controllers/ReportController.php create mode 100644 app/Http/Controllers/StatusController.php create mode 100644 app/Http/Controllers/SupplierController.php create mode 100644 app/Http/Controllers/UserController.php create mode 100644 app/Http/Kernel.php create mode 100644 app/Http/Middleware/AppEngineCron.php create mode 100644 app/Http/Middleware/Authenticate.php create mode 100644 app/Http/Middleware/CheckForMaintenanceMode.php create mode 100644 app/Http/Middleware/Cors.php create mode 100644 app/Http/Middleware/EncryptCookies.php create mode 100644 app/Http/Middleware/RedirectIfAuthenticated.php create mode 100644 app/Http/Middleware/RoleCheck.php create mode 100644 app/Http/Middleware/SuperAdmin.php create mode 100644 app/Http/Middleware/TrimStrings.php create mode 100644 app/Http/Middleware/TrustProxies.php create mode 100644 app/Http/Middleware/VerifyCsrfToken.php create mode 100644 app/Models/Banks.php create mode 100644 app/Models/Cards.php create mode 100644 app/Models/Categories.php create mode 100644 app/Models/Coupon.php create mode 100644 app/Models/CurrentContracts.php create mode 100644 app/Models/FinishedContracts.php create mode 100644 app/Models/LinkedSocialAccount.php create mode 100644 app/Models/Payments.php create mode 100644 app/Models/Postulations.php create mode 100644 app/Models/Status.php create mode 100644 app/Models/Suppliers.php create mode 100644 app/NoHome.php create mode 100644 app/Notifications/PasswordReset.php create mode 100644 app/Providers/AppServiceProvider.php create mode 100644 app/Providers/AuthServiceProvider.php create mode 100644 app/Providers/BroadcastServiceProvider.php create mode 100644 app/Providers/EventServiceProvider.php create mode 100644 app/Providers/RouteServiceProvider.php create mode 100644 app/Report.php create mode 100644 app/ReportComment.php create mode 100644 app/Role.php create mode 100644 app/Services/SocialAccountsService.php create mode 100644 app/Services/SocialUserResolver.php create mode 100644 app/User.php create mode 100644 app/Verify_accounts.php create mode 100644 app/iChambaParameter.php create mode 100644 artisan create mode 100644 bootstrap/app.php create mode 100644 bootstrap/cache/.gitignore create mode 100644 composer.json create mode 100644 composer.lock create mode 100644 config/app.php create mode 100644 config/auth.php create mode 100644 config/broadcasting.php create mode 100644 config/cache.php create mode 100644 config/database.php create mode 100644 config/debug-server.php create mode 100644 config/filesystems.php create mode 100644 config/googlerecaptchav3.php create mode 100644 config/hashing.php create mode 100644 config/logging.php create mode 100644 config/mail.php create mode 100644 config/onesignal.php create mode 100644 config/queue.php create mode 100644 config/services.php create mode 100644 config/session.php create mode 100644 config/view.php create mode 100644 cron.yaml create mode 100644 database/.gitignore create mode 100644 database/factories/UserFactory.php create mode 100644 database/migrations/2013_01_11_164933_create_i_chamba_parameters_table.php create mode 100644 database/migrations/2014_10_11_000000_create_roles_table.php create mode 100644 database/migrations/2014_10_12_000000_create_users_table.php create mode 100644 database/migrations/2014_10_12_100000_create_password_resets_table.php create mode 100644 database/migrations/2019_07_05_143904_create_linked_social_accounts_table.php create mode 100644 database/migrations/2019_07_30_192317_create_verify_accounts.php create mode 100644 database/migrations/2019_08_30_174320_create_cards_table.php create mode 100644 database/migrations/2019_08_30_174444_create_banks_table.php create mode 100644 database/migrations/2019_08_30_175029_create_suppliers_table.php create mode 100644 database/migrations/2019_08_30_185123_create_categories_table.php create mode 100644 database/migrations/2019_08_30_185156_create_status_table.php create mode 100644 database/migrations/2019_08_30_185219_create_postulations_table.php create mode 100644 database/migrations/2019_08_30_185221_create_postulation_supplier_table.php create mode 100644 database/migrations/2019_08_30_185936_create_categories_suppliers_table.php create mode 100644 database/migrations/2019_11_28_155229_create_finishedcontracts_table.php create mode 100644 database/migrations/2019_12_28_155228_create_currentcontracts_table.php create mode 100644 database/migrations/2019_12_28_155312_create_payments_table.php create mode 100644 database/migrations/2020_09_12_210712_create_reports_table.php create mode 100644 database/migrations/2020_09_12_211555_create_report_comments_table.php create mode 100644 database/migrations/2020_09_12_212847_create_no_homes_table.php create mode 100644 database/migrations/2021_03_10_235536_add_references_to_suppliers.php create mode 100644 database/migrations/2022_03_24_132526_create_coupons_table.php create mode 100644 database/seeds/DatabaseSeeder.php create mode 100644 ichamba-1562349005909-00951194d3fa.json create mode 100644 package.json create mode 100644 phpunit.xml create mode 100644 public/.htaccess create mode 100644 public/css/app.css create mode 100644 public/css/bootstrap-tagsinput.css create mode 100644 public/css/sidebar.css create mode 100644 public/favicon.ico create mode 100644 public/img/Download_on_the_App_Store_Badge_ESMX_RGB_blk_100217.svg create mode 100644 public/img/background_ic.jpg create mode 100644 public/img/google-play-badge.png create mode 100644 public/img/ichamba.svg create mode 100644 public/img/jobhero.svg create mode 100644 public/img/users/banner.png create mode 100644 public/img/users/default.png create mode 100644 public/index.php create mode 100644 public/js/ajaxcrud.js create mode 100644 public/js/app.js create mode 100644 public/js/autofill.js create mode 100644 public/js/bootstrap-tagsinput.min.js create mode 100644 public/js/jquery.geocomplete.js create mode 100644 public/robots.txt create mode 100644 public/vendor/maps/css/index.css create mode 100644 public/vendor/maps/js/index.js create mode 100644 public/vendor/maps/mix-manifest.json create mode 100644 resources/js/app.js create mode 100644 resources/js/bootstrap.js create mode 100644 resources/js/components/ExampleComponent.vue create mode 100644 resources/lang/en/auth.php create mode 100644 resources/lang/en/pagination.php create mode 100644 resources/lang/en/passwords.php create mode 100644 resources/lang/en/validation.php create mode 100644 resources/sass/_variables.scss create mode 100644 resources/sass/app.scss create mode 100644 resources/views/auth/login.blade.php create mode 100644 resources/views/auth/passwords/email.blade.php create mode 100644 resources/views/auth/passwords/reset.blade.php create mode 100644 resources/views/auth/register.blade.php create mode 100644 resources/views/auth/verify.blade.php create mode 100644 resources/views/banks/ajax.blade.php create mode 100644 resources/views/banks/form.blade.php create mode 100644 resources/views/banks/index.blade.php create mode 100644 resources/views/cards/ajax.blade.php create mode 100644 resources/views/cards/form.blade.php create mode 100644 resources/views/cards/index.blade.php create mode 100644 resources/views/categories/ajax.blade.php create mode 100644 resources/views/categories/form.blade.php create mode 100644 resources/views/categories/index.blade.php create mode 100644 resources/views/coupons/ajax.blade.php create mode 100644 resources/views/coupons/form.blade.php create mode 100644 resources/views/coupons/index.blade.php create mode 100644 resources/views/currentcontracts/ajax.blade.php create mode 100644 resources/views/currentcontracts/index.blade.php create mode 100644 resources/views/currentcontracts/map.blade.php create mode 100644 resources/views/finishedcontracts/ajax.blade.php create mode 100644 resources/views/finishedcontracts/index.blade.php create mode 100644 resources/views/finishedcontracts/map.blade.php create mode 100644 resources/views/home.blade.php create mode 100644 resources/views/layouts/app.blade.php create mode 100644 resources/views/parameters/ajax.blade.php create mode 100644 resources/views/parameters/form.blade.php create mode 100644 resources/views/parameters/index.blade.php create mode 100644 resources/views/payments/ajax.blade.php create mode 100644 resources/views/payments/index.blade.php create mode 100644 resources/views/postulations/ajax.blade.php create mode 100644 resources/views/postulations/index.blade.php create mode 100644 resources/views/postulations/map.blade.php create mode 100644 resources/views/reports/ajax.blade.php create mode 100644 resources/views/reports/comments.blade.php create mode 100644 resources/views/reports/index.blade.php create mode 100644 resources/views/reports/veredict.blade.php create mode 100644 resources/views/sidebar.blade.php create mode 100644 resources/views/status/ajax.blade.php create mode 100644 resources/views/status/form.blade.php create mode 100644 resources/views/status/index.blade.php create mode 100644 resources/views/supplier/ajax.blade.php create mode 100644 resources/views/supplier/form.blade.php create mode 100644 resources/views/supplier/index.blade.php create mode 100644 resources/views/users/ajax.blade.php create mode 100644 resources/views/users/form.blade.php create mode 100644 resources/views/users/index.blade.php create mode 100644 resources/views/vendor/mail/html/button.blade.php create mode 100644 resources/views/vendor/mail/html/footer.blade.php create mode 100644 resources/views/vendor/mail/html/header.blade.php create mode 100644 resources/views/vendor/mail/html/layout.blade.php create mode 100644 resources/views/vendor/mail/html/message.blade.php create mode 100644 resources/views/vendor/mail/html/panel.blade.php create mode 100644 resources/views/vendor/mail/html/promotion.blade.php create mode 100644 resources/views/vendor/mail/html/promotion/button.blade.php create mode 100644 resources/views/vendor/mail/html/subcopy.blade.php create mode 100644 resources/views/vendor/mail/html/table.blade.php create mode 100644 resources/views/vendor/mail/html/themes/default.css create mode 100644 resources/views/vendor/mail/text/button.blade.php create mode 100644 resources/views/vendor/mail/text/footer.blade.php create mode 100644 resources/views/vendor/mail/text/header.blade.php create mode 100644 resources/views/vendor/mail/text/layout.blade.php create mode 100644 resources/views/vendor/mail/text/message.blade.php create mode 100644 resources/views/vendor/mail/text/panel.blade.php create mode 100644 resources/views/vendor/mail/text/promotion.blade.php create mode 100644 resources/views/vendor/mail/text/promotion/button.blade.php create mode 100644 resources/views/vendor/mail/text/subcopy.blade.php create mode 100644 resources/views/vendor/mail/text/table.blade.php create mode 100644 resources/views/vendor/notifications/email.blade.php create mode 100644 resources/views/welcome.blade.php create mode 100644 routes/api.php create mode 100644 routes/channels.php create mode 100644 routes/console.php create mode 100644 routes/web.php create mode 100644 server.php create mode 100644 storage/app/.gitignore create mode 100644 storage/app/public/.gitignore create mode 100644 storage/framework/.gitignore create mode 100644 storage/framework/cache/.gitignore create mode 100644 storage/framework/cache/data/.gitignore create mode 100644 storage/framework/sessions/.gitignore create mode 100644 storage/framework/testing/.gitignore create mode 100644 storage/framework/views/.gitignore create mode 100644 storage/logs/.gitignore create mode 100644 tests/CreatesApplication.php create mode 100644 tests/Feature/ExampleTest.php create mode 100644 tests/TestCase.php create mode 100644 tests/Unit/ExampleTest.php create mode 100644 webpack.mix.js create mode 100644 yarn.lock diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..6f313c6 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,15 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true +indent_style = space +indent_size = 4 +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[*.yml] +indent_size = 2 diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..604b401 --- /dev/null +++ b/.env.example @@ -0,0 +1,44 @@ +APP_NAME=Laravel +APP_ENV=local +APP_KEY= +APP_DEBUG=true +APP_URL=http://localhost + +LOG_CHANNEL=stack + +DB_CONNECTION=mysql +DB_HOST=127.0.0.1 +DB_PORT=3306 +DB_DATABASE=laravel +DB_USERNAME=root +DB_PASSWORD= + +BROADCAST_DRIVER=log +CACHE_DRIVER=file +QUEUE_CONNECTION=sync +SESSION_DRIVER=file +SESSION_LIFETIME=120 + +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_DRIVER=smtp +MAIL_HOST=smtp.mailtrap.io +MAIL_PORT=2525 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null + +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_DEFAULT_REGION=us-east-1 +AWS_BUCKET= + +PUSHER_APP_ID= +PUSHER_APP_KEY= +PUSHER_APP_SECRET= +PUSHER_APP_CLUSTER=mt1 + +MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" +MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..967315d --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +* text=auto +*.css linguist-vendored +*.scss linguist-vendored +*.js linguist-vendored +CHANGELOG.md export-ignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0f7df0f --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +/node_modules +/public/hot +/public/storage +/storage/*.key +/vendor +.env +.env.backup +.phpunit.result.cache +Homestead.json +Homestead.yaml +npm-debug.log +yarn-error.log diff --git a/.rnd b/.rnd new file mode 100644 index 0000000000000000000000000000000000000000..ad0eca6338028e3a9e0952fae6b062f74c9e69cb GIT binary patch literal 1024 zcmV+b1poVD3sz)Gsa-;}OPKKfM1=VZW2k8ebX@`kA``jTih^o3lD~2R7bnd3{UzGg zeboc|QGS#wsw6suR+L}?&ro%;zHghHOkqrI)qk)YVoKLn&GUHWu1 zqig^7Z(P5zq-l)yD>Z%!ahA@HsVf@8lbBF*yxKRrC5l4MB98>#)?;_VoyAyWw|}u( z-|>Mh5ifc#H>uyc7H{sN9cWhwcl82%Sg*98fvkh!y7Z8ik>vxl`EE!Bc_t}LS}wV0 z+!MHyJjJ!86ee4Vi4p`AJiqC=m}zU0d9^q%dw=`{HQQ;qBG~Wrtn=##ByiQGX8I67 zYvZzosBHS4ph>zl)K;K$pG*2`*YpRyUd!Rqcyh4GAJ%b%+8@G*6s`eJ`z_;tV2zoC z5@h%)?3sY_Icn~B2)c2Bj=|ke4zMPp`cJVxCV6X!#JBc$ zeP@Kf{(AjiZ}^N)YRiM{FOtJ3Plu)i{y6pl|o_U03O_@A|8i%iaErOJ%}nYR#)Pe0(j%~mF5Gm zr+xpd{uRdd(YjGb6D2E05s?V0 zLQ7$gE*0(-8eZdP5b{fdBt-ShMc9LQSwmUr1i7wQbV=uW}#PeijPIAZ%_|27O7`nvBnN)D6N(@{XGrLO%ya}Lhh_PBY^eW446aqBa} zgZ-wuQ}+CuU7j{~r!A+>jDIAES4S;SCeS_r4Ri84;{vU_2JH_W6j*9PSLGpRMW4Fk zJc!-soIf(R#nHks4Pb~gmIni6iM!QV30@bzdO0l8>6&^ u^aeCOFasI}f~@4br+E)9yWU6XEgMsnd)&(6MLa3K*AkM?FP3*w?;Q_s?Ey&u literal 0 HcmV?d00001 diff --git a/.styleci.yml b/.styleci.yml new file mode 100644 index 0000000..1db61d9 --- /dev/null +++ b/.styleci.yml @@ -0,0 +1,13 @@ +php: + preset: laravel + disabled: + - unused_use + finder: + not-name: + - index.php + - server.php +js: + finder: + not-name: + - webpack.mix.js +css: true diff --git a/app.yaml b/app.yaml new file mode 100644 index 0000000..d872001 --- /dev/null +++ b/app.yaml @@ -0,0 +1,64 @@ +runtime: php # language of the app +env: flex # let app engine know we use flexible environment + +runtime_config: + document_root: public #folder where index.php is +# Ensure we skip ".env", which is only for local development +skip_files: + - .env #we want to skip this to make sure we don’t mess stuff up on the server +env_variables: + APP_NAME: JobHero + APP_ENV: production + APP_URL: https://ichamba-1562349005909.uc.r.appspot.com + APP_KEY: base64:PcEmB+UyS58h/Rg3EbYvZwOdbuQPNJkdpmAmmUqisXc= + APP_DEBUG: false + + DB_CONNECTION: mysql + DB_HOST: localhost + DB_DATABASE: ichamba + DB_USERNAME: root + DB_PASSWORD: kcy14thngsvv1 + DB_SOCKET: "/cloudsql/ichamba-1562349005909:us-central1:ichamba-db" + + CACHE_DRIVER: file + SESSION_DRIVER: cookie + SESSION_SECURE_COOKIE: true + + MAIL_FROM_ADDRESS: info@jobheroglobal.com + MAIL_FROM_NAME: JobHero + MAIL_DRIVER: smtp + MAIL_HOST: smtp.mailgun.org + MAIL_PORT: 587 + MAIL_USERNAME: postmaster@jobheroglobal.com + MAIL_PASSWORD: c1e3740d6639848eb247d5cbea9d2e62-64574a68-fe0c65f3 + MAIL_ENCRYPTION: tls + + FACEBOOK_CLIENT_ID: 342718733071161 + FACEBOOK_CLIENT_SECRET: 70c28c21e1dd554bc56e976ca5a026b9 + FACEBOOK_CALLBACK_URL: https://ichamba-1562349005909.appspot.com/auth/facebook/callback + + GOOGLE_CLIENT_ID: 679874302148-d2l085q04i4d6pt3hhac2rbfm14js7e5.apps.googleusercontent.com + GOOGLE_CLIENT_SECRET: VRNEFsGO8KkreSeC132aFDYU + GOOGLE_CALLBACK_URL: https://ichamba-1562349005909.appspot.com/auth/google/callback + + RECAPTCHA_V3_SECRET_KEY: 6Len0CwbAAAAADHR_Hphs2bros58vq2Yoav57NPs + RECAPTCHA_V3_SITE_KEY: 6Len0CwbAAAAABE_elzeHQ-Aaez7AdnsD0MebI1x + + SECRET: vktxm0tRk6Hvh3fnbSfDMe6We1nQxKCKPnv9Wq5S + PASS: wBIIKuDbrxNKzQhAUGiZLoaoQ4MichAN3wP2AP7B + + OPENPAY_ID: m9k4beuso5az0wjqztvt + OPENPAY_APIKEY: sk_0eb5d4072ce64a189c1387a423c7d730 + + GOOGLE_VISION_PROJECT_ID : ichamba-1562349005909 + + GOOGLE_CLOUD_PROJECT_ID: ichamba-1562349005909 + GOOGLE_CLOUD_STORAGE_BUCKET: ichamba-1562349005909.appspot.com + +automatic_scaling: + min_num_instances: 1 + +beta_settings: + # for Cloud SQL, set this value to the Cloud SQL connection name, + # e.g. "project:region:cloudsql-instance" + cloud_sql_instances: "ichamba-1562349005909:us-central1:ichamba-db" diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php new file mode 100644 index 0000000..a8c5158 --- /dev/null +++ b/app/Console/Kernel.php @@ -0,0 +1,42 @@ +command('inspire') + // ->hourly(); + } + + /** + * Register the commands for the application. + * + * @return void + */ + protected function commands() + { + $this->load(__DIR__.'/Commands'); + + require base_path('routes/console.php'); + } +} diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php new file mode 100644 index 0000000..043cad6 --- /dev/null +++ b/app/Exceptions/Handler.php @@ -0,0 +1,51 @@ +validate([ + 'email' => 'required|string|email', + 'password' => 'required|string', + //'remember_me' => 'boolean' + ]); + $credentials = request(['email', 'password']); + if(!Auth::attempt($credentials)) + return response()->json([ + 'message' => 'Unauthorized' + ], 401); + $user = $request->user(); + $tokenResult = $user->createToken('Personal Access Token'); + $token = $tokenResult->token; + if ($request->remember_me) + $token->expires_at = Carbon::now()->addWeeks(1); + $token->save(); + return response()->json([ + 'access_token' => $tokenResult->accessToken, + 'token_type' => 'Bearer', + 'expires_at' => Carbon::parse( + $tokenResult->token->expires_at + )->toDateTimeString(), + 'userid' => $user->id, + 'role' => $user->role_id, + 'verified' => $user->phone_verified_at, + 'reported' => $user->reported + ]); + } + + public function fb(Request $request) + { + $params = [ + 'grant_type' => 'social', + 'client_id' => '2', // it should be password grant client + 'client_secret' => config('app.secret'), + 'provider' => 'facebook', + 'access_token' => $request->access_token // access token from provider + ]; + + $requestToken = Request::create("/oauth/token", "POST", $params); + $response = app()->handle($requestToken); + $json = json_decode($response->content(), true); + $user = User::where('social_id', $request->social_id) -> first(); + $frontend = json_encode([ + 'token_type' => $json['token_type'], + 'expires_at' => $json['expires_in'], + 'access_token' => $json['access_token'], + 'userid' => $user->id, + 'role' => $user->role_id, + 'verified' => $user->phone_verified_at, + 'reported' => $user->reported + ]); + return $frontend; + } + + public function google(Request $request) + { + $params = [ + 'grant_type' => 'social', + 'client_id' => '2', // it should be password grant client + 'client_secret' => config('app.secret'), + 'provider' => 'google', + 'access_token' => $request->access_token // access token from provider + ]; + + $requestToken = Request::create("/oauth/token", "POST", $params); + $response = app()->handle($requestToken); + $json = json_decode($response->content(), true); + $user = User::where('social_id', $request->social_id) -> first(); + $frontend = json_encode([ + 'token_type' => $json['token_type'], + 'expires_at' => $json['expires_in'], + 'access_token' => $json['access_token'], + 'userid' => $user->id, + 'role' => $user->role_id, + 'verified' => $user->phone_verified_at, + 'reported' => $user->reported + ]); + return $frontend; + } + + public function apple(Request $request) + { + $params = [ + 'grant_type' => 'social', + 'client_id' => '2', // it should be password grant client + 'client_secret' => config('app.secret'), + 'provider' => 'apple', + 'access_token' => $request->access_token // access token from provider + ]; + + $requestToken = Request::create("/oauth/token", "POST", $params); + $response = app()->handle($requestToken); + $json = json_decode($response->content(), true); + $user = User::where('social_id', $request->social_id) -> first(); + $frontend = json_encode([ + 'token_type' => $json['token_type'], + 'expires_at' => $json['expires_in'], + 'access_token' => $json['access_token'], + 'userid' => $user->id, + 'role' => $user->role_id, + 'verified' => $user->phone_verified_at, + 'reported' => $user->reported + ]); + return $frontend; + } + + + public function register(Request $request) + { + $rules = [ + 'name' => 'required|string|regex:/(^[a-zA-Z\s ÑñÁáÉéÍíÓóÚúÜü]+$)+/', + 'email' => 'required|string|email|unique:users', + 'phone' => 'required|numeric', + 'password' => 'required|string', + 'secret' => 'required|string' + ]; + + $messages = [ + 'email.unique' => 'Correo electronico ya registrado', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + + if ($validator->fails()) { + return response()->json([ + 'message' => $validator->messages()->first() + ], 422); + } + + if ($request->secret == config('app.pass')) { + + /**$verify = new Verify_accounts; + $verify->name = $request->name; + $verify->email = $request->email; + $verify->password = bcrypt($request->password); + $verify->token = str_random(70); + + $verify->save(); */ + + $user = new User; + $user->name = $request->name; + $user->email = $request->email; + $user->phone = $request->phone; + $user->password = bcrypt($request->password); + $user->role_id = "1"; + $user->save(); + + return response()->json([ + 'message' => 'Successfully created user!' + ], 201); + } else { + return response()->json([ + 'message' => 'Puto el que la hackee' + ], 201); + } + } + public function logout(Request $request) + { + $request->user()->token()->revoke(); + return response()->json([ + 'message' => 'Successfully logged out' + ]); + } + + /** + * Get the authenticated User + * + * @return [json] user object + */ + public function user(Request $request) + { + return response()->json($request->user()); + } + + public function checkemail($token) + { + $verifyUser = Verify_accounts::where('token', $token)->first(); + $user = new User; + $user->name = $verifyUser->name; + $user->email = $verifyUser->email; + $user->password = $verifyUser->password; + $user->role_id = "1"; + $user->save(); + Verify_accounts::destroy($verifyUser->id); + } + + public function verify(Request $request) + { + $user = $request->user(); + + $user->phone = $request->phone; + $user->phone_verified_at = date("Y-m-d H:i:s"); + + $user->save(); + + return response()->json([ + 'message' => 'Successfully updated' + ]); + } +} diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php new file mode 100644 index 0000000..86d2181 --- /dev/null +++ b/app/Http/Controllers/Auth/ForgotPasswordController.php @@ -0,0 +1,51 @@ +middleware('guest'); + } + + protected function sendResetLinkResponse($response) + { + if (request()->header('Content-Type') == 'application/json') { + return response()->json(['success' => 'Email enviado con éxito.']); + } + return back()->with('status', 'Email enviado con éxito.'); + } + + protected function sendResetLinkFailedResponse($response) + { + if (request()->header('Content-Type') == 'application/json') { + return response()->json(['error' => 'Por favor contacte a soporte técnico.']); + } + + return back()->withErrors( + ['email' => 'Ha ocurrido un error'] + ); + } +} diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php new file mode 100644 index 0000000..6207297 --- /dev/null +++ b/app/Http/Controllers/Auth/LoginController.php @@ -0,0 +1,71 @@ +middleware('guest')->except('logout'); + } + + public function redirectToProvider($provider) + { + return Socialite::driver($provider)->redirect(); + } + + public function handleProviderCallback($provider) + { + $user = Socialite::driver($provider)->user(); + $authUser = $this->findUser($user, $provider); + + Auth::login($authUser, true); + return redirect($this->redirectTo); + } + public function findUser($user, $provider) { + $authUser = User::where('social_id', $user->id . '_' . $provider)->first(); + if($authUser) { + return $authUser; + } + return User::create([ + 'name' => $user->getName(), + 'email' => $user->getEmail(), + 'social_id' => $user->getId() . '_' . $provider, + ]); + } + +} diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php new file mode 100644 index 0000000..e9b03cd --- /dev/null +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -0,0 +1,77 @@ +middleware('guest'); + } + + /** + * Get a validator for an incoming registration request. + * + * @param array $data + * @return \Illuminate\Contracts\Validation\Validator + */ + protected function validator(array $data) + { + return Validator::make($data, [ + 'name' => ['required', 'string', 'max:255'], + 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'], + 'phone' => ['required', 'string', 'min:8', 'max:255', 'unique:users'], + 'password' => ['required', 'string', 'min:8', 'confirmed'], + ]); + } + + /** + * Create a new user instance after a valid registration. + * + * @param array $data + * @return \App\User + */ + protected function create(array $data) + { + return User::create([ + 'name' => $data['name'], + 'email' => $data['email'], + 'phone' => $data['phone'], + 'phone_verified_at' => Carbon::now(), + 'role_id' => '2', + 'password' => Hash::make($data['password']), + ]); + } +} diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php new file mode 100644 index 0000000..cf726ee --- /dev/null +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -0,0 +1,39 @@ +middleware('guest'); + } +} diff --git a/app/Http/Controllers/Auth/VerificationController.php b/app/Http/Controllers/Auth/VerificationController.php new file mode 100644 index 0000000..23a43a8 --- /dev/null +++ b/app/Http/Controllers/Auth/VerificationController.php @@ -0,0 +1,41 @@ +middleware('auth'); + $this->middleware('signed')->only('verify'); + $this->middleware('throttle:6,1')->only('verify', 'resend'); + } +} diff --git a/app/Http/Controllers/BanksController.php b/app/Http/Controllers/BanksController.php new file mode 100644 index 0000000..aed22a8 --- /dev/null +++ b/app/Http/Controllers/BanksController.php @@ -0,0 +1,162 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $banks = new Banks(); + $banks = $banks->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('code', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('name', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('banks.index', compact('banks')); + } else { + return view('banks.ajax', compact('banks')); + } + + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create(Request $request) + { + // + if ($request->isMethod('get')) + return view('banks.form'); + + $rules = [ + 'code' => 'required|numeric', + 'name' => 'required|string', + ]; + + $messages = [ + 'code.required' => 'Se requiere un valor de código', + 'name.required' => 'Se requiere el nombre del banco', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $bank = new Banks(); + $bank->code = $request->code; + $bank->name = strip_tags($request->name); + $bank->save(); + + return redirect('banks'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + if ($request->isMethod('get')) + return view('banks.form',['bank' => Banks::find($id)]); + + $rules = [ + 'code' => 'required|numeric', + 'name' => 'required|string', + ]; + + $messages = [ + 'code.required' => 'Se requiere un valor de código', + 'name.required' => 'Se requiere el nombre del banco', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $bank = Banks::find($id); + $bank->code = $request->code; + $bank->name = strip_tags($request->name); + $bank->save(); + + return redirect('banks'); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + Banks::destroy($id); + return redirect('banks'); + } +} diff --git a/app/Http/Controllers/CategoriesController.php b/app/Http/Controllers/CategoriesController.php new file mode 100644 index 0000000..7bacb43 --- /dev/null +++ b/app/Http/Controllers/CategoriesController.php @@ -0,0 +1,161 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $categories = new Categories(); + $categories = $categories->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('name', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('categories.index', compact('categories')); + } else { + return view('categories.ajax', compact('categories')); + } + + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create(Request $request) + { + // + if ($request->isMethod('get')) + return view('categories.form'); + + $rules = [ + 'name' => 'required|string', + 'en_name' => 'required|string', + ]; + + $messages = [ + 'name.required' => 'Se requiere el nombre de la categoría', + 'en_name.required' => 'Se requiere el nombre de la categoría (en ingles)', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $category = new Categories(); + $category->name = strip_tags($request->name); + $category->en_name = strip_tags($request->en_name); + $category->save(); + + return redirect('categories'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + if ($request->isMethod('get')) + return view('categories.form',['category' => Categories::find($id)]); + + $rules = [ + 'name' => 'required|string', + 'en_name' => 'required|string', + ]; + + $messages = [ + 'name.required' => 'Se requiere el nombre de la categoría', + 'en_name.required' => 'Se requiere el nombre de la categoría (en ingles)', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $category = Categories::find($id); + $category->name = strip_tags($request->name); + $category->en_name = strip_tags($request->en_name); + $category->save(); + + return redirect('categories'); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + Categories::destroy($id); + return redirect('categories'); + } +} diff --git a/app/Http/Controllers/ContractController.php b/app/Http/Controllers/ContractController.php new file mode 100644 index 0000000..197fc4b --- /dev/null +++ b/app/Http/Controllers/ContractController.php @@ -0,0 +1,994 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $currentcontracts = new CurrentContracts(); + $currentcontracts = $currentcontracts->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('user_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('address', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('amount', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('currentcontracts.index', compact('currentcontracts')); + } else { + return view('currentcontracts.ajax', compact('currentcontracts')); + } + + } + + public function mapcurrentcontracts(Request $request) + { + // + $request->session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $currentcontracts = new CurrentContracts(); + $currentcontracts = $currentcontracts->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('user_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('address', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('amount', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + return view('currentcontracts.map', compact('currentcontracts')); + + } + + public function finishedcontracts(Request $request) + { + // + $request->session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $finishedcontracts = new FinishedContracts(); + $finishedcontracts = $finishedcontracts->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('user_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('address', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('amount', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('finishedcontracts.index', compact('finishedcontracts')); + } else { + return view('finishedcontracts.ajax', compact('finishedcontracts')); + } + + } + + public function mapfinishedcontracts(Request $request) + { + // + $request->session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $finishedcontracts = new FinishedContracts(); + $finishedcontracts = $finishedcontracts->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('user_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('address', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('amount', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + return view('finishedcontracts.map', compact('finishedcontracts')); + + } + + public function create(Request $request) { + + $rules = [ + 'postulation_id' => 'required|numeric', + 'supplier_id' => 'required|numeric', + 'card_id' => 'required|numeric', + 'code' => 'required|numeric', + 'device_id' => 'required|string|regex:/(^[A-Za-z0-9 ]+$)+/', + 'coupon' => 'nullable|string|regex:/(^[A-Za-z0-9 ]+$)+/', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $postulation = Postulations::where('id', $request->postulation_id)->first(); + $coupon = Coupon::where('name', $request->coupon)->first(); + Openpay::setProductionMode(true); + + if ($user->id == $postulation->user_id) { + + if ($request->card_id) { + $card = Cards::where('id', $request->card_id)->first(); + } + $supplier = Suppliers::where('id', $request->supplier_id)->first(); + + $IVA = iChambaParameter::where('id', $supplier->IVA_id)->first(); + $ISR = iChambaParameter::where('id', $supplier->ISR_id)->first(); + + $ichambafee = iChambaParameter::where('parameter', 'ichamba_fee')->first(); + $category = Categories::where('id', $postulation->category_id)->first(); + + if ($card->user_id == $user->id) { + + $contract = new CurrentContracts(); + $contract->user_id = $postulation->user_id; + $contract->supplier_id = $supplier->id; + $contract->category_id = $postulation->category_id; + $contract->address = $postulation->address; + $contract->location = $postulation->location; + if (isset($postulation->int_number)) { + $contract->int_number = $postulation->int_number; + } else { + $contract->int_number = 0; + } + $contract->references = $postulation->references; + $contract->appointment = $postulation->appointment; + $contract->amount = ($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee); + if (isset($IVA->num_value) && isset($IVA->num_value)) { + $contract->IVA = $IVA->num_value; + $contract->ISR = $ISR->num_value; + $contract->revenue = ((($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee) * ((100 - $ichambafee->num_value) / 100)) * ((100 - $IVA->num_value - $ISR->num_value) / 100)); + } else { + $contract->IVA = 0; + $contract->ISR = 0; + $contract->revenue = (($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee) * ((100 - $ichambafee->num_value) / 100)); + } + $contract->ichamba_fee = $ichambafee->num_value; + $contract->details = $postulation->details; + $contract->en = $postulation->en; + + if ($coupon) { + + $checkccontracts = CurrentContracts::where('coupon_id', $coupon->id)->where('user_id', $user->id)->first(); + $checkfcontracts = FinishedContracts::where('coupon_id', $coupon->id)->where('user_id', $user->id)->first(); + + if ($coupon->limit > 0) { + if(!isset($checkccontracts) && !isset($checkccontracts)) { + + $fee = ($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee); + $discount = (($fee*(($coupon->percentage = null ? 0 : $coupon->percentage)/100))+($coupon->amount = null ? 0 : $coupon->amount)); + + $contract->coupon_id = $coupon->id; + $chargeData = array( + 'source_id' => $card->token, + 'method' => 'card', + 'amount' => ((($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee)*(1 - (($coupon->percentage = null ? 0 : $coupon->percentage)/100)))-($coupon->amount = null ? 0 : $coupon->amount)), + 'description' => ('Contrato del usuario: ' . $user->name . ' del servicio ' . $category->name . ' realizado por el proveedor: ' . $supplier->company_name), + 'device_session_id' => $request->device_id, + 'cvv2' => $request->code + ); + } + } + } else { + + $fee = ($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee); + $discount = 0; + + $contract->coupon_id = null; + $chargeData = array( + 'source_id' => $card->token, + 'method' => 'card', + 'amount' => ($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee), + 'description' => ('Contrato del usuario: ' . $user->name . ' del servicio ' . $category->name . ' realizado por el proveedor: ' . $supplier->company_name), + 'device_session_id' => $request->device_id, + 'cvv2' => $request->code + ); + } + + + if (!empty($request->card_id) && !empty($request->device_id) && !empty($request->code) && $fee > $discount) { + try { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + + $customer = $openpay->customers->get($user->openpay_id); + $charge = $customer->charges->create($chargeData); + + + } catch (OpenpayApiTransactionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la transacción' + ]); + } catch (OpenpayApiRequestError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la operación' + ]); + } catch (OpenpayApiConnectionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay:' . $e->getMessage() + ]); + + } catch (OpenpayApiAuthError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay' . $e->getMessage() + ]); + + } catch (OpenpayApiError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay' . $e->getMessage() + ]); + } catch (Exception $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error: ' . $e->getMessage() + ]); + } + + $contract->transaction_id = $charge->id; + + } else if ($coupon) { + if ($coupon->limit > 0 && $discount >= $fee) { + if(!isset($checkccontracts) && !isset($checkccontracts)) { + $coupon->limit = $coupon->limit - 1; + $coupon->save(); + + $contract->transaction_id = $coupon->name; + } + } + } + + $contract->status_id = 1; + $contract->code = mt_rand(100000, 999999); + $contract->save(); + + $delay_UTC = Carbon::parse($contract->appointment)->subMinutes(30)->toString(); + + Postulations::destroy($request->postulation_id); + + OneSignal::sendNotificationUsingTags( + "Dirígete a la sección de postulaciones contratadas en la app para ver más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = "Proveedor: has sido contratado" + ); + + //Schedule a notification for the supplier about its appointment + OneSignal::sendNotificationUsingTags( + "Tienes un servicio en " . $contract->address . " hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = $delay_UTC, + $headings = "Proveedor, no olvides tu cita de hoy" + ); + + //Schedule a notification for the user about its appointment + OneSignal::sendNotificationUsingTags( + "Tienes un servicio agendado hoy en " . $contract->address . " en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $user->id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = $delay_UTC, + $headings = $user->name . ", no olvides tu cita de hoy" + ); + + return response()->json([ + 'message' => 'Servicio contratado exitosamente' + ]); + } + } + } + } + + public function coupon(Request $request) { + + $rules = [ + 'postulation_id' => 'required|numeric', + 'supplier_id' => 'required|numeric', + 'coupon' => 'required|string|regex:/(^[A-Za-z0-9 ]+$)+/', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $postulation = Postulations::where('id', $request->postulation_id)->first(); + $coupon = Coupon::where('name', $request->coupon)->first(); + + if($coupon) { + + if ($user->id == $postulation->user_id) { + + $supplier = Suppliers::where('id', $request->supplier_id)->first(); + + $IVA = iChambaParameter::where('id', $supplier->IVA_id)->first(); + $ISR = iChambaParameter::where('id', $supplier->ISR_id)->first(); + + $ichambafee = iChambaParameter::where('parameter', 'ichamba_fee')->first(); + $category = Categories::where('id', $postulation->category_id)->first(); + $checkccontracts = CurrentContracts::where('coupon_id', $coupon->id)->where('user_id', $user->id)->first(); + $checkfcontracts = FinishedContracts::where('coupon_id', $coupon->id)->where('user_id', $user->id)->first(); + + if (!isset($checkccontracts) && !isset($checkccontracts)) { + if($coupon->percentage == 100) { + if($coupon->limit > 0) { + + $contract = new CurrentContracts(); + $contract->user_id = $postulation->user_id; + $contract->supplier_id = $supplier->id; + $contract->category_id = $postulation->category_id; + $contract->address = $postulation->address; + $contract->location = $postulation->location; + if (isset($postulation->int_number)) { + $contract->int_number = $postulation->int_number; + } else { + $contract->int_number = 0; + } + $contract->references = $postulation->references; + $contract->appointment = $postulation->appointment; + $contract->amount = ($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee); + if (isset($IVA->num_value) && isset($IVA->num_value)) { + $contract->IVA = $IVA->num_value; + $contract->ISR = $ISR->num_value; + $contract->revenue = ((($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee) * ((100 - $ichambafee->num_value) / 100)) * ((100 - $IVA->num_value - $ISR->num_value) / 100)); + } else { + $contract->IVA = 0; + $contract->ISR = 0; + $contract->revenue = (($supplier->minimun_fee < 150 ? 150 : $supplier->minimun_fee) * ((100 - $ichambafee->num_value) / 100)); + } + $contract->ichamba_fee = $ichambafee->num_value; + $contract->details = $postulation->details; + $contract->en = $postulation->en; + $contract->coupon_id = $coupon->id; + $contract->transaction_id = $coupon->name; + $contract->status_id = 1; + $contract->code = mt_rand(100000, 999999); + $contract->save(); + + $delay_UTC = Carbon::parse($contract->appointment)->subMinutes(30)->toString(); + + Postulations::destroy($request->postulation_id); + + OneSignal::sendNotificationUsingTags( + "Dirígete a la sección de postulaciones contratadas en la app para ver más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = "Proveedor: has sido contratado" + ); + + //Schedule a notification for the supplier about its appointment + OneSignal::sendNotificationUsingTags( + "Tienes un servicio en " . $contract->address . " hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = $delay_UTC, + $headings = "Proveedor, no olvides tu cita de hoy" + ); + + //Schedule a notification for the user about its appointment + OneSignal::sendNotificationUsingTags( + "Tienes un servicio agendado hoy en " . $contract->address . " en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $user->id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = $delay_UTC, + $headings = $user->name . ", no olvides tu cita de hoy" + ); + + $coupon->limit = $coupon->limit - 1; + $coupon->save(); + + return response()->json([ + 'name' => 'success' + ]); + // + } else { + return response()->json([ + 'name' => 'expired' + ]); + } + } else { + return response()->json($coupon); + } + } else { + return response()->json([ + 'name' => 'used' + ]); + } + } + } + } + } + + public function couponextra(Request $request) { + + $rules = [ + 'contract_id' => 'required|numeric', + 'amount' => 'required|numeric', + 'coupon' => 'required|string|regex:/(^[A-Za-z0-9 ]+$)+/', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $fcontract = FinishedContracts::where('id', $request->contract_id)->first(); + + $supplier = Suppliers::where('id', $fcontract->supplier_id)->first(); + $IVA = iChambaParameter::where('id', $supplier->IVA_id)->first(); + $ISR = iChambaParameter::where('id', $supplier->ISR_id)->first(); + $ichambafee = iChambaParameter::where('parameter', 'ichamba_fee')->first(); + + $coupon = Coupon::where('name', $request->coupon)->first(); + + if($coupon) { + + if ($user->id == $fcontract->user_id) { + + $checkccontracts = CurrentContracts::where('coupon_id', $coupon->id)->where('user_id', $user->id)->first(); + $checkfcontracts = FinishedContracts::where('coupon_id', $coupon->id)->where('user_id', $user->id)->first(); + + if (!isset($checkccontracts) && !isset($checkccontracts)) { + if($coupon->percentage == 100) { + if($coupon->limit > 0) { + + $extra = new FinishedContracts(); + $extra->user_id = $fcontract->user_id; + $extra->supplier_id = $fcontract->supplier_id; + $extra->category_id = $fcontract->category_id; + $extra->address = $fcontract->address; + $extra->location = $fcontract->location; + $extra->int_number = $fcontract->int_number; + $extra->references = $fcontract->references; + $extra->appointment = Carbon::now(); + $extra->amount = ($request->amount < 150 ? 150 : $request->amount); + if (isset($IVA->num_value) && isset($IVA->num_value)) { + $extra->IVA = $IVA->num_value; + $extra->ISR = $ISR->num_value; + $extra->revenue = ((($request->amount < 150 ? 150 : $request->amount) * ((100 - $ichambafee->num_value) / 100)) * ((100 - $IVA->num_value - $ISR->num_value) / 100)); + } else { + $extra->IVA = 0; + $extra->ISR = 0; + $extra->revenue = (($request->amount < 150 ? 150 : $request->amount) * ((100 - $ichambafee->num_value) / 100)); + } + $extra->ichamba_fee = $ichambafee->num_value; + $extra->en = $fcontract->en; + $extra->coupon_id = $coupon->id; + $extra->transaction_id = $coupon->name; + $extra->status_id = 3; + $extra->parent_contract_id = $fcontract->id; + $extra->save(); + + $coupon->limit = $coupon->limit - 1; + $coupon->save(); + + return response()->json([ + 'name' => 'success' + ]); + } else { + return response()->json([ + 'name' => 'expired' + ]); + } + } else { + return response()->json($coupon); + } + } else { + return response()->json([ + 'name' => 'used' + ]); + } + } + } + } + } + + public function getcurrentcontracts(Request $request) { + $user = Auth::user(); + $ccontracts = CurrentContracts::where('user_id', $user->id)->orderBy('created_at', 'DESC')->get(); + $currentcontracts = array(); + + foreach($ccontracts as $ccontract) { + $category = Categories::where('id', $ccontract->category_id)->first(); + $supplier = Suppliers::where('id', $ccontract->supplier_id)->first(); + $time_limit = Carbon::parse($ccontract->appointment); + $day_limit = Carbon::parse($ccontract->created_at); + $currentcontractinfo = array( + 'id' => $ccontract->id, + 'phone' => $supplier->user->phone, + 'category' => $category->name, + 'en_category' => $category->en_name, + 'address' => $ccontract->address, + 'date' => $ccontract->appointment, + 'supplier' => $supplier->company_name, + 'status' => $ccontract->status_id, + 'amount' => $ccontract->amount, + 'code' => $ccontract->code, + 'rescheadulable' => $day_limit->diffInDays($time_limit), + 'time_limit' => $time_limit->diffInMinutes(Carbon::now()), + 'past_due' => $time_limit->diffInHours(Carbon::now(), false) + ); + $currentcontracts[] = $currentcontractinfo; + } + + return response()->json($currentcontracts); + } + + public function cancelcontract(Request $request) { + + $rules = [ + 'contract_id' => 'required|numeric', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $ccontract = CurrentContracts::where('id', $request->contract_id)->first(); + $supplier = Suppliers::where('id', $ccontract->supplier_id)->first(); + + if ($user->id == $ccontract->user_id) { + + $time_limit = Carbon::parse($ccontract->appointment); + if ($time_limit->diffInHours(Carbon::now()) >= 24) { + if($ccontract->transaction_id != 'NO APPLY') { + try { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + + $refundData = array( + 'description' => 'Reembolso del contrato con id: ' . $ccontract->id . ', del usuario ' . $user->name . '. Con proveedor: ' . $supplier->id, + ); + + $customer = $openpay->customers->get($user->openpay_id); + $charge = $customer->charges->get($ccontract->transaction_id); + $charge->refund($refundData); + } catch (OpenpayApiTransactionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la transacción' + ]); + } catch (OpenpayApiRequestError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la operación' + ]); + } catch (OpenpayApiConnectionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay:' . $e->getMessage() + ]); + + } catch (OpenpayApiAuthError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay' . $e->getMessage() + ]); + + } catch (OpenpayApiError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay' . $e->getMessage() + ]); + } catch (Exception $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error: ' . $e->getMessage() + ]); + } + } + } + + $fcontract = new FinishedContracts(); + $fcontract->user_id = $ccontract->user_id; + $fcontract->supplier_id = $ccontract->supplier_id; + $fcontract->category_id = $ccontract->category_id; + $fcontract->address = $ccontract->address; + $fcontract->location = $ccontract->location; + $fcontract->int_number = $ccontract->int_number; + $fcontract->references = $ccontract->references; + $fcontract->appointment = $ccontract->appointment; + $fcontract->amount = $ccontract->amount; + $fcontract->IVA = $ccontract->IVA; + $fcontract->ISR = $ccontract->ISR; + $fcontract->ichamba_fee = $ccontract->ichamba_fee; + $fcontract->revenue = $ccontract->revenue; + $fcontract->details = $ccontract->details; + $fcontract->en = $ccontract->en; + $fcontract->transaction_id = (!empty($charge->id) ? $charge->id : $ccontract->transaction_id); + $fcontract->status_id = 4; + $fcontract->save(); + + CurrentContracts::destroy($request->contract_id); + + OneSignal::sendNotificationUsingTags( + "El servicio en " . $fcontract->address . " el día " . substr($fcontract->appointment, 0, 10) . "ha sido cancelado. Dírigeta a la sección de servicios contratados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = "Proveedor: un servicio ha sido cancelado" + ); + + return response()->json([ + 'message' => 'Servicio cancelado exitosamente' + ]); + } + } + } + + public function startcontract(Request $request) { + + $rules = [ + 'contract_pin' => 'required|numeric', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $supplier = $user->suppliers; + $ccontract = CurrentContracts::where('code', $request->contract_pin)->where('supplier_id', $supplier->id)->first(); + + if($ccontract) { + + $time_limit = Carbon::parse($ccontract->appointment); + if ($time_limit->diffInMinutes(Carbon::now()) <= 120) { + $fcontract = new FinishedContracts(); + $fcontract->user_id = $ccontract->user_id; + $fcontract->supplier_id = $ccontract->supplier_id; + $fcontract->category_id = $ccontract->category_id; + $fcontract->address = $ccontract->address; + $fcontract->location = $ccontract->location; + $fcontract->int_number = $ccontract->int_number; + $fcontract->references = $ccontract->references; + $fcontract->appointment = $ccontract->appointment; + $fcontract->amount = $ccontract->amount; + $fcontract->IVA = $ccontract->IVA; + $fcontract->ISR = $ccontract->ISR; + $fcontract->ichamba_fee = $ccontract->ichamba_fee; + $fcontract->revenue = $ccontract->revenue; + $fcontract->details = $ccontract->details; + $fcontract->en = $ccontract->en; + $fcontract->coupon_id = $ccontract->coupon_id; + $fcontract->transaction_id = $ccontract->transaction_id; + $fcontract->status_id = 3; + $fcontract->score = 5; + $fcontract->save(); + + $supplier->total_score = ($supplier->total_score + 5); + $supplier->finished_jobs = ($supplier->finished_jobs + 1); + $supplier->save(); + + CurrentContracts::destroy($ccontract->id); + + $payment = new Payments(); + $payment->contract_id = $fcontract->id; + $payment->supplier_id = $fcontract->supplier_id; + $payment->amount = $fcontract->amount; + $payment->status_id = null; + $payment->save(); + + OneSignal::sendNotificationUsingTags( + "El servicio en " . $fcontract->address . " el día " . substr($fcontract->appointment, 0, 10) . " ha sido iniciado. Dírigeta a la sección de servicios contratados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $fcontract->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = "Usuario: el proveedor ha iniciado el servicio" + ); + + return response()->json([ + 'message' => 'Servicio iniciado exitosamente' + ]); + } else { + return response()->json([ + 'message' => 'No service' + ]); + } + } else { + return response()->json([ + 'message' => 'No service' + ]); + } + } + } + + public function extra(Request $request) { + + $rules = [ + 'contract_id' => 'required|numeric', + 'amount' => 'required|numeric', + 'card_id' => 'required|numeric', + 'code' => 'required|numeric', + 'device_id' => 'required|string|regex:/(^[A-Za-z0-9 ]+$)+/', + 'coupon' => 'nullable|string|regex:/(^[A-Za-z0-9 ]+$)+/', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $coupon = Coupon::where('name', $request->coupon)->first(); + $fcontract = FinishedContracts::where('id', $request->contract_id)->first(); + Openpay::setProductionMode(true); + + if ($user->id == $fcontract->user_id) { + $card = Cards::where('id', $request->card_id)->first(); + $IVA = iChambaParameter::where('id', $supplier->IVA_id)->first(); + $ISR = iChambaParameter::where('id', $supplier->ISR_id)->first(); + $ichambafee = iChambaParameter::where('parameter', 'ichamba_add_fee')->first(); + $supplier = Suppliers::where('id', $fcontract->supplier_id)->first(); + + if ($card->user_id == $user->id) { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + } + + $extra = new FinishedContracts(); + $extra->user_id = $fcontract->user_id; + $extra->supplier_id = $fcontract->supplier_id; + $extra->category_id = $fcontract->category_id; + $extra->address = $fcontract->address; + $extra->location = $fcontract->location; + $extra->int_number = $fcontract->int_number; + $extra->references = $fcontract->references; + $extra->appointment = Carbon::now(); + $extra->amount = ($request->amount < 150 ? 150 : $request->amount); + if (isset($IVA->num_value) && isset($IVA->num_value)) { + $extra->IVA = $IVA->num_value; + $extra->ISR = $ISR->num_value; + $extra->revenue = ((($request->amount < 150 ? 150 : $request->amount) * ((100 - $ichambafee->num_value) / 100)) * ((100 - $IVA->num_value - $ISR->num_value) / 100)); + } else { + $extra->IVA = 0; + $extra->ISR = 0; + $extra->revenue = (($request->amount < 150 ? 150 : $request->amount) * ((100 - $ichambafee->num_value) / 100)); + } + $extra->ichamba_fee = $ichambafee->num_value; + $extra->en = $fcontract->en; + + if ($coupon) { + if ($coupon->limit > 0) { + $extra->coupon_id = $coupon->id; + $chargeData = array( + 'source_id' => $card->token, + 'method' => 'card', + 'amount' => ((($request->amount < 150 ? 150 : $request->amount)*(1 - (($coupon->percentage = null ? 0 : $coupon->percentage)/100)))-($coupon->amount = null ? 0 : $coupon->amount)), + 'description' => ('Contrato del usuario: ' . $user->name . ' del servicio ' . $category->name . ' realizado por el proveedor: ' . $supplier->company_name), + 'device_session_id' => $request->device_id, + 'cvv2' => $request->code + ); + } else { + $extra->coupon_id = null; + $chargeData = array( + 'source_id' => $card->token, + 'method' => 'card', + 'amount' => ($request->amount < 150 ? 150 : $request->amount), + 'description' => ('Contrato del usuario: ' . $user->name . ' del servicio ' . $category->name . ' realizado por el proveedor: ' . $supplier->company_name), + 'device_session_id' => $request->device_id, + 'cvv2' => $request->code + ); + } + } else { + $extra->coupon_id = null; + $chargeData = array( + 'source_id' => $card->token, + 'method' => 'card', + 'amount' => ($request->amount < 150 ? 150 : $request->amount), + 'description' => ('Contrato del usuario: ' . $user->name . ' del servicio ' . $category->name . ' realizado por el proveedor: ' . $supplier->company_name), + 'device_session_id' => $request->device_id, + 'cvv2' => $request->code + ); + } + + $customer = $openpay->customers->get($user->openpay_id); + $charge = $customer->charges->create($chargeData); + + $extra->transaction_id = $charge->id; + $extra->status_id = 3; + $extra->parent_contract_id = $fcontract->id; + $extra->save(); + + if ($coupon) { + $coupon->limit = $coupon->limit - 1; + $coupon->save(); + } + + return response()->json([ + 'message' => 'extra_added' + ]); + + } + } + + } + + public function getfinishedcontracts(Request $request) { + $user = Auth::user(); + $fcontracts = FinishedContracts::where('user_id', $user->id)->orderBy('created_at', 'DESC')->get(); + $finishedcontracts = array(); + + foreach($fcontracts as $fcontract) { + $category = Categories::where('id', $fcontract->category_id)->first(); + $supplier = Suppliers::where('id', $fcontract->supplier_id)->first(); + $time_limit = Carbon::parse($fcontract->appointment); + $day_limit = Carbon::parse($fcontract->created_at); + $finishedcontractinfo = array( + 'id' => $fcontract->id, + 'category' => $category->name, + 'en_category' => $category->en_name, + 'address' => $fcontract->address, + 'date' => $fcontract->appointment, + 'date_difference' => $time_limit->diff(Carbon::now(), false)->days, + 'supplier' => $supplier->company_name, + 'amount' => $fcontract->amount, + 'scored' => $fcontract->scored_at, + 'parent' => $fcontract->parent_contract_id, + 'status' => $fcontract->status->name + ); + $finishedcontracts[] = $finishedcontractinfo; + } + + return response()->json($finishedcontracts); + } + + public function reviewcontract(Request $request) { + + $rules = [ + 'contract_id' => 'required|numeric', + 'rate' => 'required|numeric', + 'comment' => 'string', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + $user = Auth::user(); + $fcontract = FinishedContracts::where('id', $request->contract_id)->first(); + + if ($fcontract->user_id == $user->id) { + $fcontract->score = $fcontract->score - (5 - $request->rate); + $fcontract->scored_at = Carbon::now(); + $fcontract->comments = strip_tags($request->comment); + $fcontract->save(); + + $supplier = Suppliers::where('id', $fcontract->supplier_id)->first(); + $supplier->total_score = $supplier->total_score - (5 - $request->rate); + $supplier->save(); + } + } + return response()->json([ + 'message' => 'Calificación registrada con éxito, muchas gracias' + ]); + } + + public function deletemissed() + { + $contracts = CurrentContracts::whereDate('appointment', '<', Carbon::now())->delete(); + } + + public function currentdestroy($id) + { + CurrentContracts::destroy($id); + return redirect('currentcontracts'); + } + + public function finisheddestroy($id) + { + FinishedContracts::destroy($id); + return redirect('finishedcontracts'); + } +} diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php new file mode 100644 index 0000000..03e02a2 --- /dev/null +++ b/app/Http/Controllers/Controller.php @@ -0,0 +1,13 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $coupons = new Coupon(); + $coupons = $coupons->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('name', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('percentage', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('amount', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('limit', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('coupons.index', compact('coupons')); + } else { + return view('coupons.ajax', compact('coupons')); + } + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create(Request $request) + { + // + if ($request->isMethod('get')) + return view('coupons.form'); + + $rules = [ + 'name' => 'required|string', + 'percentage' => 'nullable|numeric', + 'amount' => 'nullable|numeric', + 'limit' => 'nullable|numeric', + ]; + + $messages = [ + 'name.required' => 'Se requiere un nombre de cupon', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $coupon = new Coupon(); + $coupon->name = strip_tags($request->name); + $coupon->percentage = $request->percentage; + $coupon->amount = $request->amount; + $coupon->limit = $request->limit; + $coupon->save(); + + return redirect('coupons'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param \App\Models\Coupon $coupon + * @return \Illuminate\Http\Response + */ + public function show(Coupon $coupon) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param \App\Models\Coupon $coupon + * @return \Illuminate\Http\Response + */ + public function edit(Coupon $coupon) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param \App\Models\Coupon $coupon + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + if ($request->isMethod('get')) + return view('coupons.form', ['coupon' => Coupon::find($id)]); + + $rules = [ + 'name' => 'required|string', + 'percentage' => 'nullable|numeric', + 'amount' => 'nullable|numeric', + 'limit' => 'nullable|numeric', + ]; + + $messages = [ + 'name.required' => 'Se requiere un nombre de cupon', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $coupon = Coupon::find($id); + $coupon->name = strip_tags($request->name); + $coupon->percentage = $request->percentage; + $coupon->amount = $request->amount; + $coupon->limit = $request->limit; + $coupon->save(); + + return redirect('coupons'); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\Models\Coupon $coupon + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + // + Coupon::destroy($id); + return redirect('coupons'); + } +} diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php new file mode 100644 index 0000000..7cbc2c3 --- /dev/null +++ b/app/Http/Controllers/HomeController.php @@ -0,0 +1,28 @@ +middleware('auth'); + } + + /** + * Show the application dashboard. + * + * @return \Illuminate\Contracts\Support\Renderable + */ + public function index() + { + return view('home'); + } +} diff --git a/app/Http/Controllers/IChambaParameterController.php b/app/Http/Controllers/IChambaParameterController.php new file mode 100644 index 0000000..e95461f --- /dev/null +++ b/app/Http/Controllers/IChambaParameterController.php @@ -0,0 +1,179 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $ichambaparameters = new iChambaParameter(); + $ichambaparameters = $ichambaparameters->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('parameter', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('num_value', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('string_value', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('parameters.index', compact('ichambaparameters')); + } else { + return view('parameters.ajax', compact('ichambaparameters')); + } + + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create(Request $request) + { + // + if ($request->isMethod('get')) + return view('parameters.form'); + + $rules = [ + 'parameter' => 'required|string', + 'num_value' => 'nullable|numeric', + 'string_value' => 'nullable|string', + ]; + + $messages = [ + 'parameter.required' => 'Se requiere un nombre de parametro', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $ichambaparameter = new iChambaParameter(); + $ichambaparameter->parameter = strip_tags($request->parameter); + $ichambaparameter->num_value = $request->num_value; + $ichambaparameter->string_value = strip_tags($request->string_value); + $ichambaparameter->save(); + + return redirect('parameters'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param \App\iChambaParameter $iChambaParameter + * @return \Illuminate\Http\Response + */ + public function show(iChambaParameter $iChambaParameter) + { + // + } + + public function parameters() + { + // + $ichambaparameters = new iChambaParameter(); + $min_time = $ichambaparameters->where('parameter', 'min_time')->first()->num_value; + $max_time = $ichambaparameters->where('parameter', 'max_time')->first()->num_value; + + return response()->json([ + 'min_time' => $min_time, + 'max_time' => $max_time + ]); + } + + /** + * Show the form for editing the specified resource. + * + * @param \App\iChambaParameter $iChambaParameter + * @return \Illuminate\Http\Response + */ + public function edit(iChambaParameter $iChambaParameter) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param \App\iChambaParameter $iChambaParameter + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + if ($request->isMethod('get')) + return view('parameters.form', ['ichambaparameter' => iChambaParameter::find($id)]); + + $rules = [ + 'parameter' => 'required|string', + 'num_value' => 'nullable|numeric', + 'string_value' => 'nullable|string', + ]; + + $messages = [ + 'parameter.required' => 'Se requiere un nombre de parametro', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $ichambaparameter = iChambaParameter::find($id); + $ichambaparameter->parameter = strip_tags($request->parameter); + $ichambaparameter->num_value = $request->num_value; + $ichambaparameter->string_value = strip_tags($request->string_value); + $ichambaparameter->save(); + + return redirect('parameters'); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\iChambaParameter $iChambaParameter + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + // + iChambaParameter::destroy($id); + return redirect('parameters'); + } +} diff --git a/app/Http/Controllers/NoHomeController.php b/app/Http/Controllers/NoHomeController.php new file mode 100644 index 0000000..c9ad01a --- /dev/null +++ b/app/Http/Controllers/NoHomeController.php @@ -0,0 +1,254 @@ + 'required|numeric', + 'description' => 'required|string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + //'house_photo' => 'image|mimes:jpeg,jpg,png|max:2048', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return response()->json([ + 'message' => 'Por favor corrija' + ]); + } else { + $user = Auth::user(); + $disk = Storage::disk('gcs'); + + if ($request->file('house_photo')) { + $name = Carbon::now(); + $filename = $name . '.jpg'; + $disk->putFileAs('img/users/'. $user->id . '/', $request->file('house_photo'), $filename, 'public'); + } + return response()->json([ + //'message' => 'Por favor espere a los 10 minutos de tolerancia de la hora acordada' + 'contract_id' => $request->contract_id, + 'lat' => $request->lat, + 'lng' => $request->lng, + ]); + } + } + + public function nohomecheck(Request $request){ + $user = Auth::user(); + $contract = CurrentContracts::where('supplier_id', $user->suppliers->id)->whereBetween('appointment', [Carbon::now()->subMinutes(15), Carbon::now()->addMinutes(10)])->first(); + + if ($contract) { + $client = User::where('id', $contract->user_id)->first(); + if (Carbon::now()->diffInMinutes($contract->appointment, false) < 10) { + return response()->json($contract); + } else { + OneSignal::sendNotificationUsingTags( + "El proveedor para el servicio en " . $contract->address . " ha llegado. Dírigeta a la sección de contratos confirmados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $client->id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = $client->name + ", tu proveedor del servicio ha llegado" + ); + return response()->json([ + //'message' => 'Por favor espere a los 10 minutos de tolerancia de la hora acordada' + 'message' => 'wait' + ]); + } + } else { + return response()->json([ + //'message' => 'No hay contratos citados a esta hora' + 'message' => 'no-contract' + ]); + } + } + + + public function nohomeconfirm(Request $request) { + + $rules = [ + 'contract_id' => 'required|numeric', + 'description' => 'required|string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + //'house_photo' => 'image|mimes:jpeg,jpg,png|max:2048', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $disk = Storage::disk('gcs'); + $ccontract = CurrentContracts::where('id', $request->contract_id)->first(); + $client = User::where('id', $ccontract->user_id)->first(); + + if ($user->suppliers->id == $ccontract->supplier_id) { + if (Carbon::now()->diffInMinutes($ccontract->appointment, false) >= 11) { + if ($request->lat != null && $request->lng != null) { + $geometry = new Point($request->lat, $request->lng); + } + + $fcontract = new FinishedContracts(); + $fcontract->user_id = $ccontract->user_id; + $fcontract->supplier_id = $ccontract->supplier_id; + $fcontract->category_id = $ccontract->category_id; + $fcontract->address = $ccontract->address; + $fcontract->location = $ccontract->location; + $fcontract->int_number = $ccontract->int_number; + $fcontract->references = $ccontract->references; + $fcontract->appointment = $ccontract->appointment; + $fcontract->amount = $ccontract->amount; + $fcontract->details = $ccontract->details; + $fcontract->IVA = $ccontract->IVA; + $fcontract->ISR = $ccontract->ISR; + $fcontract->ichamba_fee = $ccontract->ichamba_fee; + $fcontract->revenue = $ccontract->revenue; + $fcontract->details = $ccontract->details; + $fcontract->en = $ccontract->en; + $fcontract->transaction_id = $ccontract->transaction_id; + $fcontract->status_id = 5; + $fcontract->save(); + + $nohome = new NoHome(); + $nohome->contract_id = $fcontract->id; + if ($geometry != null) { + $nohome->location = $geometry; + } + + if ($request->file('house_photo')) { + $disk = Storage::disk('gcs'); + + $name = Carbon::now(); + $filename = $name . '.jpg'; + $disk->putFileAs('img/users/'. $user->id . '/', $request->file('house_photo'), $filename, 'public'); + $nohome->house_photo = $disk->url('img/users/'. $user->id . '/' . $filename); + } + $nohome->house_description = $request->description; + + $nohome->save(); + + + return response()->json([ + 'message' => 'Ausencia registrada con éxito, nos comunicaremos con usted por correo electrónico en caso de alguna circunstancia' + ]); + } else { + OneSignal::sendNotificationUsingTags( + "El proveedor para el servicio en " . $ccontract->address . " ha llegado. Dírigeta a la sección de contratos confirmados para más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $client->id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = $client->name . ", tu proveedor del servicio ha llegado" + ); + return response()->json([ + 'order' => 'wait', + 'message' => 'Por favor espere a los 10 minutos de tolerancia de la hora acordada' + ]); + } + } + } + } +} diff --git a/app/Http/Controllers/PaymentController.php b/app/Http/Controllers/PaymentController.php new file mode 100644 index 0000000..97311c6 --- /dev/null +++ b/app/Http/Controllers/PaymentController.php @@ -0,0 +1,381 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $payments = new FinishedContracts(); + $payments = $payments->where('status_id', 3)->where('paid', false)->where('transaction_id', '!=', 'NO APPLY') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('payments.index', compact('payments')); + } else { + return view('payments.ajax', compact('payments')); + } + + } + + public function cardsindex(Request $request) + { + // + $request->session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $cards= new Cards(); + $cards = $cards->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('token', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('cards.index', compact('cards')); + } else { + return view('cards.ajax', compact('cards')); + } + + } + + public function destroy($id) + { + $credit_card = Cards::where('id', $id)->first(); + $user = User::where('id', $credit_card->user_id)->first(); + Openpay::setProductionMode(true); + + try { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + $customer = $openpay->customers->get($user->openpay_id); + $card = $customer->cards->get($credit_card->token); + $card->delete(); + } catch (OpenpayApiTransactionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error en la transacción' + ]); + } catch (OpenpayApiRequestError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error en los datos requeridos' + ]); + } catch (OpenpayApiConnectionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + } catch (OpenpayApiAuthError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + } catch (Exception $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error: ' . $e->getMessage() + ]); + } + + Cards::destroy($id); + return redirect('cards'); + } + + public function addcard(Request $request) + { + $rules = [ + 'token' => 'required|string|regex:/(^[A-Za-z0-9 ]+$)+/', + 'device_id' => 'required|string|regex:/(^[A-Za-z0-9 ]+$)+/', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $user = $request->user(); + Openpay::setProductionMode(true); + + if ($user->openpay_id == null) { + try { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + $customerData = array( + 'external_id' => $user->id, + 'name' => $user->name, + 'email' => $user->email, + ); + $customer = $openpay->customers->add($customerData); + } catch (OpenpayApiTransactionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la transacción' + ]); + } catch (OpenpayApiRequestError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la operación' + ]); + } catch (OpenpayApiConnectionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiAuthError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + } catch (Exception $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error: ' . $e->getMessage() + ]); + } + + $user->openpay_id = $customer->id; + $user->save(); + + } + + + $cardDataRequest = array( + 'token_id' => $request->token, + 'device_session_id' => $request->device_id + ); + + try { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + $customer = $openpay->customers->get($user->openpay_id); + $card = $customer->cards->add($cardDataRequest); + + } catch (OpenpayApiTransactionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la transacción' + ]); + } catch (OpenpayApiRequestError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la operación' + ]); + } catch (OpenpayApiConnectionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiAuthError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + } catch (Exception $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error: ' . $e->getMessage() + ]); + } + + $card = new Cards(); + + $card->user_id = $user->id; + $card->token = $request->token; + + $card->save(); + + return response()->json([ + 'message' => 'Tarjeta guardada exitosamente' + ]); + } + + public function deletecard(Request $request) + { + $rules = [ + 'card_id' => 'required|numeric', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $user = $request->user(); + $credit_card = Cards::where('id', $request->card_id)->first(); + Openpay::setProductionMode(true); + + + if ($credit_card->user_id == $user->id) { + try { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + $customer = $openpay->customers->get($user->openpay_id); + $card = $customer->cards->get($credit_card->token); + $card->delete(); + } catch (OpenpayApiTransactionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la transacción' + ]); + } catch (OpenpayApiRequestError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la operación' + ]); + } catch (OpenpayApiConnectionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiAuthError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + } catch (Exception $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error: ' . $e->getMessage() + ]); + } + + Cards::destroy($request->card_id); + + return response()->json([ + 'message' => 'Tarjeta eliminada exitosamente' + ]); + } + } + + public function getcards(Request $request) + { + $user = $request->user(); + Openpay::setProductionMode(true); + + if ($user->openpay_id) { + try { + $openpay = Openpay::getInstance(config('app.openpay_id'), config('app.openpay_apikey')); + $customer = $openpay->customers->get($user->openpay_id); + } catch (OpenpayApiTransactionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la transacción' + ]); + } catch (OpenpayApiRequestError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'No se pudo procesar la operación' + ]); + } catch (OpenpayApiConnectionError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiAuthError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + + } catch (OpenpayApiError $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error al conectarse a Openpay: ' . $e->getMessage() + ]); + } catch (Exception $e) { + return response()->json([ + 'type' => 'error', + 'message' => 'Error: ' . $e->getMessage() + ]); + } + + $cards = Cards::where('user_id', $user->id)->get(); + + $cardsinfo = array(); + + foreach ($cards as $credit_card) { + $card = $customer->cards->get($credit_card->token); + $cardinfo = array( + 'id' => $credit_card->id, + 'brand' => $card->brand, + 'card_number' => $card->card_number, + ); + $cardsinfo[] = $cardinfo; + } + return response()->json($cardsinfo); + } + } + +} diff --git a/app/Http/Controllers/PostulationController.php b/app/Http/Controllers/PostulationController.php new file mode 100644 index 0000000..5aa2316 --- /dev/null +++ b/app/Http/Controllers/PostulationController.php @@ -0,0 +1,370 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $postulations = new Postulations(); + $postulations = $postulations->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('user_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('address', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('amount', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('postulations.index', compact('postulations')); + } else { + return view('postulations.ajax', compact('postulations')); + } + + } + + public function map(Request $request) + { + // + $request->session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $postulations = new Postulations(); + $postulations = $postulations->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('user_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('address', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('amount', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + return view('postulations.map', compact('postulations')); + + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create(Request $request) { + + $rules = [ + 'category' => 'required|string', + 'address' => 'required|string', + 'int_number' => 'numeric|nullable', + 'references' => 'string|nullable', + 'setdate' => 'required|string', + 'sethour' => 'required|string', + 'details' => 'string|nullable', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return response()->json($validator->messages()); + } else { + + $user = Auth::user(); + $geometry = new Point($request->lat, $request->lng); + $category = Categories::where('name', strip_tags($request->category))->orwhere('en_name', strip_tags($request->category))->first(); + + $distance = 0.5; + $suppliers = Suppliers::distance('location', $geometry, $distance)->get(); + + if ($suppliers != '[]') { + + $postulation = new Postulations(); + $postulation->user_id = $user->id; + $postulation->category_id = $category->id; + $postulation->address = strip_tags($request->address); + $postulation->location = $geometry; + $postulation->int_number = $request->int_number; + $postulation->references = preg_replace('/\d+/', '', strip_tags($request->references)); + $timeoffset = str_replace("0", "", substr(substr(strip_tags($request->sethour), 23), 0, 3)); + $postulation->appointment = Carbon::createFromFormat('Y-m-d H:i:s', (substr(strip_tags($request->setdate), 0, 10) . ' ' . substr(substr(strip_tags($request->sethour), 11), 0, 8)), $timeoffset)->tz('UTC'); + $postulation->amount = 5000; + $postulation->details = preg_replace('/\d+/', '', strip_tags($request->details)); + $postulation->save(); + + OneSignal::sendNotificationUsingTags( + "Coméntele al Ing. que hay una postulación", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => "128"] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = "Admin: hay nueva postulación" + ); + + foreach ($suppliers as $supplier) { + if (in_array($category->id, $supplier->categories->pluck('id')->toArray())) { + OneSignal::sendNotificationUsingTags( + "Dirígete a la sección de postulaciones en la app para ver más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = "Proveedor: hay nueva postulación" + ); + } + } + + $minutes = intval(substr(substr($request->setdate, 14), 0, 2) + 15); + $hours = intval(substr(substr($request->setdate, 11), 0, 2) + 1); + + if ($minutes > 59) { + if ($hours > 23){ + $delay_msg = Carbon::now()->addDays(1)->toDateString() . ' ' . ($hours - 24) . ':' . ($minutes - 60) . substr(substr($request->setdate, 16), 0, 3); + } else { + $delay_msg = substr($request->sethour, 0, 10) . ' ' . $hours . ':' . ($minutes - 60) . substr(substr($request->setdate, 16), 0, 3); + } + } else { + $delay_msg = substr($request->sethour, 0, 10) . ' ' . $hours . ':' . $minutes . substr(substr($request->setdate, 16), 0, 3); + } + + $delay_UTC = Carbon::now()->addMinutes(15)->toString(); + + OneSignal::sendNotificationUsingTags( + "Dirígete a la sección de contratos en la app para ver más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $user->id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = $delay_UTC, + $headings = "Búsqueda Finalizada" + ); + + return response()->json([ + 'message' => 'Servicio solicitado, espere a que un proveedor se postule' + ]); + } else { + return response()->json([ + 'message' => 'No Provider' + ]); + } + } + } + + public function postulate(Request $request) { + + $rules = [ + 'postulation_id' => 'required|numeric', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $postulation = Postulations::where('id', $request->postulation_id)->first(); + $time_created = Carbon::parse($postulation->created_at); + $time_limit = (9900 - Carbon::now()->diffInMinutes($time_created)); + $supplier = Suppliers::where('user_id', $user->id)->first(); + + if ($time_limit > 0) { + if (in_array($postulation->category_id, $supplier->categories->pluck('id')->toArray())) { + if($supplier->membership == 1) { + OneSignal::sendNotificationUsingTags( + "Dirígete a la sección de contratos en la app para ver más detalles", + array( + ["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $postulation->user_id] + ), + $url = null, + $data = null, + $buttons = null, + $schedule = null, + $headings = "Un proveedor certificado se ha postulado" + ); + } + + $supplier->postulations()->attach($request->postulation_id); + $supplier->save(); + + return response()->json([ + 'message' => 'Se ha postulado al servicio exitosamente' + ]); + } + + } else { + return response()->json([ + 'message' => 'La postulación ha caducado' + ]); + } + } + } + + public function getpendingcontracts(Request $request) { + $user = Auth::user(); + $postulations = Postulations::where('user_id', $user->id)->orderBy('created_at', 'DESC')->get(); + $pendingcontracts = array(); + + foreach($postulations as $postulation) { + $time_limit = Carbon::parse($postulation->appointment); + if ($time_limit->diffInMinutes(Carbon::now(), false) <= -60) { + $category = Categories::where('id', $postulation->category_id)->first(); + $pendingcontractinfo = array( + 'id' => $postulation->id, + 'category' => $category->name, + 'en_category' => $category->en_name, + 'address' => $postulation->address, + 'date' => $postulation->appointment, + 'amount' => $postulation->amount + ); + $pendingcontracts[] = $pendingcontractinfo; + } + } + + return response()->json($pendingcontracts); + } + + public function getfinishedpostulations(Request $request) { + $user = Auth::user(); + $postulations = FinishedContracts::where('supplier_id', $user->suppliers->id)->orderBy('created_at', 'DESC')->get(); + $finishedpostulations = array(); + + foreach($postulations as $postulation) { + $time_limit = Carbon::parse($postulation->appointment); + $category = Categories::where('id', $postulation->category_id)->first(); + $finishedpostulationinfo = array( + 'id' => $postulation->id, + 'category' => $category->name, + 'en_category' => $category->en_name, + 'address' => $postulation->address, + 'date' => $postulation->appointment, + 'amount' => $postulation->amount + ); + $finishedpostulations[] = $finishedpostulationinfo; + } + + return response()->json($finishedpostulations); + } + + public function getpostulants(Request $request) { + + $rules = [ + 'postulation_id' => 'required|numeric', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $postulation = Postulations::where('id', $request->postulation_id)->first(); + + if ($postulation->user_id == $user->id) { + $category = Categories::where('id', $postulation->category_id)->first(); + $suppliers = Suppliers::whereHas('postulations', function($q) use ($request) { + $q->where('postulations_id', $request->postulation_id); + })->get(); + + $pcontractsuppliers = array(); + + if ($suppliers != '[]') { + foreach($suppliers as $supplier) { + $pcontractsupplier = array( + 'id' => $postulation->id, + 'category' => $category->name, + 'en_category' => $category->en_name, + 'address' => $postulation->address, + 'date' => $postulation->appointment, + 'amount' => $postulation->amount, + 'supplier_id' => $supplier->id, + 'supplier' => $supplier->company_name, + 'tags' => $supplier->tags, + 'cover_photo' => $supplier->cover_photo, + 'membership' => $supplier->membership, + 'fee' => $supplier->minimun_fee, + 'score' => round($supplier->total_score/$supplier->finished_jobs, 1), + ); + $pcontractsuppliers[] = $pcontractsupplier; + } + + $pcontractsuppliercollection = collect($pcontractsuppliers)->sortByDesc('membership')->sortByDesc('score'); + $pcontractsupplier = $pcontractsuppliercollection->values()->all(); + + } else { + $pcontractsupplier = array( + 'id' => $postulation->id, + 'category' => $category->name, + 'en_category' => $category->en_name, + 'address' => $postulation->address, + 'date' => $postulation->appointment, + 'amount' => $postulation->amount, + 'supplier_id' => null, + 'supplier' => null, + 'tags' => null, + 'cover_photo' => null, + 'membership' => null, + 'fee' => null, + 'score' => null, + ); + + $pcontractsuppliers[] = $pcontractsupplier; + $pcontractsupplier = $pcontractsuppliers; + } + return response()->json($pcontractsupplier); + } + } + } + + public function deleteexpired() + { + $postulations = Postulations::whereDate('appointment', '<', Carbon::now())->delete(); + } + + public function destroy($id) + { + Postulations::destroy($id); + return redirect('postulations'); + } + +} diff --git a/app/Http/Controllers/ReportCommentController.php b/app/Http/Controllers/ReportCommentController.php new file mode 100644 index 0000000..8aef02b --- /dev/null +++ b/app/Http/Controllers/ReportCommentController.php @@ -0,0 +1,112 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $contract = FinishedContracts::where('id', $contract_id)->first(); + $nohome = NoHome::where('contract_id', $contract_id)->first(); + $comments = new ReportComment(); + $comments = $comments->where('report_id', $id) + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->isMethod('get')) + return view('reports.comments', compact('comments', 'contract', 'nohome')); + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param \App\ReportComment $reportComment + * @return \Illuminate\Http\Response + */ + public function show(ReportComment $reportComment) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param \App\ReportComment $reportComment + * @return \Illuminate\Http\Response + */ + public function edit(ReportComment $reportComment) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param \App\ReportComment $reportComment + * @return \Illuminate\Http\Response + */ + public function update(Request $request, ReportComment $reportComment) + { + // + } + + /** + * Remove the specified resource from storage. + * + * @param \App\ReportComment $reportComment + * @return \Illuminate\Http\Response + */ + public function destroy($id, $contract_id) + { + // + ReportComment::destroy($id); + return redirect('reports/comments/'.$id.'/'.$contract_id); + } +} diff --git a/app/Http/Controllers/ReportController.php b/app/Http/Controllers/ReportController.php new file mode 100644 index 0000000..498d876 --- /dev/null +++ b/app/Http/Controllers/ReportController.php @@ -0,0 +1,183 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $reports = new Report(); + $reports = $reports->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('contract_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('moderator_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('veredict', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('reports.index', compact('reports')); + } else { + return view('reports.ajax', compact('reports')); + } + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param \App\Report $report + * @return \Illuminate\Http\Response + */ + public function show(Report $report) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param \App\Report $report + * @return \Illuminate\Http\Response + */ + public function veredict(Request $request, $id) + { + // + if ($request->isMethod('get')) + return view('reports.veredict', ['report' => Report::find($id)]); + + $rules = [ + 'veredict' => 'required|string', + ]; + + $messages = [ + 'veredict.required' => 'Se requiere un veredicto', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $report = Report::find($id); + $report->veredict = strip_tags($request->veredict); + $coupon->save(); + + return redirect('reports'); + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param \App\Report $report + * @return \Illuminate\Http\Response + */ + public function update(Request $request, Report $report) + { + // + } + + /** + * Remove the specified resource from storage. + * + * @param \App\Report $report + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + // + Report::destroy($id); + return redirect('reports'); + } + + public function report(Request $request) { + + $rules = [ + 'contract_id' => 'required|numeric', + 'comment' => 'required|string', + ]; + + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } else { + + $user = Auth::user(); + $contract = FinishedContracts::where('id', $request->contract_id)->first(); + + if ($user->id == $contract->user_id) { + $report = new Report(); + $report->contract_id = $contract->id; + + $moderator = User::where('role_id', 5)->get(); + if ($moderator != '[]') { + $report->moderator_id = $moderator->random()->id; + } else { + $report->moderator_id = User::where('role_id', 7)->first()->id; + } + $report->save(); + + $reportcomment = new ReportComment(); + $reportcomment->report_id = $report->id; + $reportcomment->user_id = $user->id; + $reportcomment->comment = strip_tags($request->comment); + $reportcomment->save(); + + $contract->status_id = 6; + $contract->save(); + + return response()->json([ + 'message' => 'Reporte registrado con éxito, nos comunicaremos con usted por correo electrónico a la brevedad para continuar con el caso' + ]); + } + } + } +} diff --git a/app/Http/Controllers/StatusController.php b/app/Http/Controllers/StatusController.php new file mode 100644 index 0000000..b0ea976 --- /dev/null +++ b/app/Http/Controllers/StatusController.php @@ -0,0 +1,151 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $status = new Status(); + $status = $status->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('name', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('status.index', compact('status')); + } else { + return view('status.ajax', compact('status')); + } + + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create(Request $request) + { + // + if ($request->isMethod('get')) + return view('status.form'); + + $rules = [ + 'name' => 'required|string', + ]; + + $messages = [ + 'name.required' => 'Se requiere el nombre del status', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $status = new Status(); + $status->name = strip_tags($request->name); + $status->save(); + + return redirect('status'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + if ($request->isMethod('get')) + return view('status.form',['status' => Status::find($id)]); + + $rules = [ + 'name' => 'required|string', + ]; + + $messages = [ + 'name.required' => 'Se requiere el nombre del status', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $status = Status::find($id); + $status->name = strip_tags($request->name); + $status->save(); + + return redirect('status'); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + Status::destroy($id); + return redirect('status'); + } +} diff --git a/app/Http/Controllers/SupplierController.php b/app/Http/Controllers/SupplierController.php new file mode 100644 index 0000000..af9179f --- /dev/null +++ b/app/Http/Controllers/SupplierController.php @@ -0,0 +1,1273 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $suppliers = new Suppliers(); + $suppliers = $suppliers->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('user_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('company_name', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('tags', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('RFC', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('CURP', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('regimen', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('supplier.index', compact('suppliers')); + } else { + return view('supplier.ajax', compact('suppliers')); + } + + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create(Request $request, $id) + { + // + $user = Auth::user(); + $banks = Banks::pluck('name', 'id'); + $disk = Storage::disk('gcs'); + $categories_check = Suppliers::where('user_id', $id)->first(); + if (isset($categories_check)) { + $categories_names = $categories_check->categories->pluck('name'); + } + else { + $categories_names = null; + } + + if ($request->isMethod('get')) + return view('supplier.form', ['supplier' => Suppliers::where('user_id', $id)->first()], compact('banks','categories_names')); + + + $supplier = Suppliers::where('user_id', $id)->first(); + if ($supplier) { + if ($supplier->location !=null) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'minimun_fee' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + 'references_options' => 'required|numeric', + 'references' => 'nullable|string', + ]; + if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'unique:suppliers|nullable|string|size:18', + 'RFC' => 'string|size:14|nullable', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'string|size:18|nullable', + 'RFC' => 'unique:suppliers|nullable|string|size:13', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } + } + } else { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'minimun_fee' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + 'references_options' => 'required|numeric', + 'references' => 'nullable|string', + ]; + if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'unique:suppliers|nullable|string|size:18', + 'RFC' => 'string|size:14|nullable', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'string|size:18|nullable', + 'RFC' => 'unique:suppliers|nullable|string|size:13', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } + } + + $messages = [ + 'company_name.required' => 'Se requiere el nombre de la empresa', + 'cover_photo.required' => 'Se requiere una foto de portada', + 'categories.required' => 'Se requiere una categoría', + 'tags.required' => 'Se requiere un tag', + 'RFC.required' => 'Se requiere un RFC', + 'CURP.required' => 'Se requiere un CURP', + 'RFC.unique' => 'RFC ya registrado', + 'CURP.unique' => 'CURP ya registrado', + 'RFC.size' => 'RFC no valido', + 'CURP.size' => 'CURP no valido', + 'taxes_id.required' => 'Se requiere un regimen fiscal', + 'clabe.required' => 'Se requiere una CLABE interbancaria', + 'minimun_fee.required' => 'Se requiere un monto mínimo a cobrar', + 'address.required' => 'Se requiere una dirección', + 'lat.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + 'lng.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $supplier = Suppliers::where('user_id', $id)->first(); + + if ($supplier) { + $supplier->user_id = $id; + $supplier->company_name = strip_tags($request->company_name); + if ($request->hasFile('cover_photo')){ + $image = $request->file('cover_photo'); + $filepath = public_path('img/users/'. $id); + /*if (!File::exists($filepath)) { + File::makeDirectory($filepath, 0775, true); + }*/ + $filename = time() . '.' . $image->getClientOriginalExtension(); + //Image::make($image)->resize(720, 480)->save( public_path('img/users/' . $id . '/' . $filename ) ); + if ($supplier->cover_photo) { + $disk->delete(str_replace('https://storage.googleapis.com/ichamba-1562349005909.appspot.com/', '', $supplier->cover_photo)); + } + $disk->putFileAs('img/users/'. $id . '/', $image, $filename, 'public'); + $supplier->cover_photo = $disk->url('img/users/'. $id . '/' . $filename); + $supplier->save(); + } else if(!$supplier->cover_photo) { + $supplier->cover_photo = asset('img/users/banner.png'); + } + $supplier->save(); + + $supplier->tags = str_replace(",", ", ", strip_tags($request->tags)); + $categories = explode(",", strip_tags($request->categories)); + $supplier->categories()->sync(null); + foreach ($categories as $category) { + $dbcategory = Categories::where('name', $category)->first(); + if(isset($dbcategory)){ + $supplier->categories()->attach($dbcategory); + $supplier->save(); + } + } + if ($request->RFC && $request->CURP) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } else if ($request->CURP) { + $supplier->CURP = strip_tags($request->CURP); + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } else if ($request->RFC) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } + $supplier->clabe = strip_tags($request->clabe); + $supplier->bank_id = $request->bank; + $supplier->regimen = $request->taxes_id; + + $supplier->minimun_fee = 150; + $supplier->address = strip_tags($request->address); + if ($request->lat != null && $request->lng != null) { + $point = new Point($request->lat, $request->lng); + $supplier->location = $point; + } + $supplier->save(); + } else { + $supplier = new Suppliers(); + $supplier->user_id = $id; + $supplier->company_name = strip_tags($request->company_name); + if ($request->hasFile('cover_photo')){ + $image = $request->file('cover_photo'); + $filepath = public_path('img/users/'. $id); + /*if (!File::exists($filepath)) { + File::makeDirectory($filepath, 0775, true); + }*/ + $filename = time() . '.' . $image->getClientOriginalExtension(); + //Image::make($image)->resize(720, 480)->save( public_path('img/users/' . $id . '/' . $filename ) ); + $disk->putFileAs('img/users/'. $id . '/', $image, $filename, 'public'); + $supplier->cover_photo = $disk->url('img/users/'. $id . '/' . $filename); + $supplier->save(); + } else if(!$supplier->cover_photo) { + $supplier->cover_photo = asset('img/users/banner.png'); + } + $supplier->save(); + + $supplier->tags = str_replace(",", ", ", strip_tags($request->tags)); + $categories = explode(",", strip_tags($request->categories)); + foreach ($categories as $category) { + $dbcategory = Categories::where('name', $category)->first(); + $supplier->categories()->attach($dbcategory); + $supplier->save(); + } + if ($request->RFC && $request->CURP) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } else if ($request->CURP) { + $supplier->CURP = strip_tags($request->CURP); + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } else if ($request->RFC) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } + + if (!$request->RFC && !$request->CURP) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } + + $supplier->clabe = $request->clabe; + $supplier->bank_id = $request->bank; + $supplier->regimen = $request->taxes_id; + + + $supplier->minimun_fee = 150; + $supplier->address = strip_tags($request->address); + if($request->references_options != 5) { + $supplier->references = strip_tags($request->references_options); + } else { + $supplier->references = strip_tags($request->references); + } + if ($request->lat != null && $request->lng != null) { + $point = new Point($request->lat, $request->lng); + $supplier->location = $point; + } + $supplier->save(); + } + + + return redirect('supplier'); + } + + public function hero(Request $request) + { + // + $user = Auth::user(); + $banks = Banks::pluck('name', 'id'); + $categories_check = Suppliers::where('user_id', $user->id)->first(); + if (isset($categories_check)) { + $categories_names = $categories_check->categories->pluck('name'); + } + else { + $categories_names = null; + } + + $supplier = Suppliers::where('user_id', $user->id)->first(); + if ($supplier) { + if ($supplier->location) { + $rules = [ + 'name' => 'required|string', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + 'reference_options' => 'required|numeric', + 'reference' => 'nullable|string', + ]; + /* if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + //'CURP' => 'required|unique:suppliers|string|size:18', + //'RFC' => 'string|size:14|nullable', + //'clabe' => 'string|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + //'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + //'CURP' => 'string|size:18|nullable', + //'RFC' => 'required|unique:suppliers|string|size:13', + //'clabe' => 'string|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + //'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } */ + } else { + $rules = [ + 'name' => 'required|string', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + 'reference_options' => 'required|numeric', + 'reference' => 'nullable|string', + ]; + } + } else { + $rules = [ + 'name' => 'required|string', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + 'reference_options' => 'required|numeric', + 'reference' => 'nullable|string', + ]; + /* if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + //'CURP' => 'required|unique:suppliers|string|size:18', + //'RFC' => 'string|size:14|nullable', + //'clabe' => 'string|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + //'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + //'CURP' => 'string|size:18|nullable', + //'RFC' => 'required|unique:suppliers|string|size:13', + //'clabe' => 'string|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + //'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } */ + + } + + $messages = [ + 'name.required' => 'Se requiere el nombre de la empresa', + 'categories.required' => 'Se requiere una categoría', + 'tags.required' => 'Se requiere un tag', + //'RFC.required' => 'Se requiere un RFC', + //'CURP.required' => 'Se requiere un CURP', + //'RFC.unique' => 'RFC ya registrado', + //'CURP.unique' => 'CURP ya registrado', + //'RFC.size' => 'RFC no valido', + //'CURP.size' => 'CURP no valido', + //'taxes_id.required' => 'Se requiere un regimen fiscal', + //'clabe.required' => 'Se requiere una CLABE interbancaria', + //'minimun_fee.required' => 'Se requiere un monto mínimo a cobrar', + 'address.required' => 'Se requiere una dirección', + 'lat.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + 'lng.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return response()->json($validator); + } + + $supplier = Suppliers::where('user_id', $user->id)->first(); + + if ($supplier) { + $supplier->user_id = $user->id; + $supplier->company_name = strip_tags($request->name); + $supplier->cover_photo = asset('img/users/banner.png'); + $supplier->save(); + + $supplier->tags = strip_tags($request->tags); + $categories = explode(",", strip_tags($request->categories)); + + $supplier->categories()->sync(null); + foreach ($categories as $category) { + $dbcategory = Categories::where('name', $category)->first(); + if(isset($dbcategory)){ + $supplier->categories()->attach($dbcategory); + $supplier->save(); + } + } + /* if ($request->RFC && $request->CURP) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } else if ($request->CURP) { + $supplier->CURP = strip_tags($request->CURP);*/ + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + /*} else if ($request->RFC) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } + $supplier->clabe = $request->clabe; + $supplier->bank_id = $request->bank; + $supplier->regimen = $request->taxes_id; + */ + + $supplier->minimun_fee = 150; + $supplier->address = strip_tags($request->address); + if($request->reference_options != 5) { + $supplier->references = strip_tags($request->reference_options); + } else { + $supplier->references = strip_tags($request->reference); + } + if ($request->lat != null && $request->lng != null) { + $point = new Point($request->lat, $request->lng); + $supplier->location = $point; + } + $supplier->save(); + + } else { + $supplier = new Suppliers(); + $supplier->user_id = $user->id; + $supplier->company_name = strip_tags($request->name); + $supplier->cover_photo = asset('img/users/banner.png'); + $supplier->save(); + + $supplier->tags = strip_tags($request->tags); + $categories = explode(",", strip_tags($request->categories)); + + foreach ($categories as $category) { + $dbcategory = Categories::where('name', $category)->first(); + if(isset($dbcategory)){ + $supplier->categories()->attach($dbcategory); + $supplier->save(); + } + } + /* if ($request->RFC && $request->CURP) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } else if ($request->CURP) { + $supplier->CURP = strip_tags($request->CURP); + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } else if ($request->RFC) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } + $supplier->clabe = $request->clabe; + $supplier->bank_id = $request->bank; + $supplier->regimen = $request->taxes_id; + */ + + $supplier->minimun_fee = 150; + $supplier->address = strip_tags($request->address); + if($request->reference_options != 5) { + $supplier->references = strip_tags($request->reference_options); + } else { + $supplier->references = strip_tags($request->reference); + } + if ($request->lat != null && $request->lng != null) { + $point = new Point($request->lat, $request->lng); + $supplier->location = $point; + } + $supplier->save(); + + $user->role_id = 2; + $user->save(); + } + + + return response()->json([ + 'message' => 'Listo, ¡ya eres un Héroe! Mantente al tanto al llamado de tus clientes' + ]); + } + + public function edit(Request $request) + { + // + $user = Auth::user(); + $banks = Banks::pluck('name', 'id'); + $disk = Storage::disk('gcs'); + $categories_check = Suppliers::where('user_id', $user->id)->first(); + if (isset($categories_check)) { + $categories_names = $categories_check->categories->pluck('name'); + } + else { + $categories_names = null; + } + + if ($request->isMethod('get')) + return view('supplier.form', ['supplier' => Suppliers::where('user_id', $user->id)->first()], compact('banks','categories_names')); + + + $supplier = Suppliers::where('user_id', $user->id)->first(); + if ($supplier) { + if ($supplier->location !=null) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'minimun_fee' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + 'references_options' => 'required|numeric', + 'references' => 'nullable|string', + ]; + if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'unique:suppliers|nullable|string|size:18', + 'RFC' => 'string|size:14|nullable', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'string|size:18|nullable', + 'RFC' => 'unique:suppliers|nullable|string|size:13', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } + } + } else { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'minimun_fee' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + 'references_options' => 'required|numeric', + 'references' => 'nullable|string', + ]; + if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'unique:suppliers|nullable|string|size:18', + 'RFC' => 'string|size:14|nullable', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'string|size:18|nullable', + 'RFC' => 'unique:suppliers|nullable|string|size:13', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } + } + + $messages = [ + 'company_name.required' => 'Se requiere el nombre de la empresa', + 'cover_photo.required' => 'Se requiere una foto de portada', + 'categories.required' => 'Se requiere una categoría', + 'tags.required' => 'Se requiere un tag', + 'RFC.required' => 'Se requiere un RFC', + 'CURP.required' => 'Se requiere un CURP', + 'RFC.unique' => 'RFC ya registrado', + 'CURP.unique' => 'CURP ya registrado', + 'RFC.size' => 'RFC no valido', + 'CURP.size' => 'CURP no valido', + 'taxes_id.required' => 'Se requiere un regimen fiscal', + 'clabe.required' => 'Se requiere una CLABE interbancaria', + 'minimun_fee.required' => 'Se requiere un monto mínimo a cobrar', + 'address.required' => 'Se requiere una dirección', + 'lat.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + 'lng.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $supplier = Suppliers::where('user_id', $user->id)->first(); + + if ($supplier) { + $supplier->user_id = $user->id; + $supplier->company_name = strip_tags($request->company_name); + if ($request->hasFile('cover_photo')){ + $image = $request->file('cover_photo'); + $filepath = public_path('img/users/'. $user->id); + /*if (!File::exists($filepath)) { + File::makeDirectory($filepath, 0775, true); + }*/ + $filename = time() . '.' . $image->getClientOriginalExtension(); + //Image::make($image)->resize(720, 480)->save( public_path('img/users/' . $id . '/' . $filename ) ); + if ($supplier->cover_photo) { + $disk->delete(str_replace('https://storage.googleapis.com/ichamba-1562349005909.appspot.com/', '', $supplier->cover_photo)); + } + $disk->putFileAs('img/users/'. $user->id . '/', $image, $filename, 'public'); + $supplier->cover_photo = $disk->url('img/users/'. $user->id . '/' . $filename); + $supplier->save(); + } else if(!$supplier->cover_photo) { + $supplier->cover_photo = asset('img/users/banner.png'); + } + $supplier->save(); + + $supplier->tags = str_replace(",", ", ", strip_tags($request->tags)); + $categories = explode(",", strip_tags($request->categories)); + + $supplier->categories()->sync(null); + foreach ($categories as $category) { + $dbcategory = Categories::where('name', $category)->first(); + if(isset($dbcategory)){ + $supplier->categories()->attach($dbcategory); + $supplier->save(); + } + } + + if ($request->RFC && $request->CURP) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } else if ($request->CURP) { + $supplier->CURP = strip_tags($request->CURP); + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } else if ($request->RFC) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } + + if (!$request->RFC && !$request->CURP) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } + + $supplier->clabe = strip_tags($request->clabe); + $supplier->bank_id = $request->bank; + $supplier->regimen = $request->taxes_id; + + + $supplier->minimun_fee = ($request->minimun_fee < 150 ? 150 : $request->minimun_fee); + $supplier->address = strip_tags($request->address); + if ($request->lat != null && $request->lng != null) { + $point = new Point($request->lat, $request->lng); + $supplier->location = $point; + } + $supplier->save(); + } else { + $supplier = new Suppliers(); + $supplier->user_id = $user->id; + $supplier->company_name = strip_tags($request->company_name); + if ($request->hasFile('cover_photo')){ + $image = $request->file('cover_photo'); + $filepath = public_path('img/users/'. $user->id); + /*if (!File::exists($filepath)) { + File::makeDirectory($filepath, 0775, true); + }*/ + $filename = time() . '.' . $image->getClientOriginalExtension(); + //Image::make($image)->resize(720, 480)->save( public_path('img/users/' . $id . '/' . $filename ) ); + $disk->putFileAs('img/users/'. $user->id . '/', $image, $filename, 'public'); + $supplier->cover_photo = $disk->url('img/users/'. $user->id . '/' . $filename); + $supplier->save(); + } else if(!$supplier->cover_photo) { + $supplier->cover_photo = asset('img/users/banner.png'); + } + $supplier->save(); + + $supplier->tags = str_replace(",", ", ", strip_tags($request->tags)); + $categories = explode(",", strip_tags($request->categories)); + + foreach ($categories as $category) { + $dbcategory = Categories::where('name', $category)->first(); + if(isset($dbcategory)){ + $supplier->categories()->attach($dbcategory); + $supplier->save(); + } + } + + if ($request->RFC && $request->CURP) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } else if ($request->CURP) { + $supplier->CURP = strip_tags($request->CURP); + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } else if ($request->RFC) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } + $supplier->clabe = $request->clabe; + $supplier->bank_id = $request->bank; + $supplier->regimen = $request->taxes_id; + + + $supplier->minimun_fee = ($request->minimun_fee < 150 ? 150 : $request->minimun_fee); + //$supplier->minimun_fee = 150; + $supplier->address = strip_tags($request->address); + if($request->references_options != 5) { + $supplier->references = strip_tags($request->references_options); + } else { + $supplier->references = strip_tags($request->references); + } + $supplier->location = new Point($request->lat, $request->lng); + $supplier->save(); + } + + $user->role_id = 2; + $user->save(); + + return redirect('home'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + $user = Auth::user(); + $banks = Banks::pluck('name', 'id'); + $categories_check = Suppliers::find($id); + $disk = Storage::disk('gcs'); + $categories_names = $categories_check->categories->pluck('name'); + $supplier = Suppliers::where('id', $id)->first(); + + if ($request->isMethod('get')) + return view('supplier.form', ['supplier' => Suppliers::find($id)], compact('banks','categories_names')); + + if ($supplier) { + if ($supplier->location !=null) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'minimun_fee' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + 'references_options' => 'required|numeric', + 'references' => 'nullable|string', + ]; + if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'unique:suppliers|nullable|string|size:18', + 'RFC' => 'string|size:14|nullable', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'string|size:18|nullable', + 'RFC' => 'unique:suppliers|nullable|string|size:13', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'string', + 'lat' => 'numeric|nullable', + 'lng' => 'numeric|nullable', + ]; + } + } + } else { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'nullable|string', + 'minimun_fee' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + 'references_options' => 'required|numeric', + 'references' => 'nullable|string', + ]; + if (empty($request->RFC)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'unique:suppliers|nullable|string|size:18', + 'RFC' => 'string|size:14|nullable', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } else if (empty($request->CURP)) { + $rules = [ + 'company_name' => 'required|string', + 'cover_photo' => 'required|mimetypes:image/jpeg,image/png,image/jpg|max:2048', + 'categories' => 'required|string', + 'tags' => 'required|string', + 'CURP' => 'string|size:18|nullable', + 'RFC' => 'unique:suppliers|nullable|string|size:13', + 'clabe' => 'string|nullable|regex:/(^[0-9 ]+$)+/', + 'bank' => 'required|numeric', + 'minimun_fee' => 'required|numeric', + 'taxes_id' => 'required|numeric', + 'address' => 'required|string', + 'lat' => 'required|numeric', + 'lng' => 'required|numeric', + ]; + } + } + + $messages = [ + 'company_name.required' => 'Se requiere el nombre de la empresa', + 'cover_photo.required' => 'Se requiere una foto de portada', + 'categories.required' => 'Se requiere una categoría', + 'tags.required' => 'Se requiere un tag', + 'RFC.required' => 'Se requiere un RFC', + 'CURP.required' => 'Se requiere un CURP', + 'RFC.unique' => 'RFC ya registrado', + 'CURP.unique' => 'CURP ya registrado', + 'RFC.size' => 'RFC no valido', + 'CURP.size' => 'CURP no valido', + 'taxes_id.required' => 'Se requiere un regimen fiscal', + 'clabe.required' => 'Se requiere una CLABE interbancaria', + 'minimun_fee.required' => 'Se requiere un monto mínimo a cobrar', + 'adress.required' => 'Se requiere una dirección', + 'lat.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + 'lng.required' => 'Se requiere una dirección válida, si ya hay una dirección escrita, favor de volverla a escribir', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $supplier->company_name = strip_tags($request->company_name); + if ($request->hasFile('cover_photo')){ + $image = $request->file('cover_photo'); + $filepath = public_path('img/users/'. $id); + /*if (!File::exists($filepath)) { + File::makeDirectory($filepath, 0775, true); + }*/ + $filename = time() . '.' . $image->getClientOriginalExtension(); + //Image::make($image)->resize(720, 480)->save( public_path('img/users/' . $id . '/' . $filename ) ); + if ($supplier->cover_photo) { + $disk->delete(str_replace('https://storage.googleapis.com/ichamba-1562349005909.appspot.com/', '', $supplier->cover_photo)); + } + $disk->putFileAs('img/users/'. $id . '/', $image, $filename, 'public'); + $supplier->cover_photo = $disk->url('img/users/'. $id . '/' . $filename); + $supplier->save(); + } else if(!$supplier->cover_photo) { + $supplier->cover_photo = asset('img/users/banner.png'); + } + $supplier->save(); + + $supplier->tags = str_replace(",", ", ", strip_tags($request->tags)); + $categories = explode(",", strip_tags($request->categories)); + + $supplier->categories()->sync(null); + foreach ($categories as $category) { + $dbcategory = Categories::where('name', $category)->first(); + if(isset($dbcategory)){ + $supplier->categories()->attach($dbcategory); + $supplier->save(); + } + } + if ($request->RFC && $request->CURP) { + $supplier->RFC = strip_tags($request->RFC); + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } else if ($request->CURP) { + $supplier->CURP = strip_tags($request->CURP); + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } else if ($request->RFC) { + if ($request->taxes_id == 1) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_fisica')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_fisica')->first()->id; + } else if ($request->taxes_id == 2) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_SAT_moral')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_SAT_moral')->first()->id; + } + } + + if (!$request->RFC && !$request->CURP) { + $supplier->IVA_id = iChambaParameter::where('parameter', 'IVA_NoSAT')->first()->id; + $supplier->ISR_id = iChambaParameter::where('parameter', 'ISR_NoSAT')->first()->id; + } + + $supplier->clabe = $request->clabe; + $supplier->bank_id = $request->bank; + $supplier->regimen = $request->taxes_id; + + + $supplier->minimun_fee = ($request->minimun_fee < 150 ? 150 : $request->minimun_fee); + $supplier->address = strip_tags($request->address); + if($request->references_options != 5) { + $supplier->references = strip_tags($request->references_options); + } else { + $supplier->references = strip_tags($request->references); + } + if ($request->lat != null && $request->lng != null) { + $point = new Point($request->lat, $request->lng); + $supplier->location = $point; + } + $supplier->save(); + + return redirect('supplier'); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + Suppliers::destroy($id); + return redirect('supplier'); + } + + public function certificate($id) + { + $supplier = Suppliers::where('id', $id)->first(); + + if ($supplier->membership == false) { + $supplier->membership = true; + } else { + $supplier->membership = false; + } + + $supplier->save(); + + return redirect('supplier'); + } + + public function check(Request $request) { + + $rules = [ + 'category' => 'required|string|regex:/(^[a-zA-Z\s ÑñÁáÉéÍíÓóÚúÜü]+$)+/', + ]; + $validator = Validator::make($request->all(), $rules); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $suppliers = Suppliers::whereHas('categories', function($q) use ($request){ + $q->where('name', $request->category)->orwhere('en_name', $request->category); + })->get(); + if ($suppliers != '[]') { + echo('true'); + } else { + return null; + } + } + + public function getpostulation(Request $request) { + + $user = Auth::user(); + $supplier = Suppliers::where('user_id', $user->id)->first(); + $distance = 0.5; + $postulations = Postulations::distance('location', $supplier->location, $distance)->orderBy('created_at', 'DESC')->get(); + + $postulationsinfo = array(); + + foreach ($postulations as $postulation) { + if (in_array($postulation->category_id, $supplier->categories->pluck('id')->toArray())) { + $category = Categories::where('id', $postulation->category_id)->first(); + $already_post = in_array($postulation->id, $supplier->postulations->pluck('id')->toArray()); + $time_limit = Carbon::parse($postulation->appointment); + if (Carbon::now()->diffInMinutes($time_limit, false) > 15) { + $postulationinfo = array( + 'id' => $postulation->id, + 'category' => $category->name, + 'address' => str_replace(' ' . $postulation->int_number, '', $postulation->address), + 'references' => $postulation->references, + 'date' => $postulation->appointment, + 'lat' => $postulation->location->getLat(), + 'lng' => $postulation->location->getLng(), + 'amount' => $postulation->amount, + 'details' => $postulation->details, + 'time_limit' => (Carbon::now()->diffInMinutes($time_limit) - 15), + 'already_post' => $already_post + ); + $postulationsinfo[] = $postulationinfo; + } + } + } + return response()->json($postulationsinfo); + } + + public function getcontractedpostulation(Request $request) { + + $user = Auth::user(); + $supplier = Suppliers::where('user_id', $user->id)->first(); + $contracts = CurrentContracts::where('supplier_id', $supplier->id)->orderBy('created_at', 'DESC')->get(); + + $contractsinfo = array(); + + foreach ($contracts as $contract) { + $category = Categories::where('id', $contract->category_id)->first(); + $contractinfo = array( + 'id' => $contract->id, + 'phone' => $contract->user->phone, + 'en_category' => $category->en_name, + 'category' => $category->name, + 'address' => $contract->address, + 'references' => $contract->references, + 'date' => $contract->appointment, + 'lat' => $contract->location->getLat(), + 'lng' => $contract->location->getLng(), + 'amount' => $contract->amount, + 'details' => $contract->details + ); + $contractsinfo[] = $contractinfo; + } + return response()->json($contractsinfo); + } + +} diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php new file mode 100644 index 0000000..04db833 --- /dev/null +++ b/app/Http/Controllers/UserController.php @@ -0,0 +1,147 @@ +session()->put('search', $request + ->has('search') ? strip_tags($request->get('search')) : ($request->session() + ->has('search') ? strip_tags($request->session()->get('search')) : '')); + + $request->session()->put('field', $request + ->has('field') ? strip_tags($request->get('field')) : ($request->session() + ->has('field') ? strip_tags($request->session()->get('field')) : 'id')); + + $request->session()->put('sort', $request + ->has('sort') ? strip_tags($request->get('sort')) : ($request->session() + ->has('sort') ? strip_tags($request->session()->get('sort')) : 'asc')); + + //$headers = $request->get('header') != '' ? $request->get('header') : -1; + + $users = new User(); + $users = $users->where('id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('name', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('email', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('role_id', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orwhere('phone', 'LIKE', '%' . strip_tags($request->session()->get('search')) . '%') + ->orderBy(strip_tags($request->session()->get('field')), strip_tags($request->session()->get('sort'))) + ->paginate(10); + + if ($request->ajax()) { + return view('users.index', compact('users')); + } else { + return view('users.ajax', compact('users')); + } + + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + if ($request->isMethod('get')) + return view('users.form',['user' => User::find($id)]); + + $rules = [ + 'name' => 'required|string', + 'email' => 'required|string|email', + 'role' => 'required|numeric', + 'openpay_id' => 'string|nullable', + ]; + + $messages = [ + 'name.required' => 'Se requiere un nombre de usuario', + 'email.required' => 'Se requiere un correo electrónico válido', + 'role.required' => 'Se requiere un rol', + ]; + + $validator = Validator::make($request->all(), $rules, $messages); + if ($validator->fails()) { + return redirect()->back()->withInput($request->all())->withErrors($validator); + } + + $user = User::find($id); + $user->name = strip_tags($request->name); + $user->email = $request->email; + $user->role_id = $request->role; + if ($request->openpay_id == "null" OR $request->openpay_id == null){ + $user->openpay_id = null; + } + $user->save(); + + return redirect('users'); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + User::destroy($id); + return redirect('users'); + } +} diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php new file mode 100644 index 0000000..5af4720 --- /dev/null +++ b/app/Http/Kernel.php @@ -0,0 +1,84 @@ + [ + \App\Http\Middleware\EncryptCookies::class, + \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, + \Illuminate\Session\Middleware\StartSession::class, + // \Illuminate\Session\Middleware\AuthenticateSession::class, + \Illuminate\View\Middleware\ShareErrorsFromSession::class, + \App\Http\Middleware\VerifyCsrfToken::class, + \Illuminate\Routing\Middleware\SubstituteBindings::class, + ], + + 'api' => [ + 'throttle:60,1', + 'bindings', + ], + ]; + + /** + * The application's route middleware. + * + * These middleware may be assigned to groups or used individually. + * + * @var array + */ + protected $routeMiddleware = [ + 'auth' => \App\Http\Middleware\Authenticate::class, + 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, + 'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class, + 'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class, + 'can' => \Illuminate\Auth\Middleware\Authorize::class, + 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, + 'rolecheck' => \App\Http\Middleware\RoleCheck::class, + 'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class, + 'superadmin' => \App\Http\Middleware\SuperAdmin::class, + 'appenginecron' => \App\Http\Middleware\AppEngineCron::class, + 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, + 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, + ]; + + /** + * The priority-sorted list of middleware. + * + * This forces non-global middleware to always be in the given order. + * + * @var array + */ + protected $middlewarePriority = [ + \Illuminate\Session\Middleware\StartSession::class, + \Illuminate\View\Middleware\ShareErrorsFromSession::class, + \App\Http\Middleware\Authenticate::class, + \Illuminate\Session\Middleware\AuthenticateSession::class, + \Illuminate\Routing\Middleware\SubstituteBindings::class, + \Illuminate\Auth\Middleware\Authorize::class, + ]; +} diff --git a/app/Http/Middleware/AppEngineCron.php b/app/Http/Middleware/AppEngineCron.php new file mode 100644 index 0000000..1bfe5b2 --- /dev/null +++ b/app/Http/Middleware/AppEngineCron.php @@ -0,0 +1,24 @@ +hasHeader('X-Appengine-Cron')) { + return response()->json(trans('auth.unauthorized'), 401); + } + + return $next($request); + } +} diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php new file mode 100644 index 0000000..a4be5c5 --- /dev/null +++ b/app/Http/Middleware/Authenticate.php @@ -0,0 +1,21 @@ +expectsJson()) { + return route('login'); + } + } +} diff --git a/app/Http/Middleware/CheckForMaintenanceMode.php b/app/Http/Middleware/CheckForMaintenanceMode.php new file mode 100644 index 0000000..35b9824 --- /dev/null +++ b/app/Http/Middleware/CheckForMaintenanceMode.php @@ -0,0 +1,17 @@ +server('HTTP_ORIGIN'), $allowedOrigins)) { + return $next($request) + ->header('Access-Control-Allow-Origin', $request->server('HTTP_ORIGIN')) + ->header('Access-Control-Allow-Methods', 'GET, POST, PUT, PATCH, DELETE, OPTIONS') + ->header('Access-Control-Allow-Headers', 'Content-Type, Authorization, X-Requested-With, X-XSRF-TOKEN'); + } + + return $next($request); + } +} diff --git a/app/Http/Middleware/EncryptCookies.php b/app/Http/Middleware/EncryptCookies.php new file mode 100644 index 0000000..033136a --- /dev/null +++ b/app/Http/Middleware/EncryptCookies.php @@ -0,0 +1,17 @@ +check()) { + return redirect('/home'); + } + + return $next($request); + } +} diff --git a/app/Http/Middleware/RoleCheck.php b/app/Http/Middleware/RoleCheck.php new file mode 100644 index 0000000..71a2838 --- /dev/null +++ b/app/Http/Middleware/RoleCheck.php @@ -0,0 +1,26 @@ +user()) { + if($request->user()->role_id == $role OR $request->user()->role_id >= 6) { + return $next($request); + } + } else { + return redirect('home'); + } + } +} diff --git a/app/Http/Middleware/SuperAdmin.php b/app/Http/Middleware/SuperAdmin.php new file mode 100644 index 0000000..c5f26db --- /dev/null +++ b/app/Http/Middleware/SuperAdmin.php @@ -0,0 +1,24 @@ +user()->role_id == 7) { + return $next($request); + } else { + return redirect('home'); + } + } +} diff --git a/app/Http/Middleware/TrimStrings.php b/app/Http/Middleware/TrimStrings.php new file mode 100644 index 0000000..5a50e7b --- /dev/null +++ b/app/Http/Middleware/TrimStrings.php @@ -0,0 +1,18 @@ +hasMany(Suppliers::class); + } +} diff --git a/app/Models/Cards.php b/app/Models/Cards.php new file mode 100644 index 0000000..da8b0ad --- /dev/null +++ b/app/Models/Cards.php @@ -0,0 +1,18 @@ +belongsTo(User::class); + } +} diff --git a/app/Models/Categories.php b/app/Models/Categories.php new file mode 100644 index 0000000..f47785e --- /dev/null +++ b/app/Models/Categories.php @@ -0,0 +1,40 @@ +hasMany(Suppliers::class); + } + + public function postulations() + { + return $this->hasMany(Postulations::class); + } + + public function currentcontracts() + { + return $this->hasMany(CurrentContracts::class); + } + + public function finishedcontracts() + { + return $this->hasMany(FinishedContracts::class); + } +} diff --git a/app/Models/Coupon.php b/app/Models/Coupon.php new file mode 100644 index 0000000..c3b1ba3 --- /dev/null +++ b/app/Models/Coupon.php @@ -0,0 +1,29 @@ +hasMany(CurrentContracts::class); + } + + public function finishedcontracts() + { + return $this->hasMany(FinishedContracts::class); + } +} diff --git a/app/Models/CurrentContracts.php b/app/Models/CurrentContracts.php new file mode 100644 index 0000000..4e6e61d --- /dev/null +++ b/app/Models/CurrentContracts.php @@ -0,0 +1,63 @@ +belongsTo(User::class); + } + + public function categories() + { + return $this->belongsTo('App\Models\Categories', 'category_id'); + } + + public function suppliers() + { + return $this->belongsTo('App\Models\Suppliers', 'supplier_id'); + } + + public function coupon() + { + return $this->belongsTo(Coupon::class); + } + + public function status() + { + return $this->belongsTo(Status::class); + } + +} diff --git a/app/Models/FinishedContracts.php b/app/Models/FinishedContracts.php new file mode 100644 index 0000000..49e4802 --- /dev/null +++ b/app/Models/FinishedContracts.php @@ -0,0 +1,82 @@ +belongsTo(User::class); + } + + public function categories() + { + return $this->belongsTo('App\Models\Categories', 'category_id'); + } + + public function suppliers() + { + return $this->belongsTo('App\Models\Suppliers', 'supplier_id'); + } + + public function coupon() + { + return $this->belongsTo(Coupon::class); + } + + public function status() + { + return $this->belongsTo(Status::class); + } + + public function payments() + { + return $this->hasOne(Payments::class); + } + + public function reports() + { + return $this->hasOne(Report::class); + } + + public function nohome() + { + return $this->hasOne(NoHome::class); + } + +} diff --git a/app/Models/LinkedSocialAccount.php b/app/Models/LinkedSocialAccount.php new file mode 100644 index 0000000..452cdf4 --- /dev/null +++ b/app/Models/LinkedSocialAccount.php @@ -0,0 +1,18 @@ +belongsTo(User::class); + } +} diff --git a/app/Models/Payments.php b/app/Models/Payments.php new file mode 100644 index 0000000..154d1ff --- /dev/null +++ b/app/Models/Payments.php @@ -0,0 +1,34 @@ +belongsTo(FinishedContracts::class); + } + + public function suppliers() + { + return $this->belongsTo(Suppliers::class); + } + + public function status() + { + return $this->belongsTo(Status::class); + } +} diff --git a/app/Models/Postulations.php b/app/Models/Postulations.php new file mode 100644 index 0000000..514ecac --- /dev/null +++ b/app/Models/Postulations.php @@ -0,0 +1,53 @@ +belongsTo(User::class); + } + + public function categories() + { + return $this->belongsTo('App\Models\Categories', 'category_id'); + } + + + public function suppliers() + { + return $this->hasMany(Suppliers::class); + } + + public function status() + { + return $this->belongsTo(Status::class); + } +} diff --git a/app/Models/Status.php b/app/Models/Status.php new file mode 100644 index 0000000..16350be --- /dev/null +++ b/app/Models/Status.php @@ -0,0 +1,32 @@ +hasMany(CurrentContracts::class); + } + + public function finishedcontracts() + { + return $this->hasMany(FinishedContracts::class); + } + public function payments() + { + return $this->hasMany(Payments::class); + } +} diff --git a/app/Models/Suppliers.php b/app/Models/Suppliers.php new file mode 100644 index 0000000..374997e --- /dev/null +++ b/app/Models/Suppliers.php @@ -0,0 +1,79 @@ +belongsTo(User::class); + } + + public function banks() + { + return $this->belongsTo('App\Models\Banks', 'bank_id'); + } + + public function categories() + { + return $this->belongsToMany(Categories::class); + } + + public function postulations() + { + return $this->belongsToMany(Postulations::class)->withTimestamps(); + } + + public function payments() + { + return $this->hasMany(Payments::class); + } + + public function currentcontracts() + { + return $this->hasMany(CurrentContracts::class); + } + + public function finishedcontracts() + { + return $this->hasMany(FinishedContracts::class); + } + + public function ichambaparameters() + { + return $this->belongsTo(iChambaParameter::class); + } +} diff --git a/app/NoHome.php b/app/NoHome.php new file mode 100644 index 0000000..2a057c9 --- /dev/null +++ b/app/NoHome.php @@ -0,0 +1,29 @@ +belongsTo(FinishedContracts::class); + } + +} diff --git a/app/Notifications/PasswordReset.php b/app/Notifications/PasswordReset.php new file mode 100644 index 0000000..8155738 --- /dev/null +++ b/app/Notifications/PasswordReset.php @@ -0,0 +1,56 @@ +token = $token; + } + + /** + * Get the notification's delivery channels. + * + * @param mixed $notifiable + * @return array + */ + public function via($notifiable) + { + return ['mail']; + } + + /** + * Build the mail representation of the notification. + * + * @param mixed $notifiable + * @return \Illuminate\Notifications\Messages\MailMessage + */ + public function toMail($notifiable) + { + return (new MailMessage) + ->subject('Restaurar contraseña') + ->line('Estás recibiendo este correo electrónico porque solicitaste una restauración de contraseña de tu cuenta en JobHero.') // Here are the lines you can safely override + ->action('Restaurar contraseña', url('password/reset', $this->token)) + ->line('Si no solicitaste una restauración de contraseña, favor de ignorar este mensaje.'); + } +} diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php new file mode 100644 index 0000000..f1ff3c4 --- /dev/null +++ b/app/Providers/AppServiceProvider.php @@ -0,0 +1,41 @@ + SocialUserResolver::class, + ]; + + /** + * Register any application services. + * + * @return void + */ + public function register() + { + // + } + + /** + * Bootstrap any application services. + * + * @return void + */ + public function boot() + { + Schema::defaultStringLength(191); + // + } +} diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php new file mode 100644 index 0000000..2b2cb09 --- /dev/null +++ b/app/Providers/AuthServiceProvider.php @@ -0,0 +1,32 @@ + 'App\Policies\ModelPolicy', + ]; + + /** + * Register any authentication / authorization services. + * + * @return void + */ + public function boot() + { + $this->registerPolicies(); + + Passport::routes(); + // + } +} diff --git a/app/Providers/BroadcastServiceProvider.php b/app/Providers/BroadcastServiceProvider.php new file mode 100644 index 0000000..352cce4 --- /dev/null +++ b/app/Providers/BroadcastServiceProvider.php @@ -0,0 +1,21 @@ + [ + SendEmailVerificationNotification::class, + ], + ]; + + /** + * Register any events for your application. + * + * @return void + */ + public function boot() + { + parent::boot(); + + // + } +} diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php new file mode 100644 index 0000000..5ea48d3 --- /dev/null +++ b/app/Providers/RouteServiceProvider.php @@ -0,0 +1,73 @@ +mapApiRoutes(); + + $this->mapWebRoutes(); + + // + } + + /** + * Define the "web" routes for the application. + * + * These routes all receive session state, CSRF protection, etc. + * + * @return void + */ + protected function mapWebRoutes() + { + Route::middleware('web') + ->namespace($this->namespace) + ->group(base_path('routes/web.php')); + } + + /** + * Define the "api" routes for the application. + * + * These routes are typically stateless. + * + * @return void + */ + protected function mapApiRoutes() + { + Route::prefix('api') + ->middleware('api') + ->namespace($this->namespace) + ->group(base_path('routes/api.php')); + } +} diff --git a/app/Report.php b/app/Report.php new file mode 100644 index 0000000..e41151e --- /dev/null +++ b/app/Report.php @@ -0,0 +1,34 @@ +belongsTo(FinishedContracts::class); + } + + public function user() + { + return $this->belongsTo('App\User', 'moderator_id'); + } + + public function reportcomments() + { + return $this->hasMany(ReportComment::class); + } +} diff --git a/app/ReportComment.php b/app/ReportComment.php new file mode 100644 index 0000000..8ccc73f --- /dev/null +++ b/app/ReportComment.php @@ -0,0 +1,29 @@ +belongsTo(Report::class); + } + + public function user() + { + return $this->belongsTo(User::class); + } + +} diff --git a/app/Role.php b/app/Role.php new file mode 100644 index 0000000..1cf4834 --- /dev/null +++ b/app/Role.php @@ -0,0 +1,19 @@ +hasMany(User::class); + } +} diff --git a/app/Services/SocialAccountsService.php b/app/Services/SocialAccountsService.php new file mode 100644 index 0000000..dbf41f5 --- /dev/null +++ b/app/Services/SocialAccountsService.php @@ -0,0 +1,48 @@ +where('provider_id', $providerUser->getId()) + ->first(); + if ($linkedSocialAccount) { + return $linkedSocialAccount->user; + } else { + $user = null; + if ($email = $providerUser->getEmail()) { + $user = User::where('email', $email)->first(); + } + if (! $user) { + $user = User::create([ + 'name' => $providerUser->getName(), + 'email' => $providerUser->getEmail(), + 'role_id' => '1', + 'social_id' => $providerUser->getId() . '_' . $provider, + ]); + $user->save(); + } + $user->linkedSocialAccounts()->create([ + 'provider_id' => $providerUser->getId(), + 'provider_name' => $provider, + ]); + return $user; + } + } +} diff --git a/app/Services/SocialUserResolver.php b/app/Services/SocialUserResolver.php new file mode 100644 index 0000000..8942f28 --- /dev/null +++ b/app/Services/SocialUserResolver.php @@ -0,0 +1,33 @@ +userFromToken($accessToken); + } catch (Exception $exception) {} + + if ($providerUser) { + return (new SocialAccountsService())->findOrCreate($providerUser, $provider); + } + return null; + } +} diff --git a/app/User.php b/app/User.php new file mode 100644 index 0000000..087f92a --- /dev/null +++ b/app/User.php @@ -0,0 +1,94 @@ +notify(new PasswordReset($token)); + } + + public function linkedSocialAccounts() + { + return $this->hasMany(LinkedSocialAccount::class); + } + + public function cards() + { + return $this->hasMany(Cards::class); + } + + public function suppliers() + { + return $this->hasOne(Suppliers::class); + } + + public function postulations() + { + return $this->hasMany(Postulations::class); + } + + public function currentcontracts() + { + return $this->hasMany(CurrentContracts::class); + } + + public function finishedcontracts() + { + return $this->hasMany(FinishedContracts::class); + } + + public function reports() + { + return $this->hasMany(Report::class); + } + + public function reportcomments() + { + return $this->hasMany(ReportComment::class); + } + + public function roles() + { + return $this->belongsTo('App\Role', 'role_id'); + } +} diff --git a/app/Verify_accounts.php b/app/Verify_accounts.php new file mode 100644 index 0000000..4d12801 --- /dev/null +++ b/app/Verify_accounts.php @@ -0,0 +1,18 @@ +hasMany(Suppliers::class); + } +} diff --git a/artisan b/artisan new file mode 100644 index 0000000..5c23e2e --- /dev/null +++ b/artisan @@ -0,0 +1,53 @@ +#!/usr/bin/env php +make(Illuminate\Contracts\Console\Kernel::class); + +$status = $kernel->handle( + $input = new Symfony\Component\Console\Input\ArgvInput, + new Symfony\Component\Console\Output\ConsoleOutput +); + +/* +|-------------------------------------------------------------------------- +| Shutdown The Application +|-------------------------------------------------------------------------- +| +| Once Artisan has finished running, we will fire off the shutdown events +| so that any final work may be done by the application before we shut +| down the process. This is the last thing to happen to the request. +| +*/ + +$kernel->terminate($input, $status); + +exit($status); diff --git a/bootstrap/app.php b/bootstrap/app.php new file mode 100644 index 0000000..037e17d --- /dev/null +++ b/bootstrap/app.php @@ -0,0 +1,55 @@ +singleton( + Illuminate\Contracts\Http\Kernel::class, + App\Http\Kernel::class +); + +$app->singleton( + Illuminate\Contracts\Console\Kernel::class, + App\Console\Kernel::class +); + +$app->singleton( + Illuminate\Contracts\Debug\ExceptionHandler::class, + App\Exceptions\Handler::class +); + +/* +|-------------------------------------------------------------------------- +| Return The Application +|-------------------------------------------------------------------------- +| +| This script returns the application instance. The instance is given to +| the calling script so we can separate the building of the instances +| from the actual running of the application and sending responses. +| +*/ + +return $app; diff --git a/bootstrap/cache/.gitignore b/bootstrap/cache/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/bootstrap/cache/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..6200841 --- /dev/null +++ b/composer.json @@ -0,0 +1,81 @@ +{ + "name": "laravel/laravel", + "type": "project", + "description": "The Laravel Framework.", + "keywords": [ + "framework", + "laravel" + ], + "license": "MIT", + "require": { + "php": "^8.2.12", + "berkayk/onesignal-laravel": "^1.0", + "coderello/laravel-passport-social-grant": "^2.0", + "fideloper/proxy": "^4.0", + "gonoware/laravel-maps": "^1.3.0", + "grimzy/laravel-mysql-spatial": "^2.1", + "guzzlehttp/guzzle": "^6.3", + "intervention/image": "^2.5", + "laravel/framework": "^8.0", + "laravel/passport": "^7.3", + "laravel/socialite": "^4.1", + "laravel/tinker": "^1.0", + "laravelcollective/html": "^5.8", + "lcobucci/jwt": "^5.1", + "openpay/sdk": "dev-master", + "superbalist/laravel-google-cloud-storage": "^2.2", + "timehunter/laravel-google-recaptcha-v3": "^2.4" + }, + "require-dev": { + "beyondcode/laravel-dump-server": "^1.0", + "filp/whoops": "^2.0", + "fzaninotto/faker": "^1.4", + "mockery/mockery": "^1.0", + "nunomaduro/collision": "^3.0", + "phpunit/phpunit": "^7.5" + }, + "config": { + "optimize-autoloader": true, + "preferred-install": "dist", + "sort-packages": true + }, + "extra": { + "laravel": { + "dont-discover": [] + } + }, + "autoload": { + "psr-4": { + "App\\": "app/" + }, + "classmap": [ + "database/seeds", + "database/factories" + ] + }, + "autoload-dev": { + "psr-4": { + "Tests\\": "tests/" + } + }, + "minimum-stability": "dev", + "prefer-stable": true, + "scripts": { + "post-autoload-dump": [ + "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", + "@php artisan package:discover --ansi" + ], + "post-root-package-install": [ + "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" + ], + "post-create-project-cmd": [ + "@php artisan key:generate --ansi" + ], + "post-install-cmd": [ + "chmod -R 775 storage", + "chmod -R 755 bootstrap\/cache", + "php artisan optimize:clear", + "php artisan cache:clear" + ] + } +} diff --git a/composer.lock b/composer.lock new file mode 100644 index 0000000..579bcda --- /dev/null +++ b/composer.lock @@ -0,0 +1,8253 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "f7c72a2a410fc5b6043f952d7ff6709c", + "packages": [ + { + "name": "berkayk/onesignal-laravel", + "version": "v1.0.6", + "source": { + "type": "git", + "url": "https://github.com/berkayk/laravel-onesignal.git", + "reference": "4d9fd6c3d3b7a544bf648596bf460abbf17b7202" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/berkayk/laravel-onesignal/zipball/4d9fd6c3d3b7a544bf648596bf460abbf17b7202", + "reference": "4d9fd6c3d3b7a544bf648596bf460abbf17b7202", + "shasum": "" + }, + "require": { + "guzzlehttp/guzzle": "^6.2|^7.0.1", + "illuminate/support": "~5.5|~6.0|~7.0|~8.0", + "php": ">=5.4.0", + "symfony/psr-http-message-bridge": "1.*|2.*" + }, + "require-dev": { + "vlucas/phpdotenv": "^2.2" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Berkayk\\OneSignal\\OneSignalServiceProvider" + ], + "aliases": { + "OneSignal": "Berkayk\\OneSignal\\OneSignalFacade" + } + } + }, + "autoload": { + "psr-4": { + "Berkayk\\OneSignal\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Berkay Kaya", + "email": "berkayk@gmail.com", + "homepage": "http://berkaykaya.com" + }, + { + "name": "Maykonn Welington Candido", + "email": "maykonn@outlook.com" + } + ], + "description": "OneSignal Push Wrapper Laravel", + "keywords": [ + "WebPush", + "laravel", + "laravel 5", + "onesignal", + "push" + ], + "support": { + "issues": "https://github.com/berkayk/laravel-onesignal/issues", + "source": "https://github.com/berkayk/laravel-onesignal/tree/v1.0.6" + }, + "time": "2020-09-12T06:01:34+00:00" + }, + { + "name": "coderello/laravel-passport-social-grant", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/coderello/laravel-passport-social-grant.git", + "reference": "6bb4bb2c79f399942c89db937044c09b3141ed2b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/coderello/laravel-passport-social-grant/zipball/6bb4bb2c79f399942c89db937044c09b3141ed2b", + "reference": "6bb4bb2c79f399942c89db937044c09b3141ed2b", + "shasum": "" + }, + "require": { + "laravel/passport": "^6.0|^7.0|^8.0|^9.0", + "php": ">=7.1" + }, + "require-dev": { + "mockery/mockery": "^1.1", + "orchestra/testbench": "~3.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Coderello\\SocialGrant\\Providers\\SocialGrantServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Coderello\\SocialGrant\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ilya Sakovich", + "email": "me@hivokas.com" + } + ], + "description": "Social Grant for Laravel Passport", + "keywords": [ + "grant", + "laravel", + "network", + "oauth", + "passport", + "social" + ], + "support": { + "issues": "https://github.com/coderello/laravel-passport-social-grant/issues", + "source": "https://github.com/coderello/laravel-passport-social-grant/tree/master" + }, + "time": "2020-05-12T13:30:57+00:00" + }, + { + "name": "defuse/php-encryption", + "version": "v2.2.1", + "source": { + "type": "git", + "url": "https://github.com/defuse/php-encryption.git", + "reference": "0f407c43b953d571421e0020ba92082ed5fb7620" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/defuse/php-encryption/zipball/0f407c43b953d571421e0020ba92082ed5fb7620", + "reference": "0f407c43b953d571421e0020ba92082ed5fb7620", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "paragonie/random_compat": ">= 2", + "php": ">=5.4.0" + }, + "require-dev": { + "nikic/php-parser": "^2.0|^3.0|^4.0", + "phpunit/phpunit": "^4|^5" + }, + "bin": [ + "bin/generate-defuse-key" + ], + "type": "library", + "autoload": { + "psr-4": { + "Defuse\\Crypto\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Hornby", + "email": "taylor@defuse.ca", + "homepage": "https://defuse.ca/" + }, + { + "name": "Scott Arciszewski", + "email": "info@paragonie.com", + "homepage": "https://paragonie.com" + } + ], + "description": "Secure PHP Encryption Library", + "keywords": [ + "aes", + "authenticated encryption", + "cipher", + "crypto", + "cryptography", + "encrypt", + "encryption", + "openssl", + "security", + "symmetric key cryptography" + ], + "support": { + "issues": "https://github.com/defuse/php-encryption/issues", + "source": "https://github.com/defuse/php-encryption/tree/master" + }, + "time": "2018-07-24T23:27:56+00:00" + }, + { + "name": "dnoegel/php-xdg-base-dir", + "version": "v0.1.1", + "source": { + "type": "git", + "url": "https://github.com/dnoegel/php-xdg-base-dir.git", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "require-dev": { + "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" + }, + "type": "library", + "autoload": { + "psr-4": { + "XdgBaseDir\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "implementation of xdg base directory specification for php", + "support": { + "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", + "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" + }, + "time": "2019-12-04T15:06:13+00:00" + }, + { + "name": "doctrine/inflector", + "version": "1.4.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "4650c8b30c753a76bf44fb2ed00117d6f367490c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/4650c8b30c753a76bf44fb2ed00117d6f367490c", + "reference": "4650c8b30c753a76bf44fb2ed00117d6f367490c", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^7.0", + "phpstan/phpstan": "^0.11", + "phpstan/phpstan-phpunit": "^0.11", + "phpstan/phpstan-strict-rules": "^0.11", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector", + "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "keywords": [ + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" + ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/1.4.x" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", + "type": "tidelift" + } + ], + "time": "2020-05-29T07:19:59+00:00" + }, + { + "name": "doctrine/lexer", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "e864bbf5904cb8f5bb334f99209b48018522f042" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/e864bbf5904cb8f5bb334f99209b48018522f042", + "reference": "e864bbf5904cb8f5bb334f99209b48018522f042", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^6.0", + "phpstan/phpstan": "^0.11.8", + "phpunit/phpunit": "^8.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "keywords": [ + "annotations", + "docblock", + "lexer", + "parser", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/1.2.1" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2020-05-25T17:44:05+00:00" + }, + { + "name": "dragonmantank/cron-expression", + "version": "v2.3.1", + "source": { + "type": "git", + "url": "https://github.com/dragonmantank/cron-expression.git", + "reference": "65b2d8ee1f10915efb3b55597da3404f096acba2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/65b2d8ee1f10915efb3b55597da3404f096acba2", + "reference": "65b2d8ee1f10915efb3b55597da3404f096acba2", + "shasum": "" + }, + "require": { + "php": "^7.0|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.4|^7.0|^8.0|^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "autoload": { + "psr-4": { + "Cron\\": "src/Cron/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Chris Tankersley", + "email": "chris@ctankersley.com", + "homepage": "https://github.com/dragonmantank" + } + ], + "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", + "keywords": [ + "cron", + "schedule" + ], + "support": { + "issues": "https://github.com/dragonmantank/cron-expression/issues", + "source": "https://github.com/dragonmantank/cron-expression/tree/v2.3.1" + }, + "funding": [ + { + "url": "https://github.com/dragonmantank", + "type": "github" + } + ], + "time": "2020-10-13T00:52:37+00:00" + }, + { + "name": "egulias/email-validator", + "version": "2.1.25", + "source": { + "type": "git", + "url": "https://github.com/egulias/EmailValidator.git", + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/0dbf5d78455d4d6a41d186da50adc1122ec066f4", + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^1.0.1", + "php": ">=5.5", + "symfony/polyfill-intl-idn": "^1.10" + }, + "require-dev": { + "dominicsayers/isemail": "^3.0.7", + "phpunit/phpunit": "^4.8.36|^7.5.15", + "satooshi/php-coveralls": "^1.0.1" + }, + "suggest": { + "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Egulias\\EmailValidator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Eduardo Gulias Davis" + } + ], + "description": "A library for validating emails against several RFCs", + "homepage": "https://github.com/egulias/EmailValidator", + "keywords": [ + "email", + "emailvalidation", + "emailvalidator", + "validation", + "validator" + ], + "support": { + "issues": "https://github.com/egulias/EmailValidator/issues", + "source": "https://github.com/egulias/EmailValidator/tree/2.1.25" + }, + "funding": [ + { + "url": "https://github.com/egulias", + "type": "github" + } + ], + "time": "2020-12-29T14:50:06+00:00" + }, + { + "name": "erusev/parsedown", + "version": "1.7.4", + "source": { + "type": "git", + "url": "https://github.com/erusev/parsedown.git", + "reference": "cb17b6477dfff935958ba01325f2e8a2bfa6dab3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/erusev/parsedown/zipball/cb17b6477dfff935958ba01325f2e8a2bfa6dab3", + "reference": "cb17b6477dfff935958ba01325f2e8a2bfa6dab3", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35" + }, + "type": "library", + "autoload": { + "psr-0": { + "Parsedown": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Emanuil Rusev", + "email": "hello@erusev.com", + "homepage": "http://erusev.com" + } + ], + "description": "Parser for Markdown.", + "homepage": "http://parsedown.org", + "keywords": [ + "markdown", + "parser" + ], + "support": { + "issues": "https://github.com/erusev/parsedown/issues", + "source": "https://github.com/erusev/parsedown/tree/1.7.x" + }, + "time": "2019-12-30T22:54:17+00:00" + }, + { + "name": "fideloper/proxy", + "version": "4.4.1", + "source": { + "type": "git", + "url": "https://github.com/fideloper/TrustedProxy.git", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "shasum": "" + }, + "require": { + "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0|^9.0", + "php": ">=5.4.0" + }, + "require-dev": { + "illuminate/http": "^5.0|^6.0|^7.0|^8.0|^9.0", + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^6.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Fideloper\\Proxy\\TrustedProxyServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Fideloper\\Proxy\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Chris Fidao", + "email": "fideloper@gmail.com" + } + ], + "description": "Set trusted proxies for Laravel", + "keywords": [ + "load balancing", + "proxy", + "trusted proxy" + ], + "support": { + "issues": "https://github.com/fideloper/TrustedProxy/issues", + "source": "https://github.com/fideloper/TrustedProxy/tree/4.4.1" + }, + "time": "2020-10-22T13:48:01+00:00" + }, + { + "name": "firebase/php-jwt", + "version": "v5.2.0", + "source": { + "type": "git", + "url": "https://github.com/firebase/php-jwt.git", + "reference": "feb0e820b8436873675fd3aca04f3728eb2185cb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/firebase/php-jwt/zipball/feb0e820b8436873675fd3aca04f3728eb2185cb", + "reference": "feb0e820b8436873675fd3aca04f3728eb2185cb", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": ">=4.8 <=9" + }, + "type": "library", + "autoload": { + "psr-4": { + "Firebase\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Neuman Vong", + "email": "neuman+pear@twilio.com", + "role": "Developer" + }, + { + "name": "Anant Narayanan", + "email": "anant@php.net", + "role": "Developer" + } + ], + "description": "A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.", + "homepage": "https://github.com/firebase/php-jwt", + "keywords": [ + "jwt", + "php" + ], + "support": { + "issues": "https://github.com/firebase/php-jwt/issues", + "source": "https://github.com/firebase/php-jwt/tree/master" + }, + "time": "2020-03-25T18:49:23+00:00" + }, + { + "name": "geo-io/interface", + "version": "v1.0.1", + "source": { + "type": "git", + "url": "https://github.com/geo-io/interface.git", + "reference": "cf46fe7b013de20ab8b601238c7d91b480810644" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/geo-io/interface/zipball/cf46fe7b013de20ab8b601238c7d91b480810644", + "reference": "cf46fe7b013de20ab8b601238c7d91b480810644", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "GeoIO\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com" + } + ], + "description": "Geo I/O base interfaces.", + "keywords": [ + "geo", + "geometry", + "io" + ], + "support": { + "issues": "https://github.com/geo-io/interface/issues", + "source": "https://github.com/geo-io/interface/tree/v1.0.1" + }, + "time": "2016-07-28T07:17:02+00:00" + }, + { + "name": "geo-io/wkb-parser", + "version": "v1.0.1", + "source": { + "type": "git", + "url": "https://github.com/geo-io/wkb-parser.git", + "reference": "cceee8f4e8b2058f3f1a0372c930140f23fe1ee1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/geo-io/wkb-parser/zipball/cceee8f4e8b2058f3f1a0372c930140f23fe1ee1", + "reference": "cceee8f4e8b2058f3f1a0372c930140f23fe1ee1", + "shasum": "" + }, + "require": { + "geo-io/interface": "~1.0", + "php": ">=5.3.3" + }, + "require-dev": { + "mockery/mockery": "~0.9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "GeoIO\\WKB\\Parser\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com" + } + ], + "description": "Well-known binary (WKB) Parser.", + "keywords": [ + "geo", + "geometry", + "io", + "parser", + "wkb" + ], + "support": { + "issues": "https://github.com/geo-io/wkb-parser/issues", + "source": "https://github.com/geo-io/wkb-parser/tree/master" + }, + "time": "2015-06-30T04:19:13+00:00" + }, + { + "name": "gonoware/laravel-maps", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://gitlab.com/gonoware/laravel-maps.git", + "reference": "68cfe44c05771e476115cc79074aac551934ba8a" + }, + "dist": { + "type": "zip", + "url": "https://gitlab.com/api/v4/projects/gonoware%2Flaravel-maps/repository/archive.zip?sha=68cfe44c05771e476115cc79074aac551934ba8a", + "reference": "68cfe44c05771e476115cc79074aac551934ba8a", + "shasum": "" + }, + "require": { + "illuminate/support": "^5.5|^6.0|^7.0", + "php": "^7.0.0|^7.2|^7.2.5" + }, + "require-dev": { + "mockery/mockery": "0.9.*|^1.0|^1.3.1", + "phpunit/phpunit": "~6.0|^8.0|^8.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + }, + "laravel": { + "providers": [ + "GoNoWare\\Maps\\MapsServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "GoNoWare\\Maps\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Emanuel Mutschlechner", + "email": "em@gonoware.com" + }, + { + "name": "Benedikt Tuschter", + "email": "bt@gonoware.com" + } + ], + "description": "Maps for your Laravel application", + "homepage": "https://gitlab.com/gonoware/laravel-maps", + "keywords": [ + "OpenStreetMap", + "bing", + "bingmaps", + "gonoware", + "google", + "googlemaps", + "laravel", + "mapkit", + "mapkitjs", + "mapquest", + "maps", + "osm", + "yandex", + "yandexmaps" + ], + "support": { + "issues": "https://gitlab.com/gonoware/laravel-maps/issues", + "source": "https://gitlab.com/gonoware/laravel-maps" + }, + "time": "2020-04-07T01:42:00+00:00" + }, + { + "name": "google/auth", + "version": "v1.14.3", + "source": { + "type": "git", + "url": "https://github.com/googleapis/google-auth-library-php.git", + "reference": "c1503299c779af0cbc99b43788f75930988852cf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/googleapis/google-auth-library-php/zipball/c1503299c779af0cbc99b43788f75930988852cf", + "reference": "c1503299c779af0cbc99b43788f75930988852cf", + "shasum": "" + }, + "require": { + "firebase/php-jwt": "~2.0|~3.0|~4.0|~5.0", + "guzzlehttp/guzzle": "^5.3.1|^6.2.1|^7.0", + "guzzlehttp/psr7": "^1.2", + "php": ">=5.4", + "psr/cache": "^1.0", + "psr/http-message": "^1.0" + }, + "require-dev": { + "guzzlehttp/promises": "0.1.1|^1.3", + "kelvinmo/simplejwt": "^0.2.5", + "phpseclib/phpseclib": "^2", + "phpunit/phpunit": "^4.8.36|^5.7", + "sebastian/comparator": ">=1.2.3", + "squizlabs/php_codesniffer": "^3.5" + }, + "suggest": { + "phpseclib/phpseclib": "May be used in place of OpenSSL for signing strings or for token management. Please require version ^2." + }, + "type": "library", + "autoload": { + "psr-4": { + "Google\\Auth\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "description": "Google Auth Library for PHP", + "homepage": "http://github.com/google/google-auth-library-php", + "keywords": [ + "Authentication", + "google", + "oauth2" + ], + "support": { + "docs": "https://googleapis.github.io/google-auth-library-php/master/", + "issues": "https://github.com/googleapis/google-auth-library-php/issues", + "source": "https://github.com/googleapis/google-auth-library-php/tree/v1.14.3" + }, + "time": "2020-10-16T21:33:48+00:00" + }, + { + "name": "google/cloud-core", + "version": "v1.41.0", + "source": { + "type": "git", + "url": "https://github.com/googleapis/google-cloud-php-core.git", + "reference": "2e58627e1c4f1417631ba4b0a1098b66ac98665c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/googleapis/google-cloud-php-core/zipball/2e58627e1c4f1417631ba4b0a1098b66ac98665c", + "reference": "2e58627e1c4f1417631ba4b0a1098b66ac98665c", + "shasum": "" + }, + "require": { + "google/auth": "^1.6", + "guzzlehttp/guzzle": "^5.3|^6.0|^7.0", + "guzzlehttp/promises": "^1.3", + "guzzlehttp/psr7": "^1.2", + "monolog/monolog": "^1.1|^2.0", + "php": ">=5.5", + "psr/http-message": "1.0.*", + "rize/uri-template": "~0.3" + }, + "require-dev": { + "erusev/parsedown": "^1.6", + "google/common-protos": "^1.0", + "google/gax": "^1.1", + "opis/closure": "^3", + "phpdocumentor/reflection": "^3.0", + "phpunit/phpunit": "^4.8|^5.0", + "squizlabs/php_codesniffer": "2.*" + }, + "suggest": { + "opis/closure": "May be used to serialize closures to process jobs in the batch daemon. Please require version ^3.", + "symfony/lock": "Required for the Spanner cached based session pool. Please require the following commit: 3.3.x-dev#1ba6ac9" + }, + "bin": [ + "bin/google-cloud-batch" + ], + "type": "library", + "extra": { + "component": { + "id": "cloud-core", + "target": "googleapis/google-cloud-php-core.git", + "path": "Core", + "entry": "src/ServiceBuilder.php" + } + }, + "autoload": { + "psr-4": { + "Google\\Cloud\\Core\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "description": "Google Cloud PHP shared dependency, providing functionality useful to all components.", + "support": { + "source": "https://github.com/googleapis/google-cloud-php-core/tree/v1.41.0" + }, + "time": "2021-01-13T22:28:48+00:00" + }, + { + "name": "google/cloud-storage", + "version": "v1.23.1", + "source": { + "type": "git", + "url": "https://github.com/googleapis/google-cloud-php-storage.git", + "reference": "ca3817dae90d7d757381f3f63c9d7df58ca1416f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/googleapis/google-cloud-php-storage/zipball/ca3817dae90d7d757381f3f63c9d7df58ca1416f", + "reference": "ca3817dae90d7d757381f3f63c9d7df58ca1416f", + "shasum": "" + }, + "require": { + "google/cloud-core": "^1.39", + "google/crc32": "^0.1.0" + }, + "require-dev": { + "erusev/parsedown": "^1.6", + "google/cloud-pubsub": "^1.0", + "phpdocumentor/reflection": "^3.0", + "phpseclib/phpseclib": "^2", + "phpunit/phpunit": "^4.8|^5.0", + "squizlabs/php_codesniffer": "2.*" + }, + "suggest": { + "google/cloud-pubsub": "May be used to register a topic to receive bucket notifications.", + "phpseclib/phpseclib": "May be used in place of OpenSSL for creating signed Cloud Storage URLs. Please require version ^2." + }, + "type": "library", + "extra": { + "component": { + "id": "cloud-storage", + "target": "googleapis/google-cloud-php-storage.git", + "path": "Storage", + "entry": "src/StorageClient.php" + } + }, + "autoload": { + "psr-4": { + "Google\\Cloud\\Storage\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "description": "Cloud Storage Client for PHP", + "support": { + "source": "https://github.com/googleapis/google-cloud-php-storage/tree/v1.23.1" + }, + "time": "2021-01-13T22:28:48+00:00" + }, + { + "name": "google/crc32", + "version": "v0.1.0", + "source": { + "type": "git", + "url": "https://github.com/google/php-crc32.git", + "reference": "a8525f0dea6fca1893e1bae2f6e804c5f7d007fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/google/php-crc32/zipball/a8525f0dea6fca1893e1bae2f6e804c5f7d007fb", + "reference": "a8525f0dea6fca1893e1bae2f6e804c5f7d007fb", + "shasum": "" + }, + "require": { + "php": ">=5.4" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^1.13 || v2.14.2", + "paragonie/random_compat": ">=2", + "phpunit/phpunit": "^4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Google\\CRC32\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Andrew Brampton", + "email": "bramp@google.com" + } + ], + "description": "Various CRC32 implementations", + "homepage": "https://github.com/google/php-crc32", + "support": { + "issues": "https://github.com/google/php-crc32/issues", + "source": "https://github.com/google/php-crc32/tree/v0.1.0" + }, + "time": "2019-05-09T06:24:58+00:00" + }, + { + "name": "grimzy/laravel-mysql-spatial", + "version": "2.2.3", + "source": { + "type": "git", + "url": "https://github.com/grimzy/laravel-mysql-spatial.git", + "reference": "7f62564f996eefa3631f6e901b63689109c2be07" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/grimzy/laravel-mysql-spatial/zipball/7f62564f996eefa3631f6e901b63689109c2be07", + "reference": "7f62564f996eefa3631f6e901b63689109c2be07", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-pdo": "*", + "geo-io/wkb-parser": "^1.0", + "illuminate/database": "^5.2|^6.0|^7.0", + "jmikola/geojson": "^1.0", + "php": ">=5.5.9" + }, + "require-dev": { + "doctrine/dbal": "^2.5", + "laravel/browser-kit-testing": "^2.0", + "laravel/laravel": "^5.2|^6.0|^7.0", + "mockery/mockery": "^0.9.9", + "php-coveralls/php-coveralls": "^2.0", + "phpunit/phpunit": "~4.8|~5.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + }, + "laravel": { + "providers": [ + "Grimzy\\LaravelMysqlSpatial\\SpatialServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Grimzy\\LaravelMysqlSpatial\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Joseph Estefane", + "email": "estefanejoe@gmail.com" + } + ], + "description": "MySQL spatial data types extension for Laravel.", + "support": { + "issues": "https://github.com/grimzy/laravel-mysql-spatial/issues", + "source": "https://github.com/grimzy/laravel-mysql-spatial/tree/master" + }, + "time": "2020-03-09T02:30:58+00:00" + }, + { + "name": "guzzlehttp/guzzle", + "version": "6.5.5", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", + "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/promises": "^1.0", + "guzzlehttp/psr7": "^1.6.1", + "php": ">=5.5", + "symfony/polyfill-intl-idn": "^1.17.0" + }, + "require-dev": { + "ext-curl": "*", + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0", + "psr/log": "^1.1" + }, + "suggest": { + "psr/log": "Required for using the Log middleware" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "6.5-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "Guzzle is a PHP HTTP client library", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "rest", + "web service" + ], + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/6.5" + }, + "time": "2020-06-16T21:01:06+00:00" + }, + { + "name": "guzzlehttp/promises", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "60d379c243457e073cff02bc323a2a86cb355631" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/promises/zipball/60d379c243457e073cff02bc323a2a86cb355631", + "reference": "60d379c243457e073cff02bc323a2a86cb355631", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "symfony/phpunit-bridge": "^4.4 || ^5.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "Guzzle promises library", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/1.4.0" + }, + "time": "2020-09-30T07:37:28+00:00" + }, + { + "name": "guzzlehttp/psr7", + "version": "1.7.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/53330f47520498c0ae1f61f7e2c90f55690c06a3", + "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3", + "shasum": "" + }, + "require": { + "php": ">=5.4.0", + "psr/http-message": "~1.0", + "ralouphie/getallheaders": "^2.0.5 || ^3.0.0" + }, + "provide": { + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "ext-zlib": "*", + "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10" + }, + "suggest": { + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.7-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Schultze", + "homepage": "https://github.com/Tobion" + } + ], + "description": "PSR-7 message implementation that also provides common utility methods", + "keywords": [ + "http", + "message", + "psr-7", + "request", + "response", + "stream", + "uri", + "url" + ], + "support": { + "issues": "https://github.com/guzzle/psr7/issues", + "source": "https://github.com/guzzle/psr7/tree/1.7.0" + }, + "time": "2020-09-30T07:37:11+00:00" + }, + { + "name": "intervention/image", + "version": "2.5.1", + "source": { + "type": "git", + "url": "https://github.com/Intervention/image.git", + "reference": "abbf18d5ab8367f96b3205ca3c89fb2fa598c69e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Intervention/image/zipball/abbf18d5ab8367f96b3205ca3c89fb2fa598c69e", + "reference": "abbf18d5ab8367f96b3205ca3c89fb2fa598c69e", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "guzzlehttp/psr7": "~1.1", + "php": ">=5.4.0" + }, + "require-dev": { + "mockery/mockery": "~0.9.2", + "phpunit/phpunit": "^4.8 || ^5.7" + }, + "suggest": { + "ext-gd": "to use GD library based image processing.", + "ext-imagick": "to use Imagick based image processing.", + "intervention/imagecache": "Caching extension for the Intervention Image library" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.4-dev" + }, + "laravel": { + "providers": [ + "Intervention\\Image\\ImageServiceProvider" + ], + "aliases": { + "Image": "Intervention\\Image\\Facades\\Image" + } + } + }, + "autoload": { + "psr-4": { + "Intervention\\Image\\": "src/Intervention/Image" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Oliver Vogel", + "email": "oliver@olivervogel.com", + "homepage": "http://olivervogel.com/" + } + ], + "description": "Image handling and manipulation library with support for Laravel integration", + "homepage": "http://image.intervention.io/", + "keywords": [ + "gd", + "image", + "imagick", + "laravel", + "thumbnail", + "watermark" + ], + "support": { + "issues": "https://github.com/Intervention/image/issues", + "source": "https://github.com/Intervention/image/tree/master" + }, + "time": "2019-11-02T09:15:47+00:00" + }, + { + "name": "jakub-onderka/php-console-color", + "version": "v0.2", + "source": { + "type": "git", + "url": "https://github.com/JakubOnderka/PHP-Console-Color.git", + "reference": "d5deaecff52a0d61ccb613bb3804088da0307191" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Color/zipball/d5deaecff52a0d61ccb613bb3804088da0307191", + "reference": "d5deaecff52a0d61ccb613bb3804088da0307191", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "require-dev": { + "jakub-onderka/php-code-style": "1.0", + "jakub-onderka/php-parallel-lint": "1.0", + "jakub-onderka/php-var-dump-check": "0.*", + "phpunit/phpunit": "~4.3", + "squizlabs/php_codesniffer": "1.*" + }, + "type": "library", + "autoload": { + "psr-4": { + "JakubOnderka\\PhpConsoleColor\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-2-Clause" + ], + "authors": [ + { + "name": "Jakub Onderka", + "email": "jakub.onderka@gmail.com" + } + ], + "support": { + "issues": "https://github.com/JakubOnderka/PHP-Console-Color/issues", + "source": "https://github.com/JakubOnderka/PHP-Console-Color/tree/master" + }, + "abandoned": "php-parallel-lint/php-console-color", + "time": "2018-09-29T17:23:10+00:00" + }, + { + "name": "jakub-onderka/php-console-highlighter", + "version": "v0.4", + "source": { + "type": "git", + "url": "https://github.com/JakubOnderka/PHP-Console-Highlighter.git", + "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/9f7a229a69d52506914b4bc61bfdb199d90c5547", + "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "jakub-onderka/php-console-color": "~0.2", + "php": ">=5.4.0" + }, + "require-dev": { + "jakub-onderka/php-code-style": "~1.0", + "jakub-onderka/php-parallel-lint": "~1.0", + "jakub-onderka/php-var-dump-check": "~0.1", + "phpunit/phpunit": "~4.0", + "squizlabs/php_codesniffer": "~1.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "JakubOnderka\\PhpConsoleHighlighter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jakub Onderka", + "email": "acci@acci.cz", + "homepage": "http://www.acci.cz/" + } + ], + "description": "Highlight PHP code in terminal", + "support": { + "issues": "https://github.com/JakubOnderka/PHP-Console-Highlighter/issues", + "source": "https://github.com/JakubOnderka/PHP-Console-Highlighter/tree/master" + }, + "abandoned": "php-parallel-lint/php-console-highlighter", + "time": "2018-09-29T18:48:56+00:00" + }, + { + "name": "jmikola/geojson", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/jmikola/geojson.git", + "reference": "6ec3016cc0215667b7775f6ead7bd0337ad66eee" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jmikola/geojson/zipball/6ec3016cc0215667b7775f6ead7bd0337ad66eee", + "reference": "6ec3016cc0215667b7775f6ead7bd0337ad66eee", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phpunit/phpunit": "~3.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-0": { + "GeoJson\\": "src/" + }, + "classmap": [ + "stubs/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jeremy Mikola", + "email": "jmikola@gmail.com" + } + ], + "description": "GeoJSON implementation for PHP", + "homepage": "https://github.com/jmikola/geojson", + "keywords": [ + "geo", + "geojson", + "geospatial" + ], + "support": { + "issues": "https://github.com/jmikola/geojson/issues", + "source": "https://github.com/jmikola/geojson/tree/master" + }, + "time": "2015-09-27T15:35:21+00:00" + }, + { + "name": "laravel/framework", + "version": "v5.8.38", + "source": { + "type": "git", + "url": "https://github.com/laravel/framework.git", + "reference": "78eb4dabcc03e189620c16f436358d41d31ae11f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/framework/zipball/78eb4dabcc03e189620c16f436358d41d31ae11f", + "reference": "78eb4dabcc03e189620c16f436358d41d31ae11f", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^1.1", + "dragonmantank/cron-expression": "^2.0", + "egulias/email-validator": "^2.0", + "erusev/parsedown": "^1.7", + "ext-json": "*", + "ext-mbstring": "*", + "ext-openssl": "*", + "league/flysystem": "^1.0.8", + "monolog/monolog": "^1.12", + "nesbot/carbon": "^1.26.3 || ^2.0", + "opis/closure": "^3.1", + "php": "^7.1.3", + "psr/container": "^1.0", + "psr/simple-cache": "^1.0", + "ramsey/uuid": "^3.7", + "swiftmailer/swiftmailer": "^6.0", + "symfony/console": "^4.2", + "symfony/debug": "^4.2", + "symfony/finder": "^4.2", + "symfony/http-foundation": "^4.2", + "symfony/http-kernel": "^4.2", + "symfony/process": "^4.2", + "symfony/routing": "^4.2", + "symfony/var-dumper": "^4.2", + "tijsverkoyen/css-to-inline-styles": "^2.2.1", + "vlucas/phpdotenv": "^3.3" + }, + "conflict": { + "tightenco/collect": "<5.5.33" + }, + "replace": { + "illuminate/auth": "self.version", + "illuminate/broadcasting": "self.version", + "illuminate/bus": "self.version", + "illuminate/cache": "self.version", + "illuminate/config": "self.version", + "illuminate/console": "self.version", + "illuminate/container": "self.version", + "illuminate/contracts": "self.version", + "illuminate/cookie": "self.version", + "illuminate/database": "self.version", + "illuminate/encryption": "self.version", + "illuminate/events": "self.version", + "illuminate/filesystem": "self.version", + "illuminate/hashing": "self.version", + "illuminate/http": "self.version", + "illuminate/log": "self.version", + "illuminate/mail": "self.version", + "illuminate/notifications": "self.version", + "illuminate/pagination": "self.version", + "illuminate/pipeline": "self.version", + "illuminate/queue": "self.version", + "illuminate/redis": "self.version", + "illuminate/routing": "self.version", + "illuminate/session": "self.version", + "illuminate/support": "self.version", + "illuminate/translation": "self.version", + "illuminate/validation": "self.version", + "illuminate/view": "self.version" + }, + "require-dev": { + "aws/aws-sdk-php": "^3.0", + "doctrine/dbal": "^2.6", + "filp/whoops": "^2.1.4", + "guzzlehttp/guzzle": "^6.3", + "league/flysystem-cached-adapter": "^1.0", + "mockery/mockery": "^1.0", + "moontoast/math": "^1.1", + "orchestra/testbench-core": "3.8.*", + "pda/pheanstalk": "^4.0", + "phpunit/phpunit": "^7.5|^8.0", + "predis/predis": "^1.1.1", + "symfony/css-selector": "^4.2", + "symfony/dom-crawler": "^4.2", + "true/punycode": "^2.1" + }, + "suggest": { + "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (^3.0).", + "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.6).", + "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", + "ext-pcntl": "Required to use all features of the queue worker.", + "ext-posix": "Required to use all features of the queue worker.", + "filp/whoops": "Required for friendly error pages in development (^2.1.4).", + "fzaninotto/faker": "Required to use the eloquent factory builder (^1.4).", + "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (^6.0).", + "laravel/tinker": "Required to use the tinker console command (^1.0).", + "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-rackspace": "Required to use the Flysystem Rackspace driver (^1.0).", + "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", + "moontoast/math": "Required to use ordered UUIDs (^1.1).", + "nexmo/client": "Required to use the Nexmo transport (^1.0).", + "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", + "predis/predis": "Required to use the redis cache and queue drivers (^1.0).", + "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^3.0).", + "symfony/css-selector": "Required to use some of the crawler integration testing tools (^4.2).", + "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (^4.2).", + "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^1.1).", + "wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.8-dev" + } + }, + "autoload": { + "files": [ + "src/Illuminate/Foundation/helpers.php", + "src/Illuminate/Support/helpers.php" + ], + "psr-4": { + "Illuminate\\": "src/Illuminate/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Laravel Framework.", + "homepage": "https://laravel.com", + "keywords": [ + "framework", + "laravel" + ], + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2020-04-14T14:14:36+00:00" + }, + { + "name": "laravel/passport", + "version": "v7.5.1", + "source": { + "type": "git", + "url": "https://github.com/laravel/passport.git", + "reference": "d63cdd672c3d65b3c35b73d0ef13a9dbfcb71c08" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/passport/zipball/d63cdd672c3d65b3c35b73d0ef13a9dbfcb71c08", + "reference": "d63cdd672c3d65b3c35b73d0ef13a9dbfcb71c08", + "shasum": "" + }, + "require": { + "ext-json": "*", + "firebase/php-jwt": "~3.0|~4.0|~5.0", + "guzzlehttp/guzzle": "~6.0", + "illuminate/auth": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/console": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/container": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/contracts": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/cookie": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/database": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/encryption": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/http": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/support": "~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0", + "league/oauth2-server": "^7.0", + "php": ">=7.1", + "phpseclib/phpseclib": "^2.0", + "symfony/psr-http-message-bridge": "~1.0", + "zendframework/zend-diactoros": "~1.0|~2.0" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^7.4|^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.0-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Passport\\PassportServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Passport\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Laravel Passport provides OAuth2 server support to Laravel.", + "keywords": [ + "laravel", + "oauth", + "passport" + ], + "support": { + "issues": "https://github.com/laravel/passport/issues", + "source": "https://github.com/laravel/passport" + }, + "time": "2019-10-08T16:45:24+00:00" + }, + { + "name": "laravel/socialite", + "version": "v4.4.1", + "source": { + "type": "git", + "url": "https://github.com/laravel/socialite.git", + "reference": "80951df0d93435b773aa00efe1fad6d5015fac75" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/socialite/zipball/80951df0d93435b773aa00efe1fad6d5015fac75", + "reference": "80951df0d93435b773aa00efe1fad6d5015fac75", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/guzzle": "^6.0|^7.0", + "illuminate/http": "~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/support": "~5.7.0|~5.8.0|^6.0|^7.0", + "league/oauth1-client": "^1.0", + "php": "^7.1.3" + }, + "require-dev": { + "illuminate/contracts": "~5.7.0|~5.8.0|^6.0|^7.0", + "mockery/mockery": "^1.0", + "orchestra/testbench": "^3.7|^3.8|^4.0|^5.0", + "phpunit/phpunit": "^7.0|^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Socialite\\SocialiteServiceProvider" + ], + "aliases": { + "Socialite": "Laravel\\Socialite\\Facades\\Socialite" + } + } + }, + "autoload": { + "psr-4": { + "Laravel\\Socialite\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Laravel wrapper around OAuth 1 & OAuth 2 libraries.", + "homepage": "https://laravel.com", + "keywords": [ + "laravel", + "oauth" + ], + "support": { + "issues": "https://github.com/laravel/socialite/issues", + "source": "https://github.com/laravel/socialite" + }, + "time": "2020-06-03T13:30:03+00:00" + }, + { + "name": "laravel/tinker", + "version": "v1.0.10", + "source": { + "type": "git", + "url": "https://github.com/laravel/tinker.git", + "reference": "ad571aacbac1539c30d480908f9d0c9614eaf1a7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/tinker/zipball/ad571aacbac1539c30d480908f9d0c9614eaf1a7", + "reference": "ad571aacbac1539c30d480908f9d0c9614eaf1a7", + "shasum": "" + }, + "require": { + "illuminate/console": "~5.1|^6.0", + "illuminate/contracts": "~5.1|^6.0", + "illuminate/support": "~5.1|^6.0", + "php": ">=5.5.9", + "psy/psysh": "0.7.*|0.8.*|0.9.*", + "symfony/var-dumper": "~3.0|~4.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.0|~5.0" + }, + "suggest": { + "illuminate/database": "The Illuminate Database package (~5.1)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Tinker\\TinkerServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Tinker\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Powerful REPL for the Laravel framework.", + "keywords": [ + "REPL", + "Tinker", + "laravel", + "psysh" + ], + "support": { + "issues": "https://github.com/laravel/tinker/issues", + "source": "https://github.com/laravel/tinker/tree/v1.0.10" + }, + "time": "2019-08-07T15:10:45+00:00" + }, + { + "name": "laravelcollective/html", + "version": "v5.8.1", + "source": { + "type": "git", + "url": "https://github.com/LaravelCollective/html.git", + "reference": "3a1c9974ea629eed96e101a24e3852ced382eb29" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/LaravelCollective/html/zipball/3a1c9974ea629eed96e101a24e3852ced382eb29", + "reference": "3a1c9974ea629eed96e101a24e3852ced382eb29", + "shasum": "" + }, + "require": { + "illuminate/http": "5.8.*", + "illuminate/routing": "5.8.*", + "illuminate/session": "5.8.*", + "illuminate/support": "5.8.*", + "illuminate/view": "5.8.*", + "php": ">=7.1.3" + }, + "require-dev": { + "illuminate/database": "5.8.*", + "mockery/mockery": "~1.0", + "phpunit/phpunit": "~7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.8-dev" + }, + "laravel": { + "providers": [ + "Collective\\Html\\HtmlServiceProvider" + ], + "aliases": { + "Form": "Collective\\Html\\FormFacade", + "Html": "Collective\\Html\\HtmlFacade" + } + } + }, + "autoload": { + "psr-4": { + "Collective\\Html\\": "src/" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Adam Engebretson", + "email": "adam@laravelcollective.com" + }, + { + "name": "Taylor Otwell", + "email": "taylorotwell@gmail.com" + } + ], + "description": "HTML and Form Builders for the Laravel Framework", + "homepage": "https://laravelcollective.com", + "support": { + "issues": "https://github.com/LaravelCollective/html/issues", + "source": "https://github.com/LaravelCollective/html" + }, + "time": "2019-09-05T12:32:25+00:00" + }, + { + "name": "lcobucci/jwt", + "version": "3.3.0", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "8866a58fa866f6872f2a6ea0e04ad56480f0f440" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/8866a58fa866f6872f2a6ea0e04ad56480f0f440", + "reference": "8866a58fa866f6872f2a6ea0e04ad56480f0f440", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "ext-openssl": "*", + "php": "^5.6 || ^7.0" + }, + "require-dev": { + "mikey179/vfsstream": "~1.5", + "phpmd/phpmd": "~2.2", + "phpunit/php-invoker": "~1.1", + "phpunit/phpunit": "^5.7 || ^7.3", + "squizlabs/php_codesniffer": "~2.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + }, + "autoload": { + "psr-4": { + "Lcobucci\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Luís Otávio Cobucci Oblonczyk", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "keywords": [ + "JWS", + "jwt" + ], + "support": { + "issues": "https://github.com/lcobucci/jwt/issues", + "source": "https://github.com/lcobucci/jwt/tree/3.3" + }, + "time": "2019-05-22T09:44:23+00:00" + }, + { + "name": "league/event", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/event.git", + "reference": "d2cc124cf9a3fab2bb4ff963307f60361ce4d119" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/event/zipball/d2cc124cf9a3fab2bb4ff963307f60361ce4d119", + "reference": "d2cc124cf9a3fab2bb4ff963307f60361ce4d119", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "require-dev": { + "henrikbjorn/phpspec-code-coverage": "~1.0.1", + "phpspec/phpspec": "^2.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Event\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frenky.net" + } + ], + "description": "Event package", + "keywords": [ + "emitter", + "event", + "listener" + ], + "support": { + "issues": "https://github.com/thephpleague/event/issues", + "source": "https://github.com/thephpleague/event/tree/master" + }, + "time": "2018-11-26T11:52:41+00:00" + }, + { + "name": "league/flysystem", + "version": "1.1.3", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem.git", + "reference": "9be3b16c877d477357c015cec057548cf9b2a14a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/9be3b16c877d477357c015cec057548cf9b2a14a", + "reference": "9be3b16c877d477357c015cec057548cf9b2a14a", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "league/mime-type-detection": "^1.3", + "php": "^7.2.5 || ^8.0" + }, + "conflict": { + "league/flysystem-sftp": "<1.0.6" + }, + "require-dev": { + "phpspec/prophecy": "^1.11.1", + "phpunit/phpunit": "^8.5.8" + }, + "suggest": { + "ext-fileinfo": "Required for MimeType", + "ext-ftp": "Allows you to use FTP server storage", + "ext-openssl": "Allows you to use FTPS server storage", + "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", + "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", + "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", + "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", + "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", + "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", + "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", + "league/flysystem-webdav": "Allows you to use WebDAV storage", + "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", + "spatie/flysystem-dropbox": "Allows you to use Dropbox storage", + "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Flysystem\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frenky.net" + } + ], + "description": "Filesystem abstraction: Many filesystems, one API.", + "keywords": [ + "Cloud Files", + "WebDAV", + "abstraction", + "aws", + "cloud", + "copy.com", + "dropbox", + "file systems", + "files", + "filesystem", + "filesystems", + "ftp", + "rackspace", + "remote", + "s3", + "sftp", + "storage" + ], + "support": { + "issues": "https://github.com/thephpleague/flysystem/issues", + "source": "https://github.com/thephpleague/flysystem/tree/1.x" + }, + "funding": [ + { + "url": "https://offset.earth/frankdejonge", + "type": "other" + } + ], + "time": "2020-08-23T07:39:11+00:00" + }, + { + "name": "league/flysystem-cached-adapter", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem-cached-adapter.git", + "reference": "d1925efb2207ac4be3ad0c40b8277175f99ffaff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem-cached-adapter/zipball/d1925efb2207ac4be3ad0c40b8277175f99ffaff", + "reference": "d1925efb2207ac4be3ad0c40b8277175f99ffaff", + "shasum": "" + }, + "require": { + "league/flysystem": "~1.0", + "psr/cache": "^1.0.0" + }, + "require-dev": { + "mockery/mockery": "~0.9", + "phpspec/phpspec": "^3.4", + "phpunit/phpunit": "^5.7", + "predis/predis": "~1.0", + "tedivm/stash": "~0.12" + }, + "suggest": { + "ext-phpredis": "Pure C implemented extension for PHP" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\Flysystem\\Cached\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "frankdejonge", + "email": "info@frenky.net" + } + ], + "description": "An adapter decorator to enable meta-data caching.", + "support": { + "issues": "https://github.com/thephpleague/flysystem-cached-adapter/issues", + "source": "https://github.com/thephpleague/flysystem-cached-adapter/tree/master" + }, + "time": "2020-07-25T15:56:04+00:00" + }, + { + "name": "league/mime-type-detection", + "version": "1.7.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/mime-type-detection.git", + "reference": "3b9dff8aaf7323590c1d2e443db701eb1f9aa0d3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/3b9dff8aaf7323590c1d2e443db701eb1f9aa0d3", + "reference": "3b9dff8aaf7323590c1d2e443db701eb1f9aa0d3", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.18", + "phpstan/phpstan": "^0.12.68", + "phpunit/phpunit": "^8.5.8 || ^9.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\MimeTypeDetection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frankdejonge.nl" + } + ], + "description": "Mime-type detection for Flysystem", + "support": { + "issues": "https://github.com/thephpleague/mime-type-detection/issues", + "source": "https://github.com/thephpleague/mime-type-detection/tree/1.7.0" + }, + "funding": [ + { + "url": "https://github.com/frankdejonge", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/flysystem", + "type": "tidelift" + } + ], + "time": "2021-01-18T20:58:21+00:00" + }, + { + "name": "league/oauth1-client", + "version": "v1.9.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/oauth1-client.git", + "reference": "1e7e6be2dc543bf466236fb171e5b20e1b06aee6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/1e7e6be2dc543bf466236fb171e5b20e1b06aee6", + "reference": "1e7e6be2dc543bf466236fb171e5b20e1b06aee6", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-openssl": "*", + "guzzlehttp/guzzle": "^6.0|^7.0", + "php": ">=7.1||>=8.0" + }, + "require-dev": { + "ext-simplexml": "*", + "friendsofphp/php-cs-fixer": "^2.17", + "mockery/mockery": "^1.3.3", + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5||9.5" + }, + "suggest": { + "ext-simplexml": "For decoding XML-based responses." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev", + "dev-develop": "2.0-dev" + } + }, + "autoload": { + "psr-4": { + "League\\OAuth1\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ben Corlett", + "email": "bencorlett@me.com", + "homepage": "http://www.webcomm.com.au", + "role": "Developer" + } + ], + "description": "OAuth 1.0 Client Library", + "keywords": [ + "Authentication", + "SSO", + "authorization", + "bitbucket", + "identity", + "idp", + "oauth", + "oauth1", + "single sign on", + "trello", + "tumblr", + "twitter" + ], + "support": { + "issues": "https://github.com/thephpleague/oauth1-client/issues", + "source": "https://github.com/thephpleague/oauth1-client/tree/v1.9.0" + }, + "time": "2021-01-20T01:40:53+00:00" + }, + { + "name": "league/oauth2-server", + "version": "7.4.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/oauth2-server.git", + "reference": "2eb1cf79e59d807d89c256e7ac5e2bf8bdbd4acf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/oauth2-server/zipball/2eb1cf79e59d807d89c256e7ac5e2bf8bdbd4acf", + "reference": "2eb1cf79e59d807d89c256e7ac5e2bf8bdbd4acf", + "shasum": "" + }, + "require": { + "defuse/php-encryption": "^2.1", + "ext-openssl": "*", + "lcobucci/jwt": "^3.2.2", + "league/event": "^2.1", + "php": ">=7.0.0", + "psr/http-message": "^1.0.1" + }, + "replace": { + "league/oauth2server": "*", + "lncd/oauth2": "*" + }, + "require-dev": { + "phpstan/phpstan": "^0.9.2", + "phpstan/phpstan-phpunit": "^0.9.4", + "phpstan/phpstan-strict-rules": "^0.9.0", + "phpunit/phpunit": "^6.3 || ^7.0", + "roave/security-advisories": "dev-master", + "zendframework/zend-diactoros": "^1.3.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\OAuth2\\Server\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alex Bilbie", + "email": "hello@alexbilbie.com", + "homepage": "http://www.alexbilbie.com", + "role": "Developer" + }, + { + "name": "Andy Millington", + "email": "andrew@noexceptions.io", + "homepage": "https://www.noexceptions.io", + "role": "Developer" + } + ], + "description": "A lightweight and powerful OAuth 2.0 authorization and resource server library with support for all the core specification grants. This library will allow you to secure your API with OAuth and allow your applications users to approve apps that want to access their data from your API.", + "homepage": "https://oauth2.thephpleague.com/", + "keywords": [ + "Authentication", + "api", + "auth", + "authorisation", + "authorization", + "oauth", + "oauth 2", + "oauth 2.0", + "oauth2", + "protect", + "resource", + "secure", + "server" + ], + "support": { + "issues": "https://github.com/thephpleague/oauth2-server/issues", + "source": "https://github.com/thephpleague/oauth2-server/tree/master" + }, + "time": "2019-05-05T09:22:01+00:00" + }, + { + "name": "monolog/monolog", + "version": "1.26.0", + "source": { + "type": "git", + "url": "https://github.com/Seldaek/monolog.git", + "reference": "2209ddd84e7ef1256b7af205d0717fb62cfc9c33" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/2209ddd84e7ef1256b7af205d0717fb62cfc9c33", + "reference": "2209ddd84e7ef1256b7af205d0717fb62cfc9c33", + "shasum": "" + }, + "require": { + "php": ">=5.3.0", + "psr/log": "~1.0" + }, + "provide": { + "psr/log-implementation": "1.0.0" + }, + "require-dev": { + "aws/aws-sdk-php": "^2.4.9 || ^3.0", + "doctrine/couchdb": "~1.0@dev", + "graylog2/gelf-php": "~1.0", + "php-amqplib/php-amqplib": "~2.4", + "php-console/php-console": "^3.1.3", + "phpstan/phpstan": "^0.12.59", + "phpunit/phpunit": "~4.5", + "ruflin/elastica": ">=0.90 <3.0", + "sentry/sentry": "^0.13", + "swiftmailer/swiftmailer": "^5.3|^6.0" + }, + "suggest": { + "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", + "doctrine/couchdb": "Allow sending log messages to a CouchDB server", + "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", + "ext-mongo": "Allow sending log messages to a MongoDB server", + "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", + "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver", + "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", + "php-console/php-console": "Allow sending log messages to Google Chrome", + "rollbar/rollbar": "Allow sending log messages to Rollbar", + "ruflin/elastica": "Allow sending log messages to an Elastic Search server", + "sentry/sentry": "Allow sending log messages to a Sentry server" + }, + "type": "library", + "autoload": { + "psr-4": { + "Monolog\\": "src/Monolog" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "Sends your logs to files, sockets, inboxes, databases and various web services", + "homepage": "http://github.com/Seldaek/monolog", + "keywords": [ + "log", + "logging", + "psr-3" + ], + "support": { + "issues": "https://github.com/Seldaek/monolog/issues", + "source": "https://github.com/Seldaek/monolog/tree/1.26.0" + }, + "funding": [ + { + "url": "https://github.com/Seldaek", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/monolog/monolog", + "type": "tidelift" + } + ], + "time": "2020-12-14T12:56:38+00:00" + }, + { + "name": "nesbot/carbon", + "version": "2.44.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "e6ef33cb1f67a4bed831ed6d0f7e156739a5d8cd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/e6ef33cb1f67a4bed831ed6d0f7e156739a5d8cd", + "reference": "e6ef33cb1f67a4bed831ed6d0f7e156739a5d8cd", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1.8 || ^8.0", + "symfony/polyfill-mbstring": "^1.0", + "symfony/translation": "^3.4 || ^4.0 || ^5.0" + }, + "require-dev": { + "doctrine/orm": "^2.7", + "friendsofphp/php-cs-fixer": "^2.14 || ^3.0", + "kylekatarnls/multi-tester": "^2.0", + "phpmd/phpmd": "^2.9", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.54", + "phpunit/phpunit": "^7.5.20 || ^8.5.14", + "squizlabs/php_codesniffer": "^3.4" + }, + "bin": [ + "bin/carbon" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev", + "dev-3.x": "3.x-dev" + }, + "laravel": { + "providers": [ + "Carbon\\Laravel\\ServiceProvider" + ] + }, + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "autoload": { + "psr-4": { + "Carbon\\": "src/Carbon/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Brian Nesbitt", + "email": "brian@nesbot.com", + "homepage": "http://nesbot.com" + }, + { + "name": "kylekatarnls", + "homepage": "http://github.com/kylekatarnls" + } + ], + "description": "An API extension for DateTime that supports 281 different languages.", + "homepage": "http://carbon.nesbot.com", + "keywords": [ + "date", + "datetime", + "time" + ], + "support": { + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, + "funding": [ + { + "url": "https://opencollective.com/Carbon", + "type": "open_collective" + }, + { + "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon", + "type": "tidelift" + } + ], + "time": "2021-01-26T20:46:41+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v4.10.4", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e", + "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=7.0" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v4.10.4" + }, + "time": "2020-12-20T10:01:03+00:00" + }, + { + "name": "openpay/sdk", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/open-pay/openpay-php.git", + "reference": "6919d5aabe1e3132e9797908b26c9f5bbc5f9fe4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/open-pay/openpay-php/zipball/6919d5aabe1e3132e9797908b26c9f5bbc5f9fe4", + "reference": "6919d5aabe1e3132e9797908b26c9f5bbc5f9fe4", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "ext-hash": "*", + "php": ">=5.2.1" + }, + "require-dev": { + "phpunit/phpunit": "4.8.*" + }, + "default-branch": true, + "type": "library", + "autoload": { + "psr-0": { + "Openpay": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Openpay", + "email": "soporte@openpay.mx", + "homepage": "http://www.openpay.mx/docs/libraries.html" + }, + { + "name": "Federico Balderas", + "email": "federico.balderas@openpay.mx", + "homepage": "https://openpay.mx" + } + ], + "description": "This is a client implementing the payment services for Openpay at openpay.mx", + "support": { + "issues": "https://github.com/open-pay/openpay-php/issues", + "source": "https://github.com/open-pay/openpay-php/tree/master" + }, + "time": "2020-12-03T01:35:14+00:00" + }, + { + "name": "opis/closure", + "version": "3.6.1", + "source": { + "type": "git", + "url": "https://github.com/opis/closure.git", + "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/opis/closure/zipball/943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5", + "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5", + "shasum": "" + }, + "require": { + "php": "^5.4 || ^7.0 || ^8.0" + }, + "require-dev": { + "jeremeamia/superclosure": "^2.0", + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.6.x-dev" + } + }, + "autoload": { + "psr-4": { + "Opis\\Closure\\": "src/" + }, + "files": [ + "functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marius Sarca", + "email": "marius.sarca@gmail.com" + }, + { + "name": "Sorin Sarca", + "email": "sarca_sorin@hotmail.com" + } + ], + "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.", + "homepage": "https://opis.io/closure", + "keywords": [ + "anonymous functions", + "closure", + "function", + "serializable", + "serialization", + "serialize" + ], + "support": { + "issues": "https://github.com/opis/closure/issues", + "source": "https://github.com/opis/closure/tree/3.6.1" + }, + "time": "2020-11-07T02:01:34+00:00" + }, + { + "name": "paragonie/random_compat", + "version": "v9.99.99", + "source": { + "type": "git", + "url": "https://github.com/paragonie/random_compat.git", + "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/paragonie/random_compat/zipball/84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", + "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", + "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": "2018-07-02T15:55:56+00:00" + }, + { + "name": "phpoption/phpoption", + "version": "1.7.5", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/994ecccd8f3283ecf5ac33254543eb0ac946d525", + "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525", + "shasum": "" + }, + "require": { + "php": "^5.5.9 || ^7.0 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.7-dev" + } + }, + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Graham Campbell", + "email": "graham@alt-three.com" + } + ], + "description": "Option Type for PHP", + "keywords": [ + "language", + "option", + "php", + "type" + ], + "support": { + "issues": "https://github.com/schmittjoh/php-option/issues", + "source": "https://github.com/schmittjoh/php-option/tree/1.7.5" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "time": "2020-07-20T17:29:33+00:00" + }, + { + "name": "phpseclib/phpseclib", + "version": "2.0.30", + "source": { + "type": "git", + "url": "https://github.com/phpseclib/phpseclib.git", + "reference": "136b9ca7eebef78be14abf90d65c5e57b6bc5d36" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/136b9ca7eebef78be14abf90d65c5e57b6bc5d36", + "reference": "136b9ca7eebef78be14abf90d65c5e57b6bc5d36", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phing/phing": "~2.7", + "phpunit/phpunit": "^4.8.35|^5.7|^6.0|^9.4", + "squizlabs/php_codesniffer": "~2.0" + }, + "suggest": { + "ext-gmp": "Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.", + "ext-libsodium": "SSH2/SFTP can make use of some algorithms provided by the libsodium-php extension.", + "ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.", + "ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations." + }, + "type": "library", + "autoload": { + "files": [ + "phpseclib/bootstrap.php" + ], + "psr-4": { + "phpseclib\\": "phpseclib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jim Wigginton", + "email": "terrafrost@php.net", + "role": "Lead Developer" + }, + { + "name": "Patrick Monnerat", + "email": "pm@datasphere.ch", + "role": "Developer" + }, + { + "name": "Andreas Fischer", + "email": "bantu@phpbb.com", + "role": "Developer" + }, + { + "name": "Hans-Jürgen Petrich", + "email": "petrich@tronic-media.com", + "role": "Developer" + }, + { + "name": "Graham Campbell", + "email": "graham@alt-three.com", + "role": "Developer" + } + ], + "description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.", + "homepage": "http://phpseclib.sourceforge.net", + "keywords": [ + "BigInteger", + "aes", + "asn.1", + "asn1", + "blowfish", + "crypto", + "cryptography", + "encryption", + "rsa", + "security", + "sftp", + "signature", + "signing", + "ssh", + "twofish", + "x.509", + "x509" + ], + "support": { + "issues": "https://github.com/phpseclib/phpseclib/issues", + "source": "https://github.com/phpseclib/phpseclib/tree/2.0.30" + }, + "funding": [ + { + "url": "https://github.com/terrafrost", + "type": "github" + }, + { + "url": "https://www.patreon.com/phpseclib", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib", + "type": "tidelift" + } + ], + "time": "2020-12-17T05:42:04+00:00" + }, + { + "name": "psr/cache", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", + "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "support": { + "source": "https://github.com/php-fig/cache/tree/master" + }, + "time": "2016-08-06T20:24:11+00:00" + }, + { + "name": "psr/container", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", + "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/master" + }, + "time": "2017-02-14T16:28:37+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "shasum": "" + }, + "require": { + "php": ">=7.0.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory/tree/master" + }, + "time": "2019-04-30T12:38:16+00:00" + }, + { + "name": "psr/http-message", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/master" + }, + "time": "2016-08-06T14:39:51+00:00" + }, + { + "name": "psr/log", + "version": "1.1.3", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc", + "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "Psr/Log/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/1.1.3" + }, + "time": "2020-03-23T09:12:05+00:00" + }, + { + "name": "psr/simple-cache", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/master" + }, + "time": "2017-10-23T01:57:42+00:00" + }, + { + "name": "psy/psysh", + "version": "v0.9.12", + "source": { + "type": "git", + "url": "https://github.com/bobthecow/psysh.git", + "reference": "90da7f37568aee36b116a030c5f99c915267edd4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/90da7f37568aee36b116a030c5f99c915267edd4", + "reference": "90da7f37568aee36b116a030c5f99c915267edd4", + "shasum": "" + }, + "require": { + "dnoegel/php-xdg-base-dir": "0.1.*", + "ext-json": "*", + "ext-tokenizer": "*", + "jakub-onderka/php-console-highlighter": "0.3.*|0.4.*", + "nikic/php-parser": "~1.3|~2.0|~3.0|~4.0", + "php": ">=5.4.0", + "symfony/console": "~2.3.10|^2.4.2|~3.0|~4.0|~5.0", + "symfony/var-dumper": "~2.7|~3.0|~4.0|~5.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.2", + "hoa/console": "~2.15|~3.16", + "phpunit/phpunit": "~4.8.35|~5.0|~6.0|~7.0" + }, + "suggest": { + "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)", + "ext-pdo-sqlite": "The doc command requires SQLite to work.", + "ext-posix": "If you have PCNTL, you'll want the POSIX extension as well.", + "ext-readline": "Enables support for arrow-key history navigation, and showing and manipulating command history.", + "hoa/console": "A pure PHP readline implementation. You'll want this if your PHP install doesn't already support readline or libedit." + }, + "bin": [ + "bin/psysh" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-develop": "0.9.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Psy\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Justin Hileman", + "email": "justin@justinhileman.info", + "homepage": "http://justinhileman.com" + } + ], + "description": "An interactive shell for modern PHP.", + "homepage": "http://psysh.org", + "keywords": [ + "REPL", + "console", + "interactive", + "shell" + ], + "support": { + "issues": "https://github.com/bobthecow/psysh/issues", + "source": "https://github.com/bobthecow/psysh/tree/v0.9.12" + }, + "time": "2019-12-06T14:19:43+00:00" + }, + { + "name": "ralouphie/getallheaders", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" + }, + "type": "library", + "autoload": { + "files": [ + "src/getallheaders.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ralph Khattar", + "email": "ralph.khattar@gmail.com" + } + ], + "description": "A polyfill for getallheaders.", + "support": { + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" + }, + "time": "2019-03-08T08:55:37+00:00" + }, + { + "name": "ramsey/uuid", + "version": "3.9.3", + "source": { + "type": "git", + "url": "https://github.com/ramsey/uuid.git", + "reference": "7e1633a6964b48589b142d60542f9ed31bd37a92" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/7e1633a6964b48589b142d60542f9ed31bd37a92", + "reference": "7e1633a6964b48589b142d60542f9ed31bd37a92", + "shasum": "" + }, + "require": { + "ext-json": "*", + "paragonie/random_compat": "^1 | ^2 | 9.99.99", + "php": "^5.4 | ^7 | ^8", + "symfony/polyfill-ctype": "^1.8" + }, + "replace": { + "rhumsaa/uuid": "self.version" + }, + "require-dev": { + "codeception/aspect-mock": "^1 | ^2", + "doctrine/annotations": "^1.2", + "goaop/framework": "1.0.0-alpha.2 | ^1 | ^2.1", + "jakub-onderka/php-parallel-lint": "^1", + "mockery/mockery": "^0.9.11 | ^1", + "moontoast/math": "^1.1", + "paragonie/random-lib": "^2", + "php-mock/php-mock-phpunit": "^0.3 | ^1.1", + "phpunit/phpunit": "^4.8 | ^5.4 | ^6.5", + "squizlabs/php_codesniffer": "^3.5" + }, + "suggest": { + "ext-ctype": "Provides support for PHP Ctype functions", + "ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator", + "ext-openssl": "Provides the OpenSSL extension for use with the OpenSslGenerator", + "ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator", + "moontoast/math": "Provides support for converting UUID to 128-bit integer (in string form).", + "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", + "ramsey/uuid-console": "A console application for generating UUIDs with ramsey/uuid", + "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Ramsey\\Uuid\\": "src/" + }, + "files": [ + "src/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ben Ramsey", + "email": "ben@benramsey.com", + "homepage": "https://benramsey.com" + }, + { + "name": "Marijn Huizendveld", + "email": "marijn.huizendveld@gmail.com" + }, + { + "name": "Thibaud Fabre", + "email": "thibaud@aztech.io" + } + ], + "description": "Formerly rhumsaa/uuid. A PHP 5.4+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).", + "homepage": "https://github.com/ramsey/uuid", + "keywords": [ + "guid", + "identifier", + "uuid" + ], + "support": { + "issues": "https://github.com/ramsey/uuid/issues", + "rss": "https://github.com/ramsey/uuid/releases.atom", + "source": "https://github.com/ramsey/uuid", + "wiki": "https://github.com/ramsey/uuid/wiki" + }, + "time": "2020-02-21T04:36:14+00:00" + }, + { + "name": "rize/uri-template", + "version": "0.3.2", + "source": { + "type": "git", + "url": "https://github.com/rize/UriTemplate.git", + "reference": "9e5fdd5c47147aa5adf7f760002ee591ed37b9ca" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/rize/UriTemplate/zipball/9e5fdd5c47147aa5adf7f760002ee591ed37b9ca", + "reference": "9e5fdd5c47147aa5adf7f760002ee591ed37b9ca", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.0.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "Rize\\UriTemplate": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marut K", + "homepage": "http://twitter.com/rezigned" + } + ], + "description": "PHP URI Template (RFC 6570) supports both expansion & extraction", + "keywords": [ + "RFC 6570", + "template", + "uri" + ], + "support": { + "issues": "https://github.com/rize/UriTemplate/issues", + "source": "https://github.com/rize/UriTemplate/tree/master" + }, + "time": "2017-06-14T03:57:53+00:00" + }, + { + "name": "superbalist/flysystem-google-storage", + "version": "7.2.2", + "source": { + "type": "git", + "url": "https://github.com/Superbalist/flysystem-google-cloud-storage.git", + "reference": "87e2f450c0e4b5200fef9ffe6863068cc873d734" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Superbalist/flysystem-google-cloud-storage/zipball/87e2f450c0e4b5200fef9ffe6863068cc873d734", + "reference": "87e2f450c0e4b5200fef9ffe6863068cc873d734", + "shasum": "" + }, + "require": { + "google/cloud-storage": "~1.0", + "league/flysystem": "~1.0", + "php": ">=5.5.0" + }, + "require-dev": { + "mockery/mockery": "0.9.*", + "phpunit/phpunit": "~4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "Superbalist\\Flysystem\\GoogleStorage\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Superbalist.com a division of Takealot Online (Pty) Ltd", + "email": "info@superbalist.com" + } + ], + "description": "Flysystem adapter for Google Cloud Storage", + "support": { + "issues": "https://github.com/Superbalist/flysystem-google-cloud-storage/issues", + "source": "https://github.com/Superbalist/flysystem-google-cloud-storage/tree/7.2.2" + }, + "time": "2019-10-10T12:22:54+00:00" + }, + { + "name": "superbalist/laravel-google-cloud-storage", + "version": "2.2.4", + "source": { + "type": "git", + "url": "https://github.com/Superbalist/laravel-google-cloud-storage.git", + "reference": "745ada3c32a079dcd0d8a8e380e0fd01a49f16e3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Superbalist/laravel-google-cloud-storage/zipball/745ada3c32a079dcd0d8a8e380e0fd01a49f16e3", + "reference": "745ada3c32a079dcd0d8a8e380e0fd01a49f16e3", + "shasum": "" + }, + "require": { + "illuminate/filesystem": "^5.1|^6.0|^7.0|^8.0", + "illuminate/support": "^5.1|^6.0|^7.0|^8.0", + "league/flysystem-cached-adapter": "^1.0", + "php": ">=5.5.9", + "superbalist/flysystem-google-storage": ">=3.0 <8.0" + }, + "require-dev": { + "phpunit/phpunit": ">=4.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + }, + "laravel": { + "providers": [ + "Superbalist\\LaravelGoogleCloudStorage\\GoogleCloudStorageServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Superbalist\\LaravelGoogleCloudStorage\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Superbalist.com a division of Takealot Online (Pty) Ltd", + "email": "info@superbalist.com" + } + ], + "description": "A Google Cloud Storage filesystem for Laravel", + "support": { + "issues": "https://github.com/Superbalist/laravel-google-cloud-storage/issues", + "source": "https://github.com/Superbalist/laravel-google-cloud-storage/tree/2.2.4" + }, + "time": "2020-09-22T06:16:53+00:00" + }, + { + "name": "swiftmailer/swiftmailer", + "version": "v6.2.5", + "source": { + "type": "git", + "url": "https://github.com/swiftmailer/swiftmailer.git", + "reference": "698a6a9f54d7eb321274de3ad19863802c879fb7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/698a6a9f54d7eb321274de3ad19863802c879fb7", + "reference": "698a6a9f54d7eb321274de3ad19863802c879fb7", + "shasum": "" + }, + "require": { + "egulias/email-validator": "^2.0", + "php": ">=7.0.0", + "symfony/polyfill-iconv": "^1.0", + "symfony/polyfill-intl-idn": "^1.10", + "symfony/polyfill-mbstring": "^1.0" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "symfony/phpunit-bridge": "^4.4|^5.0" + }, + "suggest": { + "ext-intl": "Needed to support internationalized email addresses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "6.2-dev" + } + }, + "autoload": { + "files": [ + "lib/swift_required.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Chris Corbyn" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + } + ], + "description": "Swiftmailer, free feature-rich PHP mailer", + "homepage": "https://swiftmailer.symfony.com", + "keywords": [ + "email", + "mail", + "mailer" + ], + "support": { + "issues": "https://github.com/swiftmailer/swiftmailer/issues", + "source": "https://github.com/swiftmailer/swiftmailer/tree/v6.2.5" + }, + "funding": [ + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/swiftmailer/swiftmailer", + "type": "tidelift" + } + ], + "time": "2021-01-12T09:35:59+00:00" + }, + { + "name": "symfony/console", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "24026c44fc37099fa145707fecd43672831b837a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/24026c44fc37099fa145707fecd43672831b837a", + "reference": "24026c44fc37099fa145707fecd43672831b837a", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php73": "^1.8", + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.1|^2" + }, + "conflict": { + "symfony/dependency-injection": "<3.4", + "symfony/event-dispatcher": "<4.3|>=5", + "symfony/lock": "<4.4", + "symfony/process": "<3.3" + }, + "provide": { + "psr/log-implementation": "1.0" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "^3.4|^4.0|^5.0", + "symfony/dependency-injection": "^3.4|^4.0|^5.0", + "symfony/event-dispatcher": "^4.3", + "symfony/lock": "^4.4|^5.0", + "symfony/process": "^3.4|^4.0|^5.0", + "symfony/var-dumper": "^4.3|^5.0" + }, + "suggest": { + "psr/log": "For using the console logger", + "symfony/event-dispatcher": "", + "symfony/lock": "", + "symfony/process": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Console\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases the creation of beautiful and testable command line interfaces", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/console/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/css-selector", + "version": "v5.2.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/css-selector.git", + "reference": "f65f217b3314504a1ec99c2d6ef69016bb13490f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/f65f217b3314504a1ec99c2d6ef69016bb13490f", + "reference": "f65f217b3314504a1ec99c2d6ef69016bb13490f", + "shasum": "" + }, + "require": { + "php": ">=7.2.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\CssSelector\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Converts CSS selectors to XPath expressions", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/css-selector/tree/v5.2.2" + }, + "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": "2021-01-27T10:01:46+00:00" + }, + { + "name": "symfony/debug", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/debug.git", + "reference": "af4987aa4a5630e9615be9d9c3ed1b0f24ca449c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/debug/zipball/af4987aa4a5630e9615be9d9c3ed1b0f24ca449c", + "reference": "af4987aa4a5630e9615be9d9c3ed1b0f24ca449c", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "psr/log": "~1.0", + "symfony/polyfill-php80": "^1.15" + }, + "conflict": { + "symfony/http-kernel": "<3.4" + }, + "require-dev": { + "symfony/http-kernel": "^3.4|^4.0|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Debug\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools to ease debugging PHP code", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/debug/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v2.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5fa56b4074d1ae755beb55617ddafe6f5d78f665", + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/master" + }, + "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": "2020-09-07T11:33:47+00:00" + }, + { + "name": "symfony/error-handler", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/error-handler.git", + "reference": "d603654eaeb713503bba3e308b9e748e5a6d3f2e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/d603654eaeb713503bba3e308b9e748e5a6d3f2e", + "reference": "d603654eaeb713503bba3e308b9e748e5a6d3f2e", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "psr/log": "~1.0", + "symfony/debug": "^4.4.5", + "symfony/polyfill-php80": "^1.15", + "symfony/var-dumper": "^4.4|^5.0" + }, + "require-dev": { + "symfony/http-kernel": "^4.4|^5.0", + "symfony/serializer": "^4.4|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\ErrorHandler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools to manage errors and ease debugging PHP code", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/error-handler/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "c352647244bd376bf7d31efbd5401f13f50dad0c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/c352647244bd376bf7d31efbd5401f13f50dad0c", + "reference": "c352647244bd376bf7d31efbd5401f13f50dad0c", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "symfony/event-dispatcher-contracts": "^1.1" + }, + "conflict": { + "symfony/dependency-injection": "<3.4" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "1.1" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "^3.4|^4.0|^5.0", + "symfony/dependency-injection": "^3.4|^4.0|^5.0", + "symfony/error-handler": "~3.4|~4.4", + "symfony/expression-language": "^3.4|^4.0|^5.0", + "symfony/http-foundation": "^3.4|^4.0|^5.0", + "symfony/service-contracts": "^1.1|^2", + "symfony/stopwatch": "^3.4|^4.0|^5.0" + }, + "suggest": { + "symfony/dependency-injection": "", + "symfony/http-kernel": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/event-dispatcher/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v1.1.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/84e23fdcd2517bf37aecbd16967e83f0caee25a7", + "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7", + "shasum": "" + }, + "require": { + "php": ">=7.1.3" + }, + "suggest": { + "psr/event-dispatcher": "", + "symfony/event-dispatcher-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" + } + }, + "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": "Generic abstractions related to dispatching event", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v1.1.9" + }, + "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": "2020-07-06T13:19:58+00:00" + }, + { + "name": "symfony/finder", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "25d79cfccfc12e84e7a63a248c3f0720fdd92db6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/25d79cfccfc12e84e7a63a248c3f0720fdd92db6", + "reference": "25d79cfccfc12e84e7a63a248c3f0720fdd92db6", + "shasum": "" + }, + "require": { + "php": ">=7.1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Finder\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Finds files and directories via an intuitive fluent interface", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/http-client-contracts", + "version": "v2.3.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "41db680a15018f9c1d4b23516059633ce280ca33" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/41db680a15018f9c1d4b23516059633ce280ca33", + "reference": "41db680a15018f9c1d4b23516059633ce280ca33", + "shasum": "" + }, + "require": { + "php": ">=7.2.5" + }, + "suggest": { + "symfony/http-client-implementation": "" + }, + "type": "library", + "extra": { + "branch-version": "2.3", + "branch-alias": { + "dev-main": "2.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + } + }, + "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": "Generic abstractions related to HTTP clients", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/http-client-contracts/tree/v2.3.1" + }, + "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": "2020-10-14T17:08:19+00:00" + }, + { + "name": "symfony/http-foundation", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-foundation.git", + "reference": "8888741b633f6c3d1e572b7735ad2cae3e03f9c5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/8888741b633f6c3d1e572b7735ad2cae3e03f9c5", + "reference": "8888741b633f6c3d1e572b7735ad2cae3e03f9c5", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "symfony/mime": "^4.3|^5.0", + "symfony/polyfill-mbstring": "~1.1", + "symfony/polyfill-php80": "^1.15" + }, + "require-dev": { + "predis/predis": "~1.0", + "symfony/expression-language": "^3.4|^4.0|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpFoundation\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Defines an object-oriented layer for the HTTP specification", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-foundation/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/http-kernel", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-kernel.git", + "reference": "07ea794a327d7c8c5d76e3058fde9fec6a711cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/07ea794a327d7c8c5d76e3058fde9fec6a711cb4", + "reference": "07ea794a327d7c8c5d76e3058fde9fec6a711cb4", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "psr/log": "~1.0", + "symfony/error-handler": "^4.4", + "symfony/event-dispatcher": "^4.4", + "symfony/http-client-contracts": "^1.1|^2", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/polyfill-ctype": "^1.8", + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.15" + }, + "conflict": { + "symfony/browser-kit": "<4.3", + "symfony/config": "<3.4", + "symfony/console": ">=5", + "symfony/dependency-injection": "<4.3", + "symfony/translation": "<4.2", + "twig/twig": "<1.43|<2.13,>=2" + }, + "provide": { + "psr/log-implementation": "1.0" + }, + "require-dev": { + "psr/cache": "~1.0", + "symfony/browser-kit": "^4.3|^5.0", + "symfony/config": "^3.4|^4.0|^5.0", + "symfony/console": "^3.4|^4.0", + "symfony/css-selector": "^3.4|^4.0|^5.0", + "symfony/dependency-injection": "^4.3|^5.0", + "symfony/dom-crawler": "^3.4|^4.0|^5.0", + "symfony/expression-language": "^3.4|^4.0|^5.0", + "symfony/finder": "^3.4|^4.0|^5.0", + "symfony/process": "^3.4|^4.0|^5.0", + "symfony/routing": "^3.4|^4.0|^5.0", + "symfony/stopwatch": "^3.4|^4.0|^5.0", + "symfony/templating": "^3.4|^4.0|^5.0", + "symfony/translation": "^4.2|^5.0", + "symfony/translation-contracts": "^1.1|^2", + "twig/twig": "^1.43|^2.13|^3.0.4" + }, + "suggest": { + "symfony/browser-kit": "", + "symfony/config": "", + "symfony/console": "", + "symfony/dependency-injection": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpKernel\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides a structured process for converting a Request into a Response", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-kernel/tree/v4.4.19" + }, + "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": "2021-01-27T13:50:53+00:00" + }, + { + "name": "symfony/mime", + "version": "v5.2.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/mime.git", + "reference": "37bade585ea100d235c031b258eff93b5b6bb9a9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mime/zipball/37bade585ea100d235c031b258eff93b5b6bb9a9", + "reference": "37bade585ea100d235c031b258eff93b5b6bb9a9", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-intl-idn": "^1.10", + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.15" + }, + "conflict": { + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", + "symfony/mailer": "<4.4" + }, + "require-dev": { + "egulias/email-validator": "^2.1.10", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/property-access": "^4.4|^5.1", + "symfony/property-info": "^4.4|^5.1", + "symfony/serializer": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Mime\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Allows manipulating MIME messages", + "homepage": "https://symfony.com", + "keywords": [ + "mime", + "mime-type" + ], + "support": { + "source": "https://github.com/symfony/mime/tree/v5.2.2" + }, + "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": "2021-01-25T14:08:25+00:00" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "c6c942b1ac76c82448322025e084cadc56048b4e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/c6c942b1ac76c82448322025e084cadc56048b4e", + "reference": "c6c942b1ac76c82448322025e084cadc56048b4e", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/polyfill-iconv", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-iconv.git", + "reference": "b34bfb8c4c22650ac080d2662ae3502e5f2f4ae6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/b34bfb8c4c22650ac080d2662ae3502e5f2f4ae6", + "reference": "b34bfb8c4c22650ac080d2662ae3502e5f2f4ae6", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-iconv": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Iconv\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Iconv extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "iconv", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/polyfill-intl-idn", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-idn.git", + "reference": "0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44", + "reference": "0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "symfony/polyfill-intl-normalizer": "^1.10", + "symfony/polyfill-php72": "^1.10" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Intl\\Idn\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Laurent Bassin", + "email": "laurent@bassin.info" + }, + { + "name": "Trevor Rowbotham", + "email": "trevor.rowbotham@pm.me" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "idn", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "6e971c891537eb617a00bb07a43d182a6915faba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/6e971c891537eb617a00bb07a43d182a6915faba", + "reference": "6e971c891537eb617a00bb07a43d182a6915faba", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "files": [ + "bootstrap.php" + ], + "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 for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.22.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": "2021-01-07T17:09:11+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f377a3dd1fde44d37b9831d68dc8dea3ffd28e13", + "reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/polyfill-php72", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php72.git", + "reference": "cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9", + "reference": "cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php72\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php72/tree/v1.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/polyfill-php73", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php73.git", + "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", + "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php73\\": "" + }, + "files": [ + "bootstrap.php" + ], + "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.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.22.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/dc3063ba22c2a1fd2f45ed856374d79114998f91", + "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/process", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "7e950b6366d4da90292c2e7fa820b3c1842b965a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/7e950b6366d4da90292c2e7fa820b3c1842b965a", + "reference": "7e950b6366d4da90292c2e7fa820b3c1842b965a", + "shasum": "" + }, + "require": { + "php": ">=7.1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Executes commands in sub-processes", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/psr-http-message-bridge", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/psr-http-message-bridge.git", + "reference": "9d3e80d54d9ae747ad573cad796e8e247df7b796" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/9d3e80d54d9ae747ad573cad796e8e247df7b796", + "reference": "9d3e80d54d9ae747ad573cad796e8e247df7b796", + "shasum": "" + }, + "require": { + "php": "^7.1", + "psr/http-message": "^1.0", + "symfony/http-foundation": "^4.4 || ^5.0" + }, + "require-dev": { + "nyholm/psr7": "^1.1", + "symfony/phpunit-bridge": "^4.4 || ^5.0", + "zendframework/zend-diactoros": "^1.4.1 || ^2.0" + }, + "suggest": { + "nyholm/psr7": "For a super lightweight PSR-7/17 implementation" + }, + "type": "symfony-bridge", + "extra": { + "branch-alias": { + "dev-master": "1.3-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Bridge\\PsrHttpMessage\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + } + ], + "description": "PSR HTTP message bridge", + "homepage": "http://symfony.com", + "keywords": [ + "http", + "http-message", + "psr-17", + "psr-7" + ], + "support": { + "issues": "https://github.com/symfony/psr-http-message-bridge/issues", + "source": "https://github.com/symfony/psr-http-message-bridge/tree/master" + }, + "time": "2019-11-25T19:33:50+00:00" + }, + { + "name": "symfony/routing", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/routing.git", + "reference": "87529f6e305c7acb162840d1ea57922038072425" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/routing/zipball/87529f6e305c7acb162840d1ea57922038072425", + "reference": "87529f6e305c7acb162840d1ea57922038072425", + "shasum": "" + }, + "require": { + "php": ">=7.1.3" + }, + "conflict": { + "symfony/config": "<4.2", + "symfony/dependency-injection": "<3.4", + "symfony/yaml": "<3.4" + }, + "require-dev": { + "doctrine/annotations": "^1.10.4", + "psr/log": "~1.0", + "symfony/config": "^4.2|^5.0", + "symfony/dependency-injection": "^3.4|^4.0|^5.0", + "symfony/expression-language": "^3.4|^4.0|^5.0", + "symfony/http-foundation": "^3.4|^4.0|^5.0", + "symfony/yaml": "^3.4|^4.0|^5.0" + }, + "suggest": { + "doctrine/annotations": "For using the annotation loader", + "symfony/config": "For using the all-in-one router or any loader", + "symfony/expression-language": "For using expression matching", + "symfony/http-foundation": "For using a Symfony Request object", + "symfony/yaml": "For using the YAML loader" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Routing\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Maps an HTTP request to a set of configuration variables", + "homepage": "https://symfony.com", + "keywords": [ + "router", + "routing", + "uri", + "url" + ], + "support": { + "source": "https://github.com/symfony/routing/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v2.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1", + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/container": "^1.0" + }, + "suggest": { + "symfony/service-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + } + }, + "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": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/master" + }, + "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": "2020-09-07T11:33:47+00:00" + }, + { + "name": "symfony/translation", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation.git", + "reference": "e1d0c67167a553556d9f974b5fa79c2448df317a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation/zipball/e1d0c67167a553556d9f974b5fa79c2448df317a", + "reference": "e1d0c67167a553556d9f974b5fa79c2448df317a", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/translation-contracts": "^1.1.6|^2" + }, + "conflict": { + "symfony/config": "<3.4", + "symfony/dependency-injection": "<3.4", + "symfony/http-kernel": "<4.4", + "symfony/yaml": "<3.4" + }, + "provide": { + "symfony/translation-implementation": "1.0" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "^3.4|^4.0|^5.0", + "symfony/console": "^3.4|^4.0|^5.0", + "symfony/dependency-injection": "^3.4|^4.0|^5.0", + "symfony/finder": "~2.8|~3.0|~4.0|^5.0", + "symfony/http-kernel": "^4.4", + "symfony/intl": "^3.4|^4.0|^5.0", + "symfony/service-contracts": "^1.1.2|^2", + "symfony/yaml": "^3.4|^4.0|^5.0" + }, + "suggest": { + "psr/log-implementation": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Translation\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools to internationalize your application", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/translation/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "symfony/translation-contracts", + "version": "v2.3.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation-contracts.git", + "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e2eaa60b558f26a4b0354e1bbb25636efaaad105", + "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105", + "shasum": "" + }, + "require": { + "php": ">=7.2.5" + }, + "suggest": { + "symfony/translation-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Translation\\": "" + } + }, + "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": "Generic abstractions related to translation", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/translation-contracts/tree/v2.3.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": "2020-09-28T13:05:58+00:00" + }, + { + "name": "symfony/var-dumper", + "version": "v4.4.19", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-dumper.git", + "reference": "a1eab2f69906dc83c5ddba4632180260d0ab4f7f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/a1eab2f69906dc83c5ddba4632180260d0ab4f7f", + "reference": "a1eab2f69906dc83c5ddba4632180260d0ab4f7f", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php72": "~1.5", + "symfony/polyfill-php80": "^1.15" + }, + "conflict": { + "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", + "symfony/console": "<3.4" + }, + "require-dev": { + "ext-iconv": "*", + "symfony/console": "^3.4|^4.0|^5.0", + "symfony/process": "^4.4|^5.0", + "twig/twig": "^1.43|^2.13|^3.0.4" + }, + "suggest": { + "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", + "ext-intl": "To show region name in time zone dump", + "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script" + }, + "bin": [ + "Resources/bin/var-dump-server" + ], + "type": "library", + "autoload": { + "files": [ + "Resources/functions/dump.php" + ], + "psr-4": { + "Symfony\\Component\\VarDumper\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Provides mechanisms for walking through any arbitrary PHP variable", + "homepage": "https://symfony.com", + "keywords": [ + "debug", + "dump" + ], + "support": { + "source": "https://github.com/symfony/var-dumper/tree/v4.4.19" + }, + "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": "2021-01-27T09:09:26+00:00" + }, + { + "name": "tijsverkoyen/css-to-inline-styles", + "version": "2.2.3", + "source": { + "type": "git", + "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", + "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/b43b05cf43c1b6d849478965062b6ef73e223bb5", + "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "php": "^5.5 || ^7.0 || ^8.0", + "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "TijsVerkoyen\\CssToInlineStyles\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Tijs Verkoyen", + "email": "css_to_inline_styles@verkoyen.eu", + "role": "Developer" + } + ], + "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", + "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", + "support": { + "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.3" + }, + "time": "2020-07-13T06:12:54+00:00" + }, + { + "name": "timehunter/laravel-google-recaptcha-v3", + "version": "v2.4.3", + "source": { + "type": "git", + "url": "https://github.com/RyanDaDeng/laravel-google-recaptcha-v3.git", + "reference": "4fce3e300d215d50b0c7287a372e664734897b56" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/RyanDaDeng/laravel-google-recaptcha-v3/zipball/4fce3e300d215d50b0c7287a372e664734897b56", + "reference": "4fce3e300d215d50b0c7287a372e664734897b56", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "orchestra/testbench": "~3.0", + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "~7.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "TimeHunter\\LaravelGoogleReCaptchaV3\\Providers\\GoogleReCaptchaV3ServiceProvider" + ], + "aliases": { + "GoogleReCaptchaV3": "TimeHunter\\LaravelGoogleReCaptchaV3\\Facades\\GoogleReCaptchaV3" + } + }, + "branch-alias": { + "dev-master": "3.0.*-dev" + } + }, + "autoload": { + "psr-4": { + "TimeHunter\\LaravelGoogleReCaptchaV3\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ryan Deng", + "email": "ryandadeng@gmail.com", + "homepage": "https://ryandeng.com" + } + ], + "description": "Laravel Package for google reCAPTCHA v3", + "homepage": "https://github.com/RyanDaDeng/laravel-google-recaptcha-v3", + "keywords": [ + "Google ReCaptcha", + "GoogleReCaptcha", + "Laravel reCAPTCHA", + "google recaptcha v3", + "laravel", + "laravel google recaptcha", + "laravel google recaptcha v3", + "laravel recaptcha v3", + "recaptcha", + "recaptcha v3", + "recaptcha v3 laravel" + ], + "support": { + "issues": "https://github.com/RyanDaDeng/laravel-google-recaptcha-v3/issues", + "source": "https://github.com/RyanDaDeng/laravel-google-recaptcha-v3/tree/v2.4.3" + }, + "time": "2021-02-19T02:58:44+00:00" + }, + { + "name": "vlucas/phpdotenv", + "version": "v3.6.8", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "5e679f7616db829358341e2d5cccbd18773bdab8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/5e679f7616db829358341e2d5cccbd18773bdab8", + "reference": "5e679f7616db829358341e2d5cccbd18773bdab8", + "shasum": "" + }, + "require": { + "php": "^5.4 || ^7.0 || ^8.0", + "phpoption/phpoption": "^1.5.2", + "symfony/polyfill-ctype": "^1.17" + }, + "require-dev": { + "ext-filter": "*", + "ext-pcre": "*", + "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator.", + "ext-pcre": "Required to use most of the library." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.6-dev" + } + }, + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "graham@alt-three.com", + "homepage": "https://gjcampbell.co.uk/" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://vancelucas.com/" + } + ], + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "keywords": [ + "dotenv", + "env", + "environment" + ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v3.6.8" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "time": "2021-01-20T14:39:46+00:00" + }, + { + "name": "zendframework/zend-diactoros", + "version": "2.2.1", + "source": { + "type": "git", + "url": "https://github.com/zendframework/zend-diactoros.git", + "reference": "de5847b068362a88684a55b0dbb40d85986cfa52" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/de5847b068362a88684a55b0dbb40d85986cfa52", + "reference": "de5847b068362a88684a55b0dbb40d85986cfa52", + "shasum": "" + }, + "require": { + "php": "^7.1", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "ext-curl": "*", + "ext-dom": "*", + "ext-libxml": "*", + "http-interop/http-factory-tests": "^0.5.0", + "php-http/psr7-integration-tests": "dev-master", + "phpunit/phpunit": "^7.0.2", + "zendframework/zend-coding-standard": "~1.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1.x-dev", + "dev-develop": "2.2.x-dev", + "dev-release-1.8": "1.8.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions/create_uploaded_file.php", + "src/functions/marshal_headers_from_sapi.php", + "src/functions/marshal_method_from_sapi.php", + "src/functions/marshal_protocol_version_from_sapi.php", + "src/functions/marshal_uri_from_sapi.php", + "src/functions/normalize_server.php", + "src/functions/normalize_uploaded_files.php", + "src/functions/parse_cookie_header.php" + ], + "psr-4": { + "Zend\\Diactoros\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR HTTP Message implementations", + "keywords": [ + "http", + "psr", + "psr-7" + ], + "support": { + "docs": "https://docs.zendframework.com/zend-diactoros/", + "forum": "https://discourse.zendframework.com/c/questions/exprssive", + "issues": "https://github.com/zendframework/zend-diactoros/issues", + "rss": "https://github.com/zendframework/zend-diactoros/releases.atom", + "slack": "https://zendframework-slack.herokuapp.com", + "source": "https://github.com/zendframework/zend-diactoros" + }, + "abandoned": "laminas/laminas-diactoros", + "time": "2019-11-13T19:16:13+00:00" + } + ], + "packages-dev": [ + { + "name": "beyondcode/laravel-dump-server", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/beyondcode/laravel-dump-server.git", + "reference": "fcc88fa66895f8c1ff83f6145a5eff5fa2a0739a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/beyondcode/laravel-dump-server/zipball/fcc88fa66895f8c1ff83f6145a5eff5fa2a0739a", + "reference": "fcc88fa66895f8c1ff83f6145a5eff5fa2a0739a", + "shasum": "" + }, + "require": { + "illuminate/console": "5.6.*|5.7.*|5.8.*|^6.0", + "illuminate/http": "5.6.*|5.7.*|5.8.*|^6.0", + "illuminate/support": "5.6.*|5.7.*|5.8.*|^6.0", + "php": "^7.1", + "symfony/var-dumper": "^4.1.1" + }, + "require-dev": { + "larapack/dd": "^1.0", + "phpunit/phpunit": "^7.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "BeyondCode\\DumpServer\\DumpServerServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "BeyondCode\\DumpServer\\": "src" + }, + "files": [ + "helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marcel Pociot", + "email": "marcel@beyondco.de", + "homepage": "https://beyondco.de", + "role": "Developer" + } + ], + "description": "Symfony Var-Dump Server for Laravel", + "homepage": "https://github.com/beyondcode/laravel-dump-server", + "keywords": [ + "beyondcode", + "laravel-dump-server" + ], + "support": { + "issues": "https://github.com/beyondcode/laravel-dump-server/issues", + "source": "https://github.com/beyondcode/laravel-dump-server/tree/1.3.0" + }, + "time": "2019-08-11T13:17:40+00:00" + }, + { + "name": "doctrine/instantiator", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^8.0", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "https://ocramius.github.io/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", + "keywords": [ + "constructor", + "instantiate" + ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/1.4.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" + } + ], + "time": "2020-11-10T18:47:58+00:00" + }, + { + "name": "filp/whoops", + "version": "2.9.2", + "source": { + "type": "git", + "url": "https://github.com/filp/whoops.git", + "reference": "df7933820090489623ce0be5e85c7e693638e536" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/filp/whoops/zipball/df7933820090489623ce0be5e85c7e693638e536", + "reference": "df7933820090489623ce0be5e85c7e693638e536", + "shasum": "" + }, + "require": { + "php": "^5.5.9 || ^7.0 || ^8.0", + "psr/log": "^1.0.1" + }, + "require-dev": { + "mockery/mockery": "^0.9 || ^1.0", + "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.3", + "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" + }, + "suggest": { + "symfony/var-dumper": "Pretty print complex values better with var-dumper available", + "whoops/soap": "Formats errors as SOAP responses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Whoops\\": "src/Whoops/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Filipe Dobreira", + "homepage": "https://github.com/filp", + "role": "Developer" + } + ], + "description": "php error handling for cool kids", + "homepage": "https://filp.github.io/whoops/", + "keywords": [ + "error", + "exception", + "handling", + "library", + "throwable", + "whoops" + ], + "support": { + "issues": "https://github.com/filp/whoops/issues", + "source": "https://github.com/filp/whoops/tree/2.9.2" + }, + "funding": [ + { + "url": "https://github.com/denis-sokolov", + "type": "github" + } + ], + "time": "2021-01-24T12:00:00+00:00" + }, + { + "name": "fzaninotto/faker", + "version": "v1.9.2", + "source": { + "type": "git", + "url": "https://github.com/fzaninotto/Faker.git", + "reference": "848d8125239d7dbf8ab25cb7f054f1a630e68c2e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/848d8125239d7dbf8ab25cb7f054f1a630e68c2e", + "reference": "848d8125239d7dbf8ab25cb7f054f1a630e68c2e", + "shasum": "" + }, + "require": { + "php": "^5.3.3 || ^7.0" + }, + "require-dev": { + "ext-intl": "*", + "phpunit/phpunit": "^4.8.35 || ^5.7", + "squizlabs/php_codesniffer": "^2.9.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.9-dev" + } + }, + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "François Zaninotto" + } + ], + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "data", + "faker", + "fixtures" + ], + "support": { + "issues": "https://github.com/fzaninotto/Faker/issues", + "source": "https://github.com/fzaninotto/Faker/tree/v1.9.2" + }, + "abandoned": true, + "time": "2020-12-11T09:56:16+00:00" + }, + { + "name": "hamcrest/hamcrest-php", + "version": "v2.0.1", + "source": { + "type": "git", + "url": "https://github.com/hamcrest/hamcrest-php.git", + "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", + "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", + "shasum": "" + }, + "require": { + "php": "^5.3|^7.0|^8.0" + }, + "replace": { + "cordoval/hamcrest-php": "*", + "davedevelopment/hamcrest-php": "*", + "kodova/hamcrest-php": "*" + }, + "require-dev": { + "phpunit/php-file-iterator": "^1.4 || ^2.0", + "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1-dev" + } + }, + "autoload": { + "classmap": [ + "hamcrest" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "This is the PHP port of Hamcrest Matchers", + "keywords": [ + "test" + ], + "support": { + "issues": "https://github.com/hamcrest/hamcrest-php/issues", + "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.0.1" + }, + "time": "2020-07-09T08:09:16+00:00" + }, + { + "name": "mockery/mockery", + "version": "1.3.3", + "source": { + "type": "git", + "url": "https://github.com/mockery/mockery.git", + "reference": "60fa2f67f6e4d3634bb4a45ff3171fa52215800d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mockery/mockery/zipball/60fa2f67f6e4d3634bb4a45ff3171fa52215800d", + "reference": "60fa2f67f6e4d3634bb4a45ff3171fa52215800d", + "shasum": "" + }, + "require": { + "hamcrest/hamcrest-php": "^2.0.1", + "lib-pcre": ">=7.0", + "php": ">=5.6.0" + }, + "require-dev": { + "phpunit/phpunit": "^5.7.10|^6.5|^7.5|^8.5|^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.3.x-dev" + } + }, + "autoload": { + "psr-0": { + "Mockery": "library/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Pádraic Brady", + "email": "padraic.brady@gmail.com", + "homepage": "http://blog.astrumfutura.com" + }, + { + "name": "Dave Marshall", + "email": "dave.marshall@atstsolutions.co.uk", + "homepage": "http://davedevelopment.co.uk" + } + ], + "description": "Mockery is a simple yet flexible PHP mock object framework", + "homepage": "https://github.com/mockery/mockery", + "keywords": [ + "BDD", + "TDD", + "library", + "mock", + "mock objects", + "mockery", + "stub", + "test", + "test double", + "testing" + ], + "support": { + "issues": "https://github.com/mockery/mockery/issues", + "source": "https://github.com/mockery/mockery/tree/1.3.3" + }, + "time": "2020-08-11T18:10:21+00:00" + }, + { + "name": "myclabs/deep-copy", + "version": "1.10.2", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", + "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220", + "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "replace": { + "myclabs/deep-copy": "self.version" + }, + "require-dev": { + "doctrine/collections": "^1.0", + "doctrine/common": "^2.6", + "phpunit/phpunit": "^7.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + }, + "files": [ + "src/DeepCopy/deep_copy.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Create deep copies (clones) of your objects", + "keywords": [ + "clone", + "copy", + "duplicate", + "object", + "object graph" + ], + "support": { + "issues": "https://github.com/myclabs/DeepCopy/issues", + "source": "https://github.com/myclabs/DeepCopy/tree/1.10.2" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", + "type": "tidelift" + } + ], + "time": "2020-11-13T09:40:50+00:00" + }, + { + "name": "nunomaduro/collision", + "version": "v3.1.0", + "source": { + "type": "git", + "url": "https://github.com/nunomaduro/collision.git", + "reference": "88b58b5bd9bdcc54756480fb3ce87234696544ee" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/88b58b5bd9bdcc54756480fb3ce87234696544ee", + "reference": "88b58b5bd9bdcc54756480fb3ce87234696544ee", + "shasum": "" + }, + "require": { + "filp/whoops": "^2.1.4", + "jakub-onderka/php-console-highlighter": "0.3.*|0.4.*", + "php": "^7.1 || ^8.0", + "symfony/console": "~2.8|~3.3|~4.0" + }, + "require-dev": { + "laravel/framework": "^6.0", + "phpunit/phpunit": "^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "NunoMaduro\\Collision\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nuno Maduro", + "email": "enunomaduro@gmail.com" + } + ], + "description": "Cli error handling for console/command-line PHP applications.", + "keywords": [ + "artisan", + "cli", + "command-line", + "console", + "error", + "handling", + "laravel", + "laravel-zero", + "php", + "symfony" + ], + "support": { + "issues": "https://github.com/nunomaduro/collision/issues", + "source": "https://github.com/nunomaduro/collision" + }, + "funding": [ + { + "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66BYDWAT92N6L", + "type": "custom" + }, + { + "url": "https://github.com/nunomaduro", + "type": "github" + }, + { + "url": "https://www.patreon.com/nunomaduro", + "type": "patreon" + } + ], + "time": "2020-10-29T16:05:21+00:00" + }, + { + "name": "phar-io/manifest", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", + "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-phar": "*", + "phar-io/version": "^2.0", + "php": "^5.6 || ^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", + "support": { + "issues": "https://github.com/phar-io/manifest/issues", + "source": "https://github.com/phar-io/manifest/tree/master" + }, + "time": "2018-07-08T19:23:20+00:00" + }, + { + "name": "phar-io/version", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/version.git", + "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6", + "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6", + "shasum": "" + }, + "require": { + "php": "^5.6 || ^7.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Library for handling version information and constraints", + "support": { + "issues": "https://github.com/phar-io/version/issues", + "source": "https://github.com/phar-io/version/tree/master" + }, + "time": "2018-07-08T19:19:57+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-2.x": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "Common reflection classes used by phpdocumentor to reflect the code structure", + "homepage": "http://www.phpdoc.org", + "keywords": [ + "FQSEN", + "phpDocumentor", + "phpdoc", + "reflection", + "static analysis" + ], + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", + "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" + }, + "time": "2020-06-27T09:03:43+00:00" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "5.2.2", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", + "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", + "shasum": "" + }, + "require": { + "ext-filter": "*", + "php": "^7.2 || ^8.0", + "phpdocumentor/reflection-common": "^2.2", + "phpdocumentor/type-resolver": "^1.3", + "webmozart/assert": "^1.9.1" + }, + "require-dev": { + "mockery/mockery": "~1.3.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + }, + { + "name": "Jaap van Otterdijk", + "email": "account@ijaap.nl" + } + ], + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/master" + }, + "time": "2020-09-03T19:13:55+00:00" + }, + { + "name": "phpdocumentor/type-resolver", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", + "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0", + "phpdocumentor/reflection-common": "^2.0" + }, + "require-dev": { + "ext-tokenizer": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", + "support": { + "issues": "https://github.com/phpDocumentor/TypeResolver/issues", + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.4.0" + }, + "time": "2020-09-17T18:55:26+00:00" + }, + { + "name": "phpspec/prophecy", + "version": "1.12.2", + "source": { + "type": "git", + "url": "https://github.com/phpspec/prophecy.git", + "reference": "245710e971a030f42e08f4912863805570f23d39" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/245710e971a030f42e08f4912863805570f23d39", + "reference": "245710e971a030f42e08f4912863805570f23d39", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.2", + "php": "^7.2 || ~8.0, <8.1", + "phpdocumentor/reflection-docblock": "^5.2", + "sebastian/comparator": "^3.0 || ^4.0", + "sebastian/recursion-context": "^3.0 || ^4.0" + }, + "require-dev": { + "phpspec/phpspec": "^6.0", + "phpunit/phpunit": "^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.11.x-dev" + } + }, + "autoload": { + "psr-4": { + "Prophecy\\": "src/Prophecy" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Konstantin Kudryashov", + "email": "ever.zet@gmail.com", + "homepage": "http://everzet.com" + }, + { + "name": "Marcello Duarte", + "email": "marcello.duarte@gmail.com" + } + ], + "description": "Highly opinionated mocking framework for PHP 5.3+", + "homepage": "https://github.com/phpspec/prophecy", + "keywords": [ + "Double", + "Dummy", + "fake", + "mock", + "spy", + "stub" + ], + "support": { + "issues": "https://github.com/phpspec/prophecy/issues", + "source": "https://github.com/phpspec/prophecy/tree/1.12.2" + }, + "time": "2020-12-19T10:15:11+00:00" + }, + { + "name": "phpunit/php-code-coverage", + "version": "6.1.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/807e6013b00af69b6c5d9ceb4282d0393dbb9d8d", + "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-xmlwriter": "*", + "php": "^7.1", + "phpunit/php-file-iterator": "^2.0", + "phpunit/php-text-template": "^1.2.1", + "phpunit/php-token-stream": "^3.0", + "sebastian/code-unit-reverse-lookup": "^1.0.1", + "sebastian/environment": "^3.1 || ^4.0", + "sebastian/version": "^2.0.1", + "theseer/tokenizer": "^1.1" + }, + "require-dev": { + "phpunit/phpunit": "^7.0" + }, + "suggest": { + "ext-xdebug": "^2.6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "6.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", + "homepage": "https://github.com/sebastianbergmann/php-code-coverage", + "keywords": [ + "coverage", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/master" + }, + "time": "2018-10-31T16:06:48+00:00" + }, + { + "name": "phpunit/php-file-iterator", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "4b49fb70f067272b659ef0174ff9ca40fdaa6357" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/4b49fb70f067272b659ef0174ff9ca40fdaa6357", + "reference": "4b49fb70f067272b659ef0174ff9ca40fdaa6357", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "^8.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "FilterIterator implementation that filters files based on a list of suffixes.", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", + "keywords": [ + "filesystem", + "iterator" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T08:25:21+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", + "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Simple template engine.", + "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "keywords": [ + "template" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/1.2.1" + }, + "time": "2015-06-21T13:50:34+00:00" + }, + { + "name": "phpunit/php-timer", + "version": "2.1.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "2454ae1765516d20c4ffe103d85a58a9a3bd5662" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/2454ae1765516d20c4ffe103d85a58a9a3bd5662", + "reference": "2454ae1765516d20c4ffe103d85a58a9a3bd5662", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "^8.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Utility class for timing", + "homepage": "https://github.com/sebastianbergmann/php-timer/", + "keywords": [ + "timer" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "source": "https://github.com/sebastianbergmann/php-timer/tree/2.1.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T08:20:02+00:00" + }, + { + "name": "phpunit/php-token-stream", + "version": "3.1.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-token-stream.git", + "reference": "472b687829041c24b25f475e14c2f38a09edf1c2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/472b687829041c24b25f475e14c2f38a09edf1c2", + "reference": "472b687829041c24b25f475e14c2f38a09edf1c2", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Wrapper around PHP's tokenizer extension.", + "homepage": "https://github.com/sebastianbergmann/php-token-stream/", + "keywords": [ + "tokenizer" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-token-stream/issues", + "source": "https://github.com/sebastianbergmann/php-token-stream/tree/3.1.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "abandoned": true, + "time": "2020-11-30T08:38:46+00:00" + }, + { + "name": "phpunit/phpunit", + "version": "7.5.20", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "9467db479d1b0487c99733bb1e7944d32deded2c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9467db479d1b0487c99733bb1e7944d32deded2c", + "reference": "9467db479d1b0487c99733bb1e7944d32deded2c", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.1", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-xml": "*", + "myclabs/deep-copy": "^1.7", + "phar-io/manifest": "^1.0.2", + "phar-io/version": "^2.0", + "php": "^7.1", + "phpspec/prophecy": "^1.7", + "phpunit/php-code-coverage": "^6.0.7", + "phpunit/php-file-iterator": "^2.0.1", + "phpunit/php-text-template": "^1.2.1", + "phpunit/php-timer": "^2.1", + "sebastian/comparator": "^3.0", + "sebastian/diff": "^3.0", + "sebastian/environment": "^4.0", + "sebastian/exporter": "^3.1", + "sebastian/global-state": "^2.0", + "sebastian/object-enumerator": "^3.0.3", + "sebastian/resource-operations": "^2.0", + "sebastian/version": "^2.0.1" + }, + "conflict": { + "phpunit/phpunit-mock-objects": "*" + }, + "require-dev": { + "ext-pdo": "*" + }, + "suggest": { + "ext-soap": "*", + "ext-xdebug": "*", + "phpunit/php-invoker": "^2.0" + }, + "bin": [ + "phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.5-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "The PHP Unit Testing framework.", + "homepage": "https://phpunit.de/", + "keywords": [ + "phpunit", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "source": "https://github.com/sebastianbergmann/phpunit/tree/7.5.20" + }, + "time": "2020-01-08T08:45:45+00:00" + }, + { + "name": "sebastian/code-unit-reverse-lookup", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", + "reference": "1de8cd5c010cb153fcd68b8d0f64606f523f7619" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/1de8cd5c010cb153fcd68b8d0f64606f523f7619", + "reference": "1de8cd5c010cb153fcd68b8d0f64606f523f7619", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "require-dev": { + "phpunit/phpunit": "^8.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Looks up which function or method a line of code belongs to", + "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/1.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T08:15:22+00:00" + }, + { + "name": "sebastian/comparator", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/comparator.git", + "reference": "1071dfcef776a57013124ff35e1fc41ccd294758" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/1071dfcef776a57013124ff35e1fc41ccd294758", + "reference": "1071dfcef776a57013124ff35e1fc41ccd294758", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "sebastian/diff": "^3.0", + "sebastian/exporter": "^3.1" + }, + "require-dev": { + "phpunit/phpunit": "^8.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@2bepublished.at" + } + ], + "description": "Provides the functionality to compare PHP values for equality", + "homepage": "https://github.com/sebastianbergmann/comparator", + "keywords": [ + "comparator", + "compare", + "equality" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/comparator/issues", + "source": "https://github.com/sebastianbergmann/comparator/tree/3.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T08:04:30+00:00" + }, + { + "name": "sebastian/diff", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "14f72dd46eaf2f2293cbe79c93cc0bc43161a211" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/14f72dd46eaf2f2293cbe79c93cc0bc43161a211", + "reference": "14f72dd46eaf2f2293cbe79c93cc0bc43161a211", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "^7.5 || ^8.0", + "symfony/process": "^2 || ^3.3 || ^4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "source": "https://github.com/sebastianbergmann/diff/tree/3.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T07:59:04+00:00" + }, + { + "name": "sebastian/environment", + "version": "4.2.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "d47bbbad83711771f167c72d4e3f25f7fcc1f8b0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/d47bbbad83711771f167c72d4e3f25f7fcc1f8b0", + "reference": "d47bbbad83711771f167c72d4e3f25f7fcc1f8b0", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "^7.5" + }, + "suggest": { + "ext-posix": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides functionality to handle HHVM/PHP environments", + "homepage": "http://www.github.com/sebastianbergmann/environment", + "keywords": [ + "Xdebug", + "environment", + "hhvm" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/environment/issues", + "source": "https://github.com/sebastianbergmann/environment/tree/4.2.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T07:53:42+00:00" + }, + { + "name": "sebastian/exporter", + "version": "3.1.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/exporter.git", + "reference": "6b853149eab67d4da22291d36f5b0631c0fd856e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/6b853149eab67d4da22291d36f5b0631c0fd856e", + "reference": "6b853149eab67d4da22291d36f5b0631c0fd856e", + "shasum": "" + }, + "require": { + "php": ">=7.0", + "sebastian/recursion-context": "^3.0" + }, + "require-dev": { + "ext-mbstring": "*", + "phpunit/phpunit": "^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Provides the functionality to export PHP variables for visualization", + "homepage": "http://www.github.com/sebastianbergmann/exporter", + "keywords": [ + "export", + "exporter" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "source": "https://github.com/sebastianbergmann/exporter/tree/3.1.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T07:47:53+00:00" + }, + { + "name": "sebastian/global-state", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/global-state.git", + "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", + "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", + "shasum": "" + }, + "require": { + "php": "^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.0" + }, + "suggest": { + "ext-uopz": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Snapshotting of global state", + "homepage": "http://www.github.com/sebastianbergmann/global-state", + "keywords": [ + "global state" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/global-state/issues", + "source": "https://github.com/sebastianbergmann/global-state/tree/2.0.0" + }, + "time": "2017-04-27T15:39:26+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "3.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "e67f6d32ebd0c749cf9d1dbd9f226c727043cdf2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/e67f6d32ebd0c749cf9d1dbd9f226c727043cdf2", + "reference": "e67f6d32ebd0c749cf9d1dbd9f226c727043cdf2", + "shasum": "" + }, + "require": { + "php": ">=7.0", + "sebastian/object-reflector": "^1.1.1", + "sebastian/recursion-context": "^3.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Traverses array structures and object graphs to enumerate all referenced objects", + "homepage": "https://github.com/sebastianbergmann/object-enumerator/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/3.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T07:40:27+00:00" + }, + { + "name": "sebastian/object-reflector", + "version": "1.1.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-reflector.git", + "reference": "9b8772b9cbd456ab45d4a598d2dd1a1bced6363d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/9b8772b9cbd456ab45d4a598d2dd1a1bced6363d", + "reference": "9b8772b9cbd456ab45d4a598d2dd1a1bced6363d", + "shasum": "" + }, + "require": { + "php": ">=7.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-reflector/issues", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/1.1.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T07:37:18+00:00" + }, + { + "name": "sebastian/recursion-context", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "367dcba38d6e1977be014dc4b22f47a484dac7fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/367dcba38d6e1977be014dc4b22f47a484dac7fb", + "reference": "367dcba38d6e1977be014dc4b22f47a484dac7fb", + "shasum": "" + }, + "require": { + "php": ">=7.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + } + ], + "description": "Provides functionality to recursively process PHP variables", + "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "support": { + "issues": "https://github.com/sebastianbergmann/recursion-context/issues", + "source": "https://github.com/sebastianbergmann/recursion-context/tree/3.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T07:34:24+00:00" + }, + { + "name": "sebastian/resource-operations", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "31d35ca87926450c44eae7e2611d45a7a65ea8b3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/31d35ca87926450c44eae7e2611d45a7a65ea8b3", + "reference": "31d35ca87926450c44eae7e2611d45a7a65ea8b3", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides a list of PHP built-in functions that operate on resources", + "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "support": { + "issues": "https://github.com/sebastianbergmann/resource-operations/issues", + "source": "https://github.com/sebastianbergmann/resource-operations/tree/2.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-30T07:30:19+00:00" + }, + { + "name": "sebastian/version", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019", + "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library that helps with managing the version number of Git-hosted PHP projects", + "homepage": "https://github.com/sebastianbergmann/version", + "support": { + "issues": "https://github.com/sebastianbergmann/version/issues", + "source": "https://github.com/sebastianbergmann/version/tree/master" + }, + "time": "2016-10-03T07:35:21+00:00" + }, + { + "name": "theseer/tokenizer", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/theseer/tokenizer.git", + "reference": "75a63c33a8577608444246075ea0af0d052e452a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a", + "reference": "75a63c33a8577608444246075ea0af0d052e452a", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-tokenizer": "*", + "ext-xmlwriter": "*", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + } + ], + "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", + "support": { + "issues": "https://github.com/theseer/tokenizer/issues", + "source": "https://github.com/theseer/tokenizer/tree/master" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2020-07-12T23:59:07+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.9.1", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389", + "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389", + "shasum": "" + }, + "require": { + "php": "^5.3.3 || ^7.0 || ^8.0", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<3.9.1" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.36 || ^7.5.13" + }, + "type": "library", + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/1.9.1" + }, + "time": "2020-07-08T17:02:28+00:00" + } + ], + "aliases": [], + "minimum-stability": "dev", + "stability-flags": { + "openpay/sdk": 20 + }, + "prefer-stable": true, + "prefer-lowest": false, + "platform": { + "php": "^7.1.3" + }, + "platform-dev": [], + "plugin-api-version": "2.0.0" +} diff --git a/config/app.php b/config/app.php new file mode 100644 index 0000000..a70bf98 --- /dev/null +++ b/config/app.php @@ -0,0 +1,248 @@ + env('APP_NAME', 'JobHero'), + + /* + |-------------------------------------------------------------------------- + | Application Environment + |-------------------------------------------------------------------------- + | + | This value determines the "environment" your application is currently + | running in. This may determine how you prefer to configure various + | services the application utilizes. Set this in your ".env" file. + | + */ + + 'env' => env('APP_ENV', 'production'), + + /* + |-------------------------------------------------------------------------- + | Application Debug Mode + |-------------------------------------------------------------------------- + | + | When your application is in debug mode, detailed error messages with + | stack traces will be shown on every error that occurs within your + | application. If disabled, a simple generic error page is shown. + | + */ + + 'debug' => env('APP_DEBUG', false), + + /* + |-------------------------------------------------------------------------- + | Application URL + |-------------------------------------------------------------------------- + | + | This URL is used by the console to properly generate URLs when using + | the Artisan command line tool. You should set this to the root of + | your application so that it is used when running Artisan tasks. + | + */ + + 'url' => env('APP_URL', 'http://localhost'), + + 'asset_url' => env('ASSET_URL', null), + + 'secret' => env('SECRET', 'vktxm0tRk6Hvh3fnbSfDMe6We1nQxKCKPnv9Wq5S'), + + 'pass' => env('PASS', 'wBIIKuDbrxNKzQhAUGiZLoaoQ4MichAN3wP2AP7B'), + + 'openpay_id' => env('OPENPAY_ID', 'm9k4beuso5az0wjqztvt'), + + 'openpay_apikey' => env('OPENPAY_APIKEY', 'sk_0eb5d4072ce64a189c1387a423c7d730'), + + /* + |-------------------------------------------------------------------------- + | Application Timezone + |-------------------------------------------------------------------------- + | + | Here you may specify the default timezone for your application, which + | will be used by the PHP date and date-time functions. We have gone + | ahead and set this to a sensible default for you out of the box. + | + */ + + 'timezone' => 'UTC', + + /* + |-------------------------------------------------------------------------- + | Application Locale Configuration + |-------------------------------------------------------------------------- + | + | The application locale determines the default locale that will be used + | by the translation service provider. You are free to set this value + | to any of the locales which will be supported by the application. + | + */ + + 'locale' => 'en', + + /* + |-------------------------------------------------------------------------- + | Application Fallback Locale + |-------------------------------------------------------------------------- + | + | The fallback locale determines the locale to use when the current one + | is not available. You may change the value to correspond to any of + | the language folders that are provided through your application. + | + */ + + 'fallback_locale' => 'en', + + /* + |-------------------------------------------------------------------------- + | Faker Locale + |-------------------------------------------------------------------------- + | + | This locale will be used by the Faker PHP library when generating fake + | data for your database seeds. For example, this will be used to get + | localized telephone numbers, street address information and more. + | + */ + + 'faker_locale' => 'en_US', + + /* + |-------------------------------------------------------------------------- + | Encryption Key + |-------------------------------------------------------------------------- + | + | This key is used by the Illuminate encrypter service and should be set + | to a random, 32 character string, otherwise these encrypted strings + | will not be safe. Please do this before deploying an application! + | + */ + + 'key' => env('APP_KEY'), + + 'cipher' => 'AES-256-CBC', + + /* + |-------------------------------------------------------------------------- + | Autoloaded Service Providers + |-------------------------------------------------------------------------- + | + | The service providers listed here will be automatically loaded on the + | request to your application. Feel free to add your own services to + | this array to grant expanded functionality to your applications. + | + */ + + 'providers' => [ + + /* + * Laravel Framework Service Providers... + */ + Collective\Html\HtmlServiceProvider::class, + Illuminate\Auth\AuthServiceProvider::class, + Illuminate\Broadcasting\BroadcastServiceProvider::class, + Illuminate\Bus\BusServiceProvider::class, + Illuminate\Cache\CacheServiceProvider::class, + Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, + Illuminate\Cookie\CookieServiceProvider::class, + Illuminate\Database\DatabaseServiceProvider::class, + Illuminate\Encryption\EncryptionServiceProvider::class, + Illuminate\Filesystem\FilesystemServiceProvider::class, + Illuminate\Foundation\Providers\FoundationServiceProvider::class, + Illuminate\Hashing\HashServiceProvider::class, + Illuminate\Mail\MailServiceProvider::class, + Illuminate\Notifications\NotificationServiceProvider::class, + Illuminate\Pagination\PaginationServiceProvider::class, + Illuminate\Pipeline\PipelineServiceProvider::class, + Illuminate\Queue\QueueServiceProvider::class, + Illuminate\Redis\RedisServiceProvider::class, + Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, + Illuminate\Session\SessionServiceProvider::class, + Illuminate\Translation\TranslationServiceProvider::class, + Illuminate\Validation\ValidationServiceProvider::class, + Illuminate\View\ViewServiceProvider::class, + Intervention\Image\ImageServiceProvider::class, + + /* + * Package Service Providers... + */ + Berkayk\OneSignal\OneSignalServiceProvider::class, + Grimzy\LaravelMysqlSpatial\SpatialServiceProvider::class, + Superbalist\LaravelGoogleCloudStorage\GoogleCloudStorageServiceProvider::class, + + /* + * Application Service Providers... + */ + App\Providers\AppServiceProvider::class, + App\Providers\AuthServiceProvider::class, + // App\Providers\BroadcastServiceProvider::class, + App\Providers\EventServiceProvider::class, + App\Providers\RouteServiceProvider::class, + + ], + + /* + |-------------------------------------------------------------------------- + | Class Aliases + |-------------------------------------------------------------------------- + | + | This array of class aliases will be registered when this application + | is started. However, feel free to register as many as you wish as + | the aliases are "lazy" loaded so they don't hinder performance. + | + */ + + 'aliases' => [ + + 'App' => Illuminate\Support\Facades\App::class, + 'Arr' => Illuminate\Support\Arr::class, + 'Artisan' => Illuminate\Support\Facades\Artisan::class, + 'Auth' => Illuminate\Support\Facades\Auth::class, + 'Blade' => Illuminate\Support\Facades\Blade::class, + 'Broadcast' => Illuminate\Support\Facades\Broadcast::class, + 'Bus' => Illuminate\Support\Facades\Bus::class, + 'Cache' => Illuminate\Support\Facades\Cache::class, + 'Config' => Illuminate\Support\Facades\Config::class, + 'Cookie' => Illuminate\Support\Facades\Cookie::class, + 'Crypt' => Illuminate\Support\Facades\Crypt::class, + 'DB' => Illuminate\Support\Facades\DB::class, + 'Eloquent' => Illuminate\Database\Eloquent\Model::class, + 'Event' => Illuminate\Support\Facades\Event::class, + 'File' => Illuminate\Support\Facades\File::class, + 'Form' => Collective\Html\FormFacade::class, + 'Gate' => Illuminate\Support\Facades\Gate::class, + 'Hash' => Illuminate\Support\Facades\Hash::class, + 'Html' => Collective\Html\HtmlFacade::class, + 'Image' => Intervention\Image\Facades\Image::class, + 'Lang' => Illuminate\Support\Facades\Lang::class, + 'Log' => Illuminate\Support\Facades\Log::class, + 'Mail' => Illuminate\Support\Facades\Mail::class, + 'Notification' => Illuminate\Support\Facades\Notification::class, + 'OneSignal' => Berkayk\OneSignal\OneSignalFacade::class, + 'Password' => Illuminate\Support\Facades\Password::class, + 'Queue' => Illuminate\Support\Facades\Queue::class, + 'Redirect' => Illuminate\Support\Facades\Redirect::class, + 'Redis' => Illuminate\Support\Facades\Redis::class, + 'Request' => Illuminate\Support\Facades\Request::class, + 'Response' => Illuminate\Support\Facades\Response::class, + 'Route' => Illuminate\Support\Facades\Route::class, + 'Schema' => Illuminate\Support\Facades\Schema::class, + 'Session' => Illuminate\Support\Facades\Session::class, + 'Storage' => Illuminate\Support\Facades\Storage::class, + 'Str' => Illuminate\Support\Str::class, + 'URL' => Illuminate\Support\Facades\URL::class, + 'Validator' => Illuminate\Support\Facades\Validator::class, + 'View' => Illuminate\Support\Facades\View::class, + + ], + +]; diff --git a/config/auth.php b/config/auth.php new file mode 100644 index 0000000..f8a1194 --- /dev/null +++ b/config/auth.php @@ -0,0 +1,102 @@ + [ + 'guard' => 'web', + 'passwords' => 'users', + ], + + /* + |-------------------------------------------------------------------------- + | Authentication Guards + |-------------------------------------------------------------------------- + | + | Next, you may define every authentication guard for your application. + | Of course, a great default configuration has been defined for you + | here which uses session storage and the Eloquent user provider. + | + | All authentication drivers have a user provider. This defines how the + | users are actually retrieved out of your database or other storage + | mechanisms used by this application to persist your user's data. + | + | Supported: "session", "token" + | + */ + + 'guards' => [ + 'web' => [ + 'driver' => 'session', + 'provider' => 'users', + ], + + 'api' => [ + 'driver' => 'passport', + 'provider' => 'users', + ], + ], + + /* + |-------------------------------------------------------------------------- + | User Providers + |-------------------------------------------------------------------------- + | + | All authentication drivers have a user provider. This defines how the + | users are actually retrieved out of your database or other storage + | mechanisms used by this application to persist your user's data. + | + | If you have multiple user tables or models you may configure multiple + | sources which represent each model / table. These sources may then + | be assigned to any extra authentication guards you have defined. + | + | Supported: "database", "eloquent" + | + */ + + 'providers' => [ + 'users' => [ + 'driver' => 'eloquent', + 'model' => App\User::class, + ], + + // 'users' => [ + // 'driver' => 'database', + // 'table' => 'users', + // ], + ], + + /* + |-------------------------------------------------------------------------- + | Resetting Passwords + |-------------------------------------------------------------------------- + | + | You may specify multiple password reset configurations if you have more + | than one user table or model in the application and you want to have + | separate password reset settings based on the specific user types. + | + | The expire time is the number of minutes that the reset token should be + | considered valid. This security feature keeps tokens short-lived so + | they have less time to be guessed. You may change this as needed. + | + */ + + 'passwords' => [ + 'users' => [ + 'provider' => 'users', + 'table' => 'password_resets', + 'expire' => 60, + ], + ], + +]; diff --git a/config/broadcasting.php b/config/broadcasting.php new file mode 100644 index 0000000..3ca45ea --- /dev/null +++ b/config/broadcasting.php @@ -0,0 +1,59 @@ + env('BROADCAST_DRIVER', 'null'), + + /* + |-------------------------------------------------------------------------- + | Broadcast Connections + |-------------------------------------------------------------------------- + | + | Here you may define all of the broadcast connections that will be used + | to broadcast events to other systems or over websockets. Samples of + | each available type of connection are provided inside this array. + | + */ + + 'connections' => [ + + 'pusher' => [ + 'driver' => 'pusher', + 'key' => env('PUSHER_APP_KEY'), + 'secret' => env('PUSHER_APP_SECRET'), + 'app_id' => env('PUSHER_APP_ID'), + 'options' => [ + 'cluster' => env('PUSHER_APP_CLUSTER'), + 'encrypted' => true, + ], + ], + + 'redis' => [ + 'driver' => 'redis', + 'connection' => 'default', + ], + + 'log' => [ + 'driver' => 'log', + ], + + 'null' => [ + 'driver' => 'null', + ], + + ], + +]; diff --git a/config/cache.php b/config/cache.php new file mode 100644 index 0000000..46751e6 --- /dev/null +++ b/config/cache.php @@ -0,0 +1,103 @@ + env('CACHE_DRIVER', 'file'), + + /* + |-------------------------------------------------------------------------- + | Cache Stores + |-------------------------------------------------------------------------- + | + | Here you may define all of the cache "stores" for your application as + | well as their drivers. You may even define multiple stores for the + | same cache driver to group types of items stored in your caches. + | + */ + + 'stores' => [ + + 'apc' => [ + 'driver' => 'apc', + ], + + 'array' => [ + 'driver' => 'array', + ], + + 'database' => [ + 'driver' => 'database', + 'table' => 'cache', + 'connection' => null, + ], + + 'file' => [ + 'driver' => 'file', + 'path' => storage_path('framework/cache/data'), + ], + + 'memcached' => [ + 'driver' => 'memcached', + 'persistent_id' => env('MEMCACHED_PERSISTENT_ID'), + 'sasl' => [ + env('MEMCACHED_USERNAME'), + env('MEMCACHED_PASSWORD'), + ], + 'options' => [ + // Memcached::OPT_CONNECT_TIMEOUT => 2000, + ], + 'servers' => [ + [ + 'host' => env('MEMCACHED_HOST', '127.0.0.1'), + 'port' => env('MEMCACHED_PORT', 11211), + 'weight' => 100, + ], + ], + ], + + 'redis' => [ + 'driver' => 'redis', + 'connection' => 'cache', + ], + + 'dynamodb' => [ + 'driver' => 'dynamodb', + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), + 'table' => env('DYNAMODB_CACHE_TABLE', 'cache'), + 'endpoint' => env('DYNAMODB_ENDPOINT'), + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Cache Key Prefix + |-------------------------------------------------------------------------- + | + | When utilizing a RAM based store such as APC or Memcached, there might + | be other applications utilizing the same cache. So, we'll specify a + | value to get prefixed to all our keys so we can avoid collisions. + | + */ + + 'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_cache'), + +]; diff --git a/config/database.php b/config/database.php new file mode 100644 index 0000000..7f5150a --- /dev/null +++ b/config/database.php @@ -0,0 +1,147 @@ + env('DB_CONNECTION', 'mysql'), + + /* + |-------------------------------------------------------------------------- + | Database Connections + |-------------------------------------------------------------------------- + | + | Here are each of the database connections setup for your application. + | Of course, examples of configuring each database platform that is + | supported by Laravel is shown below to make development simple. + | + | + | All database work in Laravel is done through the PHP PDO facilities + | so make sure you have the driver for your particular database of + | choice installed on your machine before you begin development. + | + */ + + 'connections' => [ + + 'sqlite' => [ + 'driver' => 'sqlite', + 'url' => env('DATABASE_URL'), + 'database' => env('DB_DATABASE', database_path('database.sqlite')), + 'prefix' => '', + 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), + ], + + 'mysql' => [ + 'driver' => 'mysql', + 'url' => env('DATABASE_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '3306'), + 'database' => env('DB_DATABASE', 'forge'), + 'username' => env('DB_USERNAME', 'forge'), + 'password' => env('DB_PASSWORD', ''), + 'unix_socket' => env('DB_SOCKET', ''), + 'charset' => 'utf8mb4', + 'collation' => 'utf8mb4_unicode_ci', + 'prefix' => '', + 'prefix_indexes' => true, + 'strict' => true, + 'engine' => null, + 'options' => extension_loaded('pdo_mysql') ? array_filter([ + PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), + ]) : [], + ], + + 'pgsql' => [ + 'driver' => 'pgsql', + 'url' => env('DATABASE_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '5432'), + 'database' => env('DB_DATABASE', 'forge'), + 'username' => env('DB_USERNAME', 'forge'), + 'password' => env('DB_PASSWORD', ''), + 'charset' => 'utf8', + 'prefix' => '', + 'prefix_indexes' => true, + 'schema' => 'public', + 'sslmode' => 'prefer', + ], + + 'sqlsrv' => [ + 'driver' => 'sqlsrv', + 'url' => env('DATABASE_URL'), + 'host' => env('DB_HOST', 'localhost'), + 'port' => env('DB_PORT', '1433'), + 'database' => env('DB_DATABASE', 'forge'), + 'username' => env('DB_USERNAME', 'forge'), + 'password' => env('DB_PASSWORD', ''), + 'charset' => 'utf8', + 'prefix' => '', + 'prefix_indexes' => true, + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Migration Repository Table + |-------------------------------------------------------------------------- + | + | This table keeps track of all the migrations that have already run for + | your application. Using this information, we can determine which of + | the migrations on disk haven't actually been run in the database. + | + */ + + 'migrations' => 'migrations', + + /* + |-------------------------------------------------------------------------- + | Redis Databases + |-------------------------------------------------------------------------- + | + | Redis is an open source, fast, and advanced key-value store that also + | provides a richer body of commands than a typical key-value system + | such as APC or Memcached. Laravel makes it easy to dig right in. + | + */ + + 'redis' => [ + + 'client' => env('REDIS_CLIENT', 'predis'), + + 'options' => [ + 'cluster' => env('REDIS_CLUSTER', 'predis'), + 'prefix' => Str::slug(env('APP_NAME', 'laravel'), '_').'_database_', + ], + + 'default' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'password' => env('REDIS_PASSWORD', null), + 'port' => env('REDIS_PORT', 6379), + 'database' => env('REDIS_DB', 0), + ], + + 'cache' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'password' => env('REDIS_PASSWORD', null), + 'port' => env('REDIS_PORT', 6379), + 'database' => env('REDIS_CACHE_DB', 1), + ], + + ], + +]; diff --git a/config/debug-server.php b/config/debug-server.php new file mode 100644 index 0000000..f897262 --- /dev/null +++ b/config/debug-server.php @@ -0,0 +1,8 @@ + 'tcp://127.0.0.1:9912', +]; diff --git a/config/filesystems.php b/config/filesystems.php new file mode 100644 index 0000000..d52e249 --- /dev/null +++ b/config/filesystems.php @@ -0,0 +1,78 @@ + env('FILESYSTEM_DRIVER', 'local'), + + /* + |-------------------------------------------------------------------------- + | Default Cloud Filesystem Disk + |-------------------------------------------------------------------------- + | + | Many applications store files both locally and in the cloud. For this + | reason, you may specify a default "cloud" driver here. This driver + | will be bound as the Cloud disk implementation in the container. + | + */ + + 'cloud' => env('FILESYSTEM_CLOUD', 's3'), + + /* + |-------------------------------------------------------------------------- + | Filesystem Disks + |-------------------------------------------------------------------------- + | + | Here you may configure as many filesystem "disks" as you wish, and you + | may even configure multiple disks of the same driver. Defaults have + | been setup for each driver as an example of the required options. + | + | Supported Drivers: "local", "ftp", "sftp", "s3", "rackspace" + | + */ + + 'disks' => [ + + 'local' => [ + 'driver' => 'local', + 'root' => storage_path('app'), + ], + + 'public' => [ + 'driver' => 'local', + 'root' => storage_path('app/public'), + 'url' => env('APP_URL').'/storage', + 'visibility' => 'public', + ], + + 's3' => [ + 'driver' => 's3', + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'region' => env('AWS_DEFAULT_REGION'), + 'bucket' => env('AWS_BUCKET'), + 'url' => env('AWS_URL'), + ], + + 'gcs' => [ + 'driver' => 'gcs', + 'project_id' => env('GOOGLE_CLOUD_PROJECT_ID', 'your-project-id'), + 'key_file' => env('GOOGLE_CLOUD_KEY_FILE', ''), // optional: /path/to/service-account.json + 'bucket' => env('GOOGLE_CLOUD_STORAGE_BUCKET', 'your-bucket'), + 'path_prefix' => env('GOOGLE_CLOUD_STORAGE_PATH_PREFIX', null), // optional: /default/path/to/apply/in/bucket + 'storage_api_uri' => env('GOOGLE_CLOUD_STORAGE_API_URI', null), // see: Public URLs below + ], + + ], + +]; diff --git a/config/googlerecaptchav3.php b/config/googlerecaptchav3.php new file mode 100644 index 0000000..cda8911 --- /dev/null +++ b/config/googlerecaptchav3.php @@ -0,0 +1,166 @@ + 'curl', + /* + |-------------------------------------------------------------------------- + | Enable/Disable Service + |-------------------------------------------------------------------------- + | Type: bool + | + | This option is used to disable/enable the service + | + | Supported: true, false + | + */ + 'is_service_enabled' => true, + /* + |-------------------------------------------------------------------------- + | Host Name + |-------------------------------------------------------------------------- + | Type: string + | Default will be empty, assign value only if you want domain check with Google response + | Google reCAPTCHA host name, https://www.google.com/recaptcha/admin + | + */ + 'host_name' => '', + /* + |-------------------------------------------------------------------------- + | Secret Key + |-------------------------------------------------------------------------- + | Type: string + | Google reCAPTCHA credentials, https://www.google.com/recaptcha/admin + | + */ + 'secret_key' => env('RECAPTCHA_V3_SECRET_KEY', ''), + /* + |-------------------------------------------------------------------------- + | Site Key + |-------------------------------------------------------------------------- + | Type: string + | Google reCAPTCHA credentials, https://www.google.com/recaptcha/admin + | + */ + 'site_key' => env('RECAPTCHA_V3_SITE_KEY', ''), + + /* + |-------------------------------------------------------------------------- + | Badge Style + |-------------------------------------------------------------------------- + | Type: boolean + | Support: + | - true: the badge will be shown inline within the form, also you can customise your style + | - false: the badge will be shown in the bottom right side + | + */ + 'inline' => false, + + /* + |-------------------------------------------------------------------------- + | Background Badge Style + |-------------------------------------------------------------------------- + | Type: boolean + | Support: + | - true: the background badge will be displayed at the bottom right of page + | - false: the background badge will be invisible + | + */ + 'background_badge_display' => true, + /* + |-------------------------------------------------------------------------- + | Background Mode + |-------------------------------------------------------------------------- + | Type: boolean + | Support: + | - true: the script will run on every page if you put init() on the global page + | - false: the script will only be running if there is action defined + | + */ + 'background_mode' => false, + + /* + |-------------------------------------------------------------------------- + | Score Comparision + |-------------------------------------------------------------------------- + | Type: bool + | If you enable it, the package will do score comparision from your setting + */ + 'is_score_enabled' => true, + /* + |-------------------------------------------------------------------------- + | Setting + |-------------------------------------------------------------------------- + | Type: array + | Define your score threshold, define your action + | action: Google reCAPTCHA required parameter + | threshold: score threshold + | score_comparision: true/false, if this is true, the system will do score comparision against your threshold for the action + */ + 'setting' => [ + [ + 'action' => 'register', + 'threshold' => 0.2, + 'score_comparision' => true, + ], + ], + + /* + |-------------------------------------------------------------------------- + | Setting + |-------------------------------------------------------------------------- + | Type: array + | Define a list of ip that you want to skip + */ + 'skip_ips' => [ + + ], + /* + |-------------------------------------------------------------------------- + | Options + |-------------------------------------------------------------------------- + | Custom option field for your request setting, which will be used for RequestClientInterface + | + */ + 'options' => [ + + ], + /* + |-------------------------------------------------------------------------- + | API JS Url + |-------------------------------------------------------------------------- + | Type: string + | Google reCAPTCHA API JS URL + | use: + */ + 'api_js_url' => 'https://www.google.com/recaptcha/api.js', + /* + |-------------------------------------------------------------------------- + | Site Verify Url + |-------------------------------------------------------------------------- + | Type: string + | Google reCAPTCHA API + | please use "www.recaptcha.net" in your code in circumstances when "www.google.com" is not accessible. e.g China + | e.g. https://www.recaptcha.net/recaptcha/api.js + */ + 'site_verify_url' => 'https://www.google.com/recaptcha/api/siteverify', + + /* + |-------------------------------------------------------------------------- + | Language + |-------------------------------------------------------------------------- + | Type: string + | https://developers.google.com/recaptcha/docs/language + */ + 'language' => 'en', +]; diff --git a/config/hashing.php b/config/hashing.php new file mode 100644 index 0000000..8425770 --- /dev/null +++ b/config/hashing.php @@ -0,0 +1,52 @@ + 'bcrypt', + + /* + |-------------------------------------------------------------------------- + | Bcrypt Options + |-------------------------------------------------------------------------- + | + | Here you may specify the configuration options that should be used when + | passwords are hashed using the Bcrypt algorithm. This will allow you + | to control the amount of time it takes to hash the given password. + | + */ + + 'bcrypt' => [ + 'rounds' => env('BCRYPT_ROUNDS', 10), + ], + + /* + |-------------------------------------------------------------------------- + | Argon Options + |-------------------------------------------------------------------------- + | + | Here you may specify the configuration options that should be used when + | passwords are hashed using the Argon algorithm. These will allow you + | to control the amount of time it takes to hash the given password. + | + */ + + 'argon' => [ + 'memory' => 1024, + 'threads' => 2, + 'time' => 2, + ], + +]; diff --git a/config/logging.php b/config/logging.php new file mode 100644 index 0000000..d09cd7d --- /dev/null +++ b/config/logging.php @@ -0,0 +1,94 @@ + env('LOG_CHANNEL', 'stack'), + + /* + |-------------------------------------------------------------------------- + | Log Channels + |-------------------------------------------------------------------------- + | + | Here you may configure the log channels for your application. Out of + | the box, Laravel uses the Monolog PHP logging library. This gives + | you a variety of powerful log handlers / formatters to utilize. + | + | Available Drivers: "single", "daily", "slack", "syslog", + | "errorlog", "monolog", + | "custom", "stack" + | + */ + + 'channels' => [ + 'stack' => [ + 'driver' => 'stack', + 'channels' => ['daily'], + 'ignore_exceptions' => false, + ], + + 'single' => [ + 'driver' => 'single', + 'path' => storage_path('logs/laravel.log'), + 'level' => 'debug', + ], + + 'daily' => [ + 'driver' => 'daily', + 'path' => storage_path('logs/laravel.log'), + 'level' => 'debug', + 'days' => 14, + ], + + 'slack' => [ + 'driver' => 'slack', + 'url' => env('LOG_SLACK_WEBHOOK_URL'), + 'username' => 'Laravel Log', + 'emoji' => ':boom:', + 'level' => 'critical', + ], + + 'papertrail' => [ + 'driver' => 'monolog', + 'level' => 'debug', + 'handler' => SyslogUdpHandler::class, + 'handler_with' => [ + 'host' => env('PAPERTRAIL_URL'), + 'port' => env('PAPERTRAIL_PORT'), + ], + ], + + 'stderr' => [ + 'driver' => 'monolog', + 'handler' => StreamHandler::class, + 'formatter' => env('LOG_STDERR_FORMATTER'), + 'with' => [ + 'stream' => 'php://stderr', + ], + ], + + 'syslog' => [ + 'driver' => 'syslog', + 'level' => 'debug', + ], + + 'errorlog' => [ + 'driver' => 'errorlog', + 'level' => 'debug', + ], + ], + +]; diff --git a/config/mail.php b/config/mail.php new file mode 100644 index 0000000..6f8469f --- /dev/null +++ b/config/mail.php @@ -0,0 +1,136 @@ + env('MAIL_DRIVER', 'smtp'), + + /* + |-------------------------------------------------------------------------- + | SMTP Host Address + |-------------------------------------------------------------------------- + | + | Here you may provide the host address of the SMTP server used by your + | applications. A default option is provided that is compatible with + | the Mailgun mail service which will provide reliable deliveries. + | + */ + + 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), + + /* + |-------------------------------------------------------------------------- + | SMTP Host Port + |-------------------------------------------------------------------------- + | + | This is the SMTP port used by your application to deliver e-mails to + | users of the application. Like the host we have set this value to + | stay compatible with the Mailgun e-mail application by default. + | + */ + + 'port' => env('MAIL_PORT', 587), + + /* + |-------------------------------------------------------------------------- + | Global "From" Address + |-------------------------------------------------------------------------- + | + | You may wish for all e-mails sent by your application to be sent from + | the same address. Here, you may specify a name and address that is + | used globally for all e-mails that are sent by your application. + | + */ + + 'from' => [ + 'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'), + 'name' => env('MAIL_FROM_NAME', 'Example'), + ], + + /* + |-------------------------------------------------------------------------- + | E-Mail Encryption Protocol + |-------------------------------------------------------------------------- + | + | Here you may specify the encryption protocol that should be used when + | the application send e-mail messages. A sensible default using the + | transport layer security protocol should provide great security. + | + */ + + 'encryption' => env('MAIL_ENCRYPTION', 'tls'), + + /* + |-------------------------------------------------------------------------- + | SMTP Server Username + |-------------------------------------------------------------------------- + | + | If your SMTP server requires a username for authentication, you should + | set it here. This will get used to authenticate with your server on + | connection. You may also set the "password" value below this one. + | + */ + + 'username' => env('MAIL_USERNAME'), + + 'password' => env('MAIL_PASSWORD'), + + /* + |-------------------------------------------------------------------------- + | Sendmail System Path + |-------------------------------------------------------------------------- + | + | When using the "sendmail" driver to send e-mails, we will need to know + | the path to where Sendmail lives on this server. A default path has + | been provided here, which will work well on most of your systems. + | + */ + + 'sendmail' => '/usr/sbin/sendmail -bs', + + /* + |-------------------------------------------------------------------------- + | Markdown Mail Settings + |-------------------------------------------------------------------------- + | + | If you are using Markdown based email rendering, you may configure your + | theme and component paths here, allowing you to customize the design + | of the emails. Or, you may simply stick with the Laravel defaults! + | + */ + + 'markdown' => [ + 'theme' => 'default', + + 'paths' => [ + resource_path('views/vendor/mail'), + ], + ], + + /* + |-------------------------------------------------------------------------- + | Log Channel + |-------------------------------------------------------------------------- + | + | If you are using the "log" driver, you may specify the logging channel + | if you prefer to keep mail messages separate from other log entries + | for simpler reading. Otherwise, the default channel will be used. + | + */ + + 'log_channel' => env('MAIL_LOG_CHANNEL'), + +]; diff --git a/config/onesignal.php b/config/onesignal.php new file mode 100644 index 0000000..69c1892 --- /dev/null +++ b/config/onesignal.php @@ -0,0 +1,23 @@ + '00d23dae-1209-42cc-bea7-e1f17cee27fa', + + /* + |-------------------------------------------------------------------------- + | Rest API Key + |-------------------------------------------------------------------------- + | + | + | + */ + 'rest_api_key' => 'NTQwMDY4ZjUtODlmMy00NzAzLTg1ZDItMWNhMDgyOGVkYzRk', + 'user_auth_key' => 'YOUR-USER-AUTH-KEY' +); diff --git a/config/queue.php b/config/queue.php new file mode 100644 index 0000000..07c7d2a --- /dev/null +++ b/config/queue.php @@ -0,0 +1,87 @@ + env('QUEUE_CONNECTION', 'sync'), + + /* + |-------------------------------------------------------------------------- + | Queue Connections + |-------------------------------------------------------------------------- + | + | Here you may configure the connection information for each server that + | is used by your application. A default configuration has been added + | for each back-end shipped with Laravel. You are free to add more. + | + | Drivers: "sync", "database", "beanstalkd", "sqs", "redis", "null" + | + */ + + 'connections' => [ + + 'sync' => [ + 'driver' => 'sync', + ], + + 'database' => [ + 'driver' => 'database', + 'table' => 'jobs', + 'queue' => 'default', + 'retry_after' => 90, + ], + + 'beanstalkd' => [ + 'driver' => 'beanstalkd', + 'host' => 'localhost', + 'queue' => 'default', + 'retry_after' => 90, + 'block_for' => 0, + ], + + 'sqs' => [ + 'driver' => 'sqs', + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'), + 'queue' => env('SQS_QUEUE', 'your-queue-name'), + 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), + ], + + 'redis' => [ + 'driver' => 'redis', + 'connection' => 'default', + 'queue' => env('REDIS_QUEUE', 'default'), + 'retry_after' => 90, + 'block_for' => null, + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Failed Queue Jobs + |-------------------------------------------------------------------------- + | + | These options configure the behavior of failed queue job logging so you + | can control which database and table are used to store the jobs that + | have failed. You may change them to any database / table you wish. + | + */ + + 'failed' => [ + 'database' => env('DB_CONNECTION', 'mysql'), + 'table' => 'failed_jobs', + ], + +]; diff --git a/config/services.php b/config/services.php new file mode 100644 index 0000000..aba22e4 --- /dev/null +++ b/config/services.php @@ -0,0 +1,66 @@ + [ + 'domain' => env('MAILGUN_DOMAIN'), + 'secret' => env('MAILGUN_SECRET'), + 'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'), + ], + + 'postmark' => [ + 'token' => env('POSTMARK_TOKEN'), + ], + + 'ses' => [ + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), + ], + + 'sparkpost' => [ + 'secret' => env('SPARKPOST_SECRET'), + ], + + 'stripe' => [ + 'model' => App\User::class, + 'key' => env('STRIPE_KEY'), + 'secret' => env('STRIPE_SECRET'), + 'webhook' => [ + 'secret' => env('STRIPE_WEBHOOK_SECRET'), + 'tolerance' => env('STRIPE_WEBHOOK_TOLERANCE', 300), + ], + ], + + 'facebook' => [ + 'client_id' => env('FACEBOOK_CLIENT_ID'), + 'client_secret' => env('FACEBOOK_CLIENT_SECRET'), + 'redirect' => env('FACEBOOK_CALLBACK_URL'), + ], + + 'google' => [ + 'client_id' => env('GOOGLE_CLIENT_ID'), + 'client_secret' => env('GOOGLE_CLIENT_SECRET'), + 'redirect' => env('GOOGLE_CALLBACK_URL'), + ], + + 'apple' => [ + 'client_id' => env('APPLE_CLIENT_ID'), + 'client_secret' => env('}APPLE_CLIENT_SECRET'), + 'redirect' => env('APPLE_CALLBACK_URL'), + ], + + +]; diff --git a/config/session.php b/config/session.php new file mode 100644 index 0000000..6c7a1d6 --- /dev/null +++ b/config/session.php @@ -0,0 +1,199 @@ + env('SESSION_DRIVER', 'file'), + + /* + |-------------------------------------------------------------------------- + | Session Lifetime + |-------------------------------------------------------------------------- + | + | Here you may specify the number of minutes that you wish the session + | to be allowed to remain idle before it expires. If you want them + | to immediately expire on the browser closing, set that option. + | + */ + + 'lifetime' => env('SESSION_LIFETIME', 120), + + 'expire_on_close' => false, + + /* + |-------------------------------------------------------------------------- + | Session Encryption + |-------------------------------------------------------------------------- + | + | This option allows you to easily specify that all of your session data + | should be encrypted before it is stored. All encryption will be run + | automatically by Laravel and you can use the Session like normal. + | + */ + + 'encrypt' => false, + + /* + |-------------------------------------------------------------------------- + | Session File Location + |-------------------------------------------------------------------------- + | + | When using the native session driver, we need a location where session + | files may be stored. A default has been set for you but a different + | location may be specified. This is only needed for file sessions. + | + */ + + 'files' => storage_path('framework/sessions'), + + /* + |-------------------------------------------------------------------------- + | Session Database Connection + |-------------------------------------------------------------------------- + | + | When using the "database" or "redis" session drivers, you may specify a + | connection that should be used to manage these sessions. This should + | correspond to a connection in your database configuration options. + | + */ + + 'connection' => env('SESSION_CONNECTION', null), + + /* + |-------------------------------------------------------------------------- + | Session Database Table + |-------------------------------------------------------------------------- + | + | When using the "database" session driver, you may specify the table we + | should use to manage the sessions. Of course, a sensible default is + | provided for you; however, you are free to change this as needed. + | + */ + + 'table' => 'sessions', + + /* + |-------------------------------------------------------------------------- + | Session Cache Store + |-------------------------------------------------------------------------- + | + | When using the "apc", "memcached", or "dynamodb" session drivers you may + | list a cache store that should be used for these sessions. This value + | must match with one of the application's configured cache "stores". + | + */ + + 'store' => env('SESSION_STORE', null), + + /* + |-------------------------------------------------------------------------- + | Session Sweeping Lottery + |-------------------------------------------------------------------------- + | + | Some session drivers must manually sweep their storage location to get + | rid of old sessions from storage. Here are the chances that it will + | happen on a given request. By default, the odds are 2 out of 100. + | + */ + + 'lottery' => [2, 100], + + /* + |-------------------------------------------------------------------------- + | Session Cookie Name + |-------------------------------------------------------------------------- + | + | Here you may change the name of the cookie used to identify a session + | instance by ID. The name specified here will get used every time a + | new session cookie is created by the framework for every driver. + | + */ + + 'cookie' => env( + 'SESSION_COOKIE', + Str::slug(env('APP_NAME', 'laravel'), '_').'_session' + ), + + /* + |-------------------------------------------------------------------------- + | Session Cookie Path + |-------------------------------------------------------------------------- + | + | The session cookie path determines the path for which the cookie will + | be regarded as available. Typically, this will be the root path of + | your application but you are free to change this when necessary. + | + */ + + 'path' => '/', + + /* + |-------------------------------------------------------------------------- + | Session Cookie Domain + |-------------------------------------------------------------------------- + | + | Here you may change the domain of the cookie used to identify a session + | in your application. This will determine which domains the cookie is + | available to in your application. A sensible default has been set. + | + */ + + 'domain' => env('SESSION_DOMAIN', null), + + /* + |-------------------------------------------------------------------------- + | HTTPS Only Cookies + |-------------------------------------------------------------------------- + | + | By setting this option to true, session cookies will only be sent back + | to the server if the browser has a HTTPS connection. This will keep + | the cookie from being sent to you if it can not be done securely. + | + */ + + 'secure' => env('SESSION_SECURE_COOKIE', false), + + /* + |-------------------------------------------------------------------------- + | HTTP Access Only + |-------------------------------------------------------------------------- + | + | Setting this value to true will prevent JavaScript from accessing the + | value of the cookie and the cookie will only be accessible through + | the HTTP protocol. You are free to modify this option if needed. + | + */ + + 'http_only' => true, + + /* + |-------------------------------------------------------------------------- + | Same-Site Cookies + |-------------------------------------------------------------------------- + | + | This option determines how your cookies behave when cross-site requests + | take place, and can be used to mitigate CSRF attacks. By default, we + | do not enable this as other CSRF protection services are in place. + | + | Supported: "lax", "strict" + | + */ + + 'same_site' => "none", + +]; diff --git a/config/view.php b/config/view.php new file mode 100644 index 0000000..22b8a18 --- /dev/null +++ b/config/view.php @@ -0,0 +1,36 @@ + [ + resource_path('views'), + ], + + /* + |-------------------------------------------------------------------------- + | Compiled View Path + |-------------------------------------------------------------------------- + | + | This option determines where all the compiled Blade templates will be + | stored for your application. Typically, this is within the storage + | directory. However, as usual, you are free to change this value. + | + */ + + 'compiled' => env( + 'VIEW_COMPILED_PATH', + realpath(storage_path('framework/views')) + ), + +]; diff --git a/cron.yaml b/cron.yaml new file mode 100644 index 0000000..a61dede --- /dev/null +++ b/cron.yaml @@ -0,0 +1,9 @@ +cron: + - description: "Delete expired postulations" + url: /postulations/delete-expired + schedule: 1 of jan 00:10 + target: default + - description: 'Delete missed contracts' + url: /currentcontracts/delete-missed + schedule: 1 of jan 00:10 + target: default diff --git a/database/.gitignore b/database/.gitignore new file mode 100644 index 0000000..97fc976 --- /dev/null +++ b/database/.gitignore @@ -0,0 +1,2 @@ +*.sqlite +*.sqlite-journal diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php new file mode 100644 index 0000000..8104522 --- /dev/null +++ b/database/factories/UserFactory.php @@ -0,0 +1,27 @@ +define(User::class, function (Faker $faker) { + return [ + 'name' => $faker->name, + 'email' => $faker->unique()->safeEmail, + 'phone_verified_at' => now(), + 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password + 'remember_token' => Str::random(10), + ]; +}); diff --git a/database/migrations/2013_01_11_164933_create_i_chamba_parameters_table.php b/database/migrations/2013_01_11_164933_create_i_chamba_parameters_table.php new file mode 100644 index 0000000..d6561f0 --- /dev/null +++ b/database/migrations/2013_01_11_164933_create_i_chamba_parameters_table.php @@ -0,0 +1,34 @@ +bigIncrements('id'); + $table->string('parameter'); + $table->float('num_value')->nullable(); + $table->string('string_value')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('i_chamba_parameters'); + } +} diff --git a/database/migrations/2014_10_11_000000_create_roles_table.php b/database/migrations/2014_10_11_000000_create_roles_table.php new file mode 100644 index 0000000..27499e1 --- /dev/null +++ b/database/migrations/2014_10_11_000000_create_roles_table.php @@ -0,0 +1,31 @@ +bigIncrements('id'); + $table->string('name'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('roles'); + } +} diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php new file mode 100644 index 0000000..be5c9ce --- /dev/null +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -0,0 +1,44 @@ +bigIncrements('id'); + $table->string('name'); + $table->string('email')->unique()->nullable(); + $table->string('profile_photo')->nullable(); + $table->BigInteger('role_id')->unsigned()->nullable(); + $table->string('social_id')->unique()->nullable(); + $table->string('openpay_id')->unique()->nullable(); + $table->string('phone')->unique()->nullable(); + $table->timestamp('phone_verified_at')->nullable(); + $table->string('password')->nullable(); + $table->boolean('reported')->default(false); + $table->Integer('strikes')->nullable()->default(0); + $table->rememberToken(); + $table->timestamps(); + $table->foreign('role_id')->references('id')->on('roles')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('users'); + } +} diff --git a/database/migrations/2014_10_12_100000_create_password_resets_table.php b/database/migrations/2014_10_12_100000_create_password_resets_table.php new file mode 100644 index 0000000..0d5cb84 --- /dev/null +++ b/database/migrations/2014_10_12_100000_create_password_resets_table.php @@ -0,0 +1,32 @@ +string('email')->index(); + $table->string('token'); + $table->timestamp('created_at')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('password_resets'); + } +} diff --git a/database/migrations/2019_07_05_143904_create_linked_social_accounts_table.php b/database/migrations/2019_07_05_143904_create_linked_social_accounts_table.php new file mode 100644 index 0000000..6fca420 --- /dev/null +++ b/database/migrations/2019_07_05_143904_create_linked_social_accounts_table.php @@ -0,0 +1,34 @@ +increments('id'); + $table->string('provider_id'); + $table->string('provider_name'); + $table->unsignedBigInteger('user_id'); + $table->timestamps(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + }); + } + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('linked_social_accounts'); + } +} diff --git a/database/migrations/2019_07_30_192317_create_verify_accounts.php b/database/migrations/2019_07_30_192317_create_verify_accounts.php new file mode 100644 index 0000000..a747342 --- /dev/null +++ b/database/migrations/2019_07_30_192317_create_verify_accounts.php @@ -0,0 +1,35 @@ +bigIncrements('id'); + $table->string('name'); + $table->string('email'); + $table->string('password'); + $table->string('token')->unique(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('verify_accounts'); + } +} diff --git a/database/migrations/2019_08_30_174320_create_cards_table.php b/database/migrations/2019_08_30_174320_create_cards_table.php new file mode 100644 index 0000000..c4b46e3 --- /dev/null +++ b/database/migrations/2019_08_30_174320_create_cards_table.php @@ -0,0 +1,34 @@ +bigIncrements('id'); + $table->unsignedBigInteger('user_id'); + $table->string('token'); + $table->timestamps(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('cards'); + } +} diff --git a/database/migrations/2019_08_30_174444_create_banks_table.php b/database/migrations/2019_08_30_174444_create_banks_table.php new file mode 100644 index 0000000..4a5a769 --- /dev/null +++ b/database/migrations/2019_08_30_174444_create_banks_table.php @@ -0,0 +1,32 @@ +bigIncrements('id'); + $table->Integer('code'); + $table->string('name'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('banks'); + } +} diff --git a/database/migrations/2019_08_30_175029_create_suppliers_table.php b/database/migrations/2019_08_30_175029_create_suppliers_table.php new file mode 100644 index 0000000..48b0418 --- /dev/null +++ b/database/migrations/2019_08_30_175029_create_suppliers_table.php @@ -0,0 +1,54 @@ +bigIncrements('id'); + $table->unsignedBigInteger('user_id')->nullable(); + $table->string('company_name'); + $table->boolean('membership')->default(false); + $table->string('cover_photo')->nullable(); + $table->string('tags')->nullable(); + $table->string('description')->nullable(); + $table->string('CURP', 18)->unique()->nullable(); + $table->string('RFC', 14)->unique()->nullable(); + $table->string('regimen')->nullable(); + $table->string('clabe')->unique()->nullable(); + $table->unsignedBigInteger('bank_id')->nullable(); + $table->float('minimun_fee')->nullable(); + $table->unsignedBigInteger('IVA_id')->nullable(); + $table->unsignedBigInteger('ISR_id')->nullable(); + $table->unsignedBigInteger('finished_jobs')->default(1); + $table->unsignedBigInteger('total_score')->default(3); + $table->string('address')->nullable(); + $table->point('location')->nullable(); + $table->boolean('en')->default(false); + $table->timestamps(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('set null'); + $table->foreign('bank_id')->references('id')->on('banks')->onDelete('set null'); + $table->foreign('IVA_id')->references('id')->on('i_chamba_parameters')->onDelete('set null'); + $table->foreign('ISR_id')->references('id')->on('i_chamba_parameters')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('suppliers'); + } +} diff --git a/database/migrations/2019_08_30_185123_create_categories_table.php b/database/migrations/2019_08_30_185123_create_categories_table.php new file mode 100644 index 0000000..3136f96 --- /dev/null +++ b/database/migrations/2019_08_30_185123_create_categories_table.php @@ -0,0 +1,32 @@ +bigIncrements('id'); + $table->string('name'); + $table->string('en_name'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('categories'); + } +} diff --git a/database/migrations/2019_08_30_185156_create_status_table.php b/database/migrations/2019_08_30_185156_create_status_table.php new file mode 100644 index 0000000..3a1403f --- /dev/null +++ b/database/migrations/2019_08_30_185156_create_status_table.php @@ -0,0 +1,32 @@ +bigIncrements('id'); + $table->string('name'); + $table->string('en_name'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('statuses'); + } +} diff --git a/database/migrations/2019_08_30_185219_create_postulations_table.php b/database/migrations/2019_08_30_185219_create_postulations_table.php new file mode 100644 index 0000000..b51a3b4 --- /dev/null +++ b/database/migrations/2019_08_30_185219_create_postulations_table.php @@ -0,0 +1,45 @@ +bigIncrements('id'); + $table->unsignedBigInteger('user_id'); + $table->unsignedBigInteger('category_id')->nullable(); + $table->string('address'); + $table->string('int_number')->nullable(); + $table->text('references')->nullable(); + $table->point('location'); + $table->timestamp('appointment')->nullable(); + $table->float('amount'); + $table->text('details')->nullable(); + $table->boolean('en')->default(false); + $table->unsignedBigInteger('status_id')->nullable()->default('1'); + $table->timestamps(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + $table->foreign('category_id')->references('id')->on('categories')->onDelete('set null'); + $table->foreign('status_id')->references('id')->on('statuses')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('postulations'); + } +} diff --git a/database/migrations/2019_08_30_185221_create_postulation_supplier_table.php b/database/migrations/2019_08_30_185221_create_postulation_supplier_table.php new file mode 100644 index 0000000..3fc9d66 --- /dev/null +++ b/database/migrations/2019_08_30_185221_create_postulation_supplier_table.php @@ -0,0 +1,35 @@ +bigIncrements('id'); + $table->unsignedBigInteger('postulations_id'); + $table->unsignedBigInteger('suppliers_id'); + $table->foreign('postulations_id')->references('id')->on('postulations')->onDelete('cascade'); + $table->foreign('suppliers_id')->references('id')->on('suppliers')->onDelete('cascade'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('postulations_suppliers'); + } +} diff --git a/database/migrations/2019_08_30_185936_create_categories_suppliers_table.php b/database/migrations/2019_08_30_185936_create_categories_suppliers_table.php new file mode 100644 index 0000000..bd623be --- /dev/null +++ b/database/migrations/2019_08_30_185936_create_categories_suppliers_table.php @@ -0,0 +1,34 @@ +bigIncrements('id'); + $table->unsignedBigInteger('suppliers_id'); + $table->unsignedBigInteger('categories_id')->nullable(); + $table->foreign('suppliers_id')->references('id')->on('suppliers')->onDelete('cascade'); + $table->foreign('categories_id')->references('id')->on('categories')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('categories_suppliers'); + } +} diff --git a/database/migrations/2019_11_28_155229_create_finishedcontracts_table.php b/database/migrations/2019_11_28_155229_create_finishedcontracts_table.php new file mode 100644 index 0000000..2470c07 --- /dev/null +++ b/database/migrations/2019_11_28_155229_create_finishedcontracts_table.php @@ -0,0 +1,58 @@ +bigIncrements('id'); + $table->unsignedBigInteger('user_id')->nullable(); + $table->unsignedBigInteger('supplier_id')->nullable(); + $table->unsignedBigInteger('category_id')->nullable(); + $table->string('address'); + $table->string('int_number'); + $table->text('references')->nullable(); + $table->point('location'); + $table->timestamp('appointment')->nullable(); + $table->float('amount'); + $table->float('IVA'); + $table->float('ISR'); + $table->float('ichamba_fee'); + $table->float('revenue'); + $table->text('details')->nullable(); + $table->text('comments')->nullable(); + $table->boolean('en')->default(false); + $table->string('transaction_id'); + $table->unsignedBigInteger('status_id')->nullable()->default('3'); + $table->unsignedBigInteger('parent_contract_id')->nullable(); + $table->Integer('score')->nullable(); + $table->timestamp('scored_at')->nullable(); + $table->boolean('paid')->default(false); + $table->timestamps(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('set null'); + $table->foreign('supplier_id')->references('id')->on('suppliers')->onDelete('set null'); + $table->foreign('category_id')->references('id')->on('categories')->onDelete('set null'); + $table->foreign('status_id')->references('id')->on('statuses')->onDelete('set null'); + $table->foreign('parent_contract_id')->references('id')->on('finished_contracts')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('finished_contracts'); + } +} diff --git a/database/migrations/2019_12_28_155228_create_currentcontracts_table.php b/database/migrations/2019_12_28_155228_create_currentcontracts_table.php new file mode 100644 index 0000000..b097b0a --- /dev/null +++ b/database/migrations/2019_12_28_155228_create_currentcontracts_table.php @@ -0,0 +1,55 @@ +bigIncrements('id'); + $table->unsignedBigInteger('user_id')->nullable(); + $table->unsignedBigInteger('supplier_id')->nullable(); + $table->unsignedBigInteger('category_id')->nullable(); + $table->string('address'); + $table->string('int_number'); + $table->text('references')->nullable(); + $table->point('location'); + $table->timestamp('appointment')->nullable(); + $table->float('amount'); + $table->float('IVA'); + $table->float('ISR'); + $table->float('ichamba_fee'); + $table->float('revenue'); + $table->text('details')->nullable(); + $table->boolean('en')->default(false); + $table->string('transaction_id'); + $table->unsignedBigInteger('status_id')->nullable()->default('1'); + $table->BigInteger('code')->nullable(); + $table->unsignedBigInteger('parent_contract_id')->nullable(); + $table->timestamps(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('set null'); + $table->foreign('supplier_id')->references('id')->on('suppliers')->onDelete('set null'); + $table->foreign('category_id')->references('id')->on('categories')->onDelete('set null'); + $table->foreign('status_id')->references('id')->on('statuses')->onDelete('set null'); + $table->foreign('parent_contract_id')->references('id')->on('finished_contracts')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('current_contracts'); + } +} diff --git a/database/migrations/2019_12_28_155312_create_payments_table.php b/database/migrations/2019_12_28_155312_create_payments_table.php new file mode 100644 index 0000000..c9e57b2 --- /dev/null +++ b/database/migrations/2019_12_28_155312_create_payments_table.php @@ -0,0 +1,38 @@ +bigIncrements('id'); + $table->unsignedBigInteger('contract_id'); + $table->unsignedBigInteger('supplier_id')->nullable(); + $table->unsignedBigInteger('status_id')->nullable(); + $table->float('amount'); + $table->timestamps(); + $table->foreign('contract_id')->references('id')->on('finished_contracts')->onDelete('cascade'); + $table->foreign('supplier_id')->references('id')->on('suppliers')->onDelete('set null'); + $table->foreign('status_id')->references('id')->on('statuses')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('payments'); + } +} diff --git a/database/migrations/2020_09_12_210712_create_reports_table.php b/database/migrations/2020_09_12_210712_create_reports_table.php new file mode 100644 index 0000000..9289608 --- /dev/null +++ b/database/migrations/2020_09_12_210712_create_reports_table.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->unsignedBigInteger('contract_id'); + $table->unsignedBigInteger('moderator_id')->nullable(); + $table->text('veredict')->nullable(); + $table->timestamps(); + $table->foreign('contract_id')->references('id')->on('finished_contracts')->onDelete('cascade'); + $table->foreign('moderator_id')->references('id')->on('users')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('reports'); + } +} diff --git a/database/migrations/2020_09_12_211555_create_report_comments_table.php b/database/migrations/2020_09_12_211555_create_report_comments_table.php new file mode 100644 index 0000000..c566d11 --- /dev/null +++ b/database/migrations/2020_09_12_211555_create_report_comments_table.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->unsignedBigInteger('report_id'); + $table->unsignedBigInteger('user_id')->nullable(); + $table->text('comment')->nullable(); + $table->timestamps(); + $table->foreign('report_id')->references('id')->on('reports')->onDelete('cascade'); + $table->foreign('user_id')->references('id')->on('users')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('report_comments'); + } +} diff --git a/database/migrations/2020_09_12_212847_create_no_homes_table.php b/database/migrations/2020_09_12_212847_create_no_homes_table.php new file mode 100644 index 0000000..618c11b --- /dev/null +++ b/database/migrations/2020_09_12_212847_create_no_homes_table.php @@ -0,0 +1,37 @@ +bigIncrements('id'); + $table->unsignedBigInteger('contract_id'); + $table->string('house_photo')->nullable(); + $table->string('house_description')->nullable(); + $table->point('location')->nullable(); + $table->timestamp('confirmed_at')->nullable(); + $table->timestamps(); + $table->foreign('contract_id')->references('id')->on('finished_contracts')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('no_homes'); + } +} diff --git a/database/migrations/2021_03_10_235536_add_references_to_suppliers.php b/database/migrations/2021_03_10_235536_add_references_to_suppliers.php new file mode 100644 index 0000000..7ea19d4 --- /dev/null +++ b/database/migrations/2021_03_10_235536_add_references_to_suppliers.php @@ -0,0 +1,34 @@ +string('references')->nullable()->after('address'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('suppliers', function (Blueprint $table) { + // + $table->dropColumn('references'); + }); + } +} diff --git a/database/migrations/2022_03_24_132526_create_coupons_table.php b/database/migrations/2022_03_24_132526_create_coupons_table.php new file mode 100644 index 0000000..259d0b6 --- /dev/null +++ b/database/migrations/2022_03_24_132526_create_coupons_table.php @@ -0,0 +1,60 @@ +bigIncrements('id'); + $table->string('name'); + $table->float('percentage')->nullable(); + $table->float('amount')->nullable(); + $table->float('limit')->nullable(); + $table->timestamp('expire_at')->nullable(); + $table->timestamps(); + }); + + Schema::table('current_contracts', function (Blueprint $table) { + // + $table->unsignedBigInteger('coupon_id')->after('en')->nullable(); + $table->foreign('coupon_id')->references('id')->on('coupons')->onDelete('set null'); + }); + + Schema::table('finished_contracts', function (Blueprint $table) { + // + $table->unsignedBigInteger('coupon_id')->after('en')->nullable(); + $table->foreign('coupon_id')->references('id')->on('coupons')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('coupons'); + + Schema::table('current_contracts', function (Blueprint $table) { + // + $table->dropForeign(['coupon_id']); + $table->dropColumn('coupon_id'); + }); + + Schema::table('finished_contracts', function (Blueprint $table) { + // + $table->dropForeign(['coupon_id']); + $table->dropColumn('coupon_id'); + }); + } +} diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php new file mode 100644 index 0000000..14cd66e --- /dev/null +++ b/database/seeds/DatabaseSeeder.php @@ -0,0 +1,115 @@ +insert([ + 'name' => 'Usuario', + ]); + + DB::table('roles')->insert([ + 'name' => 'Proveedor', + ]); + + DB::table('roles')->insert([ + 'name' => 'Analisis y publicidad', + ]); + + DB::table('roles')->insert([ + 'name' => 'Facturacion', + ]); + + DB::table('roles')->insert([ + 'name' => 'Moderaror', + ]); + + DB::table('roles')->insert([ + 'name' => 'Administrador', + ]); + + DB::table('roles')->insert([ + 'name' => 'SuperAdmin', + ]); + + DB::table('users')->insert([ + 'name' => 'Admin', + 'email' => 'torch2196@gmail.com', + 'phone' => '3311581185', + 'phone_verified_at' => Carbon::now(), + 'role_id' => '7', + 'password' => Hash::make('I@venjq1'), + ]); + // $this->call(UsersTableSeeder::class); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'IVA_SAT_fisica', + 'num_value' => 8.00, + ]); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'ISR_SAT_fisica', + 'num_value' => 5.40, + ]); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'IVA_SAT_moral', + 'num_value' => 8.00, + ]); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'ISR_SAT_moral', + 'num_value' => 5.40, + ]); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'IVA_NoSAT', + 'num_value' => 16.00, + ]); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'ISR_NoSAT', + 'num_value' => 20.00, + ]); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'ichamba_fee', + 'num_value' => 23.00, + ]); + DB::table('i_chamba_parameters')->insert([ + 'parameter' => 'ichamba_add_fee', + 'num_value' => 12.00, + ]); + DB::table('statuses')->insert([ + 'name' => 'activo', + 'en_name' => 'active', + ]); + DB::table('statuses')->insert([ + 'name' => 'reagendación', + 'en_name' => 'reschedule', + ]); + DB::table('statuses')->insert([ + 'name' => 'terminado', + 'en_name' => 'completed', + ]); + DB::table('statuses')->insert([ + 'name' => 'cancelado', + 'en_name' => 'canceled', + ]); + DB::table('statuses')->insert([ + 'name' => 'fuera de casa', + 'en_name' => 'no home', + ]); + DB::table('statuses')->insert([ + 'name' => 'reportado', + 'en_name' => 'reported', + ]); + DB::table('statuses')->insert([ + 'name' => 'ausente', + 'en_name' => 'absent', + ]); + } +} diff --git a/ichamba-1562349005909-00951194d3fa.json b/ichamba-1562349005909-00951194d3fa.json new file mode 100644 index 0000000..cde9485 --- /dev/null +++ b/ichamba-1562349005909-00951194d3fa.json @@ -0,0 +1,12 @@ +{ + "type": "service_account", + "project_id": "ichamba-1562349005909", + "private_key_id": "00951194d3fa7ac51970ccf9111dde3f629dbefe", + "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOdUqQuFU5W0W+\nO1VhXuSASD8547ePTupY8TKil7FJSeY9IhWxtvFpIYMpBrR7bQEw2qWEkEXSvF3E\njDm4rf4L8hyrBaRVsXxPJXOhhS/jA40lvEa6M6qKKHLDuQOQ7zVaCnDob3X+ahiB\nYEJzTxBk6SxumhI3uk6UdhrPiMTiCj057wolCZI0eHh/gKt++nGIfCB6HPAledR6\nIGPVjZL7Xaxkkx6rge9GBwXzi1uYJQKYyJsALODFnW/MKUPbhMaVini6Vtb7loO5\nPtDZ1pk8c1nRPure8UAmei3tImRchT75Z8A5jAvR2U76+lYdvbciDPltbr6EC7NQ\nIjDxF2WzAgMBAAECggEAFap2ZECL5QSAiamVWK4KIbIzPGJ6yWW5LxNEwo5TswK3\n0DOK/kbaB7PWHVCQUSGLzfIsC4DOawKMfotOpWRQ9DT4sDPb3ohNKMsf2tPsxhCB\n1/Ntoq24WF5NSN/aEXQg762H0sSbp9K/dphA8PPbnxNfL84oWkPJakgIoT3Tl3rW\nTHh9W/evfUM36GWiEQEyw+t767jOa6CoVH9M8OY4I6jYvLNIdbmmumJ07BnvTV+w\nLTY2EuQ7My7HcuAjTYqpekH3tTQyQbbjfZM0/xSBANPtOSQKpyfM2kqhNZsADXRl\nMiP7jtbA6SFqwz/H/T1ieLjx1eNzHmnezWsJElYIAQKBgQDwQg3pET4epMhfKzbU\nLtn3n4f81YiTJYyWYvtPLW/CY2nDto7eP0stRuWXYRWRWX5Wrs3oq3vzG10Hut+g\nI37XhwYn7zOPSDGVMY7Rr4LFyBojL6BuhVckXnZQGy9X+3YF2Qd7dtRLRVMVZicm\nVekgSnMITwBA9JcldI8WMiZYAQKBgQDb/ExWWEOzjJv5QereTkZEFNSBeVY255SB\nQNRdg1DTx9coelm/HDyMNVH1hXTAWb/oIClJ+QmD6w6sAxV70/ENFHS4c+QdSeY8\nedoTEaFNXZIbSeTFJoi04BlTTiK00Gna6gYp0WP90m9pS3nJgpUBOJaqAsh1MLk9\npoA7nk/dswKBgH/dt8eFvLjUXCuCNUEB2lFWXyppfrFJd6QF89f0x5j+DajyfOC9\ncMYdCE3jhnX/2iRKDh45PdNpib52b1Or8HLGUrloLdmgw3qykF76eK/ISljVnR2U\n64bYm0EQ5sZ9dxevpLLJ0DxrHceywT0+1b6wwL34RZtMUTDG8uwOLqgBAoGAGSla\nceXWmIrUrEXl31eEofTf+Y8vVUhXrBEGOUvzysVozrBv43QPWNogbby+BeI+GQbU\nsilR9UzFeNdBddBgGeblEtPum4sAUpp9XwD9OiQhug1RpVsq98VKIEUnoxbThL6P\nxei1Tyrqo1iGrY3KDUGzue5njz/rcCnDMQ6ChBECgYEA2TJtDSphsyKME4xG9tnk\nd9lyoEr+pi3Z68Uz4DN5qG1vLfpjKJJcwr0xtFYdVqMQRNetTaLTFzfhrOOr1irD\nxubjV679Gk/5GdND3hNPvKTYyz8S0aJ8QFj4XQw5Ti9PPmfhHvAByVluAw5HRGCM\nMuvoQvfHroLc8ikM5FpVv+k=\n-----END PRIVATE KEY-----\n", + "client_email": "ichamba-filestorage-manager@ichamba-1562349005909.iam.gserviceaccount.com", + "client_id": "106087561135651067214", + "auth_uri": "https://accounts.google.com/o/oauth2/auth", + "token_uri": "https://oauth2.googleapis.com/token", + "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", + "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/ichamba-filestorage-manager%40ichamba-1562349005909.iam.gserviceaccount.com" +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..568c8d7 --- /dev/null +++ b/package.json @@ -0,0 +1,25 @@ +{ + "private": true, + "scripts": { + "dev": "npm run development", + "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", + "watch": "npm run development -- --watch", + "watch-poll": "npm run watch -- --watch-poll", + "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js", + "prod": "npm run production", + "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" + }, + "devDependencies": { + "axios": "^0.19", + "bootstrap": "^4.1.0", + "cross-env": "^5.1", + "jquery": "^3.2", + "laravel-mix": "^4.0.7", + "lodash": "^4.17.5", + "popper.js": "^1.12", + "resolve-url-loader": "^2.3.1", + "sass": "^1.15.2", + "sass-loader": "^7.1.0", + "vue": "^2.5.17" + } +} diff --git a/phpunit.xml b/phpunit.xml new file mode 100644 index 0000000..da4add3 --- /dev/null +++ b/phpunit.xml @@ -0,0 +1,33 @@ + + + + + ./tests/Unit + + + + ./tests/Feature + + + + + ./app + + + + + + + + + + + diff --git a/public/.htaccess b/public/.htaccess new file mode 100644 index 0000000..b75525b --- /dev/null +++ b/public/.htaccess @@ -0,0 +1,21 @@ + + + Options -MultiViews -Indexes + + + RewriteEngine On + + # Handle Authorization Header + RewriteCond %{HTTP:Authorization} . + RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] + + # Redirect Trailing Slashes If Not A Folder... + RewriteCond %{REQUEST_FILENAME} !-d + RewriteCond %{REQUEST_URI} (.+)/$ + RewriteRule ^ %1 [L,R=301] + + # Handle Front Controller... + RewriteCond %{REQUEST_FILENAME} !-d + RewriteCond %{REQUEST_FILENAME} !-f + RewriteRule ^ index.php [L] + diff --git a/public/css/app.css b/public/css/app.css new file mode 100644 index 0000000..aa0de29 --- /dev/null +++ b/public/css/app.css @@ -0,0 +1,8538 @@ +@import url(https://fonts.googleapis.com/css?family=Nunito); + +/*! + * Bootstrap v4.1.3 (https://getbootstrap.com/) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +:root { + --blue: #3490dc; + --indigo: #6574cd; + --purple: #9561e2; + --pink: #f66d9b; + --red: #e3342f; + --orange: #f6993f; + --yellow: #ffed4a; + --green: #38c172; + --teal: #4dc0b5; + --cyan: #6cb2eb; + --white: #fff; + --gray: #6c757d; + --gray-dark: #343a40; + --primary: #0080ff; + --secondary: #ff7d00; + --success: #38c172; + --info: #6cb2eb; + --warning: #ffed4a; + --danger: #e3342f; + --light: #f8f9fa; + --dark: #343a40; + --breakpoint-xs: 0; + --breakpoint-sm: 576px; + --breakpoint-md: 768px; + --breakpoint-lg: 992px; + --breakpoint-xl: 1200px; + --font-family-sans-serif: "Nunito", sans-serif; + --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace +} + +*, :after, :before { + box-sizing: border-box +} + +html { + font-family: sans-serif; + line-height: 1.15; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; + -ms-overflow-style: scrollbar; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + height: 100% +} + +.gnw-map-service { + height: 800px !important; + margin-bottom: 8px; +} + + +@-ms-viewport { + width: device-width +} + +article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { + display: block +} + +body { + font-family: Nunito, sans-serif; + font-size: .9rem; + font-weight: 400; + line-height: 1.6; + margin: 0; + text-align: left; + color: #212529; + background-color: #f8fafc; + height: calc(100% - 2.79em) +} + +#logo{ + width: auto; + height: 3em +} + +[tabindex="-1"]:focus { + outline: 0 !important +} + +hr { + overflow: visible; + box-sizing: content-box; + height: 0 +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 0; + margin-bottom: .5rem +} + +p { + margin-top: 0; + margin-bottom: 1rem +} + +abbr[data-original-title], abbr[title] { + cursor: help; + -webkit-text-decoration: underline dotted; + text-decoration: underline; + text-decoration: underline dotted; + border-bottom: 0 +} + +address { + font-style: normal; + line-height: inherit +} + +address, dl, ol, ul { + margin-bottom: 1rem +} + +dl, ol, ul { + margin-top: 0 +} + +ol ol, ol ul, ul ol, ul ul { + margin-bottom: 0 +} + +dt { + font-weight: 700 +} + +dd { + margin-bottom: .5rem; + margin-left: 0 +} + +blockquote { + margin: 0 0 1rem +} + +dfn { + font-style: italic +} + +b, strong { + font-weight: bolder +} + +small { + font-size: 80% +} + +sub, sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline +} + +sub { + bottom: -.25em +} + +sup { + top: -.5em +} + +a { + text-decoration: none; + color: var(--primary); + background-color: transparent; + -webkit-text-decoration-skip: objects +} + +a:hover { + text-decoration: underline; + color: #1d68a7 +} + +a:not([href]):not([tabindex]), a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover { + text-decoration: none; + color: inherit +} + +a:not([href]):not([tabindex]):focus { + outline: 0 +} + +code, kbd, pre, samp { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace; + font-size: 1em +} + +pre { + overflow: auto; + margin-top: 0; + margin-bottom: 1rem; + -ms-overflow-style: scrollbar +} + +figure { + margin: 0 0 1rem +} + +img { + border-style: none +} + +img, svg { + vertical-align: middle +} + +svg { + overflow: hidden +} + +table { + border-collapse: collapse +} + +caption { + padding-top: .75rem; + padding-bottom: .75rem; + caption-side: bottom; + text-align: left; + color: #6c757d +} + +th { + text-align: inherit +} + +label { + display: inline-block; + margin-bottom: .5rem +} + +button { + border-radius: 0 +} + +button:focus { + outline: 1px dotted; + outline: 5px auto -webkit-focus-ring-color +} + +button, input, optgroup, select, textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; + margin: 0 +} + +button, input { + overflow: visible +} + +button, select { + text-transform: none +} + +[type=reset], [type=submit], button, html [type=button] { + -webkit-appearance: button +} + +[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner { + padding: 0; + border-style: none +} + +input[type=checkbox], input[type=radio] { + box-sizing: border-box; + padding: 0 +} + +input[type=date], input[type=datetime-local], input[type=month], input[type=time] { + -webkit-appearance: listbox +} + +textarea { + overflow: auto; + resize: vertical +} + +fieldset { + min-width: 0; + margin: 0; + padding: 0; + border: 0 +} + +legend { + font-size: 1.5rem; + line-height: inherit; + display: block; + width: 100%; + max-width: 100%; + margin-bottom: .5rem; + padding: 0; + white-space: normal; + color: inherit +} + +progress { + vertical-align: baseline +} + +[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button { + height: auto +} + +[type=search] { + outline-offset: -2px; + -webkit-appearance: none +} + +[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration { + -webkit-appearance: none +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button +} + +output { + display: inline-block +} + +summary { + display: list-item; + cursor: pointer +} + +template { + display: none +} + +[hidden] { + display: none !important +} + +.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.2; + margin-bottom: .5rem; + color: inherit +} + +.h1, h1 { + font-size: 2.25rem +} + +.h2, h2 { + font-size: 1.8rem +} + +.h3, h3 { + font-size: 1.575rem +} + +.h4, h4 { + font-size: 1.35rem +} + +.h5, h5 { + font-size: 1.125rem +} + +.h6, h6 { + font-size: .9rem +} + +.lead { + font-size: 1.125rem; + font-weight: 300 +} + +.display-1 { + font-size: 6rem +} + +.display-1, .display-2 { + font-weight: 300; + line-height: 1.2 +} + +.display-2 { + font-size: 5.5rem +} + +.display-3 { + font-size: 4.5rem +} + +.display-3, .display-4 { + font-weight: 300; + line-height: 1.2 +} + +.display-4 { + font-size: 3.5rem +} + +hr { + margin-top: 1rem; + margin-bottom: 1rem; + border: 0; + border-top: 1px solid rgba(0, 0, 0, .1) +} + +.small, small { + font-size: 80%; + font-weight: 400 +} + +.mark, mark { + padding: .2em; + background-color: #fcf8e3 +} + +.list-inline, .list-unstyled { + padding-left: 0; + list-style: none +} + +.list-inline-item { + display: inline-block +} + +.list-inline-item:not(:last-child) { + margin-right: .5rem +} + +.initialism { + font-size: 90%; + text-transform: uppercase +} + +.blockquote { + font-size: 1.125rem; + margin-bottom: 1rem +} + +.blockquote-footer { + font-size: 80%; + display: block; + color: #6c757d +} + +.blockquote-footer:before { + content: "\2014\A0" +} + +.img-fluid, .img-thumbnail { + max-width: 100%; + height: auto +} + +.img-thumbnail { + padding: .25rem; + border: 1px solid #dee2e6; + border-radius: .25rem; + background-color: #f8fafc +} + +.figure { + display: inline-block +} + +.figure-img { + line-height: 1; + margin-bottom: .5rem +} + +.figure-caption { + font-size: 90%; + color: #6c757d +} + +code { + font-size: 87.5%; + word-break: break-word; + color: #f66d9b +} + +a>code { + color: inherit +} + +kbd { + font-size: 87.5%; + padding: .2rem .4rem; + color: #fff; + border-radius: .2rem; + background-color: #212529 +} + +kbd kbd { + font-size: 100%; + font-weight: 700; + padding: 0 +} + +pre { + font-size: 87.5%; + display: block; + color: #212529 +} + +pre code { + font-size: inherit; + word-break: normal; + color: inherit +} + +.pre-scrollable { + overflow-y: scroll; + max-height: 340px +} + +.container { + width: 100%; + margin-right: auto; + margin-left: auto; + padding-right: 15px; + padding-left: 15px; + padding-top: 1.0rem +} + +.container-fluid { + width: 100%; + margin-right: auto; + margin-left: auto; + padding-right: 15px; + padding-left: 15px +} + +.row { + display: flex; + flex-wrap: wrap; + margin-right: -15px; + margin-left: -15px +} + +.no-gutters { + margin-right: 0; + margin-left: 0 +} + +.no-gutters>.col, .no-gutters>[class*=col-] { + padding-right: 0; + padding-left: 0 +} + +.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-auto, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-auto, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, +.col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md-auto, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, +.col-xl-10, .col-xl-11, .col-xl-12, .col-xl-auto { + position: relative; + width: 100%; + min-height: 1px; + padding-right: 15px; + padding-left: 15px +} + +.col { + max-width: 100%; + flex-basis: 0; + flex-grow: 1 +} + +.col-auto { + width: auto; + max-width: none; + flex: 0 0 auto +} + +.col-1 { + max-width: 8.3333333333%; + flex: 0 0 8.3333333333% +} + +.col-2 { + max-width: 16.6666666667%; + flex: 0 0 16.6666666667% +} + +.col-3 { + max-width: 25%; + flex: 0 0 25% +} + +.col-4 { + max-width: 33.3333333333%; + flex: 0 0 33.3333333333% +} + +.col-5 { + max-width: 41.6666666667%; + flex: 0 0 41.6666666667% +} + +.col-6 { + max-width: 50%; + flex: 0 0 50% +} + +.col-7 { + max-width: 58.3333333333%; + flex: 0 0 58.3333333333% +} + +.col-8 { + max-width: 66.6666666667%; + flex: 0 0 66.6666666667% +} + +.col-9 { + max-width: 75%; + flex: 0 0 75% +} + +.col-10 { + max-width: 83.3333333333%; + flex: 0 0 83.3333333333% +} + +.col-11 { + max-width: 91.6666666667%; + flex: 0 0 91.6666666667% +} + +.col-12 { + max-width: 100%; + flex: 0 0 100% +} + +.order-first { + order: -1 +} + +.order-last { + order: 13 +} + +.order-0 { + order: 0 +} + +.order-1 { + order: 1 +} + +.order-2 { + order: 2 +} + +.order-3 { + order: 3 +} + +.order-4 { + order: 4 +} + +.order-5 { + order: 5 +} + +.order-6 { + order: 6 +} + +.order-7 { + order: 7 +} + +.order-8 { + order: 8 +} + +.order-9 { + order: 9 +} + +.order-10 { + order: 10 +} + +.order-11 { + order: 11 +} + +.order-12 { + order: 12 +} + +.offset-1 { + margin-left: 8.3333333333% +} + +.offset-2 { + margin-left: 16.6666666667% +} + +.offset-3 { + margin-left: 25% +} + +.offset-4 { + margin-left: 33.3333333333% +} + +.offset-5 { + margin-left: 41.6666666667% +} + +.offset-6 { + margin-left: 50% +} + +.offset-7 { + margin-left: 58.3333333333% +} + +.offset-8 { + margin-left: 66.6666666667% +} + +.offset-9 { + margin-left: 75% +} + +.offset-10 { + margin-left: 83.3333333333% +} + +.offset-11 { + margin-left: 91.6666666667% +} + +@media (min-width:576px) { + .col-sm { + max-width: 100%; + flex-basis: 0; + flex-grow: 1 + } + + .col-sm-auto { + width: auto; + max-width: none; + flex: 0 0 auto + } + + .col-sm-1 { + max-width: 8.3333333333%; + flex: 0 0 8.3333333333% + } + + .col-sm-2 { + max-width: 16.6666666667%; + flex: 0 0 16.6666666667% + } + + .col-sm-3 { + max-width: 25%; + flex: 0 0 25% + } + + .col-sm-4 { + max-width: 33.3333333333%; + flex: 0 0 33.3333333333% + } + + .col-sm-5 { + max-width: 41.6666666667%; + flex: 0 0 41.6666666667% + } + + .col-sm-6 { + max-width: 50%; + flex: 0 0 50% + } + + .col-sm-7 { + max-width: 58.3333333333%; + flex: 0 0 58.3333333333% + } + + .col-sm-8 { + max-width: 66.6666666667%; + flex: 0 0 66.6666666667% + } + + .col-sm-9 { + max-width: 75%; + flex: 0 0 75% + } + + .col-sm-10 { + max-width: 83.3333333333%; + flex: 0 0 83.3333333333% + } + + .col-sm-11 { + max-width: 91.6666666667%; + flex: 0 0 91.6666666667% + } + + .col-sm-12 { + max-width: 100%; + flex: 0 0 100% + } + + .order-sm-first { + order: -1 + } + + .order-sm-last { + order: 13 + } + + .order-sm-0 { + order: 0 + } + + .order-sm-1 { + order: 1 + } + + .order-sm-2 { + order: 2 + } + + .order-sm-3 { + order: 3 + } + + .order-sm-4 { + order: 4 + } + + .order-sm-5 { + order: 5 + } + + .order-sm-6 { + order: 6 + } + + .order-sm-7 { + order: 7 + } + + .order-sm-8 { + order: 8 + } + + .order-sm-9 { + order: 9 + } + + .order-sm-10 { + order: 10 + } + + .order-sm-11 { + order: 11 + } + + .order-sm-12 { + order: 12 + } + + .offset-sm-0 { + margin-left: 0 + } + + .offset-sm-1 { + margin-left: 8.3333333333% + } + + .offset-sm-2 { + margin-left: 16.6666666667% + } + + .offset-sm-3 { + margin-left: 25% + } + + .offset-sm-4 { + margin-left: 33.3333333333% + } + + .offset-sm-5 { + margin-left: 41.6666666667% + } + + .offset-sm-6 { + margin-left: 50% + } + + .offset-sm-7 { + margin-left: 58.3333333333% + } + + .offset-sm-8 { + margin-left: 66.6666666667% + } + + .offset-sm-9 { + margin-left: 75% + } + + .offset-sm-10 { + margin-left: 83.3333333333% + } + + .offset-sm-11 { + margin-left: 91.6666666667% + } +} + +@media (min-width:768px) { + .col-md { + max-width: 100%; + flex-basis: 0; + flex-grow: 1 + } + + .col-md-auto { + width: auto; + max-width: none; + flex: 0 0 auto + } + + .col-md-1 { + max-width: 8.3333333333%; + flex: 0 0 8.3333333333% + } + + .col-md-2 { + max-width: 16.6666666667%; + flex: 0 0 16.6666666667% + } + + .col-md-3 { + max-width: 25%; + flex: 0 0 25% + } + + .col-md-4 { + max-width: 33.3333333333%; + flex: 0 0 33.3333333333% + } + + .col-md-5 { + max-width: 41.6666666667%; + flex: 0 0 41.6666666667% + } + + .col-md-6 { + max-width: 50%; + flex: 0 0 50% + } + + .col-md-7 { + max-width: 58.3333333333%; + flex: 0 0 58.3333333333% + } + + .col-md-8 { + max-width: 66.6666666667%; + flex: 0 0 66.6666666667% + } + + .col-md-9 { + max-width: 75%; + flex: 0 0 75% + } + + .col-md-10 { + max-width: 83.3333333333%; + flex: 0 0 83.3333333333% + } + + .col-md-11 { + max-width: 91.6666666667%; + flex: 0 0 91.6666666667% + } + + .col-md-12 { + max-width: 100%; + flex: 0 0 100% + } + + .order-md-first { + order: -1 + } + + .order-md-last { + order: 13 + } + + .order-md-0 { + order: 0 + } + + .order-md-1 { + order: 1 + } + + .order-md-2 { + order: 2 + } + + .order-md-3 { + order: 3 + } + + .order-md-4 { + order: 4 + } + + .order-md-5 { + order: 5 + } + + .order-md-6 { + order: 6 + } + + .order-md-7 { + order: 7 + } + + .order-md-8 { + order: 8 + } + + .order-md-9 { + order: 9 + } + + .order-md-10 { + order: 10 + } + + .order-md-11 { + order: 11 + } + + .order-md-12 { + order: 12 + } + + .offset-md-0 { + margin-left: 0 + } + + .offset-md-1 { + margin-left: 8.3333333333% + } + + .offset-md-2 { + margin-left: 16.6666666667% + } + + .offset-md-3 { + margin-left: 25% + } + + .offset-md-4 { + margin-left: 33.3333333333% + } + + .offset-md-5 { + margin-left: 41.6666666667% + } + + .offset-md-6 { + margin-left: 50% + } + + .offset-md-7 { + margin-left: 58.3333333333% + } + + .offset-md-8 { + margin-left: 66.6666666667% + } + + .offset-md-9 { + margin-left: 75% + } + + .offset-md-10 { + margin-left: 83.3333333333% + } + + .offset-md-11 { + margin-left: 91.6666666667% + } +} + +@media (min-width:992px) { + .col-lg { + max-width: 100%; + flex-basis: 0; + flex-grow: 1 + } + + .col-lg-auto { + width: auto; + max-width: none; + flex: 0 0 auto + } + + .col-lg-1 { + max-width: 8.3333333333%; + flex: 0 0 8.3333333333% + } + + .col-lg-2 { + max-width: 16.6666666667%; + flex: 0 0 16.6666666667% + } + + .col-lg-3 { + max-width: 25%; + flex: 0 0 25% + } + + .col-lg-4 { + max-width: 33.3333333333%; + flex: 0 0 33.3333333333% + } + + .col-lg-5 { + max-width: 41.6666666667%; + flex: 0 0 41.6666666667% + } + + .col-lg-6 { + max-width: 50%; + flex: 0 0 50% + } + + .col-lg-7 { + max-width: 58.3333333333%; + flex: 0 0 58.3333333333% + } + + .col-lg-8 { + max-width: 66.6666666667%; + flex: 0 0 66.6666666667% + } + + .col-lg-9 { + max-width: 75%; + flex: 0 0 75% + } + + .col-lg-10 { + max-width: 83.3333333333%; + flex: 0 0 83.3333333333% + } + + .col-lg-11 { + max-width: 91.6666666667%; + flex: 0 0 91.6666666667% + } + + .col-lg-12 { + max-width: 100%; + flex: 0 0 100% + } + + .order-lg-first { + order: -1 + } + + .order-lg-last { + order: 13 + } + + .order-lg-0 { + order: 0 + } + + .order-lg-1 { + order: 1 + } + + .order-lg-2 { + order: 2 + } + + .order-lg-3 { + order: 3 + } + + .order-lg-4 { + order: 4 + } + + .order-lg-5 { + order: 5 + } + + .order-lg-6 { + order: 6 + } + + .order-lg-7 { + order: 7 + } + + .order-lg-8 { + order: 8 + } + + .order-lg-9 { + order: 9 + } + + .order-lg-10 { + order: 10 + } + + .order-lg-11 { + order: 11 + } + + .order-lg-12 { + order: 12 + } + + .offset-lg-0 { + margin-left: 0 + } + + .offset-lg-1 { + margin-left: 8.3333333333% + } + + .offset-lg-2 { + margin-left: 16.6666666667% + } + + .offset-lg-3 { + margin-left: 25% + } + + .offset-lg-4 { + margin-left: 33.3333333333% + } + + .offset-lg-5 { + margin-left: 41.6666666667% + } + + .offset-lg-6 { + margin-left: 50% + } + + .offset-lg-7 { + margin-left: 58.3333333333% + } + + .offset-lg-8 { + margin-left: 66.6666666667% + } + + .offset-lg-9 { + margin-left: 75% + } + + .offset-lg-10 { + margin-left: 83.3333333333% + } + + .offset-lg-11 { + margin-left: 91.6666666667% + } +} + +@media (min-width:1200px) { + .col-xl { + max-width: 100%; + flex-basis: 0; + flex-grow: 1 + } + + .col-xl-auto { + width: auto; + max-width: none; + flex: 0 0 auto + } + + .col-xl-1 { + max-width: 8.3333333333%; + flex: 0 0 8.3333333333% + } + + .col-xl-2 { + max-width: 16.6666666667%; + flex: 0 0 16.6666666667% + } + + .col-xl-3 { + max-width: 25%; + flex: 0 0 25% + } + + .col-xl-4 { + max-width: 33.3333333333%; + flex: 0 0 33.3333333333% + } + + .col-xl-5 { + max-width: 41.6666666667%; + flex: 0 0 41.6666666667% + } + + .col-xl-6 { + max-width: 50%; + flex: 0 0 50% + } + + .col-xl-7 { + max-width: 58.3333333333%; + flex: 0 0 58.3333333333% + } + + .col-xl-8 { + max-width: 66.6666666667%; + flex: 0 0 66.6666666667% + } + + .col-xl-9 { + max-width: 75%; + flex: 0 0 75% + } + + .col-xl-10 { + max-width: 83.3333333333%; + flex: 0 0 83.3333333333% + } + + .col-xl-11 { + max-width: 91.6666666667%; + flex: 0 0 91.6666666667% + } + + .col-xl-12 { + max-width: 100%; + flex: 0 0 100% + } + + .order-xl-first { + order: -1 + } + + .order-xl-last { + order: 13 + } + + .order-xl-0 { + order: 0 + } + + .order-xl-1 { + order: 1 + } + + .order-xl-2 { + order: 2 + } + + .order-xl-3 { + order: 3 + } + + .order-xl-4 { + order: 4 + } + + .order-xl-5 { + order: 5 + } + + .order-xl-6 { + order: 6 + } + + .order-xl-7 { + order: 7 + } + + .order-xl-8 { + order: 8 + } + + .order-xl-9 { + order: 9 + } + + .order-xl-10 { + order: 10 + } + + .order-xl-11 { + order: 11 + } + + .order-xl-12 { + order: 12 + } + + .offset-xl-0 { + margin-left: 0 + } + + .offset-xl-1 { + margin-left: 8.3333333333% + } + + .offset-xl-2 { + margin-left: 16.6666666667% + } + + .offset-xl-3 { + margin-left: 25% + } + + .offset-xl-4 { + margin-left: 33.3333333333% + } + + .offset-xl-5 { + margin-left: 41.6666666667% + } + + .offset-xl-6 { + margin-left: 50% + } + + .offset-xl-7 { + margin-left: 58.3333333333% + } + + .offset-xl-8 { + margin-left: 66.6666666667% + } + + .offset-xl-9 { + margin-left: 75% + } + + .offset-xl-10 { + margin-left: 83.3333333333% + } + + .offset-xl-11 { + margin-left: 91.6666666667% + } +} + +.table { + width: 100%; + margin-bottom: 1rem; + background-color: transparent +} + +.table td, .table th { + padding: .35rem; + vertical-align: top; + border-top: 1px solid #dee2e6 +} + +.table thead th { + vertical-align: bottom; + border-bottom: 2px solid #dee2e6 +} + +.table tbody+tbody { + border-top: 2px solid #dee2e6 +} + +.table .table { + background-color: #f8fafc +} + +.table-sm td, .table-sm th { + padding: .3rem +} + +.table-bordered, .table-bordered td, .table-bordered th { + border: 1px solid #dee2e6 +} + +.table-bordered thead td, .table-bordered thead th { + border-bottom-width: 2px +} + +.table-borderless tbody+tbody, .table-borderless td, .table-borderless th, .table-borderless thead th { + border: 0 +} + +.table-striped tbody tr:nth-of-type(odd) { + background-color: rgba(0, 0, 0, .05) +} + +.table-hover tbody tr:hover { + background-color: rgba(0, 0, 0, .075) +} + +.table-primary, .table-primary>td, .table-primary>th { + background-color: #c6e0f5 +} + +.table-hover .table-primary:hover, .table-hover .table-primary:hover>td, .table-hover .table-primary:hover>th { + background-color: #b0d4f1 +} + +.table-secondary, .table-secondary>td, .table-secondary>th { + background-color: #d6d8db +} + +.table-hover .table-secondary:hover, .table-hover .table-secondary:hover>td, .table-hover .table-secondary:hover>th { + background-color: #c8cbcf +} + +.table-success, .table-success>td, .table-success>th { + background-color: #c7eed8 +} + +.table-hover .table-success:hover, .table-hover .table-success:hover>td, .table-hover .table-success:hover>th { + background-color: #b3e8ca +} + +.table-info, .table-info>td, .table-info>th { + background-color: #d6e9f9 +} + +.table-hover .table-info:hover, .table-hover .table-info:hover>td, .table-hover .table-info:hover>th { + background-color: #c0ddf6 +} + +.table-warning, .table-warning>td, .table-warning>th { + background-color: #fffacc +} + +.table-hover .table-warning:hover, .table-hover .table-warning:hover>td, .table-hover .table-warning:hover>th { + background-color: #fff8b3 +} + +.table-danger, .table-danger>td, .table-danger>th { + background-color: #f7c6c5 +} + +.table-hover .table-danger:hover, .table-hover .table-danger:hover>td, .table-hover .table-danger:hover>th { + background-color: #f4b0af +} + +.table-light, .table-light>td, .table-light>th { + background-color: #fdfdfe +} + +.table-hover .table-light:hover, .table-hover .table-light:hover>td, .table-hover .table-light:hover>th { + background-color: #ececf6 +} + +.table-dark, .table-dark>td, .table-dark>th { + background-color: #c6c8ca +} + +.table-hover .table-dark:hover, .table-hover .table-dark:hover>td, .table-hover .table-dark:hover>th { + background-color: #b9bbbe +} + +.table-active, .table-active>td, .table-active>th, .table-hover .table-active:hover, .table-hover .table-active:hover>td, .table-hover .table-active:hover>th { + background-color: rgba(0, 0, 0, .075) +} + +.table .thead-dark th { + color: #f8fafc; + border-color: #32383e; + background-color: #212529 +} + +.table .thead-light th { + color: #495057; + border-color: #dee2e6; + background-color: #e9ecef +} + +.table-dark { + color: #f8fafc; + background-color: #212529 +} + +.table-dark td, .table-dark th, .table-dark thead th { + border-color: #32383e +} + +.table-dark.table-bordered { + border: 0 +} + +.table-dark.table-striped tbody tr:nth-of-type(odd) { + background-color: hsla(0, 0%, 100%, .05) +} + +.table-dark.table-hover tbody tr:hover { + background-color: hsla(0, 0%, 100%, .075) +} + +@media (max-width:575.98px) { + .table-responsive-sm { + display: block; + overflow-x: auto; + width: 100%; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar + } + + .table-responsive-sm>.table-bordered { + border: 0 + } +} + +@media (max-width:767.98px) { + .table-responsive-md { + display: block; + overflow-x: auto; + width: 100%; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar + } + + .table-responsive-md>.table-bordered { + border: 0 + } +} + +@media (max-width:991.98px) { + .table-responsive-lg { + display: block; + overflow-x: auto; + width: 100%; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar + } + + .table-responsive-lg>.table-bordered { + border: 0 + } +} + +@media (max-width:1199.98px) { + .table-responsive-xl { + display: block; + overflow-x: auto; + width: 100%; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar + } + + .table-responsive-xl>.table-bordered { + border: 0 + } +} + +.table-responsive { + display: block; + overflow-x: auto; + width: 100%; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar +} + +.table-responsive>.table-bordered { + border: 0 +} + +.form-control { + font-size: .9rem; + line-height: 1.6; + display: block; + width: 100%; + height: calc(2.19rem + 2px); + padding: .375rem .75rem; + transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; + color: #495057; + border: 1px solid #ced4da; + border-radius: .25rem; + background-color: #fff; + background-clip: padding-box +} + +@media screen and (prefers-reduced-motion:reduce) { + .form-control { + transition: none + } +} + +.form-control::-ms-expand { + border: 0; + background-color: transparent +} + +.form-control:focus { + color: #495057; + border-color: #a1cbef; + outline: 0; + background-color: #fff; + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.form-control::-webkit-input-placeholder { + opacity: 1; + color: #6c757d +} + +.form-control:-ms-input-placeholder { + opacity: 1; + color: #6c757d +} + +.form-control::-ms-input-placeholder { + opacity: 1; + color: #6c757d +} + +.form-control::placeholder { + opacity: 1; + color: #6c757d +} + +.form-control:disabled, .form-control[readonly] { + opacity: 1; + background-color: #e9ecef +} + +select.form-control:focus::-ms-value { + color: #495057; + background-color: #fff +} + +.form-control-file, .form-control-range { + display: block; + width: 100% +} + +.col-form-label { + font-size: inherit; + line-height: 1.6; + margin-bottom: 0; + padding-top: calc(.375rem + 1px); + padding-bottom: calc(.375rem + 1px) +} + +.col-form-label-lg { + font-size: 1.125rem; + line-height: 1.5; + padding-top: calc(.5rem + 1px); + padding-bottom: calc(.5rem + 1px) +} + +.col-form-label-sm { + font-size: .7875rem; + line-height: 1.5; + padding-top: calc(.25rem + 1px); + padding-bottom: calc(.25rem + 1px) +} + +.form-control-plaintext { + line-height: 1.6; + display: block; + width: 100%; + margin-bottom: 0; + padding-top: .375rem; + padding-bottom: .375rem; + color: #212529; + border: solid transparent; + border-width: 1px 0; + background-color: transparent +} + +.form-control-plaintext.form-control-lg, .form-control-plaintext.form-control-sm { + padding-right: 0; + padding-left: 0 +} + +.form-control-sm { + font-size: .7875rem; + line-height: 1.5; + height: calc(1.68125rem + 2px); + padding: .25rem .5rem; + border-radius: .2rem +} + +.form-control-lg { + font-size: 1.125rem; + line-height: 1.5; + height: calc(2.6875rem + 2px); + padding: .5rem 1rem; + border-radius: .3rem +} + +select.form-control[multiple], select.form-control[size], textarea.form-control { + height: auto +} + +.form-group { + margin-bottom: 1rem +} + +.form-text { + display: block; + margin-top: .25rem +} + +.form-row { + display: flex; + flex-wrap: wrap; + margin-right: -5px; + margin-left: -5px +} + +.form-row>.col, .form-row>[class*=col-] { + padding-right: 5px; + padding-left: 5px +} + +.form-check { + position: relative; + display: block; + padding-left: 1.25rem +} + +.form-check-input { + position: absolute; + margin-top: .3rem; + margin-left: -1.25rem +} + +.form-check-input:disabled~.form-check-label { + color: #6c757d +} + +.form-check-label { + margin-bottom: 0 +} + +.form-check-inline { + display: inline-flex; + margin-right: .75rem; + padding-left: 0; + align-items: center +} + +.form-check-inline .form-check-input { + position: static; + margin-top: 0; + margin-right: .3125rem; + margin-left: 0 +} + +.valid-feedback { + font-size: 80%; + display: none; + width: 100%; + margin-top: .25rem; + color: #38c172 +} + +.valid-tooltip { + font-size: .7875rem; + line-height: 1.6; + position: absolute; + z-index: 5; + top: 100%; + display: none; + max-width: 100%; + margin-top: .1rem; + padding: .25rem .5rem; + color: #fff; + border-radius: .25rem; + background-color: rgba(56, 193, 114, .9) +} + +.custom-select.is-valid, .form-control.is-valid, .was-validated .custom-select:valid, .was-validated .form-control:valid { + border-color: #38c172 +} + +.custom-select.is-valid:focus, .form-control.is-valid:focus, .was-validated .custom-select:valid:focus, .was-validated .form-control:valid:focus { + border-color: #38c172; + box-shadow: 0 0 0 .2rem rgba(56, 193, 114, .25) +} + +.custom-select.is-valid~.valid-feedback, .custom-select.is-valid~.valid-tooltip, .form-control-file.is-valid~.valid-feedback, .form-control-file.is-valid~.valid-tooltip, .form-control.is-valid~.valid-feedback, .form-control.is-valid~.valid-tooltip, .was-validated .custom-select:valid~.valid-feedback, .was-validated .custom-select:valid~.valid-tooltip, .was-validated .form-control-file:valid~.valid-feedback, .was-validated .form-control-file:valid~.valid-tooltip, .was-validated .form-control:valid~.valid-feedback, .was-validated .form-control:valid~.valid-tooltip { + display: block +} + +.form-check-input.is-valid~.form-check-label, .was-validated .form-check-input:valid~.form-check-label { + color: #38c172 +} + +.form-check-input.is-valid~.valid-feedback, .form-check-input.is-valid~.valid-tooltip, .was-validated .form-check-input:valid~.valid-feedback, .was-validated .form-check-input:valid~.valid-tooltip { + display: block +} + +.custom-control-input.is-valid~.custom-control-label, .was-validated .custom-control-input:valid~.custom-control-label { + color: #38c172 +} + +.custom-control-input.is-valid~.custom-control-label:before, .was-validated .custom-control-input:valid~.custom-control-label:before { + background-color: #98e1b7 +} + +.custom-control-input.is-valid~.valid-feedback, .custom-control-input.is-valid~.valid-tooltip, .was-validated .custom-control-input:valid~.valid-feedback, .was-validated .custom-control-input:valid~.valid-tooltip { + display: block +} + +.custom-control-input.is-valid:checked~.custom-control-label:before, .was-validated .custom-control-input:valid:checked~.custom-control-label:before { + background-color: #5cd08d +} + +.custom-control-input.is-valid:focus~.custom-control-label:before, .was-validated .custom-control-input:valid:focus~.custom-control-label:before { + box-shadow: 0 0 0 1px #f8fafc, 0 0 0 .2rem rgba(56, 193, 114, .25) +} + +.custom-file-input.is-valid~.custom-file-label, .was-validated .custom-file-input:valid~.custom-file-label { + border-color: #38c172 +} + +.custom-file-input.is-valid~.custom-file-label:after, .was-validated .custom-file-input:valid~.custom-file-label:after { + border-color: inherit +} + +.custom-file-input.is-valid~.valid-feedback, .custom-file-input.is-valid~.valid-tooltip, .was-validated .custom-file-input:valid~.valid-feedback, .was-validated .custom-file-input:valid~.valid-tooltip { + display: block +} + +.custom-file-input.is-valid:focus~.custom-file-label, .was-validated .custom-file-input:valid:focus~.custom-file-label { + box-shadow: 0 0 0 .2rem rgba(56, 193, 114, .25) +} + +.invalid-feedback { + font-size: 80%; + display: none; + width: 100%; + margin-top: .25rem; + color: #e3342f +} + +.invalid-tooltip { + font-size: .7875rem; + line-height: 1.6; + position: absolute; + z-index: 5; + top: 100%; + display: none; + max-width: 100%; + margin-top: .1rem; + padding: .25rem .5rem; + color: #fff; + border-radius: .25rem; + background-color: rgba(227, 52, 47, .9) +} + +.custom-select.is-invalid, .form-control.is-invalid, .was-validated .custom-select:invalid, .was-validated .form-control:invalid { + border-color: #e3342f +} + +.custom-select.is-invalid:focus, .form-control.is-invalid:focus, .was-validated .custom-select:invalid:focus, .was-validated .form-control:invalid:focus { + border-color: #e3342f; + box-shadow: 0 0 0 .2rem rgba(227, 52, 47, .25) +} + +.custom-select.is-invalid~.invalid-feedback, .custom-select.is-invalid~.invalid-tooltip, .form-control-file.is-invalid~.invalid-feedback, .form-control-file.is-invalid~.invalid-tooltip, .form-control.is-invalid~.invalid-feedback, .form-control.is-invalid~.invalid-tooltip, .was-validated .custom-select:invalid~.invalid-feedback, .was-validated .custom-select:invalid~.invalid-tooltip, .was-validated .form-control-file:invalid~.invalid-feedback, .was-validated .form-control-file:invalid~.invalid-tooltip, .was-validated .form-control:invalid~.invalid-feedback, .was-validated .form-control:invalid~.invalid-tooltip { + display: block +} + +.form-check-input.is-invalid~.form-check-label, .was-validated .form-check-input:invalid~.form-check-label { + color: #e3342f +} + +.form-check-input.is-invalid~.invalid-feedback, .form-check-input.is-invalid~.invalid-tooltip, .was-validated .form-check-input:invalid~.invalid-feedback, .was-validated .form-check-input:invalid~.invalid-tooltip { + display: block +} + +.custom-control-input.is-invalid~.custom-control-label, .was-validated .custom-control-input:invalid~.custom-control-label { + color: #e3342f +} + +.custom-control-input.is-invalid~.custom-control-label:before, .was-validated .custom-control-input:invalid~.custom-control-label:before { + background-color: #f2a29f +} + +.custom-control-input.is-invalid~.invalid-feedback, .custom-control-input.is-invalid~.invalid-tooltip, .was-validated .custom-control-input:invalid~.invalid-feedback, .was-validated .custom-control-input:invalid~.invalid-tooltip { + display: block +} + +.custom-control-input.is-invalid:checked~.custom-control-label:before, .was-validated .custom-control-input:invalid:checked~.custom-control-label:before { + background-color: #e9605c +} + +.custom-control-input.is-invalid:focus~.custom-control-label:before, .was-validated .custom-control-input:invalid:focus~.custom-control-label:before { + box-shadow: 0 0 0 1px #f8fafc, 0 0 0 .2rem rgba(227, 52, 47, .25) +} + +.custom-file-input.is-invalid~.custom-file-label, .was-validated .custom-file-input:invalid~.custom-file-label { + border-color: #e3342f +} + +.custom-file-input.is-invalid~.custom-file-label:after, .was-validated .custom-file-input:invalid~.custom-file-label:after { + border-color: inherit +} + +.custom-file-input.is-invalid~.invalid-feedback, .custom-file-input.is-invalid~.invalid-tooltip, .was-validated .custom-file-input:invalid~.invalid-feedback, .was-validated .custom-file-input:invalid~.invalid-tooltip { + display: block +} + +.custom-file-input.is-invalid:focus~.custom-file-label, .was-validated .custom-file-input:invalid:focus~.custom-file-label { + box-shadow: 0 0 0 .2rem rgba(227, 52, 47, .25) +} + +.form-inline { + display: flex; + flex-flow: row wrap; + align-items: center +} + +.form-inline .form-check { + width: 100% +} + +@media (min-width:576px) { + .form-inline label { + justify-content: center + } + + .form-inline .form-group, .form-inline label { + display: flex; + margin-bottom: 0; + align-items: center + } + + .form-inline .form-group { + flex: 0 0 auto; + flex-flow: row wrap + } + + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle + } + + .form-inline .form-control-plaintext { + display: inline-block + } + + .form-inline .custom-select, .form-inline .input-group { + width: auto + } + + .form-inline .form-check { + display: flex; + width: auto; + padding-left: 0; + align-items: center; + justify-content: center + } + + .form-inline .form-check-input { + position: relative; + margin-top: 0; + margin-right: .25rem; + margin-left: 0 + } + + .form-inline .custom-control { + align-items: center; + justify-content: center + } + + .form-inline .custom-control-label { + margin-bottom: 0 + } +} + +.btn { + font-size: .9rem; + font-weight: 400; + line-height: 1.6; + display: inline-block; + padding: .375rem .75rem; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; + text-align: center; + vertical-align: middle; + white-space: nowrap; + border: 1px solid transparent; + border-radius: .25rem +} + +@media screen and (prefers-reduced-motion:reduce) { + .btn { + transition: none + } +} + +.btn:focus, .btn:hover { + text-decoration: none +} + +.btn.focus, .btn:focus { + outline: 0; + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.btn.disabled, .btn:disabled { + opacity: .65 +} + +.btn:not(:disabled):not(.disabled) { + cursor: pointer +} + +a.btn.disabled, fieldset:disabled a.btn { + pointer-events: none +} + +.btn-primary { + color: #fff; + border-color: var(--primary); + background-color: var(--primary) +} + +.btn-primary:hover { + color: #fff; + border-color: #1065cc; + background-color: #1065cc +} + +.btn-primary.focus, .btn-primary:focus { + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .5) +} + +.btn-primary.disabled, .btn-primary:disabled { + color: #fff; + border-color: #3490dc; + background-color: #3490dc +} + +.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle { + color: #fff; + border-color: #1f6fb2; + background-color: #2176bd +} + +.btn-primary:not(:disabled):not(.disabled).active:focus, .btn-primary:not(:disabled):not(.disabled):active:focus, .show>.btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .5) +} + +.btn-secondary { + color: #fff; + border-color: var(--secondary); + background-color: var(--secondary) +} + +.btn-secondary:hover { + color: #fff; + border-color: #545b62; + background-color: #5a6268 +} + +.btn-secondary.focus, .btn-secondary:focus { + box-shadow: 0 0 0 .2rem rgba(108, 117, 125, .5) +} + +.btn-secondary.disabled, .btn-secondary:disabled { + color: #fff; + border-color: #6c757d; + background-color: #6c757d +} + +.btn-secondary:not(:disabled):not(.disabled).active, .btn-secondary:not(:disabled):not(.disabled):active, .show>.btn-secondary.dropdown-toggle { + color: #fff; + border-color: #4e555b; + background-color: #545b62 +} + +.btn-secondary:not(:disabled):not(.disabled).active:focus, .btn-secondary:not(:disabled):not(.disabled):active:focus, .show>.btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(108, 117, 125, .5) +} + +.btn-success { + color: #fff; + border-color: #38c172; + background-color: #38c172 +} + +.btn-success:hover { + color: #fff; + border-color: #2d995b; + background-color: #2fa360 +} + +.btn-success.focus, .btn-success:focus { + box-shadow: 0 0 0 .2rem rgba(56, 193, 114, .5) +} + +.btn-success.disabled, .btn-success:disabled { + color: #fff; + border-color: #38c172; + background-color: #38c172 +} + +.btn-success:not(:disabled):not(.disabled).active, .btn-success:not(:disabled):not(.disabled):active, .show>.btn-success.dropdown-toggle { + color: #fff; + border-color: #2a9055; + background-color: #2d995b +} + +.btn-success:not(:disabled):not(.disabled).active:focus, .btn-success:not(:disabled):not(.disabled):active:focus, .show>.btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(56, 193, 114, .5) +} + +.btn-info { + color: #212529; + border-color: #6cb2eb; + background-color: #6cb2eb +} + +.btn-info:hover { + color: #fff; + border-color: #3f9ae5; + background-color: #4aa0e6 +} + +.btn-info.focus, .btn-info:focus { + box-shadow: 0 0 0 .2rem rgba(108, 178, 235, .5) +} + +.btn-info.disabled, .btn-info:disabled { + color: #212529; + border-color: #6cb2eb; + background-color: #6cb2eb +} + +.btn-info:not(:disabled):not(.disabled).active, .btn-info:not(:disabled):not(.disabled):active, .show>.btn-info.dropdown-toggle { + color: #fff; + border-color: #3495e3; + background-color: #3f9ae5 +} + +.btn-info:not(:disabled):not(.disabled).active:focus, .btn-info:not(:disabled):not(.disabled):active:focus, .show>.btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(108, 178, 235, .5) +} + +.btn-warning { + color: #212529; + border-color: #ffed4a; + background-color: #ffed4a +} + +.btn-warning:hover { + color: #212529; + border-color: #ffe817; + background-color: #ffe924 +} + +.btn-warning.focus, .btn-warning:focus { + box-shadow: 0 0 0 .2rem rgba(255, 237, 74, .5) +} + +.btn-warning.disabled, .btn-warning:disabled { + color: #212529; + border-color: #ffed4a; + background-color: #ffed4a +} + +.btn-warning:not(:disabled):not(.disabled).active, .btn-warning:not(:disabled):not(.disabled):active, .show>.btn-warning.dropdown-toggle { + color: #212529; + border-color: #ffe70a; + background-color: #ffe817 +} + +.btn-warning:not(:disabled):not(.disabled).active:focus, .btn-warning:not(:disabled):not(.disabled):active:focus, .show>.btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(255, 237, 74, .5) +} + +.btn-danger { + color: #fff; + border-color: #e3342f; + background-color: #e3342f +} + +.btn-danger:hover { + color: #fff; + border-color: #c51f1a; + background-color: #d0211c +} + +.btn-danger.focus, .btn-danger:focus { + box-shadow: 0 0 0 .2rem rgba(227, 52, 47, .5) +} + +.btn-danger.disabled, .btn-danger:disabled { + color: #fff; + border-color: #e3342f; + background-color: #e3342f +} + +.btn-danger:not(:disabled):not(.disabled).active, .btn-danger:not(:disabled):not(.disabled):active, .show>.btn-danger.dropdown-toggle { + color: #fff; + border-color: #b91d19; + background-color: #c51f1a +} + +.btn-danger:not(:disabled):not(.disabled).active:focus, .btn-danger:not(:disabled):not(.disabled):active:focus, .show>.btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(227, 52, 47, .5) +} + +.btn-light { + color: #212529; + border-color: #f8f9fa; + background-color: #f8f9fa +} + +.btn-light:hover { + color: #212529; + border-color: #dae0e5; + background-color: #e2e6ea +} + +.btn-light.focus, .btn-light:focus { + box-shadow: 0 0 0 .2rem rgba(248, 249, 250, .5) +} + +.btn-light.disabled, .btn-light:disabled { + color: #212529; + border-color: #f8f9fa; + background-color: #f8f9fa +} + +.btn-light:not(:disabled):not(.disabled).active, .btn-light:not(:disabled):not(.disabled):active, .show>.btn-light.dropdown-toggle { + color: #212529; + border-color: #d3d9df; + background-color: #dae0e5 +} + +.btn-light:not(:disabled):not(.disabled).active:focus, .btn-light:not(:disabled):not(.disabled):active:focus, .show>.btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(248, 249, 250, .5) +} + +.btn-dark { + color: #fff; + border-color: #343a40; + background-color: #343a40 +} + +.btn-dark:hover { + color: #fff; + border-color: #1d2124; + background-color: #23272b +} + +.btn-dark.focus, .btn-dark:focus { + box-shadow: 0 0 0 .2rem rgba(52, 58, 64, .5) +} + +.btn-dark.disabled, .btn-dark:disabled { + color: #fff; + border-color: #343a40; + background-color: #343a40 +} + +.btn-dark:not(:disabled):not(.disabled).active, .btn-dark:not(:disabled):not(.disabled):active, .show>.btn-dark.dropdown-toggle { + color: #fff; + border-color: #171a1d; + background-color: #1d2124 +} + +.btn-dark:not(:disabled):not(.disabled).active:focus, .btn-dark:not(:disabled):not(.disabled):active:focus, .show>.btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(52, 58, 64, .5) +} + +.btn-outline-primary { + color: #3490dc; + border-color: #3490dc; + background-color: transparent; + background-image: none +} + +.btn-outline-primary:hover { + color: #fff; + border-color: #3490dc; + background-color: #3490dc +} + +.btn-outline-primary.focus, .btn-outline-primary:focus { + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .5) +} + +.btn-outline-primary.disabled, .btn-outline-primary:disabled { + color: #3490dc; + background-color: transparent +} + +.btn-outline-primary:not(:disabled):not(.disabled).active, .btn-outline-primary:not(:disabled):not(.disabled):active, .show>.btn-outline-primary.dropdown-toggle { + color: #fff; + border-color: #3490dc; + background-color: #3490dc +} + +.btn-outline-primary:not(:disabled):not(.disabled).active:focus, .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .5) +} + +.btn-outline-secondary { + color: #6c757d; + border-color: #6c757d; + background-color: transparent; + background-image: none +} + +.btn-outline-secondary:hover { + color: #fff; + border-color: #6c757d; + background-color: #6c757d +} + +.btn-outline-secondary.focus, .btn-outline-secondary:focus { + box-shadow: 0 0 0 .2rem rgba(108, 117, 125, .5) +} + +.btn-outline-secondary.disabled, .btn-outline-secondary:disabled { + color: #6c757d; + background-color: transparent +} + +.btn-outline-secondary:not(:disabled):not(.disabled).active, .btn-outline-secondary:not(:disabled):not(.disabled):active, .show>.btn-outline-secondary.dropdown-toggle { + color: #fff; + border-color: #6c757d; + background-color: #6c757d +} + +.btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(108, 117, 125, .5) +} + +.btn-outline-success { + color: #38c172; + border-color: #38c172; + background-color: transparent; + background-image: none +} + +.btn-outline-success:hover { + color: #fff; + border-color: #38c172; + background-color: #38c172 +} + +.btn-outline-success.focus, .btn-outline-success:focus { + box-shadow: 0 0 0 .2rem rgba(56, 193, 114, .5) +} + +.btn-outline-success.disabled, .btn-outline-success:disabled { + color: #38c172; + background-color: transparent +} + +.btn-outline-success:not(:disabled):not(.disabled).active, .btn-outline-success:not(:disabled):not(.disabled):active, .show>.btn-outline-success.dropdown-toggle { + color: #fff; + border-color: #38c172; + background-color: #38c172 +} + +.btn-outline-success:not(:disabled):not(.disabled).active:focus, .btn-outline-success:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-success.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(56, 193, 114, .5) +} + +.btn-outline-info { + color: #6cb2eb; + border-color: #6cb2eb; + background-color: transparent; + background-image: none +} + +.btn-outline-info:hover { + color: #212529; + border-color: #6cb2eb; + background-color: #6cb2eb +} + +.btn-outline-info.focus, .btn-outline-info:focus { + box-shadow: 0 0 0 .2rem rgba(108, 178, 235, .5) +} + +.btn-outline-info.disabled, .btn-outline-info:disabled { + color: #6cb2eb; + background-color: transparent +} + +.btn-outline-info:not(:disabled):not(.disabled).active, .btn-outline-info:not(:disabled):not(.disabled):active, .show>.btn-outline-info.dropdown-toggle { + color: #212529; + border-color: #6cb2eb; + background-color: #6cb2eb +} + +.btn-outline-info:not(:disabled):not(.disabled).active:focus, .btn-outline-info:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-info.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(108, 178, 235, .5) +} + +.btn-outline-warning { + color: #ffed4a; + border-color: #ffed4a; + background-color: transparent; + background-image: none +} + +.btn-outline-warning:hover { + color: #212529; + border-color: #ffed4a; + background-color: #ffed4a +} + +.btn-outline-warning.focus, .btn-outline-warning:focus { + box-shadow: 0 0 0 .2rem rgba(255, 237, 74, .5) +} + +.btn-outline-warning.disabled, .btn-outline-warning:disabled { + color: #ffed4a; + background-color: transparent +} + +.btn-outline-warning:not(:disabled):not(.disabled).active, .btn-outline-warning:not(:disabled):not(.disabled):active, .show>.btn-outline-warning.dropdown-toggle { + color: #212529; + border-color: #ffed4a; + background-color: #ffed4a +} + +.btn-outline-warning:not(:disabled):not(.disabled).active:focus, .btn-outline-warning:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(255, 237, 74, .5) +} + +.btn-outline-danger { + color: #e3342f; + border-color: #e3342f; + background-color: transparent; + background-image: none +} + +.btn-outline-danger:hover { + color: #fff; + border-color: #e3342f; + background-color: #e3342f +} + +.btn-outline-danger.focus, .btn-outline-danger:focus { + box-shadow: 0 0 0 .2rem rgba(227, 52, 47, .5) +} + +.btn-outline-danger.disabled, .btn-outline-danger:disabled { + color: #e3342f; + background-color: transparent +} + +.btn-outline-danger:not(:disabled):not(.disabled).active, .btn-outline-danger:not(:disabled):not(.disabled):active, .show>.btn-outline-danger.dropdown-toggle { + color: #fff; + border-color: #e3342f; + background-color: #e3342f +} + +.btn-outline-danger:not(:disabled):not(.disabled).active:focus, .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(227, 52, 47, .5) +} + +.btn-outline-light { + color: #f8f9fa; + border-color: #f8f9fa; + background-color: transparent; + background-image: none +} + +.btn-outline-light:hover { + color: #212529; + border-color: #f8f9fa; + background-color: #f8f9fa +} + +.btn-outline-light.focus, .btn-outline-light:focus { + box-shadow: 0 0 0 .2rem rgba(248, 249, 250, .5) +} + +.btn-outline-light.disabled, .btn-outline-light:disabled { + color: #f8f9fa; + background-color: transparent +} + +.btn-outline-light:not(:disabled):not(.disabled).active, .btn-outline-light:not(:disabled):not(.disabled):active, .show>.btn-outline-light.dropdown-toggle { + color: #212529; + border-color: #f8f9fa; + background-color: #f8f9fa +} + +.btn-outline-light:not(:disabled):not(.disabled).active:focus, .btn-outline-light:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-light.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(248, 249, 250, .5) +} + +.btn-outline-dark { + color: #343a40; + border-color: #343a40; + background-color: transparent; + background-image: none +} + +.btn-outline-dark:hover { + color: #fff; + border-color: #343a40; + background-color: #343a40 +} + +.btn-outline-dark.focus, .btn-outline-dark:focus { + box-shadow: 0 0 0 .2rem rgba(52, 58, 64, .5) +} + +.btn-outline-dark.disabled, .btn-outline-dark:disabled { + color: #343a40; + background-color: transparent +} + +.btn-outline-dark:not(:disabled):not(.disabled).active, .btn-outline-dark:not(:disabled):not(.disabled):active, .show>.btn-outline-dark.dropdown-toggle { + color: #fff; + border-color: #343a40; + background-color: #343a40 +} + +.btn-outline-dark:not(:disabled):not(.disabled).active:focus, .btn-outline-dark:not(:disabled):not(.disabled):active:focus, .show>.btn-outline-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 .2rem rgba(52, 58, 64, .5) +} + +.btn-link { + font-weight: 400; + color: #3490dc; + background-color: transparent +} + +.btn-link:hover { + color: #1d68a7; + background-color: transparent +} + +.btn-link.focus, .btn-link:focus, .btn-link:hover { + text-decoration: underline; + border-color: transparent +} + +.btn-link.focus, .btn-link:focus { + box-shadow: none +} + +.btn-link.disabled, .btn-link:disabled { + pointer-events: none; + color: #6c757d +} + +.btn-group-lg>.btn, .btn-lg { + font-size: 1.125rem; + line-height: 1.5; + padding: .5rem 1rem; + border-radius: .3rem +} + +.btn-group-sm>.btn, .btn-sm { + font-size: .7875rem; + line-height: 1.5; + padding: .25rem .5rem; + border-radius: .2rem +} + +.btn-block { + display: block; + width: 100% +} + +.btn-block+.btn-block { + margin-top: .5rem +} + +input[type=button].btn-block, input[type=reset].btn-block, input[type=submit].btn-block { + width: 100% +} + +.fade { + transition: opacity .15s linear +} + +@media screen and (prefers-reduced-motion:reduce) { + .fade { + transition: none + } +} + +.fade:not(.show) { + opacity: 0 +} + +.collapse:not(.show) { + display: none +} + +.collapsing { + position: relative; + overflow: hidden; + height: 0; + transition: height .35s ease +} + +@media screen and (prefers-reduced-motion:reduce) { + .collapsing { + transition: none + } +} + +.dropdown, .dropleft, .dropright, .dropup { + position: relative +} + +.dropdown-toggle:after { + display: inline-block; + width: 0; + height: 0; + margin-left: .255em; + content: ""; + vertical-align: .255em; + border-top: .3em solid; + border-right: .3em solid transparent; + border-bottom: 0; + border-left: .3em solid transparent +} + +.dropdown-toggle:empty:after { + margin-left: 0 +} + +.dropdown-menu { + font-size: .9rem; + position: absolute; + z-index: 1000; + top: 100%; + left: 0; + display: none; + float: left; + min-width: 10rem; + margin: .125rem 0 0; + padding: .5rem 0; + list-style: none; + text-align: left; + color: #212529; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: .25rem; + background-color: #fff; + background-clip: padding-box +} + +.dropdown-menu-right { + right: 0; + left: auto +} + +.dropup .dropdown-menu { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: .125rem +} + +.dropup .dropdown-toggle:after { + display: inline-block; + width: 0; + height: 0; + margin-left: .255em; + content: ""; + vertical-align: .255em; + border-top: 0; + border-right: .3em solid transparent; + border-bottom: .3em solid; + border-left: .3em solid transparent +} + +.dropup .dropdown-toggle:empty:after { + margin-left: 0 +} + +.dropright .dropdown-menu { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: .125rem +} + +.dropright .dropdown-toggle:after { + display: inline-block; + width: 0; + height: 0; + margin-left: .255em; + content: ""; + vertical-align: .255em; + border-top: .3em solid transparent; + border-right: 0; + border-bottom: .3em solid transparent; + border-left: .3em solid +} + +.dropright .dropdown-toggle:empty:after { + margin-left: 0 +} + +.dropright .dropdown-toggle:after { + vertical-align: 0 +} + +.dropleft .dropdown-menu { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: .125rem +} + +.dropleft .dropdown-toggle:after { + display: inline-block; + display: none; + width: 0; + height: 0; + margin-left: .255em; + content: ""; + vertical-align: .255em +} + +.dropleft .dropdown-toggle:before { + display: inline-block; + width: 0; + height: 0; + margin-right: .255em; + content: ""; + vertical-align: .255em; + border-top: .3em solid transparent; + border-right: .3em solid; + border-bottom: .3em solid transparent +} + +.dropleft .dropdown-toggle:empty:after { + margin-left: 0 +} + +.dropleft .dropdown-toggle:before { + vertical-align: 0 +} + +.dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=top] { + right: auto; + bottom: auto +} + +.dropdown-divider { + overflow: hidden; + height: 0; + margin: .5rem 0; + border-top: 1px solid #e9ecef +} + +.dropdown-item { + font-weight: 400; + display: block; + clear: both; + width: 100%; + padding: .25rem 1.5rem; + text-align: inherit; + white-space: nowrap; + color: #212529; + border: 0; + background-color: transparent +} + +.dropdown-item:focus, .dropdown-item:hover { + text-decoration: none; + color: #16181b; + background-color: #f8f9fa +} + +.dropdown-item.active, .dropdown-item:active { + text-decoration: none; + color: #fff; + background-color: #3490dc +} + +.dropdown-item.disabled, .dropdown-item:disabled { + color: #6c757d; + background-color: transparent +} + +.dropdown-menu.show { + display: block +} + +.dropdown-header { + font-size: .7875rem; + display: block; + margin-bottom: 0; + padding: .5rem 1.5rem; + white-space: nowrap; + color: #6c757d +} + +.dropdown-item-text { + display: block; + padding: .25rem 1.5rem; + color: #212529 +} + +.btn-group, .btn-group-vertical { + position: relative; + display: inline-flex; + vertical-align: middle +} + +.btn-group-vertical>.btn, .btn-group>.btn { + position: relative; + flex: 0 1 auto +} + +.btn-group-vertical>.btn.active, .btn-group-vertical>.btn:active, .btn-group-vertical>.btn:focus, .btn-group-vertical>.btn:hover, .btn-group>.btn.active, .btn-group>.btn:active, .btn-group>.btn:focus, .btn-group>.btn:hover { + z-index: 1 +} + +.btn-group-vertical .btn+.btn, .btn-group-vertical .btn+.btn-group, .btn-group-vertical .btn-group+.btn, .btn-group-vertical .btn-group+.btn-group, .btn-group .btn+.btn, .btn-group .btn+.btn-group, .btn-group .btn-group+.btn, .btn-group .btn-group+.btn-group { + margin-left: -1px +} + +.btn-toolbar { + display: flex; + flex-wrap: wrap; + justify-content: flex-start +} + +.btn-toolbar .input-group { + width: auto +} + +.btn-group>.btn:first-child { + margin-left: 0 +} + +.btn-group>.btn-group:not(:last-child)>.btn, .btn-group>.btn:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0 +} + +.btn-group>.btn-group:not(:first-child)>.btn, .btn-group>.btn:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0 +} + +.dropdown-toggle-split { + padding-right: .5625rem; + padding-left: .5625rem +} + +.dropdown-toggle-split:after, .dropright .dropdown-toggle-split:after, .dropup .dropdown-toggle-split:after { + margin-left: 0 +} + +.dropleft .dropdown-toggle-split:before { + margin-right: 0 +} + +.btn-group-sm>.btn+.dropdown-toggle-split, .btn-sm+.dropdown-toggle-split { + padding-right: .375rem; + padding-left: .375rem +} + +.btn-group-lg>.btn+.dropdown-toggle-split, .btn-lg+.dropdown-toggle-split { + padding-right: .75rem; + padding-left: .75rem +} + +.btn-group-vertical { + flex-direction: column; + align-items: flex-start; + justify-content: center +} + +.btn-group-vertical .btn, .btn-group-vertical .btn-group { + width: 100% +} + +.btn-group-vertical>.btn+.btn, .btn-group-vertical>.btn+.btn-group, .btn-group-vertical>.btn-group+.btn, .btn-group-vertical>.btn-group+.btn-group { + margin-top: -1px; + margin-left: 0 +} + +.btn-group-vertical>.btn-group:not(:last-child)>.btn, .btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle) { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0 +} + +.btn-group-vertical>.btn-group:not(:first-child)>.btn, .btn-group-vertical>.btn:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0 +} + +.btn-group-toggle>.btn, .btn-group-toggle>.btn-group>.btn { + margin-bottom: 0 +} + +.btn-group-toggle>.btn-group>.btn input[type=checkbox], .btn-group-toggle>.btn-group>.btn input[type=radio], .btn-group-toggle>.btn input[type=checkbox], .btn-group-toggle>.btn input[type=radio] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none +} + +.input-group { + position: relative; + display: flex; + flex-wrap: wrap; + width: 100%; + align-items: stretch +} + +.input-group>.custom-file, .input-group>.custom-select, .input-group>.form-control { + position: relative; + width: 1%; + margin-bottom: 0; + flex: 1 1 auto +} + +.input-group>.custom-file+.custom-file, .input-group>.custom-file+.custom-select, .input-group>.custom-file+.form-control, .input-group>.custom-select+.custom-file, .input-group>.custom-select+.custom-select, .input-group>.custom-select+.form-control, .input-group>.form-control+.custom-file, .input-group>.form-control+.custom-select, .input-group>.form-control+.form-control { + margin-left: -1px +} + +.input-group>.custom-file .custom-file-input:focus~.custom-file-label, .input-group>.custom-select:focus, .input-group>.form-control:focus { + z-index: 3 +} + +.input-group>.custom-file .custom-file-input:focus { + z-index: 4 +} + +.input-group>.custom-select:not(:last-child), .input-group>.form-control:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0 +} + +.input-group>.custom-select:not(:first-child), .input-group>.form-control:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0 +} + +.input-group>.custom-file { + display: flex; + align-items: center +} + +.input-group>.custom-file:not(:last-child) .custom-file-label, .input-group>.custom-file:not(:last-child) .custom-file-label:after { + border-top-right-radius: 0; + border-bottom-right-radius: 0 +} + +.input-group>.custom-file:not(:first-child) .custom-file-label { + border-top-left-radius: 0; + border-bottom-left-radius: 0 +} + +.input-group-append, .input-group-prepend { + display: flex +} + +.input-group-append .btn, .input-group-prepend .btn { + position: relative; + z-index: 2 +} + +.input-group-append .btn+.btn, .input-group-append .btn+.input-group-text, .input-group-append .input-group-text+.btn, .input-group-append .input-group-text+.input-group-text, .input-group-prepend .btn+.btn, .input-group-prepend .btn+.input-group-text, .input-group-prepend .input-group-text+.btn, .input-group-prepend .input-group-text+.input-group-text { + margin-left: -1px +} + +.input-group-prepend { + margin-right: -1px +} + +.input-group-append { + margin-left: -1px +} + +.input-group-text { + font-size: .9rem; + font-weight: 400; + line-height: 1.6; + display: flex; + margin-bottom: 0; + padding: .375rem .75rem; + text-align: center; + white-space: nowrap; + color: #495057; + border: 1px solid #ced4da; + border-radius: .25rem; + background-color: #e9ecef; + align-items: center +} + +.input-group-text input[type=checkbox], .input-group-text input[type=radio] { + margin-top: 0 +} + +.input-group-lg>.form-control, .input-group-lg>.input-group-append>.btn, .input-group-lg>.input-group-append>.input-group-text, .input-group-lg>.input-group-prepend>.btn, .input-group-lg>.input-group-prepend>.input-group-text { + font-size: 1.125rem; + line-height: 1.5; + height: calc(2.6875rem + 2px); + padding: .5rem 1rem; + border-radius: .3rem +} + +.input-group-sm>.form-control, .input-group-sm>.input-group-append>.btn, .input-group-sm>.input-group-append>.input-group-text, .input-group-sm>.input-group-prepend>.btn, .input-group-sm>.input-group-prepend>.input-group-text { + font-size: .7875rem; + line-height: 1.5; + height: calc(1.68125rem + 2px); + padding: .25rem .5rem; + border-radius: .2rem +} + +.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle), .input-group>.input-group-append:last-child>.input-group-text:not(:last-child), .input-group>.input-group-append:not(:last-child)>.btn, .input-group>.input-group-append:not(:last-child)>.input-group-text, .input-group>.input-group-prepend>.btn, .input-group>.input-group-prepend>.input-group-text { + border-top-right-radius: 0; + border-bottom-right-radius: 0 +} + +.input-group>.input-group-append>.btn, .input-group>.input-group-append>.input-group-text, .input-group>.input-group-prepend:first-child>.btn:not(:first-child), .input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child), .input-group>.input-group-prepend:not(:first-child)>.btn, .input-group>.input-group-prepend:not(:first-child)>.input-group-text { + border-top-left-radius: 0; + border-bottom-left-radius: 0 +} + +.custom-control { + position: relative; + display: block; + min-height: 1.44rem; + padding-left: 1.5rem +} + +.custom-control-inline { + display: inline-flex; + margin-right: 1rem +} + +.custom-control-input { + position: absolute; + z-index: -1; + opacity: 0 +} + +.custom-control-input:checked~.custom-control-label:before { + color: #fff; + background-color: #3490dc +} + +.custom-control-input:focus~.custom-control-label:before { + box-shadow: 0 0 0 1px #f8fafc, 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.custom-control-input:active~.custom-control-label:before { + color: #fff; + background-color: #cce3f6 +} + +.custom-control-input:disabled~.custom-control-label { + color: #6c757d +} + +.custom-control-input:disabled~.custom-control-label:before { + background-color: #e9ecef +} + +.custom-control-label { + position: relative; + margin-bottom: 0 +} + +.custom-control-label:before { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + pointer-events: none; + background-color: #dee2e6 +} + +.custom-control-label:after, .custom-control-label:before { + position: absolute; + top: .22rem; + left: -1.5rem; + display: block; + width: 1rem; + height: 1rem; + content: "" +} + +.custom-control-label:after { + background-repeat: no-repeat; + background-position: 50%; + background-size: 50% 50% +} + +.custom-checkbox .custom-control-label:before { + border-radius: .25rem +} + +.custom-checkbox .custom-control-input:checked~.custom-control-label:before { + background-color: #3490dc +} + +.custom-checkbox .custom-control-input:checked~.custom-control-label:after { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E") +} + +.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before { + background-color: #3490dc +} + +.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E") +} + +.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before { + background-color: rgba(52, 144, 220, .5) +} + +.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before { + background-color: rgba(52, 144, 220, .5) +} + +.custom-radio .custom-control-label:before { + border-radius: 50% +} + +.custom-radio .custom-control-input:checked~.custom-control-label:before { + background-color: #3490dc +} + +.custom-radio .custom-control-input:checked~.custom-control-label:after { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E") +} + +.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before { + background-color: rgba(52, 144, 220, .5) +} + +.custom-select { + line-height: 1.6; + display: inline-block; + width: 100%; + height: calc(2.19rem + 2px); + padding: .375rem 1.75rem .375rem .75rem; + vertical-align: middle; + color: #495057; + border: 1px solid #ced4da; + border-radius: .25rem; + background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center; + background-size: 8px 10px; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none +} + +.custom-select:focus { + border-color: #a1cbef; + outline: 0; + box-shadow: 0 0 0 .2rem rgba(161, 203, 239, .5) +} + +.custom-select:focus::-ms-value { + color: #495057; + background-color: #fff +} + +.custom-select[multiple], .custom-select[size]:not([size="1"]) { + height: auto; + padding-right: .75rem; + background-image: none +} + +.custom-select:disabled { + color: #6c757d; + background-color: #e9ecef +} + +.custom-select::-ms-expand { + opacity: 0 +} + +.custom-select-sm { + font-size: 75%; + height: calc(1.68125rem + 2px) +} + +.custom-select-lg, .custom-select-sm { + padding-top: .375rem; + padding-bottom: .375rem +} + +.custom-select-lg { + font-size: 125%; + height: calc(2.6875rem + 2px) +} + +.custom-file { + display: inline-block; + margin-bottom: 0 +} + +.custom-file, .custom-file-input { + position: relative; + width: 100%; + height: calc(2.19rem + 2px) +} + +.custom-file-input { + z-index: 2; + margin: 0; + opacity: 0 +} + +.custom-file-input:focus~.custom-file-label { + border-color: #a1cbef; + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.custom-file-input:focus~.custom-file-label:after { + border-color: #a1cbef +} + +.custom-file-input:disabled~.custom-file-label { + background-color: #e9ecef +} + +.custom-file-input:lang(en)~.custom-file-label:after { + content: "Browse" +} + +.custom-file-label { + z-index: 1; + left: 0; + height: calc(2.19rem + 2px); + border: 1px solid #ced4da; + border-radius: .25rem; + background-color: #fff +} + +.custom-file-label, .custom-file-label:after { + line-height: 1.6; + position: absolute; + top: 0; + right: 0; + padding: .375rem .75rem; + color: #495057 +} + +.custom-file-label:after { + z-index: 3; + bottom: 0; + display: block; + height: 2.19rem; + content: "Browse"; + border-left: 1px solid #ced4da; + border-radius: 0 .25rem .25rem 0; + background-color: #e9ecef +} + +.custom-range { + width: 100%; + padding-left: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none +} + +.custom-range:focus { + outline: none +} + +.custom-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #f8fafc, 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.custom-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #f8fafc, 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.custom-range:focus::-ms-thumb { + box-shadow: 0 0 0 1px #f8fafc, 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.custom-range::-moz-focus-outer { + border: 0 +} + +.custom-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -.25rem; + transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; + border: 0; + border-radius: 1rem; + background-color: #3490dc; + -webkit-appearance: none; + appearance: none +} + +@media screen and (prefers-reduced-motion:reduce) { + .custom-range::-webkit-slider-thumb { + transition: none + } +} + +.custom-range::-webkit-slider-thumb:active { + background-color: #cce3f6 +} + +.custom-range::-webkit-slider-runnable-track { + width: 100%; + height: .5rem; + cursor: pointer; + color: transparent; + border-color: transparent; + border-radius: 1rem; + background-color: #dee2e6 +} + +.custom-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; + border: 0; + border-radius: 1rem; + background-color: #3490dc; + -moz-appearance: none; + appearance: none +} + +@media screen and (prefers-reduced-motion:reduce) { + .custom-range::-moz-range-thumb { + transition: none + } +} + +.custom-range::-moz-range-thumb:active { + background-color: #cce3f6 +} + +.custom-range::-moz-range-track { + width: 100%; + height: .5rem; + cursor: pointer; + color: transparent; + border-color: transparent; + border-radius: 1rem; + background-color: #dee2e6 +} + +.custom-range::-ms-thumb { + width: 1rem; + height: 1rem; + margin-top: 0; + margin-right: .2rem; + margin-left: .2rem; + transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; + border: 0; + border-radius: 1rem; + background-color: #3490dc; + appearance: none +} + +@media screen and (prefers-reduced-motion:reduce) { + .custom-range::-ms-thumb { + transition: none + } +} + +.custom-range::-ms-thumb:active { + background-color: #cce3f6 +} + +.custom-range::-ms-track { + width: 100%; + height: .5rem; + cursor: pointer; + color: transparent; + border-width: .5rem; + border-color: transparent; + background-color: transparent +} + +.custom-range::-ms-fill-lower, .custom-range::-ms-fill-upper { + border-radius: 1rem; + background-color: #dee2e6 +} + +.custom-range::-ms-fill-upper { + margin-right: 15px +} + +.custom-control-label:before, .custom-file-label, .custom-select { + transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out +} + +@media screen and (prefers-reduced-motion:reduce) { + .custom-control-label:before, .custom-file-label, .custom-select { + transition: none + } +} + +.nav { + display: flex; + flex-wrap: wrap; + margin-bottom: 0; + padding-left: 0; + list-style: none +} + +.nav-link { + display: block; + padding: .5rem 1rem +} + +.nav-link:focus, .nav-link:hover { + text-decoration: none +} + +.nav-link.disabled { + color: #6c757d +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6 +} + +.nav-tabs .nav-item { + margin-bottom: -1px +} + +.nav-tabs .nav-link { + border: 1px solid transparent; + border-top-left-radius: .25rem; + border-top-right-radius: .25rem +} + +.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover { + border-color: #e9ecef #e9ecef #dee2e6 +} + +.nav-tabs .nav-link.disabled { + color: #6c757d; + border-color: transparent; + background-color: transparent +} + +.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active { + color: #495057; + border-color: #dee2e6 #dee2e6 #f8fafc; + background-color: #f8fafc +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0 +} + +.nav-pills .nav-link { + border-radius: .25rem +} + +.nav-pills .nav-link.active, .nav-pills .show>.nav-link { + color: #fff; + background-color: #3490dc +} + +.nav-fill .nav-item { + text-align: center; + flex: 1 1 auto +} + +.nav-justified .nav-item { + text-align: center; + flex-basis: 0; + flex-grow: 1 +} + +.tab-content>.tab-pane { + display: none +} + +.tab-content>.active { + display: block +} + +.navbar { + position: relative; + padding: .5rem 1rem +} + +.navbar, .navbar>.container, .navbar>.container-fluid { + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between +} + +.navbar-brand { + font-size: 1.125rem; + line-height: inherit; + display: inline-block; + margin-right: 1rem; + padding-top: .32rem; + padding-bottom: .32rem; + white-space: nowrap +} + +.navbar-brand:focus, .navbar-brand:hover { + text-decoration: none +} + +.navbar-nav { + display: flex; + flex-direction: column; + margin-bottom: 0; + padding-left: 0; + list-style: none +} + +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0 +} + +.navbar-nav .dropdown-menu { + position: static; + float: none +} + +.navbar-text { + display: inline-block; + padding-top: .5rem; + padding-bottom: .5rem +} + +.navbar-collapse { + flex-basis: 100%; + flex-grow: 1; + align-items: center +} + +.navbar-toggler { + font-size: 1.125rem; + line-height: 1; + padding: .25rem .75rem; + border: none; + border-radius: .25rem; + background-color: transparent +} + +.navbar-toggler:focus, .navbar-toggler:hover { + text-decoration: none +} + +.navbar-toggler:not(:disabled):not(.disabled) { + cursor: pointer +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + content: ""; + vertical-align: middle; + background: no-repeat 50%; + background-size: 100% 100% +} + +@media (max-width:575.98px) { + .navbar-expand-sm>.container, .navbar-expand-sm>.container-fluid { + padding-right: 0; + padding-left: 0 + } +} + +@media (min-width:576px) { + .navbar-expand-sm { + flex-flow: row nowrap; + justify-content: flex-start + } + + .navbar-expand-sm .navbar-nav { + flex-direction: row + } + + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-sm>.container, .navbar-expand-sm>.container-fluid { + flex-wrap: nowrap + } + + .navbar-expand-sm .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-sm .navbar-toggler { + display: none + } +} + +@media (max-width:767.98px) { + .navbar-expand-md>.container, .navbar-expand-md>.container-fluid { + padding-right: 0; + padding-left: 0 + } +} + +@media (min-width:768px) { + .navbar-expand-md { + flex-flow: row nowrap; + justify-content: flex-start + } + + .navbar-expand-md .navbar-nav { + flex-direction: row + } + + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-md .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-md>.container, .navbar-expand-md>.container-fluid { + flex-wrap: nowrap + } + + .navbar-expand-md .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-md .navbar-toggler { + display: none + } +} + +@media (max-width:991.98px) { + .navbar-expand-lg>.container, .navbar-expand-lg>.container-fluid { + padding-right: 0; + padding-left: 0 + } +} + +@media (min-width:992px) { + .navbar-expand-lg { + flex-flow: row nowrap; + justify-content: flex-start + } + + .navbar-expand-lg .navbar-nav { + flex-direction: row + } + + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-lg>.container, .navbar-expand-lg>.container-fluid { + flex-wrap: nowrap + } + + .navbar-expand-lg .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-lg .navbar-toggler { + display: none + } +} + +@media (max-width:1199.98px) { + .navbar-expand-xl>.container, .navbar-expand-xl>.container-fluid { + padding-right: 0; + padding-left: 0 + } +} + +@media (min-width:1200px) { + .navbar-expand-xl { + flex-flow: row nowrap; + justify-content: flex-start + } + + .navbar-expand-xl .navbar-nav { + flex-direction: row + } + + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-xl>.container, .navbar-expand-xl>.container-fluid { + flex-wrap: nowrap + } + + .navbar-expand-xl .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-xl .navbar-toggler { + display: none + } +} + +.navbar-expand { + flex-flow: row nowrap; + justify-content: flex-start +} + +.navbar-expand>.container, .navbar-expand>.container-fluid { + padding-right: 0; + padding-left: 0 +} + +.navbar-expand .navbar-nav { + flex-direction: row +} + +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute +} + +.navbar-expand .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem +} + +.navbar-expand>.container, .navbar-expand>.container-fluid { + flex-wrap: nowrap +} + +.navbar-expand .navbar-collapse { + display: flex !important; + flex-basis: auto +} + +.navbar-expand .navbar-toggler { + display: none +} + +.navbar-light .navbar-brand, .navbar-light .navbar-brand:focus, .navbar-light .navbar-brand:hover { + color: rgba(0, 0, 0, .9) +} + +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, .5) +} + +.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover { + color: rgba(0, 0, 0, .7) +} + +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, .0) +} + +.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link { + color: rgba(0, 0, 0, .9) +} + +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, .5); + border-color: rgba(0, 0, 0, .0) +} + +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") +} + +.navbar-light .navbar-text { + color: rgba(0, 0, 0, .5) +} + +.navbar-light .navbar-text a, .navbar-light .navbar-text a:focus, .navbar-light .navbar-text a:hover { + color: rgba(0, 0, 0, .9) +} + +.navbar-dark .navbar-brand, .navbar-dark .navbar-brand:focus, .navbar-dark .navbar-brand:hover { + color: #fff +} + +.navbar-dark .navbar-nav .nav-link { + color: hsla(0, 0%, 100%, .9) +} + +.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover { + color: hsla(0, 0%, 100%, .75) +} + +.navbar-dark .navbar-nav .nav-link.disabled { + color: hsla(0, 0%, 100%, .0) +} + +.navbar-dark .navbar-nav .active>.nav-link, .navbar-dark .navbar-nav .nav-link.active, .navbar-dark .navbar-nav .nav-link.show, .navbar-dark .navbar-nav .show>.nav-link { + color: #fff +} + +.navbar-dark .navbar-toggler { + color: hsla(0, 0%, 100%, .0); +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='4' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") +} + +.navbar-dark .navbar-text { + color: hsla(0, 0%, 100%, .8) +} + +.navbar-dark .navbar-text a, .navbar-dark .navbar-text a:focus, .navbar-dark .navbar-text a:hover { + color: #fff +} + +.card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + border: 0px solid rgba(0, 0, 0, .125); + border-radius: .25rem; + background-color: #fff; + background-clip: border-box +} + +.card>hr { + margin-right: 0; + margin-left: 0 +} + +.card>.list-group:first-child .list-group-item:first-child { + border-top-left-radius: .25rem; + border-top-right-radius: .25rem +} + +.card>.list-group:last-child .list-group-item:last-child { + border-bottom-right-radius: .25rem; + border-bottom-left-radius: .25rem +} + +.card-body { + padding: 1.25rem; + flex: 1 1 auto +} + +.card-title { + margin-bottom: .75rem +} + +.card-subtitle { + margin-top: -.375rem +} + +.card-subtitle, .card-text:last-child { + margin-bottom: 0 +} + +.card-link:hover { + text-decoration: none +} + +.card-link+.card-link { + margin-left: 1.25rem +} + +.card-header { + margin-bottom: 0; + padding: .35rem 1.25rem; + border-bottom: 0px solid rgba(0, 0, 0, .125); + background-color: var(--secondary); + color: #fff; + font-weight: bold; + font-size: 1.25em; +} + +.card-header:first-child { + border-radius: calc(.25rem - 1px) calc(.25rem - 1px) 0 0 +} + +.card-header+.list-group .list-group-item:first-child { + border-top: 0 +} + +.card-footer { + padding: .75rem 1.25rem; + border-top: 1px solid rgba(0, 0, 0, .125); + background-color: rgba(0, 0, 0, .03) +} + +.card-footer:last-child { + border-radius: 0 0 calc(.25rem - 1px) calc(.25rem - 1px) +} + +.card-header-tabs { + margin-bottom: -.75rem; + border-bottom: 0 +} + +.card-header-pills, .card-header-tabs { + margin-right: -.625rem; + margin-left: -.625rem +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1.25rem +} + +.card-img { + width: 100%; + border-radius: calc(.25rem - 1px) +} + +.card-img-top { + width: 100%; + border-top-left-radius: calc(.25rem - 1px); + border-top-right-radius: calc(.25rem - 1px) +} + +.card-img-bottom { + width: 100%; + border-bottom-right-radius: calc(.25rem - 1px); + border-bottom-left-radius: calc(.25rem - 1px) +} + +.card-deck { + display: flex; + flex-direction: column +} + +.card-deck .card { + margin-bottom: 15px +} + +@media (min-width:576px) { + .card-deck { + margin-right: -15px; + margin-left: -15px; + flex-flow: row wrap + } + + .card-deck .card { + display: flex; + flex-direction: column; + margin-right: 15px; + margin-bottom: 0; + margin-left: 15px; + flex: 1 0 0% + } +} + +.card-group { + display: flex; + flex-direction: column +} + +.card-group>.card { + margin-bottom: 15px +} + +@media (min-width:576px) { + .card-group { + flex-flow: row wrap + } + + .card-group>.card { + margin-bottom: 0; + flex: 1 0 0% + } + + .card-group>.card+.card { + margin-left: 0; + border-left: 0 + } + + .card-group>.card:first-child { + border-top-right-radius: 0; + border-bottom-right-radius: 0 + } + + .card-group>.card:first-child .card-header, .card-group>.card:first-child .card-img-top { + border-top-right-radius: 0 + } + + .card-group>.card:first-child .card-footer, .card-group>.card:first-child .card-img-bottom { + border-bottom-right-radius: 0 + } + + .card-group>.card:last-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0 + } + + .card-group>.card:last-child .card-header, .card-group>.card:last-child .card-img-top { + border-top-left-radius: 0 + } + + .card-group>.card:last-child .card-footer, .card-group>.card:last-child .card-img-bottom { + border-bottom-left-radius: 0 + } + + .card-group>.card:only-child { + border-radius: .25rem + } + + .card-group>.card:only-child .card-header, .card-group>.card:only-child .card-img-top { + border-top-left-radius: .25rem; + border-top-right-radius: .25rem + } + + .card-group>.card:only-child .card-footer, .card-group>.card:only-child .card-img-bottom { + border-bottom-right-radius: .25rem; + border-bottom-left-radius: .25rem + } + + .card-group>.card:not(:first-child):not(:last-child):not(:only-child), .card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-footer, .card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-header, .card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom, .card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-top { + border-radius: 0 + } +} + +.card-columns .card { + margin-bottom: .75rem +} + +@media (min-width:576px) { + .card-columns { + -webkit-column-count: 3; + column-count: 3; + -webkit-column-gap: 1.25rem; + column-gap: 1.25rem; + orphans: 1; + widows: 1 + } + + .card-columns .card { + display: inline-block; + width: 100% + } +} + +.accordion .card:not(:first-of-type):not(:last-of-type) { + border-bottom: 0; + border-radius: 0 +} + +.accordion .card:not(:first-of-type) .card-header:first-child { + border-radius: 0 +} + +.accordion .card:first-of-type { + border-bottom: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0 +} + +.accordion .card:last-of-type { + border-top-left-radius: 0; + border-top-right-radius: 0 +} + +.breadcrumb { + display: flex; + flex-wrap: wrap; + margin-bottom: 1rem; + padding: .75rem 1rem; + list-style: none; + border-radius: .25rem; + background-color: #e9ecef +} + +.breadcrumb-item+.breadcrumb-item { + padding-left: .5rem +} + +.breadcrumb-item+.breadcrumb-item:before { + display: inline-block; + padding-right: .5rem; + content: "/"; + color: #6c757d +} + +.breadcrumb-item+.breadcrumb-item:hover:before { + text-decoration: underline; + text-decoration: none +} + +.breadcrumb-item.active { + color: #6c757d +} + +.pagination { + display: flex; + padding-left: 0; + list-style: none; + border-radius: .25rem +} + +.page-link { + line-height: 1.25; + position: relative; + display: block; + margin-left: -1px; + padding: .5rem .75rem; + color: #3490dc; + border: 1px solid #dee2e6; + background-color: #fff +} + +.page-link:hover { + z-index: 2; + text-decoration: none; + color: #1d68a7; + border-color: #dee2e6; + background-color: #e9ecef +} + +.page-link:focus { + z-index: 2; + outline: 0; + box-shadow: 0 0 0 .2rem rgba(52, 144, 220, .25) +} + +.page-link:not(:disabled):not(.disabled) { + cursor: pointer +} + +.page-item:first-child .page-link { + margin-left: 0; + border-top-left-radius: .25rem; + border-bottom-left-radius: .25rem +} + +.page-item:last-child .page-link { + border-top-right-radius: .25rem; + border-bottom-right-radius: .25rem +} + +.page-item.active .page-link { + z-index: 1; + color: #fff; + border-color: #3490dc; + background-color: #3490dc +} + +.page-item.disabled .page-link { + cursor: auto; + pointer-events: none; + color: #6c757d; + border-color: #dee2e6; + background-color: #fff +} + +.pagination-lg .page-link { + font-size: 1.125rem; + line-height: 1.5; + padding: .75rem 1.5rem +} + +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: .3rem; + border-bottom-left-radius: .3rem +} + +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: .3rem; + border-bottom-right-radius: .3rem +} + +.pagination-sm .page-link { + font-size: .7875rem; + line-height: 1.5; + padding: .25rem .5rem +} + +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: .2rem; + border-bottom-left-radius: .2rem +} + +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: .2rem; + border-bottom-right-radius: .2rem +} + +.badge { + font-size: 75%; + font-weight: 700; + line-height: 1; + display: inline-block; + padding: .25em .4em; + text-align: center; + vertical-align: baseline; + white-space: nowrap; + border-radius: .25rem +} + +.badge:empty { + display: none +} + +.btn .badge { + position: relative; + top: -1px +} + +.badge-pill { + padding-right: .6em; + padding-left: .6em; + border-radius: 10rem +} + +.badge-primary { + color: #fff; + background-color: #3490dc +} + +.badge-primary[href]:focus, .badge-primary[href]:hover { + text-decoration: none; + color: #fff; + background-color: #2176bd +} + +.badge-secondary { + color: #fff; + background-color: #6c757d +} + +.badge-secondary[href]:focus, .badge-secondary[href]:hover { + text-decoration: none; + color: #fff; + background-color: #545b62 +} + +.badge-success { + color: #fff; + background-color: #38c172 +} + +.badge-success[href]:focus, .badge-success[href]:hover { + text-decoration: none; + color: #fff; + background-color: #2d995b +} + +.badge-info { + color: #212529; + background-color: #6cb2eb +} + +.badge-info[href]:focus, .badge-info[href]:hover { + text-decoration: none; + color: #212529; + background-color: #3f9ae5 +} + +.badge-warning { + color: #212529; + background-color: #ffed4a +} + +.badge-warning[href]:focus, .badge-warning[href]:hover { + text-decoration: none; + color: #212529; + background-color: #ffe817 +} + +.badge-danger { + color: #fff; + background-color: #e3342f +} + +.badge-danger[href]:focus, .badge-danger[href]:hover { + text-decoration: none; + color: #fff; + background-color: #c51f1a +} + +.badge-light { + color: #212529; + background-color: #f8f9fa +} + +.badge-light[href]:focus, .badge-light[href]:hover { + text-decoration: none; + color: #212529; + background-color: #dae0e5 +} + +.badge-dark { + color: #fff; + background-color: #343a40 +} + +.badge-dark[href]:focus, .badge-dark[href]:hover { + text-decoration: none; + color: #fff; + background-color: #1d2124 +} + +.jumbotron { + margin-bottom: 2rem; + padding: 2rem 1rem; + border-radius: .3rem; + background-color: #e9ecef +} + +@media (min-width:576px) { + .jumbotron { + padding: 4rem 2rem + } +} + +.jumbotron-fluid { + padding-right: 0; + padding-left: 0; + border-radius: 0 +} + +.alert { + position: relative; + margin-bottom: 1rem; + padding: .75rem 1.25rem; + border: 1px solid transparent; + border-radius: .25rem +} + +.alert-heading { + color: inherit +} + +.alert-link { + font-weight: 700 +} + +.alert-dismissible { + padding-right: 3.85rem +} + +.alert-dismissible .close { + position: absolute; + top: 0; + right: 0; + padding: .75rem 1.25rem; + color: inherit +} + +.alert-primary { + color: #1b4b72; + border-color: #c6e0f5; + background-color: #d6e9f8 +} + +.alert-primary hr { + border-top-color: #b0d4f1 +} + +.alert-primary .alert-link { + color: #113049 +} + +.alert-secondary { + color: #383d41; + border-color: #d6d8db; + background-color: #e2e3e5 +} + +.alert-secondary hr { + border-top-color: #c8cbcf +} + +.alert-secondary .alert-link { + color: #202326 +} + +.alert-success { + color: #1d643b; + border-color: #c7eed8; + background-color: #d7f3e3 +} + +.alert-success hr { + border-top-color: #b3e8ca +} + +.alert-success .alert-link { + color: #123c24 +} + +.alert-info { + color: #385d7a; + border-color: #d6e9f9; + background-color: #e2f0fb +} + +.alert-info hr { + border-top-color: #c0ddf6 +} + +.alert-info .alert-link { + color: #284257 +} + +.alert-warning { + color: #857b26; + border-color: #fffacc; + background-color: #fffbdb +} + +.alert-warning hr { + border-top-color: #fff8b3 +} + +.alert-warning .alert-link { + color: #5d561b +} + +.alert-danger { + color: #761b18; + border-color: #f7c6c5; + background-color: #f9d6d5 +} + +.alert-danger hr { + border-top-color: #f4b0af +} + +.alert-danger .alert-link { + color: #4c110f +} + +.alert-light { + color: #818182; + border-color: #fdfdfe; + background-color: #fefefe +} + +.alert-light hr { + border-top-color: #ececf6 +} + +.alert-light .alert-link { + color: #686868 +} + +.alert-dark { + color: #1b1e21; + border-color: #c6c8ca; + background-color: #d6d8d9 +} + +.alert-dark hr { + border-top-color: #b9bbbe +} + +.alert-dark .alert-link { + color: #040505 +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position: 1rem 0 + } + + to { + background-position: 0 0 + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position: 1rem 0 + } + + to { + background-position: 0 0 + } +} + +.progress { + font-size: .675rem; + display: flex; + overflow: hidden; + height: 1rem; + border-radius: .25rem; + background-color: #e9ecef +} + +.progress-bar { + display: flex; + flex-direction: column; + transition: width .6s ease; + text-align: center; + white-space: nowrap; + color: #fff; + background-color: #3490dc; + justify-content: center +} + +@media screen and (prefers-reduced-motion:reduce) { + .progress-bar { + transition: none + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, hsla(0, 0%, 100%, .15) 25%, transparent 0, transparent 50%, hsla(0, 0%, 100%, .15) 0, hsla(0, 0%, 100%, .15) 75%, transparent 0, transparent); + background-size: 1rem 1rem +} + +.progress-bar-animated { + -webkit-animation: progress-bar-stripes 1s linear infinite; + animation: progress-bar-stripes 1s linear infinite +} + +.media { + display: flex; + align-items: flex-start +} + +.media-body { + flex: 1 +} + +.list-group { + display: flex; + flex-direction: column; + margin-bottom: 0; + padding-left: 0 +} + +.list-group-item-action { + width: 100%; + text-align: inherit; + color: #495057 +} + +.list-group-item-action:focus, .list-group-item-action:hover { + text-decoration: none; + color: #495057; + background-color: #f8f9fa +} + +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef +} + +.list-group-item { + position: relative; + display: block; + margin-bottom: -1px; + padding: .75rem 1.25rem; + border: 1px solid rgba(0, 0, 0, .125); + background-color: #fff +} + +.list-group-item:first-child { + border-top-left-radius: .25rem; + border-top-right-radius: .25rem +} + +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: .25rem; + border-bottom-left-radius: .25rem +} + +.list-group-item:focus, .list-group-item:hover { + z-index: 1; + text-decoration: none +} + +.list-group-item.disabled, .list-group-item:disabled { + color: #6c757d; + background-color: #fff +} + +.list-group-item.active { + z-index: 2; + color: #fff; + border-color: #3490dc; + background-color: #3490dc +} + +.list-group-flush .list-group-item { + border-right: 0; + border-left: 0; + border-radius: 0 +} + +.list-group-flush:first-child .list-group-item:first-child { + border-top: 0 +} + +.list-group-flush:last-child .list-group-item:last-child { + border-bottom: 0 +} + +.list-group-item-primary { + color: #1b4b72; + background-color: #c6e0f5 +} + +.list-group-item-primary.list-group-item-action:focus, .list-group-item-primary.list-group-item-action:hover { + color: #1b4b72; + background-color: #b0d4f1 +} + +.list-group-item-primary.list-group-item-action.active { + color: #fff; + border-color: #1b4b72; + background-color: #1b4b72 +} + +.list-group-item-secondary { + color: #383d41; + background-color: #d6d8db +} + +.list-group-item-secondary.list-group-item-action:focus, .list-group-item-secondary.list-group-item-action:hover { + color: #383d41; + background-color: #c8cbcf +} + +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + border-color: #383d41; + background-color: #383d41 +} + +.list-group-item-success { + color: #1d643b; + background-color: #c7eed8 +} + +.list-group-item-success.list-group-item-action:focus, .list-group-item-success.list-group-item-action:hover { + color: #1d643b; + background-color: #b3e8ca +} + +.list-group-item-success.list-group-item-action.active { + color: #fff; + border-color: #1d643b; + background-color: #1d643b +} + +.list-group-item-info { + color: #385d7a; + background-color: #d6e9f9 +} + +.list-group-item-info.list-group-item-action:focus, .list-group-item-info.list-group-item-action:hover { + color: #385d7a; + background-color: #c0ddf6 +} + +.list-group-item-info.list-group-item-action.active { + color: #fff; + border-color: #385d7a; + background-color: #385d7a +} + +.list-group-item-warning { + color: #857b26; + background-color: #fffacc +} + +.list-group-item-warning.list-group-item-action:focus, .list-group-item-warning.list-group-item-action:hover { + color: #857b26; + background-color: #fff8b3 +} + +.list-group-item-warning.list-group-item-action.active { + color: #fff; + border-color: #857b26; + background-color: #857b26 +} + +.list-group-item-danger { + color: #761b18; + background-color: #f7c6c5 +} + +.list-group-item-danger.list-group-item-action:focus, .list-group-item-danger.list-group-item-action:hover { + color: #761b18; + background-color: #f4b0af +} + +.list-group-item-danger.list-group-item-action.active { + color: #fff; + border-color: #761b18; + background-color: #761b18 +} + +.list-group-item-light { + color: #818182; + background-color: #fdfdfe +} + +.list-group-item-light.list-group-item-action:focus, .list-group-item-light.list-group-item-action:hover { + color: #818182; + background-color: #ececf6 +} + +.list-group-item-light.list-group-item-action.active { + color: #fff; + border-color: #818182; + background-color: #818182 +} + +.list-group-item-dark { + color: #1b1e21; + background-color: #c6c8ca +} + +.list-group-item-dark.list-group-item-action:focus, .list-group-item-dark.list-group-item-action:hover { + color: #1b1e21; + background-color: #b9bbbe +} + +.list-group-item-dark.list-group-item-action.active { + color: #fff; + border-color: #1b1e21; + background-color: #1b1e21 +} + +.close { + font-size: 1.35rem; + font-weight: 700; + line-height: 1; + float: right; + opacity: .5; + color: #000; + text-shadow: 0 1px 0 #fff +} + +.close:not(:disabled):not(.disabled) { + cursor: pointer +} + +.close:not(:disabled):not(.disabled):focus, .close:not(:disabled):not(.disabled):hover { + text-decoration: none; + opacity: .75; + color: #000 +} + +button.close { + padding: 0; + border: 0; + background-color: transparent; + -webkit-appearance: none +} + +.modal-open { + overflow: hidden +} + +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto +} + +.modal { + position: fixed; + z-index: 1050; + top: 0; + right: 0; + bottom: 0; + left: 0; + display: none; + overflow: hidden; + outline: 0 +} + +.modal-dialog { + position: relative; + width: auto; + margin: .5rem; + pointer-events: none +} + +.modal.fade .modal-dialog { + transition: -webkit-transform .3s ease-out; + transition: transform .3s ease-out; + transition: transform .3s ease-out, -webkit-transform .3s ease-out; + -webkit-transform: translateY(-25%); + transform: translateY(-25%) +} + +@media screen and (prefers-reduced-motion:reduce) { + .modal.fade .modal-dialog { + transition: none + } +} + +.modal.show .modal-dialog { + -webkit-transform: translate(0); + transform: translate(0) +} + +.modal-dialog-centered { + display: flex; + min-height: calc(100% - 1rem); + align-items: center +} + +.modal-dialog-centered:before { + display: block; + height: calc(100vh - 1rem); + content: "" +} + +.modal-content { + position: relative; + display: flex; + flex-direction: column; + width: 100%; + pointer-events: auto; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: .3rem; + outline: 0; + background-color: #fff; + background-clip: padding-box +} + +.modal-backdrop { + position: fixed; + z-index: 1040; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-color: #000 +} + +.modal-backdrop.fade { + opacity: 0 +} + +.modal-backdrop.show { + opacity: .5 +} + +.modal-header { + display: flex; + padding: 1rem; + border-bottom: 1px solid #e9ecef; + border-top-left-radius: .3rem; + border-top-right-radius: .3rem; + align-items: flex-start; + justify-content: space-between +} + +.modal-header .close { + margin: -1rem -1rem -1rem auto; + padding: 1rem +} + +.modal-title { + line-height: 1.6; + margin-bottom: 0 +} + +.modal-body { + position: relative; + padding: 1rem; + flex: 1 1 auto +} + +.modal-footer { + display: flex; + padding: 1rem; + border-top: 1px solid #e9ecef; + align-items: center; + justify-content: flex-end +} + +.modal-footer>:not(:first-child) { + margin-left: .25rem +} + +.modal-footer>:not(:last-child) { + margin-right: .25rem +} + +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + overflow: scroll; + width: 50px; + height: 50px +} + +@media (min-width:576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto + } + + .modal-dialog-centered { + min-height: calc(100% - 3.5rem) + } + + .modal-dialog-centered:before { + height: calc(100vh - 3.5rem) + } + + .modal-sm { + max-width: 300px + } +} + +@media (min-width:992px) { + .modal-lg { + max-width: 800px + } +} + +.tooltip { + font-family: Nunito, sans-serif; + font-size: .7875rem; + font-weight: 400; + font-style: normal; + line-height: 1.6; + position: absolute; + z-index: 1070; + display: block; + margin: 0; + text-align: left; + text-align: start; + white-space: normal; + text-decoration: none; + letter-spacing: normal; + word-spacing: normal; + text-transform: none; + word-wrap: break-word; + word-break: normal; + opacity: 0; + text-shadow: none; + line-break: auto +} + +.tooltip.show { + opacity: .9 +} + +.tooltip .arrow { + position: absolute; + display: block; + width: .8rem; + height: .4rem +} + +.tooltip .arrow:before { + position: absolute; + content: ""; + border-style: solid; + border-color: transparent +} + +.bs-tooltip-auto[x-placement^=top], .bs-tooltip-top { + padding: .4rem 0 +} + +.bs-tooltip-auto[x-placement^=top] .arrow, .bs-tooltip-top .arrow { + bottom: 0 +} + +.bs-tooltip-auto[x-placement^=top] .arrow:before, .bs-tooltip-top .arrow:before { + top: 0; + border-width: .4rem .4rem 0; + border-top-color: #000 +} + +.bs-tooltip-auto[x-placement^=right], .bs-tooltip-right { + padding: 0 .4rem +} + +.bs-tooltip-auto[x-placement^=right] .arrow, .bs-tooltip-right .arrow { + left: 0; + width: .4rem; + height: .8rem +} + +.bs-tooltip-auto[x-placement^=right] .arrow:before, .bs-tooltip-right .arrow:before { + right: 0; + border-width: .4rem .4rem .4rem 0; + border-right-color: #000 +} + +.bs-tooltip-auto[x-placement^=bottom], .bs-tooltip-bottom { + padding: .4rem 0 +} + +.bs-tooltip-auto[x-placement^=bottom] .arrow, .bs-tooltip-bottom .arrow { + top: 0 +} + +.bs-tooltip-auto[x-placement^=bottom] .arrow:before, .bs-tooltip-bottom .arrow:before { + bottom: 0; + border-width: 0 .4rem .4rem; + border-bottom-color: #000 +} + +.bs-tooltip-auto[x-placement^=left], .bs-tooltip-left { + padding: 0 .4rem +} + +.bs-tooltip-auto[x-placement^=left] .arrow, .bs-tooltip-left .arrow { + right: 0; + width: .4rem; + height: .8rem +} + +.bs-tooltip-auto[x-placement^=left] .arrow:before, .bs-tooltip-left .arrow:before { + left: 0; + border-width: .4rem 0 .4rem .4rem; + border-left-color: #000 +} + +.tooltip-inner { + max-width: 200px; + padding: .25rem .5rem; + text-align: center; + color: #fff; + border-radius: .25rem; + background-color: #000 +} + +.popover { + font-family: Nunito, sans-serif; + font-size: .7875rem; + font-weight: 400; + font-style: normal; + line-height: 1.6; + z-index: 1060; + top: 0; + left: 0; + max-width: 276px; + text-align: left; + text-align: start; + white-space: normal; + text-decoration: none; + letter-spacing: normal; + word-spacing: normal; + text-transform: none; + word-wrap: break-word; + word-break: normal; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: .3rem; + background-color: #fff; + background-clip: padding-box; + text-shadow: none; + line-break: auto +} + +.popover, .popover .arrow { + position: absolute; + display: block +} + +.popover .arrow { + width: 1rem; + height: .5rem; + margin: 0 .3rem +} + +.popover .arrow:after, .popover .arrow:before { + position: absolute; + display: block; + content: ""; + border-style: solid; + border-color: transparent +} + +.bs-popover-auto[x-placement^=top], .bs-popover-top { + margin-bottom: .5rem +} + +.bs-popover-auto[x-placement^=top] .arrow, .bs-popover-top .arrow { + bottom: calc(-.5rem + -1px) +} + +.bs-popover-auto[x-placement^=top] .arrow:after, .bs-popover-auto[x-placement^=top] .arrow:before, .bs-popover-top .arrow:after, .bs-popover-top .arrow:before { + border-width: .5rem .5rem 0 +} + +.bs-popover-auto[x-placement^=top] .arrow:before, .bs-popover-top .arrow:before { + bottom: 0; + border-top-color: rgba(0, 0, 0, .25) +} + +.bs-popover-auto[x-placement^=top] .arrow:after, .bs-popover-top .arrow:after { + bottom: 1px; + border-top-color: #fff +} + +.bs-popover-auto[x-placement^=right], .bs-popover-right { + margin-left: .5rem +} + +.bs-popover-auto[x-placement^=right] .arrow, .bs-popover-right .arrow { + left: calc(-.5rem + -1px); + width: .5rem; + height: 1rem; + margin: .3rem 0 +} + +.bs-popover-auto[x-placement^=right] .arrow:after, .bs-popover-auto[x-placement^=right] .arrow:before, .bs-popover-right .arrow:after, .bs-popover-right .arrow:before { + border-width: .5rem .5rem .5rem 0 +} + +.bs-popover-auto[x-placement^=right] .arrow:before, .bs-popover-right .arrow:before { + left: 0; + border-right-color: rgba(0, 0, 0, .25) +} + +.bs-popover-auto[x-placement^=right] .arrow:after, .bs-popover-right .arrow:after { + left: 1px; + border-right-color: #fff +} + +.bs-popover-auto[x-placement^=bottom], .bs-popover-bottom { + margin-top: .5rem +} + +.bs-popover-auto[x-placement^=bottom] .arrow, .bs-popover-bottom .arrow { + top: calc(-.5rem + -1px) +} + +.bs-popover-auto[x-placement^=bottom] .arrow:after, .bs-popover-auto[x-placement^=bottom] .arrow:before, .bs-popover-bottom .arrow:after, .bs-popover-bottom .arrow:before { + border-width: 0 .5rem .5rem +} + +.bs-popover-auto[x-placement^=bottom] .arrow:before, .bs-popover-bottom .arrow:before { + top: 0; + border-bottom-color: rgba(0, 0, 0, .25) +} + +.bs-popover-auto[x-placement^=bottom] .arrow:after, .bs-popover-bottom .arrow:after { + top: 1px; + border-bottom-color: #fff +} + +.bs-popover-auto[x-placement^=bottom] .popover-header:before, .bs-popover-bottom .popover-header:before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -.5rem; + content: ""; + border-bottom: 1px solid #f7f7f7 +} + +.bs-popover-auto[x-placement^=left], .bs-popover-left { + margin-right: .5rem +} + +.bs-popover-auto[x-placement^=left] .arrow, .bs-popover-left .arrow { + right: calc(-.5rem + -1px); + width: .5rem; + height: 1rem; + margin: .3rem 0 +} + +.bs-popover-auto[x-placement^=left] .arrow:after, .bs-popover-auto[x-placement^=left] .arrow:before, .bs-popover-left .arrow:after, .bs-popover-left .arrow:before { + border-width: .5rem 0 .5rem .5rem +} + +.bs-popover-auto[x-placement^=left] .arrow:before, .bs-popover-left .arrow:before { + right: 0; + border-left-color: rgba(0, 0, 0, .25) +} + +.bs-popover-auto[x-placement^=left] .arrow:after, .bs-popover-left .arrow:after { + right: 1px; + border-left-color: #fff +} + +.popover-header { + font-size: .9rem; + margin-bottom: 0; + padding: .5rem .75rem; + color: inherit; + border-bottom: 1px solid #ebebeb; + border-top-left-radius: calc(.3rem - 1px); + border-top-right-radius: calc(.3rem - 1px); + background-color: #f7f7f7 +} + +.popover-header:empty { + display: none +} + +.popover-body { + padding: .5rem .75rem; + color: #212529 +} + +.carousel { + position: relative +} + +.carousel-inner { + position: relative; + overflow: hidden; + width: 100% +} + +.carousel-item { + position: relative; + display: none; + width: 100%; + align-items: center; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px +} + +.carousel-item-next, .carousel-item-prev, .carousel-item.active { + display: block; + transition: -webkit-transform .6s ease; + transition: transform .6s ease; + transition: transform .6s ease, -webkit-transform .6s ease +} + +@media screen and (prefers-reduced-motion:reduce) { + .carousel-item-next, .carousel-item-prev, .carousel-item.active { + transition: none + } +} + +.carousel-item-next, .carousel-item-prev { + position: absolute; + top: 0 +} + +.carousel-item-next.carousel-item-left, .carousel-item-prev.carousel-item-right { + -webkit-transform: translateX(0); + transform: translateX(0) +} + +@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) { + .carousel-item-next.carousel-item-left, .carousel-item-prev.carousel-item-right { + -webkit-transform: translateZ(0); + transform: translateZ(0) + } +} + +.active.carousel-item-right, .carousel-item-next { + -webkit-transform: translateX(100%); + transform: translateX(100%) +} + +@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) { + .active.carousel-item-right, .carousel-item-next { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0) + } +} + +.active.carousel-item-left, .carousel-item-prev { + -webkit-transform: translateX(-100%); + transform: translateX(-100%) +} + +@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) { + .active.carousel-item-left, .carousel-item-prev { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0) + } +} + +.carousel-fade .carousel-item { + transition-duration: .6s; + transition-property: opacity; + opacity: 0 +} + +.carousel-fade .carousel-item-next.carousel-item-left, .carousel-fade .carousel-item-prev.carousel-item-right, .carousel-fade .carousel-item.active { + opacity: 1 +} + +.carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-right { + opacity: 0 +} + +.carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-prev, .carousel-fade .carousel-item-next, .carousel-fade .carousel-item-prev, .carousel-fade .carousel-item.active { + -webkit-transform: translateX(0); + transform: translateX(0) +} + +@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) { + .carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-prev, .carousel-fade .carousel-item-next, .carousel-fade .carousel-item-prev, .carousel-fade .carousel-item.active { + -webkit-transform: translateZ(0); + transform: translateZ(0) + } +} + +.carousel-control-next, .carousel-control-prev { + position: absolute; + top: 0; + bottom: 0; + display: flex; + width: 15%; + text-align: center; + opacity: .5; + color: #fff; + align-items: center; + justify-content: center +} + +.carousel-control-next:focus, .carousel-control-next:hover, .carousel-control-prev:focus, .carousel-control-prev:hover { + text-decoration: none; + opacity: .9; + color: #fff; + outline: 0 +} + +.carousel-control-prev { + left: 0 +} + +.carousel-control-next { + right: 0 +} + +.carousel-control-next-icon, .carousel-control-prev-icon { + display: inline-block; + width: 20px; + height: 20px; + background: transparent no-repeat 50%; + background-size: 100% 100% +} + +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E") +} + +.carousel-control-next-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E") +} + +.carousel-indicators { + position: absolute; + z-index: 15; + right: 0; + bottom: 10px; + left: 0; + display: flex; + margin-right: 15%; + margin-left: 15%; + padding-left: 0; + list-style: none; + justify-content: center +} + +.carousel-indicators li { + position: relative; + width: 30px; + height: 3px; + margin-right: 3px; + margin-left: 3px; + cursor: pointer; + text-indent: -999px; + background-color: hsla(0, 0%, 100%, .5); + flex: 0 1 auto +} + +.carousel-indicators li:before { + top: -10px +} + +.carousel-indicators li:after, .carousel-indicators li:before { + position: absolute; + left: 0; + display: inline-block; + width: 100%; + height: 10px; + content: "" +} + +.carousel-indicators li:after { + bottom: -10px +} + +.carousel-indicators .active { + background-color: #fff +} + +.carousel-caption { + position: absolute; + z-index: 10; + right: 15%; + bottom: 20px; + left: 15%; + padding-top: 20px; + padding-bottom: 20px; + text-align: center; + color: #fff +} + +.align-baseline { + vertical-align: baseline !important +} + +.align-top { + vertical-align: top !important +} + +.align-middle { + vertical-align: middle !important +} + +.align-bottom { + vertical-align: bottom !important +} + +.align-text-bottom { + vertical-align: text-bottom !important +} + +.align-text-top { + vertical-align: text-top !important +} + +.bg-primary { + background-color: var(--primary) !important +} + +a.bg-primary:focus, a.bg-primary:hover, button.bg-primary:focus, button.bg-primary:hover { + background-color: #2176bd !important +} + +.bg-secondary { + background-color: #6c757d !important +} + +a.bg-secondary:focus, a.bg-secondary:hover, button.bg-secondary:focus, button.bg-secondary:hover { + background-color: #545b62 !important +} + +.bg-success { + background-color: #38c172 !important +} + +a.bg-success:focus, a.bg-success:hover, button.bg-success:focus, button.bg-success:hover { + background-color: #2d995b !important +} + +.bg-info { + background-color: #6cb2eb !important +} + +a.bg-info:focus, a.bg-info:hover, button.bg-info:focus, button.bg-info:hover { + background-color: #3f9ae5 !important +} + +.bg-warning { + background-color: #ffed4a !important +} + +a.bg-warning:focus, a.bg-warning:hover, button.bg-warning:focus, button.bg-warning:hover { + background-color: #ffe817 !important +} + +.bg-danger { + background-color: #e3342f !important +} + +a.bg-danger:focus, a.bg-danger:hover, button.bg-danger:focus, button.bg-danger:hover { + background-color: #c51f1a !important +} + +.bg-light { + background-color: #f8f9fa !important +} + +a.bg-light:focus, a.bg-light:hover, button.bg-light:focus, button.bg-light:hover { + background-color: #dae0e5 !important +} + +.bg-dark { + background-color: #343a40 !important +} + +a.bg-dark:focus, a.bg-dark:hover, button.bg-dark:focus, button.bg-dark:hover { + background-color: #1d2124 !important +} + +.bg-white { + background-color: #fff !important +} + +.bg-transparent { + background-color: transparent !important +} + +.border { + border: 1px solid #dee2e6 !important +} + +.border-top { + border-top: 1px solid #dee2e6 !important +} + +.border-right { + border-right: 1px solid #dee2e6 !important +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important +} + +.border-left { + border-left: 1px solid #dee2e6 !important +} + +.border-0 { + border: 0 !important +} + +.border-top-0 { + border-top: 0 !important +} + +.border-right-0 { + border-right: 0 !important +} + +.border-bottom-0 { + border-bottom: 0 !important +} + +.border-left-0 { + border-left: 0 !important +} + +.border-primary { + border-color: #3490dc !important +} + +.border-secondary { + border-color: #6c757d !important +} + +.border-success { + border-color: #38c172 !important +} + +.border-info { + border-color: #6cb2eb !important +} + +.border-warning { + border-color: #ffed4a !important +} + +.border-danger { + border-color: #e3342f !important +} + +.border-light { + border-color: #f8f9fa !important +} + +.border-dark { + border-color: #343a40 !important +} + +.border-white { + border-color: #fff !important +} + +.rounded { + border-radius: .25rem !important +} + +.rounded-top { + border-top-left-radius: .25rem !important +} + +.rounded-right, .rounded-top { + border-top-right-radius: .25rem !important +} + +.rounded-bottom, .rounded-right { + border-bottom-right-radius: .25rem !important +} + +.rounded-bottom, .rounded-left { + border-bottom-left-radius: .25rem !important +} + +.rounded-left { + border-top-left-radius: .25rem !important +} + +.rounded-circle { + border-radius: 50% !important +} + +.rounded-0 { + border-radius: 0 !important +} + +.clearfix:after { + display: block; + clear: both; + content: "" +} + +.d-none { + display: none !important +} + +.d-inline { + display: inline !important +} + +.d-inline-block { + display: inline-block !important +} + +.d-block { + display: block !important +} + +.d-table { + display: table !important +} + +.d-table-row { + display: table-row !important +} + +.d-table-cell { + display: table-cell !important +} + +.d-flex { + display: flex !important +} + +.d-inline-flex { + display: inline-flex !important +} + +@media (min-width:576px) { + .d-sm-none { + display: none !important + } + + .d-sm-inline { + display: inline !important + } + + .d-sm-inline-block { + display: inline-block !important + } + + .d-sm-block { + display: block !important + } + + .d-sm-table { + display: table !important + } + + .d-sm-table-row { + display: table-row !important + } + + .d-sm-table-cell { + display: table-cell !important + } + + .d-sm-flex { + display: flex !important + } + + .d-sm-inline-flex { + display: inline-flex !important + } +} + +@media (min-width:768px) { + .d-md-none { + display: none !important + } + + .d-md-inline { + display: inline !important + } + + .d-md-inline-block { + display: inline-block !important + } + + .d-md-block { + display: block !important + } + + .d-md-table { + display: table !important + } + + .d-md-table-row { + display: table-row !important + } + + .d-md-table-cell { + display: table-cell !important + } + + .d-md-flex { + display: flex !important + } + + .d-md-inline-flex { + display: inline-flex !important + } +} + +@media (min-width:992px) { + .d-lg-none { + display: none !important + } + + .d-lg-inline { + display: inline !important + } + + .d-lg-inline-block { + display: inline-block !important + } + + .d-lg-block { + display: block !important + } + + .d-lg-table { + display: table !important + } + + .d-lg-table-row { + display: table-row !important + } + + .d-lg-table-cell { + display: table-cell !important + } + + .d-lg-flex { + display: flex !important + } + + .d-lg-inline-flex { + display: inline-flex !important + } +} + +@media (min-width:1200px) { + .d-xl-none { + display: none !important + } + + .d-xl-inline { + display: inline !important + } + + .d-xl-inline-block { + display: inline-block !important + } + + .d-xl-block { + display: block !important + } + + .d-xl-table { + display: table !important + } + + .d-xl-table-row { + display: table-row !important + } + + .d-xl-table-cell { + display: table-cell !important + } + + .d-xl-flex { + display: flex !important + } + + .d-xl-inline-flex { + display: inline-flex !important + } +} + +@media print { + .d-print-none { + display: none !important + } + + .d-print-inline { + display: inline !important + } + + .d-print-inline-block { + display: inline-block !important + } + + .d-print-block { + display: block !important + } + + .d-print-table { + display: table !important + } + + .d-print-table-row { + display: table-row !important + } + + .d-print-table-cell { + display: table-cell !important + } + + .d-print-flex { + display: flex !important + } + + .d-print-inline-flex { + display: inline-flex !important + } +} + +.embed-responsive { + position: relative; + display: block; + overflow: hidden; + width: 100%; + padding: 0 +} + +.embed-responsive:before { + display: block; + content: "" +} + +.embed-responsive .embed-responsive-item, .embed-responsive embed, .embed-responsive iframe, .embed-responsive object, .embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0 +} + +.embed-responsive-21by9:before { + padding-top: 42.8571428571% +} + +.embed-responsive-16by9:before { + padding-top: 56.25% +} + +.embed-responsive-4by3:before { + padding-top: 75% +} + +.embed-responsive-1by1:before { + padding-top: 100% +} + +.flex-row { + flex-direction: row !important +} + +.flex-column { + flex-direction: column !important +} + +.flex-row-reverse { + flex-direction: row-reverse !important +} + +.flex-column-reverse { + flex-direction: column-reverse !important +} + +.flex-wrap { + flex-wrap: wrap !important +} + +.flex-nowrap { + flex-wrap: nowrap !important +} + +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important +} + +.flex-fill { + flex: 1 1 auto !important +} + +.flex-grow-0 { + flex-grow: 0 !important +} + +.flex-grow-1 { + flex-grow: 1 !important +} + +.flex-shrink-0 { + flex-shrink: 0 !important +} + +.flex-shrink-1 { + flex-shrink: 1 !important +} + +.justify-content-start { + justify-content: flex-start !important +} + +.justify-content-end { + justify-content: flex-end !important +} + +.justify-content-center { + justify-content: center !important +} + +.justify-content-between { + justify-content: space-between !important +} + +.justify-content-around { + justify-content: space-around !important +} + +.align-items-start { + align-items: flex-start !important +} + +.align-items-end { + align-items: flex-end !important +} + +.align-items-center { + align-items: center !important +} + +.align-items-baseline { + align-items: baseline !important +} + +.align-items-stretch { + align-items: stretch !important +} + +.align-content-start { + align-content: flex-start !important +} + +.align-content-end { + align-content: flex-end !important +} + +.align-content-center { + align-content: center !important +} + +.align-content-between { + align-content: space-between !important +} + +.align-content-around { + align-content: space-around !important +} + +.align-content-stretch { + align-content: stretch !important +} + +.align-self-auto { + align-self: auto !important +} + +.align-self-start { + align-self: flex-start !important +} + +.align-self-end { + align-self: flex-end !important +} + +.align-self-center { + align-self: center !important +} + +.align-self-baseline { + align-self: baseline !important +} + +.align-self-stretch { + align-self: stretch !important +} + +@media (min-width:576px) { + .flex-sm-row { + flex-direction: row !important + } + + .flex-sm-column { + flex-direction: column !important + } + + .flex-sm-row-reverse { + flex-direction: row-reverse !important + } + + .flex-sm-column-reverse { + flex-direction: column-reverse !important + } + + .flex-sm-wrap { + flex-wrap: wrap !important + } + + .flex-sm-nowrap { + flex-wrap: nowrap !important + } + + .flex-sm-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .flex-sm-fill { + flex: 1 1 auto !important + } + + .flex-sm-grow-0 { + flex-grow: 0 !important + } + + .flex-sm-grow-1 { + flex-grow: 1 !important + } + + .flex-sm-shrink-0 { + flex-shrink: 0 !important + } + + .flex-sm-shrink-1 { + flex-shrink: 1 !important + } + + .justify-content-sm-start { + justify-content: flex-start !important + } + + .justify-content-sm-end { + justify-content: flex-end !important + } + + .justify-content-sm-center { + justify-content: center !important + } + + .justify-content-sm-between { + justify-content: space-between !important + } + + .justify-content-sm-around { + justify-content: space-around !important + } + + .align-items-sm-start { + align-items: flex-start !important + } + + .align-items-sm-end { + align-items: flex-end !important + } + + .align-items-sm-center { + align-items: center !important + } + + .align-items-sm-baseline { + align-items: baseline !important + } + + .align-items-sm-stretch { + align-items: stretch !important + } + + .align-content-sm-start { + align-content: flex-start !important + } + + .align-content-sm-end { + align-content: flex-end !important + } + + .align-content-sm-center { + align-content: center !important + } + + .align-content-sm-between { + align-content: space-between !important + } + + .align-content-sm-around { + align-content: space-around !important + } + + .align-content-sm-stretch { + align-content: stretch !important + } + + .align-self-sm-auto { + align-self: auto !important + } + + .align-self-sm-start { + align-self: flex-start !important + } + + .align-self-sm-end { + align-self: flex-end !important + } + + .align-self-sm-center { + align-self: center !important + } + + .align-self-sm-baseline { + align-self: baseline !important + } + + .align-self-sm-stretch { + align-self: stretch !important + } +} + +@media (min-width:768px) { + .flex-md-row { + flex-direction: row !important + } + + .flex-md-column { + flex-direction: column !important + } + + .flex-md-row-reverse { + flex-direction: row-reverse !important + } + + .flex-md-column-reverse { + flex-direction: column-reverse !important + } + + .flex-md-wrap { + flex-wrap: wrap !important + } + + .flex-md-nowrap { + flex-wrap: nowrap !important + } + + .flex-md-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .flex-md-fill { + flex: 1 1 auto !important + } + + .flex-md-grow-0 { + flex-grow: 0 !important + } + + .flex-md-grow-1 { + flex-grow: 1 !important + } + + .flex-md-shrink-0 { + flex-shrink: 0 !important + } + + .flex-md-shrink-1 { + flex-shrink: 1 !important + } + + .justify-content-md-start { + justify-content: flex-start !important + } + + .justify-content-md-end { + justify-content: flex-end !important + } + + .justify-content-md-center { + justify-content: center !important + } + + .justify-content-md-between { + justify-content: space-between !important + } + + .justify-content-md-around { + justify-content: space-around !important + } + + .align-items-md-start { + align-items: flex-start !important + } + + .align-items-md-end { + align-items: flex-end !important + } + + .align-items-md-center { + align-items: center !important + } + + .align-items-md-baseline { + align-items: baseline !important + } + + .align-items-md-stretch { + align-items: stretch !important + } + + .align-content-md-start { + align-content: flex-start !important + } + + .align-content-md-end { + align-content: flex-end !important + } + + .align-content-md-center { + align-content: center !important + } + + .align-content-md-between { + align-content: space-between !important + } + + .align-content-md-around { + align-content: space-around !important + } + + .align-content-md-stretch { + align-content: stretch !important + } + + .align-self-md-auto { + align-self: auto !important + } + + .align-self-md-start { + align-self: flex-start !important + } + + .align-self-md-end { + align-self: flex-end !important + } + + .align-self-md-center { + align-self: center !important + } + + .align-self-md-baseline { + align-self: baseline !important + } + + .align-self-md-stretch { + align-self: stretch !important + } +} + +@media (min-width:992px) { + .flex-lg-row { + flex-direction: row !important + } + + .flex-lg-column { + flex-direction: column !important + } + + .flex-lg-row-reverse { + flex-direction: row-reverse !important + } + + .flex-lg-column-reverse { + flex-direction: column-reverse !important + } + + .flex-lg-wrap { + flex-wrap: wrap !important + } + + .flex-lg-nowrap { + flex-wrap: nowrap !important + } + + .flex-lg-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .flex-lg-fill { + flex: 1 1 auto !important + } + + .flex-lg-grow-0 { + flex-grow: 0 !important + } + + .flex-lg-grow-1 { + flex-grow: 1 !important + } + + .flex-lg-shrink-0 { + flex-shrink: 0 !important + } + + .flex-lg-shrink-1 { + flex-shrink: 1 !important + } + + .justify-content-lg-start { + justify-content: flex-start !important + } + + .justify-content-lg-end { + justify-content: flex-end !important + } + + .justify-content-lg-center { + justify-content: center !important + } + + .justify-content-lg-between { + justify-content: space-between !important + } + + .justify-content-lg-around { + justify-content: space-around !important + } + + .align-items-lg-start { + align-items: flex-start !important + } + + .align-items-lg-end { + align-items: flex-end !important + } + + .align-items-lg-center { + align-items: center !important + } + + .align-items-lg-baseline { + align-items: baseline !important + } + + .align-items-lg-stretch { + align-items: stretch !important + } + + .align-content-lg-start { + align-content: flex-start !important + } + + .align-content-lg-end { + align-content: flex-end !important + } + + .align-content-lg-center { + align-content: center !important + } + + .align-content-lg-between { + align-content: space-between !important + } + + .align-content-lg-around { + align-content: space-around !important + } + + .align-content-lg-stretch { + align-content: stretch !important + } + + .align-self-lg-auto { + align-self: auto !important + } + + .align-self-lg-start { + align-self: flex-start !important + } + + .align-self-lg-end { + align-self: flex-end !important + } + + .align-self-lg-center { + align-self: center !important + } + + .align-self-lg-baseline { + align-self: baseline !important + } + + .align-self-lg-stretch { + align-self: stretch !important + } +} + +@media (min-width:1200px) { + .flex-xl-row { + flex-direction: row !important + } + + .flex-xl-column { + flex-direction: column !important + } + + .flex-xl-row-reverse { + flex-direction: row-reverse !important + } + + .flex-xl-column-reverse { + flex-direction: column-reverse !important + } + + .flex-xl-wrap { + flex-wrap: wrap !important + } + + .flex-xl-nowrap { + flex-wrap: nowrap !important + } + + .flex-xl-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .flex-xl-fill { + flex: 1 1 auto !important + } + + .flex-xl-grow-0 { + flex-grow: 0 !important + } + + .flex-xl-grow-1 { + flex-grow: 1 !important + } + + .flex-xl-shrink-0 { + flex-shrink: 0 !important + } + + .flex-xl-shrink-1 { + flex-shrink: 1 !important + } + + .justify-content-xl-start { + justify-content: flex-start !important + } + + .justify-content-xl-end { + justify-content: flex-end !important + } + + .justify-content-xl-center { + justify-content: center !important + } + + .justify-content-xl-between { + justify-content: space-between !important + } + + .justify-content-xl-around { + justify-content: space-around !important + } + + .align-items-xl-start { + align-items: flex-start !important + } + + .align-items-xl-end { + align-items: flex-end !important + } + + .align-items-xl-center { + align-items: center !important + } + + .align-items-xl-baseline { + align-items: baseline !important + } + + .align-items-xl-stretch { + align-items: stretch !important + } + + .align-content-xl-start { + align-content: flex-start !important + } + + .align-content-xl-end { + align-content: flex-end !important + } + + .align-content-xl-center { + align-content: center !important + } + + .align-content-xl-between { + align-content: space-between !important + } + + .align-content-xl-around { + align-content: space-around !important + } + + .align-content-xl-stretch { + align-content: stretch !important + } + + .align-self-xl-auto { + align-self: auto !important + } + + .align-self-xl-start { + align-self: flex-start !important + } + + .align-self-xl-end { + align-self: flex-end !important + } + + .align-self-xl-center { + align-self: center !important + } + + .align-self-xl-baseline { + align-self: baseline !important + } + + .align-self-xl-stretch { + align-self: stretch !important + } +} + +.float-left { + float: left !important +} + +.float-right { + float: right !important +} + +.float-none { + float: none !important +} + +@media (min-width:576px) { + .float-sm-left { + float: left !important + } + + .float-sm-right { + float: right !important + } + + .float-sm-none { + float: none !important + } +} + +@media (min-width:768px) { + .float-md-left { + float: left !important + } + + .float-md-right { + float: right !important + } + + .float-md-none { + float: none !important + } +} + +@media (min-width:992px) { + .float-lg-left { + float: left !important + } + + .float-lg-right { + float: right !important + } + + .float-lg-none { + float: none !important + } +} + +@media (min-width:1200px) { + .float-xl-left { + float: left !important + } + + .float-xl-right { + float: right !important + } + + .float-xl-none { + float: none !important + } +} + +.position-static { + position: static !important +} + +.position-relative { + position: relative !important +} + +.position-absolute { + position: absolute !important +} + +.position-fixed { + position: fixed !important +} + +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important +} + +.fixed-top { + top: 0 +} + +.fixed-bottom, .fixed-top { + position: fixed; + z-index: 1030; + right: 0; + left: 0 +} + +.fixed-bottom { + bottom: 0 +} + +@supports ((position:-webkit-sticky) or (position:sticky)) { + .sticky-top { + position: -webkit-sticky; + position: sticky; + z-index: 1020; + top: 0 + } +} + +.sr-only { + position: absolute; + overflow: hidden; + clip: rect(0, 0, 0, 0); + width: 1px; + height: 1px; + padding: 0; + white-space: nowrap; + border: 0 +} + +.sr-only-focusable:active, .sr-only-focusable:focus { + position: static; + overflow: visible; + clip: auto; + width: auto; + height: auto; + white-space: normal +} + +.shadow-sm { + box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075) !important +} + +.shadow { + box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, .175) !important +} + +.shadow-none { + box-shadow: none !important +} + +.w-25 { + width: 25% !important +} + +.w-50 { + width: 50% !important +} + +.w-75 { + width: 75% !important +} + +.w-100 { + width: 100% !important +} + +.w-auto { + width: auto !important +} + +.h-25 { + height: 25% !important +} + +.h-50 { + height: 50% !important +} + +.h-75 { + height: 75% !important +} + +.h-100 { + height: 100% !important +} + +.h-auto { + height: auto !important +} + +.mw-100 { + max-width: 100% !important +} + +.mh-100 { + max-height: 100% !important +} + +.m-0 { + margin: 0 !important +} + +.mt-0, .my-0 { + margin-top: 0 !important +} + +.mr-0, .mx-0 { + margin-right: 0 !important +} + +.mb-0, .my-0 { + margin-bottom: 0 !important +} + +.ml-0, .mx-0 { + margin-left: 0 !important +} + +.m-1 { + margin: .25rem !important +} + +.mt-1, .my-1 { + margin-top: .25rem !important +} + +.mr-1, .mx-1 { + margin-right: .25rem !important +} + +.mb-1, .my-1 { + margin-bottom: .25rem !important +} + +.ml-1, .mx-1 { + margin-left: .25rem !important +} + +.m-2 { + margin: .5rem !important +} + +.mt-2, .my-2 { + margin-top: .5rem !important +} + +.mr-2, .mx-2 { + margin-right: .5rem !important +} + +.mb-2, .my-2 { + margin-bottom: .5rem !important +} + +.ml-2, .mx-2 { + margin-left: .5rem !important +} + +.m-3 { + margin: 1rem !important +} + +.mt-3, .my-3 { + margin-top: 1rem !important +} + +.mr-3, .mx-3 { + margin-right: 1rem !important +} + +.mb-3, .my-3 { + margin-bottom: 1rem !important +} + +.ml-3, .mx-3 { + margin-left: 1rem !important +} + +.m-4 { + margin: 1.5rem !important +} + +.mt-4, .my-4 { + margin-top: 1.5rem !important +} + +.mr-4, .mx-4 { + margin-right: 1.5rem !important +} + +.mb-4, .my-4 { + margin-bottom: 1.5rem !important +} + +.ml-4, .mx-4 { + margin-left: 1.5rem !important +} + +.m-5 { + margin: 3rem !important +} + +.mt-5, .my-5 { + margin-top: 3rem !important +} + +.mr-5, .mx-5 { + margin-right: 3rem !important +} + +.mb-5, .my-5 { + margin-bottom: 3rem !important +} + +.ml-5, .mx-5 { + margin-left: 3rem !important +} + +.p-0 { + padding: 0 !important +} + +.pt-0, .py-0 { + padding-top: 0 !important +} + +.pr-0, .px-0 { + padding-right: 0 !important +} + +.pb-0, .py-0 { + padding-bottom: 0 !important +} + +.pl-0, .px-0 { + padding-left: 0 !important +} + +.p-1 { + padding: .25rem !important +} + +.pt-1, .py-1 { + padding-top: .25rem !important +} + +.pr-1, .px-1 { + padding-right: .25rem !important +} + +.pb-1, .py-1 { + padding-bottom: .25rem !important +} + +.pl-1, .px-1 { + padding-left: .25rem !important +} + +.p-2 { + padding: .5rem !important +} + +.pt-2, .py-2 { + padding-top: .5rem !important +} + +.pr-2, .px-2 { + padding-right: .5rem !important +} + +.pb-2, .py-2 { + padding-bottom: .5rem !important +} + +.pl-2, .px-2 { + padding-left: .5rem !important +} + +.p-3 { + padding: 1rem !important +} + +.pt-3, .py-3 { + padding-top: 1rem !important +} + +.pr-3, .px-3 { + padding-right: 1rem !important +} + +.pb-3, .py-3 { + padding-bottom: 1rem !important +} + +.pl-3, .px-3 { + padding-left: 1rem !important +} + +.p-4 { + padding: 1.5rem !important +} + +.pt-4, .py-4 { + padding-top: 0.0rem !important; + height: calc(100% - 2.79em) +} + +.pr-4, .px-4 { + padding-right: 1.5rem !important; +} + +.pb-4, .py-4 { + padding-bottom: 1.5rem !important + height: 100% +} + +.pl-4, .px-4 { + padding-left: 1.5rem !important +} + +.p-5 { + padding: 3rem !important +} + +.pt-5, .py-5 { + padding-top: 3rem !important +} + +.pr-5, .px-5 { + padding-right: 3rem !important +} + +.pb-5, .py-5 { + padding-bottom: 3rem !important +} + +.pl-5, .px-5 { + padding-left: 3rem !important +} + +.m-auto { + margin: auto !important +} + +.mt-auto, .my-auto { + margin-top: auto !important +} + +.mr-auto, .mx-auto { + margin-right: auto !important +} + +.mb-auto, .my-auto { + margin-bottom: auto !important +} + +.ml-auto, .mx-auto { + margin-left: auto !important +} + +@media (min-width:576px) { + .m-sm-0 { + margin: 0 !important + } + + .mt-sm-0, .my-sm-0 { + margin-top: 0 !important + } + + .mr-sm-0, .mx-sm-0 { + margin-right: 0 !important + } + + .mb-sm-0, .my-sm-0 { + margin-bottom: 0 !important + } + + .ml-sm-0, .mx-sm-0 { + margin-left: 0 !important + } + + .m-sm-1 { + margin: .25rem !important + } + + .mt-sm-1, .my-sm-1 { + margin-top: .25rem !important + } + + .mr-sm-1, .mx-sm-1 { + margin-right: .25rem !important + } + + .mb-sm-1, .my-sm-1 { + margin-bottom: .25rem !important + } + + .ml-sm-1, .mx-sm-1 { + margin-left: .25rem !important + } + + .m-sm-2 { + margin: .5rem !important + } + + .mt-sm-2, .my-sm-2 { + margin-top: .5rem !important + } + + .mr-sm-2, .mx-sm-2 { + margin-right: .5rem !important + } + + .mb-sm-2, .my-sm-2 { + margin-bottom: .5rem !important + } + + .ml-sm-2, .mx-sm-2 { + margin-left: .5rem !important + } + + .m-sm-3 { + margin: 1rem !important + } + + .mt-sm-3, .my-sm-3 { + margin-top: 1rem !important + } + + .mr-sm-3, .mx-sm-3 { + margin-right: 1rem !important + } + + .mb-sm-3, .my-sm-3 { + margin-bottom: 1rem !important + } + + .ml-sm-3, .mx-sm-3 { + margin-left: 1rem !important + } + + .m-sm-4 { + margin: 1.5rem !important + } + + .mt-sm-4, .my-sm-4 { + margin-top: 1.5rem !important + } + + .mr-sm-4, .mx-sm-4 { + margin-right: 1.5rem !important + } + + .mb-sm-4, .my-sm-4 { + margin-bottom: 1.5rem !important + } + + .ml-sm-4, .mx-sm-4 { + margin-left: 1.5rem !important + } + + .m-sm-5 { + margin: 3rem !important + } + + .mt-sm-5, .my-sm-5 { + margin-top: 3rem !important + } + + .mr-sm-5, .mx-sm-5 { + margin-right: 3rem !important + } + + .mb-sm-5, .my-sm-5 { + margin-bottom: 3rem !important + } + + .ml-sm-5, .mx-sm-5 { + margin-left: 3rem !important + } + + .p-sm-0 { + padding: 0 !important + } + + .pt-sm-0, .py-sm-0 { + padding-top: 0 !important + } + + .pr-sm-0, .px-sm-0 { + padding-right: 0 !important + } + + .pb-sm-0, .py-sm-0 { + padding-bottom: 0 !important + } + + .pl-sm-0, .px-sm-0 { + padding-left: 0 !important + } + + .p-sm-1 { + padding: .25rem !important + } + + .pt-sm-1, .py-sm-1 { + padding-top: .25rem !important + } + + .pr-sm-1, .px-sm-1 { + padding-right: .25rem !important + } + + .pb-sm-1, .py-sm-1 { + padding-bottom: .25rem !important + } + + .pl-sm-1, .px-sm-1 { + padding-left: .25rem !important + } + + .p-sm-2 { + padding: .5rem !important + } + + .pt-sm-2, .py-sm-2 { + padding-top: .5rem !important + } + + .pr-sm-2, .px-sm-2 { + padding-right: .5rem !important + } + + .pb-sm-2, .py-sm-2 { + padding-bottom: .5rem !important + } + + .pl-sm-2, .px-sm-2 { + padding-left: .5rem !important + } + + .p-sm-3 { + padding: 1rem !important + } + + .pt-sm-3, .py-sm-3 { + padding-top: 1rem !important + } + + .pr-sm-3, .px-sm-3 { + padding-right: 1rem !important + } + + .pb-sm-3, .py-sm-3 { + padding-bottom: 1rem !important + } + + .pl-sm-3, .px-sm-3 { + padding-left: 1rem !important + } + + .p-sm-4 { + padding: 1.5rem !important + } + + .pt-sm-4, .py-sm-4 { + padding-top: 1.5rem !important + } + + .pr-sm-4, .px-sm-4 { + padding-right: 1.5rem !important + } + + .pb-sm-4, .py-sm-4 { + padding-bottom: 1.5rem !important + } + + .pl-sm-4, .px-sm-4 { + padding-left: 1.5rem !important + } + + .p-sm-5 { + padding: 3rem !important + } + + .pt-sm-5, .py-sm-5 { + padding-top: 3rem !important + } + + .pr-sm-5, .px-sm-5 { + padding-right: 3rem !important + } + + .pb-sm-5, .py-sm-5 { + padding-bottom: 3rem !important + } + + .pl-sm-5, .px-sm-5 { + padding-left: 3rem !important + } + + .m-sm-auto { + margin: auto !important + } + + .mt-sm-auto, .my-sm-auto { + margin-top: auto !important + } + + .mr-sm-auto, .mx-sm-auto { + margin-right: auto !important + } + + .mb-sm-auto, .my-sm-auto { + margin-bottom: auto !important + } + + .ml-sm-auto, .mx-sm-auto { + margin-left: auto !important + } +} + +@media (min-width:768px) { + .m-md-0 { + margin: 0 !important + } + + .mt-md-0, .my-md-0 { + margin-top: 0 !important + } + + .mr-md-0, .mx-md-0 { + margin-right: 0 !important + } + + .mb-md-0, .my-md-0 { + margin-bottom: 0 !important + } + + .ml-md-0, .mx-md-0 { + margin-left: 0 !important + } + + .m-md-1 { + margin: .25rem !important + } + + .mt-md-1, .my-md-1 { + margin-top: .25rem !important + } + + .mr-md-1, .mx-md-1 { + margin-right: .25rem !important + } + + .mb-md-1, .my-md-1 { + margin-bottom: .25rem !important + } + + .ml-md-1, .mx-md-1 { + margin-left: .25rem !important + } + + .m-md-2 { + margin: .5rem !important + } + + .mt-md-2, .my-md-2 { + margin-top: .5rem !important + } + + .mr-md-2, .mx-md-2 { + margin-right: .5rem !important + } + + .mb-md-2, .my-md-2 { + margin-bottom: .5rem !important + } + + .ml-md-2, .mx-md-2 { + margin-left: .5rem !important + } + + .m-md-3 { + margin: 1rem !important + } + + .mt-md-3, .my-md-3 { + margin-top: 1rem !important + } + + .mr-md-3, .mx-md-3 { + margin-right: 1rem !important + } + + .mb-md-3, .my-md-3 { + margin-bottom: 1rem !important + } + + .ml-md-3, .mx-md-3 { + margin-left: 1rem !important + } + + .m-md-4 { + margin: 1.5rem !important + } + + .mt-md-4, .my-md-4 { + margin-top: 1.5rem !important + } + + .mr-md-4, .mx-md-4 { + margin-right: 1.5rem !important + } + + .mb-md-4, .my-md-4 { + margin-bottom: 1.5rem !important + } + + .ml-md-4, .mx-md-4 { + margin-left: 1.5rem !important + } + + .m-md-5 { + margin: 3rem !important + } + + .mt-md-5, .my-md-5 { + margin-top: 3rem !important + } + + .mr-md-5, .mx-md-5 { + margin-right: 3rem !important + } + + .mb-md-5, .my-md-5 { + margin-bottom: 3rem !important + } + + .ml-md-5, .mx-md-5 { + margin-left: 3rem !important + } + + .p-md-0 { + padding: 0 !important + } + + .pt-md-0, .py-md-0 { + padding-top: 0 !important + } + + .pr-md-0, .px-md-0 { + padding-right: 0 !important + } + + .pb-md-0, .py-md-0 { + padding-bottom: 0 !important + } + + .pl-md-0, .px-md-0 { + padding-left: 0 !important + } + + .p-md-1 { + padding: .25rem !important + } + + .pt-md-1, .py-md-1 { + padding-top: .25rem !important + } + + .pr-md-1, .px-md-1 { + padding-right: .25rem !important + } + + .pb-md-1, .py-md-1 { + padding-bottom: .25rem !important + } + + .pl-md-1, .px-md-1 { + padding-left: .25rem !important + } + + .p-md-2 { + padding: .5rem !important + } + + .pt-md-2, .py-md-2 { + padding-top: .5rem !important + } + + .pr-md-2, .px-md-2 { + padding-right: .5rem !important + } + + .pb-md-2, .py-md-2 { + padding-bottom: .5rem !important + } + + .pl-md-2, .px-md-2 { + padding-left: .5rem !important + } + + .p-md-3 { + padding: 1rem !important + } + + .pt-md-3, .py-md-3 { + padding-top: 1rem !important + } + + .pr-md-3, .px-md-3 { + padding-right: 1rem !important + } + + .pb-md-3, .py-md-3 { + padding-bottom: 1rem !important + } + + .pl-md-3, .px-md-3 { + padding-left: 1rem !important + } + + .p-md-4 { + padding: 1.5rem !important + } + + .pt-md-4, .py-md-4 { + padding-top: 1.5rem !important + } + + .pr-md-4, .px-md-4 { + padding-right: 1.5rem !important + } + + .pb-md-4, .py-md-4 { + padding-bottom: 1.5rem !important + } + + .pl-md-4, .px-md-4 { + padding-left: 1.5rem !important + } + + .p-md-5 { + padding: 3rem !important + } + + .pt-md-5, .py-md-5 { + padding-top: 3rem !important + } + + .pr-md-5, .px-md-5 { + padding-right: 3rem !important + } + + .pb-md-5, .py-md-5 { + padding-bottom: 3rem !important + } + + .pl-md-5, .px-md-5 { + padding-left: 3rem !important + } + + .m-md-auto { + margin: auto !important + } + + .mt-md-auto, .my-md-auto { + margin-top: auto !important + } + + .mr-md-auto, .mx-md-auto { + margin-right: auto !important + } + + .mb-md-auto, .my-md-auto { + margin-bottom: auto !important + } + + .ml-md-auto, .mx-md-auto { + margin-left: auto !important + } +} + +@media (min-width:992px) { + .m-lg-0 { + margin: 0 !important + } + + .mt-lg-0, .my-lg-0 { + margin-top: 0 !important + } + + .mr-lg-0, .mx-lg-0 { + margin-right: 0 !important + } + + .mb-lg-0, .my-lg-0 { + margin-bottom: 0 !important + } + + .ml-lg-0, .mx-lg-0 { + margin-left: 0 !important + } + + .m-lg-1 { + margin: .25rem !important + } + + .mt-lg-1, .my-lg-1 { + margin-top: .25rem !important + } + + .mr-lg-1, .mx-lg-1 { + margin-right: .25rem !important + } + + .mb-lg-1, .my-lg-1 { + margin-bottom: .25rem !important + } + + .ml-lg-1, .mx-lg-1 { + margin-left: .25rem !important + } + + .m-lg-2 { + margin: .5rem !important + } + + .mt-lg-2, .my-lg-2 { + margin-top: .5rem !important + } + + .mr-lg-2, .mx-lg-2 { + margin-right: .5rem !important + } + + .mb-lg-2, .my-lg-2 { + margin-bottom: .5rem !important + } + + .ml-lg-2, .mx-lg-2 { + margin-left: .5rem !important + } + + .m-lg-3 { + margin: 1rem !important + } + + .mt-lg-3, .my-lg-3 { + margin-top: 1rem !important + } + + .mr-lg-3, .mx-lg-3 { + margin-right: 1rem !important + } + + .mb-lg-3, .my-lg-3 { + margin-bottom: 1rem !important + } + + .ml-lg-3, .mx-lg-3 { + margin-left: 1rem !important + } + + .m-lg-4 { + margin: 1.5rem !important + } + + .mt-lg-4, .my-lg-4 { + margin-top: 1.5rem !important + } + + .mr-lg-4, .mx-lg-4 { + margin-right: 1.5rem !important + } + + .mb-lg-4, .my-lg-4 { + margin-bottom: 1.5rem !important + } + + .ml-lg-4, .mx-lg-4 { + margin-left: 1.5rem !important + } + + .m-lg-5 { + margin: 3rem !important + } + + .mt-lg-5, .my-lg-5 { + margin-top: 3rem !important + } + + .mr-lg-5, .mx-lg-5 { + margin-right: 3rem !important + } + + .mb-lg-5, .my-lg-5 { + margin-bottom: 3rem !important + } + + .ml-lg-5, .mx-lg-5 { + margin-left: 3rem !important + } + + .p-lg-0 { + padding: 0 !important + } + + .pt-lg-0, .py-lg-0 { + padding-top: 0 !important + } + + .pr-lg-0, .px-lg-0 { + padding-right: 0 !important + } + + .pb-lg-0, .py-lg-0 { + padding-bottom: 0 !important + } + + .pl-lg-0, .px-lg-0 { + padding-left: 0 !important + } + + .p-lg-1 { + padding: .25rem !important + } + + .pt-lg-1, .py-lg-1 { + padding-top: .25rem !important + } + + .pr-lg-1, .px-lg-1 { + padding-right: .25rem !important + } + + .pb-lg-1, .py-lg-1 { + padding-bottom: .25rem !important + } + + .pl-lg-1, .px-lg-1 { + padding-left: .25rem !important + } + + .p-lg-2 { + padding: .5rem !important + } + + .pt-lg-2, .py-lg-2 { + padding-top: .5rem !important + } + + .pr-lg-2, .px-lg-2 { + padding-right: .5rem !important + } + + .pb-lg-2, .py-lg-2 { + padding-bottom: .5rem !important + } + + .pl-lg-2, .px-lg-2 { + padding-left: .5rem !important + } + + .p-lg-3 { + padding: 1rem !important + } + + .pt-lg-3, .py-lg-3 { + padding-top: 1rem !important + } + + .pr-lg-3, .px-lg-3 { + padding-right: 1rem !important + } + + .pb-lg-3, .py-lg-3 { + padding-bottom: 1rem !important + } + + .pl-lg-3, .px-lg-3 { + padding-left: 1rem !important + } + + .p-lg-4 { + padding: 1.5rem !important + } + + .pt-lg-4, .py-lg-4 { + padding-top: 1.5rem !important + } + + .pr-lg-4, .px-lg-4 { + padding-right: 1.5rem !important + } + + .pb-lg-4, .py-lg-4 { + padding-bottom: 1.5rem !important + } + + .pl-lg-4, .px-lg-4 { + padding-left: 1.5rem !important + } + + .p-lg-5 { + padding: 3rem !important + } + + .pt-lg-5, .py-lg-5 { + padding-top: 3rem !important + } + + .pr-lg-5, .px-lg-5 { + padding-right: 3rem !important + } + + .pb-lg-5, .py-lg-5 { + padding-bottom: 3rem !important + } + + .pl-lg-5, .px-lg-5 { + padding-left: 3rem !important + } + + .m-lg-auto { + margin: auto !important + } + + .mt-lg-auto, .my-lg-auto { + margin-top: auto !important + } + + .mr-lg-auto, .mx-lg-auto { + margin-right: auto !important + } + + .mb-lg-auto, .my-lg-auto { + margin-bottom: auto !important + } + + .ml-lg-auto, .mx-lg-auto { + margin-left: auto !important + } +} + +@media (min-width:1200px) { + .m-xl-0 { + margin: 0 !important + } + + .mt-xl-0, .my-xl-0 { + margin-top: 0 !important + } + + .mr-xl-0, .mx-xl-0 { + margin-right: 0 !important + } + + .mb-xl-0, .my-xl-0 { + margin-bottom: 0 !important + } + + .ml-xl-0, .mx-xl-0 { + margin-left: 0 !important + } + + .m-xl-1 { + margin: .25rem !important + } + + .mt-xl-1, .my-xl-1 { + margin-top: .25rem !important + } + + .mr-xl-1, .mx-xl-1 { + margin-right: .25rem !important + } + + .mb-xl-1, .my-xl-1 { + margin-bottom: .25rem !important + } + + .ml-xl-1, .mx-xl-1 { + margin-left: .25rem !important + } + + .m-xl-2 { + margin: .5rem !important + } + + .mt-xl-2, .my-xl-2 { + margin-top: .5rem !important + } + + .mr-xl-2, .mx-xl-2 { + margin-right: .5rem !important + } + + .mb-xl-2, .my-xl-2 { + margin-bottom: .5rem !important + } + + .ml-xl-2, .mx-xl-2 { + margin-left: .5rem !important + } + + .m-xl-3 { + margin: 1rem !important + } + + .mt-xl-3, .my-xl-3 { + margin-top: 1rem !important + } + + .mr-xl-3, .mx-xl-3 { + margin-right: 1rem !important + } + + .mb-xl-3, .my-xl-3 { + margin-bottom: 1rem !important + } + + .ml-xl-3, .mx-xl-3 { + margin-left: 1rem !important + } + + .m-xl-4 { + margin: 1.5rem !important + } + + .mt-xl-4, .my-xl-4 { + margin-top: 1.5rem !important + } + + .mr-xl-4, .mx-xl-4 { + margin-right: 1.5rem !important + } + + .mb-xl-4, .my-xl-4 { + margin-bottom: 1.5rem !important + } + + .ml-xl-4, .mx-xl-4 { + margin-left: 1.5rem !important + } + + .m-xl-5 { + margin: 3rem !important + } + + .mt-xl-5, .my-xl-5 { + margin-top: 3rem !important + } + + .mr-xl-5, .mx-xl-5 { + margin-right: 3rem !important + } + + .mb-xl-5, .my-xl-5 { + margin-bottom: 3rem !important + } + + .ml-xl-5, .mx-xl-5 { + margin-left: 3rem !important + } + + .p-xl-0 { + padding: 0 !important + } + + .pt-xl-0, .py-xl-0 { + padding-top: 0 !important + } + + .pr-xl-0, .px-xl-0 { + padding-right: 0 !important + } + + .pb-xl-0, .py-xl-0 { + padding-bottom: 0 !important + } + + .pl-xl-0, .px-xl-0 { + padding-left: 0 !important + } + + .p-xl-1 { + padding: .25rem !important + } + + .pt-xl-1, .py-xl-1 { + padding-top: .25rem !important + } + + .pr-xl-1, .px-xl-1 { + padding-right: .25rem !important + } + + .pb-xl-1, .py-xl-1 { + padding-bottom: .25rem !important + } + + .pl-xl-1, .px-xl-1 { + padding-left: .25rem !important + } + + .p-xl-2 { + padding: .5rem !important + } + + .pt-xl-2, .py-xl-2 { + padding-top: .5rem !important + } + + .pr-xl-2, .px-xl-2 { + padding-right: .5rem !important + } + + .pb-xl-2, .py-xl-2 { + padding-bottom: .5rem !important + } + + .pl-xl-2, .px-xl-2 { + padding-left: .5rem !important + } + + .p-xl-3 { + padding: 1rem !important + } + + .pt-xl-3, .py-xl-3 { + padding-top: 1rem !important + } + + .pr-xl-3, .px-xl-3 { + padding-right: 1rem !important + } + + .pb-xl-3, .py-xl-3 { + padding-bottom: 1rem !important + } + + .pl-xl-3, .px-xl-3 { + padding-left: 1rem !important + } + + .p-xl-4 { + padding: 1.5rem !important + } + + .pt-xl-4, .py-xl-4 { + padding-top: 1.5rem !important + } + + .pr-xl-4, .px-xl-4 { + padding-right: 1.5rem !important + } + + .pb-xl-4, .py-xl-4 { + padding-bottom: 1.5rem !important + } + + .pl-xl-4, .px-xl-4 { + padding-left: 1.5rem !important + } + + .p-xl-5 { + padding: 3rem !important + } + + .pt-xl-5, .py-xl-5 { + padding-top: 3rem !important + } + + .pr-xl-5, .px-xl-5 { + padding-right: 3rem !important + } + + .pb-xl-5, .py-xl-5 { + padding-bottom: 3rem !important + } + + .pl-xl-5, .px-xl-5 { + padding-left: 3rem !important + } + + .m-xl-auto { + margin: auto !important + } + + .mt-xl-auto, .my-xl-auto { + margin-top: auto !important + } + + .mr-xl-auto, .mx-xl-auto { + margin-right: auto !important + } + + .mb-xl-auto, .my-xl-auto { + margin-bottom: auto !important + } + + .ml-xl-auto, .mx-xl-auto { + margin-left: auto !important + } +} + +.text-monospace { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace +} + +.text-justify { + text-align: justify !important +} + +.text-nowrap { + white-space: nowrap !important +} + +.text-truncate { + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis +} + +.text-left { + text-align: left !important +} + +.text-right { + text-align: right !important +} + +.text-center { + text-align: center !important +} + +@media (min-width:576px) { + .text-sm-left { + text-align: left !important + } + + .text-sm-right { + text-align: right !important + } + + .text-sm-center { + text-align: center !important + } +} + +@media (min-width:768px) { + .text-md-left { + text-align: left !important + } + + .text-md-right { + text-align: right !important + } + + .text-md-center { + text-align: center !important + } +} + +@media (min-width:992px) { + .text-lg-left { + text-align: left !important + } + + .text-lg-right { + text-align: right !important + } + + .text-lg-center { + text-align: center !important + } +} + +@media (min-width:1200px) { + .text-xl-left { + text-align: left !important + } + + .text-xl-right { + text-align: right !important + } + + .text-xl-center { + text-align: center !important + } +} + +.text-lowercase { + text-transform: lowercase !important +} + +.text-uppercase { + text-transform: uppercase !important +} + +.text-capitalize { + text-transform: capitalize !important +} + +.font-weight-light { + font-weight: 300 !important +} + +.font-weight-normal { + font-weight: 400 !important +} + +.font-weight-bold { + font-weight: 700 !important +} + +.font-italic { + font-style: italic !important +} + +.text-white { + color: #fff !important +} + +.text-primary { + color: #3490dc !important +} + +a.text-primary:focus, a.text-primary:hover { + color: #2176bd !important +} + +.text-secondary { + color: #6c757d !important +} + +a.text-secondary:focus, a.text-secondary:hover { + color: #545b62 !important +} + +.text-success { + color: #38c172 !important +} + +a.text-success:focus, a.text-success:hover { + color: #2d995b !important +} + +.text-info { + color: #6cb2eb !important +} + +a.text-info:focus, a.text-info:hover { + color: #3f9ae5 !important +} + +.text-warning { + color: #ffed4a !important +} + +a.text-warning:focus, a.text-warning:hover { + color: #ffe817 !important +} + +.text-danger { + color: #e3342f !important +} + +a.text-danger:focus, a.text-danger:hover { + color: #c51f1a !important +} + +.text-light { + color: #f8f9fa !important +} + +a.text-light:focus, a.text-light:hover { + color: #dae0e5 !important +} + +.text-dark { + color: #343a40 !important +} + +a.text-dark:focus, a.text-dark:hover { + color: #1d2124 !important +} + +.text-body { + color: #212529 !important +} + +.text-muted { + color: #6c757d !important +} + +.text-black-50 { + color: rgba(0, 0, 0, .5) !important +} + +.text-white-50 { + color: hsla(0, 0%, 100%, .5) !important +} + +.text-hide { + font: 0/0 a; + color: transparent; + border: 0; + background-color: transparent; + text-shadow: none +} + +.visible { + visibility: visible !important +} + +.invisible { + visibility: hidden !important +} + +@media print { + *, :after, :before { + box-shadow: none !important; + text-shadow: none !important + } + + a:not(.btn) { + text-decoration: underline + } + + abbr[title]:after { + content: " ("attr(title) ")" + } + + pre { + white-space: pre-wrap !important + } + + blockquote, pre { + border: 1px solid #adb5bd; + page-break-inside: avoid + } + + thead { + display: table-header-group + } + + img, tr { + page-break-inside: avoid + } + + h2, h3, p { + orphans: 3; + widows: 3 + } + + h2, h3 { + page-break-after: avoid + } + + @page { + size: a3 + } + + .container, body { + min-width: 992px !important + } + + .navbar { + display: none + } + + .badge { + border: 1px solid #000 + } + + .table { + border-collapse: collapse !important + } + + .table td, .table th { + background-color: #fff !important + } + + .table-bordered td, .table-bordered th { + border: 1px solid #dee2e6 !important + } + + .table-dark { + color: inherit + } + + .table-dark tbody+tbody, .table-dark td, .table-dark th, .table-dark thead th { + border-color: #dee2e6 + } + + .table .thead-dark th { + color: inherit; + border-color: #dee2e6 + } +} + +.navbar-laravel { + background-color: #fff; + box-shadow: 0 2px 4px rgba(0, 0, 0, .04) +} diff --git a/public/css/bootstrap-tagsinput.css b/public/css/bootstrap-tagsinput.css new file mode 100644 index 0000000..25aafa1 --- /dev/null +++ b/public/css/bootstrap-tagsinput.css @@ -0,0 +1,73 @@ +/* + * bootstrap-tagsinput v0.8.0 + * + */ + +.bootstrap-tagsinput { + background-color: #fff; + border: 1px solid #ccc; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + display: inline-block; + padding: 4px 6px; + color: #555; + vertical-align: middle; + border-radius: 4px; + max-width: 100%; + line-height: 22px; + cursor: text; +} +.bootstrap-tagsinput input { + border: none; + box-shadow: none; + outline: none; + background-color: transparent; + padding: 0 6px; + margin: 0; + width: auto; + max-width: inherit; +} +.bootstrap-tagsinput.form-control input::-moz-placeholder { + color: #777; + opacity: 1; +} +.bootstrap-tagsinput.form-control input:-ms-input-placeholder { + color: #777; +} +.bootstrap-tagsinput.form-control input::-webkit-input-placeholder { + color: #777; +} +.bootstrap-tagsinput input:focus { + border: none; + box-shadow: none; +} +.bootstrap-tagsinput .tag { + margin-right: 2px; + padding-left: 4px; + border-radius: 4px; + color: white; + background-color: #0080ff; +} +.bootstrap-tagsinput .tag [data-role="remove"] { + margin-left: 8px; + padding-right: 2px; + cursor: pointer; +} +.bootstrap-tagsinput .tag [data-role="remove"]:after { + content: "x"; + padding: 0px 2px; +} +.bootstrap-tagsinput .tag [data-role="remove"]:hover { + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); +} +.bootstrap-tagsinput .tag [data-role="remove"]:hover:active { + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.tt-hint { + visibility: hidden; +} +.tt-dataset { + border-style: solid; + border-width: thin; + background-color: white; + border-radius: 2px; +} diff --git a/public/css/sidebar.css b/public/css/sidebar.css new file mode 100644 index 0000000..ccf0b32 --- /dev/null +++ b/public/css/sidebar.css @@ -0,0 +1,10876 @@ +@charset "UTF-8"; +/*! +* Start Bootstrap - Simple Sidebar v6.0.1 (https://startbootstrap.com/template/simple-sidebar) +* Copyright 2013-2021 Start Bootstrap +* Licensed under MIT (https://github.com/StartBootstrap/startbootstrap-simple-sidebar/blob/master/LICENSE) +*/ +/*! + * Bootstrap v5.0.1 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors + * Copyright 2011-2021 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +:root { + --bs-blue: #0d6efd; + --bs-indigo: #6610f2; + --bs-purple: #6f42c1; + --bs-pink: #d63384; + --bs-red: #dc3545; + --bs-orange: #fd7e14; + --bs-yellow: #ffc107; + --bs-green: #198754; + --bs-teal: #20c997; + --bs-cyan: #0dcaf0; + --bs-white: #fff; + --bs-gray: #6c757d; + --bs-gray-dark: #343a40; + --bs-primary: #0d6efd; + --bs-secondary: #6c757d; + --bs-success: #198754; + --bs-info: #0dcaf0; + --bs-warning: #ffc107; + --bs-danger: #dc3545; + --bs-light: #f8f9fa; + --bs-dark: #212529; + --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth; + } +} + +body { + margin: 0; + font-family: var(--bs-font-sans-serif); + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +hr { + margin: 1rem 0; + color: inherit; + background-color: currentColor; + border: 0; + opacity: 0.25; +} + +hr:not([size]) { + height: 1px; +} + +h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 { + margin-top: 0; + margin-bottom: 0.5rem; + font-weight: 500; + line-height: 1.2; +} + +h1, .h1 { + font-size: calc(1.375rem + 1.5vw); +} +@media (min-width: 1200px) { + h1, .h1 { + font-size: 2.5rem; + } +} + +h2, .h2 { + font-size: calc(1.325rem + 0.9vw); +} +@media (min-width: 1200px) { + h2, .h2 { + font-size: 2rem; + } +} + +h3, .h3 { + font-size: calc(1.3rem + 0.6vw); +} +@media (min-width: 1200px) { + h3, .h3 { + font-size: 1.75rem; + } +} + +h4, .h4 { + font-size: calc(1.275rem + 0.3vw); +} +@media (min-width: 1200px) { + h4, .h4 { + font-size: 1.5rem; + } +} + +h5, .h5 { + font-size: 1.25rem; +} + +h6, .h6 { + font-size: 1rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-bs-original-title] { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + -webkit-text-decoration-skip-ink: none; + text-decoration-skip-ink: none; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul { + padding-left: 2rem; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: 0.5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small, .small { + font-size: 0.875em; +} + +mark, .mark { + padding: 0.2em; + background-color: #fcf8e3; +} + +sub, +sup { + position: relative; + font-size: 0.75em; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +a { + color: #0d6efd; + text-decoration: underline; +} +a:hover { + color: #0a58ca; +} + +a:not([href]):not([class]), a:not([href]):not([class]):hover { + color: inherit; + text-decoration: none; +} + +pre, +code, +kbd, +samp { + font-family: var(--bs-font-monospace); + font-size: 1em; + direction: ltr /* rtl:ignore */; + unicode-bidi: bidi-override; +} + +pre { + display: block; + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; + font-size: 0.875em; +} +pre code { + font-size: inherit; + color: inherit; + word-break: normal; +} + +code { + font-size: 0.875em; + color: #d63384; + word-wrap: break-word; +} +a > code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 0.875em; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} +kbd kbd { + padding: 0; + font-size: 1em; + font-weight: 700; +} + +figure { + margin: 0 0 1rem; +} + +img, +svg { + vertical-align: middle; +} + +table { + caption-side: bottom; + border-collapse: collapse; +} + +caption { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + color: #6c757d; + text-align: left; +} + +th { + text-align: inherit; + text-align: -webkit-match-parent; +} + +thead, +tbody, +tfoot, +tr, +td, +th { + border-color: inherit; + border-style: solid; + border-width: 0; +} + +label { + display: inline-block; +} + +button { + border-radius: 0; +} + +button:focus:not(:focus-visible) { + outline: 0; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +select { + text-transform: none; +} + +[role=button] { + cursor: pointer; +} + +select { + word-wrap: normal; +} +select:disabled { + opacity: 1; +} + +[list]::-webkit-calendar-picker-indicator { + display: none; +} + +button, +[type=button], +[type=reset], +[type=submit] { + -webkit-appearance: button; +} +button:not(:disabled), +[type=button]:not(:disabled), +[type=reset]:not(:disabled), +[type=submit]:not(:disabled) { + cursor: pointer; +} + +::-moz-focus-inner { + padding: 0; + border-style: none; +} + +textarea { + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + float: left; + width: 100%; + padding: 0; + margin-bottom: 0.5rem; + font-size: calc(1.275rem + 0.3vw); + line-height: inherit; +} +@media (min-width: 1200px) { + legend { + font-size: 1.5rem; + } +} +legend + * { + clear: left; +} + +::-webkit-datetime-edit-fields-wrapper, +::-webkit-datetime-edit-text, +::-webkit-datetime-edit-minute, +::-webkit-datetime-edit-hour-field, +::-webkit-datetime-edit-day-field, +::-webkit-datetime-edit-month-field, +::-webkit-datetime-edit-year-field { + padding: 0; +} + +::-webkit-inner-spin-button { + height: auto; +} + +[type=search] { + outline-offset: -2px; + -webkit-appearance: textfield; +} + +/* rtl:raw: +[type="tel"], +[type="url"], +[type="email"], +[type="number"] { + direction: ltr; +} +*/ +::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-color-swatch-wrapper { + padding: 0; +} + +::file-selector-button { + font: inherit; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +iframe { + border: 0; +} + +summary { + display: list-item; + cursor: pointer; +} + +progress { + vertical-align: baseline; +} + +[hidden] { + display: none !important; +} + +.lead { + font-size: 1.25rem; + font-weight: 300; +} + +.display-1 { + font-size: calc(1.625rem + 4.5vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-1 { + font-size: 5rem; + } +} + +.display-2 { + font-size: calc(1.575rem + 3.9vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-2 { + font-size: 4.5rem; + } +} + +.display-3 { + font-size: calc(1.525rem + 3.3vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-3 { + font-size: 4rem; + } +} + +.display-4 { + font-size: calc(1.475rem + 2.7vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-4 { + font-size: 3.5rem; + } +} + +.display-5 { + font-size: calc(1.425rem + 2.1vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-5 { + font-size: 3rem; + } +} + +.display-6 { + font-size: calc(1.375rem + 1.5vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-6 { + font-size: 2.5rem; + } +} + +.list-unstyled { + padding-left: 0; + list-style: none; +} + +.list-inline { + padding-left: 0; + list-style: none; +} + +.list-inline-item { + display: inline-block; +} +.list-inline-item:not(:last-child) { + margin-right: 0.5rem; +} + +.initialism { + font-size: 0.875em; + text-transform: uppercase; +} + +.blockquote { + margin-bottom: 1rem; + font-size: 1.25rem; +} +.blockquote > :last-child { + margin-bottom: 0; +} + +.blockquote-footer { + margin-top: -1rem; + margin-bottom: 1rem; + font-size: 0.875em; + color: #6c757d; +} +.blockquote-footer::before { + content: "— "; +} + +.img-fluid { + max-width: 100%; + height: auto; +} + +.img-thumbnail { + padding: 0.25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 0.25rem; + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.5rem; + line-height: 1; +} + +.figure-caption { + font-size: 0.875em; + color: #6c757d; +} + +.container, +.container-fluid, +.container-xxl, +.container-xl, +.container-lg, +.container-md, +.container-sm { + width: 100%; + padding-right: var(--bs-gutter-x, 0.75rem); + padding-left: var(--bs-gutter-x, 0.75rem); + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + .container-sm, .container { + max-width: 540px; + } +} +@media (min-width: 768px) { + .container-md, .container-sm, .container { + max-width: 720px; + } +} +@media (min-width: 992px) { + .container-lg, .container-md, .container-sm, .container { + max-width: 960px; + } +} +@media (min-width: 1200px) { + .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1140px; + } +} +@media (min-width: 1400px) { + .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1320px; + } +} +.row { + --bs-gutter-x: 1.5rem; + --bs-gutter-y: 0; + display: flex; + flex-wrap: wrap; + margin-top: calc(var(--bs-gutter-y) * -1); + margin-right: calc(var(--bs-gutter-x) / -2); + margin-left: calc(var(--bs-gutter-x) / -2); +} +.row > * { + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); + margin-top: var(--bs-gutter-y); +} + +.col { + flex: 1 0 0%; +} + +.row-cols-auto > * { + flex: 0 0 auto; + width: auto; +} + +.row-cols-1 > * { + flex: 0 0 auto; + width: 100%; +} + +.row-cols-2 > * { + flex: 0 0 auto; + width: 50%; +} + +.row-cols-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; +} + +.row-cols-4 > * { + flex: 0 0 auto; + width: 25%; +} + +.row-cols-5 > * { + flex: 0 0 auto; + width: 20%; +} + +.row-cols-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-auto { + flex: 0 0 auto; + width: auto; +} + +.col-1 { + flex: 0 0 auto; + width: 8.3333333333%; +} + +.col-2 { + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-3 { + flex: 0 0 auto; + width: 25%; +} + +.col-4 { + flex: 0 0 auto; + width: 33.3333333333%; +} + +.col-5 { + flex: 0 0 auto; + width: 41.6666666667%; +} + +.col-6 { + flex: 0 0 auto; + width: 50%; +} + +.col-7 { + flex: 0 0 auto; + width: 58.3333333333%; +} + +.col-8 { + flex: 0 0 auto; + width: 66.6666666667%; +} + +.col-9 { + flex: 0 0 auto; + width: 75%; +} + +.col-10 { + flex: 0 0 auto; + width: 83.3333333333%; +} + +.col-11 { + flex: 0 0 auto; + width: 91.6666666667%; +} + +.col-12 { + flex: 0 0 auto; + width: 100%; +} + +.offset-1 { + margin-left: 8.3333333333%; +} + +.offset-2 { + margin-left: 16.6666666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.3333333333%; +} + +.offset-5 { + margin-left: 41.6666666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.3333333333%; +} + +.offset-8 { + margin-left: 66.6666666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.3333333333%; +} + +.offset-11 { + margin-left: 91.6666666667%; +} + +.g-0, +.gx-0 { + --bs-gutter-x: 0; +} + +.g-0, +.gy-0 { + --bs-gutter-y: 0; +} + +.g-1, +.gx-1 { + --bs-gutter-x: 0.25rem; +} + +.g-1, +.gy-1 { + --bs-gutter-y: 0.25rem; +} + +.g-2, +.gx-2 { + --bs-gutter-x: 0.5rem; +} + +.g-2, +.gy-2 { + --bs-gutter-y: 0.5rem; +} + +.g-3, +.gx-3 { + --bs-gutter-x: 1rem; +} + +.g-3, +.gy-3 { + --bs-gutter-y: 1rem; +} + +.g-4, +.gx-4 { + --bs-gutter-x: 1.5rem; +} + +.g-4, +.gy-4 { + --bs-gutter-y: 1.5rem; +} + +.g-5, +.gx-5 { + --bs-gutter-x: 3rem; +} + +.g-5, +.gy-5 { + --bs-gutter-y: 3rem; +} + +@media (min-width: 576px) { + .col-sm { + flex: 1 0 0%; + } + + .row-cols-sm-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-sm-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-sm-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-sm-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-sm-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-sm-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-sm-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-auto { + flex: 0 0 auto; + width: auto; + } + + .col-sm-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-sm-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-sm-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-sm-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-sm-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-sm-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-sm-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-sm-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-sm-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-sm-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-sm-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-sm-0 { + margin-left: 0; + } + + .offset-sm-1 { + margin-left: 8.3333333333%; + } + + .offset-sm-2 { + margin-left: 16.6666666667%; + } + + .offset-sm-3 { + margin-left: 25%; + } + + .offset-sm-4 { + margin-left: 33.3333333333%; + } + + .offset-sm-5 { + margin-left: 41.6666666667%; + } + + .offset-sm-6 { + margin-left: 50%; + } + + .offset-sm-7 { + margin-left: 58.3333333333%; + } + + .offset-sm-8 { + margin-left: 66.6666666667%; + } + + .offset-sm-9 { + margin-left: 75%; + } + + .offset-sm-10 { + margin-left: 83.3333333333%; + } + + .offset-sm-11 { + margin-left: 91.6666666667%; + } + + .g-sm-0, +.gx-sm-0 { + --bs-gutter-x: 0; + } + + .g-sm-0, +.gy-sm-0 { + --bs-gutter-y: 0; + } + + .g-sm-1, +.gx-sm-1 { + --bs-gutter-x: 0.25rem; + } + + .g-sm-1, +.gy-sm-1 { + --bs-gutter-y: 0.25rem; + } + + .g-sm-2, +.gx-sm-2 { + --bs-gutter-x: 0.5rem; + } + + .g-sm-2, +.gy-sm-2 { + --bs-gutter-y: 0.5rem; + } + + .g-sm-3, +.gx-sm-3 { + --bs-gutter-x: 1rem; + } + + .g-sm-3, +.gy-sm-3 { + --bs-gutter-y: 1rem; + } + + .g-sm-4, +.gx-sm-4 { + --bs-gutter-x: 1.5rem; + } + + .g-sm-4, +.gy-sm-4 { + --bs-gutter-y: 1.5rem; + } + + .g-sm-5, +.gx-sm-5 { + --bs-gutter-x: 3rem; + } + + .g-sm-5, +.gy-sm-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 768px) { + .col-md { + flex: 1 0 0%; + } + + .row-cols-md-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-md-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-md-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-md-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-md-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-md-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-md-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-auto { + flex: 0 0 auto; + width: auto; + } + + .col-md-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-md-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-md-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-md-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-md-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-md-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-md-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-md-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-md-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-md-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-md-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-md-0 { + margin-left: 0; + } + + .offset-md-1 { + margin-left: 8.3333333333%; + } + + .offset-md-2 { + margin-left: 16.6666666667%; + } + + .offset-md-3 { + margin-left: 25%; + } + + .offset-md-4 { + margin-left: 33.3333333333%; + } + + .offset-md-5 { + margin-left: 41.6666666667%; + } + + .offset-md-6 { + margin-left: 50%; + } + + .offset-md-7 { + margin-left: 58.3333333333%; + } + + .offset-md-8 { + margin-left: 66.6666666667%; + } + + .offset-md-9 { + margin-left: 75%; + } + + .offset-md-10 { + margin-left: 83.3333333333%; + } + + .offset-md-11 { + margin-left: 91.6666666667%; + } + + .g-md-0, +.gx-md-0 { + --bs-gutter-x: 0; + } + + .g-md-0, +.gy-md-0 { + --bs-gutter-y: 0; + } + + .g-md-1, +.gx-md-1 { + --bs-gutter-x: 0.25rem; + } + + .g-md-1, +.gy-md-1 { + --bs-gutter-y: 0.25rem; + } + + .g-md-2, +.gx-md-2 { + --bs-gutter-x: 0.5rem; + } + + .g-md-2, +.gy-md-2 { + --bs-gutter-y: 0.5rem; + } + + .g-md-3, +.gx-md-3 { + --bs-gutter-x: 1rem; + } + + .g-md-3, +.gy-md-3 { + --bs-gutter-y: 1rem; + } + + .g-md-4, +.gx-md-4 { + --bs-gutter-x: 1.5rem; + } + + .g-md-4, +.gy-md-4 { + --bs-gutter-y: 1.5rem; + } + + .g-md-5, +.gx-md-5 { + --bs-gutter-x: 3rem; + } + + .g-md-5, +.gy-md-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 992px) { + .col-lg { + flex: 1 0 0%; + } + + .row-cols-lg-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-lg-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-lg-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-lg-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-lg-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-lg-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-lg-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-auto { + flex: 0 0 auto; + width: auto; + } + + .col-lg-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-lg-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-lg-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-lg-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-lg-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-lg-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-lg-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-lg-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-lg-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-lg-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-lg-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-lg-0 { + margin-left: 0; + } + + .offset-lg-1 { + margin-left: 8.3333333333%; + } + + .offset-lg-2 { + margin-left: 16.6666666667%; + } + + .offset-lg-3 { + margin-left: 25%; + } + + .offset-lg-4 { + margin-left: 33.3333333333%; + } + + .offset-lg-5 { + margin-left: 41.6666666667%; + } + + .offset-lg-6 { + margin-left: 50%; + } + + .offset-lg-7 { + margin-left: 58.3333333333%; + } + + .offset-lg-8 { + margin-left: 66.6666666667%; + } + + .offset-lg-9 { + margin-left: 75%; + } + + .offset-lg-10 { + margin-left: 83.3333333333%; + } + + .offset-lg-11 { + margin-left: 91.6666666667%; + } + + .g-lg-0, +.gx-lg-0 { + --bs-gutter-x: 0; + } + + .g-lg-0, +.gy-lg-0 { + --bs-gutter-y: 0; + } + + .g-lg-1, +.gx-lg-1 { + --bs-gutter-x: 0.25rem; + } + + .g-lg-1, +.gy-lg-1 { + --bs-gutter-y: 0.25rem; + } + + .g-lg-2, +.gx-lg-2 { + --bs-gutter-x: 0.5rem; + } + + .g-lg-2, +.gy-lg-2 { + --bs-gutter-y: 0.5rem; + } + + .g-lg-3, +.gx-lg-3 { + --bs-gutter-x: 1rem; + } + + .g-lg-3, +.gy-lg-3 { + --bs-gutter-y: 1rem; + } + + .g-lg-4, +.gx-lg-4 { + --bs-gutter-x: 1.5rem; + } + + .g-lg-4, +.gy-lg-4 { + --bs-gutter-y: 1.5rem; + } + + .g-lg-5, +.gx-lg-5 { + --bs-gutter-x: 3rem; + } + + .g-lg-5, +.gy-lg-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 1200px) { + .col-xl { + flex: 1 0 0%; + } + + .row-cols-xl-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xl-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xl-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xl-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xl-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xl-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xl-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xl-0 { + margin-left: 0; + } + + .offset-xl-1 { + margin-left: 8.3333333333%; + } + + .offset-xl-2 { + margin-left: 16.6666666667%; + } + + .offset-xl-3 { + margin-left: 25%; + } + + .offset-xl-4 { + margin-left: 33.3333333333%; + } + + .offset-xl-5 { + margin-left: 41.6666666667%; + } + + .offset-xl-6 { + margin-left: 50%; + } + + .offset-xl-7 { + margin-left: 58.3333333333%; + } + + .offset-xl-8 { + margin-left: 66.6666666667%; + } + + .offset-xl-9 { + margin-left: 75%; + } + + .offset-xl-10 { + margin-left: 83.3333333333%; + } + + .offset-xl-11 { + margin-left: 91.6666666667%; + } + + .g-xl-0, +.gx-xl-0 { + --bs-gutter-x: 0; + } + + .g-xl-0, +.gy-xl-0 { + --bs-gutter-y: 0; + } + + .g-xl-1, +.gx-xl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xl-1, +.gy-xl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xl-2, +.gx-xl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xl-2, +.gy-xl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xl-3, +.gx-xl-3 { + --bs-gutter-x: 1rem; + } + + .g-xl-3, +.gy-xl-3 { + --bs-gutter-y: 1rem; + } + + .g-xl-4, +.gx-xl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xl-4, +.gy-xl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xl-5, +.gx-xl-5 { + --bs-gutter-x: 3rem; + } + + .g-xl-5, +.gy-xl-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 1400px) { + .col-xxl { + flex: 1 0 0%; + } + + .row-cols-xxl-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xxl-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xxl-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xxl-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xxl-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xxl-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xxl-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xxl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xxl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xxl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xxl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xxl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xxl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xxl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xxl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xxl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xxl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xxl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xxl-0 { + margin-left: 0; + } + + .offset-xxl-1 { + margin-left: 8.3333333333%; + } + + .offset-xxl-2 { + margin-left: 16.6666666667%; + } + + .offset-xxl-3 { + margin-left: 25%; + } + + .offset-xxl-4 { + margin-left: 33.3333333333%; + } + + .offset-xxl-5 { + margin-left: 41.6666666667%; + } + + .offset-xxl-6 { + margin-left: 50%; + } + + .offset-xxl-7 { + margin-left: 58.3333333333%; + } + + .offset-xxl-8 { + margin-left: 66.6666666667%; + } + + .offset-xxl-9 { + margin-left: 75%; + } + + .offset-xxl-10 { + margin-left: 83.3333333333%; + } + + .offset-xxl-11 { + margin-left: 91.6666666667%; + } + + .g-xxl-0, +.gx-xxl-0 { + --bs-gutter-x: 0; + } + + .g-xxl-0, +.gy-xxl-0 { + --bs-gutter-y: 0; + } + + .g-xxl-1, +.gx-xxl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xxl-1, +.gy-xxl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xxl-2, +.gx-xxl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xxl-2, +.gy-xxl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xxl-3, +.gx-xxl-3 { + --bs-gutter-x: 1rem; + } + + .g-xxl-3, +.gy-xxl-3 { + --bs-gutter-y: 1rem; + } + + .g-xxl-4, +.gx-xxl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xxl-4, +.gy-xxl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xxl-5, +.gx-xxl-5 { + --bs-gutter-x: 3rem; + } + + .g-xxl-5, +.gy-xxl-5 { + --bs-gutter-y: 3rem; + } +} +.table { + --bs-table-bg: transparent; + --bs-table-accent-bg: transparent; + --bs-table-striped-color: #212529; + --bs-table-striped-bg: rgba(0, 0, 0, 0.05); + --bs-table-active-color: #212529; + --bs-table-active-bg: rgba(0, 0, 0, 0.1); + --bs-table-hover-color: #212529; + --bs-table-hover-bg: rgba(0, 0, 0, 0.075); + width: 100%; + margin-bottom: 1rem; + color: #212529; + vertical-align: top; + border-color: #dee2e6; +} +.table > :not(caption) > * > * { + padding: 0.5rem 0.5rem; + background-color: var(--bs-table-bg); + border-bottom-width: 1px; + box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg); +} +.table > tbody { + vertical-align: inherit; +} +.table > thead { + vertical-align: bottom; +} +.table > :not(:last-child) > :last-child > * { + border-bottom-color: currentColor; +} + +.caption-top { + caption-side: top; +} + +.table-sm > :not(caption) > * > * { + padding: 0.25rem 0.25rem; +} + +.table-bordered > :not(caption) > * { + border-width: 1px 0; +} +.table-bordered > :not(caption) > * > * { + border-width: 0 1px; +} + +.table-borderless > :not(caption) > * > * { + border-bottom-width: 0; +} + +.table-striped > tbody > tr:nth-of-type(odd) { + --bs-table-accent-bg: var(--bs-table-striped-bg); + color: var(--bs-table-striped-color); +} + +.table-active { + --bs-table-accent-bg: var(--bs-table-active-bg); + color: var(--bs-table-active-color); +} + +.table-hover > tbody > tr:hover { + --bs-table-accent-bg: var(--bs-table-hover-bg); + color: var(--bs-table-hover-color); +} + +.table-primary { + --bs-table-bg: #cfe2ff; + --bs-table-striped-bg: #c5d7f2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bacbe6; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfd1ec; + --bs-table-hover-color: #000; + color: #000; + border-color: #bacbe6; +} + +.table-secondary { + --bs-table-bg: #e2e3e5; + --bs-table-striped-bg: #d7d8da; + --bs-table-striped-color: #000; + --bs-table-active-bg: #cbccce; + --bs-table-active-color: #000; + --bs-table-hover-bg: #d1d2d4; + --bs-table-hover-color: #000; + color: #000; + border-color: #cbccce; +} + +.table-success { + --bs-table-bg: #d1e7dd; + --bs-table-striped-bg: #c7dbd2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bcd0c7; + --bs-table-active-color: #000; + --bs-table-hover-bg: #c1d6cc; + --bs-table-hover-color: #000; + color: #000; + border-color: #bcd0c7; +} + +.table-info { + --bs-table-bg: #cff4fc; + --bs-table-striped-bg: #c5e8ef; + --bs-table-striped-color: #000; + --bs-table-active-bg: #badce3; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfe2e9; + --bs-table-hover-color: #000; + color: #000; + border-color: #badce3; +} + +.table-warning { + --bs-table-bg: #fff3cd; + --bs-table-striped-bg: #f2e7c3; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dbb9; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece1be; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dbb9; +} + +.table-danger { + --bs-table-bg: #f8d7da; + --bs-table-striped-bg: #eccccf; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfc2c4; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5c7ca; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfc2c4; +} + +.table-light { + --bs-table-bg: #f8f9fa; + --bs-table-striped-bg: #ecedee; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfe0e1; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5e6e7; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfe0e1; +} + +.table-dark { + --bs-table-bg: #212529; + --bs-table-striped-bg: #2c3034; + --bs-table-striped-color: #fff; + --bs-table-active-bg: #373b3e; + --bs-table-active-color: #fff; + --bs-table-hover-bg: #323539; + --bs-table-hover-color: #fff; + color: #fff; + border-color: #373b3e; +} + +.table-responsive { + overflow-x: auto; + -webkit-overflow-scrolling: touch; +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 767.98px) { + .table-responsive-md { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 991.98px) { + .table-responsive-lg { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 1199.98px) { + .table-responsive-xl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 1399.98px) { + .table-responsive-xxl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +.form-label { + margin-bottom: 0.5rem; +} + +.col-form-label { + padding-top: calc(0.375rem + 1px); + padding-bottom: calc(0.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + 1px); + padding-bottom: calc(0.5rem + 1px); + font-size: 1.25rem; +} + +.col-form-label-sm { + padding-top: calc(0.25rem + 1px); + padding-bottom: calc(0.25rem + 1px); + font-size: 0.875rem; +} + +.form-text { + margin-top: 0.25rem; + font-size: 0.875em; + color: #6c757d; +} + +.form-control { + display: block; + width: 100%; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control { + transition: none; + } +} +.form-control[type=file] { + overflow: hidden; +} +.form-control[type=file]:not(:disabled):not([readonly]) { + cursor: pointer; +} +.form-control:focus { + color: #212529; + background-color: #fff; + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-control::-webkit-date-and-time-value { + height: 1.5em; +} +.form-control::-moz-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control::placeholder { + color: #6c757d; + opacity: 1; +} +.form-control:disabled, .form-control[readonly] { + background-color: #e9ecef; + opacity: 1; +} +.form-control::file-selector-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control::file-selector-button { + transition: none; + } +} +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: #dde0e3; +} +.form-control::-webkit-file-upload-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } +} +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: #dde0e3; +} + +.form-control-plaintext { + display: block; + width: 100%; + padding: 0.375rem 0; + margin-bottom: 0; + line-height: 1.5; + color: #212529; + background-color: transparent; + border: solid transparent; + border-width: 1px 0; +} +.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg { + padding-right: 0; + padding-left: 0; +} + +.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} +.form-control-sm::file-selector-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} +.form-control-sm::-webkit-file-upload-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} + +.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} + +textarea.form-control { + min-height: calc(1.5em + 0.75rem + 2px); +} +textarea.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); +} +textarea.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); +} + +.form-control-color { + max-width: 3rem; + height: auto; + padding: 0.375rem; +} +.form-control-color:not(:disabled):not([readonly]) { + cursor: pointer; +} +.form-control-color::-moz-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} +.form-control-color::-webkit-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} + +.form-select { + display: block; + width: 100%; + padding: 0.375rem 2.25rem 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right 0.75rem center; + background-size: 16px 12px; + border: 1px solid #ced4da; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-select:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-select[multiple], .form-select[size]:not([size="1"]) { + padding-right: 0.75rem; + background-image: none; +} +.form-select:disabled { + background-color: #e9ecef; +} +.form-select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #212529; +} + +.form-select-sm { + padding-top: 0.25rem; + padding-bottom: 0.25rem; + padding-left: 0.5rem; + font-size: 0.875rem; +} + +.form-select-lg { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 1rem; + font-size: 1.25rem; +} + +.form-check { + display: block; + min-height: 1.5rem; + padding-left: 1.5em; + margin-bottom: 0.125rem; +} +.form-check .form-check-input { + float: left; + margin-left: -1.5em; +} + +.form-check-input { + width: 1em; + height: 1em; + margin-top: 0.25em; + vertical-align: top; + background-color: #fff; + background-repeat: no-repeat; + background-position: center; + background-size: contain; + border: 1px solid rgba(0, 0, 0, 0.25); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + -webkit-print-color-adjust: exact; + color-adjust: exact; +} +.form-check-input[type=checkbox] { + border-radius: 0.25em; +} +.form-check-input[type=radio] { + border-radius: 50%; +} +.form-check-input:active { + filter: brightness(90%); +} +.form-check-input:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-check-input:checked { + background-color: #0d6efd; + border-color: #0d6efd; +} +.form-check-input:checked[type=checkbox] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e"); +} +.form-check-input:checked[type=radio] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); +} +.form-check-input[type=checkbox]:indeterminate { + background-color: #0d6efd; + border-color: #0d6efd; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); +} +.form-check-input:disabled { + pointer-events: none; + filter: none; + opacity: 0.5; +} +.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { + opacity: 0.5; +} + +.form-switch { + padding-left: 2.5em; +} +.form-switch .form-check-input { + width: 2em; + margin-left: -2.5em; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); + background-position: left center; + border-radius: 2em; + transition: background-position 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-switch .form-check-input { + transition: none; + } +} +.form-switch .form-check-input:focus { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e"); +} +.form-switch .form-check-input:checked { + background-position: right center; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); +} + +.form-check-inline { + display: inline-block; + margin-right: 1rem; +} + +.btn-check { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.btn-check[disabled] + .btn, .btn-check:disabled + .btn { + pointer-events: none; + filter: none; + opacity: 0.65; +} + +.form-range { + width: 100%; + height: 1.5rem; + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-range:focus { + outline: 0; +} +.form-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-range::-moz-focus-outer { + border: 0; +} +.form-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-webkit-slider-thumb { + -webkit-transition: none; + transition: none; + } +} +.form-range::-webkit-slider-thumb:active { + background-color: #b6d4fe; +} +.form-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} +.form-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-moz-range-thumb { + -moz-transition: none; + transition: none; + } +} +.form-range::-moz-range-thumb:active { + background-color: #b6d4fe; +} +.form-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} +.form-range:disabled { + pointer-events: none; +} +.form-range:disabled::-webkit-slider-thumb { + background-color: #adb5bd; +} +.form-range:disabled::-moz-range-thumb { + background-color: #adb5bd; +} + +.form-floating { + position: relative; +} +.form-floating > .form-control, +.form-floating > .form-select { + height: calc(3.5rem + 2px); + padding: 1rem 0.75rem; +} +.form-floating > label { + position: absolute; + top: 0; + left: 0; + height: 100%; + padding: 1rem 0.75rem; + pointer-events: none; + border: 1px solid transparent; + transform-origin: 0 0; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-floating > label { + transition: none; + } +} +.form-floating > .form-control::-moz-placeholder { + color: transparent; +} +.form-floating > .form-control:-ms-input-placeholder { + color: transparent; +} +.form-floating > .form-control::placeholder { + color: transparent; +} +.form-floating > .form-control:not(:-moz-placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-ms-input-placeholder) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:-webkit-autofill { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-select { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:not(:-ms-input-placeholder) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:focus ~ label, +.form-floating > .form-control:not(:placeholder-shown) ~ label, +.form-floating > .form-select ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:-webkit-autofill ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.input-group { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: stretch; + width: 100%; +} +.input-group > .form-control, +.input-group > .form-select { + position: relative; + flex: 1 1 auto; + width: 1%; + min-width: 0; +} +.input-group > .form-control:focus, +.input-group > .form-select:focus { + z-index: 3; +} +.input-group .btn { + position: relative; + z-index: 2; +} +.input-group .btn:focus { + z-index: 3; +} + +.input-group-text { + display: flex; + align-items: center; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.input-group-lg > .form-control, +.input-group-lg > .form-select, +.input-group-lg > .input-group-text, +.input-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.input-group-sm > .form-control, +.input-group-sm > .form-select, +.input-group-sm > .input-group-text, +.input-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.input-group-lg > .form-select, +.input-group-sm > .form-select { + padding-right: 3rem; +} + +.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), +.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), +.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { + margin-left: -1px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #198754; +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(25, 135, 84, 0.9); + border-radius: 0.25rem; +} + +.was-validated :valid ~ .valid-feedback, +.was-validated :valid ~ .valid-tooltip, +.is-valid ~ .valid-feedback, +.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .form-control:valid, .form-control.is-valid { + border-color: #198754; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.375em + 0.1875rem) center; + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} +.was-validated .form-control:valid:focus, .form-control.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated textarea.form-control:valid, textarea.form-control.is-valid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .form-select:valid, .form-select.is-valid { + border-color: #198754; +} +.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 2.25rem; + background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} +.was-validated .form-select:valid:focus, .form-select.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated .form-check-input:valid, .form-check-input.is-valid { + border-color: #198754; +} +.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked { + background-color: #198754; +} +.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} +.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { + color: #198754; +} + +.form-check-inline .form-check-input ~ .valid-feedback { + margin-left: 0.5em; +} + +.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid, +.was-validated .input-group .form-select:valid, +.input-group .form-select.is-valid { + z-index: 1; +} +.was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus, +.was-validated .input-group .form-select:valid:focus, +.input-group .form-select.is-valid:focus { + z-index: 3; +} + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #dc3545; +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(220, 53, 69, 0.9); + border-radius: 0.25rem; +} + +.was-validated :invalid ~ .invalid-feedback, +.was-validated :invalid ~ .invalid-tooltip, +.is-invalid ~ .invalid-feedback, +.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .form-control:invalid, .form-control.is-invalid { + border-color: #dc3545; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.375em + 0.1875rem) center; + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} +.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .form-select:invalid, .form-select.is-invalid { + border-color: #dc3545; +} +.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 2.25rem; + background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} +.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-check-input:invalid, .form-check-input.is-invalid { + border-color: #dc3545; +} +.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked { + background-color: #dc3545; +} +.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} +.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { + color: #dc3545; +} + +.form-check-inline .form-check-input ~ .invalid-feedback { + margin-left: 0.5em; +} + +.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid, +.was-validated .input-group .form-select:invalid, +.input-group .form-select.is-invalid { + z-index: 2; +} +.was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus, +.was-validated .input-group .form-select:invalid:focus, +.input-group .form-select.is-invalid:focus { + z-index: 3; +} + +.btn { + display: inline-block; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + text-decoration: none; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } +} +.btn:hover { + color: #212529; +} +.btn-check:focus + .btn, .btn:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.btn:disabled, .btn.disabled, fieldset:disabled .btn { + pointer-events: none; + opacity: 0.65; +} + +.btn-primary { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.btn-primary:hover { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; +} +.btn-check:focus + .btn-primary, .btn-primary:focus { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; + box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); +} +.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle { + color: #fff; + background-color: #0a58ca; + border-color: #0a53be; +} +.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); +} +.btn-primary:disabled, .btn-primary.disabled { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-secondary { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} +.btn-secondary:hover { + color: #fff; + background-color: #5c636a; + border-color: #565e64; +} +.btn-check:focus + .btn-secondary, .btn-secondary:focus { + color: #fff; + background-color: #5c636a; + border-color: #565e64; + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} +.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle { + color: #fff; + background-color: #565e64; + border-color: #51585e; +} +.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} +.btn-secondary:disabled, .btn-secondary.disabled { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-success { + color: #fff; + background-color: #198754; + border-color: #198754; +} +.btn-success:hover { + color: #fff; + background-color: #157347; + border-color: #146c43; +} +.btn-check:focus + .btn-success, .btn-success:focus { + color: #fff; + background-color: #157347; + border-color: #146c43; + box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); +} +.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle { + color: #fff; + background-color: #146c43; + border-color: #13653f; +} +.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); +} +.btn-success:disabled, .btn-success.disabled { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-info { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} +.btn-info:hover { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; +} +.btn-check:focus + .btn-info, .btn-info:focus { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; + box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +} +.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle { + color: #000; + background-color: #3dd5f3; + border-color: #25cff2; +} +.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +} +.btn-info:disabled, .btn-info.disabled { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-warning { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} +.btn-warning:hover { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; +} +.btn-check:focus + .btn-warning, .btn-warning:focus { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; + box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +} +.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle { + color: #000; + background-color: #ffcd39; + border-color: #ffc720; +} +.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +} +.btn-warning:disabled, .btn-warning.disabled { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-danger { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} +.btn-danger:hover { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; +} +.btn-check:focus + .btn-danger, .btn-danger:focus { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; + box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); +} +.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle { + color: #fff; + background-color: #b02a37; + border-color: #a52834; +} +.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); +} +.btn-danger:disabled, .btn-danger.disabled { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-light { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-light:hover { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} +.btn-check:focus + .btn-light, .btn-light:focus { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} +.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} +.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} +.btn-light:disabled, .btn-light.disabled { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-dark { + color: #fff; + background-color: #212529; + border-color: #212529; +} +.btn-dark:hover { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; +} +.btn-check:focus + .btn-dark, .btn-dark:focus { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} +.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle { + color: #fff; + background-color: #1a1e21; + border-color: #191c1f; +} +.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} +.btn-dark:disabled, .btn-dark.disabled { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-outline-primary { + color: #0d6efd; + border-color: #0d6efd; +} +.btn-outline-primary:hover { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +} +.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +} +.btn-outline-primary:disabled, .btn-outline-primary.disabled { + color: #0d6efd; + background-color: transparent; +} + +.btn-outline-secondary { + color: #6c757d; + border-color: #6c757d; +} +.btn-outline-secondary:hover { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} +.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} +.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} +.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} +.btn-outline-secondary:disabled, .btn-outline-secondary.disabled { + color: #6c757d; + background-color: transparent; +} + +.btn-outline-success { + color: #198754; + border-color: #198754; +} +.btn-outline-success:hover { + color: #fff; + background-color: #198754; + border-color: #198754; +} +.btn-check:focus + .btn-outline-success, .btn-outline-success:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +} +.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show { + color: #fff; + background-color: #198754; + border-color: #198754; +} +.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +} +.btn-outline-success:disabled, .btn-outline-success.disabled { + color: #198754; + background-color: transparent; +} + +.btn-outline-info { + color: #0dcaf0; + border-color: #0dcaf0; +} +.btn-outline-info:hover { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} +.btn-check:focus + .btn-outline-info, .btn-outline-info:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +} +.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} +.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +} +.btn-outline-info:disabled, .btn-outline-info.disabled { + color: #0dcaf0; + background-color: transparent; +} + +.btn-outline-warning { + color: #ffc107; + border-color: #ffc107; +} +.btn-outline-warning:hover { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} +.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +} +.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} +.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +} +.btn-outline-warning:disabled, .btn-outline-warning.disabled { + color: #ffc107; + background-color: transparent; +} + +.btn-outline-danger { + color: #dc3545; + border-color: #dc3545; +} +.btn-outline-danger:hover { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} +.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +} +.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} +.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +} +.btn-outline-danger:disabled, .btn-outline-danger.disabled { + color: #dc3545; + background-color: transparent; +} + +.btn-outline-light { + color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-outline-light:hover { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-check:focus + .btn-outline-light, .btn-outline-light:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} +.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} +.btn-outline-light:disabled, .btn-outline-light.disabled { + color: #f8f9fa; + background-color: transparent; +} + +.btn-outline-dark { + color: #212529; + border-color: #212529; +} +.btn-outline-dark:hover { + color: #fff; + background-color: #212529; + border-color: #212529; +} +.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +} +.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show { + color: #fff; + background-color: #212529; + border-color: #212529; +} +.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +} +.btn-outline-dark:disabled, .btn-outline-dark.disabled { + color: #212529; + background-color: transparent; +} + +.btn-link { + font-weight: 400; + color: #0d6efd; + text-decoration: underline; +} +.btn-link:hover { + color: #0a58ca; +} +.btn-link:disabled, .btn-link.disabled { + color: #6c757d; +} + +.btn-lg, .btn-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.btn-sm, .btn-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.fade { + transition: opacity 0.15s linear; +} +@media (prefers-reduced-motion: reduce) { + .fade { + transition: none; + } +} +.fade:not(.show) { + opacity: 0; +} + +.collapse:not(.show) { + display: none; +} + +.collapsing { + height: 0; + overflow: hidden; + transition: height 0.35s ease; +} +@media (prefers-reduced-motion: reduce) { + .collapsing { + transition: none; + } +} + +.dropup, +.dropend, +.dropdown, +.dropstart { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; +} +.dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid; + border-right: 0.3em solid transparent; + border-bottom: 0; + border-left: 0.3em solid transparent; +} +.dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropdown-menu { + position: absolute; + z-index: 1000; + display: none; + min-width: 10rem; + padding: 0.5rem 0; + margin: 0; + font-size: 1rem; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} +.dropdown-menu[data-bs-popper] { + top: 100%; + left: 0; + margin-top: 0.125rem; +} + +.dropdown-menu-start { + --bs-position: start; +} +.dropdown-menu-start[data-bs-popper] { + right: auto /* rtl:ignore */; + left: 0 /* rtl:ignore */; +} + +.dropdown-menu-end { + --bs-position: end; +} +.dropdown-menu-end[data-bs-popper] { + right: 0 /* rtl:ignore */; + left: auto /* rtl:ignore */; +} + +@media (min-width: 576px) { + .dropdown-menu-sm-start { + --bs-position: start; + } + .dropdown-menu-sm-start[data-bs-popper] { + right: auto /* rtl:ignore */; + left: 0 /* rtl:ignore */; + } + + .dropdown-menu-sm-end { + --bs-position: end; + } + .dropdown-menu-sm-end[data-bs-popper] { + right: 0 /* rtl:ignore */; + left: auto /* rtl:ignore */; + } +} +@media (min-width: 768px) { + .dropdown-menu-md-start { + --bs-position: start; + } + .dropdown-menu-md-start[data-bs-popper] { + right: auto /* rtl:ignore */; + left: 0 /* rtl:ignore */; + } + + .dropdown-menu-md-end { + --bs-position: end; + } + .dropdown-menu-md-end[data-bs-popper] { + right: 0 /* rtl:ignore */; + left: auto /* rtl:ignore */; + } +} +@media (min-width: 992px) { + .dropdown-menu-lg-start { + --bs-position: start; + } + .dropdown-menu-lg-start[data-bs-popper] { + right: auto /* rtl:ignore */; + left: 0 /* rtl:ignore */; + } + + .dropdown-menu-lg-end { + --bs-position: end; + } + .dropdown-menu-lg-end[data-bs-popper] { + right: 0 /* rtl:ignore */; + left: auto /* rtl:ignore */; + } +} +@media (min-width: 1200px) { + .dropdown-menu-xl-start { + --bs-position: start; + } + .dropdown-menu-xl-start[data-bs-popper] { + right: auto /* rtl:ignore */; + left: 0 /* rtl:ignore */; + } + + .dropdown-menu-xl-end { + --bs-position: end; + } + .dropdown-menu-xl-end[data-bs-popper] { + right: 0 /* rtl:ignore */; + left: auto /* rtl:ignore */; + } +} +@media (min-width: 1400px) { + .dropdown-menu-xxl-start { + --bs-position: start; + } + .dropdown-menu-xxl-start[data-bs-popper] { + right: auto /* rtl:ignore */; + left: 0 /* rtl:ignore */; + } + + .dropdown-menu-xxl-end { + --bs-position: end; + } + .dropdown-menu-xxl-end[data-bs-popper] { + right: 0 /* rtl:ignore */; + left: auto /* rtl:ignore */; + } +} +.dropup .dropdown-menu[data-bs-popper] { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: 0.125rem; +} +.dropup .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0; + border-right: 0.3em solid transparent; + border-bottom: 0.3em solid; + border-left: 0.3em solid transparent; +} +.dropup .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropend .dropdown-menu[data-bs-popper] { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: 0.125rem; +} +.dropend .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0; + border-bottom: 0.3em solid transparent; + border-left: 0.3em solid; +} +.dropend .dropdown-toggle:empty::after { + margin-left: 0; +} +.dropend .dropdown-toggle::after { + vertical-align: 0; +} + +.dropstart .dropdown-menu[data-bs-popper] { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: 0.125rem; +} +.dropstart .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; +} +.dropstart .dropdown-toggle::after { + display: none; +} +.dropstart .dropdown-toggle::before { + display: inline-block; + margin-right: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0.3em solid; + border-bottom: 0.3em solid transparent; +} +.dropstart .dropdown-toggle:empty::after { + margin-left: 0; +} +.dropstart .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-divider { + height: 0; + margin: 0.5rem 0; + overflow: hidden; + border-top: 1px solid rgba(0, 0, 0, 0.15); +} + +.dropdown-item { + display: block; + width: 100%; + padding: 0.25rem 1rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + text-decoration: none; + white-space: nowrap; + background-color: transparent; + border: 0; +} +.dropdown-item:hover, .dropdown-item:focus { + color: #1e2125; + background-color: #e9ecef; +} +.dropdown-item.active, .dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #0d6efd; +} +.dropdown-item.disabled, .dropdown-item:disabled { + color: #adb5bd; + pointer-events: none; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 0.875rem; + color: #6c757d; + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: 0.25rem 1rem; + color: #212529; +} + +.dropdown-menu-dark { + color: #dee2e6; + background-color: #343a40; + border-color: rgba(0, 0, 0, 0.15); +} +.dropdown-menu-dark .dropdown-item { + color: #dee2e6; +} +.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus { + color: #fff; + background-color: rgba(255, 255, 255, 0.15); +} +.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active { + color: #fff; + background-color: #0d6efd; +} +.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled { + color: #adb5bd; +} +.dropdown-menu-dark .dropdown-divider { + border-color: rgba(0, 0, 0, 0.15); +} +.dropdown-menu-dark .dropdown-item-text { + color: #dee2e6; +} +.dropdown-menu-dark .dropdown-header { + color: #adb5bd; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-flex; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + flex: 1 1 auto; +} +.btn-group > .btn-check:checked + .btn, +.btn-group > .btn-check:focus + .btn, +.btn-group > .btn:hover, +.btn-group > .btn:focus, +.btn-group > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn-check:checked + .btn, +.btn-group-vertical > .btn-check:focus + .btn, +.btn-group-vertical > .btn:hover, +.btn-group-vertical > .btn:focus, +.btn-group-vertical > .btn:active, +.btn-group-vertical > .btn.active { + z-index: 1; +} + +.btn-toolbar { + display: flex; + flex-wrap: wrap; + justify-content: flex-start; +} +.btn-toolbar .input-group { + width: auto; +} + +.btn-group > .btn:not(:first-child), +.btn-group > .btn-group:not(:first-child) { + margin-left: -1px; +} +.btn-group > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:nth-child(n+3), +.btn-group > :not(.btn-check) + .btn, +.btn-group > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.dropdown-toggle-split { + padding-right: 0.5625rem; + padding-left: 0.5625rem; +} +.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after { + margin-left: 0; +} +.dropstart .dropdown-toggle-split::before { + margin-right: 0; +} + +.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split { + padding-right: 0.375rem; + padding-left: 0.375rem; +} + +.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { + padding-right: 0.75rem; + padding-left: 0.75rem; +} + +.btn-group-vertical { + flex-direction: column; + align-items: flex-start; + justify-content: center; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group { + width: 100%; +} +.btn-group-vertical > .btn:not(:first-child), +.btn-group-vertical > .btn-group:not(:first-child) { + margin-top: -1px; +} +.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn ~ .btn, +.btn-group-vertical > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav { + display: flex; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: 0.5rem 1rem; + color: #0d6efd; + text-decoration: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .nav-link { + transition: none; + } +} +.nav-link:hover, .nav-link:focus { + color: #0a58ca; +} +.nav-link.disabled { + color: #6c757d; + pointer-events: none; + cursor: default; +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6; +} +.nav-tabs .nav-link { + margin-bottom: -1px; + background: none; + border: 1px solid transparent; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} +.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; + isolation: isolate; +} +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent; +} +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav-pills .nav-link { + background: none; + border: 0; + border-radius: 0.25rem; +} +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + color: #fff; + background-color: #0d6efd; +} + +.nav-fill > .nav-link, +.nav-fill .nav-item { + flex: 1 1 auto; + text-align: center; +} + +.nav-justified > .nav-link, +.nav-justified .nav-item { + flex-basis: 0; + flex-grow: 1; + text-align: center; +} + +.nav-fill .nav-item .nav-link, +.nav-justified .nav-item .nav-link { + width: 100%; +} + +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} + +.navbar { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} +.navbar > .container, +.navbar > .container-fluid, +.navbar > .container-sm, +.navbar > .container-md, +.navbar > .container-lg, +.navbar > .container-xl, +.navbar > .container-xxl { + display: flex; + flex-wrap: inherit; + align-items: center; + justify-content: space-between; +} +.navbar-brand { + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; + margin-right: 1rem; + font-size: 1.25rem; + text-decoration: none; + white-space: nowrap; +} +.navbar-nav { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0; +} +.navbar-nav .dropdown-menu { + position: static; +} + +.navbar-text { + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar-collapse { + flex-basis: 100%; + flex-grow: 1; + align-items: center; +} + +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; + transition: box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .navbar-toggler { + transition: none; + } +} +.navbar-toggler:hover { + text-decoration: none; +} +.navbar-toggler:focus { + text-decoration: none; + outline: 0; + box-shadow: 0 0 0 0.25rem; +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + background-repeat: no-repeat; + background-position: center; + background-size: 100%; +} + +.navbar-nav-scroll { + max-height: var(--bs-scroll-height, 75vh); + overflow-y: auto; +} + +@media (min-width: 576px) { + .navbar-expand-sm { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-sm .navbar-nav { + flex-direction: row; + } + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-sm .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-sm .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + .navbar-expand-sm .navbar-toggler { + display: none; + } +} +@media (min-width: 768px) { + .navbar-expand-md { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-md .navbar-nav { + flex-direction: row; + } + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-md .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-md .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + .navbar-expand-md .navbar-toggler { + display: none; + } +} +@media (min-width: 992px) { + .navbar-expand-lg { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-lg .navbar-nav { + flex-direction: row; + } + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-lg .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-lg .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + .navbar-expand-lg .navbar-toggler { + display: none; + } +} +@media (min-width: 1200px) { + .navbar-expand-xl { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-xl .navbar-nav { + flex-direction: row; + } + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xl .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-xl .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + .navbar-expand-xl .navbar-toggler { + display: none; + } +} +@media (min-width: 1400px) { + .navbar-expand-xxl { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-xxl .navbar-nav { + flex-direction: row; + } + .navbar-expand-xxl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xxl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xxl .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-xxl .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + .navbar-expand-xxl .navbar-toggler { + display: none; + } +} +.navbar-expand { + flex-wrap: nowrap; + justify-content: flex-start; +} +.navbar-expand .navbar-nav { + flex-direction: row; +} +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} +.navbar-expand .navbar-nav-scroll { + overflow: visible; +} +.navbar-expand .navbar-collapse { + display: flex !important; + flex-basis: auto; +} +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.55); +} +.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} +.navbar-light .navbar-nav .show > .nav-link, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.55); + border-color: rgba(0, 0, 0, 0.1); +} +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.55); +} +.navbar-light .navbar-text a, +.navbar-light .navbar-text a:hover, +.navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} +.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { + color: #fff; +} +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.55); +} +.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} +.navbar-dark .navbar-nav .show > .nav-link, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1); +} +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.55); +} +.navbar-dark .navbar-text a, +.navbar-dark .navbar-text a:hover, +.navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} +.card > hr { + margin-right: 0; + margin-left: 0; +} +.card > .list-group { + border-top: inherit; + border-bottom: inherit; +} +.card > .list-group:first-child { + border-top-width: 0; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.card > .list-group:last-child { + border-bottom-width: 0; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} +.card > .card-header + .list-group, +.card > .list-group + .card-footer { + border-top: 0; +} + +.card-body { + flex: 1 1 auto; + padding: 1rem 1rem; +} + +.card-title { + margin-bottom: 0.5rem; +} + +.card-subtitle { + margin-top: -0.25rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} +.card-link + .card-link { + margin-left: 1rem; +} + +.card-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-footer { + padding: 0.5rem 1rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.card-header-tabs { + margin-right: -0.5rem; + margin-bottom: -0.5rem; + margin-left: -0.5rem; + border-bottom: 0; +} + +.card-header-pills { + margin-right: -0.5rem; + margin-left: -0.5rem; +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1rem; + border-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; +} + +.card-img, +.card-img-top { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-bottom { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-group > .card { + margin-bottom: 0.75rem; +} +@media (min-width: 576px) { + .card-group { + display: flex; + flex-flow: row wrap; + } + .card-group > .card { + flex: 1 0 0%; + margin-bottom: 0; + } + .card-group > .card + .card { + margin-left: 0; + border-left: 0; + } + .card-group > .card:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-top, +.card-group > .card:not(:last-child) .card-header { + border-top-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-bottom, +.card-group > .card:not(:last-child) .card-footer { + border-bottom-right-radius: 0; + } + .card-group > .card:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-top, +.card-group > .card:not(:first-child) .card-header { + border-top-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-bottom, +.card-group > .card:not(:first-child) .card-footer { + border-bottom-left-radius: 0; + } +} + +.accordion-button { + position: relative; + display: flex; + align-items: center; + width: 100%; + padding: 1rem 1.25rem; + font-size: 1rem; + color: #212529; + text-align: left; + background-color: #fff; + border: 0; + border-radius: 0; + overflow-anchor: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; +} +@media (prefers-reduced-motion: reduce) { + .accordion-button { + transition: none; + } +} +.accordion-button:not(.collapsed) { + color: #0c63e4; + background-color: #e7f1ff; + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125); +} +.accordion-button:not(.collapsed)::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + transform: rotate(-180deg); +} +.accordion-button::after { + flex-shrink: 0; + width: 1.25rem; + height: 1.25rem; + margin-left: auto; + content: ""; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-size: 1.25rem; + transition: transform 0.2s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .accordion-button::after { + transition: none; + } +} +.accordion-button:hover { + z-index: 2; +} +.accordion-button:focus { + z-index: 3; + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item { + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} +.accordion-item:first-of-type { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} +.accordion-item:first-of-type .accordion-button { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.accordion-item:not(:first-of-type) { + border-top: 0; +} +.accordion-item:last-of-type { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} +.accordion-item:last-of-type .accordion-collapse { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-body { + padding: 1rem 1.25rem; +} + +.accordion-flush .accordion-collapse { + border-width: 0; +} +.accordion-flush .accordion-item { + border-right: 0; + border-left: 0; + border-radius: 0; +} +.accordion-flush .accordion-item:first-child { + border-top: 0; +} +.accordion-flush .accordion-item:last-child { + border-bottom: 0; +} +.accordion-flush .accordion-item .accordion-button { + border-radius: 0; +} + +.breadcrumb { + display: flex; + flex-wrap: wrap; + padding: 0 0; + margin-bottom: 1rem; + list-style: none; +} + +.breadcrumb-item + .breadcrumb-item { + padding-left: 0.5rem; +} +.breadcrumb-item + .breadcrumb-item::before { + float: left; + padding-right: 0.5rem; + color: #6c757d; + content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */; +} +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: flex; + padding-left: 0; + list-style: none; +} + +.page-link { + position: relative; + display: block; + color: #0d6efd; + text-decoration: none; + background-color: #fff; + border: 1px solid #dee2e6; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .page-link { + transition: none; + } +} +.page-link:hover { + z-index: 2; + color: #0a58ca; + background-color: #e9ecef; + border-color: #dee2e6; +} +.page-link:focus { + z-index: 3; + color: #0a58ca; + background-color: #e9ecef; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.page-item:not(:first-child) .page-link { + margin-left: -1px; +} +.page-item.active .page-link { + z-index: 3; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + background-color: #fff; + border-color: #dee2e6; +} + +.page-link { + padding: 0.375rem 0.75rem; +} + +.page-item:first-child .page-link { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; +} +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; +} +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.35em 0.65em; + font-size: 0.75em; + font-weight: 700; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; +} +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.alert { + position: relative; + padding: 1rem 1rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; +} + +.alert-dismissible { + padding-right: 3rem; +} +.alert-dismissible .btn-close { + position: absolute; + top: 0; + right: 0; + z-index: 2; + padding: 1.25rem 1rem; +} + +.alert-primary { + color: #084298; + background-color: #cfe2ff; + border-color: #b6d4fe; +} +.alert-primary .alert-link { + color: #06357a; +} + +.alert-secondary { + color: #41464b; + background-color: #e2e3e5; + border-color: #d3d6d8; +} +.alert-secondary .alert-link { + color: #34383c; +} + +.alert-success { + color: #0f5132; + background-color: #d1e7dd; + border-color: #badbcc; +} +.alert-success .alert-link { + color: #0c4128; +} + +.alert-info { + color: #055160; + background-color: #cff4fc; + border-color: #b6effb; +} +.alert-info .alert-link { + color: #04414d; +} + +.alert-warning { + color: #664d03; + background-color: #fff3cd; + border-color: #ffecb5; +} +.alert-warning .alert-link { + color: #523e02; +} + +.alert-danger { + color: #842029; + background-color: #f8d7da; + border-color: #f5c2c7; +} +.alert-danger .alert-link { + color: #6a1a21; +} + +.alert-light { + color: #636464; + background-color: #fefefe; + border-color: #fdfdfe; +} +.alert-light .alert-link { + color: #4f5050; +} + +.alert-dark { + color: #141619; + background-color: #d3d3d4; + border-color: #bcbebf; +} +.alert-dark .alert-link { + color: #101214; +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} +.progress { + display: flex; + height: 1rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: flex; + flex-direction: column; + justify-content: center; + overflow: hidden; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #0d6efd; + transition: width 0.6s ease; +} +@media (prefers-reduced-motion: reduce) { + .progress-bar { + transition: none; + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem; +} + +.progress-bar-animated { + -webkit-animation: 1s linear infinite progress-bar-stripes; + animation: 1s linear infinite progress-bar-stripes; +} +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + -webkit-animation: none; + animation: none; + } +} + +.list-group { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + border-radius: 0.25rem; +} + +.list-group-numbered { + list-style-type: none; + counter-reset: section; +} +.list-group-numbered > li::before { + content: counters(section, ".") ". "; + counter-increment: section; +} + +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit; +} +.list-group-item-action:hover, .list-group-item-action:focus { + z-index: 1; + color: #495057; + text-decoration: none; + background-color: #f8f9fa; +} +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; +} + +.list-group-item { + position: relative; + display: block; + padding: 0.5rem 1rem; + color: #212529; + text-decoration: none; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} +.list-group-item:first-child { + border-top-left-radius: inherit; + border-top-right-radius: inherit; +} +.list-group-item:last-child { + border-bottom-right-radius: inherit; + border-bottom-left-radius: inherit; +} +.list-group-item.disabled, .list-group-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: #fff; +} +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.list-group-item + .list-group-item { + border-top-width: 0; +} +.list-group-item + .list-group-item.active { + margin-top: -1px; + border-top-width: 1px; +} + +.list-group-horizontal { + flex-direction: row; +} +.list-group-horizontal > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; +} +.list-group-horizontal > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; +} +.list-group-horizontal > .list-group-item.active { + margin-top: 0; +} +.list-group-horizontal > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; +} +.list-group-horizontal > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; +} + +@media (min-width: 576px) { + .list-group-horizontal-sm { + flex-direction: row; + } + .list-group-horizontal-sm > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-sm > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-sm > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-sm > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-sm > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 768px) { + .list-group-horizontal-md { + flex-direction: row; + } + .list-group-horizontal-md > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-md > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-md > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-md > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-md > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 992px) { + .list-group-horizontal-lg { + flex-direction: row; + } + .list-group-horizontal-lg > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-lg > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-lg > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-lg > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-lg > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 1200px) { + .list-group-horizontal-xl { + flex-direction: row; + } + .list-group-horizontal-xl > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-xl > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-xl > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-xl > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-xl > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 1400px) { + .list-group-horizontal-xxl { + flex-direction: row; + } + .list-group-horizontal-xxl > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-xxl > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-xxl > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-xxl > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-xxl > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +.list-group-flush { + border-radius: 0; +} +.list-group-flush > .list-group-item { + border-width: 0 0 1px; +} +.list-group-flush > .list-group-item:last-child { + border-bottom-width: 0; +} + +.list-group-item-primary { + color: #084298; + background-color: #cfe2ff; +} +.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { + color: #084298; + background-color: #bacbe6; +} +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #084298; + border-color: #084298; +} + +.list-group-item-secondary { + color: #41464b; + background-color: #e2e3e5; +} +.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus { + color: #41464b; + background-color: #cbccce; +} +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #41464b; + border-color: #41464b; +} + +.list-group-item-success { + color: #0f5132; + background-color: #d1e7dd; +} +.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { + color: #0f5132; + background-color: #bcd0c7; +} +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #0f5132; + border-color: #0f5132; +} + +.list-group-item-info { + color: #055160; + background-color: #cff4fc; +} +.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { + color: #055160; + background-color: #badce3; +} +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #055160; + border-color: #055160; +} + +.list-group-item-warning { + color: #664d03; + background-color: #fff3cd; +} +.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { + color: #664d03; + background-color: #e6dbb9; +} +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #664d03; + border-color: #664d03; +} + +.list-group-item-danger { + color: #842029; + background-color: #f8d7da; +} +.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { + color: #842029; + background-color: #dfc2c4; +} +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #842029; + border-color: #842029; +} + +.list-group-item-light { + color: #636464; + background-color: #fefefe; +} +.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus { + color: #636464; + background-color: #e5e5e5; +} +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #636464; + border-color: #636464; +} + +.list-group-item-dark { + color: #141619; + background-color: #d3d3d4; +} +.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus { + color: #141619; + background-color: #bebebf; +} +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #141619; + border-color: #141619; +} + +.btn-close { + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.25em; + color: #000; + background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat; + border: 0; + border-radius: 0.25rem; + opacity: 0.5; +} +.btn-close:hover { + color: #000; + text-decoration: none; + opacity: 0.75; +} +.btn-close:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + opacity: 1; +} +.btn-close:disabled, .btn-close.disabled { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + opacity: 0.25; +} + +.btn-close-white { + filter: invert(1) grayscale(100%) brightness(200%); +} + +.toast { + width: 350px; + max-width: 100%; + font-size: 0.875rem; + pointer-events: auto; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} +.toast:not(.showing):not(.show) { + opacity: 0; +} +.toast.hide { + display: none; +} + +.toast-container { + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + max-width: 100%; + pointer-events: none; +} +.toast-container > :not(:last-child) { + margin-bottom: 0.75rem; +} + +.toast-header { + display: flex; + align-items: center; + padding: 0.5rem 0.75rem; + color: #6c757d; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.toast-header .btn-close { + margin-right: -0.375rem; + margin-left: 0.75rem; +} + +.toast-body { + padding: 0.75rem; + word-wrap: break-word; +} + +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1060; + display: none; + width: 100%; + height: 100%; + overflow-x: hidden; + overflow-y: auto; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; +} +.modal.fade .modal-dialog { + transition: transform 0.3s ease-out; + transform: translate(0, -50px); +} +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } +} +.modal.show .modal-dialog { + transform: none; +} +.modal.modal-static .modal-dialog { + transform: scale(1.02); +} + +.modal-dialog-scrollable { + height: calc(100% - 1rem); +} +.modal-dialog-scrollable .modal-content { + max-height: 100%; + overflow: hidden; +} +.modal-dialog-scrollable .modal-body { + overflow-y: auto; +} + +.modal-dialog-centered { + display: flex; + align-items: center; + min-height: calc(100% - 1rem); +} + +.modal-content { + position: relative; + display: flex; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; +} + +.modal-backdrop { + position: fixed; + top: 0; + left: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000; +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop.show { + opacity: 0.5; +} + +.modal-header { + display: flex; + flex-shrink: 0; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} +.modal-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5; +} + +.modal-body { + position: relative; + flex: 1 1 auto; + padding: 1rem; +} + +.modal-footer { + display: flex; + flex-wrap: wrap; + flex-shrink: 0; + align-items: center; + justify-content: flex-end; + padding: 0.75rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: calc(0.3rem - 1px); + border-bottom-left-radius: calc(0.3rem - 1px); +} +.modal-footer > * { + margin: 0.25rem; +} + +@media (min-width: 576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto; + } + + .modal-dialog-scrollable { + height: calc(100% - 3.5rem); + } + + .modal-dialog-centered { + min-height: calc(100% - 3.5rem); + } + + .modal-sm { + max-width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg, +.modal-xl { + max-width: 800px; + } +} +@media (min-width: 1200px) { + .modal-xl { + max-width: 1140px; + } +} +.modal-fullscreen { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; +} +.modal-fullscreen .modal-content { + height: 100%; + border: 0; + border-radius: 0; +} +.modal-fullscreen .modal-header { + border-radius: 0; +} +.modal-fullscreen .modal-body { + overflow-y: auto; +} +.modal-fullscreen .modal-footer { + border-radius: 0; +} + +@media (max-width: 575.98px) { + .modal-fullscreen-sm-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-sm-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-sm-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 767.98px) { + .modal-fullscreen-md-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-md-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-md-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-md-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-md-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 991.98px) { + .modal-fullscreen-lg-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-lg-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-lg-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 1199.98px) { + .modal-fullscreen-xl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-xl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-xl-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 1399.98px) { + .modal-fullscreen-xxl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-xxl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-xxl-down .modal-footer { + border-radius: 0; + } +} +.tooltip { + position: absolute; + z-index: 1080; + display: block; + margin: 0; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + opacity: 0; +} +.tooltip.show { + opacity: 0.9; +} +.tooltip .tooltip-arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.4rem; +} +.tooltip .tooltip-arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^=top] { + padding: 0.4rem 0; +} +.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow { + bottom: 0; +} +.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before { + top: -1px; + border-width: 0.4rem 0.4rem 0; + border-top-color: #000; +} + +.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] { + padding: 0 0.4rem; +} +.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; +} +.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { + right: -1px; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; +} + +.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] { + padding: 0.4rem 0; +} +.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow { + top: 0; +} +.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before { + bottom: -1px; + border-width: 0 0.4rem 0.4rem; + border-bottom-color: #000; +} + +.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] { + padding: 0 0.4rem; +} +.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; +} +.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { + left: -1px; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; +} + +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 0.25rem; +} + +.popover { + position: absolute; + top: 0; + left: 0 /* rtl:ignore */; + z-index: 1070; + display: block; + max-width: 276px; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; +} +.popover .popover-arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.5rem; +} +.popover .popover-arrow::before, .popover .popover-arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow { + bottom: calc(-0.5rem - 1px); +} +.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before { + bottom: 0; + border-width: 0.5rem 0.5rem 0; + border-top-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after { + bottom: 1px; + border-width: 0.5rem 0.5rem 0; + border-top-color: #fff; +} + +.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow { + left: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; +} +.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before { + left: 0; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after { + left: 1px; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: #fff; +} + +.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow { + top: calc(-0.5rem - 1px); +} +.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before { + top: 0; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after { + top: 1px; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: #fff; +} +.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -0.5rem; + content: ""; + border-bottom: 1px solid #f0f0f0; +} + +.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow { + right: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; +} +.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before { + right: 0; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after { + right: 1px; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: #fff; +} + +.popover-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 1rem; + background-color: #f0f0f0; + border-bottom: 1px solid #d8d8d8; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} +.popover-header:empty { + display: none; +} + +.popover-body { + padding: 1rem 1rem; + color: #212529; +} + +.carousel { + position: relative; +} + +.carousel.pointer-event { + touch-action: pan-y; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner::after { + display: block; + clear: both; + content: ""; +} + +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transition: transform 0.6s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none; + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +/* rtl:begin:ignore */ +.carousel-item-next:not(.carousel-item-start), +.active.carousel-item-end { + transform: translateX(100%); +} + +.carousel-item-prev:not(.carousel-item-end), +.active.carousel-item-start { + transform: translateX(-100%); +} + +/* rtl:end:ignore */ +.carousel-fade .carousel-item { + opacity: 0; + transition-property: opacity; + transform: none; +} +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-start, +.carousel-fade .carousel-item-prev.carousel-item-end { + z-index: 1; + opacity: 1; +} +.carousel-fade .active.carousel-item-start, +.carousel-fade .active.carousel-item-end { + z-index: 0; + opacity: 0; + transition: opacity 0s 0.6s; +} +@media (prefers-reduced-motion: reduce) { + .carousel-fade .active.carousel-item-start, +.carousel-fade .active.carousel-item-end { + transition: none; + } +} + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + z-index: 1; + display: flex; + align-items: center; + justify-content: center; + width: 15%; + padding: 0; + color: #fff; + text-align: center; + background: none; + border: 0; + opacity: 0.5; + transition: opacity 0.15s ease; +} +@media (prefers-reduced-motion: reduce) { + .carousel-control-prev, +.carousel-control-next { + transition: none; + } +} +.carousel-control-prev:hover, .carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: 0.9; +} + +.carousel-control-prev { + left: 0; +} + +.carousel-control-next { + right: 0; +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 2rem; + height: 2rem; + background-repeat: no-repeat; + background-position: 50%; + background-size: 100% 100%; +} + +/* rtl:options: { + "autoRename": true, + "stringMap":[ { + "name" : "prev-next", + "search" : "prev", + "replace" : "next" + } ] +} */ +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e"); +} + +.carousel-control-next-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); +} + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + display: flex; + justify-content: center; + padding: 0; + margin-right: 15%; + margin-bottom: 1rem; + margin-left: 15%; + list-style: none; +} +.carousel-indicators [data-bs-target] { + box-sizing: content-box; + flex: 0 1 auto; + width: 30px; + height: 3px; + padding: 0; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border: 0; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: 0.5; + transition: opacity 0.6s ease; +} +@media (prefers-reduced-motion: reduce) { + .carousel-indicators [data-bs-target] { + transition: none; + } +} +.carousel-indicators .active { + opacity: 1; +} + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 1.25rem; + left: 15%; + padding-top: 1.25rem; + padding-bottom: 1.25rem; + color: #fff; + text-align: center; +} + +.carousel-dark .carousel-control-prev-icon, +.carousel-dark .carousel-control-next-icon { + filter: invert(1) grayscale(100); +} +.carousel-dark .carousel-indicators [data-bs-target] { + background-color: #000; +} +.carousel-dark .carousel-caption { + color: #000; +} + +@-webkit-keyframes spinner-border { + to { + transform: rotate(360deg) /* rtl:ignore */; + } +} + +@keyframes spinner-border { + to { + transform: rotate(360deg) /* rtl:ignore */; + } +} +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + border: 0.25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + -webkit-animation: 0.75s linear infinite spinner-border; + animation: 0.75s linear infinite spinner-border; +} + +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: 0.2em; +} + +@-webkit-keyframes spinner-grow { + 0% { + transform: scale(0); + } + 50% { + opacity: 1; + transform: none; + } +} + +@keyframes spinner-grow { + 0% { + transform: scale(0); + } + 50% { + opacity: 1; + transform: none; + } +} +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + -webkit-animation: 0.75s linear infinite spinner-grow; + animation: 0.75s linear infinite spinner-grow; +} + +.spinner-grow-sm { + width: 1rem; + height: 1rem; +} + +@media (prefers-reduced-motion: reduce) { + .spinner-border, +.spinner-grow { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; + } +} +.offcanvas { + position: fixed; + bottom: 0; + z-index: 1050; + display: flex; + flex-direction: column; + max-width: 100%; + visibility: hidden; + background-color: #fff; + background-clip: padding-box; + outline: 0; + transition: transform 0.3s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .offcanvas { + transition: none; + } +} + +.offcanvas-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; +} +.offcanvas-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.offcanvas-title { + margin-bottom: 0; + line-height: 1.5; +} + +.offcanvas-body { + flex-grow: 1; + padding: 1rem 1rem; + overflow-y: auto; +} + +.offcanvas-start { + top: 0; + left: 0; + width: 400px; + border-right: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(-100%); +} + +.offcanvas-end { + top: 0; + right: 0; + width: 400px; + border-left: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(100%); +} + +.offcanvas-top { + top: 0; + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(-100%); +} + +.offcanvas-bottom { + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-top: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(100%); +} + +.offcanvas.show { + transform: none; +} + +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.link-primary { + color: #0d6efd; +} +.link-primary:hover, .link-primary:focus { + color: #0a58ca; +} + +.link-secondary { + color: #6c757d; +} +.link-secondary:hover, .link-secondary:focus { + color: #565e64; +} + +.link-success { + color: #198754; +} +.link-success:hover, .link-success:focus { + color: #146c43; +} + +.link-info { + color: #0dcaf0; +} +.link-info:hover, .link-info:focus { + color: #3dd5f3; +} + +.link-warning { + color: #ffc107; +} +.link-warning:hover, .link-warning:focus { + color: #ffcd39; +} + +.link-danger { + color: #dc3545; +} +.link-danger:hover, .link-danger:focus { + color: #b02a37; +} + +.link-light { + color: #f8f9fa; +} +.link-light:hover, .link-light:focus { + color: #f9fafb; +} + +.link-dark { + color: #212529; +} +.link-dark:hover, .link-dark:focus { + color: #1a1e21; +} + +.ratio { + position: relative; + width: 100%; +} +.ratio::before { + display: block; + padding-top: var(--bs-aspect-ratio); + content: ""; +} +.ratio > * { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} + +.ratio-1x1 { + --bs-aspect-ratio: 100%; +} + +.ratio-4x3 { + --bs-aspect-ratio: calc(3 / 4 * 100%); +} + +.ratio-16x9 { + --bs-aspect-ratio: calc(9 / 16 * 100%); +} + +.ratio-21x9 { + --bs-aspect-ratio: calc(9 / 21 * 100%); +} + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; +} + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; +} + +.sticky-top { + position: sticky; + top: 0; + z-index: 1020; +} + +@media (min-width: 576px) { + .sticky-sm-top { + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 768px) { + .sticky-md-top { + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 992px) { + .sticky-lg-top { + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 1200px) { + .sticky-xl-top { + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 1400px) { + .sticky-xxl-top { + position: sticky; + top: 0; + z-index: 1020; + } +} +.visually-hidden, +.visually-hidden-focusable:not(:focus):not(:focus-within) { + position: absolute !important; + width: 1px !important; + height: 1px !important; + padding: 0 !important; + margin: -1px !important; + overflow: hidden !important; + clip: rect(0, 0, 0, 0) !important; + white-space: nowrap !important; + border: 0 !important; +} + +.stretched-link::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1; + content: ""; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.float-start { + float: left !important; +} + +.float-end { + float: right !important; +} + +.float-none { + float: none !important; +} + +.overflow-auto { + overflow: auto !important; +} + +.overflow-hidden { + overflow: hidden !important; +} + +.overflow-visible { + overflow: visible !important; +} + +.overflow-scroll { + overflow: scroll !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-grid { + display: grid !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: flex !important; +} + +.d-inline-flex { + display: inline-flex !important; +} + +.d-none { + display: none !important; +} + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; +} + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; +} + +.shadow-none { + box-shadow: none !important; +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: sticky !important; +} + +.top-0 { + top: 0 !important; +} + +.top-50 { + top: 50% !important; +} + +.top-100 { + top: 100% !important; +} + +.bottom-0 { + bottom: 0 !important; +} + +.bottom-50 { + bottom: 50% !important; +} + +.bottom-100 { + bottom: 100% !important; +} + +.start-0 { + left: 0 !important; +} + +.start-50 { + left: 50% !important; +} + +.start-100 { + left: 100% !important; +} + +.end-0 { + right: 0 !important; +} + +.end-50 { + right: 50% !important; +} + +.end-100 { + right: 100% !important; +} + +.translate-middle { + transform: translate(-50%, -50%) !important; +} + +.translate-middle-x { + transform: translateX(-50%) !important; +} + +.translate-middle-y { + transform: translateY(-50%) !important; +} + +.border { + border: 1px solid #dee2e6 !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top { + border-top: 1px solid #dee2e6 !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-end { + border-right: 1px solid #dee2e6 !important; +} + +.border-end-0 { + border-right: 0 !important; +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-start { + border-left: 1px solid #dee2e6 !important; +} + +.border-start-0 { + border-left: 0 !important; +} + +.border-primary { + border-color: #0d6efd !important; +} + +.border-secondary { + border-color: #6c757d !important; +} + +.border-success { + border-color: #198754 !important; +} + +.border-info { + border-color: #0dcaf0 !important; +} + +.border-warning { + border-color: #ffc107 !important; +} + +.border-danger { + border-color: #dc3545 !important; +} + +.border-light { + border-color: #f8f9fa !important; +} + +.border-dark { + border-color: #212529 !important; +} + +.border-white { + border-color: #fff !important; +} + +.border-1 { + border-width: 1px !important; +} + +.border-2 { + border-width: 2px !important; +} + +.border-3 { + border-width: 3px !important; +} + +.border-4 { + border-width: 4px !important; +} + +.border-5 { + border-width: 5px !important; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.vw-100 { + width: 100vw !important; +} + +.min-vw-100 { + min-width: 100vw !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.vh-100 { + height: 100vh !important; +} + +.min-vh-100 { + min-height: 100vh !important; +} + +.flex-fill { + flex: 1 1 auto !important; +} + +.flex-row { + flex-direction: row !important; +} + +.flex-column { + flex-direction: column !important; +} + +.flex-row-reverse { + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + flex-direction: column-reverse !important; +} + +.flex-grow-0 { + flex-grow: 0 !important; +} + +.flex-grow-1 { + flex-grow: 1 !important; +} + +.flex-shrink-0 { + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + flex-shrink: 1 !important; +} + +.flex-wrap { + flex-wrap: wrap !important; +} + +.flex-nowrap { + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important; +} + +.gap-0 { + gap: 0 !important; +} + +.gap-1 { + gap: 0.25rem !important; +} + +.gap-2 { + gap: 0.5rem !important; +} + +.gap-3 { + gap: 1rem !important; +} + +.gap-4 { + gap: 1.5rem !important; +} + +.gap-5 { + gap: 3rem !important; +} + +.justify-content-start { + justify-content: flex-start !important; +} + +.justify-content-end { + justify-content: flex-end !important; +} + +.justify-content-center { + justify-content: center !important; +} + +.justify-content-between { + justify-content: space-between !important; +} + +.justify-content-around { + justify-content: space-around !important; +} + +.justify-content-evenly { + justify-content: space-evenly !important; +} + +.align-items-start { + align-items: flex-start !important; +} + +.align-items-end { + align-items: flex-end !important; +} + +.align-items-center { + align-items: center !important; +} + +.align-items-baseline { + align-items: baseline !important; +} + +.align-items-stretch { + align-items: stretch !important; +} + +.align-content-start { + align-content: flex-start !important; +} + +.align-content-end { + align-content: flex-end !important; +} + +.align-content-center { + align-content: center !important; +} + +.align-content-between { + align-content: space-between !important; +} + +.align-content-around { + align-content: space-around !important; +} + +.align-content-stretch { + align-content: stretch !important; +} + +.align-self-auto { + align-self: auto !important; +} + +.align-self-start { + align-self: flex-start !important; +} + +.align-self-end { + align-self: flex-end !important; +} + +.align-self-center { + align-self: center !important; +} + +.align-self-baseline { + align-self: baseline !important; +} + +.align-self-stretch { + align-self: stretch !important; +} + +.order-first { + order: -1 !important; +} + +.order-0 { + order: 0 !important; +} + +.order-1 { + order: 1 !important; +} + +.order-2 { + order: 2 !important; +} + +.order-3 { + order: 3 !important; +} + +.order-4 { + order: 4 !important; +} + +.order-5 { + order: 5 !important; +} + +.order-last { + order: 6 !important; +} + +.m-0 { + margin: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.m-3 { + margin: 1rem !important; +} + +.m-4 { + margin: 1.5rem !important; +} + +.m-5 { + margin: 3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mx-0 { + margin-right: 0 !important; + margin-left: 0 !important; +} + +.mx-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; +} + +.mx-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; +} + +.mx-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; +} + +.mx-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; +} + +.mx-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; +} + +.mx-auto { + margin-right: auto !important; + margin-left: auto !important; +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.my-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; +} + +.my-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; +} + +.my-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; +} + +.my-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; +} + +.my-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; +} + +.mt-0 { + margin-top: 0 !important; +} + +.mt-1 { + margin-top: 0.25rem !important; +} + +.mt-2 { + margin-top: 0.5rem !important; +} + +.mt-3 { + margin-top: 1rem !important; +} + +.mt-4 { + margin-top: 1.5rem !important; +} + +.mt-5 { + margin-top: 3rem !important; +} + +.mt-auto { + margin-top: auto !important; +} + +.me-0 { + margin-right: 0 !important; +} + +.me-1 { + margin-right: 0.25rem !important; +} + +.me-2 { + margin-right: 0.5rem !important; +} + +.me-3 { + margin-right: 1rem !important; +} + +.me-4 { + margin-right: 1.5rem !important; +} + +.me-5 { + margin-right: 3rem !important; +} + +.me-auto { + margin-right: auto !important; +} + +.mb-0 { + margin-bottom: 0 !important; +} + +.mb-1 { + margin-bottom: 0.25rem !important; +} + +.mb-2 { + margin-bottom: 0.5rem !important; +} + +.mb-3 { + margin-bottom: 1rem !important; +} + +.mb-4 { + margin-bottom: 1.5rem !important; +} + +.mb-5 { + margin-bottom: 3rem !important; +} + +.mb-auto { + margin-bottom: auto !important; +} + +.ms-0 { + margin-left: 0 !important; +} + +.ms-1 { + margin-left: 0.25rem !important; +} + +.ms-2 { + margin-left: 0.5rem !important; +} + +.ms-3 { + margin-left: 1rem !important; +} + +.ms-4 { + margin-left: 1.5rem !important; +} + +.ms-5 { + margin-left: 3rem !important; +} + +.ms-auto { + margin-left: auto !important; +} + +.p-0 { + padding: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.p-3 { + padding: 1rem !important; +} + +.p-4 { + padding: 1.5rem !important; +} + +.p-5 { + padding: 3rem !important; +} + +.px-0 { + padding-right: 0 !important; + padding-left: 0 !important; +} + +.px-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; +} + +.px-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; +} + +.px-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; +} + +.px-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; +} + +.px-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; +} + +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + +.py-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; +} + +.py-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; +} + +.py-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; +} + +.py-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; +} + +.py-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; +} + +.pt-0 { + padding-top: 0 !important; +} + +.pt-1 { + padding-top: 0.25rem !important; +} + +.pt-2 { + padding-top: 0.5rem !important; +} + +.pt-3 { + padding-top: 1rem !important; +} + +.pt-4 { + padding-top: 1.5rem !important; +} + +.pt-5 { + padding-top: 3rem !important; +} + +.pe-0 { + padding-right: 0 !important; +} + +.pe-1 { + padding-right: 0.25rem !important; +} + +.pe-2 { + padding-right: 0.5rem !important; +} + +.pe-3 { + padding-right: 1rem !important; +} + +.pe-4 { + padding-right: 1.5rem !important; +} + +.pe-5 { + padding-right: 3rem !important; +} + +.pb-0 { + padding-bottom: 0 !important; +} + +.pb-1 { + padding-bottom: 0.25rem !important; +} + +.pb-2 { + padding-bottom: 0.5rem !important; +} + +.pb-3 { + padding-bottom: 1rem !important; +} + +.pb-4 { + padding-bottom: 1.5rem !important; +} + +.pb-5 { + padding-bottom: 3rem !important; +} + +.ps-0 { + padding-left: 0 !important; +} + +.ps-1 { + padding-left: 0.25rem !important; +} + +.ps-2 { + padding-left: 0.5rem !important; +} + +.ps-3 { + padding-left: 1rem !important; +} + +.ps-4 { + padding-left: 1.5rem !important; +} + +.ps-5 { + padding-left: 3rem !important; +} + +.font-monospace { + font-family: var(--bs-font-monospace) !important; +} + +.fs-1 { + font-size: calc(1.375rem + 1.5vw) !important; +} + +.fs-2 { + font-size: calc(1.325rem + 0.9vw) !important; +} + +.fs-3 { + font-size: calc(1.3rem + 0.6vw) !important; +} + +.fs-4 { + font-size: calc(1.275rem + 0.3vw) !important; +} + +.fs-5 { + font-size: 1.25rem !important; +} + +.fs-6 { + font-size: 1rem !important; +} + +.fst-italic { + font-style: italic !important; +} + +.fst-normal { + font-style: normal !important; +} + +.fw-light { + font-weight: 300 !important; +} + +.fw-lighter { + font-weight: lighter !important; +} + +.fw-normal { + font-weight: 400 !important; +} + +.fw-bold { + font-weight: 700 !important; +} + +.fw-bolder { + font-weight: bolder !important; +} + +.lh-1 { + line-height: 1 !important; +} + +.lh-sm { + line-height: 1.25 !important; +} + +.lh-base { + line-height: 1.5 !important; +} + +.lh-lg { + line-height: 2 !important; +} + +.text-start { + text-align: left !important; +} + +.text-end { + text-align: right !important; +} + +.text-center { + text-align: center !important; +} + +.text-decoration-none { + text-decoration: none !important; +} + +.text-decoration-underline { + text-decoration: underline !important; +} + +.text-decoration-line-through { + text-decoration: line-through !important; +} + +.text-lowercase { + text-transform: lowercase !important; +} + +.text-uppercase { + text-transform: uppercase !important; +} + +.text-capitalize { + text-transform: capitalize !important; +} + +.text-wrap { + white-space: normal !important; +} + +.text-nowrap { + white-space: nowrap !important; +} + +/* rtl:begin:remove */ +.text-break { + word-wrap: break-word !important; + word-break: break-word !important; +} + +/* rtl:end:remove */ +.text-primary { + color: #0d6efd !important; +} + +.text-secondary { + color: #6c757d !important; +} + +.text-success { + color: #198754 !important; +} + +.text-info { + color: #0dcaf0 !important; +} + +.text-warning { + color: #ffc107 !important; +} + +.text-danger { + color: #dc3545 !important; +} + +.text-light { + color: #f8f9fa !important; +} + +.text-dark { + color: #212529 !important; +} + +.text-white { + color: #fff !important; +} + +.text-body { + color: #212529 !important; +} + +.text-muted { + color: #6c757d !important; +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-reset { + color: inherit !important; +} + +.bg-primary { + background-color: #0d6efd !important; +} + +.bg-secondary { + background-color: #6c757d !important; +} + +.bg-success { + background-color: #198754 !important; +} + +.bg-info { + background-color: #0dcaf0 !important; +} + +.bg-warning { + background-color: #ffc107 !important; +} + +.bg-danger { + background-color: #dc3545 !important; +} + +.bg-light { + background-color: #f8f9fa !important; +} + +.bg-dark { + background-color: #212529 !important; +} + +.bg-body { + background-color: #fff !important; +} + +.bg-white { + background-color: #fff !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.bg-gradient { + background-image: var(--bs-gradient) !important; +} + +.user-select-all { + -webkit-user-select: all !important; + -moz-user-select: all !important; + user-select: all !important; +} + +.user-select-auto { + -webkit-user-select: auto !important; + -moz-user-select: auto !important; + -ms-user-select: auto !important; + user-select: auto !important; +} + +.user-select-none { + -webkit-user-select: none !important; + -moz-user-select: none !important; + -ms-user-select: none !important; + user-select: none !important; +} + +.pe-none { + pointer-events: none !important; +} + +.pe-auto { + pointer-events: auto !important; +} + +.rounded { + border-radius: 0.25rem !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.rounded-1 { + border-radius: 0.2rem !important; +} + +.rounded-2 { + border-radius: 0.25rem !important; +} + +.rounded-3 { + border-radius: 0.3rem !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-pill { + border-radius: 50rem !important; +} + +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} + +.rounded-end { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} + +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-start { + border-bottom-left-radius: 0.25rem !important; + border-top-left-radius: 0.25rem !important; +} + +.visible { + visibility: visible !important; +} + +.invisible { + visibility: hidden !important; +} + +@media (min-width: 576px) { + .float-sm-start { + float: left !important; + } + + .float-sm-end { + float: right !important; + } + + .float-sm-none { + float: none !important; + } + + .d-sm-inline { + display: inline !important; + } + + .d-sm-inline-block { + display: inline-block !important; + } + + .d-sm-block { + display: block !important; + } + + .d-sm-grid { + display: grid !important; + } + + .d-sm-table { + display: table !important; + } + + .d-sm-table-row { + display: table-row !important; + } + + .d-sm-table-cell { + display: table-cell !important; + } + + .d-sm-flex { + display: flex !important; + } + + .d-sm-inline-flex { + display: inline-flex !important; + } + + .d-sm-none { + display: none !important; + } + + .flex-sm-fill { + flex: 1 1 auto !important; + } + + .flex-sm-row { + flex-direction: row !important; + } + + .flex-sm-column { + flex-direction: column !important; + } + + .flex-sm-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-sm-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-sm-grow-0 { + flex-grow: 0 !important; + } + + .flex-sm-grow-1 { + flex-grow: 1 !important; + } + + .flex-sm-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-sm-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-sm-wrap { + flex-wrap: wrap !important; + } + + .flex-sm-nowrap { + flex-wrap: nowrap !important; + } + + .flex-sm-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-sm-0 { + gap: 0 !important; + } + + .gap-sm-1 { + gap: 0.25rem !important; + } + + .gap-sm-2 { + gap: 0.5rem !important; + } + + .gap-sm-3 { + gap: 1rem !important; + } + + .gap-sm-4 { + gap: 1.5rem !important; + } + + .gap-sm-5 { + gap: 3rem !important; + } + + .justify-content-sm-start { + justify-content: flex-start !important; + } + + .justify-content-sm-end { + justify-content: flex-end !important; + } + + .justify-content-sm-center { + justify-content: center !important; + } + + .justify-content-sm-between { + justify-content: space-between !important; + } + + .justify-content-sm-around { + justify-content: space-around !important; + } + + .justify-content-sm-evenly { + justify-content: space-evenly !important; + } + + .align-items-sm-start { + align-items: flex-start !important; + } + + .align-items-sm-end { + align-items: flex-end !important; + } + + .align-items-sm-center { + align-items: center !important; + } + + .align-items-sm-baseline { + align-items: baseline !important; + } + + .align-items-sm-stretch { + align-items: stretch !important; + } + + .align-content-sm-start { + align-content: flex-start !important; + } + + .align-content-sm-end { + align-content: flex-end !important; + } + + .align-content-sm-center { + align-content: center !important; + } + + .align-content-sm-between { + align-content: space-between !important; + } + + .align-content-sm-around { + align-content: space-around !important; + } + + .align-content-sm-stretch { + align-content: stretch !important; + } + + .align-self-sm-auto { + align-self: auto !important; + } + + .align-self-sm-start { + align-self: flex-start !important; + } + + .align-self-sm-end { + align-self: flex-end !important; + } + + .align-self-sm-center { + align-self: center !important; + } + + .align-self-sm-baseline { + align-self: baseline !important; + } + + .align-self-sm-stretch { + align-self: stretch !important; + } + + .order-sm-first { + order: -1 !important; + } + + .order-sm-0 { + order: 0 !important; + } + + .order-sm-1 { + order: 1 !important; + } + + .order-sm-2 { + order: 2 !important; + } + + .order-sm-3 { + order: 3 !important; + } + + .order-sm-4 { + order: 4 !important; + } + + .order-sm-5 { + order: 5 !important; + } + + .order-sm-last { + order: 6 !important; + } + + .m-sm-0 { + margin: 0 !important; + } + + .m-sm-1 { + margin: 0.25rem !important; + } + + .m-sm-2 { + margin: 0.5rem !important; + } + + .m-sm-3 { + margin: 1rem !important; + } + + .m-sm-4 { + margin: 1.5rem !important; + } + + .m-sm-5 { + margin: 3rem !important; + } + + .m-sm-auto { + margin: auto !important; + } + + .mx-sm-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-sm-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-sm-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-sm-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-sm-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-sm-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-sm-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-sm-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-sm-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-sm-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-sm-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-sm-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-sm-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-sm-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-sm-0 { + margin-top: 0 !important; + } + + .mt-sm-1 { + margin-top: 0.25rem !important; + } + + .mt-sm-2 { + margin-top: 0.5rem !important; + } + + .mt-sm-3 { + margin-top: 1rem !important; + } + + .mt-sm-4 { + margin-top: 1.5rem !important; + } + + .mt-sm-5 { + margin-top: 3rem !important; + } + + .mt-sm-auto { + margin-top: auto !important; + } + + .me-sm-0 { + margin-right: 0 !important; + } + + .me-sm-1 { + margin-right: 0.25rem !important; + } + + .me-sm-2 { + margin-right: 0.5rem !important; + } + + .me-sm-3 { + margin-right: 1rem !important; + } + + .me-sm-4 { + margin-right: 1.5rem !important; + } + + .me-sm-5 { + margin-right: 3rem !important; + } + + .me-sm-auto { + margin-right: auto !important; + } + + .mb-sm-0 { + margin-bottom: 0 !important; + } + + .mb-sm-1 { + margin-bottom: 0.25rem !important; + } + + .mb-sm-2 { + margin-bottom: 0.5rem !important; + } + + .mb-sm-3 { + margin-bottom: 1rem !important; + } + + .mb-sm-4 { + margin-bottom: 1.5rem !important; + } + + .mb-sm-5 { + margin-bottom: 3rem !important; + } + + .mb-sm-auto { + margin-bottom: auto !important; + } + + .ms-sm-0 { + margin-left: 0 !important; + } + + .ms-sm-1 { + margin-left: 0.25rem !important; + } + + .ms-sm-2 { + margin-left: 0.5rem !important; + } + + .ms-sm-3 { + margin-left: 1rem !important; + } + + .ms-sm-4 { + margin-left: 1.5rem !important; + } + + .ms-sm-5 { + margin-left: 3rem !important; + } + + .ms-sm-auto { + margin-left: auto !important; + } + + .p-sm-0 { + padding: 0 !important; + } + + .p-sm-1 { + padding: 0.25rem !important; + } + + .p-sm-2 { + padding: 0.5rem !important; + } + + .p-sm-3 { + padding: 1rem !important; + } + + .p-sm-4 { + padding: 1.5rem !important; + } + + .p-sm-5 { + padding: 3rem !important; + } + + .px-sm-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-sm-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-sm-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-sm-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-sm-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-sm-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-sm-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-sm-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-sm-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-sm-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-sm-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-sm-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-sm-0 { + padding-top: 0 !important; + } + + .pt-sm-1 { + padding-top: 0.25rem !important; + } + + .pt-sm-2 { + padding-top: 0.5rem !important; + } + + .pt-sm-3 { + padding-top: 1rem !important; + } + + .pt-sm-4 { + padding-top: 1.5rem !important; + } + + .pt-sm-5 { + padding-top: 3rem !important; + } + + .pe-sm-0 { + padding-right: 0 !important; + } + + .pe-sm-1 { + padding-right: 0.25rem !important; + } + + .pe-sm-2 { + padding-right: 0.5rem !important; + } + + .pe-sm-3 { + padding-right: 1rem !important; + } + + .pe-sm-4 { + padding-right: 1.5rem !important; + } + + .pe-sm-5 { + padding-right: 3rem !important; + } + + .pb-sm-0 { + padding-bottom: 0 !important; + } + + .pb-sm-1 { + padding-bottom: 0.25rem !important; + } + + .pb-sm-2 { + padding-bottom: 0.5rem !important; + } + + .pb-sm-3 { + padding-bottom: 1rem !important; + } + + .pb-sm-4 { + padding-bottom: 1.5rem !important; + } + + .pb-sm-5 { + padding-bottom: 3rem !important; + } + + .ps-sm-0 { + padding-left: 0 !important; + } + + .ps-sm-1 { + padding-left: 0.25rem !important; + } + + .ps-sm-2 { + padding-left: 0.5rem !important; + } + + .ps-sm-3 { + padding-left: 1rem !important; + } + + .ps-sm-4 { + padding-left: 1.5rem !important; + } + + .ps-sm-5 { + padding-left: 3rem !important; + } + + .text-sm-start { + text-align: left !important; + } + + .text-sm-end { + text-align: right !important; + } + + .text-sm-center { + text-align: center !important; + } +} +@media (min-width: 768px) { + .float-md-start { + float: left !important; + } + + .float-md-end { + float: right !important; + } + + .float-md-none { + float: none !important; + } + + .d-md-inline { + display: inline !important; + } + + .d-md-inline-block { + display: inline-block !important; + } + + .d-md-block { + display: block !important; + } + + .d-md-grid { + display: grid !important; + } + + .d-md-table { + display: table !important; + } + + .d-md-table-row { + display: table-row !important; + } + + .d-md-table-cell { + display: table-cell !important; + } + + .d-md-flex { + display: flex !important; + } + + .d-md-inline-flex { + display: inline-flex !important; + } + + .d-md-none { + display: none !important; + } + + .flex-md-fill { + flex: 1 1 auto !important; + } + + .flex-md-row { + flex-direction: row !important; + } + + .flex-md-column { + flex-direction: column !important; + } + + .flex-md-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-md-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-md-grow-0 { + flex-grow: 0 !important; + } + + .flex-md-grow-1 { + flex-grow: 1 !important; + } + + .flex-md-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-md-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-md-wrap { + flex-wrap: wrap !important; + } + + .flex-md-nowrap { + flex-wrap: nowrap !important; + } + + .flex-md-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-md-0 { + gap: 0 !important; + } + + .gap-md-1 { + gap: 0.25rem !important; + } + + .gap-md-2 { + gap: 0.5rem !important; + } + + .gap-md-3 { + gap: 1rem !important; + } + + .gap-md-4 { + gap: 1.5rem !important; + } + + .gap-md-5 { + gap: 3rem !important; + } + + .justify-content-md-start { + justify-content: flex-start !important; + } + + .justify-content-md-end { + justify-content: flex-end !important; + } + + .justify-content-md-center { + justify-content: center !important; + } + + .justify-content-md-between { + justify-content: space-between !important; + } + + .justify-content-md-around { + justify-content: space-around !important; + } + + .justify-content-md-evenly { + justify-content: space-evenly !important; + } + + .align-items-md-start { + align-items: flex-start !important; + } + + .align-items-md-end { + align-items: flex-end !important; + } + + .align-items-md-center { + align-items: center !important; + } + + .align-items-md-baseline { + align-items: baseline !important; + } + + .align-items-md-stretch { + align-items: stretch !important; + } + + .align-content-md-start { + align-content: flex-start !important; + } + + .align-content-md-end { + align-content: flex-end !important; + } + + .align-content-md-center { + align-content: center !important; + } + + .align-content-md-between { + align-content: space-between !important; + } + + .align-content-md-around { + align-content: space-around !important; + } + + .align-content-md-stretch { + align-content: stretch !important; + } + + .align-self-md-auto { + align-self: auto !important; + } + + .align-self-md-start { + align-self: flex-start !important; + } + + .align-self-md-end { + align-self: flex-end !important; + } + + .align-self-md-center { + align-self: center !important; + } + + .align-self-md-baseline { + align-self: baseline !important; + } + + .align-self-md-stretch { + align-self: stretch !important; + } + + .order-md-first { + order: -1 !important; + } + + .order-md-0 { + order: 0 !important; + } + + .order-md-1 { + order: 1 !important; + } + + .order-md-2 { + order: 2 !important; + } + + .order-md-3 { + order: 3 !important; + } + + .order-md-4 { + order: 4 !important; + } + + .order-md-5 { + order: 5 !important; + } + + .order-md-last { + order: 6 !important; + } + + .m-md-0 { + margin: 0 !important; + } + + .m-md-1 { + margin: 0.25rem !important; + } + + .m-md-2 { + margin: 0.5rem !important; + } + + .m-md-3 { + margin: 1rem !important; + } + + .m-md-4 { + margin: 1.5rem !important; + } + + .m-md-5 { + margin: 3rem !important; + } + + .m-md-auto { + margin: auto !important; + } + + .mx-md-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-md-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-md-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-md-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-md-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-md-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-md-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-md-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-md-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-md-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-md-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-md-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-md-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-md-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-md-0 { + margin-top: 0 !important; + } + + .mt-md-1 { + margin-top: 0.25rem !important; + } + + .mt-md-2 { + margin-top: 0.5rem !important; + } + + .mt-md-3 { + margin-top: 1rem !important; + } + + .mt-md-4 { + margin-top: 1.5rem !important; + } + + .mt-md-5 { + margin-top: 3rem !important; + } + + .mt-md-auto { + margin-top: auto !important; + } + + .me-md-0 { + margin-right: 0 !important; + } + + .me-md-1 { + margin-right: 0.25rem !important; + } + + .me-md-2 { + margin-right: 0.5rem !important; + } + + .me-md-3 { + margin-right: 1rem !important; + } + + .me-md-4 { + margin-right: 1.5rem !important; + } + + .me-md-5 { + margin-right: 3rem !important; + } + + .me-md-auto { + margin-right: auto !important; + } + + .mb-md-0 { + margin-bottom: 0 !important; + } + + .mb-md-1 { + margin-bottom: 0.25rem !important; + } + + .mb-md-2 { + margin-bottom: 0.5rem !important; + } + + .mb-md-3 { + margin-bottom: 1rem !important; + } + + .mb-md-4 { + margin-bottom: 1.5rem !important; + } + + .mb-md-5 { + margin-bottom: 3rem !important; + } + + .mb-md-auto { + margin-bottom: auto !important; + } + + .ms-md-0 { + margin-left: 0 !important; + } + + .ms-md-1 { + margin-left: 0.25rem !important; + } + + .ms-md-2 { + margin-left: 0.5rem !important; + } + + .ms-md-3 { + margin-left: 1rem !important; + } + + .ms-md-4 { + margin-left: 1.5rem !important; + } + + .ms-md-5 { + margin-left: 3rem !important; + } + + .ms-md-auto { + margin-left: auto !important; + } + + .p-md-0 { + padding: 0 !important; + } + + .p-md-1 { + padding: 0.25rem !important; + } + + .p-md-2 { + padding: 0.5rem !important; + } + + .p-md-3 { + padding: 1rem !important; + } + + .p-md-4 { + padding: 1.5rem !important; + } + + .p-md-5 { + padding: 3rem !important; + } + + .px-md-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-md-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-md-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-md-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-md-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-md-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-md-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-md-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-md-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-md-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-md-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-md-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-md-0 { + padding-top: 0 !important; + } + + .pt-md-1 { + padding-top: 0.25rem !important; + } + + .pt-md-2 { + padding-top: 0.5rem !important; + } + + .pt-md-3 { + padding-top: 1rem !important; + } + + .pt-md-4 { + padding-top: 1.5rem !important; + } + + .pt-md-5 { + padding-top: 3rem !important; + } + + .pe-md-0 { + padding-right: 0 !important; + } + + .pe-md-1 { + padding-right: 0.25rem !important; + } + + .pe-md-2 { + padding-right: 0.5rem !important; + } + + .pe-md-3 { + padding-right: 1rem !important; + } + + .pe-md-4 { + padding-right: 1.5rem !important; + } + + .pe-md-5 { + padding-right: 3rem !important; + } + + .pb-md-0 { + padding-bottom: 0 !important; + } + + .pb-md-1 { + padding-bottom: 0.25rem !important; + } + + .pb-md-2 { + padding-bottom: 0.5rem !important; + } + + .pb-md-3 { + padding-bottom: 1rem !important; + } + + .pb-md-4 { + padding-bottom: 1.5rem !important; + } + + .pb-md-5 { + padding-bottom: 3rem !important; + } + + .ps-md-0 { + padding-left: 0 !important; + } + + .ps-md-1 { + padding-left: 0.25rem !important; + } + + .ps-md-2 { + padding-left: 0.5rem !important; + } + + .ps-md-3 { + padding-left: 1rem !important; + } + + .ps-md-4 { + padding-left: 1.5rem !important; + } + + .ps-md-5 { + padding-left: 3rem !important; + } + + .text-md-start { + text-align: left !important; + } + + .text-md-end { + text-align: right !important; + } + + .text-md-center { + text-align: center !important; + } +} +@media (min-width: 992px) { + .float-lg-start { + float: left !important; + } + + .float-lg-end { + float: right !important; + } + + .float-lg-none { + float: none !important; + } + + .d-lg-inline { + display: inline !important; + } + + .d-lg-inline-block { + display: inline-block !important; + } + + .d-lg-block { + display: block !important; + } + + .d-lg-grid { + display: grid !important; + } + + .d-lg-table { + display: table !important; + } + + .d-lg-table-row { + display: table-row !important; + } + + .d-lg-table-cell { + display: table-cell !important; + } + + .d-lg-flex { + display: flex !important; + } + + .d-lg-inline-flex { + display: inline-flex !important; + } + + .d-lg-none { + display: none !important; + } + + .flex-lg-fill { + flex: 1 1 auto !important; + } + + .flex-lg-row { + flex-direction: row !important; + } + + .flex-lg-column { + flex-direction: column !important; + } + + .flex-lg-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-lg-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-lg-grow-0 { + flex-grow: 0 !important; + } + + .flex-lg-grow-1 { + flex-grow: 1 !important; + } + + .flex-lg-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-lg-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-lg-wrap { + flex-wrap: wrap !important; + } + + .flex-lg-nowrap { + flex-wrap: nowrap !important; + } + + .flex-lg-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-lg-0 { + gap: 0 !important; + } + + .gap-lg-1 { + gap: 0.25rem !important; + } + + .gap-lg-2 { + gap: 0.5rem !important; + } + + .gap-lg-3 { + gap: 1rem !important; + } + + .gap-lg-4 { + gap: 1.5rem !important; + } + + .gap-lg-5 { + gap: 3rem !important; + } + + .justify-content-lg-start { + justify-content: flex-start !important; + } + + .justify-content-lg-end { + justify-content: flex-end !important; + } + + .justify-content-lg-center { + justify-content: center !important; + } + + .justify-content-lg-between { + justify-content: space-between !important; + } + + .justify-content-lg-around { + justify-content: space-around !important; + } + + .justify-content-lg-evenly { + justify-content: space-evenly !important; + } + + .align-items-lg-start { + align-items: flex-start !important; + } + + .align-items-lg-end { + align-items: flex-end !important; + } + + .align-items-lg-center { + align-items: center !important; + } + + .align-items-lg-baseline { + align-items: baseline !important; + } + + .align-items-lg-stretch { + align-items: stretch !important; + } + + .align-content-lg-start { + align-content: flex-start !important; + } + + .align-content-lg-end { + align-content: flex-end !important; + } + + .align-content-lg-center { + align-content: center !important; + } + + .align-content-lg-between { + align-content: space-between !important; + } + + .align-content-lg-around { + align-content: space-around !important; + } + + .align-content-lg-stretch { + align-content: stretch !important; + } + + .align-self-lg-auto { + align-self: auto !important; + } + + .align-self-lg-start { + align-self: flex-start !important; + } + + .align-self-lg-end { + align-self: flex-end !important; + } + + .align-self-lg-center { + align-self: center !important; + } + + .align-self-lg-baseline { + align-self: baseline !important; + } + + .align-self-lg-stretch { + align-self: stretch !important; + } + + .order-lg-first { + order: -1 !important; + } + + .order-lg-0 { + order: 0 !important; + } + + .order-lg-1 { + order: 1 !important; + } + + .order-lg-2 { + order: 2 !important; + } + + .order-lg-3 { + order: 3 !important; + } + + .order-lg-4 { + order: 4 !important; + } + + .order-lg-5 { + order: 5 !important; + } + + .order-lg-last { + order: 6 !important; + } + + .m-lg-0 { + margin: 0 !important; + } + + .m-lg-1 { + margin: 0.25rem !important; + } + + .m-lg-2 { + margin: 0.5rem !important; + } + + .m-lg-3 { + margin: 1rem !important; + } + + .m-lg-4 { + margin: 1.5rem !important; + } + + .m-lg-5 { + margin: 3rem !important; + } + + .m-lg-auto { + margin: auto !important; + } + + .mx-lg-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-lg-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-lg-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-lg-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-lg-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-lg-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-lg-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-lg-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-lg-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-lg-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-lg-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-lg-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-lg-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-lg-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-lg-0 { + margin-top: 0 !important; + } + + .mt-lg-1 { + margin-top: 0.25rem !important; + } + + .mt-lg-2 { + margin-top: 0.5rem !important; + } + + .mt-lg-3 { + margin-top: 1rem !important; + } + + .mt-lg-4 { + margin-top: 1.5rem !important; + } + + .mt-lg-5 { + margin-top: 3rem !important; + } + + .mt-lg-auto { + margin-top: auto !important; + } + + .me-lg-0 { + margin-right: 0 !important; + } + + .me-lg-1 { + margin-right: 0.25rem !important; + } + + .me-lg-2 { + margin-right: 0.5rem !important; + } + + .me-lg-3 { + margin-right: 1rem !important; + } + + .me-lg-4 { + margin-right: 1.5rem !important; + } + + .me-lg-5 { + margin-right: 3rem !important; + } + + .me-lg-auto { + margin-right: auto !important; + } + + .mb-lg-0 { + margin-bottom: 0 !important; + } + + .mb-lg-1 { + margin-bottom: 0.25rem !important; + } + + .mb-lg-2 { + margin-bottom: 0.5rem !important; + } + + .mb-lg-3 { + margin-bottom: 1rem !important; + } + + .mb-lg-4 { + margin-bottom: 1.5rem !important; + } + + .mb-lg-5 { + margin-bottom: 3rem !important; + } + + .mb-lg-auto { + margin-bottom: auto !important; + } + + .ms-lg-0 { + margin-left: 0 !important; + } + + .ms-lg-1 { + margin-left: 0.25rem !important; + } + + .ms-lg-2 { + margin-left: 0.5rem !important; + } + + .ms-lg-3 { + margin-left: 1rem !important; + } + + .ms-lg-4 { + margin-left: 1.5rem !important; + } + + .ms-lg-5 { + margin-left: 3rem !important; + } + + .ms-lg-auto { + margin-left: auto !important; + } + + .p-lg-0 { + padding: 0 !important; + } + + .p-lg-1 { + padding: 0.25rem !important; + } + + .p-lg-2 { + padding: 0.5rem !important; + } + + .p-lg-3 { + padding: 1rem !important; + } + + .p-lg-4 { + padding: 1.5rem !important; + } + + .p-lg-5 { + padding: 3rem !important; + } + + .px-lg-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-lg-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-lg-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-lg-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-lg-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-lg-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-lg-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-lg-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-lg-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-lg-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-lg-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-lg-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-lg-0 { + padding-top: 0 !important; + } + + .pt-lg-1 { + padding-top: 0.25rem !important; + } + + .pt-lg-2 { + padding-top: 0.5rem !important; + } + + .pt-lg-3 { + padding-top: 1rem !important; + } + + .pt-lg-4 { + padding-top: 1.5rem !important; + } + + .pt-lg-5 { + padding-top: 3rem !important; + } + + .pe-lg-0 { + padding-right: 0 !important; + } + + .pe-lg-1 { + padding-right: 0.25rem !important; + } + + .pe-lg-2 { + padding-right: 0.5rem !important; + } + + .pe-lg-3 { + padding-right: 1rem !important; + } + + .pe-lg-4 { + padding-right: 1.5rem !important; + } + + .pe-lg-5 { + padding-right: 3rem !important; + } + + .pb-lg-0 { + padding-bottom: 0 !important; + } + + .pb-lg-1 { + padding-bottom: 0.25rem !important; + } + + .pb-lg-2 { + padding-bottom: 0.5rem !important; + } + + .pb-lg-3 { + padding-bottom: 1rem !important; + } + + .pb-lg-4 { + padding-bottom: 1.5rem !important; + } + + .pb-lg-5 { + padding-bottom: 3rem !important; + } + + .ps-lg-0 { + padding-left: 0 !important; + } + + .ps-lg-1 { + padding-left: 0.25rem !important; + } + + .ps-lg-2 { + padding-left: 0.5rem !important; + } + + .ps-lg-3 { + padding-left: 1rem !important; + } + + .ps-lg-4 { + padding-left: 1.5rem !important; + } + + .ps-lg-5 { + padding-left: 3rem !important; + } + + .text-lg-start { + text-align: left !important; + } + + .text-lg-end { + text-align: right !important; + } + + .text-lg-center { + text-align: center !important; + } +} +@media (min-width: 1200px) { + .float-xl-start { + float: left !important; + } + + .float-xl-end { + float: right !important; + } + + .float-xl-none { + float: none !important; + } + + .d-xl-inline { + display: inline !important; + } + + .d-xl-inline-block { + display: inline-block !important; + } + + .d-xl-block { + display: block !important; + } + + .d-xl-grid { + display: grid !important; + } + + .d-xl-table { + display: table !important; + } + + .d-xl-table-row { + display: table-row !important; + } + + .d-xl-table-cell { + display: table-cell !important; + } + + .d-xl-flex { + display: flex !important; + } + + .d-xl-inline-flex { + display: inline-flex !important; + } + + .d-xl-none { + display: none !important; + } + + .flex-xl-fill { + flex: 1 1 auto !important; + } + + .flex-xl-row { + flex-direction: row !important; + } + + .flex-xl-column { + flex-direction: column !important; + } + + .flex-xl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xl-wrap { + flex-wrap: wrap !important; + } + + .flex-xl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xl-0 { + gap: 0 !important; + } + + .gap-xl-1 { + gap: 0.25rem !important; + } + + .gap-xl-2 { + gap: 0.5rem !important; + } + + .gap-xl-3 { + gap: 1rem !important; + } + + .gap-xl-4 { + gap: 1.5rem !important; + } + + .gap-xl-5 { + gap: 3rem !important; + } + + .justify-content-xl-start { + justify-content: flex-start !important; + } + + .justify-content-xl-end { + justify-content: flex-end !important; + } + + .justify-content-xl-center { + justify-content: center !important; + } + + .justify-content-xl-between { + justify-content: space-between !important; + } + + .justify-content-xl-around { + justify-content: space-around !important; + } + + .justify-content-xl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xl-start { + align-items: flex-start !important; + } + + .align-items-xl-end { + align-items: flex-end !important; + } + + .align-items-xl-center { + align-items: center !important; + } + + .align-items-xl-baseline { + align-items: baseline !important; + } + + .align-items-xl-stretch { + align-items: stretch !important; + } + + .align-content-xl-start { + align-content: flex-start !important; + } + + .align-content-xl-end { + align-content: flex-end !important; + } + + .align-content-xl-center { + align-content: center !important; + } + + .align-content-xl-between { + align-content: space-between !important; + } + + .align-content-xl-around { + align-content: space-around !important; + } + + .align-content-xl-stretch { + align-content: stretch !important; + } + + .align-self-xl-auto { + align-self: auto !important; + } + + .align-self-xl-start { + align-self: flex-start !important; + } + + .align-self-xl-end { + align-self: flex-end !important; + } + + .align-self-xl-center { + align-self: center !important; + } + + .align-self-xl-baseline { + align-self: baseline !important; + } + + .align-self-xl-stretch { + align-self: stretch !important; + } + + .order-xl-first { + order: -1 !important; + } + + .order-xl-0 { + order: 0 !important; + } + + .order-xl-1 { + order: 1 !important; + } + + .order-xl-2 { + order: 2 !important; + } + + .order-xl-3 { + order: 3 !important; + } + + .order-xl-4 { + order: 4 !important; + } + + .order-xl-5 { + order: 5 !important; + } + + .order-xl-last { + order: 6 !important; + } + + .m-xl-0 { + margin: 0 !important; + } + + .m-xl-1 { + margin: 0.25rem !important; + } + + .m-xl-2 { + margin: 0.5rem !important; + } + + .m-xl-3 { + margin: 1rem !important; + } + + .m-xl-4 { + margin: 1.5rem !important; + } + + .m-xl-5 { + margin: 3rem !important; + } + + .m-xl-auto { + margin: auto !important; + } + + .mx-xl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xl-0 { + margin-top: 0 !important; + } + + .mt-xl-1 { + margin-top: 0.25rem !important; + } + + .mt-xl-2 { + margin-top: 0.5rem !important; + } + + .mt-xl-3 { + margin-top: 1rem !important; + } + + .mt-xl-4 { + margin-top: 1.5rem !important; + } + + .mt-xl-5 { + margin-top: 3rem !important; + } + + .mt-xl-auto { + margin-top: auto !important; + } + + .me-xl-0 { + margin-right: 0 !important; + } + + .me-xl-1 { + margin-right: 0.25rem !important; + } + + .me-xl-2 { + margin-right: 0.5rem !important; + } + + .me-xl-3 { + margin-right: 1rem !important; + } + + .me-xl-4 { + margin-right: 1.5rem !important; + } + + .me-xl-5 { + margin-right: 3rem !important; + } + + .me-xl-auto { + margin-right: auto !important; + } + + .mb-xl-0 { + margin-bottom: 0 !important; + } + + .mb-xl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xl-3 { + margin-bottom: 1rem !important; + } + + .mb-xl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xl-5 { + margin-bottom: 3rem !important; + } + + .mb-xl-auto { + margin-bottom: auto !important; + } + + .ms-xl-0 { + margin-left: 0 !important; + } + + .ms-xl-1 { + margin-left: 0.25rem !important; + } + + .ms-xl-2 { + margin-left: 0.5rem !important; + } + + .ms-xl-3 { + margin-left: 1rem !important; + } + + .ms-xl-4 { + margin-left: 1.5rem !important; + } + + .ms-xl-5 { + margin-left: 3rem !important; + } + + .ms-xl-auto { + margin-left: auto !important; + } + + .p-xl-0 { + padding: 0 !important; + } + + .p-xl-1 { + padding: 0.25rem !important; + } + + .p-xl-2 { + padding: 0.5rem !important; + } + + .p-xl-3 { + padding: 1rem !important; + } + + .p-xl-4 { + padding: 1.5rem !important; + } + + .p-xl-5 { + padding: 3rem !important; + } + + .px-xl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xl-0 { + padding-top: 0 !important; + } + + .pt-xl-1 { + padding-top: 0.25rem !important; + } + + .pt-xl-2 { + padding-top: 0.5rem !important; + } + + .pt-xl-3 { + padding-top: 1rem !important; + } + + .pt-xl-4 { + padding-top: 1.5rem !important; + } + + .pt-xl-5 { + padding-top: 3rem !important; + } + + .pe-xl-0 { + padding-right: 0 !important; + } + + .pe-xl-1 { + padding-right: 0.25rem !important; + } + + .pe-xl-2 { + padding-right: 0.5rem !important; + } + + .pe-xl-3 { + padding-right: 1rem !important; + } + + .pe-xl-4 { + padding-right: 1.5rem !important; + } + + .pe-xl-5 { + padding-right: 3rem !important; + } + + .pb-xl-0 { + padding-bottom: 0 !important; + } + + .pb-xl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xl-3 { + padding-bottom: 1rem !important; + } + + .pb-xl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xl-5 { + padding-bottom: 3rem !important; + } + + .ps-xl-0 { + padding-left: 0 !important; + } + + .ps-xl-1 { + padding-left: 0.25rem !important; + } + + .ps-xl-2 { + padding-left: 0.5rem !important; + } + + .ps-xl-3 { + padding-left: 1rem !important; + } + + .ps-xl-4 { + padding-left: 1.5rem !important; + } + + .ps-xl-5 { + padding-left: 3rem !important; + } + + .text-xl-start { + text-align: left !important; + } + + .text-xl-end { + text-align: right !important; + } + + .text-xl-center { + text-align: center !important; + } +} +@media (min-width: 1400px) { + .float-xxl-start { + float: left !important; + } + + .float-xxl-end { + float: right !important; + } + + .float-xxl-none { + float: none !important; + } + + .d-xxl-inline { + display: inline !important; + } + + .d-xxl-inline-block { + display: inline-block !important; + } + + .d-xxl-block { + display: block !important; + } + + .d-xxl-grid { + display: grid !important; + } + + .d-xxl-table { + display: table !important; + } + + .d-xxl-table-row { + display: table-row !important; + } + + .d-xxl-table-cell { + display: table-cell !important; + } + + .d-xxl-flex { + display: flex !important; + } + + .d-xxl-inline-flex { + display: inline-flex !important; + } + + .d-xxl-none { + display: none !important; + } + + .flex-xxl-fill { + flex: 1 1 auto !important; + } + + .flex-xxl-row { + flex-direction: row !important; + } + + .flex-xxl-column { + flex-direction: column !important; + } + + .flex-xxl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xxl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xxl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xxl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xxl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xxl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xxl-wrap { + flex-wrap: wrap !important; + } + + .flex-xxl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xxl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xxl-0 { + gap: 0 !important; + } + + .gap-xxl-1 { + gap: 0.25rem !important; + } + + .gap-xxl-2 { + gap: 0.5rem !important; + } + + .gap-xxl-3 { + gap: 1rem !important; + } + + .gap-xxl-4 { + gap: 1.5rem !important; + } + + .gap-xxl-5 { + gap: 3rem !important; + } + + .justify-content-xxl-start { + justify-content: flex-start !important; + } + + .justify-content-xxl-end { + justify-content: flex-end !important; + } + + .justify-content-xxl-center { + justify-content: center !important; + } + + .justify-content-xxl-between { + justify-content: space-between !important; + } + + .justify-content-xxl-around { + justify-content: space-around !important; + } + + .justify-content-xxl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xxl-start { + align-items: flex-start !important; + } + + .align-items-xxl-end { + align-items: flex-end !important; + } + + .align-items-xxl-center { + align-items: center !important; + } + + .align-items-xxl-baseline { + align-items: baseline !important; + } + + .align-items-xxl-stretch { + align-items: stretch !important; + } + + .align-content-xxl-start { + align-content: flex-start !important; + } + + .align-content-xxl-end { + align-content: flex-end !important; + } + + .align-content-xxl-center { + align-content: center !important; + } + + .align-content-xxl-between { + align-content: space-between !important; + } + + .align-content-xxl-around { + align-content: space-around !important; + } + + .align-content-xxl-stretch { + align-content: stretch !important; + } + + .align-self-xxl-auto { + align-self: auto !important; + } + + .align-self-xxl-start { + align-self: flex-start !important; + } + + .align-self-xxl-end { + align-self: flex-end !important; + } + + .align-self-xxl-center { + align-self: center !important; + } + + .align-self-xxl-baseline { + align-self: baseline !important; + } + + .align-self-xxl-stretch { + align-self: stretch !important; + } + + .order-xxl-first { + order: -1 !important; + } + + .order-xxl-0 { + order: 0 !important; + } + + .order-xxl-1 { + order: 1 !important; + } + + .order-xxl-2 { + order: 2 !important; + } + + .order-xxl-3 { + order: 3 !important; + } + + .order-xxl-4 { + order: 4 !important; + } + + .order-xxl-5 { + order: 5 !important; + } + + .order-xxl-last { + order: 6 !important; + } + + .m-xxl-0 { + margin: 0 !important; + } + + .m-xxl-1 { + margin: 0.25rem !important; + } + + .m-xxl-2 { + margin: 0.5rem !important; + } + + .m-xxl-3 { + margin: 1rem !important; + } + + .m-xxl-4 { + margin: 1.5rem !important; + } + + .m-xxl-5 { + margin: 3rem !important; + } + + .m-xxl-auto { + margin: auto !important; + } + + .mx-xxl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xxl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xxl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xxl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xxl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xxl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xxl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xxl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xxl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xxl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xxl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xxl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xxl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xxl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xxl-0 { + margin-top: 0 !important; + } + + .mt-xxl-1 { + margin-top: 0.25rem !important; + } + + .mt-xxl-2 { + margin-top: 0.5rem !important; + } + + .mt-xxl-3 { + margin-top: 1rem !important; + } + + .mt-xxl-4 { + margin-top: 1.5rem !important; + } + + .mt-xxl-5 { + margin-top: 3rem !important; + } + + .mt-xxl-auto { + margin-top: auto !important; + } + + .me-xxl-0 { + margin-right: 0 !important; + } + + .me-xxl-1 { + margin-right: 0.25rem !important; + } + + .me-xxl-2 { + margin-right: 0.5rem !important; + } + + .me-xxl-3 { + margin-right: 1rem !important; + } + + .me-xxl-4 { + margin-right: 1.5rem !important; + } + + .me-xxl-5 { + margin-right: 3rem !important; + } + + .me-xxl-auto { + margin-right: auto !important; + } + + .mb-xxl-0 { + margin-bottom: 0 !important; + } + + .mb-xxl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xxl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xxl-3 { + margin-bottom: 1rem !important; + } + + .mb-xxl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xxl-5 { + margin-bottom: 3rem !important; + } + + .mb-xxl-auto { + margin-bottom: auto !important; + } + + .ms-xxl-0 { + margin-left: 0 !important; + } + + .ms-xxl-1 { + margin-left: 0.25rem !important; + } + + .ms-xxl-2 { + margin-left: 0.5rem !important; + } + + .ms-xxl-3 { + margin-left: 1rem !important; + } + + .ms-xxl-4 { + margin-left: 1.5rem !important; + } + + .ms-xxl-5 { + margin-left: 3rem !important; + } + + .ms-xxl-auto { + margin-left: auto !important; + } + + .p-xxl-0 { + padding: 0 !important; + } + + .p-xxl-1 { + padding: 0.25rem !important; + } + + .p-xxl-2 { + padding: 0.5rem !important; + } + + .p-xxl-3 { + padding: 1rem !important; + } + + .p-xxl-4 { + padding: 1.5rem !important; + } + + .p-xxl-5 { + padding: 3rem !important; + } + + .px-xxl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xxl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xxl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xxl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xxl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xxl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xxl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xxl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xxl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xxl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xxl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xxl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xxl-0 { + padding-top: 0 !important; + } + + .pt-xxl-1 { + padding-top: 0.25rem !important; + } + + .pt-xxl-2 { + padding-top: 0.5rem !important; + } + + .pt-xxl-3 { + padding-top: 1rem !important; + } + + .pt-xxl-4 { + padding-top: 1.5rem !important; + } + + .pt-xxl-5 { + padding-top: 3rem !important; + } + + .pe-xxl-0 { + padding-right: 0 !important; + } + + .pe-xxl-1 { + padding-right: 0.25rem !important; + } + + .pe-xxl-2 { + padding-right: 0.5rem !important; + } + + .pe-xxl-3 { + padding-right: 1rem !important; + } + + .pe-xxl-4 { + padding-right: 1.5rem !important; + } + + .pe-xxl-5 { + padding-right: 3rem !important; + } + + .pb-xxl-0 { + padding-bottom: 0 !important; + } + + .pb-xxl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xxl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xxl-3 { + padding-bottom: 1rem !important; + } + + .pb-xxl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xxl-5 { + padding-bottom: 3rem !important; + } + + .ps-xxl-0 { + padding-left: 0 !important; + } + + .ps-xxl-1 { + padding-left: 0.25rem !important; + } + + .ps-xxl-2 { + padding-left: 0.5rem !important; + } + + .ps-xxl-3 { + padding-left: 1rem !important; + } + + .ps-xxl-4 { + padding-left: 1.5rem !important; + } + + .ps-xxl-5 { + padding-left: 3rem !important; + } + + .text-xxl-start { + text-align: left !important; + } + + .text-xxl-end { + text-align: right !important; + } + + .text-xxl-center { + text-align: center !important; + } +} +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.5rem !important; + } + + .fs-2 { + font-size: 2rem !important; + } + + .fs-3 { + font-size: 1.75rem !important; + } + + .fs-4 { + font-size: 1.5rem !important; + } +} +@media print { + .d-print-inline { + display: inline !important; + } + + .d-print-inline-block { + display: inline-block !important; + } + + .d-print-block { + display: block !important; + } + + .d-print-grid { + display: grid !important; + } + + .d-print-table { + display: table !important; + } + + .d-print-table-row { + display: table-row !important; + } + + .d-print-table-cell { + display: table-cell !important; + } + + .d-print-flex { + display: flex !important; + } + + .d-print-inline-flex { + display: inline-flex !important; + } + + .d-print-none { + display: none !important; + } +} +#wrapper { + overflow-x: hidden; +} + +#sidebar-wrapper { + min-height: 100vh; + margin-left: -15rem; + transition: margin 0.25s ease-out; +} + +#sidebar-wrapper .sidebar-heading { + padding: 0.875rem 1.25rem; + font-size: 1.2rem; +} + +#sidebar-wrapper .list-group { + width: 15rem; +} + +#page-content-wrapper { + min-width: 100vw; +} + +body.sb-sidenav-toggled #wrapper #sidebar-wrapper { + margin-left: 0; +} + +@media (min-width: 768px) { + #sidebar-wrapper { + margin-left: 0; + } + + #page-content-wrapper { + min-width: 0; + width: 100%; + } + + body.sb-sidenav-toggled #wrapper #sidebar-wrapper { + margin-left: -15rem; + } +} \ No newline at end of file diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..302e2421035e3726484349f756a96f0f3d77d095 GIT binary patch literal 76150 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 yEy|<&i=vwz_qJ + Download_on_the_App_Store_Badge_ESMX_RGB_blk_100217 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/img/background_ic.jpg b/public/img/background_ic.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0cb26acb8e028d0f4f38369e385802a03ac6d8e5 GIT binary patch literal 648478 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

EM=ypHA&6p1oGfaj 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�DFl!o|N=PHf-~OkY=0YX;?YdcKWkAzfj8Z;; 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 BsEz;t literal 0 HcmV?d00001 diff --git a/public/img/ichamba.svg b/public/img/ichamba.svg new file mode 100644 index 0000000..5d117f4 --- /dev/null +++ b/public/img/ichamba.svg @@ -0,0 +1,239 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + +   hamba   + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/img/jobhero.svg b/public/img/jobhero.svg new file mode 100644 index 0000000..6e0447e --- /dev/null +++ b/public/img/jobhero.svg @@ -0,0 +1,267 @@ + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/img/users/banner.png b/public/img/users/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..970a80087c6ed03cf261fd0fa679e38b77bc5135 GIT binary patch literal 87455 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 DZ4CL) literal 0 HcmV?d00001 diff --git a/public/img/users/default.png b/public/img/users/default.png new file mode 100644 index 0000000000000000000000000000000000000000..60de08e47575a67f3989891c74ac22da63233689 GIT binary patch literal 15076 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 ZubHW)@<$r*X( + */ + +define('LARAVEL_START', microtime(true)); + +/* +|-------------------------------------------------------------------------- +| Register The Auto Loader +|-------------------------------------------------------------------------- +| +| Composer provides a convenient, automatically generated class loader for +| our application. We just need to utilize it! We'll simply require it +| into the script here so that we don't have to worry about manual +| loading any of our classes later on. It feels great to relax. +| +*/ + +require __DIR__.'/../vendor/autoload.php'; + +/* +|-------------------------------------------------------------------------- +| Turn On The Lights +|-------------------------------------------------------------------------- +| +| We need to illuminate PHP development, so let us turn on the lights. +| This bootstraps the framework and gets it ready for use, then it +| will load up this application so that we can run it and send +| the responses back to the browser and delight our users. +| +*/ + +$app = require_once __DIR__.'/../bootstrap/app.php'; + +/* +|-------------------------------------------------------------------------- +| Run The Application +|-------------------------------------------------------------------------- +| +| Once we have the application, we can handle the incoming request +| through the kernel, and send the associated response back to +| the client's browser allowing them to enjoy the creative +| and wonderful application we have prepared for them. +| +*/ + +$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class); + +$response = $kernel->handle( + $request = Illuminate\Http\Request::capture() +); + +$response->send(); + +$kernel->terminate($request, $response); diff --git a/public/js/ajaxcrud.js b/public/js/ajaxcrud.js new file mode 100644 index 0000000..12dff4e --- /dev/null +++ b/public/js/ajaxcrud.js @@ -0,0 +1,105 @@ +$(document).on('click', 'pagination a', function (event) { + event.preventDefault(); + ajaxLoad($(this).attr('href')); +}); + +$(document).on('submit', 'form#frm', function (event) { + event.preventDefault(); + var form = $(this); + var data = new FormData($(this)[0]); + var url = form.attr("action"); + $.ajax({ + type: form.attr('method'), + url: url, + data: data, + cache: false, + contentType: false, + processData: false, + success: function (data) { + $('.is-invalid').removeClass('is-invalid'); + if (data.fail) { + for (control in data.errors) { + $('#' + control).addClass('is-invalid'); + $('#error-' + control).html(data.errors[control]); + } + } else { + ajaxLoad(data.redirect_url); + } + }, + error: function (xhr, textStatus, errorThrown) { + alert("Error: " + errorThrown); + } + }); + return false; +}); + +function ajaxLoad(filename, content) { + content = typeof content !== 'undefined' ? content : 'content'; + $('.loading').show(); + $.ajax({ + type: "GET", + url: filename, + contentType: false, + success: function (data) { + $("#" + content).html(data); + $('.loading').hide(); + }, + error: function (xhr, status, error) { + alert(xhr.responseText); + } + }); +} + +function ajaxDelete(filename, token, content) { + content = typeof content !== 'undefined' ? content : 'content'; + $('.loading').show(); + $.ajax({ + type: 'POST', + data: {_method: 'DELETE', _token: token}, + url: filename, + success: function (data) { + window.location.href = filename.slice(0, -9); + $("#" + content).html(data); + $('.loading').hide(); + }, + error: function (xhr, status, error) { + alert(xhr.responseText); + } + }); +} + +function ajaxDeleteComments(filename, token, content) { + content = typeof content !== 'undefined' ? content : 'content'; + $('.loading').show(); + $.ajax({ + type: 'POST', + data: {_method: 'DELETE', _token: token}, + url: filename, + success: function (data) { + window.location.href = filename.replace("delete/", ""); + $("#" + content).html(data); + $('.loading').hide(); + }, + error: function (xhr, status, error) { + alert(xhr.responseText); + } + }); +} + +function ajaxRedirect(filename, token, content) { + content = typeof content !== 'undefined' ? content : 'content'; + $('.loading').show(); + $.ajax({ + type: 'POST', + data: {_method: 'PUT', _token: token}, + url: filename, + success: function (data) { + window.location.href = filename.slice(0, -14); + $("#" + content).html(data); + $('.loading').hide(); + }, + error: function (xhr, status, error) { + alert(xhr.responseText); + } + }); +} diff --git a/public/js/app.js b/public/js/app.js new file mode 100644 index 0000000..736d3c7 --- /dev/null +++ b/public/js/app.js @@ -0,0 +1 @@ +!function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/",n(n.s=11)}([function(e,t,n){"use strict";var r=n(5),i=n(19),o=Object.prototype.toString;function a(e){return"[object Array]"===o.call(e)}function s(e){return null!==e&&"object"==typeof e}function u(e){return"[object Function]"===o.call(e)}function c(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),a(e))for(var n=0,r=e.length;n=200&&e<300}};u.headers={common:{Accept:"application/json, text/plain, */*"}},r.forEach(["delete","get","head"],function(e){u.headers[e]={}}),r.forEach(["post","put","patch"],function(e){u.headers[e]=r.merge(o)}),e.exports=u}).call(this,n(6))},function(e,t,n){"use strict";n.r(t),function(e){for(var n="undefined"!=typeof window&&"undefined"!=typeof document,r=["Edge","Trident","Firefox"],i=0,o=0;o=0){i=1;break}var a=n&&window.Promise?function(e){var t=!1;return function(){t||(t=!0,window.Promise.resolve().then(function(){t=!1,e()}))}}:function(e){var t=!1;return function(){t||(t=!0,setTimeout(function(){t=!1,e()},i))}};function s(e){return e&&"[object Function]"==={}.toString.call(e)}function u(e,t){if(1!==e.nodeType)return[];var n=e.ownerDocument.defaultView.getComputedStyle(e,null);return t?n[t]:n}function c(e){return"HTML"===e.nodeName?e:e.parentNode||e.host}function l(e){if(!e)return document.body;switch(e.nodeName){case"HTML":case"BODY":return e.ownerDocument.body;case"#document":return e.body}var t=u(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/(auto|scroll|overlay)/.test(n+i+r)?e:l(c(e))}var f=n&&!(!window.MSInputMethodContext||!document.documentMode),p=n&&/MSIE 10/.test(navigator.userAgent);function d(e){return 11===e?f:10===e?p:f||p}function h(e){if(!e)return document.documentElement;for(var t=d(10)?document.body:null,n=e.offsetParent||null;n===t&&e.nextElementSibling;)n=(e=e.nextElementSibling).offsetParent;var r=n&&n.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===u(n,"position")?h(n):n:e?e.ownerDocument.documentElement:document.documentElement}function v(e){return null!==e.parentNode?v(e.parentNode):e}function g(e,t){if(!(e&&e.nodeType&&t&&t.nodeType))return document.documentElement;var n=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,r=n?e:t,i=n?t:e,o=document.createRange();o.setStart(r,0),o.setEnd(i,0);var a,s,u=o.commonAncestorContainer;if(e!==u&&t!==u||r.contains(i))return"BODY"===(s=(a=u).nodeName)||"HTML"!==s&&h(a.firstElementChild)!==a?h(u):u;var c=v(e);return c.host?g(c.host,t):g(e,v(t).host)}function m(e){var t="top"===(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top")?"scrollTop":"scrollLeft",n=e.nodeName;if("BODY"===n||"HTML"===n){var r=e.ownerDocument.documentElement;return(e.ownerDocument.scrollingElement||r)[t]}return e[t]}function y(e,t){var n="x"===t?"Left":"Top",r="Left"===n?"Right":"Bottom";return parseFloat(e["border"+n+"Width"],10)+parseFloat(e["border"+r+"Width"],10)}function _(e,t,n,r){return Math.max(t["offset"+e],t["scroll"+e],n["client"+e],n["offset"+e],n["scroll"+e],d(10)?parseInt(n["offset"+e])+parseInt(r["margin"+("Height"===e?"Top":"Left")])+parseInt(r["margin"+("Height"===e?"Bottom":"Right")]):0)}function b(e){var t=e.body,n=e.documentElement,r=d(10)&&getComputedStyle(n);return{height:_("Height",t,n,r),width:_("Width",t,n,r)}}var w=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},T=function(){function e(e,t){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],r=d(10),i="HTML"===t.nodeName,o=A(e),a=A(t),s=l(e),c=u(t),f=parseFloat(c.borderTopWidth,10),p=parseFloat(c.borderLeftWidth,10);n&&i&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var h=C({top:o.top-a.top-f,left:o.left-a.left-p,width:o.width,height:o.height});if(h.marginTop=0,h.marginLeft=0,!r&&i){var v=parseFloat(c.marginTop,10),g=parseFloat(c.marginLeft,10);h.top-=f-v,h.bottom-=f-v,h.left-=p-g,h.right-=p-g,h.marginTop=v,h.marginLeft=g}return(r&&!n?t.contains(s):t===s&&"BODY"!==s.nodeName)&&(h=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=m(t,"top"),i=m(t,"left"),o=n?-1:1;return e.top+=r*o,e.bottom+=r*o,e.left+=i*o,e.right+=i*o,e}(h,t)),h}function O(e){if(!e||!e.parentElement||d())return document.documentElement;for(var t=e.parentElement;t&&"none"===u(t,"transform");)t=t.parentElement;return t||document.documentElement}function D(e,t,n,r){var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o={top:0,left:0},a=i?O(e):g(e,t);if("viewport"===r)o=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e.ownerDocument.documentElement,r=S(e,n),i=Math.max(n.clientWidth,window.innerWidth||0),o=Math.max(n.clientHeight,window.innerHeight||0),a=t?0:m(n),s=t?0:m(n,"left");return C({top:a-r.top+r.marginTop,left:s-r.left+r.marginLeft,width:i,height:o})}(a,i);else{var s=void 0;"scrollParent"===r?"BODY"===(s=l(c(t))).nodeName&&(s=e.ownerDocument.documentElement):s="window"===r?e.ownerDocument.documentElement:r;var f=S(s,a,i);if("HTML"!==s.nodeName||function e(t){var n=t.nodeName;return"BODY"!==n&&"HTML"!==n&&("fixed"===u(t,"position")||e(c(t)))}(a))o=f;else{var p=b(e.ownerDocument),d=p.height,h=p.width;o.top+=f.top-f.marginTop,o.bottom=d+f.top,o.left+=f.left-f.marginLeft,o.right=h+f.left}}var v="number"==typeof(n=n||0);return o.left+=v?n:n.left||0,o.top+=v?n:n.top||0,o.right-=v?n:n.right||0,o.bottom-=v?n:n.bottom||0,o}function I(e,t,n,r,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===e.indexOf("auto"))return e;var a=D(n,r,o,i),s={top:{width:a.width,height:t.top-a.top},right:{width:a.right-t.right,height:a.height},bottom:{width:a.width,height:a.bottom-t.bottom},left:{width:t.left-a.left,height:a.height}},u=Object.keys(s).map(function(e){return x({key:e},s[e],{area:(t=s[e],t.width*t.height)});var t}).sort(function(e,t){return t.area-e.area}),c=u.filter(function(e){var t=e.width,r=e.height;return t>=n.clientWidth&&r>=n.clientHeight}),l=c.length>0?c[0].key:u[0].key,f=e.split("-")[1];return l+(f?"-"+f:"")}function k(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return S(n,r?O(t):g(t,n),r)}function N(e){var t=e.ownerDocument.defaultView.getComputedStyle(e),n=parseFloat(t.marginTop||0)+parseFloat(t.marginBottom||0),r=parseFloat(t.marginLeft||0)+parseFloat(t.marginRight||0);return{width:e.offsetWidth+r,height:e.offsetHeight+n}}function L(e){var t={left:"right",right:"left",bottom:"top",top:"bottom"};return e.replace(/left|right|bottom|top/g,function(e){return t[e]})}function j(e,t,n){n=n.split("-")[0];var r=N(e),i={width:r.width,height:r.height},o=-1!==["right","left"].indexOf(n),a=o?"top":"left",s=o?"left":"top",u=o?"height":"width",c=o?"width":"height";return i[a]=t[a]+t[u]/2-r[u]/2,i[s]=n===s?t[s]-r[c]:t[L(s)],i}function P(e,t){return Array.prototype.find?e.find(t):e.filter(t)[0]}function R(e,t,n){return(void 0===n?e:e.slice(0,function(e,t,n){if(Array.prototype.findIndex)return e.findIndex(function(e){return e[t]===n});var r=P(e,function(e){return e[t]===n});return e.indexOf(r)}(e,"name",n))).forEach(function(e){e.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=e.function||e.fn;e.enabled&&s(n)&&(t.offsets.popper=C(t.offsets.popper),t.offsets.reference=C(t.offsets.reference),t=n(t,e))}),t}function $(e,t){return e.some(function(e){var n=e.name;return e.enabled&&n===t})}function H(e){for(var t=[!1,"ms","Webkit","Moz","O"],n=e.charAt(0).toUpperCase()+e.slice(1),r=0;r1&&void 0!==arguments[1]&&arguments[1],n=K.indexOf(e),r=K.slice(n+1).concat(K.slice(0,n));return t?r.reverse():r}var X={FLIP:"flip",CLOCKWISE:"clockwise",COUNTERCLOCKWISE:"counterclockwise"};function Q(e,t,n,r){var i=[0,0],o=-1!==["right","left"].indexOf(r),a=e.split(/(\+|\-)/).map(function(e){return e.trim()}),s=a.indexOf(P(a,function(e){return-1!==e.search(/,|\s/)}));a[s]&&-1===a[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var u=/\s*,\s*|\s+/,c=-1!==s?[a.slice(0,s).concat([a[s].split(u)[0]]),[a[s].split(u)[1]].concat(a.slice(s+1))]:[a];return(c=c.map(function(e,r){var i=(1===r?!o:o)?"height":"width",a=!1;return e.reduce(function(e,t){return""===e[e.length-1]&&-1!==["+","-"].indexOf(t)?(e[e.length-1]=t,a=!0,e):a?(e[e.length-1]+=t,a=!1,e):e.concat(t)},[]).map(function(e){return function(e,t,n,r){var i=e.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),o=+i[1],a=i[2];if(!o)return e;if(0===a.indexOf("%")){var s=void 0;switch(a){case"%p":s=n;break;case"%":case"%r":default:s=r}return C(s)[t]/100*o}if("vh"===a||"vw"===a)return("vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*o;return o}(e,i,t,n)})})).forEach(function(e,t){e.forEach(function(n,r){q(n)&&(i[t]+=n*("-"===e[r-1]?-1:1))})}),i}var Y={placement:"bottom",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(e){var t=e.placement,n=t.split("-")[0],r=t.split("-")[1];if(r){var i=e.offsets,o=i.reference,a=i.popper,s=-1!==["bottom","top"].indexOf(n),u=s?"left":"top",c=s?"width":"height",l={start:E({},u,o[u]),end:E({},u,o[u]+o[c]-a[c])};e.offsets.popper=x({},a,l[r])}return e}},offset:{order:200,enabled:!0,fn:function(e,t){var n=t.offset,r=e.placement,i=e.offsets,o=i.popper,a=i.reference,s=r.split("-")[0],u=void 0;return u=q(+n)?[+n,0]:Q(n,o,a,s),"left"===s?(o.top+=u[0],o.left-=u[1]):"right"===s?(o.top+=u[0],o.left+=u[1]):"top"===s?(o.left+=u[0],o.top-=u[1]):"bottom"===s&&(o.left+=u[0],o.top+=u[1]),e.popper=o,e},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(e,t){var n=t.boundariesElement||h(e.instance.popper);e.instance.reference===n&&(n=h(n));var r=H("transform"),i=e.instance.popper.style,o=i.top,a=i.left,s=i[r];i.top="",i.left="",i[r]="";var u=D(e.instance.popper,e.instance.reference,t.padding,n,e.positionFixed);i.top=o,i.left=a,i[r]=s,t.boundaries=u;var c=t.priority,l=e.offsets.popper,f={primary:function(e){var n=l[e];return l[e]u[e]&&!t.escapeWithReference&&(r=Math.min(l[n],u[e]-("right"===e?l.width:l.height))),E({},n,r)}};return c.forEach(function(e){var t=-1!==["left","top"].indexOf(e)?"primary":"secondary";l=x({},l,f[t](e))}),e.offsets.popper=l,e},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,n=t.popper,r=t.reference,i=e.placement.split("-")[0],o=Math.floor,a=-1!==["top","bottom"].indexOf(i),s=a?"right":"bottom",u=a?"left":"top",c=a?"width":"height";return n[s]o(r[s])&&(e.offsets.popper[u]=o(r[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,t){var n;if(!V(e.instance.modifiers,"arrow","keepTogether"))return e;var r=t.element;if("string"==typeof r){if(!(r=e.instance.popper.querySelector(r)))return e}else if(!e.instance.popper.contains(r))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),e;var i=e.placement.split("-")[0],o=e.offsets,a=o.popper,s=o.reference,c=-1!==["left","right"].indexOf(i),l=c?"height":"width",f=c?"Top":"Left",p=f.toLowerCase(),d=c?"left":"top",h=c?"bottom":"right",v=N(r)[l];s[h]-va[h]&&(e.offsets.popper[p]+=s[p]+v-a[h]),e.offsets.popper=C(e.offsets.popper);var g=s[p]+s[l]/2-v/2,m=u(e.instance.popper),y=parseFloat(m["margin"+f],10),_=parseFloat(m["border"+f+"Width"],10),b=g-e.offsets.popper[p]-y-_;return b=Math.max(Math.min(a[l]-v,b),0),e.arrowElement=r,e.offsets.arrow=(E(n={},p,Math.round(b)),E(n,d,""),n),e},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(e,t){if($(e.instance.modifiers,"inner"))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var n=D(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),r=e.placement.split("-")[0],i=L(r),o=e.placement.split("-")[1]||"",a=[];switch(t.behavior){case X.FLIP:a=[r,i];break;case X.CLOCKWISE:a=G(r);break;case X.COUNTERCLOCKWISE:a=G(r,!0);break;default:a=t.behavior}return a.forEach(function(s,u){if(r!==s||a.length===u+1)return e;r=e.placement.split("-")[0],i=L(r);var c=e.offsets.popper,l=e.offsets.reference,f=Math.floor,p="left"===r&&f(c.right)>f(l.left)||"right"===r&&f(c.left)f(l.top)||"bottom"===r&&f(c.top)f(n.right),v=f(c.top)f(n.bottom),m="left"===r&&d||"right"===r&&h||"top"===r&&v||"bottom"===r&&g,y=-1!==["top","bottom"].indexOf(r),_=!!t.flipVariations&&(y&&"start"===o&&d||y&&"end"===o&&h||!y&&"start"===o&&v||!y&&"end"===o&&g);(p||m||_)&&(e.flipped=!0,(p||m)&&(r=a[u+1]),_&&(o=function(e){return"end"===e?"start":"start"===e?"end":e}(o)),e.placement=r+(o?"-"+o:""),e.offsets.popper=x({},e.offsets.popper,j(e.instance.popper,e.offsets.reference,e.placement)),e=R(e.instance.modifiers,e,"flip"))}),e},behavior:"flip",padding:5,boundariesElement:"viewport"},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,n=t.split("-")[0],r=e.offsets,i=r.popper,o=r.reference,a=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return i[a?"left":"top"]=o[n]-(s?i[a?"width":"height"]:0),e.placement=L(t),e.offsets.popper=C(i),e}},hide:{order:800,enabled:!0,fn:function(e){if(!V(e.instance.modifiers,"hide","preventOverflow"))return e;var t=e.offsets.reference,n=P(e.instance.modifiers,function(e){return"preventOverflow"===e.name}).boundaries;if(t.bottomn.right||t.top>n.bottom||t.right2&&void 0!==arguments[2]?arguments[2]:{};w(this,e),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=a(this.update.bind(this)),this.options=x({},e.Defaults,i),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=t&&t.jquery?t[0]:t,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(x({},e.Defaults.modifiers,i.modifiers)).forEach(function(t){r.options.modifiers[t]=x({},e.Defaults.modifiers[t]||{},i.modifiers?i.modifiers[t]:{})}),this.modifiers=Object.keys(this.options.modifiers).map(function(e){return x({name:e},r.options.modifiers[e])}).sort(function(e,t){return e.order-t.order}),this.modifiers.forEach(function(e){e.enabled&&s(e.onLoad)&&e.onLoad(r.reference,r.popper,r.options,e,r.state)}),this.update();var o=this.options.eventsEnabled;o&&this.enableEventListeners(),this.state.eventsEnabled=o}return T(e,[{key:"update",value:function(){return function(){if(!this.state.isDestroyed){var e={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};e.offsets.reference=k(this.state,this.popper,this.reference,this.options.positionFixed),e.placement=I(this.options.placement,e.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),e.originalPlacement=e.placement,e.positionFixed=this.options.positionFixed,e.offsets.popper=j(this.popper,e.offsets.reference,e.placement),e.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",e=R(this.modifiers,e),this.state.isCreated?this.options.onUpdate(e):(this.state.isCreated=!0,this.options.onCreate(e))}}.call(this)}},{key:"destroy",value:function(){return function(){return this.state.isDestroyed=!0,$(this.modifiers,"applyStyle")&&(this.popper.removeAttribute("x-placement"),this.popper.style.position="",this.popper.style.top="",this.popper.style.left="",this.popper.style.right="",this.popper.style.bottom="",this.popper.style.willChange="",this.popper.style[H("transform")]=""),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}.call(this)}},{key:"enableEventListeners",value:function(){return function(){this.state.eventsEnabled||(this.state=F(this.reference,this.options,this.state,this.scheduleUpdate))}.call(this)}},{key:"disableEventListeners",value:function(){return W.call(this)}}]),e}();J.Utils=("undefined"!=typeof window?window:e).PopperUtils,J.placements=z,J.Defaults=Y,t.default=J}.call(this,n(1))},function(e,t,n){var r;!function(t,n){"use strict";"object"==typeof e.exports?e.exports=t.document?n(t,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(t)}("undefined"!=typeof window?window:this,function(n,i){"use strict";var o=[],a=n.document,s=Object.getPrototypeOf,u=o.slice,c=o.concat,l=o.push,f=o.indexOf,p={},d=p.toString,h=p.hasOwnProperty,v=h.toString,g=v.call(Object),m={},y=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},_=function(e){return null!=e&&e===e.window},b={type:!0,src:!0,noModule:!0};function w(e,t,n){var r,i=(t=t||a).createElement("script");if(i.text=e,n)for(r in b)n[r]&&(i[r]=n[r]);t.head.appendChild(i).parentNode.removeChild(i)}function T(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?p[d.call(e)]||"object":typeof e}var E=function(e,t){return new E.fn.init(e,t)},x=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function C(e){var t=!!e&&"length"in e&&e.length,n=T(e);return!y(e)&&!_(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}E.fn=E.prototype={jquery:"3.3.1",constructor:E,length:0,toArray:function(){return u.call(this)},get:function(e){return null==e?u.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(e){return this.pushStack(E.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(u.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n+~]|"+R+")"+R+"*"),U=new RegExp("="+R+"*([^\\]'\"]*?)"+R+"*\\]","g"),V=new RegExp(M),z=new RegExp("^"+$+"$"),K={ID:new RegExp("^#("+$+")"),CLASS:new RegExp("^\\.("+$+")"),TAG:new RegExp("^("+$+"|[*])"),ATTR:new RegExp("^"+H),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+R+"*(even|odd|(([+-]|)(\\d*)n|)"+R+"*(?:([+-]|)"+R+"*(\\d+)|))"+R+"*\\)|)","i"),bool:new RegExp("^(?:"+P+")$","i"),needsContext:new RegExp("^"+R+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+R+"*((?:-\\d)?\\d*)"+R+"*\\)|)(?=[^-]|$)","i")},G=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Q=/^[^{]+\{\s*\[native \w/,Y=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,J=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+R+"?|("+R+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){p()},ie=ye(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{N.apply(D=L.call(w.childNodes),w.childNodes),D[w.childNodes.length].nodeType}catch(e){N={apply:D.length?function(e,t){k.apply(e,L.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function oe(e,t,r,i){var o,s,c,l,f,h,m,y=t&&t.ownerDocument,T=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==T&&9!==T&&11!==T)return r;if(!i&&((t?t.ownerDocument||t:w)!==d&&p(t),t=t||d,v)){if(11!==T&&(f=Y.exec(e)))if(o=f[1]){if(9===T){if(!(c=t.getElementById(o)))return r;if(c.id===o)return r.push(c),r}else if(y&&(c=y.getElementById(o))&&_(t,c)&&c.id===o)return r.push(c),r}else{if(f[2])return N.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return N.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!A[e+" "]&&(!g||!g.test(e))){if(1!==T)y=t,m=e;else if("object"!==t.nodeName.toLowerCase()){for((l=t.getAttribute("id"))?l=l.replace(te,ne):t.setAttribute("id",l=b),s=(h=a(e)).length;s--;)h[s]="#"+l+" "+me(h[s]);m=h.join(","),y=J.test(e)&&ve(t.parentNode)||t}if(m)try{return N.apply(r,y.querySelectorAll(m)),r}catch(e){}finally{l===b&&t.removeAttribute("id")}}}return u(e.replace(W,"$1"),t,r,i)}function ae(){var e=[];return function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}}function se(e){return e[b]=!0,e}function ue(e){var t=d.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ce(e,t){for(var n=e.split("|"),i=n.length;i--;)r.attrHandle[n[i]]=t}function le(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function pe(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function de(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return se(function(t){return t=+t,se(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ve(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},p=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==d&&9===a.nodeType&&a.documentElement?(h=(d=a).documentElement,v=!o(d),w!==d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=ue(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=ue(function(e){return e.appendChild(d.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=Q.test(d.getElementsByClassName),n.getById=ue(function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&v){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&v){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&v)return t.getElementsByClassName(e)},m=[],g=[],(n.qsa=Q.test(d.querySelectorAll))&&(ue(function(e){h.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+R+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+R+"*(?:value|"+P+")"),e.querySelectorAll("[id~="+b+"-]").length||g.push("~="),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+b+"+*").length||g.push(".#.+[+~]")}),ue(function(e){e.innerHTML="";var t=d.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+R+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(n.matchesSelector=Q.test(y=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ue(function(e){n.disconnectedMatch=y.call(e,"*"),y.call(e,"[s!='']:x"),m.push("!=",M)}),g=g.length&&new RegExp(g.join("|")),m=m.length&&new RegExp(m.join("|")),t=Q.test(h.compareDocumentPosition),_=t||Q.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},S=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===d||e.ownerDocument===w&&_(w,e)?-1:t===d||t.ownerDocument===w&&_(w,t)?1:l?j(l,e)-j(l,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===d?-1:t===d?1:i?-1:o?1:l?j(l,e)-j(l,t):0;if(i===o)return le(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?le(a[r],s[r]):a[r]===w?-1:s[r]===w?1:0},d):d},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==d&&p(e),t=t.replace(U,"='$1']"),n.matchesSelector&&v&&!A[t+" "]&&(!m||!m.test(t))&&(!g||!g.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,d,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==d&&p(e),_(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&O.call(r.attrHandle,t.toLowerCase())?i(e,t,!v):void 0;return void 0!==o?o:n.attributes||!v?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,l=!n.sortStable&&e.slice(0),e.sort(S),f){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return l=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:se,match:K,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return K.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&V.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=x[e+" "];return t||(t=new RegExp("(^|"+R+")"+e+"("+R+"|$)"))&&x(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(F," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var c,l,f,p,d,h,v=o!==a?"nextSibling":"previousSibling",g=t.parentNode,m=s&&t.nodeName.toLowerCase(),y=!u&&!s,_=!1;if(g){if(o){for(;v;){for(p=t;p=p[v];)if(s?p.nodeName.toLowerCase()===m:1===p.nodeType)return!1;h=v="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&y){for(_=(d=(c=(l=(f=(p=g)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&c[1])&&c[2],p=d&&g.childNodes[d];p=++d&&p&&p[v]||(_=d=0)||h.pop();)if(1===p.nodeType&&++_&&p===t){l[e]=[T,d,_];break}}else if(y&&(_=d=(c=(l=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&c[1]),!1===_)for(;(p=++d&&p&&p[v]||(_=d=0)||h.pop())&&((s?p.nodeName.toLowerCase()!==m:1!==p.nodeType)||!++_||(y&&((l=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,_]),p!==t)););return(_-=i)===r||_%r==0&&_/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[b]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=j(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:se(function(e){var t=[],n=[],r=s(e.replace(W,"$1"));return r[b]?se(function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:se(function(e){return function(t){return oe(e,t).length>0}}),contains:se(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:se(function(e){return z.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=v?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:de(!1),disabled:de(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return X.test(e.nodeName)},input:function(e){return G.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function be(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,c=null!=t;s-1&&(o[c]=!(a[c]=f))}}else m=be(m===a?m.splice(h,m.length):m),i?i(null,a,m,u):N.apply(a,m)})}function Te(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[" "],u=a?1:0,l=ye(function(e){return e===t},s,!0),f=ye(function(e){return j(t,e)>-1},s,!0),p=[function(e,n,r){var i=!a&&(r||n!==c)||((t=n).nodeType?l(e,n,r):f(e,n,r));return t=null,i}];u1&&_e(p),u>1&&me(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(W,"$1"),n,u0,i=e.length>0,o=function(o,a,s,u,l){var f,h,g,m=0,y="0",_=o&&[],b=[],w=c,E=o||i&&r.find.TAG("*",l),x=T+=null==w?1:Math.random()||.1,C=E.length;for(l&&(c=a===d||a||l);y!==C&&null!=(f=E[y]);y++){if(i&&f){for(h=0,a||f.ownerDocument===d||(p(f),s=!v);g=e[h++];)if(g(f,a||d,s)){u.push(f);break}l&&(T=x)}n&&((f=!g&&f)&&m--,o&&_.push(f))}if(m+=y,n&&y!==m){for(h=0;g=t[h++];)g(_,b,a,s);if(o){if(m>0)for(;y--;)_[y]||b[y]||(b[y]=I.call(u));b=be(b)}N.apply(u,b),l&&!o&&b.length>0&&m+t.length>1&&oe.uniqueSort(u)}return l&&(T=x,c=w),_};return n?se(o):o}(o,i))).selector=e}return s},u=oe.select=function(e,t,n,i){var o,u,c,l,f,p="function"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&"ID"===(c=u[0]).type&&9===t.nodeType&&v&&r.relative[u[1].type]){if(!(t=(r.find.ID(c.matches[0].replace(Z,ee),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}for(o=K.needsContext.test(e)?0:u.length;o--&&(c=u[o],!r.relative[l=c.type]);)if((f=r.find[l])&&(i=f(c.matches[0].replace(Z,ee),J.test(u[0].type)&&ve(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&me(u)))return N.apply(n,i),n;break}}return(p||s(e,d))(i,t,!v,n,!t||J.test(e)&&ve(t.parentNode)||t),n},n.sortStable=b.split("").sort(S).join("")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ue(function(e){return 1&e.compareDocumentPosition(d.createElement("fieldset"))}),ue(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||ce("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&ue(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ce("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ue(function(e){return null==e.getAttribute("disabled")})||ce(P,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(n);E.find=A,E.expr=A.selectors,E.expr[":"]=E.expr.pseudos,E.uniqueSort=E.unique=A.uniqueSort,E.text=A.getText,E.isXMLDoc=A.isXML,E.contains=A.contains,E.escapeSelector=A.escape;var S=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&E(e).is(n))break;r.push(e)}return r},O=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},D=E.expr.match.needsContext;function I(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var k=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function N(e,t,n){return y(t)?E.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?E.grep(e,function(e){return e===t!==n}):"string"!=typeof t?E.grep(e,function(e){return f.call(t,e)>-1!==n}):E.filter(t,e,n)}E.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?E.find.matchesSelector(r,e)?[r]:[]:E.find.matches(e,E.grep(t,function(e){return 1===e.nodeType}))},E.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(E(e).filter(function(){for(t=0;t1?E.uniqueSort(n):n},filter:function(e){return this.pushStack(N(this,e||[],!1))},not:function(e){return this.pushStack(N(this,e||[],!0))},is:function(e){return!!N(this,"string"==typeof e&&D.test(e)?E(e):e||[],!1).length}});var L,j=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(E.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||L,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:j.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:a,!0)),k.test(r[1])&&E.isPlainObject(t))for(r in t)y(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=a.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):y(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)}).prototype=E.fn,L=E(a);var P=/^(?:parents|prev(?:Until|All))/,R={children:!0,contents:!0,next:!0,prev:!0};function $(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&E.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?E.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?f.call(E(e),this[0]):f.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(E.uniqueSort(E.merge(this.get(),E(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),E.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return S(e,"parentNode")},parentsUntil:function(e,t,n){return S(e,"parentNode",n)},next:function(e){return $(e,"nextSibling")},prev:function(e){return $(e,"previousSibling")},nextAll:function(e){return S(e,"nextSibling")},prevAll:function(e){return S(e,"previousSibling")},nextUntil:function(e,t,n){return S(e,"nextSibling",n)},prevUntil:function(e,t,n){return S(e,"previousSibling",n)},siblings:function(e){return O((e.parentNode||{}).firstChild,e)},children:function(e){return O(e.firstChild)},contents:function(e){return I(e,"iframe")?e.contentDocument:(I(e,"template")&&(e=e.content||e),E.merge([],e.childNodes))}},function(e,t){E.fn[e]=function(n,r){var i=E.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=E.filter(r,i)),this.length>1&&(R[e]||E.uniqueSort(i),P.test(e)&&i.reverse()),this.pushStack(i)}});var H=/[^\x20\t\r\n\f]+/g;function M(e){return e}function F(e){throw e}function W(e,t,n,r){var i;try{e&&y(i=e.promise)?i.call(e).done(t).fail(n):e&&y(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}E.Callbacks=function(e){e="string"==typeof e?function(e){var t={};return E.each(e.match(H)||[],function(e,n){t[n]=!0}),t}(e):E.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s-1;)o.splice(n,1),n<=s&&s--}),this},has:function(e){return e?E.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},E.extend({Deferred:function(e){var t=[["notify","progress",E.Callbacks("memory"),E.Callbacks("memory"),2],["resolve","done",E.Callbacks("once memory"),E.Callbacks("once memory"),0,"resolved"],["reject","fail",E.Callbacks("once memory"),E.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return E.Deferred(function(n){E.each(t,function(t,r){var i=y(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&y(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(e,r,i){var o=0;function a(e,t,r,i){return function(){var s=this,u=arguments,c=function(){var n,c;if(!(e=o&&(r!==F&&(s=void 0,u=[n]),t.rejectWith(s,u))}};e?l():(E.Deferred.getStackHook&&(l.stackTrace=E.Deferred.getStackHook()),n.setTimeout(l))}}return E.Deferred(function(n){t[0][3].add(a(0,n,y(i)?i:M,n.notifyWith)),t[1][3].add(a(0,n,y(e)?e:M)),t[2][3].add(a(0,n,y(r)?r:F))}).promise()},promise:function(e){return null!=e?E.extend(e,i):i}},o={};return E.each(t,function(e,n){var a=n[2],s=n[5];i[n[1]]=a.add,s&&a.add(function(){r=s},t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),a.add(n[3].fire),o[n[0]]=function(){return o[n[0]+"With"](this===o?void 0:this,arguments),this},o[n[0]+"With"]=a.fireWith}),i.promise(o),e&&e.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=u.call(arguments),o=E.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?u.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(W(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||y(i[n]&&i[n].then)))return o.then();for(;n--;)W(i[n],a(n),o.reject);return o.promise()}});var q=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;E.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&q.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},E.readyException=function(e){n.setTimeout(function(){throw e})};var B=E.Deferred();function U(){a.removeEventListener("DOMContentLoaded",U),n.removeEventListener("load",U),E.ready()}E.fn.ready=function(e){return B.then(e).catch(function(e){E.readyException(e)}),this},E.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--E.readyWait:E.isReady)||(E.isReady=!0,!0!==e&&--E.readyWait>0||B.resolveWith(a,[E]))}}),E.ready.then=B.then,"complete"===a.readyState||"loading"!==a.readyState&&!a.documentElement.doScroll?n.setTimeout(E.ready):(a.addEventListener("DOMContentLoaded",U),n.addEventListener("load",U));var V=function(e,t,n,r,i,o,a){var s=0,u=e.length,c=null==n;if("object"===T(n))for(s in i=!0,n)V(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,y(r)||(a=!0),c&&(a?(t.call(e,r),t=null):(c=t,t=function(e,t,n){return c.call(E(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){Z.remove(this,e)})}}),E.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=J.get(e,t),n&&(!r||Array.isArray(n)?r=J.access(e,t,E.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=E.queue(e,t),r=n.length,i=n.shift(),o=E._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){E.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return J.get(e,n)||J.access(e,n,{empty:E.Callbacks("once memory").add(function(){J.remove(e,[t+"queue",n])})})}}),E.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ve={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ge(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&I(e,t)?E.merge([e],n):n}function me(e,t){for(var n=0,r=e.length;n-1)i&&i.push(o);else if(c=E.contains(o.ownerDocument,o),a=ge(f.appendChild(o),"script"),c&&me(a),n)for(l=0;o=a[l++];)he.test(o.type||"")&&n.push(o);return f}ye=a.createDocumentFragment().appendChild(a.createElement("div")),(_e=a.createElement("input")).setAttribute("type","radio"),_e.setAttribute("checked","checked"),_e.setAttribute("name","t"),ye.appendChild(_e),m.checkClone=ye.cloneNode(!0).cloneNode(!0).lastChild.checked,ye.innerHTML="",m.noCloneChecked=!!ye.cloneNode(!0).lastChild.defaultValue;var Te=a.documentElement,Ee=/^key/,xe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\.(.+)|)/;function Ae(){return!0}function Se(){return!1}function Oe(){try{return a.activeElement}catch(e){}}function De(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)De(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return E().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=E.guid++)),e.each(function(){E.event.add(this,t,i,r,n)})}E.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,c,l,f,p,d,h,v,g=J.get(e);if(g)for(n.handler&&(n=(o=n).handler,i=o.selector),i&&E.find.matchesSelector(Te,i),n.guid||(n.guid=E.guid++),(u=g.events)||(u=g.events={}),(a=g.handle)||(a=g.handle=function(t){return void 0!==E&&E.event.triggered!==t.type?E.event.dispatch.apply(e,arguments):void 0}),c=(t=(t||"").match(H)||[""]).length;c--;)d=v=(s=Ce.exec(t[c])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=E.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=E.event.special[d]||{},l=E.extend({type:d,origType:v,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&E.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,l),l.handler.guid||(l.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,l):p.push(l),E.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,c,l,f,p,d,h,v,g=J.hasData(e)&&J.get(e);if(g&&(u=g.events)){for(c=(t=(t||"").match(H)||[""]).length;c--;)if(d=v=(s=Ce.exec(t[c])||[])[1],h=(s[2]||"").split(".").sort(),d){for(f=E.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;o--;)l=p[o],!i&&v!==l.origType||n&&n.guid!==l.guid||s&&!s.test(l.namespace)||r&&r!==l.selector&&("**"!==r||!l.selector)||(p.splice(o,1),l.selector&&p.delegateCount--,f.remove&&f.remove.call(e,l));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,g.handle)||E.removeEvent(e,d,g.handle),delete u[d])}else for(d in u)E.event.remove(e,d+t[c],n,r,!0);E.isEmptyObject(u)&&J.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=E.event.fix(e),u=new Array(arguments.length),c=(J.get(this,"events")||{})[s.type]||[],l=E.event.special[s.type]||{};for(u[0]=s,t=1;t=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==e.type||!0!==c.disabled)){for(o=[],a={},n=0;n-1:E.find(i,this,null,[c]).length),a[i]&&o.push(r);o.length&&s.push({elem:c,handlers:o})}return c=this,u\x20\t\r\n\f]*)[^>]*)\/>/gi,ke=/\s*$/g;function je(e,t){return I(e,"table")&&I(11!==t.nodeType?t:t.firstChild,"tr")&&E(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function $e(e,t){var n,r,i,o,a,s,u,c;if(1===t.nodeType){if(J.hasData(e)&&(o=J.access(e),a=J.set(t,o),c=o.events))for(i in delete a.handle,a.events={},c)for(n=0,r=c[i].length;n1&&"string"==typeof h&&!m.checkClone&&Ne.test(h))return e.each(function(i){var o=e.eq(i);v&&(t[0]=h.call(this,i,o.html())),He(o,t,n,r)});if(p&&(o=(i=we(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(a=E.map(ge(i,"script"),Pe)).length;f")},clone:function(e,t,n){var r,i,o,a,s,u,c,l=e.cloneNode(!0),f=E.contains(e.ownerDocument,e);if(!(m.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||E.isXMLDoc(e)))for(a=ge(l),r=0,i=(o=ge(e)).length;r0&&me(a,!f&&ge(e,"script")),l},cleanData:function(e){for(var t,n,r,i=E.event.special,o=0;void 0!==(n=e[o]);o++)if(Q(n)){if(t=n[J.expando]){if(t.events)for(r in t.events)i[r]?E.event.remove(n,r):E.removeEvent(n,r,t.handle);n[J.expando]=void 0}n[Z.expando]&&(n[Z.expando]=void 0)}}}),E.fn.extend({detach:function(e){return Me(this,e,!0)},remove:function(e){return Me(this,e)},text:function(e){return V(this,function(e){return void 0===e?E.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(E.cleanData(ge(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return E.clone(this,e,t)})},html:function(e){return V(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!ve[(de.exec(e)||["",""])[1].toLowerCase()]){e=E.htmlPrefilter(e);try{for(;n=0&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))),u}function et(e,t,n){var r=We(e),i=Be(e,t,r),o="border-box"===E.css(e,"boxSizing",!1,r),a=o;if(Fe.test(i)){if(!n)return i;i="auto"}return a=a&&(m.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===E.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],a=!0),(i=parseFloat(i)||0)+Ze(e,t,n||(o?"border":"content"),a,r,i)+"px"}function tt(e,t,n,r,i){return new tt.prototype.init(e,t,n,r,i)}E.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=ze.test(t),c=e.style;if(u||(t=Ye(s)),a=E.cssHooks[t]||E.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:c[t];"string"===(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=ue(e,t,i),o="number"),null!=n&&n==n&&("number"===o&&(n+=i&&i[3]||(E.cssNumber[s]?"":"px")),m.clearCloneStyle||""!==n||0!==t.indexOf("background")||(c[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return ze.test(t)||(t=Ye(s)),(a=E.cssHooks[t]||E.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),E.each(["height","width"],function(e,t){E.cssHooks[t]={get:function(e,n,r){if(n)return!Ve.test(E.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):se(e,Ke,function(){return et(e,t,r)})},set:function(e,n,r){var i,o=We(e),a="border-box"===E.css(e,"boxSizing",!1,o),s=r&&Ze(e,t,r,a,o);return a&&m.scrollboxSize()===o.position&&(s-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,"border",!1,o)-.5)),s&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=E.css(e,t)),Je(0,n,s)}}}),E.cssHooks.marginLeft=Ue(m.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-se(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),E.each({margin:"",padding:"",border:"Width"},function(e,t){E.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(E.cssHooks[e+t].set=Je)}),E.fn.extend({css:function(e,t){return V(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a1)}}),E.Tween=tt,tt.prototype={constructor:tt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||E.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(E.cssNumber[n]?"":"px")},cur:function(){var e=tt.propHooks[this.prop];return e&&e.get?e.get(this):tt.propHooks._default.get(this)},run:function(e){var t,n=tt.propHooks[this.prop];return this.options.duration?this.pos=t=E.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):tt.propHooks._default.set(this),this}},tt.prototype.init.prototype=tt.prototype,tt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=E.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){E.fx.step[e.prop]?E.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[E.cssProps[e.prop]]&&!E.cssHooks[e.prop]?e.elem[e.prop]=e.now:E.style(e.elem,e.prop,e.now+e.unit)}}},tt.propHooks.scrollTop=tt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},E.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},E.fx=tt.prototype.init,E.fx.step={};var nt,rt,it=/^(?:toggle|show|hide)$/,ot=/queueHooks$/;function at(){rt&&(!1===a.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(at):n.setTimeout(at,E.fx.interval),E.fx.tick())}function st(){return n.setTimeout(function(){nt=void 0}),nt=Date.now()}function ut(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=oe[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o1)},removeAttr:function(e){return this.each(function(){E.removeAttr(this,e)})}}),E.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?E.prop(e,t,n):(1===o&&E.isXMLDoc(e)||(i=E.attrHooks[t.toLowerCase()]||(E.expr.match.bool.test(t)?ft:void 0)),void 0!==n?null===n?void E.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=E.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!m.radioValue&&"radio"===t&&I(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(H);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),ft={set:function(e,t,n){return!1===t?E.removeAttr(e,n):e.setAttribute(n,n),n}},E.each(E.expr.match.bool.source.match(/\w+/g),function(e,t){var n=pt[t]||E.find.attr;pt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=pt[a],pt[a]=i,i=null!=n(e,t,r)?a:null,pt[a]=o),i}});var dt=/^(?:input|select|textarea|button)$/i,ht=/^(?:a|area)$/i;function vt(e){return(e.match(H)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function mt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(H)||[]}E.fn.extend({prop:function(e,t){return V(this,E.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[E.propFix[e]||e]})}}),E.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&E.isXMLDoc(e)||(t=E.propFix[t]||t,i=E.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=E.find.attr(e,"tabindex");return t?parseInt(t,10):dt.test(e.nodeName)||ht.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),m.optSelected||(E.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),E.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){E.propFix[this.toLowerCase()]=this}),E.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(y(e))return this.each(function(t){E(this).addClass(e.call(this,t,gt(this)))});if((t=mt(e)).length)for(;n=this[u++];)if(i=gt(n),r=1===n.nodeType&&" "+vt(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(y(e))return this.each(function(t){E(this).removeClass(e.call(this,t,gt(this)))});if(!arguments.length)return this.attr("class","");if((t=mt(e)).length)for(;n=this[u++];)if(i=gt(n),r=1===n.nodeType&&" "+vt(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):y(e)?this.each(function(n){E(this).toggleClass(e.call(this,n,gt(this),t),t)}):this.each(function(){var t,i,o,a;if(r)for(i=0,o=E(this),a=mt(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||((t=gt(this))&&J.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":J.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+vt(gt(n))+" ").indexOf(t)>-1)return!0;return!1}});var yt=/\r/g;E.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=y(e),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,E(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=E.map(i,function(e){return null==e?"":e+""})),(t=E.valHooks[this.type]||E.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))})):i?(t=E.valHooks[i.type]||E.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(yt,""):null==n?"":n:void 0}}),E.extend({valHooks:{option:{get:function(e){var t=E.find.attr(e,"value");return null!=t?t:vt(E.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),E.each(["radio","checkbox"],function(){E.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=E.inArray(E(e).val(),t)>-1}},m.checkOn||(E.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),m.focusin="onfocusin"in n;var _t=/^(?:focusinfocus|focusoutblur)$/,bt=function(e){e.stopPropagation()};E.extend(E.event,{trigger:function(e,t,r,i){var o,s,u,c,l,f,p,d,v=[r||a],g=h.call(e,"type")?e.type:e,m=h.call(e,"namespace")?e.namespace.split("."):[];if(s=d=u=r=r||a,3!==r.nodeType&&8!==r.nodeType&&!_t.test(g+E.event.triggered)&&(g.indexOf(".")>-1&&(m=g.split("."),g=m.shift(),m.sort()),l=g.indexOf(":")<0&&"on"+g,(e=e[E.expando]?e:new E.Event(g,"object"==typeof e&&e)).isTrigger=i?2:3,e.namespace=m.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:E.makeArray(t,[e]),p=E.event.special[g]||{},i||!p.trigger||!1!==p.trigger.apply(r,t))){if(!i&&!p.noBubble&&!_(r)){for(c=p.delegateType||g,_t.test(c+g)||(s=s.parentNode);s;s=s.parentNode)v.push(s),u=s;u===(r.ownerDocument||a)&&v.push(u.defaultView||u.parentWindow||n)}for(o=0;(s=v[o++])&&!e.isPropagationStopped();)d=s,e.type=o>1?c:p.bindType||g,(f=(J.get(s,"events")||{})[e.type]&&J.get(s,"handle"))&&f.apply(s,t),(f=l&&s[l])&&f.apply&&Q(s)&&(e.result=f.apply(s,t),!1===e.result&&e.preventDefault());return e.type=g,i||e.isDefaultPrevented()||p._default&&!1!==p._default.apply(v.pop(),t)||!Q(r)||l&&y(r[g])&&!_(r)&&((u=r[l])&&(r[l]=null),E.event.triggered=g,e.isPropagationStopped()&&d.addEventListener(g,bt),r[g](),e.isPropagationStopped()&&d.removeEventListener(g,bt),E.event.triggered=void 0,u&&(r[l]=u)),e.result}},simulate:function(e,t,n){var r=E.extend(new E.Event,n,{type:e,isSimulated:!0});E.event.trigger(r,null,t)}}),E.fn.extend({trigger:function(e,t){return this.each(function(){E.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return E.event.trigger(e,t,n,!0)}}),m.focusin||E.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){E.event.simulate(t,e.target,E.event.fix(e))};E.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=J.access(r,t);i||r.addEventListener(e,n,!0),J.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=J.access(r,t)-1;i?J.access(r,t,i):(r.removeEventListener(e,n,!0),J.remove(r,t))}}});var wt=n.location,Tt=Date.now(),Et=/\?/;E.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||E.error("Invalid XML: "+e),t};var xt=/\[\]$/,Ct=/\r?\n/g,At=/^(?:submit|button|image|reset|file)$/i,St=/^(?:input|select|textarea|keygen)/i;function Ot(e,t,n,r){var i;if(Array.isArray(t))E.each(t,function(t,i){n||xt.test(e)?r(e,i):Ot(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==T(t))r(e,t);else for(i in t)Ot(e+"["+i+"]",t[i],n,r)}E.param=function(e,t){var n,r=[],i=function(e,t){var n=y(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!E.isPlainObject(e))E.each(e,function(){i(this.name,this.value)});else for(n in e)Ot(n,e[n],t,i);return r.join("&")},E.fn.extend({serialize:function(){return E.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=E.prop(this,"elements");return e?E.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!E(this).is(":disabled")&&St.test(this.nodeName)&&!At.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=E(this).val();return null==n?null:Array.isArray(n)?E.map(n,function(e){return{name:t.name,value:e.replace(Ct,"\r\n")}}):{name:t.name,value:n.replace(Ct,"\r\n")}}).get()}});var Dt=/%20/g,It=/#.*$/,kt=/([?&])_=[^&]*/,Nt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,jt=/^\/\//,Pt={},Rt={},$t="*/".concat("*"),Ht=a.createElement("a");function Mt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(H)||[];if(y(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Ft(e,t,n,r){var i={},o=e===Rt;function a(s){var u;return i[s]=!0,E.each(e[s]||[],function(e,s){var c=s(t,n,r);return"string"!=typeof c||o||i[c]?o?!(u=c):void 0:(t.dataTypes.unshift(c),a(c),!1)}),u}return a(t.dataTypes[0])||!i["*"]&&a("*")}function Wt(e,t){var n,r,i=E.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&E.extend(!0,e,r),e}Ht.href=wt.href,E.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:wt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(wt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$t,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":E.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Wt(Wt(e,E.ajaxSettings),t):Wt(E.ajaxSettings,e)},ajaxPrefilter:Mt(Pt),ajaxTransport:Mt(Rt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,i,o,s,u,c,l,f,p,d,h=E.ajaxSetup({},t),v=h.context||h,g=h.context&&(v.nodeType||v.jquery)?E(v):E.event,m=E.Deferred(),y=E.Callbacks("once memory"),_=h.statusCode||{},b={},w={},T="canceled",x={readyState:0,getResponseHeader:function(e){var t;if(l){if(!s)for(s={};t=Nt.exec(o);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(e,t){return null==l&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==l&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)x.always(e[x.status]);else for(t in e)_[t]=[_[t],e[t]];return this},abort:function(e){var t=e||T;return r&&r.abort(t),C(0,t),this}};if(m.promise(x),h.url=((e||h.url||wt.href)+"").replace(jt,wt.protocol+"//"),h.type=t.method||t.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(H)||[""],null==h.crossDomain){c=a.createElement("a");try{c.href=h.url,c.href=c.href,h.crossDomain=Ht.protocol+"//"+Ht.host!=c.protocol+"//"+c.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=E.param(h.data,h.traditional)),Ft(Pt,h,t,x),l)return x;for(p in(f=E.event&&h.global)&&0==E.active++&&E.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Lt.test(h.type),i=h.url.replace(It,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(Dt,"+")):(d=h.url.slice(i.length),h.data&&(h.processData||"string"==typeof h.data)&&(i+=(Et.test(i)?"&":"?")+h.data,delete h.data),!1===h.cache&&(i=i.replace(kt,"$1"),d=(Et.test(i)?"&":"?")+"_="+Tt+++d),h.url=i+d),h.ifModified&&(E.lastModified[i]&&x.setRequestHeader("If-Modified-Since",E.lastModified[i]),E.etag[i]&&x.setRequestHeader("If-None-Match",E.etag[i])),(h.data&&h.hasContent&&!1!==h.contentType||t.contentType)&&x.setRequestHeader("Content-Type",h.contentType),x.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+$t+"; q=0.01":""):h.accepts["*"]),h.headers)x.setRequestHeader(p,h.headers[p]);if(h.beforeSend&&(!1===h.beforeSend.call(v,x,h)||l))return x.abort();if(T="abort",y.add(h.complete),x.done(h.success),x.fail(h.error),r=Ft(Rt,h,t,x)){if(x.readyState=1,f&&g.trigger("ajaxSend",[x,h]),l)return x;h.async&&h.timeout>0&&(u=n.setTimeout(function(){x.abort("timeout")},h.timeout));try{l=!1,r.send(b,C)}catch(e){if(l)throw e;C(-1,e)}}else C(-1,"No Transport");function C(e,t,a,s){var c,p,d,b,w,T=t;l||(l=!0,u&&n.clearTimeout(u),r=void 0,o=s||"",x.readyState=e>0?4:0,c=e>=200&&e<300||304===e,a&&(b=function(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(h,x,a)),b=function(e,t,n,r){var i,o,a,s,u,c={},l=e.dataTypes.slice();if(l[1])for(a in e.converters)c[a.toLowerCase()]=e.converters[a];for(o=l.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=l.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=c[u+" "+o]||c["* "+o]))for(i in c)if((s=i.split(" "))[1]===o&&(a=c[u+" "+s[0]]||c["* "+s[0]])){!0===a?a=c[i]:!0!==c[i]&&(o=s[0],l.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(h,b,x,c),c?(h.ifModified&&((w=x.getResponseHeader("Last-Modified"))&&(E.lastModified[i]=w),(w=x.getResponseHeader("etag"))&&(E.etag[i]=w)),204===e||"HEAD"===h.type?T="nocontent":304===e?T="notmodified":(T=b.state,p=b.data,c=!(d=b.error))):(d=T,!e&&T||(T="error",e<0&&(e=0))),x.status=e,x.statusText=(t||T)+"",c?m.resolveWith(v,[p,T,x]):m.rejectWith(v,[x,T,d]),x.statusCode(_),_=void 0,f&&g.trigger(c?"ajaxSuccess":"ajaxError",[x,h,c?p:d]),y.fireWith(v,[x,T]),f&&(g.trigger("ajaxComplete",[x,h]),--E.active||E.event.trigger("ajaxStop")))}return x},getJSON:function(e,t,n){return E.get(e,t,n,"json")},getScript:function(e,t){return E.get(e,void 0,t,"script")}}),E.each(["get","post"],function(e,t){E[t]=function(e,n,r,i){return y(n)&&(i=i||r,r=n,n=void 0),E.ajax(E.extend({url:e,type:t,dataType:i,data:n,success:r},E.isPlainObject(e)&&e))}}),E._evalUrl=function(e){return E.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},E.fn.extend({wrapAll:function(e){var t;return this[0]&&(y(e)&&(e=e.call(this[0])),t=E(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return y(e)?this.each(function(t){E(this).wrapInner(e.call(this,t))}):this.each(function(){var t=E(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=y(e);return this.each(function(n){E(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){E(this).replaceWith(this.childNodes)}),this}}),E.expr.pseudos.hidden=function(e){return!E.expr.pseudos.visible(e)},E.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},E.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var qt={0:200,1223:204},Bt=E.ajaxSettings.xhr();m.cors=!!Bt&&"withCredentials"in Bt,m.ajax=Bt=!!Bt,E.ajaxTransport(function(e){var t,r;if(m.cors||Bt&&!e.crossDomain)return{send:function(i,o){var a,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)s[a]=e.xhrFields[a];for(a in e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)s.setRequestHeader(a,i[a]);t=function(e){return function(){t&&(t=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(qt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),r=s.onerror=s.ontimeout=t("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout(function(){t&&r()})},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}}),E.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),E.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return E.globalEval(e),e}}}),E.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),E.ajaxTransport("script",function(e){var t,n;if(e.crossDomain)return{send:function(r,i){t=E(" diff --git a/resources/lang/en/auth.php b/resources/lang/en/auth.php new file mode 100644 index 0000000..e5506df --- /dev/null +++ b/resources/lang/en/auth.php @@ -0,0 +1,19 @@ + 'These credentials do not match our records.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + +]; diff --git a/resources/lang/en/pagination.php b/resources/lang/en/pagination.php new file mode 100644 index 0000000..d481411 --- /dev/null +++ b/resources/lang/en/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/en/passwords.php b/resources/lang/en/passwords.php new file mode 100644 index 0000000..bf6caf6 --- /dev/null +++ b/resources/lang/en/passwords.php @@ -0,0 +1,22 @@ + 'Passwords must be at least eight characters and match the confirmation.', + 'reset' => 'Your password has been reset!', + 'sent' => 'We have e-mailed your password reset link!', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that e-mail address.", + +]; diff --git a/resources/lang/en/validation.php b/resources/lang/en/validation.php new file mode 100644 index 0000000..e1d879f --- /dev/null +++ b/resources/lang/en/validation.php @@ -0,0 +1,150 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'gt' => [ + 'numeric' => 'The :attribute must be greater than :value.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'string' => 'The :attribute must be greater than :value characters.', + 'array' => 'The :attribute must have more than :value items.', + ], + 'gte' => [ + 'numeric' => 'The :attribute must be greater than or equal :value.', + 'file' => 'The :attribute must be greater than or equal :value kilobytes.', + 'string' => 'The :attribute must be greater than or equal :value characters.', + 'array' => 'The :attribute must have :value items or more.', + ], + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'numeric' => 'The :attribute must be less than :value.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'string' => 'The :attribute must be less than :value characters.', + 'array' => 'The :attribute must have less than :value items.', + ], + 'lte' => [ + 'numeric' => 'The :attribute must be less than or equal :value.', + 'file' => 'The :attribute must be less than or equal :value kilobytes.', + 'string' => 'The :attribute must be less than or equal :value characters.', + 'array' => 'The :attribute must not have more than :value items.', + ], + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'present' => 'The :attribute field must be present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute format is invalid.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/sass/_variables.scss b/resources/sass/_variables.scss new file mode 100644 index 0000000..0407ab5 --- /dev/null +++ b/resources/sass/_variables.scss @@ -0,0 +1,19 @@ +// Body +$body-bg: #f8fafc; + +// Typography +$font-family-sans-serif: 'Nunito', sans-serif; +$font-size-base: 0.9rem; +$line-height-base: 1.6; + +// Colors +$blue: #3490dc; +$indigo: #6574cd; +$purple: #9561e2; +$pink: #f66d9b; +$red: #e3342f; +$orange: #f6993f; +$yellow: #ffed4a; +$green: #38c172; +$teal: #4dc0b5; +$cyan: #6cb2eb; diff --git a/resources/sass/app.scss b/resources/sass/app.scss new file mode 100644 index 0000000..3193ffa --- /dev/null +++ b/resources/sass/app.scss @@ -0,0 +1,8 @@ +// Fonts +@import url('https://fonts.googleapis.com/css?family=Nunito'); + +// Variables +@import 'variables'; + +// Bootstrap +@import '~bootstrap/scss/bootstrap'; diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php new file mode 100644 index 0000000..7d382dc --- /dev/null +++ b/resources/views/auth/login.blade.php @@ -0,0 +1,62 @@ +@extends('layouts.app') + +@section('content') +

+
+
+
+
{{ __('Iniciar sesión') }}
+ +
+
+ @csrf + +
+ + +
+ + + @error('email') + + {{ $message }} + + @enderror +
+
+ +
+ + +
+ + + @error('password') + + {{ $message }} + + @enderror +
+
+ +
+
+ + + + @if (Route::has('password.request')) + + {{ __('¿Olvidó su contraseña?') }} + + @endif +
+
+
+
+
+
+
+
+@endsection diff --git a/resources/views/auth/passwords/email.blade.php b/resources/views/auth/passwords/email.blade.php new file mode 100644 index 0000000..22df130 --- /dev/null +++ b/resources/views/auth/passwords/email.blade.php @@ -0,0 +1,47 @@ +@extends('layouts.app') + +@section('content') +
+
+
+
+
{{ __('Olvide mi contraseña') }}
+ +
+ @if (session('status')) + + @endif + +
+ @csrf + +
+ + +
+ + + @error('email') + + {{ $message }} + + @enderror +
+
+ +
+
+ +
+
+
+
+
+
+
+
+@endsection diff --git a/resources/views/auth/passwords/reset.blade.php b/resources/views/auth/passwords/reset.blade.php new file mode 100644 index 0000000..ff76b61 --- /dev/null +++ b/resources/views/auth/passwords/reset.blade.php @@ -0,0 +1,65 @@ +@extends('layouts.app') + +@section('content') +
+
+
+
+
{{ __('Cambiar Contraseña') }}
+ +
+
+ @csrf + + + +
+ + +
+ + + @error('email') + + {{ $message }} + + @enderror +
+
+ +
+ + +
+ + + @error('password') + + {{ $message }} + + @enderror +
+
+ +
+ + +
+ +
+
+ +
+
+ +
+
+
+
+
+
+
+
+@endsection diff --git a/resources/views/auth/register.blade.php b/resources/views/auth/register.blade.php new file mode 100644 index 0000000..423ce2b --- /dev/null +++ b/resources/views/auth/register.blade.php @@ -0,0 +1,95 @@ +@extends('layouts.app') + +@section('content') +
+
+
+
+
{{ __('Crear cuenta') }}
+ +
+
+ @csrf + +
+ + +
+ + + @error('name') + + {{ $message }} + + @enderror +
+
+ +
+ + +
+ + + @error('email') + + {{ $message }} + + @enderror +
+
+ +
+ + +
+ + + @error('phone') + + {{ $message }} + + @enderror +
+
+ +
+ + +
+ + + @error('password') + + {{ $message }} + + @enderror +
+
+ +
+ + +
+ +
+
+
+
+ {!! GoogleReCaptchaV3::renderField('register_id','register_action') !!} +
+
+
+
+ +
+
+
+
+
+
+
+
+@endsection diff --git a/resources/views/auth/verify.blade.php b/resources/views/auth/verify.blade.php new file mode 100644 index 0000000..3964d93 --- /dev/null +++ b/resources/views/auth/verify.blade.php @@ -0,0 +1,24 @@ +@extends('layouts.app') + +@section('content') +
+
+
+
+
{{ __('Verify Your Phone Number') }}
+ +
+ @if (session('resent')) + + @endif + + {{ __('Before proceeding, please check your email for a verification link.') }} + {{ __('If you did not receive the email') }}, {{ __('click here to request another') }}. +
+
+
+
+
+@endsection diff --git a/resources/views/banks/ajax.blade.php b/resources/views/banks/ajax.blade.php new file mode 100644 index 0000000..8beb0c9 --- /dev/null +++ b/resources/views/banks/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('banks.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/banks/form.blade.php b/resources/views/banks/form.blade.php new file mode 100644 index 0000000..bb30b11 --- /dev/null +++ b/resources/views/banks/form.blade.php @@ -0,0 +1,47 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($bank)?'Editar':'Nuevo'}} Banco

+
+ @if(isset($bank)) + {!! Form::model($bank,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("code","Código",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::number("code",null,["class"=>"form-control".($errors->has('code')?" is-invalid":""),"autofocus",'placeholder'=>'Código del banco']) !!} + +
+
+
+ {!! Form::label("name","Banco",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("name",null,["class"=>"form-control".($errors->has('name')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre del banco']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/banks/index.blade.php b/resources/views/banks/index.blade.php new file mode 100644 index 0000000..7b9bbc2 --- /dev/null +++ b/resources/views/banks/index.blade.php @@ -0,0 +1,83 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Bancos

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'banks','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='code'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + + + @php + $i=1; + @endphp + @foreach ($banks as $bank) + + + + + + + @endforeach + + +
IDCódigoBanco + Nuevo banco +
{{ $bank->id }}{{ $bank->code }}{{ $bank->name }} + + + + + + + +
+ +
    + {{ $banks->links() }} +
+
+@endsection diff --git a/resources/views/cards/ajax.blade.php b/resources/views/cards/ajax.blade.php new file mode 100644 index 0000000..1552eaa --- /dev/null +++ b/resources/views/cards/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('cards.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/cards/form.blade.php b/resources/views/cards/form.blade.php new file mode 100644 index 0000000..bb30b11 --- /dev/null +++ b/resources/views/cards/form.blade.php @@ -0,0 +1,47 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($bank)?'Editar':'Nuevo'}} Banco

+
+ @if(isset($bank)) + {!! Form::model($bank,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("code","Código",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::number("code",null,["class"=>"form-control".($errors->has('code')?" is-invalid":""),"autofocus",'placeholder'=>'Código del banco']) !!} + +
+
+
+ {!! Form::label("name","Banco",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("name",null,["class"=>"form-control".($errors->has('name')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre del banco']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/cards/index.blade.php b/resources/views/cards/index.blade.php new file mode 100644 index 0000000..965a74d --- /dev/null +++ b/resources/views/cards/index.blade.php @@ -0,0 +1,78 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Tarjetas

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'cards','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='token'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + @php + $i=1; + @endphp + @foreach ($cards as $card) + + + + + + + + @endforeach + + +
IDUsuarioOpenpay IDToken
{{ $card->id }}{{ $card->user->name }}{{ $card->user->openpay_id }}{{ $card->token}} + + + + +
+ +
    + {{ $cards->links() }} +
+
+@endsection diff --git a/resources/views/categories/ajax.blade.php b/resources/views/categories/ajax.blade.php new file mode 100644 index 0000000..a31cdfe --- /dev/null +++ b/resources/views/categories/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('categories.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/categories/form.blade.php b/resources/views/categories/form.blade.php new file mode 100644 index 0000000..7b3f8fc --- /dev/null +++ b/resources/views/categories/form.blade.php @@ -0,0 +1,47 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($category)?'Editar':'Nueva'}} Categoría

+
+ @if(isset($category)) + {!! Form::model($category,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("name","Categoría",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("name",null,["class"=>"form-control".($errors->has('name')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre de la categoría']) !!} + +
+
+
+ {!! Form::label("en_name","Categoría (en ingles)",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("en_name",null,["class"=>"form-control".($errors->has('en_name')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre de la categoría (en ingles)']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/categories/index.blade.php b/resources/views/categories/index.blade.php new file mode 100644 index 0000000..e1922ee --- /dev/null +++ b/resources/views/categories/index.blade.php @@ -0,0 +1,83 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Categorías

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'categories','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='en_name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + + + @php + $i=1; + @endphp + @foreach ($categories as $category) + + + + + + + @endforeach + + +
IDNombreNombre en Ingles + Nueva categoría +
{{ $category->id }}{{ $category->name }}{{ $category->en_name }} + + + + + + + +
+ +
    + {{ $categories->links() }} +
+
+@endsection diff --git a/resources/views/coupons/ajax.blade.php b/resources/views/coupons/ajax.blade.php new file mode 100644 index 0000000..b996571 --- /dev/null +++ b/resources/views/coupons/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('coupons.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/coupons/form.blade.php b/resources/views/coupons/form.blade.php new file mode 100644 index 0000000..31f14b2 --- /dev/null +++ b/resources/views/coupons/form.blade.php @@ -0,0 +1,61 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($coupon)?'Editar':'Nuevo'}} Cupon

+
+ @if(isset($coupon)) + {!! Form::model($coupon,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("name","Nombre",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("name",null,["class"=>"form-control".($errors->has('coupon')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre del cupon']) !!} + +
+
+
+ {!! Form::label("percentage","Porcentaje",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("percentage",null,["class"=>"form-control".($errors->has('percentage')?" is-invalid":""),"autofocus",'placeholder'=>'Porcentaje (opcional)']) !!} + +
+
+
+ {!! Form::label("amount","Monto",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("amount",null,["class"=>"form-control".($errors->has('amount')?" is-invalid":""),"autofocus",'placeholder'=>'Monto (opcional)']) !!} + +
+
+
+ {!! Form::label("limit","No. de Cupones",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("limit",null,["class"=>"form-control".($errors->has('limit')?" is-invalid":""),"autofocus",'placeholder'=>'No. máximo de cupones']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/coupons/index.blade.php b/resources/views/coupons/index.blade.php new file mode 100644 index 0000000..646f0a8 --- /dev/null +++ b/resources/views/coupons/index.blade.php @@ -0,0 +1,91 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Cupones

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'coupons','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='percentage'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='amount'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='limit'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + + + @php + $i=1; + @endphp + @foreach ($coupons as $coupon) + + + + + + + + + @endforeach + + +
IDNombrePorcentajeMontoLímite + Nuevo Cupon +
{{ $coupon->id }}{{ $coupon->name }}{{ $coupon->percentage }}%${{ $coupon->amount }}{{ $coupon->limit }} + + + + + + + +
+ +
    + {{ $coupons->links() }} +
+
+@endsection diff --git a/resources/views/currentcontracts/ajax.blade.php b/resources/views/currentcontracts/ajax.blade.php new file mode 100644 index 0000000..55d2ae1 --- /dev/null +++ b/resources/views/currentcontracts/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('currentcontracts.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/currentcontracts/index.blade.php b/resources/views/currentcontracts/index.blade.php new file mode 100644 index 0000000..7610413 --- /dev/null +++ b/resources/views/currentcontracts/index.blade.php @@ -0,0 +1,123 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Contratos actuales

+
+
+ + Ver en Mapa + +
+ {!! Form::open(['method'=>'GET','url'=>'currentcontracts','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='supplier_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='category_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='address'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='references'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='appointment'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('amount')=='RFC'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='details'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='coupon_name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='transaction_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='code'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='created_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='updated_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + @php + $i=1; + @endphp + @foreach ($currentcontracts as $currentcontract) + + + + + + + + + + + + + + + + + + @endforeach + + +
IDUsuarioProveedorCategoríaDirecciónReferenciasCitaMontoDetallesCupónTransacción IDPin servicioFecha de creaciónUltimo incio de sesión
{{ $currentcontract->id }}{{ $currentcontract->user->name ?? null }}{{ $currentcontract->suppliers->company_name ?? null }}{{ $currentcontract->categories->name }}{{ $currentcontract->address }}{{ $currentcontract->references }}{{ $currentcontract->appointment }}${{ $currentcontract->amount }}{{ $currentcontract->details }}{{ (isset($currentcontract->coupon->name) ? $currentcontract->coupon->name : null) }}{{ $currentcontract->transaction_id }}{{ $currentcontract->code }}{{ $currentcontract->created_at }}{{ $currentcontract->updated_at }} + + + + +
+ +
    + {{ $currentcontracts->links() }} +
+
+@endsection diff --git a/resources/views/currentcontracts/map.blade.php b/resources/views/currentcontracts/map.blade.php new file mode 100644 index 0000000..3ae7908 --- /dev/null +++ b/resources/views/currentcontracts/map.blade.php @@ -0,0 +1,64 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Contratos actuales

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'currentcontracts','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + @php + $markers=array(); + + foreach ($currentcontracts as $currentcontract) { + $markers[] = + [ + 'title' => $currentcontract->id, + 'lat' => $currentcontract->location->getLat(), + 'lng' => $currentcontract->location->getLng(), + 'popup' => '

' . $currentcontract->id . '

' . $currentcontract->address . + '
' . $currentcontract->suppliers->company_name ?? null . '
' . ucfirst($currentcontract->categories->name ?? null) . + '
' . $currentcontract->appointment . '
$' . $currentcontract->amount . '
' . ucfirst($currentcontract->status->name) . + '
' . $currentcontract->score . ' de 5

', + ]; + } + $markers_json = str_replace(":", " => " ,str_replace("}", "]", str_replace("{", "[", json_encode($markers)))); + @endphp + + @map([ + 'lat' => 20.659698, + 'lng' => -103.349609, + 'zoom' => 12, + $markers_json + ]) + +
    + {{ $currentcontracts->links() }} +
+
+@endsection diff --git a/resources/views/finishedcontracts/ajax.blade.php b/resources/views/finishedcontracts/ajax.blade.php new file mode 100644 index 0000000..afeab2f --- /dev/null +++ b/resources/views/finishedcontracts/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('finishedcontracts.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/finishedcontracts/index.blade.php b/resources/views/finishedcontracts/index.blade.php new file mode 100644 index 0000000..68def60 --- /dev/null +++ b/resources/views/finishedcontracts/index.blade.php @@ -0,0 +1,131 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Contratos Finalizados

+
+
+ + Ver en Mapa + +
+ {!! Form::open(['method'=>'GET','url'=>'finishedcontracts','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='supplier_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='category_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='address'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='references'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='appointment'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('amount')=='RFC'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='details'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='status_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='score'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='comments'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='coupon_name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='transaction_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='created_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='updated_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + @php + $i=1; + @endphp + @foreach ($finishedcontracts as $finishedcontract) + + + + + + + + + + + + + + + + + + + + @endforeach + + +
IDUsuarioProveedorCategoríaDirecciónReferenciasCitaMontoDetallesStatusCalificaciónComentariosCupónTransacción IDFecha de creaciónUltimo incio de sesión
{{ $finishedcontract->id }}{{ $finishedcontract->user->name ?? null }}{{ $finishedcontract->suppliers->company_name ?? null }}{{ $finishedcontract->categories->name ?? null }}{{ $finishedcontract->address }}{{ $finishedcontract->references }}{{ $finishedcontract->appointment }}${{ $finishedcontract->amount }}{{ $finishedcontract->details }}{{ $finishedcontract->status->name }}{{ $finishedcontract->score }}{{ $finishedcontract->comments }}{{ (isset($finishedcontract->coupon->name) ? $finishedcontract->coupon->name : null) }}{{ $finishedcontract->transaction_id }}{{ $finishedcontract->created_at }}{{ $finishedcontract->updated_at }} + + + + +
+ +
    + {{ $finishedcontracts->links() }} +
+
+@endsection diff --git a/resources/views/finishedcontracts/map.blade.php b/resources/views/finishedcontracts/map.blade.php new file mode 100644 index 0000000..9d69f2f --- /dev/null +++ b/resources/views/finishedcontracts/map.blade.php @@ -0,0 +1,64 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Contratos Finalizados

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'finishedcontracts','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + @php + $markers=array(); + + foreach ($finishedcontracts as $finishedcontract) { + $markers[] = + [ + 'title' => $finishedcontract->id, + 'lat' => $finishedcontract->location->getLat(), + 'lng' => $finishedcontract->location->getLng(), + 'popup' => '

' . $finishedcontract->id . '

' . $finishedcontract->address . + '
' . $finishedcontract->suppliers->company_name ?? null . '
' . ucfirst($finishedcontract->categories->name ?? null) . + '
' . $finishedcontract->appointment . '
$' . $finishedcontract->amount . '
' . ucfirst($finishedcontract->status->name) . + '
' . $finishedcontract->score . ' de 5

', + ]; + } + $markers_json = str_replace(":", " => " ,str_replace("}", "]", str_replace("{", "[", json_encode($markers)))); + @endphp + + @map([ + 'lat' => 20.659698, + 'lng' => -103.349609, + 'zoom' => 12, + $markers_json + ]) + +
    + {{ $finishedcontracts->links() }} +
+
+@endsection diff --git a/resources/views/home.blade.php b/resources/views/home.blade.php new file mode 100644 index 0000000..c9e2702 --- /dev/null +++ b/resources/views/home.blade.php @@ -0,0 +1,69 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif +
+
+
+
Inicio
+ +
+ @if (session('status')) + + @endif + + Registro Proveedores +
+
+ + @php + use App\Models\Suppliers; + + $user = Auth::user(); + $supplier = $supplier = Suppliers::where('user_id', $user->id)->first(); + + if(isset($supplier->cover_photo)) { + echo(' +
+
Descarga la App
+
+ ¡Ya estás registrado como Héroe en JobHero, descarga la app! +
+ + '); + echo(''); + echo(' + + '); + echo(''); + echo(' +
+
+
+
Previsualización foto de portada
+
+ Así se vera la foto de portada en la aplicación, recuerda mantener un tamaño de imagen de 720x480px para una mejor visualización +
+
+
+
'); + } + @endphp +
+
+
+
+@endsection diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php new file mode 100644 index 0000000..7cc19e8 --- /dev/null +++ b/resources/views/layouts/app.blade.php @@ -0,0 +1,90 @@ + + + + + + + + + + {{ config('app.name', 'iChamba') }} + + + + + + + + + + + + + + @mapstyles + + +
+ + +
+ @yield('content') + {!! GoogleReCaptchaV3::init() !!} + + + + + + @yield('js') +
+
+ @mapscripts + + diff --git a/resources/views/parameters/ajax.blade.php b/resources/views/parameters/ajax.blade.php new file mode 100644 index 0000000..5ee54fb --- /dev/null +++ b/resources/views/parameters/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('parameters.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/parameters/form.blade.php b/resources/views/parameters/form.blade.php new file mode 100644 index 0000000..ec06d2e --- /dev/null +++ b/resources/views/parameters/form.blade.php @@ -0,0 +1,54 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($ichambaparameter)?'Editar':'Nuevo'}} Parametro

+
+ @if(isset($ichambaparameter)) + {!! Form::model($ichambaparameter,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("parameter","Parametro",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("parameter",null,["class"=>"form-control".($errors->has('parameter')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre del parametro']) !!} + +
+
+
+ {!! Form::label("num_value","Valor Númerico",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("num_value",null,["class"=>"form-control".($errors->has('num_value')?" is-invalid":""),"autofocus",'placeholder'=>'Valor númerico (opcional)']) !!} + +
+
+
+ {!! Form::label("string_value","Valor de texto",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("string_value",null,["class"=>"form-control".($errors->has('string_value')?" is-invalid":""),"autofocus",'placeholder'=>'Valor de texto (opcional)']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/parameters/index.blade.php b/resources/views/parameters/index.blade.php new file mode 100644 index 0000000..caf00d2 --- /dev/null +++ b/resources/views/parameters/index.blade.php @@ -0,0 +1,87 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Parámetros

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'parameters','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='parameter'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='num_value'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='string_value'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + + + @php + $i=1; + @endphp + @foreach ($ichambaparameters as $ichambaparameter) + + + + + + + + @endforeach + + +
IDParametroValor NúmericoValor de Texto + Nuevo Parametro +
{{ $ichambaparameter->id }}{{ $ichambaparameter->parameter }}{{ $ichambaparameter->num_value }}{{ $ichambaparameter->string_value }} + + + + + + + +
+ +
    + {{ $ichambaparameters->links() }} +
+
+@endsection diff --git a/resources/views/payments/ajax.blade.php b/resources/views/payments/ajax.blade.php new file mode 100644 index 0000000..520629c --- /dev/null +++ b/resources/views/payments/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('payments.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/payments/index.blade.php b/resources/views/payments/index.blade.php new file mode 100644 index 0000000..8b05cb9 --- /dev/null +++ b/resources/views/payments/index.blade.php @@ -0,0 +1,103 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Pagos

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'finishedcontracts','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='membership'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='RFC'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='clabe'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='bank_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='bank_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='amount'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='revenue'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='IVA'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='ISR'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='ichamba_fee'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + @php + $i=1; + @endphp + @foreach ($payments as $payment) + + + + + + + + + + + + + + + @endforeach + + +
IDUsuarioEmailRFC o CURPCLABEBancoCódigo BancoMontoUtilidadRetención IVARetención ISRRetención iChamba
{{ $payment->id }}{{ $payment->suppliers->company_name }}{{ $payment->suppliers->user->email }}{{ (!$payment->suppliers->RFC) ? $payment->suppliers->CURP : $payment->suppliers->RFC }}{{ $payment->suppliers->clabe }}{{ (isset($payment->suppliers->banks->name) ? $payment->suppliers->banks->name : null) }}{{ (isset($payment->suppliers->banks->code) ? $payment->suppliers->banks->code : null) }}{{ $payment->amount }}{{ $payment->revenue }}{{ $payment->IVA }}{{ $payment->ISR }}{{ $payment->ichamba_fee }}
+ +
    + {{ $payments->links() }} +
+
+@endsection diff --git a/resources/views/postulations/ajax.blade.php b/resources/views/postulations/ajax.blade.php new file mode 100644 index 0000000..f8db523 --- /dev/null +++ b/resources/views/postulations/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('postulations.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/postulations/index.blade.php b/resources/views/postulations/index.blade.php new file mode 100644 index 0000000..93f9119 --- /dev/null +++ b/resources/views/postulations/index.blade.php @@ -0,0 +1,107 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Postulaciones

+
+
+ + Ver en Mapa + +
+ {!! Form::open(['method'=>'GET','url'=>'postulation','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='category_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='address'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='references'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='appointment'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('amount')=='RFC'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='details'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='created_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='updated_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + @php + $i=1; + @endphp + @foreach ($postulations as $postulation) + + + + + + + + + + + + + + @endforeach + + +
IDUsuarioCategoríaDirecciónReferenciasCitaMontoDetallesFecha de creaciónUltimo incio de sesión
{{ $postulation->id }}{{ $postulation->user->name ?? null }}{{ $postulation->categories->name ?? null }}{{ $postulation->address }}{{ $postulation->references }}{{ $postulation->appointment }}${{ $postulation->amount }}{{ $postulation->details }}{{ $postulation->created_at }}{{ $postulation->updated_at }} + + + + +
+ +
    + {{ $postulations->links() }} +
+
+@endsection diff --git a/resources/views/postulations/map.blade.php b/resources/views/postulations/map.blade.php new file mode 100644 index 0000000..acf6608 --- /dev/null +++ b/resources/views/postulations/map.blade.php @@ -0,0 +1,62 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Postulaciones

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'postulation','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ @php + $markers=array(); + + foreach ($postulations as $postulation) { + $markers[] = + [ + 'title' => $postulation->id, + 'lat' => $postulation->location->getLat(), + 'lng' => $postulation->location->getLng(), + 'popup' => '

' . $postulation->id . '

' . $postulation->address . + '
' . ucfirst($postulation->categories->name ?? null) . + '
' . $postulation->appointment . '
' . $postulation->amount . '

', + ]; + } + $markers_json = str_replace(":", " => " ,str_replace("}", "]", str_replace("{", "[", json_encode($markers)))); + @endphp + + @map([ + 'lat' => 20.659698, + 'lng' => -103.349609, + 'zoom' => 12, + $markers_json + ]) + +
    + {{ $postulations->links() }} +
+
+@endsection diff --git a/resources/views/reports/ajax.blade.php b/resources/views/reports/ajax.blade.php new file mode 100644 index 0000000..f7e1fc6 --- /dev/null +++ b/resources/views/reports/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('reports.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/reports/comments.blade.php b/resources/views/reports/comments.blade.php new file mode 100644 index 0000000..38b15c0 --- /dev/null +++ b/resources/views/reports/comments.blade.php @@ -0,0 +1,119 @@ +@extends('layouts.app') + +@section('content') + + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Comentarios del reporte

+
+
+ +
+
Contrato:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @php + $i=1; + @endphp + + + + + + + + + + + + + + + + +
IDUsuarioProveedorCategoríaDirecciónCitaMontoCalificaciónComentariosTransacción IDFecha de creaciónFecha de fuera de casaConfirmación de descripción de la casa
{{ $contract->id }}{{ $contract->user->name ?? null }}{{ $contract->suppliers->company_name ?? null }}{{ $contract->categories->name ?? null }}{{ $contract->address }}{{ $contract->appointment }}${{ $contract->amount }}{{ $contract->score }}{{ $contract->comments }}{{ $contract->transaction_id }}{{ $contract->created_at }}{{ isset($nohome->confirmed_at) }}{{ isset($nohome->house_description) }}
+

+
Comentarios:
+ + + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='comment'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='created_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + @php + $i=1; + @endphp + @foreach ($comments as $comment) + + + + + + + + @endforeach + + +
UsuarioTeléfonoComentarioFecha de creación
{{ $comment->user->name }}{{ $comment->user->phone }}{{ $comment->comment }}{{ $comment->created_at }} + + + + +
+ +
    + {{ $comments->links() }} +
+
+@endsection diff --git a/resources/views/reports/index.blade.php b/resources/views/reports/index.blade.php new file mode 100644 index 0000000..a66daa1 --- /dev/null +++ b/resources/views/reports/index.blade.php @@ -0,0 +1,86 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Reportes

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'reports','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='contract_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='moderator_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='veredict'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + @php + $i=1; + @endphp + @foreach ($reports as $report) + + + + + + + + @endforeach + + +
IDID de ContratoModeradorVeredicto
{{ $report->id }}{{ $report->contract_id }}{{ $report->user->name }}{{ $report->veredict }} + + + + + + + + + + +
+ +
    + {{ $reports->links() }} +
+
+@endsection diff --git a/resources/views/reports/veredict.blade.php b/resources/views/reports/veredict.blade.php new file mode 100644 index 0000000..88095f0 --- /dev/null +++ b/resources/views/reports/veredict.blade.php @@ -0,0 +1,40 @@ +@extends('layouts.app') + +@section('content') +
+
+

Veredicto del Reporte

+
+ @if(isset($report)) + {!! Form::model($report,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("veredict","Veredicto",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("veredict",null,["class"=>"form-control".($errors->has('report')?" is-invalid":""),"autofocus",'placeholder'=>'Veredicto final']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/sidebar.blade.php b/resources/views/sidebar.blade.php new file mode 100644 index 0000000..b37ce09 --- /dev/null +++ b/resources/views/sidebar.blade.php @@ -0,0 +1,19 @@ + diff --git a/resources/views/status/ajax.blade.php b/resources/views/status/ajax.blade.php new file mode 100644 index 0000000..a9d8881 --- /dev/null +++ b/resources/views/status/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('status.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/status/form.blade.php b/resources/views/status/form.blade.php new file mode 100644 index 0000000..d5f70c0 --- /dev/null +++ b/resources/views/status/form.blade.php @@ -0,0 +1,40 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($status)?'Editar':'Nuevo'}} Status

+
+ @if(isset($status)) + {!! Form::model($status,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("name","Status",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("name",null,["class"=>"form-control".($errors->has('name')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre del Status']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/status/index.blade.php b/resources/views/status/index.blade.php new file mode 100644 index 0000000..cc4d5b1 --- /dev/null +++ b/resources/views/status/index.blade.php @@ -0,0 +1,81 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Status

+
+
+
+
+ + +
+
+
+
+ + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + + + @php + $i=1; + @endphp + @foreach ($status as $statu) + + + + + + @endforeach + + +
IDNombre + Nuevo Status +
{{ $statu->id }}{{ $statu->name }} + + + + + + + +
+ +
    + {{ $status->links() }} +
+
+@endsection diff --git a/resources/views/supplier/ajax.blade.php b/resources/views/supplier/ajax.blade.php new file mode 100644 index 0000000..f01b7e8 --- /dev/null +++ b/resources/views/supplier/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('supplier.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/supplier/form.blade.php b/resources/views/supplier/form.blade.php new file mode 100644 index 0000000..d6e4a2c --- /dev/null +++ b/resources/views/supplier/form.blade.php @@ -0,0 +1,182 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($supplier)?'Editar':'Nuevo'}} Proveedor

+
+ @if(isset($supplier)) + {!! Form::model($supplier,['method'=>'put','id'=>'frm', 'files' => 'true']) !!} + @else + {!! Form::open(['id'=>'frm', 'files' => 'true']) !!} + @endif + + + + +
+ {!! Form::label("company_name","Tu nombre o nombre de la empresa*",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("company_name",null,["class"=>"form-control".($errors->has('company_name')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre de la empresa o negocio']) !!} + +
+
+
+ {!! Form::label("cover_photo","Foto de portada",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::file("cover_photo", null) !!} + +
+
+
+ {!! Form::label("categories","Categorías*",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("categories",str_replace(array('[',']','"'),"",$categories_names),["id"=>"categories","class"=>"form-control".($errors->has('categories')?" is-invalid":""),"autofocus",'placeholder'=>'Categoría 1, Categoría 2,']) !!} + +
+
+
+ {!! Form::label("tags","Palabras clave",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("tags",null,["data-role"=>"tagsinput","class"=>"form-control".($errors->has('tags')?" is-invalid":""),"autofocus",'placeholder'=>'Palabra clave 1, Palabra clave 2, Palabra clave 3']) !!} + +
+
+ +
+ {!! Form::label("RFC","RFC",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("RFC",null,["class"=>"form-control".($errors->has('RFC')?" is-invalid":""),"autofocus",'placeholder'=>'RFC']) !!} + +
+
+
+ {!! Form::label("CURP","CURP",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("CURP",null,["class"=>"form-control".($errors->has('CURP')?" is-invalid":""),"autofocus",'placeholder'=>'CURP']) !!} + +
+
+
+ {!! Form::label("clabe","CLABE",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("clabe",null,["class"=>"form-control".($errors->has('clabe')?" is-invalid":""),"autofocus",'placeholder'=>'CLABE Interbancaria']) !!} + +
+
+
+ {!! Form::label("bank","Banco",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::select("bank", $banks, isset($supplier) ? $supplier->bank_id : null) !!} + +
+
+
+ {!! Form::label("taxes_id","Regimen Fiscal",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::select("taxes_id", array( + '1' => 'Persona Física', + '2' => 'Persona Moral', + ), (isset($supplier) ? (($supplier->regimen!='Persona Moral') ? '1' : '2') : null)) !!} + +
(Sino esta registrado ante el SAT, seleccione Persona Física) +
+
+ +
+ {!! Form::label("minimun_fee","Tarifa de revisión",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::number("minimun_fee",'150',["class"=>"form-control".($errors->has('minimun_fee')?" is-invalid":""),"autofocus",'placeholder'=>'Mínimo $150']) !!} + +
+
+
+ {!! Form::label("address","Dirección*",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("address",null,["class"=>"form-control".($errors->has('address')?" is-invalid":""),"autofocus",'placeholder'=>'Ingresa tu dirección']) !!} + +
+
+
+ {!! Form::label("references_options","¿Cómo supiste de nosotros?*",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::select("references_options", array( + '1' => 'Radio', + '2' => 'TV', + '3' => 'Redes Sociales', + '4' => 'Amigos', + '6' => 'Cámara de Comercio', + '5' => 'Otro', + ), isset($supplier->references)) !!} + +
+
+
+ {!! Form::label("references","Si es otro, específica",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("references",null,["class"=>"form-control".($errors->has('references')?" is-invalid":""),"autofocus",'placeholder'=>'Empresa o el nombre de un héroe registrado']) !!} + +
+
+
+ {!! Form::hidden("lat",null,["id"=>"lat","class"=>"form-control".($errors->has('lat')?" is-invalid":""),"autofocus"]) !!} +
+
+ {!! Form::hidden("lng",null,["id"=>"lng","class"=>"form-control".($errors->has('lng')?" is-invalid":""),"autofocus"]) !!} +
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/supplier/index.blade.php b/resources/views/supplier/index.blade.php new file mode 100644 index 0000000..9e36b58 --- /dev/null +++ b/resources/views/supplier/index.blade.php @@ -0,0 +1,154 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Proveedores

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'supplier','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='user_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='membership'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='company_name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='cover_photo'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + + + {{request()->session()->get('field')=='tags'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + {{request()->session()->get('field')=='minimun_fee'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + + + + {{request()->session()->get('field')=='address'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='location'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='references'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='created_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='updated_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + @php + $i=1; + @endphp + @foreach ($suppliers as $supplier) + + + + + + + + + + + + + + + + + + + + + + @endforeach + + +
IDUsuarioMembresíaEmpresaFoto de portadaCategoríasCategorías (ingles)TagsMonto MínimoCalificaciónDirecciónCoordenadasReferenciado porFecha de creaciónUltima actualización
{{ $supplier->id }}{{ $supplier->user->name }}{{ ($supplier->membership != 0) ? "Miembro" : "No miembro" }}{{ $supplier->company_name }}{{ str_replace(",",", ", str_replace(array('[',']','"'),"",$supplier->categories->pluck('name'))) }}{{ str_replace(",",", ", str_replace(array('[',']','"'),"",$supplier->categories->pluck('en_name'))) }}{{ $supplier->tags }}{{ $supplier->minimun_fee }}{{ $supplier->total_score/$supplier->finished_jobs }}{{ $supplier->address }}{{ $supplier->location->getLat() }}, {{ $supplier->location->getLng() }}{{ $supplier->references }}{{ $supplier->created_at }}{{ $supplier->updated_at }} + + + + + + + + + + +
+ +
    + {{ $suppliers->links() }} +
+
+@endsection diff --git a/resources/views/users/ajax.blade.php b/resources/views/users/ajax.blade.php new file mode 100644 index 0000000..aeae01b --- /dev/null +++ b/resources/views/users/ajax.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.app') + +@section('content') +
+ @include('users.index') +
+
+ +
+ Loading +
+@endsection + +@section('js') + +@endsection diff --git a/resources/views/users/form.blade.php b/resources/views/users/form.blade.php new file mode 100644 index 0000000..cf260a9 --- /dev/null +++ b/resources/views/users/form.blade.php @@ -0,0 +1,72 @@ +@extends('layouts.app') + +@section('content') +
+
+

{{isset($user)?'Editar':'New'}} Usuario

+
+ @if(isset($user)) + {!! Form::model($user,['method'=>'put','id'=>'frm']) !!} + @else + {!! Form::open(['id'=>'frm']) !!} + @endif +
+ {!! Form::label("name","Nombre",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("name",null,["class"=>"form-control".($errors->has('name')?" is-invalid":""),"autofocus",'placeholder'=>'Nombre']) !!} + +
+
+ +
+ {!! Form::label("role","Rol",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::select("role", array( + '1' => 'Usuario', + '2' => 'Proveedor', + '3' => 'Analisis y publicidad', + '4' => 'Facturación', + '5' => 'Moderador', + '6' => 'Administrador', + '7' => 'SuperAdmin' + ), $user->roles->id) !!} + +
+
+ +
+ {!! Form::label("email","Correo electrónico",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("email",null,["class"=>"form-control".($errors->has('email')?" is-invalid":""),'placeholder'=>'Correo electrónico']) !!} + +
+
+ +
+ {!! Form::label("openpay_id","Openpay ID",["class"=>"col-form-label col-md-3 col-lg-2"]) !!} +
+ {!! Form::text("openpay_id",null,["class"=>"form-control".($errors->has('openpay_id')?" is-invalid":""),'placeholder'=>'Openpay ID']) !!} + +
+
+ @if ($errors->any()) +
+
    + @foreach ($errors->all() as $error) +
  • {{ $error }}
  • + @endforeach +
+
+ @endif +
+
+
+ + Atrás + {!! Form::button("Guardar",["type" => "submit","class"=>"btn btn-primary btn-xs"])!!} +
+
+ {!! Form::close() !!} +
+
+@endsection diff --git a/resources/views/users/index.blade.php b/resources/views/users/index.blade.php new file mode 100644 index 0000000..7948cbb --- /dev/null +++ b/resources/views/users/index.blade.php @@ -0,0 +1,115 @@ +@extends('layouts.app') + +@section('content') + @if (Auth::user()->role_id >= 5) +
+ @include('sidebar') +
+ @else +
+ @endif + +
+
+

Usuarios

+
+
+
+ {!! Form::open(['method'=>'GET','url'=>'users','class'=>'navbar-form navbar-left','role'=>'search']) !!} +
+ +
+ +
+
+ {!! Form::close() !!} +
+
+
+ + + + + + {{request()->session()->get('field')=='id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='name'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='email'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='role_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='social_id'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='phone'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='reported'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='phone_verified_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='created_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + {{request()->session()->get('field')=='updated_at'?(request()->session()->get('sort')=='asc'?'':''):''}} + + + + @php + $i=1; + @endphp + @foreach ($users as $user) + + + + + + + + + + + + + + @endforeach + + +
IDNombreCorreo electrónicoRol de usuarioID de red socialTeléfonoReportesFecha de verificación de teléfonoFecha de creaciónUltima modificación
{{ $user->id }}{{ $user->name }}{{ $user->email }}{{ $user->roles->name }}{{ $user->social_id }}{{ $user->phone }}{{ ($user->reported != 0) ? "Reportado" : "No reportado" }}{{ $user->phone_verified_at }}{{ $user->created_at }}{{ $user->updated_at }} + + + + @php + if ($user->role_id >= 2) { + echo (' + + + '); + } + @endphp + + + + +
+ +
    + {{ $users->links() }} +
+
+@endsection diff --git a/resources/views/vendor/mail/html/button.blade.php b/resources/views/vendor/mail/html/button.blade.php new file mode 100644 index 0000000..512c1d8 --- /dev/null +++ b/resources/views/vendor/mail/html/button.blade.php @@ -0,0 +1,19 @@ + + + + + diff --git a/resources/views/vendor/mail/html/footer.blade.php b/resources/views/vendor/mail/html/footer.blade.php new file mode 100644 index 0000000..33f7dad --- /dev/null +++ b/resources/views/vendor/mail/html/footer.blade.php @@ -0,0 +1,11 @@ + + + + + + + + + diff --git a/resources/views/vendor/mail/html/header.blade.php b/resources/views/vendor/mail/html/header.blade.php new file mode 100644 index 0000000..46c817f --- /dev/null +++ b/resources/views/vendor/mail/html/header.blade.php @@ -0,0 +1,7 @@ + + + + logo + + + diff --git a/resources/views/vendor/mail/html/layout.blade.php b/resources/views/vendor/mail/html/layout.blade.php new file mode 100644 index 0000000..eded495 --- /dev/null +++ b/resources/views/vendor/mail/html/layout.blade.php @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + diff --git a/resources/views/vendor/mail/html/message.blade.php b/resources/views/vendor/mail/html/message.blade.php new file mode 100644 index 0000000..1ae9ed8 --- /dev/null +++ b/resources/views/vendor/mail/html/message.blade.php @@ -0,0 +1,27 @@ +@component('mail::layout') + {{-- Header --}} + @slot('header') + @component('mail::header', ['url' => config('app.url')]) + {{ config('app.name') }} + @endcomponent + @endslot + + {{-- Body --}} + {{ $slot }} + + {{-- Subcopy --}} + @isset($subcopy) + @slot('subcopy') + @component('mail::subcopy') + {{ $subcopy }} + @endcomponent + @endslot + @endisset + + {{-- Footer --}} + @slot('footer') + @component('mail::footer') + © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.') + @endcomponent + @endslot +@endcomponent diff --git a/resources/views/vendor/mail/html/panel.blade.php b/resources/views/vendor/mail/html/panel.blade.php new file mode 100644 index 0000000..783af16 --- /dev/null +++ b/resources/views/vendor/mail/html/panel.blade.php @@ -0,0 +1,13 @@ + + + + + diff --git a/resources/views/vendor/mail/html/promotion.blade.php b/resources/views/vendor/mail/html/promotion.blade.php new file mode 100644 index 0000000..f78b358 --- /dev/null +++ b/resources/views/vendor/mail/html/promotion.blade.php @@ -0,0 +1,7 @@ + + + + + diff --git a/resources/views/vendor/mail/html/promotion/button.blade.php b/resources/views/vendor/mail/html/promotion/button.blade.php new file mode 100644 index 0000000..1dcb2ee --- /dev/null +++ b/resources/views/vendor/mail/html/promotion/button.blade.php @@ -0,0 +1,13 @@ + + + + +
+ + + + +
+ {{ $slot }} +
+
diff --git a/resources/views/vendor/mail/html/subcopy.blade.php b/resources/views/vendor/mail/html/subcopy.blade.php new file mode 100644 index 0000000..f559e8f --- /dev/null +++ b/resources/views/vendor/mail/html/subcopy.blade.php @@ -0,0 +1,7 @@ + + + + + diff --git a/resources/views/vendor/mail/html/table.blade.php b/resources/views/vendor/mail/html/table.blade.php new file mode 100644 index 0000000..a5f3348 --- /dev/null +++ b/resources/views/vendor/mail/html/table.blade.php @@ -0,0 +1,3 @@ +
+{{ Illuminate\Mail\Markdown::parse($slot) }} +
diff --git a/resources/views/vendor/mail/html/themes/default.css b/resources/views/vendor/mail/html/themes/default.css new file mode 100644 index 0000000..7b6c055 --- /dev/null +++ b/resources/views/vendor/mail/html/themes/default.css @@ -0,0 +1,300 @@ +/* Base */ + +body, +body *:not(html):not(style):not(br):not(tr):not(code) { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, + 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; + box-sizing: border-box; +} + +body { + background-color: #f8fafc; + color: #74787e; + height: 100%; + hyphens: auto; + line-height: 1.4; + margin: 0; + -moz-hyphens: auto; + -ms-word-break: break-all; + width: 100% !important; + -webkit-hyphens: auto; + -webkit-text-size-adjust: none; + word-break: break-all; + word-break: break-word; +} + +p, +ul, +ol, +blockquote { + line-height: 1.4; + text-align: left; +} + +a { + color: #3869d4; +} + +a img { + border: none; +} + +/* Typography */ + +h1 { + color: #3d4852; + font-size: 19px; + font-weight: bold; + margin-top: 0; + text-align: left; +} + +h2 { + color: #3d4852; + font-size: 16px; + font-weight: bold; + margin-top: 0; + text-align: left; +} + +h3 { + color: #3d4852; + font-size: 14px; + font-weight: bold; + margin-top: 0; + text-align: left; +} + +p { + color: #3d4852; + font-size: 16px; + line-height: 1.5em; + margin-top: 0; + text-align: left; +} + +p.sub { + font-size: 12px; +} + +img { + max-width: 100%; +} + +/* Layout */ + +.wrapper { + background-color: #f8fafc; + margin: 0; + padding: 0; + width: 100%; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; +} + +.content { + margin: 0; + padding: 0; + width: 100%; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; +} + +/* Header */ + +.header { + padding: 25px 0; + text-align: center; +} + +.header a { + color: #bbbfc3; + font-size: 19px; + font-weight: bold; + text-decoration: none; + text-shadow: 0 1px 0 white; +} + +/* Body */ + +.body { + background-color: #ffffff; + border-bottom: 1px solid #edeff2; + border-top: 1px solid #edeff2; + margin: 0; + padding: 0; + width: 100%; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; +} + +.inner-body { + background-color: #ffffff; + margin: 0 auto; + padding: 0; + width: 570px; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 570px; +} + +/* Subcopy */ + +.subcopy { + border-top: 1px solid #edeff2; + margin-top: 25px; + padding-top: 25px; +} + +.subcopy p { + font-size: 12px; +} + +/* Footer */ + +.footer { + margin: 0 auto; + padding: 0; + text-align: center; + width: 570px; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 570px; +} + +.footer p { + color: #aeaeae; + font-size: 12px; + text-align: center; +} + +/* Tables */ + +.table table { + margin: 30px auto; + width: 100%; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; +} + +.table th { + border-bottom: 1px solid #edeff2; + padding-bottom: 8px; + margin: 0; +} + +.table td { + color: #74787e; + font-size: 15px; + line-height: 18px; + padding: 10px 0; + margin: 0; +} + +.content-cell { + padding: 35px; +} + +/* Buttons */ + +.action { + margin: 30px auto; + padding: 0; + text-align: center; + width: 100%; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; +} + +.button { + border-radius: 3px; + box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16); + color: #fff; + display: inline-block; + text-decoration: none; + -webkit-text-size-adjust: none; +} + +.button-blue, +.button-primary { + background-color: #3490dc; + border-top: 10px solid #3490dc; + border-right: 18px solid #3490dc; + border-bottom: 10px solid #3490dc; + border-left: 18px solid #3490dc; +} + +.button-secondary { + background-color: #ff7d00; + border-top: 10px solid #ff7d00; + border-right: 18px solid #ff7d00; + border-bottom: 10px solid #ff7d00; + border-left: 18px solid #ff7d00; +} + +.button-green, +.button-success { + background-color: #38c172; + border-top: 10px solid #38c172; + border-right: 18px solid #38c172; + border-bottom: 10px solid #38c172; + border-left: 18px solid #38c172; +} + +.button-red, +.button-error { + background-color: #e3342f; + border-top: 10px solid #e3342f; + border-right: 18px solid #e3342f; + border-bottom: 10px solid #e3342f; + border-left: 18px solid #e3342f; +} + +/* Panels */ + +.panel { + margin: 0 0 21px; +} + +.panel-content { + background-color: #f1f5f8; + padding: 16px; +} + +.panel-item { + padding: 0; +} + +.panel-item p:last-of-type { + margin-bottom: 0; + padding-bottom: 0; +} + +/* Promotions */ + +.promotion { + background-color: #ffffff; + border: 2px dashed #9ba2ab; + margin: 0; + margin-bottom: 25px; + margin-top: 25px; + padding: 24px; + width: 100%; + -premailer-cellpadding: 0; + -premailer-cellspacing: 0; + -premailer-width: 100%; +} + +.promotion h1 { + text-align: center; +} + +.promotion p { + font-size: 15px; + text-align: center; +} diff --git a/resources/views/vendor/mail/text/button.blade.php b/resources/views/vendor/mail/text/button.blade.php new file mode 100644 index 0000000..97444eb --- /dev/null +++ b/resources/views/vendor/mail/text/button.blade.php @@ -0,0 +1 @@ +{{ $slot }}: {{ $url }} diff --git a/resources/views/vendor/mail/text/footer.blade.php b/resources/views/vendor/mail/text/footer.blade.php new file mode 100644 index 0000000..3338f62 --- /dev/null +++ b/resources/views/vendor/mail/text/footer.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/mail/text/header.blade.php b/resources/views/vendor/mail/text/header.blade.php new file mode 100644 index 0000000..aaa3e57 --- /dev/null +++ b/resources/views/vendor/mail/text/header.blade.php @@ -0,0 +1 @@ +[{{ $slot }}]({{ $url }}) diff --git a/resources/views/vendor/mail/text/layout.blade.php b/resources/views/vendor/mail/text/layout.blade.php new file mode 100644 index 0000000..9378baa --- /dev/null +++ b/resources/views/vendor/mail/text/layout.blade.php @@ -0,0 +1,9 @@ +{!! strip_tags($header) !!} + +{!! strip_tags($slot) !!} +@isset($subcopy) + +{!! strip_tags($subcopy) !!} +@endisset + +{!! strip_tags($footer) !!} diff --git a/resources/views/vendor/mail/text/message.blade.php b/resources/views/vendor/mail/text/message.blade.php new file mode 100644 index 0000000..1ae9ed8 --- /dev/null +++ b/resources/views/vendor/mail/text/message.blade.php @@ -0,0 +1,27 @@ +@component('mail::layout') + {{-- Header --}} + @slot('header') + @component('mail::header', ['url' => config('app.url')]) + {{ config('app.name') }} + @endcomponent + @endslot + + {{-- Body --}} + {{ $slot }} + + {{-- Subcopy --}} + @isset($subcopy) + @slot('subcopy') + @component('mail::subcopy') + {{ $subcopy }} + @endcomponent + @endslot + @endisset + + {{-- Footer --}} + @slot('footer') + @component('mail::footer') + © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.') + @endcomponent + @endslot +@endcomponent diff --git a/resources/views/vendor/mail/text/panel.blade.php b/resources/views/vendor/mail/text/panel.blade.php new file mode 100644 index 0000000..3338f62 --- /dev/null +++ b/resources/views/vendor/mail/text/panel.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/mail/text/promotion.blade.php b/resources/views/vendor/mail/text/promotion.blade.php new file mode 100644 index 0000000..3338f62 --- /dev/null +++ b/resources/views/vendor/mail/text/promotion.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/mail/text/promotion/button.blade.php b/resources/views/vendor/mail/text/promotion/button.blade.php new file mode 100644 index 0000000..aaa3e57 --- /dev/null +++ b/resources/views/vendor/mail/text/promotion/button.blade.php @@ -0,0 +1 @@ +[{{ $slot }}]({{ $url }}) diff --git a/resources/views/vendor/mail/text/subcopy.blade.php b/resources/views/vendor/mail/text/subcopy.blade.php new file mode 100644 index 0000000..3338f62 --- /dev/null +++ b/resources/views/vendor/mail/text/subcopy.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/mail/text/table.blade.php b/resources/views/vendor/mail/text/table.blade.php new file mode 100644 index 0000000..3338f62 --- /dev/null +++ b/resources/views/vendor/mail/text/table.blade.php @@ -0,0 +1 @@ +{{ $slot }} diff --git a/resources/views/vendor/notifications/email.blade.php b/resources/views/vendor/notifications/email.blade.php new file mode 100644 index 0000000..7dc961f --- /dev/null +++ b/resources/views/vendor/notifications/email.blade.php @@ -0,0 +1,63 @@ +@component('mail::message') +{{-- Greeting --}} +@if (! empty($greeting)) +# {{ $greeting }} +@else +@if ($level === 'error') +# @lang('Whoops!') +@else +# @lang('¡Hola!') +@endif +@endif + +{{-- Intro Lines --}} +@foreach ($introLines as $line) +{{ $line }} + +@endforeach + +{{-- Action Button --}} +@isset($actionText) + +@component('mail::button', ['url' => $actionUrl, 'color' => $color]) +{{ $actionText }} +@endcomponent +@endisset + +{{-- Outro Lines --}} +@foreach ($outroLines as $line) +{{ $line }} + +@endforeach + +{{-- Salutation --}} +@if (! empty($salutation)) +{{ $salutation }} +@else +@lang('Saludos'),
+{{ config('app.name') }} +@endif + +{{-- Subcopy --}} +@isset($actionText) +@slot('subcopy') +@lang( + "Si tienes problemas al dar clic en el botón \":actionText\", copía y pega el siguiente enlace\n". + 'en tu navegador web: [:actionURL](:actionURL)', + [ + 'actionText' => $actionText, + 'actionURL' => $actionUrl, + ] +) +@endslot +@endisset +@endcomponent diff --git a/resources/views/welcome.blade.php b/resources/views/welcome.blade.php new file mode 100644 index 0000000..af1c02a --- /dev/null +++ b/resources/views/welcome.blade.php @@ -0,0 +1,99 @@ + + + + + + + Laravel + + + + + + + + +
+ @if (Route::has('login')) + + @endif + +
+
+ Laravel +
+ + +
+
+ + diff --git a/routes/api.php b/routes/api.php new file mode 100644 index 0000000..0ad06ec --- /dev/null +++ b/routes/api.php @@ -0,0 +1,93 @@ + 'auth' +], function () { + Route::post('login', 'Auth\AuthController@login')->name('login'); + Route::post('register', 'Auth\AuthController@register'); + Route::post('fb', 'Auth\AuthController@fb')->name('fb'); + Route::post('google', 'Auth\AuthController@google')->name('google'); + //Route::post('apple', 'Auth\AuthController@apple')->name('apple'); + Route::post('forgot/password', 'Auth\ForgotPasswordController@sendResetLinkEmail'); + + Route::group([ + 'middleware' => 'auth:api' + ], function() { + Route::get('logout', 'Auth\AuthController@logout'); + Route::get('user', 'Auth\AuthController@user'); + Route::post('verify', 'Auth\AuthController@verify')->name('verify'); + }); +}); + +Route::group([ + 'prefix' => 'payments', + 'middleware' => 'auth:api' +], function() { + Route::post('addcard', 'PaymentController@addcard'); + Route::post('deletecard', 'PaymentController@deletecard'); + Route::get('getcards', 'PaymentController@getcards'); +}); + +Route::group([ + 'prefix' => 'contracts', + 'middleware' => 'auth:api' +], function() { + Route::post('create', 'ContractController@create'); + Route::post('coupon', 'ContractController@coupon'); + Route::post('coupon-extra', 'ContractController@couponextra'); + Route::get('pending', 'PostulationController@getpendingcontracts'); + Route::get('current', 'ContractController@getcurrentcontracts'); + Route::get('finished', 'ContractController@getfinishedcontracts'); + Route::post('cancel', 'ContractController@cancelcontract'); + Route::post('start', 'ContractController@startcontract'); + Route::post('review', 'ContractController@reviewcontract'); + Route::post('extra', 'ContractController@extra'); + Route::post('report', 'ReportController@report'); + Route::get('nohome-check', 'NoHomeController@nohomecheck'); + Route::post('nohome-confirm', 'NoHomeController@nohomeconfirm'); + //Route::post('nohome-test', 'NoHomeController@test'); + //Route::get('redated', 'PostulationController@deletecard'); + //Route::get('current', 'PostulationController@getcards'); + //Route::get('finished', 'PostulationController@getcards'); +}); + +Route::group([ + 'middleware' => 'auth:api' +], function() { + Route::post('add-hero', 'SupplierController@hero'); + Route::post('create-postulation', 'PostulationController@create'); + Route::get('check-category', 'SupplierController@check'); + Route::get('get-postulations', 'SupplierController@getpostulation'); + Route::get('get-contracted-postulations', 'SupplierController@getcontractedpostulation'); + Route::get('get-finished-postulations', 'PostulationController@getfinishedpostulations'); + Route::get('get-postulants', 'PostulationController@getpostulants'); + Route::post('postulate', 'PostulationController@postulate'); +}); + +Route::get('/parameters', 'IChambaParameterController@parameters'); + + +Route::get('/en-categories-name', function () { + $categories=Categories::all()->pluck('en_name')->toArray(); + return response()->json($categories); +}); + +Route::get('/categories-name', function () { + $categories=Categories::all()->pluck('name')->toArray(); + return response()->json($categories); +}); diff --git a/routes/channels.php b/routes/channels.php new file mode 100644 index 0000000..f16a20b --- /dev/null +++ b/routes/channels.php @@ -0,0 +1,16 @@ +id === (int) $id; +}); diff --git a/routes/console.php b/routes/console.php new file mode 100644 index 0000000..75dd0cd --- /dev/null +++ b/routes/console.php @@ -0,0 +1,18 @@ +comment(Inspiring::quote()); +})->describe('Display an inspiring quote'); diff --git a/routes/web.php b/routes/web.php new file mode 100644 index 0000000..1cc294e --- /dev/null +++ b/routes/web.php @@ -0,0 +1,140 @@ + false, + 'verify' => false +]); + +Route::group([ +], function() { + Route::get('/home', 'HomeController@index')->name('home'); + Route::group([ + 'prefix' => 'users' + ], function() { + Route::get('/', 'UserController@index')->middleware('rolecheck:5'); + Route::delete('delete/{id}', 'UserController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'UserController@update')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'supplier' + ], function() { + Route::get('/', 'SupplierController@index')->middleware('rolecheck:5'); + Route::delete('delete/{id}', 'SupplierController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'SupplierController@update')->middleware('rolecheck:5'); + Route::match(['get', 'put'], 'certificate/{id}', 'SupplierController@certificate')->middleware('rolecheck:5'); + Route::match(['get', 'put', 'post'], 'create/{id}', 'SupplierController@create')->middleware('rolecheck:5'); + Route::match(['get', 'put', 'post'], 'edit', 'SupplierController@edit'); + }); + Route::group([ + 'prefix' => 'categories' + ], function() { + Route::get('/', 'CategoriesController@index')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'CategoriesController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'CategoriesController@update')->middleware('rolecheck:6'); + Route::match(['get', 'post'], 'create', 'CategoriesController@create')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'banks' + ], function() { + Route::get('/', 'BanksController@index')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'BanksController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'BanksController@update')->middleware('rolecheck:6'); + Route::match(['get', 'post'], 'create', 'BanksController@create')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'cards' + ], function() { + Route::get('/', 'PaymentController@cardsindex')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'PaymentController@destroy')->middleware('superadmin'); + //Route::match(['get', 'put'], 'update/{id}', 'PaymentController@update')->middleware('rolecheck:6'); + //Route::match(['get', 'post'], 'create', 'PaymentController@create')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'coupons' + ], function() { + Route::get('/', 'CouponController@index')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'CouponController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'CouponController@update')->middleware('rolecheck:6'); + Route::match(['get', 'post'], 'create', 'CouponController@create')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'parameters' + ], function() { + Route::get('/', 'IChambaParameterController@index')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'IChambaParameterController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'IChambaParameterController@update')->middleware('rolecheck:6'); + Route::match(['get', 'post'], 'create', 'IChambaParameterController@create')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'status' + ], function() { + Route::get('/', 'StatusController@index')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'StatusController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'StatusController@update')->middleware('rolecheck:6'); + Route::match(['get', 'post'], 'create', 'StatusController@create')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'payments' + ], function() { + Route::get('/', 'PaymentController@index')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'StatusController@destroy')->middleware('superadmin'); + Route::match(['get', 'put'], 'update/{id}', 'StatusController@update')->middleware('rolecheck:6'); + Route::match(['get', 'post'], 'create', 'StatusController@create')->middleware('rolecheck:6'); + }); + Route::group([ + 'prefix' => 'postulations' + ], function() { + Route::get('/', 'PostulationController@index')->middleware('rolecheck:6'); + Route::get('/delete-expired', 'PostulationController@deleteexpired')->middleware('appenginecron'); + Route::get('/map', 'PostulationController@map')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'PostulationController@destroy')->middleware('superadmin'); + }); + + Route::group([ + 'prefix' => 'currentcontracts' + ], function() { + Route::get('/', 'ContractController@currentcontracts')->middleware('rolecheck:6'); + Route::get('/delete-missed', 'ContractController@deletemissed')->middleware('appenginecron'); + Route::get('/map', 'ContractController@mapcurrentcontracts')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'ContractController@currentdestroy')->middleware('superadmin'); + }); + + Route::group([ + 'prefix' => 'finishedcontracts' + ], function() { + Route::get('/', 'ContractController@finishedcontracts')->middleware('rolecheck:6'); + Route::get('/map', 'ContractController@mapfinishedcontracts')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'ContractController@finisheddestroy')->middleware('superadmin'); + }); + Route::group([ + 'prefix' => 'reports' + ], function() { + Route::get('/', 'ReportController@index')->middleware('rolecheck:6'); + Route::delete('delete/{id}', 'ReportController@destroy')->middleware('superadmin'); + Route::get('comments/{id}/{contract_id}', 'ReportCommentController@index')->middleware('rolecheck:6'); + Route::delete('comments/delete/{id}/{contract_id}', 'ReportCommentController@destroy')->middleware('superadmin'); + Route::get('veredict/{id}', 'ReportController@veredict')->middleware('rolecheck:6'); + //Route::match(['get', 'post'], 'create', 'CouponController@create')->middleware('rolecheck:6'); + }); +}); + + +Route::get('user/verify/{token}', 'Auth\AuthController@checkemail')->name('checkemail'); + +Route::get('auth/{provider}', 'Auth\LoginController@redirectToProvider'); +Route::get('auth/{provider}/callback', 'Auth\LoginController@handleProviderCallback'); diff --git a/server.php b/server.php new file mode 100644 index 0000000..5fb6379 --- /dev/null +++ b/server.php @@ -0,0 +1,21 @@ + + */ + +$uri = urldecode( + parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH) +); + +// This file allows us to emulate Apache's "mod_rewrite" functionality from the +// built-in PHP web server. This provides a convenient way to test a Laravel +// application without having installed a "real" web server software here. +if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) { + return false; +} + +require_once __DIR__.'/public/index.php'; diff --git a/storage/app/.gitignore b/storage/app/.gitignore new file mode 100644 index 0000000..8f4803c --- /dev/null +++ b/storage/app/.gitignore @@ -0,0 +1,3 @@ +* +!public/ +!.gitignore diff --git a/storage/app/public/.gitignore b/storage/app/public/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/app/public/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/storage/framework/.gitignore b/storage/framework/.gitignore new file mode 100644 index 0000000..b02b700 --- /dev/null +++ b/storage/framework/.gitignore @@ -0,0 +1,8 @@ +config.php +routes.php +schedule-* +compiled.php +services.json +events.scanned.php +routes.scanned.php +down diff --git a/storage/framework/cache/.gitignore b/storage/framework/cache/.gitignore new file mode 100644 index 0000000..01e4a6c --- /dev/null +++ b/storage/framework/cache/.gitignore @@ -0,0 +1,3 @@ +* +!data/ +!.gitignore diff --git a/storage/framework/cache/data/.gitignore b/storage/framework/cache/data/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/framework/cache/data/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/storage/framework/sessions/.gitignore b/storage/framework/sessions/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/framework/sessions/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/storage/framework/testing/.gitignore b/storage/framework/testing/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/framework/testing/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/storage/framework/views/.gitignore b/storage/framework/views/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/framework/views/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/storage/logs/.gitignore b/storage/logs/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/logs/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/tests/CreatesApplication.php b/tests/CreatesApplication.php new file mode 100644 index 0000000..547152f --- /dev/null +++ b/tests/CreatesApplication.php @@ -0,0 +1,22 @@ +make(Kernel::class)->bootstrap(); + + return $app; + } +} diff --git a/tests/Feature/ExampleTest.php b/tests/Feature/ExampleTest.php new file mode 100644 index 0000000..f31e495 --- /dev/null +++ b/tests/Feature/ExampleTest.php @@ -0,0 +1,21 @@ +get('/'); + + $response->assertStatus(200); + } +} diff --git a/tests/TestCase.php b/tests/TestCase.php new file mode 100644 index 0000000..2932d4a --- /dev/null +++ b/tests/TestCase.php @@ -0,0 +1,10 @@ +assertTrue(true); + } +} diff --git a/webpack.mix.js b/webpack.mix.js new file mode 100644 index 0000000..8a923cb --- /dev/null +++ b/webpack.mix.js @@ -0,0 +1,15 @@ +const mix = require('laravel-mix'); + +/* + |-------------------------------------------------------------------------- + | Mix Asset Management + |-------------------------------------------------------------------------- + | + | Mix provides a clean, fluent API for defining some Webpack build steps + | for your Laravel application. By default, we are compiling the Sass + | file for the application as well as bundling up all the JS files. + | + */ + +mix.js('resources/js/app.js', 'public/js') + .sass('resources/sass/app.scss', 'public/css'); diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..ad03cb4 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,5794 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" + dependencies: + "@babel/highlight" "^7.0.0" + +"@babel/core@^7.0.0-beta.49", "@babel/core@^7.2.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.0.tgz#6ed6a2881ad48a732c5433096d96d1b0ee5eb734" + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.5.0" + "@babel/helpers" "^7.5.0" + "@babel/parser" "^7.5.0" + "@babel/template" "^7.4.4" + "@babel/traverse" "^7.5.0" + "@babel/types" "^7.5.0" + convert-source-map "^1.1.0" + debug "^4.1.0" + json5 "^2.1.0" + lodash "^4.17.11" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.5.0.tgz#f20e4b7a91750ee8b63656073d843d2a736dca4a" + dependencies: + "@babel/types" "^7.5.0" + jsesc "^2.5.1" + lodash "^4.17.11" + source-map "^0.5.0" + trim-right "^1.0.1" + +"@babel/helper-annotate-as-pure@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" + dependencies: + "@babel/helper-explode-assignable-expression" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-call-delegate@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz#87c1f8ca19ad552a736a7a27b1c1fcf8b1ff1f43" + dependencies: + "@babel/helper-hoist-variables" "^7.4.4" + "@babel/traverse" "^7.4.4" + "@babel/types" "^7.4.4" + +"@babel/helper-define-map@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.4.4.tgz#6969d1f570b46bdc900d1eba8e5d59c48ba2c12a" + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/types" "^7.4.4" + lodash "^4.17.11" + +"@babel/helper-explode-assignable-expression@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" + dependencies: + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-function-name@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" + dependencies: + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-get-function-arity@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-hoist-variables@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz#0298b5f25c8c09c53102d52ac4a98f773eb2850a" + dependencies: + "@babel/types" "^7.4.4" + +"@babel/helper-member-expression-to-functions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-module-imports@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-module-transforms@^7.1.0", "@babel/helper-module-transforms@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz#96115ea42a2f139e619e98ed46df6019b94414b8" + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.4.4" + "@babel/template" "^7.4.4" + "@babel/types" "^7.4.4" + lodash "^4.17.11" + +"@babel/helper-optimise-call-expression@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-plugin-utils@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" + +"@babel/helper-regex@^7.0.0", "@babel/helper-regex@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.4.4.tgz#a47e02bc91fb259d2e6727c2a30013e3ac13c4a2" + dependencies: + lodash "^4.17.11" + +"@babel/helper-remap-async-to-generator@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-wrap-function" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.4.4.tgz#aee41783ebe4f2d3ab3ae775e1cc6f1a90cefa27" + dependencies: + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/traverse" "^7.4.4" + "@babel/types" "^7.4.4" + +"@babel/helper-simple-access@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" + dependencies: + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-split-export-declaration@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz#ff94894a340be78f53f06af038b205c49d993677" + dependencies: + "@babel/types" "^7.4.4" + +"@babel/helper-wrap-function@^7.1.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz#c4e0012445769e2815b55296ead43a958549f6fa" + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.2.0" + +"@babel/helpers@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.5.0.tgz#7f0c17666e7ed8355ed6eff643dde12fb681ddb4" + dependencies: + "@babel/template" "^7.4.4" + "@babel/traverse" "^7.5.0" + "@babel/types" "^7.5.0" + +"@babel/highlight@^7.0.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^4.0.0" + +"@babel/parser@^7.4.4", "@babel/parser@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.5.0.tgz#3e0713dff89ad6ae37faec3b29dcfc5c979770b7" + +"@babel/plugin-proposal-async-generator-functions@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz#b289b306669dce4ad20b0252889a15768c9d417e" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.1.0" + "@babel/plugin-syntax-async-generators" "^7.2.0" + +"@babel/plugin-proposal-dynamic-import@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz#e532202db4838723691b10a67b8ce509e397c506" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.2.0" + +"@babel/plugin-proposal-json-strings@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-json-strings" "^7.2.0" + +"@babel/plugin-proposal-object-rest-spread@^7.2.0", "@babel/plugin-proposal-object-rest-spread@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.0.tgz#4838ce3cbc9a84dd00bce7a17e9e9c36119f83a0" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + +"@babel/plugin-proposal-optional-catch-binding@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz#135d81edb68a081e55e56ec48541ece8065c38f5" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + +"@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz#501ffd9826c0b91da22690720722ac7cb1ca9c78" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.4.4" + regexpu-core "^4.5.4" + +"@babel/plugin-syntax-async-generators@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-dynamic-import@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz#69c159ffaf4998122161ad8ebc5e6d1f55df8612" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-json-strings@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-object-rest-spread@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-arrow-functions@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-async-to-generator@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz#89a3848a0166623b5bc481164b5936ab947e887e" + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.1.0" + +"@babel/plugin-transform-block-scoped-functions@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-block-scoping@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.4.4.tgz#c13279fabf6b916661531841a23c4b7dae29646d" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + lodash "^4.17.11" + +"@babel/plugin-transform-classes@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.4.4.tgz#0ce4094cdafd709721076d3b9c38ad31ca715eb6" + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-define-map" "^7.4.4" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.4.4" + "@babel/helper-split-export-declaration" "^7.4.4" + globals "^11.1.0" + +"@babel/plugin-transform-computed-properties@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-destructuring@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.5.0.tgz#f6c09fdfe3f94516ff074fe877db7bc9ef05855a" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz#361a148bc951444312c69446d76ed1ea8e4450c3" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.4.4" + regexpu-core "^4.5.4" + +"@babel/plugin-transform-duplicate-keys@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz#c5dbf5106bf84cdf691222c0974c12b1df931853" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-exponentiation-operator@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008" + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-for-of@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz#0267fc735e24c808ba173866c6c4d1440fc3c556" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-function-name@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz#e1436116abb0610c2259094848754ac5230922ad" + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-literals@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-member-expression-literals@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz#fa10aa5c58a2cb6afcf2c9ffa8cb4d8b3d489a2d" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-amd@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz#ef00435d46da0a5961aa728a1d2ecff063e4fb91" + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-commonjs@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz#425127e6045231360858eeaa47a71d75eded7a74" + dependencies: + "@babel/helper-module-transforms" "^7.4.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-systemjs@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz#e75266a13ef94202db2a0620977756f51d52d249" + dependencies: + "@babel/helper-hoist-variables" "^7.4.4" + "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-umd@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz#7678ce75169f0877b8eb2235538c074268dd01ae" + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.4.5": + version "7.4.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.5.tgz#9d269fd28a370258199b4294736813a60bbdd106" + dependencies: + regexp-tree "^0.1.6" + +"@babel/plugin-transform-new-target@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz#18d120438b0cc9ee95a47f2c72bc9768fbed60a5" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-object-super@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz#b35d4c10f56bab5d650047dad0f1d8e8814b6598" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + +"@babel/plugin-transform-parameters@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz#7556cf03f318bd2719fe4c922d2d808be5571e16" + dependencies: + "@babel/helper-call-delegate" "^7.4.4" + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-property-literals@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz#03e33f653f5b25c4eb572c98b9485055b389e905" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-regenerator@^7.4.5": + version "7.4.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz#629dc82512c55cee01341fb27bdfcb210354680f" + dependencies: + regenerator-transform "^0.14.0" + +"@babel/plugin-transform-reserved-words@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz#4792af87c998a49367597d07fedf02636d2e1634" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-runtime@^7.2.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.5.0.tgz#45242c2c9281158c5f06d25beebac63e498a284e" + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + resolve "^1.8.1" + semver "^5.5.1" + +"@babel/plugin-transform-shorthand-properties@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz#6333aee2f8d6ee7e28615457298934a3b46198f0" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-spread@^7.2.0": + version "7.2.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz#3103a9abe22f742b6d406ecd3cd49b774919b406" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-sticky-regex@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + +"@babel/plugin-transform-template-literals@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz#9d28fea7bbce637fb7612a0750989d8321d4bcb0" + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-typeof-symbol@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-unicode-regex@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz#ab4634bb4f14d36728bf5978322b35587787970f" + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.4.4" + regexpu-core "^4.5.4" + +"@babel/preset-env@^7.2.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.5.0.tgz#1122a751e864850b4dbce38bd9b4497840ee6f01" + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-async-generator-functions" "^7.2.0" + "@babel/plugin-proposal-dynamic-import" "^7.5.0" + "@babel/plugin-proposal-json-strings" "^7.2.0" + "@babel/plugin-proposal-object-rest-spread" "^7.5.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/plugin-syntax-dynamic-import" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.2.0" + "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + "@babel/plugin-transform-arrow-functions" "^7.2.0" + "@babel/plugin-transform-async-to-generator" "^7.5.0" + "@babel/plugin-transform-block-scoped-functions" "^7.2.0" + "@babel/plugin-transform-block-scoping" "^7.4.4" + "@babel/plugin-transform-classes" "^7.4.4" + "@babel/plugin-transform-computed-properties" "^7.2.0" + "@babel/plugin-transform-destructuring" "^7.5.0" + "@babel/plugin-transform-dotall-regex" "^7.4.4" + "@babel/plugin-transform-duplicate-keys" "^7.5.0" + "@babel/plugin-transform-exponentiation-operator" "^7.2.0" + "@babel/plugin-transform-for-of" "^7.4.4" + "@babel/plugin-transform-function-name" "^7.4.4" + "@babel/plugin-transform-literals" "^7.2.0" + "@babel/plugin-transform-member-expression-literals" "^7.2.0" + "@babel/plugin-transform-modules-amd" "^7.5.0" + "@babel/plugin-transform-modules-commonjs" "^7.5.0" + "@babel/plugin-transform-modules-systemjs" "^7.5.0" + "@babel/plugin-transform-modules-umd" "^7.2.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.4.5" + "@babel/plugin-transform-new-target" "^7.4.4" + "@babel/plugin-transform-object-super" "^7.2.0" + "@babel/plugin-transform-parameters" "^7.4.4" + "@babel/plugin-transform-property-literals" "^7.2.0" + "@babel/plugin-transform-regenerator" "^7.4.5" + "@babel/plugin-transform-reserved-words" "^7.2.0" + "@babel/plugin-transform-shorthand-properties" "^7.2.0" + "@babel/plugin-transform-spread" "^7.2.0" + "@babel/plugin-transform-sticky-regex" "^7.2.0" + "@babel/plugin-transform-template-literals" "^7.4.4" + "@babel/plugin-transform-typeof-symbol" "^7.2.0" + "@babel/plugin-transform-unicode-regex" "^7.4.4" + "@babel/types" "^7.5.0" + browserslist "^4.6.0" + core-js-compat "^3.1.1" + invariant "^2.2.2" + js-levenshtein "^1.1.3" + semver "^5.5.0" + +"@babel/runtime@^7.2.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.0.tgz#49dcbcd637099a55d3a61e590a00d6861393b1b5" + dependencies: + regenerator-runtime "^0.13.2" + +"@babel/template@^7.1.0", "@babel/template@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.4.4" + "@babel/types" "^7.4.4" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.5.0.tgz#4216d6586854ef5c3c4592dab56ec7eb78485485" + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.5.0" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.4.4" + "@babel/parser" "^7.5.0" + "@babel/types" "^7.5.0" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.11" + +"@babel/types@^7.0.0", "@babel/types@^7.2.0", "@babel/types@^7.4.4", "@babel/types@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.5.0.tgz#e47d43840c2e7f9105bc4d3a2c371b4d0c7832ab" + dependencies: + esutils "^2.0.2" + lodash "^4.17.11" + to-fast-properties "^2.0.0" + +"@mrmlnc/readdir-enhanced@^2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" + dependencies: + call-me-maybe "^1.0.1" + glob-to-regexp "^0.3.0" + +"@nodelib/fs.stat@^1.1.2": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" + +"@types/events@*": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" + +"@types/glob@^7.1.1": + version "7.1.1" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz#aa59a1c6e3fbc421e07ccd31a944c30eba521575" + dependencies: + "@types/events" "*" + "@types/minimatch" "*" + "@types/node" "*" + +"@types/minimatch@*": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" + +"@types/node@*": + version "12.0.12" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.0.12.tgz#cc791b402360db1eaf7176479072f91ee6c6c7ca" + +"@types/q@^1.5.1": + version "1.5.2" + resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.2.tgz#690a1475b84f2a884fd07cd797c00f5f31356ea8" + +"@vue/component-compiler-utils@^2.5.1": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-2.6.0.tgz#aa46d2a6f7647440b0b8932434d22f12371e543b" + dependencies: + consolidate "^0.15.1" + hash-sum "^1.0.2" + lru-cache "^4.1.2" + merge-source-map "^1.1.0" + postcss "^7.0.14" + postcss-selector-parser "^5.0.0" + prettier "1.16.3" + source-map "~0.6.1" + vue-template-es2015-compiler "^1.9.0" + +"@webassemblyjs/ast@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.8.5.tgz#51b1c5fe6576a34953bf4b253df9f0d490d9e359" + dependencies: + "@webassemblyjs/helper-module-context" "1.8.5" + "@webassemblyjs/helper-wasm-bytecode" "1.8.5" + "@webassemblyjs/wast-parser" "1.8.5" + +"@webassemblyjs/floating-point-hex-parser@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz#1ba926a2923613edce496fd5b02e8ce8a5f49721" + +"@webassemblyjs/helper-api-error@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz#c49dad22f645227c5edb610bdb9697f1aab721f7" + +"@webassemblyjs/helper-buffer@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz#fea93e429863dd5e4338555f42292385a653f204" + +"@webassemblyjs/helper-code-frame@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz#9a740ff48e3faa3022b1dff54423df9aa293c25e" + dependencies: + "@webassemblyjs/wast-printer" "1.8.5" + +"@webassemblyjs/helper-fsm@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz#ba0b7d3b3f7e4733da6059c9332275d860702452" + +"@webassemblyjs/helper-module-context@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz#def4b9927b0101dc8cbbd8d1edb5b7b9c82eb245" + dependencies: + "@webassemblyjs/ast" "1.8.5" + mamacro "^0.0.3" + +"@webassemblyjs/helper-wasm-bytecode@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz#537a750eddf5c1e932f3744206551c91c1b93e61" + +"@webassemblyjs/helper-wasm-section@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz#74ca6a6bcbe19e50a3b6b462847e69503e6bfcbf" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/helper-buffer" "1.8.5" + "@webassemblyjs/helper-wasm-bytecode" "1.8.5" + "@webassemblyjs/wasm-gen" "1.8.5" + +"@webassemblyjs/ieee754@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz#712329dbef240f36bf57bd2f7b8fb9bf4154421e" + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/leb128@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.8.5.tgz#044edeb34ea679f3e04cd4fd9824d5e35767ae10" + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/utf8@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.8.5.tgz#a8bf3b5d8ffe986c7c1e373ccbdc2a0915f0cedc" + +"@webassemblyjs/wasm-edit@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz#962da12aa5acc1c131c81c4232991c82ce56e01a" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/helper-buffer" "1.8.5" + "@webassemblyjs/helper-wasm-bytecode" "1.8.5" + "@webassemblyjs/helper-wasm-section" "1.8.5" + "@webassemblyjs/wasm-gen" "1.8.5" + "@webassemblyjs/wasm-opt" "1.8.5" + "@webassemblyjs/wasm-parser" "1.8.5" + "@webassemblyjs/wast-printer" "1.8.5" + +"@webassemblyjs/wasm-gen@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz#54840766c2c1002eb64ed1abe720aded714f98bc" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/helper-wasm-bytecode" "1.8.5" + "@webassemblyjs/ieee754" "1.8.5" + "@webassemblyjs/leb128" "1.8.5" + "@webassemblyjs/utf8" "1.8.5" + +"@webassemblyjs/wasm-opt@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz#b24d9f6ba50394af1349f510afa8ffcb8a63d264" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/helper-buffer" "1.8.5" + "@webassemblyjs/wasm-gen" "1.8.5" + "@webassemblyjs/wasm-parser" "1.8.5" + +"@webassemblyjs/wasm-parser@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz#21576f0ec88b91427357b8536383668ef7c66b8d" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/helper-api-error" "1.8.5" + "@webassemblyjs/helper-wasm-bytecode" "1.8.5" + "@webassemblyjs/ieee754" "1.8.5" + "@webassemblyjs/leb128" "1.8.5" + "@webassemblyjs/utf8" "1.8.5" + +"@webassemblyjs/wast-parser@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz#e10eecd542d0e7bd394f6827c49f3df6d4eefb8c" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/floating-point-hex-parser" "1.8.5" + "@webassemblyjs/helper-api-error" "1.8.5" + "@webassemblyjs/helper-code-frame" "1.8.5" + "@webassemblyjs/helper-fsm" "1.8.5" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/wast-printer@1.8.5": + version "1.8.5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz#114bbc481fd10ca0e23b3560fa812748b0bae5bc" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/wast-parser" "1.8.5" + "@xtuc/long" "4.2.2" + +"@xtuc/ieee754@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + +"@xtuc/long@4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + +accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + +acorn-dynamic-import@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948" + +acorn@^6.0.5: + version "6.2.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.0.tgz#67f0da2fc339d6cfb5d6fb244fd449f33cd8bbe3" + +adjust-sourcemap-loader@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-1.2.0.tgz#e33fde95e50db9f2a802e3647e311d2fc5000c69" + dependencies: + assert "^1.3.0" + camelcase "^1.2.1" + loader-utils "^1.1.0" + lodash.assign "^4.0.1" + lodash.defaults "^3.1.2" + object-path "^0.9.2" + regex-parser "^2.2.9" + +ajv-errors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" + +ajv-keywords@^3.1.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.0.tgz#4b831e7b531415a7cc518cd404e73f6193c6349d" + +ajv@^6.1.0: + version "6.10.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1" + dependencies: + fast-deep-equal "^2.0.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +alphanum-sort@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" + +ansi-colors@^3.0.0: + version "3.2.4" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" + +ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + +ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + dependencies: + color-convert "^1.9.0" + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +aproba@^1.0.3, aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + +are-we-there-yet@~1.1.2: + version "1.1.5" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + dependencies: + sprintf-js "~1.0.2" + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + +array-flatten@^2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" + +array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + dependencies: + array-uniq "^1.0.1" + +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + +arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + +asn1.js@^4.0.0: + version "4.10.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +assert@^1.1.1, assert@^1.3.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" + dependencies: + object-assign "^4.1.1" + util "0.10.3" + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + +ast-types@0.9.6: + version "0.9.6" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" + +async-each@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" + +async@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" + +async@^2.4.1: + version "2.6.2" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381" + dependencies: + lodash "^4.17.11" + +atob@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + +autoprefixer@^9.4.2: + version "9.6.0" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.0.tgz#0111c6bde2ad20c6f17995a33fad7cf6854b4c87" + dependencies: + browserslist "^4.6.1" + caniuse-lite "^1.0.30000971" + chalk "^2.4.2" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^7.0.16" + postcss-value-parser "^3.3.1" + +axios@^0.19: + version "0.19.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.0.tgz#8e09bff3d9122e133f7b8101c8fbdd00ed3d2ab8" + dependencies: + follow-redirects "1.5.10" + is-buffer "^2.0.2" + +babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + dependencies: + chalk "^1.1.3" + esutils "^2.0.2" + js-tokens "^3.0.2" + +babel-loader@^8.0.4: + version "8.0.6" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.6.tgz#e33bdb6f362b03f4bb141a0c21ab87c501b70dfb" + dependencies: + find-cache-dir "^2.0.0" + loader-utils "^1.0.2" + mkdirp "^0.5.1" + pify "^4.0.1" + +babel-merge@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/babel-merge/-/babel-merge-2.0.1.tgz#6b2dfad78a655df66e3418eb37b1c3c5e676ad1a" + dependencies: + "@babel/core" "^7.0.0-beta.49" + deepmerge "^2.1.0" + object.omit "^3.0.0" + +babel-plugin-dynamic-import-node@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz#f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f" + dependencies: + object.assign "^4.1.0" + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + +base64-js@^1.0.2: + version "1.3.0" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +batch@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + +big.js@^5.2.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + +binary-extensions@^1.0.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" + +bluebird@^3.1.1, bluebird@^3.5.5: + version "3.5.5" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: + version "4.11.8" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" + +body-parser@1.19.0: + version "1.19.0" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" + dependencies: + bytes "3.1.0" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.2" + http-errors "1.7.2" + iconv-lite "0.4.24" + on-finished "~2.3.0" + qs "6.7.0" + raw-body "2.4.0" + type-is "~1.6.17" + +bonjour@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" + dependencies: + array-flatten "^2.1.0" + deep-equal "^1.0.1" + dns-equal "^1.0.0" + dns-txt "^2.0.2" + multicast-dns "^6.0.1" + multicast-dns-service-types "^1.1.0" + +boolbase@^1.0.0, boolbase@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + +bootstrap@^4.1.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.1.tgz#280ca8f610504d99d7b6b4bfc4b68cec601704ac" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^2.3.1, braces@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +browserify-cipher@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + dependencies: + bn.js "^4.1.0" + randombytes "^2.0.1" + +browserify-sign@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + dependencies: + bn.js "^4.1.1" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.2" + elliptic "^6.0.0" + inherits "^2.0.1" + parse-asn1 "^5.0.0" + +browserify-zlib@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + dependencies: + pako "~1.0.5" + +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.1, browserslist@^4.6.2: + version "4.6.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.3.tgz#0530cbc6ab0c1f3fc8c819c72377ba55cf647f05" + dependencies: + caniuse-lite "^1.0.30000975" + electron-to-chromium "^1.3.164" + node-releases "^1.1.23" + +buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + +buffer-indexof@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + +buffer@^4.3.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + +bytes@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" + +cacache@^11.3.2: + version "11.3.3" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc" + dependencies: + bluebird "^3.5.5" + chownr "^1.1.1" + figgy-pudding "^3.5.1" + glob "^7.1.4" + graceful-fs "^4.1.15" + lru-cache "^5.1.1" + mississippi "^3.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.3" + ssri "^6.0.1" + unique-filename "^1.1.1" + y18n "^4.0.0" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +call-me-maybe@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" + +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + dependencies: + callsites "^2.0.0" + +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + dependencies: + caller-callsite "^2.0.0" + +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + +camel-case@3.0.x: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" + dependencies: + no-case "^2.2.0" + upper-case "^1.1.1" + +camelcase@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" + +camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + +caniuse-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + dependencies: + browserslist "^4.0.0" + caniuse-lite "^1.0.0" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000971, caniuse-lite@^1.0.30000975: + version "1.0.30000979" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000979.tgz#92f16d00186a6cf20d6c5711bb6e042a3d667029" + +chalk@2.4.2, chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +charenc@~0.0.1: + version "0.0.2" + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + +"chokidar@>=2.0.0 <4.0.0", chokidar@^2.0.2, chokidar@^2.0.3, chokidar@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.6.tgz#b6cad653a929e244ce8a834244164d241fa954c5" + dependencies: + anymatch "^2.0.0" + async-each "^1.0.1" + braces "^2.3.2" + glob-parent "^3.1.0" + inherits "^2.0.3" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^3.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.2.1" + upath "^1.1.1" + optionalDependencies: + fsevents "^1.2.7" + +chownr@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.2.tgz#a18f1e0b269c8a6a5d3c86eb298beb14c3dd7bf6" + +chrome-trace-event@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" + dependencies: + tslib "^1.9.0" + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +clean-css@4.2.x, clean-css@^4.1.3: + version "4.2.1" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17" + dependencies: + source-map "~0.6.0" + +cliui@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrap-ansi "^2.0.0" + +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + +clone-deep@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" + dependencies: + for-own "^1.0.0" + is-plain-object "^2.0.4" + kind-of "^6.0.0" + shallow-clone "^1.0.0" + +coa@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" + dependencies: + "@types/q" "^1.5.1" + chalk "^2.4.1" + q "^1.1.2" + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0, color-convert@^1.9.1: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + dependencies: + color-name "1.1.3" + +color-name@1.1.3, color-name@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + +color-string@^1.5.2: + version "1.5.3" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" + dependencies: + color-name "^1.0.0" + simple-swizzle "^0.2.2" + +color@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" + dependencies: + color-convert "^1.9.1" + color-string "^1.5.2" + +commander@2.17.x: + version "2.17.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" + +commander@^2.19.0: + version "2.20.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" + +commander@~2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + +compressible@~2.0.16: + version "2.0.17" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.17.tgz#6e8c108a16ad58384a977f3a482ca20bff2f38c1" + dependencies: + mime-db ">= 1.40.0 < 2" + +compression@^1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.16" + debug "2.6.9" + on-headers "~1.0.2" + safe-buffer "5.1.2" + vary "~1.1.2" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + +concat-stream@^1.5.0: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +concatenate@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/concatenate/-/concatenate-0.0.2.tgz#0b49d6e8c41047d7728cdc8d62a086623397b49f" + dependencies: + globs "^0.1.2" + +connect-history-api-fallback@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" + +console-browserify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" + dependencies: + date-now "^0.1.4" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + +consolidate@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" + dependencies: + bluebird "^3.1.1" + +constants-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + +content-disposition@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + dependencies: + safe-buffer "5.1.2" + +content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + +convert-source-map@^0.3.3: + version "0.3.5" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" + +convert-source-map@^1.1.0, convert-source-map@^1.5.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" + dependencies: + safe-buffer "~5.1.1" + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + +cookie@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" + +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + +core-js-compat@^3.1.1: + version "3.1.4" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.1.4.tgz#e4d0c40fbd01e65b1d457980fe4112d4358a7408" + dependencies: + browserslist "^4.6.2" + core-js-pure "3.1.4" + semver "^6.1.1" + +core-js-pure@3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.1.4.tgz#5fa17dc77002a169a3566cc48dc774d2e13e3769" + +core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + +cosmiconfig@^5.0.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.13.1" + parse-json "^4.0.0" + +create-ecdh@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" + dependencies: + bn.js "^4.1.0" + elliptic "^6.0.0" + +create-hash@^1.1.0, create-hash@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +cross-env@^5.1: + version "5.2.0" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.2.0.tgz#6ecd4c015d5773e614039ee529076669b9d126f2" + dependencies: + cross-spawn "^6.0.5" + is-windows "^1.0.0" + +cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +crypt@~0.0.1: + version "0.0.2" + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + +crypto-browserify@^3.11.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + randomfill "^1.0.3" + +css-color-names@0.0.4, css-color-names@^0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" + +css-declaration-sorter@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" + dependencies: + postcss "^7.0.1" + timsort "^0.3.0" + +css-loader@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-1.0.1.tgz#6885bb5233b35ec47b006057da01cc640b6b79fe" + dependencies: + babel-code-frame "^6.26.0" + css-selector-tokenizer "^0.7.0" + icss-utils "^2.1.0" + loader-utils "^1.0.2" + lodash "^4.17.11" + postcss "^6.0.23" + postcss-modules-extract-imports "^1.2.0" + postcss-modules-local-by-default "^1.2.0" + postcss-modules-scope "^1.1.0" + postcss-modules-values "^1.3.0" + postcss-value-parser "^3.3.0" + source-list-map "^2.0.0" + +css-select-base-adapter@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" + +css-select@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.0.2.tgz#ab4386cec9e1f668855564b17c3733b43b2a5ede" + dependencies: + boolbase "^1.0.0" + css-what "^2.1.2" + domutils "^1.7.0" + nth-check "^1.0.2" + +css-selector-tokenizer@^0.7.0: + version "0.7.1" + resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d" + dependencies: + cssesc "^0.1.0" + fastparse "^1.1.1" + regexpu-core "^1.0.0" + +css-tree@1.0.0-alpha.28: + version "1.0.0-alpha.28" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.28.tgz#8e8968190d886c9477bc8d61e96f61af3f7ffa7f" + dependencies: + mdn-data "~1.1.0" + source-map "^0.5.3" + +css-tree@1.0.0-alpha.29: + version "1.0.0-alpha.29" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.29.tgz#3fa9d4ef3142cbd1c301e7664c1f352bd82f5a39" + dependencies: + mdn-data "~1.1.0" + source-map "^0.5.3" + +css-unit-converter@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996" + +css-url-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/css-url-regex/-/css-url-regex-1.1.0.tgz#83834230cc9f74c457de59eebd1543feeb83b7ec" + +css-what@^2.1.2: + version "2.1.3" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" + +css@^2.0.0: + version "2.2.4" + resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" + dependencies: + inherits "^2.0.3" + source-map "^0.6.1" + source-map-resolve "^0.5.2" + urix "^0.1.0" + +cssesc@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" + +cssesc@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" + +cssnano-preset-default@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" + dependencies: + css-declaration-sorter "^4.0.1" + cssnano-util-raw-cache "^4.0.1" + postcss "^7.0.0" + postcss-calc "^7.0.1" + postcss-colormin "^4.0.3" + postcss-convert-values "^4.0.1" + postcss-discard-comments "^4.0.2" + postcss-discard-duplicates "^4.0.2" + postcss-discard-empty "^4.0.1" + postcss-discard-overridden "^4.0.1" + postcss-merge-longhand "^4.0.11" + postcss-merge-rules "^4.0.3" + postcss-minify-font-values "^4.0.2" + postcss-minify-gradients "^4.0.2" + postcss-minify-params "^4.0.2" + postcss-minify-selectors "^4.0.2" + postcss-normalize-charset "^4.0.1" + postcss-normalize-display-values "^4.0.2" + postcss-normalize-positions "^4.0.2" + postcss-normalize-repeat-style "^4.0.2" + postcss-normalize-string "^4.0.2" + postcss-normalize-timing-functions "^4.0.2" + postcss-normalize-unicode "^4.0.1" + postcss-normalize-url "^4.0.1" + postcss-normalize-whitespace "^4.0.2" + postcss-ordered-values "^4.1.2" + postcss-reduce-initial "^4.0.3" + postcss-reduce-transforms "^4.0.2" + postcss-svgo "^4.0.2" + postcss-unique-selectors "^4.0.1" + +cssnano-util-get-arguments@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" + +cssnano-util-get-match@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" + +cssnano-util-raw-cache@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" + dependencies: + postcss "^7.0.0" + +cssnano-util-same-parent@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" + +cssnano@^4.1.10: + version "4.1.10" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" + dependencies: + cosmiconfig "^5.0.0" + cssnano-preset-default "^4.0.7" + is-resolvable "^1.0.0" + postcss "^7.0.0" + +csso@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/csso/-/csso-3.5.1.tgz#7b9eb8be61628973c1b261e169d2f024008e758b" + dependencies: + css-tree "1.0.0-alpha.29" + +cyclist@~0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" + +date-now@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" + +debug@2.6.9, debug@^2.2.0, debug@^2.3.3: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + dependencies: + ms "2.0.0" + +debug@=3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + dependencies: + ms "2.0.0" + +debug@^3.2.5, debug@^3.2.6: + version "3.2.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" + dependencies: + ms "^2.1.1" + +debug@^4.1.0, debug@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + dependencies: + ms "^2.1.1" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + +deep-equal@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + +deepmerge@^2.1.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-2.2.1.tgz#5d3ff22a01c00f645405a2fbc17d0778a1801170" + +default-gateway@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b" + dependencies: + execa "^1.0.0" + ip-regex "^2.1.0" + +define-properties@^1.1.2, define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + dependencies: + object-keys "^1.0.12" + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +del@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" + dependencies: + "@types/glob" "^7.1.1" + globby "^6.1.0" + is-path-cwd "^2.0.0" + is-path-in-cwd "^2.0.0" + p-map "^2.0.0" + pify "^4.0.1" + rimraf "^2.6.3" + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + +des.js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + +detect-file@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" + +detect-libc@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + +detect-node@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" + +diffie-hellman@^5.0.0: + version "5.0.3" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +dir-glob@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" + dependencies: + arrify "^1.0.1" + path-type "^3.0.0" + +dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + +dns-packet@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" + dependencies: + ip "^1.1.0" + safe-buffer "^5.0.1" + +dns-txt@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" + dependencies: + buffer-indexof "^1.0.0" + +dom-serializer@0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" + dependencies: + domelementtype "^1.3.0" + entities "^1.1.1" + +domain-browser@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" + +domelementtype@1, domelementtype@^1.3.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" + +domutils@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" + dependencies: + dom-serializer "0" + domelementtype "1" + +dot-prop@^4.1.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" + dependencies: + is-obj "^1.0.0" + +dotenv-expand@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-4.2.0.tgz#def1f1ca5d6059d24a766e587942c21106ce1275" + +dotenv@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.2.0.tgz#941c0410535d942c8becf28d3f357dbd9d476064" + +duplexify@^3.4.2, duplexify@^3.6.0: + version "3.7.1" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + +electron-to-chromium@^1.3.164: + version "1.3.187" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.187.tgz#fea64435f370892c0f27aded1bbdcb6f235c592b" + +elliptic@^6.0.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.0.tgz#2b8ed4c891b7de3200e14412a5b8248c7af505ca" + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + +end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + dependencies: + once "^1.4.0" + +enhanced-resolve@4.1.0, enhanced-resolve@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.4.0" + tapable "^1.0.0" + +entities@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" + +errno@^0.1.3, errno@~0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" + dependencies: + prr "~1.0.1" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + dependencies: + is-arrayish "^0.2.1" + +error-stack-parser@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.2.tgz#4ae8dbaa2bf90a8b450707b9149dcabca135520d" + dependencies: + stackframe "^1.0.4" + +es-abstract@^1.12.0, es-abstract@^1.5.1: + version "1.13.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" + dependencies: + es-to-primitive "^1.2.0" + function-bind "^1.1.1" + has "^1.0.3" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-keys "^1.0.12" + +es-to-primitive@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +es6-templates@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/es6-templates/-/es6-templates-0.2.3.tgz#5cb9ac9fb1ded6eb1239342b81d792bbb4078ee4" + dependencies: + recast "~0.11.12" + through "~2.3.6" + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + +eslint-scope@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + +esprima@~3.1.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + +esrecurse@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" + dependencies: + estraverse "^4.1.0" + +estraverse@^4.1.0, estraverse@^4.1.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" + +esutils@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + +eventemitter3@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" + +events@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.0.0.tgz#9a0a0dfaf62893d92b875b8f2698ca4114973e88" + +eventsource@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" + dependencies: + original "^1.0.0" + +evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + dependencies: + homedir-polyfill "^1.0.1" + +express@^4.17.1: + version "4.17.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" + dependencies: + accepts "~1.3.7" + array-flatten "1.1.1" + body-parser "1.19.0" + content-disposition "0.5.3" + content-type "~1.0.4" + cookie "0.4.0" + cookie-signature "1.0.6" + debug "2.6.9" + depd "~1.1.2" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "~1.1.2" + fresh "0.5.2" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.5" + qs "6.7.0" + range-parser "~1.2.1" + safe-buffer "5.1.2" + send "0.17.1" + serve-static "1.14.1" + setprototypeof "1.1.1" + statuses "~1.5.0" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extract-text-webpack-plugin@v4.0.0-beta.0: + version "4.0.0-beta.0" + resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-4.0.0-beta.0.tgz#f7361d7ff430b42961f8d1321ba8c1757b5d4c42" + dependencies: + async "^2.4.1" + loader-utils "^1.1.0" + schema-utils "^0.4.5" + webpack-sources "^1.1.0" + +fast-deep-equal@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" + +fast-glob@^2.0.2: + version "2.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" + dependencies: + "@mrmlnc/readdir-enhanced" "^2.2.1" + "@nodelib/fs.stat" "^1.1.2" + glob-parent "^3.1.0" + is-glob "^4.0.0" + merge2 "^1.2.3" + micromatch "^3.1.10" + +fast-json-stable-stringify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + +fastparse@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" + +faye-websocket@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + dependencies: + websocket-driver ">=0.5.1" + +faye-websocket@~0.11.1: + version "0.11.3" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" + dependencies: + websocket-driver ">=0.5.1" + +figgy-pudding@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" + +file-loader@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-2.0.0.tgz#39749c82f020b9e85901dcff98e8004e6401cfde" + dependencies: + loader-utils "^1.0.2" + schema-utils "^1.0.0" + +file-type@^10.7.0: + version "10.11.0" + resolved "https://registry.yarnpkg.com/file-type/-/file-type-10.11.0.tgz#2961d09e4675b9fb9a3ee6b69e9cd23f43fd1890" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +finalhandler@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.3" + statuses "~1.5.0" + unpipe "~1.0.0" + +find-cache-dir@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" + dependencies: + commondir "^1.0.1" + make-dir "^2.0.0" + pkg-dir "^3.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + dependencies: + locate-path "^3.0.0" + +findup-sync@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" + dependencies: + detect-file "^1.0.0" + is-glob "^4.0.0" + micromatch "^3.0.4" + resolve-dir "^1.0.1" + +flush-write-stream@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" + dependencies: + inherits "^2.0.3" + readable-stream "^2.3.6" + +follow-redirects@1.5.10, follow-redirects@^1.0.0: + version "1.5.10" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" + dependencies: + debug "=3.1.0" + +for-in@^0.1.3: + version "0.1.8" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" + +for-in@^1.0.1, for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + +for-own@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" + dependencies: + for-in "^1.0.1" + +forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + +friendly-errors-webpack-plugin@^1.6.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0.tgz#efc86cbb816224565861a1be7a9d84d0aafea136" + dependencies: + chalk "^1.1.3" + error-stack-parser "^2.0.0" + string-width "^2.0.0" + +from2@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-extra@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-minipass@^1.2.5: + version "1.2.6" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.6.tgz#2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07" + dependencies: + minipass "^2.2.1" + +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + +fsevents@^1.2.7: + version "1.2.9" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.9.tgz#3f5ed66583ccd6f400b5a00db6f7e861363e388f" + dependencies: + nan "^2.12.1" + node-pre-gyp "^0.12.0" + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + dependencies: + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" + +get-caller-file@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" + +get-caller-file@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + dependencies: + pump "^3.0.0" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob-to-regexp@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" + +glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: + version "7.1.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +global-modules@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" + dependencies: + global-prefix "^3.0.0" + +global-modules@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + +global-prefix@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + +global-prefix@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" + dependencies: + ini "^1.3.5" + kind-of "^6.0.2" + which "^1.3.1" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + +globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +globby@^8.0.1: + version "8.0.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.2.tgz#5697619ccd95c5275dbb2d6faa42087c1a941d8d" + dependencies: + array-union "^1.0.1" + dir-glob "2.0.0" + fast-glob "^2.0.2" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + +globs@^0.1.2: + version "0.1.4" + resolved "https://registry.yarnpkg.com/globs/-/globs-0.1.4.tgz#1d13639f6174e4ae73a7f936da7d9a079f657c1c" + dependencies: + glob "^7.1.1" + +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6: + version "4.2.0" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b" + +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + +handle-thing@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + dependencies: + ansi-regex "^2.0.0" + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + +has-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +has@^1.0.0, has@^1.0.1, has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + dependencies: + function-bind "^1.1.1" + +hash-base@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +hash-sum@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +he@1.2.x: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + +hex-color-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" + +hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +homedir-polyfill@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" + dependencies: + parse-passwd "^1.0.0" + +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + +hsl-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" + +hsla-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" + +html-comment-regex@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" + +html-entities@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" + +html-loader@^0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/html-loader/-/html-loader-0.5.5.tgz#6356dbeb0c49756d8ebd5ca327f16ff06ab5faea" + dependencies: + es6-templates "^0.2.3" + fastparse "^1.1.1" + html-minifier "^3.5.8" + loader-utils "^1.1.0" + object-assign "^4.1.1" + +html-minifier@^3.5.8: + version "3.5.21" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.21.tgz#d0040e054730e354db008463593194015212d20c" + dependencies: + camel-case "3.0.x" + clean-css "4.2.x" + commander "2.17.x" + he "1.2.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.4.x" + +http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + +http-errors@1.7.2, http-errors@~1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + +"http-parser-js@>=0.4.0 <0.4.11": + version "0.4.10" + resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.10.tgz#92c9c1374c35085f75db359ec56cc257cbb93fa4" + +http-proxy-middleware@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" + dependencies: + http-proxy "^1.17.0" + is-glob "^4.0.0" + lodash "^4.17.11" + micromatch "^3.1.10" + +http-proxy@^1.17.0: + version "1.17.0" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" + dependencies: + eventemitter3 "^3.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +https-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + +iconv-lite@0.4.24, iconv-lite@^0.4.4: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + dependencies: + safer-buffer ">= 2.1.2 < 3" + +icss-replace-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" + +icss-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" + dependencies: + postcss "^6.0.1" + +ieee754@^1.1.4: + version "1.1.13" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + +ignore-walk@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" + dependencies: + minimatch "^3.0.4" + +ignore@^3.3.5: + version "3.3.10" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" + +imagemin@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/imagemin/-/imagemin-6.1.0.tgz#62508b465728fea36c03cdc07d915fe2d8cf9e13" + dependencies: + file-type "^10.7.0" + globby "^8.0.1" + make-dir "^1.0.0" + p-pipe "^1.1.0" + pify "^4.0.1" + replace-ext "^1.0.0" + +img-loader@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/img-loader/-/img-loader-3.0.1.tgz#c279691c0a9e6b94fa7d8318d2a6596d98bcee78" + dependencies: + loader-utils "^1.1.0" + +import-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" + dependencies: + import-from "^2.1.0" + +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + +import-from@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" + dependencies: + resolve-from "^3.0.0" + +import-local@2.0.0, import-local@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" + dependencies: + pkg-dir "^3.0.0" + resolve-cwd "^2.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + +indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + +ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + +internal-ip@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" + dependencies: + default-gateway "^4.2.0" + ipaddr.js "^1.9.0" + +interpret@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" + +invariant@^2.2.2: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + dependencies: + loose-envify "^1.0.0" + +invert-kv@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" + +ip-regex@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" + +ip@^1.1.0, ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + +ipaddr.js@1.9.0, ipaddr.js@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65" + +is-absolute-url@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + dependencies: + kind-of "^6.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + +is-arrayish@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" + +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + dependencies: + binary-extensions "^1.0.0" + +is-buffer@^1.1.5, is-buffer@~1.1.1: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + +is-buffer@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz#4ecf3fcf749cbd1e472689e109ac66261a25e725" + +is-callable@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" + +is-color-stop@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" + dependencies: + css-color-names "^0.0.4" + hex-color-regex "^1.1.0" + hsl-regex "^1.0.0" + hsla-regex "^1.0.0" + rgb-regex "^1.0.1" + rgba-regex "^1.0.0" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + dependencies: + kind-of "^6.0.0" + +is-date-object@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + +is-extendable@^1.0.0, is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.0, is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + dependencies: + is-extglob "^2.1.0" + +is-glob@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + dependencies: + is-extglob "^2.1.1" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + dependencies: + kind-of "^3.0.2" + +is-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + +is-path-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.1.0.tgz#2e0c7e463ff5b7a0eb60852d851a6809347a124c" + +is-path-in-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" + dependencies: + is-path-inside "^2.1.0" + +is-path-inside@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" + dependencies: + path-is-inside "^1.0.2" + +is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + dependencies: + isobject "^3.0.1" + +is-regex@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" + dependencies: + has "^1.0.1" + +is-resolvable@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + +is-svg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" + dependencies: + html-comment-regex "^1.1.0" + +is-symbol@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" + dependencies: + has-symbols "^1.0.0" + +is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + +is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + +jquery@^3.2: + version "3.4.1" + resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.4.1.tgz#714f1f8d9dde4bdfa55764ba37ef214630d80ef2" + +js-levenshtein@^1.1.3: + version "1.1.6" + resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + +js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + +js-yaml@^3.13.1: + version "3.13.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + +json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + +json3@^3.3.2: + version "3.3.3" + resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.3.tgz#7fc10e375fc5ae42c4705a5cc0aa6f62be305b81" + +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + dependencies: + minimist "^1.2.0" + +json5@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" + dependencies: + minimist "^1.2.0" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + optionalDependencies: + graceful-fs "^4.1.6" + +killable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + +laravel-mix@^4.0.7: + version "4.0.16" + resolved "https://registry.yarnpkg.com/laravel-mix/-/laravel-mix-4.0.16.tgz#449c121021f062f03707bf49d1221d4640760d07" + dependencies: + "@babel/core" "^7.2.0" + "@babel/plugin-proposal-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-dynamic-import" "^7.2.0" + "@babel/plugin-transform-runtime" "^7.2.0" + "@babel/preset-env" "^7.2.0" + "@babel/runtime" "^7.2.0" + autoprefixer "^9.4.2" + babel-loader "^8.0.4" + babel-merge "^2.0.1" + chokidar "^2.0.3" + clean-css "^4.1.3" + concatenate "0.0.2" + css-loader "^1.0.1" + dotenv "^6.2.0" + dotenv-expand "^4.2.0" + extract-text-webpack-plugin v4.0.0-beta.0 + file-loader "^2.0.0" + friendly-errors-webpack-plugin "^1.6.1" + fs-extra "^7.0.1" + glob "^7.1.2" + html-loader "^0.5.5" + imagemin "^6.0.0" + img-loader "^3.0.0" + lodash "^4.17.5" + md5 "^2.2.1" + optimize-css-assets-webpack-plugin "^5.0.1" + postcss-loader "^3.0.0" + style-loader "^0.23.1" + terser "^3.11.0" + terser-webpack-plugin "^1.2.2" + vue-loader "^15.4.2" + webpack "^4.27.1" + webpack-cli "^3.1.2" + webpack-dev-server "^3.1.14" + webpack-merge "^4.1.0" + webpack-notifier "^1.5.1" + yargs "^12.0.5" + +last-call-webpack-plugin@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" + dependencies: + lodash "^4.17.5" + webpack-sources "^1.1.0" + +lcid@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" + dependencies: + invert-kv "^2.0.0" + +loader-runner@^2.3.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" + +loader-utils@1.2.3, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" + dependencies: + big.js "^5.2.2" + emojis-list "^2.0.0" + json5 "^1.0.1" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +lodash._baseassign@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" + dependencies: + lodash._basecopy "^3.0.0" + lodash.keys "^3.0.0" + +lodash._basecopy@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" + +lodash._bindcallback@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" + +lodash._createassigner@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11" + dependencies: + lodash._bindcallback "^3.0.0" + lodash._isiterateecall "^3.0.0" + lodash.restparam "^3.0.0" + +lodash._getnative@^3.0.0: + version "3.9.1" + resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" + +lodash._isiterateecall@^3.0.0: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" + +lodash.assign@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-3.2.0.tgz#3ce9f0234b4b2223e296b8fa0ac1fee8ebca64fa" + dependencies: + lodash._baseassign "^3.0.0" + lodash._createassigner "^3.0.0" + lodash.keys "^3.0.0" + +lodash.assign@^4.0.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" + +lodash.defaults@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c" + dependencies: + lodash.assign "^3.0.0" + lodash.restparam "^3.0.0" + +lodash.defaults@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" + +lodash.isarguments@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + +lodash.isarray@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" + +lodash.keys@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" + dependencies: + lodash._getnative "^3.0.0" + lodash.isarguments "^3.0.0" + lodash.isarray "^3.0.0" + +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + +lodash.restparam@^3.0.0: + version "3.6.1" + resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" + +lodash.tail@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" + +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + +lodash@^4.17.11, lodash@^4.17.5: + version "4.17.11" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" + +loglevel@^1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.3.tgz#77f2eb64be55a404c9fd04ad16d57c1d6d6b1280" + +loose-envify@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lower-case@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" + +lru-cache@^4.1.2: + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + dependencies: + yallist "^3.0.2" + +make-dir@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + dependencies: + pify "^3.0.0" + +make-dir@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + dependencies: + pify "^4.0.1" + semver "^5.6.0" + +mamacro@^0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4" + +map-age-cleaner@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + dependencies: + p-defer "^1.0.0" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + dependencies: + object-visit "^1.0.0" + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +md5@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/md5/-/md5-2.2.1.tgz#53ab38d5fe3c8891ba465329ea23fac0540126f9" + dependencies: + charenc "~0.0.1" + crypt "~0.0.1" + is-buffer "~1.1.1" + +mdn-data@~1.1.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-1.1.4.tgz#50b5d4ffc4575276573c4eedb8780812a8419f01" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + +mem@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" + dependencies: + map-age-cleaner "^0.1.1" + mimic-fn "^2.0.0" + p-is-promise "^2.0.0" + +memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + +merge-source-map@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" + dependencies: + source-map "^0.6.1" + +merge2@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + +micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +mime-db@1.40.0, "mime-db@>= 1.40.0 < 2": + version "1.40.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" + +mime-types@~2.1.17, mime-types@~2.1.24: + version "2.1.24" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81" + dependencies: + mime-db "1.40.0" + +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + +mime@^2.4.2: + version "2.4.4" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" + +mimic-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + +minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + +minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + dependencies: + brace-expansion "^1.1.7" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + +minimist@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + +minipass@^2.2.1, minipass@^2.3.5: + version "2.3.5" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" + dependencies: + safe-buffer "^5.1.2" + yallist "^3.0.0" + +minizlib@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614" + dependencies: + minipass "^2.2.1" + +mississippi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^3.0.0" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mixin-object@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" + dependencies: + for-in "^0.1.3" + is-extendable "^0.1.1" + +mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + dependencies: + minimist "0.0.8" + +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + dependencies: + aproba "^1.1.1" + copy-concurrently "^1.0.0" + fs-write-stream-atomic "^1.0.8" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.3" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + +ms@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + +multicast-dns-service-types@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" + +multicast-dns@^6.0.1: + version "6.2.3" + resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" + dependencies: + dns-packet "^1.3.1" + thunky "^1.0.2" + +nan@^2.12.1: + version "2.14.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +needle@^2.2.1: + version "2.4.0" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" + dependencies: + debug "^3.2.6" + iconv-lite "^0.4.4" + sax "^1.2.4" + +negotiator@0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + +neo-async@^2.5.0: + version "2.6.1" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + +no-case@^2.2.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" + dependencies: + lower-case "^1.1.1" + +node-forge@0.7.5: + version "0.7.5" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" + +node-libs-browser@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" + dependencies: + assert "^1.1.1" + browserify-zlib "^0.2.0" + buffer "^4.3.0" + console-browserify "^1.1.0" + constants-browserify "^1.0.0" + crypto-browserify "^3.11.0" + domain-browser "^1.1.1" + events "^3.0.0" + https-browserify "^1.0.0" + os-browserify "^0.3.0" + path-browserify "0.0.1" + process "^0.11.10" + punycode "^1.2.4" + querystring-es3 "^0.2.0" + readable-stream "^2.3.3" + stream-browserify "^2.0.1" + stream-http "^2.7.2" + string_decoder "^1.0.0" + timers-browserify "^2.0.4" + tty-browserify "0.0.0" + url "^0.11.0" + util "^0.11.0" + vm-browserify "^1.0.1" + +node-notifier@^5.1.2: + version "5.4.0" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.0.tgz#7b455fdce9f7de0c63538297354f3db468426e6a" + dependencies: + growly "^1.3.0" + is-wsl "^1.1.0" + semver "^5.5.0" + shellwords "^0.1.1" + which "^1.3.0" + +node-pre-gyp@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz#39ba4bb1439da030295f899e3b520b7785766149" + dependencies: + detect-libc "^1.0.2" + mkdirp "^0.5.1" + needle "^2.2.1" + nopt "^4.0.1" + npm-packlist "^1.1.6" + npmlog "^4.0.2" + rc "^1.2.7" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^4" + +node-releases@^1.1.23: + version "1.1.25" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.25.tgz#0c2d7dbc7fed30fbe02a9ee3007b8c90bf0133d3" + dependencies: + semver "^5.3.0" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" + +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + +normalize-url@^3.0.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" + +npm-bundled@^1.0.1: + version "1.0.6" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd" + +npm-packlist@^1.1.6: + version "1.4.4" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.4.tgz#866224233850ac534b63d1a6e76050092b5d2f44" + dependencies: + ignore-walk "^3.0.1" + npm-bundled "^1.0.1" + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + dependencies: + path-key "^2.0.0" + +npmlog@^4.0.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +nth-check@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" + dependencies: + boolbase "~1.0.0" + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + +object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-keys@^1.0.11, object-keys@^1.0.12: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + +object-path@^0.9.2: + version "0.9.2" + resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.9.2.tgz#0fd9a74fc5fad1ae3968b586bda5c632bd6c05a5" + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + dependencies: + isobject "^3.0.0" + +object.assign@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" + +object.getownpropertydescriptors@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.1" + +object.omit@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-3.0.0.tgz#0e3edc2fce2ba54df5577ff529f6d97bd8a522af" + dependencies: + is-extendable "^1.0.0" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + dependencies: + isobject "^3.0.1" + +object.values@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" + dependencies: + define-properties "^1.1.3" + es-abstract "^1.12.0" + function-bind "^1.1.1" + has "^1.0.3" + +obuf@^1.0.0, obuf@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + dependencies: + ee-first "1.1.1" + +on-headers@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +opn@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" + dependencies: + is-wsl "^1.1.0" + +optimize-css-assets-webpack-plugin@^5.0.1: + version "5.0.3" + resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz#e2f1d4d94ad8c0af8967ebd7cf138dcb1ef14572" + dependencies: + cssnano "^4.1.10" + last-call-webpack-plugin "^3.0.0" + +original@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" + dependencies: + url-parse "^1.4.3" + +os-browserify@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + +os-locale@^3.0.0, os-locale@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" + dependencies: + execa "^1.0.0" + lcid "^2.0.0" + mem "^4.0.0" + +os-tmpdir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + +osenv@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + +p-is-promise@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + +p-limit@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.0.tgz#417c9941e6027a9abcba5092dd2904e255b5fbc2" + dependencies: + p-try "^2.0.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + dependencies: + p-limit "^2.0.0" + +p-map@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + +p-pipe@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9" + +p-retry@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" + dependencies: + retry "^0.12.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + +pako@~1.0.5: + version "1.0.10" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732" + +parallel-transform@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" + dependencies: + cyclist "~0.2.2" + inherits "^2.0.3" + readable-stream "^2.1.5" + +param-case@2.1.x: + version "2.1.1" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" + dependencies: + no-case "^2.2.0" + +parse-asn1@^5.0.0: + version "5.1.4" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.4.tgz#37f6628f823fbdeb2273b4d540434a22f3ef1fcc" + dependencies: + asn1.js "^4.0.0" + browserify-aes "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + safe-buffer "^5.1.1" + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + +parseurl@~1.3.2, parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + +path-browserify@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + +path-is-inside@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + +path-parse@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" + +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + dependencies: + pify "^3.0.0" + +pbkdf2@^3.0.3: + version "3.0.17" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +pify@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + dependencies: + find-up "^3.0.0" + +popper.js@^1.12: + version "1.15.0" + resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.15.0.tgz#5560b99bbad7647e9faa475c6b8056621f5a4ff2" + +portfinder@^1.0.20: + version "1.0.20" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.20.tgz#bea68632e54b2e13ab7b0c4775e9b41bf270e44a" + dependencies: + async "^1.5.2" + debug "^2.2.0" + mkdirp "0.5.x" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + +postcss-calc@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.1.tgz#36d77bab023b0ecbb9789d84dcb23c4941145436" + dependencies: + css-unit-converter "^1.1.1" + postcss "^7.0.5" + postcss-selector-parser "^5.0.0-rc.4" + postcss-value-parser "^3.3.1" + +postcss-colormin@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" + dependencies: + browserslist "^4.0.0" + color "^3.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-convert-values@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" + dependencies: + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-discard-comments@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" + dependencies: + postcss "^7.0.0" + +postcss-discard-duplicates@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" + dependencies: + postcss "^7.0.0" + +postcss-discard-empty@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" + dependencies: + postcss "^7.0.0" + +postcss-discard-overridden@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" + dependencies: + postcss "^7.0.0" + +postcss-load-config@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" + dependencies: + cosmiconfig "^5.0.0" + import-cwd "^2.0.0" + +postcss-loader@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" + dependencies: + loader-utils "^1.1.0" + postcss "^7.0.0" + postcss-load-config "^2.0.0" + schema-utils "^1.0.0" + +postcss-merge-longhand@^4.0.11: + version "4.0.11" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" + dependencies: + css-color-names "0.0.4" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + stylehacks "^4.0.0" + +postcss-merge-rules@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" + dependencies: + browserslist "^4.0.0" + caniuse-api "^3.0.0" + cssnano-util-same-parent "^4.0.0" + postcss "^7.0.0" + postcss-selector-parser "^3.0.0" + vendors "^1.0.0" + +postcss-minify-font-values@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" + dependencies: + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-minify-gradients@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" + dependencies: + cssnano-util-get-arguments "^4.0.0" + is-color-stop "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-minify-params@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" + dependencies: + alphanum-sort "^1.0.0" + browserslist "^4.0.0" + cssnano-util-get-arguments "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + uniqs "^2.0.0" + +postcss-minify-selectors@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" + dependencies: + alphanum-sort "^1.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-selector-parser "^3.0.0" + +postcss-modules-extract-imports@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz#dc87e34148ec7eab5f791f7cd5849833375b741a" + dependencies: + postcss "^6.0.1" + +postcss-modules-local-by-default@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-scope@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-values@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" + dependencies: + icss-replace-symbols "^1.1.0" + postcss "^6.0.1" + +postcss-normalize-charset@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" + dependencies: + postcss "^7.0.0" + +postcss-normalize-display-values@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" + dependencies: + cssnano-util-get-match "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-positions@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" + dependencies: + cssnano-util-get-arguments "^4.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-repeat-style@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" + dependencies: + cssnano-util-get-arguments "^4.0.0" + cssnano-util-get-match "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-string@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" + dependencies: + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-timing-functions@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" + dependencies: + cssnano-util-get-match "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-unicode@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" + dependencies: + browserslist "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-url@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" + dependencies: + is-absolute-url "^2.0.0" + normalize-url "^3.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-whitespace@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" + dependencies: + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-ordered-values@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" + dependencies: + cssnano-util-get-arguments "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-reduce-initial@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" + dependencies: + browserslist "^4.0.0" + caniuse-api "^3.0.0" + has "^1.0.0" + postcss "^7.0.0" + +postcss-reduce-transforms@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" + dependencies: + cssnano-util-get-match "^4.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-selector-parser@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz#4f875f4afb0c96573d5cf4d74011aee250a7e865" + dependencies: + dot-prop "^4.1.1" + indexes-of "^1.0.1" + uniq "^1.0.1" + +postcss-selector-parser@^5.0.0, postcss-selector-parser@^5.0.0-rc.4: + version "5.0.0" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" + dependencies: + cssesc "^2.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + +postcss-svgo@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" + dependencies: + is-svg "^3.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + svgo "^1.0.0" + +postcss-unique-selectors@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" + dependencies: + alphanum-sort "^1.0.0" + postcss "^7.0.0" + uniqs "^2.0.0" + +postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" + +postcss@^6.0.1, postcss@^6.0.23: + version "6.0.23" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" + dependencies: + chalk "^2.4.1" + source-map "^0.6.1" + supports-color "^5.4.0" + +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.5: + version "7.0.17" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.17.tgz#4da1bdff5322d4a0acaab4d87f3e782436bad31f" + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + +prettier@1.16.3: + version "1.16.3" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.16.3.tgz#8c62168453badef702f34b45b6ee899574a6a65d" + +private@^0.1.6, private@~0.1.5: + version "0.1.8" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + +process@^0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + +proxy-addr@~2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.5.tgz#34cbd64a2d81f4b1fd21e76f9f06c8a45299ee34" + dependencies: + forwarded "~0.1.2" + ipaddr.js "1.9.0" + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + +public-encrypt@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + safe-buffer "^5.1.2" + +pump@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pumpify@^1.3.3: + version "1.5.1" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + dependencies: + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + +punycode@^1.2.4: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + +q@^1.1.2: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + +qs@6.7.0: + version "6.7.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" + +querystring-es3@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + +querystringify@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" + +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + dependencies: + safe-buffer "^5.1.0" + +randomfill@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" + dependencies: + randombytes "^2.0.5" + safe-buffer "^5.1.0" + +range-parser@^1.2.1, range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + +raw-body@2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" + dependencies: + bytes "3.1.0" + http-errors "1.7.2" + iconv-lite "0.4.24" + unpipe "1.0.0" + +rc@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readable-stream@^3.0.6: + version "3.4.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readdirp@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + dependencies: + graceful-fs "^4.1.11" + micromatch "^3.1.10" + readable-stream "^2.0.2" + +recast@~0.11.12: + version "0.11.23" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" + dependencies: + ast-types "0.9.6" + esprima "~3.1.0" + private "~0.1.5" + source-map "~0.5.0" + +regenerate-unicode-properties@^8.0.2: + version "8.1.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e" + dependencies: + regenerate "^1.4.0" + +regenerate@^1.2.1, regenerate@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" + +regenerator-runtime@^0.13.2: + version "0.13.2" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz#32e59c9a6fb9b1a4aff09b4930ca2d4477343447" + +regenerator-transform@^0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.0.tgz#2ca9aaf7a2c239dd32e4761218425b8c7a86ecaf" + dependencies: + private "^0.1.6" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regex-parser@^2.2.9: + version "2.2.10" + resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.10.tgz#9e66a8f73d89a107616e63b39d4deddfee912b37" + +regexp-tree@^0.1.6: + version "0.1.10" + resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.10.tgz#d837816a039c7af8a8d64d7a7c3cf6a1d93450bc" + +regexpu-core@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +regexpu-core@^4.5.4: + version "4.5.4" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.4.tgz#080d9d02289aa87fe1667a4f5136bc98a6aebaae" + dependencies: + regenerate "^1.4.0" + regenerate-unicode-properties "^8.0.2" + regjsgen "^0.5.0" + regjsparser "^0.6.0" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.1.0" + +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + +regjsgen@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz#a7634dc08f89209c2049adda3525711fb97265dd" + +regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + dependencies: + jsesc "~0.5.0" + +regjsparser@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz#f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c" + dependencies: + jsesc "~0.5.0" + +relateurl@0.2.x: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + +repeat-element@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + +replace-ext@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + +resolve-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" + dependencies: + resolve-from "^3.0.0" + +resolve-dir@^1.0.0, resolve-dir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + +resolve-url-loader@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-2.3.2.tgz#83bb9ebc392b66c563795eef22f078970357a26e" + dependencies: + adjust-sourcemap-loader "^1.1.0" + camelcase "^4.1.0" + convert-source-map "^1.5.1" + loader-utils "^1.1.0" + lodash.defaults "^4.0.0" + rework "^1.0.1" + rework-visit "^1.0.0" + source-map "^0.5.7" + urix "^0.1.0" + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + +resolve@^1.3.2, resolve@^1.8.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e" + dependencies: + path-parse "^1.0.6" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + +rework-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/rework-visit/-/rework-visit-1.0.0.tgz#9945b2803f219e2f7aca00adb8bc9f640f842c9a" + +rework@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/rework/-/rework-1.0.1.tgz#30806a841342b54510aa4110850cd48534144aa7" + dependencies: + convert-source-map "^0.3.3" + css "^2.0.0" + +rgb-regex@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" + +rgba-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" + +rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3: + version "2.6.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" + dependencies: + glob "^7.1.3" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + dependencies: + aproba "^1.1.1" + +safe-buffer@5.1.2, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + +sass-loader@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" + dependencies: + clone-deep "^2.0.1" + loader-utils "^1.0.1" + lodash.tail "^4.1.1" + neo-async "^2.5.0" + pify "^3.0.0" + semver "^5.5.0" + +sass@^1.15.2: + version "1.22.3" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.22.3.tgz#b3591191ab0f3caece39ed9384c90caccacf471c" + dependencies: + chokidar ">=2.0.0 <4.0.0" + +sax@^1.2.4, sax@~1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + +schema-utils@^0.4.5: + version "0.4.7" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + +schema-utils@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" + dependencies: + ajv "^6.1.0" + ajv-errors "^1.0.0" + ajv-keywords "^3.1.0" + +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + +selfsigned@^1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" + dependencies: + node-forge "0.7.5" + +semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" + +semver@^6.1.1: + version "6.2.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.2.0.tgz#4d813d9590aaf8a9192693d6c85b9344de5901db" + +send@0.17.1: + version "0.17.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" + dependencies: + debug "2.6.9" + depd "~1.1.2" + destroy "~1.0.4" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.7.2" + mime "1.6.0" + ms "2.1.1" + on-finished "~2.3.0" + range-parser "~1.2.1" + statuses "~1.5.0" + +serialize-javascript@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.7.0.tgz#d6e0dfb2a3832a8c94468e6eb1db97e55a192a65" + +serve-index@^1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + dependencies: + accepts "~1.3.4" + batch "0.6.1" + debug "2.6.9" + escape-html "~1.0.3" + http-errors "~1.6.2" + mime-types "~2.1.17" + parseurl "~1.3.2" + +serve-static@1.14.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.17.1" + +set-blocking@^2.0.0, set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +setimmediate@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" + +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shallow-clone@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" + dependencies: + is-extendable "^0.1.1" + kind-of "^5.0.0" + mixin-object "^2.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + +signal-exit@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + +simple-swizzle@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" + dependencies: + is-arrayish "^0.3.1" + +slash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +sockjs-client@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.3.0.tgz#12fc9d6cb663da5739d3dc5fb6e8687da95cb177" + dependencies: + debug "^3.2.5" + eventsource "^1.0.7" + faye-websocket "~0.11.1" + inherits "^2.0.3" + json3 "^3.3.2" + url-parse "^1.4.3" + +sockjs@0.3.19: + version "0.3.19" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" + dependencies: + faye-websocket "^0.10.0" + uuid "^3.0.1" + +source-list-map@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" + +source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" + dependencies: + atob "^2.1.1" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@~0.5.10: + version "0.5.12" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" + +source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.0: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + +spdy-transport@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" + dependencies: + debug "^4.1.0" + detect-node "^2.0.4" + hpack.js "^2.1.6" + obuf "^1.1.2" + readable-stream "^3.0.6" + wbuf "^1.7.3" + +spdy@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.0.tgz#81f222b5a743a329aa12cea6a390e60e9b613c52" + dependencies: + debug "^4.1.0" + handle-thing "^2.0.0" + http-deceiver "^1.2.7" + select-hose "^2.0.0" + spdy-transport "^3.0.0" + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + +ssri@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" + dependencies: + figgy-pudding "^3.5.1" + +stable@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + +stackframe@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.0.4.tgz#357b24a992f9427cba6b545d96a14ed2cbca187b" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@~1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + +stream-browserify@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + +stream-each@^1.1.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + +stream-http@^2.7.2: + version "2.8.3" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^2.3.6" + to-arraybuffer "^1.0.0" + xtend "^4.0.0" + +stream-shift@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + +string-width@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0, string-width@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string_decoder@^1.0.0, string_decoder@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" + dependencies: + safe-buffer "~5.1.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + dependencies: + ansi-regex "^4.1.0" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + +style-loader@^0.23.1: + version "0.23.1" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.1.tgz#cb9154606f3e771ab6c4ab637026a1049174d925" + dependencies: + loader-utils "^1.1.0" + schema-utils "^1.0.0" + +stylehacks@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" + dependencies: + browserslist "^4.0.0" + postcss "^7.0.0" + postcss-selector-parser "^3.0.0" + +supports-color@6.1.0, supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + dependencies: + has-flag "^3.0.0" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + +supports-color@^5.3.0, supports-color@^5.4.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + dependencies: + has-flag "^3.0.0" + +svgo@^1.0.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.2.2.tgz#0253d34eccf2aed4ad4f283e11ee75198f9d7316" + dependencies: + chalk "^2.4.1" + coa "^2.0.2" + css-select "^2.0.0" + css-select-base-adapter "^0.1.1" + css-tree "1.0.0-alpha.28" + css-url-regex "^1.1.0" + csso "^3.5.1" + js-yaml "^3.13.1" + mkdirp "~0.5.1" + object.values "^1.1.0" + sax "~1.2.4" + stable "^0.1.8" + unquote "~1.1.1" + util.promisify "~1.0.0" + +tapable@^1.0.0, tapable@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" + +tar@^4: + version "4.4.10" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.10.tgz#946b2810b9a5e0b26140cf78bea6b0b0d689eba1" + dependencies: + chownr "^1.1.1" + fs-minipass "^1.2.5" + minipass "^2.3.5" + minizlib "^1.2.1" + mkdirp "^0.5.0" + safe-buffer "^5.1.2" + yallist "^3.0.3" + +terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.2.2: + version "1.3.0" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.3.0.tgz#69aa22426299f4b5b3775cbed8cb2c5d419aa1d4" + dependencies: + cacache "^11.3.2" + find-cache-dir "^2.0.0" + is-wsl "^1.1.0" + loader-utils "^1.2.3" + schema-utils "^1.0.0" + serialize-javascript "^1.7.0" + source-map "^0.6.1" + terser "^4.0.0" + webpack-sources "^1.3.0" + worker-farm "^1.7.0" + +terser@^3.11.0: + version "3.17.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-3.17.0.tgz#f88ffbeda0deb5637f9d24b0da66f4e15ab10cb2" + dependencies: + commander "^2.19.0" + source-map "~0.6.1" + source-map-support "~0.5.10" + +terser@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.0.2.tgz#580cea06c4932f46a48ed13804c93bc93c275968" + dependencies: + commander "^2.19.0" + source-map "~0.6.1" + source-map-support "~0.5.10" + +through2@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +through@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +thunky@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" + +timers-browserify@^2.0.4: + version "2.0.10" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" + dependencies: + setimmediate "^1.0.4" + +timsort@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" + +to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" + +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + +tslib@^1.9.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" + +tty-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + +type-is@~1.6.17, type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + +uglify-js@3.4.x: + version "3.4.10" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.10.tgz#9ad9563d8eb3acdfb8d38597d2af1d815f6a755f" + dependencies: + commander "~2.19.0" + source-map "~0.6.1" + +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + dependencies: + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" + +unicode-match-property-value-ecmascript@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz#5b4b426e08d13a80365e0d657ac7a6c1ec46a277" + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz#a9cc6cc7ce63a0a3023fc99e341b94431d405a57" + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" + +uniqs@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" + +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + dependencies: + imurmurhash "^0.1.4" + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + +unquote@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +upath@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.2.tgz#3db658600edaeeccbe6db5e684d67ee8c2acd068" + +upper-case@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" + +uri-js@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + +url-parse@^1.4.3: + version "1.4.7" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.7.tgz#a8a83535e8c00a316e403a5db4ac1b9b853ae278" + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + +url@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + +util-deprecate@^1.0.1, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + +util.promisify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + +util@0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + dependencies: + inherits "2.0.1" + +util@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" + dependencies: + inherits "2.0.3" + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + +uuid@^3.0.1, uuid@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" + +v8-compile-cache@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" + +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + +vendors@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.3.tgz#a6467781abd366217c050f8202e7e50cc9eef8c0" + +vm-browserify@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.0.tgz#bd76d6a23323e2ca8ffa12028dc04559c75f9019" + +vue-hot-reload-api@^2.3.0: + version "2.3.3" + resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.3.tgz#2756f46cb3258054c5f4723de8ae7e87302a1ccf" + +vue-loader@^15.4.2: + version "15.7.0" + resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.7.0.tgz#27275aa5a3ef4958c5379c006dd1436ad04b25b3" + dependencies: + "@vue/component-compiler-utils" "^2.5.1" + hash-sum "^1.0.2" + loader-utils "^1.1.0" + vue-hot-reload-api "^2.3.0" + vue-style-loader "^4.1.0" + +vue-style-loader@^4.1.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-4.1.2.tgz#dedf349806f25ceb4e64f3ad7c0a44fba735fcf8" + dependencies: + hash-sum "^1.0.2" + loader-utils "^1.0.2" + +vue-template-es2015-compiler@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" + +vue@^2.5.17: + version "2.6.10" + resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.10.tgz#a72b1a42a4d82a721ea438d1b6bf55e66195c637" + +watchpack@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" + dependencies: + chokidar "^2.0.2" + graceful-fs "^4.1.2" + neo-async "^2.5.0" + +wbuf@^1.1.0, wbuf@^1.7.3: + version "1.7.3" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + dependencies: + minimalistic-assert "^1.0.0" + +webpack-cli@^3.1.2: + version "3.3.5" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.5.tgz#f4d1238a66a2843d9cebf189835ea22142e72767" + dependencies: + chalk "2.4.2" + cross-spawn "6.0.5" + enhanced-resolve "4.1.0" + findup-sync "3.0.0" + global-modules "2.0.0" + import-local "2.0.0" + interpret "1.2.0" + loader-utils "1.2.3" + supports-color "6.1.0" + v8-compile-cache "2.0.3" + yargs "13.2.4" + +webpack-dev-middleware@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.0.tgz#ef751d25f4e9a5c8a35da600c5fda3582b5c6cff" + dependencies: + memory-fs "^0.4.1" + mime "^2.4.2" + range-parser "^1.2.1" + webpack-log "^2.0.0" + +webpack-dev-server@^3.1.14: + version "3.7.2" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.7.2.tgz#f79caa5974b7f8b63268ef5421222a8486d792f5" + dependencies: + ansi-html "0.0.7" + bonjour "^3.5.0" + chokidar "^2.1.6" + compression "^1.7.4" + connect-history-api-fallback "^1.6.0" + debug "^4.1.1" + del "^4.1.1" + express "^4.17.1" + html-entities "^1.2.1" + http-proxy-middleware "^0.19.1" + import-local "^2.0.0" + internal-ip "^4.3.0" + ip "^1.1.5" + killable "^1.0.1" + loglevel "^1.6.3" + opn "^5.5.0" + p-retry "^3.0.1" + portfinder "^1.0.20" + schema-utils "^1.0.0" + selfsigned "^1.10.4" + semver "^6.1.1" + serve-index "^1.9.1" + sockjs "0.3.19" + sockjs-client "1.3.0" + spdy "^4.0.0" + strip-ansi "^3.0.1" + supports-color "^6.1.0" + url "^0.11.0" + webpack-dev-middleware "^3.7.0" + webpack-log "^2.0.0" + yargs "12.0.5" + +webpack-log@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" + dependencies: + ansi-colors "^3.0.0" + uuid "^3.3.2" + +webpack-merge@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.2.1.tgz#5e923cf802ea2ace4fd5af1d3247368a633489b4" + dependencies: + lodash "^4.17.5" + +webpack-notifier@^1.5.1: + version "1.8.0" + resolved "https://registry.yarnpkg.com/webpack-notifier/-/webpack-notifier-1.8.0.tgz#994bdde0fcefc5f1a92b6d91353c8152ddd9c583" + dependencies: + node-notifier "^5.1.2" + object-assign "^4.1.0" + strip-ansi "^3.0.1" + +webpack-sources@^1.1.0, webpack-sources@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + +webpack@^4.27.1: + version "4.35.2" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.35.2.tgz#5c8b8a66602cbbd6ec65c6e6747914a61c1449b1" + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/helper-module-context" "1.8.5" + "@webassemblyjs/wasm-edit" "1.8.5" + "@webassemblyjs/wasm-parser" "1.8.5" + acorn "^6.0.5" + acorn-dynamic-import "^4.0.0" + ajv "^6.1.0" + ajv-keywords "^3.1.0" + chrome-trace-event "^1.0.0" + enhanced-resolve "^4.1.0" + eslint-scope "^4.0.0" + json-parse-better-errors "^1.0.2" + loader-runner "^2.3.0" + loader-utils "^1.1.0" + memory-fs "~0.4.1" + micromatch "^3.1.8" + mkdirp "~0.5.0" + neo-async "^2.5.0" + node-libs-browser "^2.0.0" + schema-utils "^1.0.0" + tapable "^1.1.0" + terser-webpack-plugin "^1.1.0" + watchpack "^1.5.0" + webpack-sources "^1.3.0" + +websocket-driver@>=0.5.1: + version "0.7.3" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.3.tgz#a2d4e0d4f4f116f1e6297eba58b05d430100e9f9" + dependencies: + http-parser-js ">=0.4.0 <0.4.11" + safe-buffer ">=5.1.0" + websocket-extensions ">=0.1.1" + +websocket-extensions@>=0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" + +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + +which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + dependencies: + string-width "^1.0.2 || 2" + +worker-farm@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" + dependencies: + errno "~0.1.7" + +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + +xtend@^4.0.0, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + +"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + +yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" + +yargs-parser@^11.1.1: + version "11.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^13.1.0: + version "13.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs@12.0.5, yargs@^12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + dependencies: + cliui "^4.0.0" + decamelize "^1.2.0" + find-up "^3.0.0" + get-caller-file "^1.0.1" + os-locale "^3.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1 || ^4.0.0" + yargs-parser "^11.1.1" + +yargs@13.2.4: + version "13.2.4" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz#0b562b794016eb9651b98bd37acf364aa5d6dc83" + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + os-locale "^3.1.0" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.0"