From 4c83399d4a490907129f734780a8415351703900 Mon Sep 17 00:00:00 2001 From: James Collins Date: Tue, 24 Jan 2023 15:13:03 +1000 Subject: [PATCH] initial --- .editorconfig | 18 + .env.example | 58 + .eslintrc.js | 21 + .gitattributes | 11 + .gitignore | 239 + .prettierrc.json | 4 + .vscode/settings.json | 18 + README.md | 67 +- app/Console/Kernel.php | 32 + app/Enum/Enum.php | 50 + app/Enum/HttpResponseCodes.php | 165 + app/Exceptions/Handler.php | 85 + app/Filters/AuditFilter.php | 29 + app/Filters/EventFilter.php | 70 + app/Filters/FilterAbstract.php | 589 ++ app/Filters/MediaFilter.php | 58 + app/Filters/PostFilter.php | 47 + app/Filters/UserFilter.php | 30 + app/Http/Controllers/Api/ApiController.php | 172 + app/Http/Controllers/Api/AuthController.php | 101 + .../Controllers/Api/ContactController.php | 30 + app/Http/Controllers/Api/EventController.php | 88 + app/Http/Controllers/Api/MediaController.php | 247 + app/Http/Controllers/Api/PostController.php | 93 + .../Api/SubscriptionController.php | 126 + app/Http/Controllers/Api/UserController.php | 337 + app/Http/Controllers/Controller.php | 15 + app/Http/Kernel.php | 70 + app/Http/Middleware/Authenticate.php | 21 + app/Http/Middleware/EncryptCookies.php | 17 + app/Http/Middleware/ForceJsonResponse.php | 22 + .../PreventRequestsDuringMaintenance.php | 17 + .../Middleware/RedirectIfAuthenticated.php | 32 + app/Http/Middleware/TrimStrings.php | 19 + app/Http/Middleware/TrustHosts.php | 20 + app/Http/Middleware/TrustProxies.php | 25 + app/Http/Middleware/UseSanctumGuard.php | 23 + app/Http/Middleware/ValidateSignature.php | 22 + app/Http/Middleware/VerifyCsrfToken.php | 17 + app/Http/Requests/AuthLoginRequest.php | 21 + app/Http/Requests/BaseRequest.php | 95 + app/Http/Requests/ContactSendRequest.php | 24 + app/Http/Requests/EventRequest.php | 78 + app/Http/Requests/MediaStoreRequest.php | 20 + app/Http/Requests/MediaUpdateRequest.php | 20 + app/Http/Requests/PostStoreRequest.php | 23 + app/Http/Requests/PostUpdateRequest.php | 28 + .../Requests/UserForgotPasswordRequest.php | 22 + .../Requests/UserForgotUsernameRequest.php | 22 + app/Http/Requests/UserRegisterRequest.php | 24 + .../Requests/UserResendVerifyEmailRequest.php | 22 + .../Requests/UserResetPasswordRequest.php | 23 + app/Http/Requests/UserStoreRequest.php | 25 + app/Http/Requests/UserUpdateRequest.php | 25 + app/Http/Requests/UserVerifyEmailRequest.php | 22 + app/Jobs/SendEmailJob.php | 57 + app/Mail/ChangeEmailVerify.php | 79 + app/Mail/ChangedEmail.php | 79 + app/Mail/ChangedPassword.php | 61 + app/Mail/Contact.php | 78 + app/Mail/EmailVerify.php | 70 + app/Mail/ForgotPassword.php | 70 + app/Mail/ForgotUsername.php | 60 + app/Models/Event.php | 32 + app/Models/Media.php | 276 + app/Models/Permission.php | 34 + app/Models/Post.php | 38 + app/Models/Subscription.php | 22 + app/Models/User.php | 145 + app/Models/UserCode.php | 82 + app/Models/UserLogins.php | 38 + app/Providers/AppServiceProvider.php | 31 + app/Providers/AuthServiceProvider.php | 31 + app/Providers/BroadcastServiceProvider.php | 21 + app/Providers/EventServiceProvider.php | 61 + app/Providers/RouteServiceProvider.php | 53 + app/Rules/Recaptcha.php | 52 + app/Services/ImageService.php | 9 + app/Traits/Uuids.php | 42 + artisan | 53 + bootstrap/app.php | 55 + bootstrap/cache/.gitignore | 2 + composer.json | 70 + composer.lock | 8558 +++++++++++++++++ config/app.php | 217 + config/audit.php | 169 + config/auth.php | 111 + config/broadcasting.php | 70 + config/cache.php | 110 + config/contact.php | 6 + config/cors.php | 34 + config/database.php | 151 + config/filesystems.php | 76 + config/hashing.php | 52 + config/image.php | 20 + config/logging.php | 122 + config/mail.php | 122 + config/purify.php | 87 + config/queue.php | 93 + config/sanctum.php | 67 + config/services.php | 39 + config/session.php | 201 + config/view.php | 36 + database/.gitignore | 1 + database/factories/UserFactory.php | 43 + .../2014_10_12_000000_create_users_table.php | 40 + ...12_100000_create_password_resets_table.php | 32 + ..._08_19_000000_create_failed_jobs_table.php | 36 + ...01_create_personal_access_tokens_table.php | 37 + .../2022_12_28_113117_create_posts_table.php | 39 + .../2022_12_30_105153_create_media_table.php | 39 + ..._12_30_110049_create_permissions_table.php | 35 + .../2023_01_01_103251_create_events_table.php | 42 + ..._021_050482_create_subscriptions_table.php | 33 + .../2023_01_05_043106_create_jobs_table.php | 36 + ...3_01_05_112154_create_user_codes_table.php | 37 + .../2023_01_08_045958_create_audits_table.php | 47 + ..._01_08_050847_create_user_logins_table.php | 39 + database/seeders/DatabaseSeeder.php | 32 + lang/en/auth.php | 20 + lang/en/pagination.php | 19 + lang/en/passwords.php | 22 + lang/en/validation.php | 179 + package-lock.json | 3934 ++++++++ package.json | 49 + phpcs.xml | 119 + phpunit.xml | 31 + public/.htaccess | 21 + public/android-chrome-192x192.png | Bin 0 -> 20338 bytes public/android-chrome-512x512.png | Bin 0 -> 76262 bytes public/apple-touch-icon.png | Bin 0 -> 18187 bytes public/favicon-16x16.png | Bin 0 -> 683 bytes public/favicon-32x32.png | Bin 0 -> 1587 bytes public/favicon.ico | Bin 0 -> 15406 bytes public/img/403.jpg | Bin 0 -> 46264 bytes public/img/404.jpg | Bin 0 -> 136251 bytes public/img/500.jpg | Bin 0 -> 46264 bytes public/img/discord.jpg | Bin 0 -> 97542 bytes public/img/green-screen.jpg | Bin 0 -> 103397 bytes public/img/logo-small.png | Bin 0 -> 69047 bytes public/img/logo.png | Bin 0 -> 108258 bytes public/img/minecraft-address.png | Bin 0 -> 2589 bytes public/img/minecraft-edu.png | Bin 0 -> 65058 bytes public/img/minecraft.png | Bin 0 -> 135361 bytes public/index.php | 55 + public/robots.txt | 2 + resources/css/app.scss | 451 + resources/css/data-table.scss | 66 + resources/css/datepicker.scss | 70 + resources/css/utils.scss | 190 + resources/css/variables.scss | 40 + resources/js/axios.js | 44 + resources/js/bootstrap.js | 34 + resources/js/components/DFileLink.vue | 58 + resources/js/components/DTab.vue | 26 + resources/js/components/DTabGroup.vue | 65 + resources/js/components/Dialog.vue | 59 + resources/js/components/SMBreadcrumbs.vue | 134 + resources/js/components/SMButton.vue | 58 + resources/js/components/SMCaptchaNotice.vue | 16 + resources/js/components/SMCarousel.vue | 192 + resources/js/components/SMCarouselSlide.vue | 133 + resources/js/components/SMColumn.vue | 68 + resources/js/components/SMContainer.vue | 88 + resources/js/components/SMDatePicker.vue | 131 + resources/js/components/SMDialog.vue | 39 + resources/js/components/SMEditor.vue | 731 ++ resources/js/components/SMFooter.vue | 168 + resources/js/components/SMFormFooter.vue | 79 + resources/js/components/SMHTML.vue | 29 + resources/js/components/SMHeading.vue | 87 + resources/js/components/SMInput.vue | 205 + resources/js/components/SMLoader.vue | 21 + resources/js/components/SMMessage.vue | 57 + resources/js/components/SMModal.vue | 17 + resources/js/components/SMNavbar.vue | 378 + resources/js/components/SMPageError.vue | 25 + resources/js/components/SMPanel.vue | 242 + resources/js/components/SMPanelList.vue | 71 + resources/js/components/SMRow.vue | 31 + resources/js/components/SMSelect.vue | 89 + resources/js/components/SMToolbar.vue | 84 + .../dialogs/SMDialogChangePassword.vue | 118 + .../js/components/dialogs/SMDialogConfirm.vue | 86 + .../js/components/dialogs/SMDialogMedia.vue | 308 + resources/js/components/errors/Forbidden.vue | 15 + resources/js/components/errors/Internal.vue | 15 + resources/js/components/errors/Notfound.vue | 15 + resources/js/helpers/common.js | 404 + resources/js/helpers/fontawesome.ts | 9 + resources/js/helpers/validation.js | 316 + resources/js/main.js | 37 + resources/js/router/index.js | 449 + resources/js/store/ApplicationStore.ts | 25 + resources/js/store/UserStore.d.ts | 17 + resources/js/store/UserStore.ts | 79 + resources/js/views/About.vue | 5 + resources/js/views/App.vue | 37 + resources/js/views/Contact.vue | 150 + resources/js/views/Dashboard.vue | 105 + resources/js/views/Dialog.vue | 50 + resources/js/views/DialogDelete.vue | 19 + resources/js/views/EmailVerify.vue | 126 + resources/js/views/EventView.vue | 52 + resources/js/views/ForgotPassword.vue | 128 + resources/js/views/ForgotUsername.vue | 121 + resources/js/views/Home.vue | 335 + resources/js/views/Legal.vue | 7 + resources/js/views/Login.vue | 157 + resources/js/views/Logout.vue | 56 + resources/js/views/NewsList.vue | 62 + resources/js/views/NewsView.vue | 166 + resources/js/views/Privacy.vue | 334 + resources/js/views/Register.vue | 272 + resources/js/views/ResendEmailVerify.vue | 128 + resources/js/views/ResetPassword.vue | 150 + resources/js/views/Rules.vue | 40 + resources/js/views/Terms.vue | 564 ++ resources/js/views/WorkshopList.vue | 126 + resources/js/views/WorkshopView.vue | 272 + resources/js/views/dashboard/CreatePost.vue | 182 + resources/js/views/dashboard/EventEdit.vue | 423 + resources/js/views/dashboard/EventList.vue | 199 + resources/js/views/dashboard/MediaEdit.vue | 241 + resources/js/views/dashboard/MediaList.vue | 215 + resources/js/views/dashboard/PostEdit.vue | 320 + resources/js/views/dashboard/PostList.vue | 199 + resources/js/views/dashboard/UserEdit.vue | 199 + resources/js/views/dashboard/UserList.vue | 168 + resources/views/app.blade.php | 14 + .../emails/user/change_email_verify.blade.php | 103 + .../user/change_email_verify_plain.blade.php | 16 + .../views/emails/user/changed_email.blade.php | 116 + .../emails/user/changed_email_plain.blade.php | 12 + .../emails/user/changed_password.blade.php | 116 + .../user/changed_password_plain.blade.php | 12 + resources/views/emails/user/contact.blade.php | 58 + .../views/emails/user/contact_plain.blade.php | 8 + .../views/emails/user/email_verify.blade.php | 104 + .../emails/user/email_verify_plain.blade.php | 17 + .../emails/user/forgot_password.blade.php | 117 + .../user/forgot_password_plain.blade.php | 14 + .../emails/user/forgot_username.blade.php | 132 + .../user/forgot_username_plain.blade.php | 24 + routes/api.php | 51 + routes/channels.php | 18 + routes/console.php | 19 + routes/web.php | 23 + storage/app/.gitignore | 3 + storage/app/public/.gitignore | 2 + storage/framework/.gitignore | 9 + 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 + tests/CreatesApplication.php | 22 + tests/Feature/ExampleTest.php | 21 + tests/TestCase.php | 10 + tests/Unit/ExampleTest.php | 18 + vite.config.js | 32 + 261 files changed, 33538 insertions(+), 1 deletion(-) create mode 100644 .editorconfig create mode 100644 .env.example create mode 100644 .eslintrc.js create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .prettierrc.json create mode 100644 .vscode/settings.json create mode 100644 app/Console/Kernel.php create mode 100644 app/Enum/Enum.php create mode 100644 app/Enum/HttpResponseCodes.php create mode 100644 app/Exceptions/Handler.php create mode 100644 app/Filters/AuditFilter.php create mode 100644 app/Filters/EventFilter.php create mode 100644 app/Filters/FilterAbstract.php create mode 100644 app/Filters/MediaFilter.php create mode 100644 app/Filters/PostFilter.php create mode 100644 app/Filters/UserFilter.php create mode 100644 app/Http/Controllers/Api/ApiController.php create mode 100644 app/Http/Controllers/Api/AuthController.php create mode 100644 app/Http/Controllers/Api/ContactController.php create mode 100644 app/Http/Controllers/Api/EventController.php create mode 100644 app/Http/Controllers/Api/MediaController.php create mode 100644 app/Http/Controllers/Api/PostController.php create mode 100644 app/Http/Controllers/Api/SubscriptionController.php create mode 100644 app/Http/Controllers/Api/UserController.php create mode 100644 app/Http/Controllers/Controller.php create mode 100644 app/Http/Kernel.php create mode 100644 app/Http/Middleware/Authenticate.php create mode 100644 app/Http/Middleware/EncryptCookies.php create mode 100644 app/Http/Middleware/ForceJsonResponse.php create mode 100644 app/Http/Middleware/PreventRequestsDuringMaintenance.php create mode 100644 app/Http/Middleware/RedirectIfAuthenticated.php create mode 100644 app/Http/Middleware/TrimStrings.php create mode 100644 app/Http/Middleware/TrustHosts.php create mode 100644 app/Http/Middleware/TrustProxies.php create mode 100644 app/Http/Middleware/UseSanctumGuard.php create mode 100644 app/Http/Middleware/ValidateSignature.php create mode 100644 app/Http/Middleware/VerifyCsrfToken.php create mode 100644 app/Http/Requests/AuthLoginRequest.php create mode 100644 app/Http/Requests/BaseRequest.php create mode 100644 app/Http/Requests/ContactSendRequest.php create mode 100644 app/Http/Requests/EventRequest.php create mode 100644 app/Http/Requests/MediaStoreRequest.php create mode 100644 app/Http/Requests/MediaUpdateRequest.php create mode 100644 app/Http/Requests/PostStoreRequest.php create mode 100644 app/Http/Requests/PostUpdateRequest.php create mode 100644 app/Http/Requests/UserForgotPasswordRequest.php create mode 100644 app/Http/Requests/UserForgotUsernameRequest.php create mode 100644 app/Http/Requests/UserRegisterRequest.php create mode 100644 app/Http/Requests/UserResendVerifyEmailRequest.php create mode 100644 app/Http/Requests/UserResetPasswordRequest.php create mode 100644 app/Http/Requests/UserStoreRequest.php create mode 100644 app/Http/Requests/UserUpdateRequest.php create mode 100644 app/Http/Requests/UserVerifyEmailRequest.php create mode 100644 app/Jobs/SendEmailJob.php create mode 100644 app/Mail/ChangeEmailVerify.php create mode 100644 app/Mail/ChangedEmail.php create mode 100644 app/Mail/ChangedPassword.php create mode 100644 app/Mail/Contact.php create mode 100644 app/Mail/EmailVerify.php create mode 100644 app/Mail/ForgotPassword.php create mode 100644 app/Mail/ForgotUsername.php create mode 100644 app/Models/Event.php create mode 100644 app/Models/Media.php create mode 100644 app/Models/Permission.php create mode 100644 app/Models/Post.php create mode 100644 app/Models/Subscription.php create mode 100644 app/Models/User.php create mode 100644 app/Models/UserCode.php create mode 100644 app/Models/UserLogins.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/Rules/Recaptcha.php create mode 100644 app/Services/ImageService.php create mode 100644 app/Traits/Uuids.php create mode 100755 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/audit.php create mode 100644 config/auth.php create mode 100644 config/broadcasting.php create mode 100644 config/cache.php create mode 100644 config/contact.php create mode 100644 config/cors.php create mode 100644 config/database.php create mode 100644 config/filesystems.php create mode 100644 config/hashing.php create mode 100644 config/image.php create mode 100644 config/logging.php create mode 100644 config/mail.php create mode 100644 config/purify.php create mode 100644 config/queue.php create mode 100644 config/sanctum.php create mode 100644 config/services.php create mode 100644 config/session.php create mode 100644 config/view.php create mode 100644 database/.gitignore create mode 100644 database/factories/UserFactory.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_08_19_000000_create_failed_jobs_table.php create mode 100644 database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php create mode 100644 database/migrations/2022_12_28_113117_create_posts_table.php create mode 100644 database/migrations/2022_12_30_105153_create_media_table.php create mode 100644 database/migrations/2022_12_30_110049_create_permissions_table.php create mode 100644 database/migrations/2023_01_01_103251_create_events_table.php create mode 100644 database/migrations/2023_01_021_050482_create_subscriptions_table.php create mode 100644 database/migrations/2023_01_05_043106_create_jobs_table.php create mode 100644 database/migrations/2023_01_05_112154_create_user_codes_table.php create mode 100644 database/migrations/2023_01_08_045958_create_audits_table.php create mode 100644 database/migrations/2023_01_08_050847_create_user_logins_table.php create mode 100644 database/seeders/DatabaseSeeder.php create mode 100644 lang/en/auth.php create mode 100644 lang/en/pagination.php create mode 100644 lang/en/passwords.php create mode 100644 lang/en/validation.php create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 phpcs.xml create mode 100644 phpunit.xml create mode 100644 public/.htaccess create mode 100644 public/android-chrome-192x192.png create mode 100644 public/android-chrome-512x512.png create mode 100644 public/apple-touch-icon.png create mode 100644 public/favicon-16x16.png create mode 100644 public/favicon-32x32.png create mode 100644 public/favicon.ico create mode 100644 public/img/403.jpg create mode 100644 public/img/404.jpg create mode 100644 public/img/500.jpg create mode 100644 public/img/discord.jpg create mode 100644 public/img/green-screen.jpg create mode 100644 public/img/logo-small.png create mode 100644 public/img/logo.png create mode 100644 public/img/minecraft-address.png create mode 100644 public/img/minecraft-edu.png create mode 100644 public/img/minecraft.png create mode 100644 public/index.php create mode 100644 public/robots.txt create mode 100644 resources/css/app.scss create mode 100644 resources/css/data-table.scss create mode 100644 resources/css/datepicker.scss create mode 100644 resources/css/utils.scss create mode 100644 resources/css/variables.scss create mode 100644 resources/js/axios.js create mode 100644 resources/js/bootstrap.js create mode 100644 resources/js/components/DFileLink.vue create mode 100644 resources/js/components/DTab.vue create mode 100644 resources/js/components/DTabGroup.vue create mode 100644 resources/js/components/Dialog.vue create mode 100644 resources/js/components/SMBreadcrumbs.vue create mode 100644 resources/js/components/SMButton.vue create mode 100644 resources/js/components/SMCaptchaNotice.vue create mode 100644 resources/js/components/SMCarousel.vue create mode 100644 resources/js/components/SMCarouselSlide.vue create mode 100644 resources/js/components/SMColumn.vue create mode 100644 resources/js/components/SMContainer.vue create mode 100644 resources/js/components/SMDatePicker.vue create mode 100644 resources/js/components/SMDialog.vue create mode 100644 resources/js/components/SMEditor.vue create mode 100644 resources/js/components/SMFooter.vue create mode 100644 resources/js/components/SMFormFooter.vue create mode 100644 resources/js/components/SMHTML.vue create mode 100644 resources/js/components/SMHeading.vue create mode 100644 resources/js/components/SMInput.vue create mode 100644 resources/js/components/SMLoader.vue create mode 100644 resources/js/components/SMMessage.vue create mode 100644 resources/js/components/SMModal.vue create mode 100644 resources/js/components/SMNavbar.vue create mode 100644 resources/js/components/SMPageError.vue create mode 100644 resources/js/components/SMPanel.vue create mode 100644 resources/js/components/SMPanelList.vue create mode 100644 resources/js/components/SMRow.vue create mode 100644 resources/js/components/SMSelect.vue create mode 100644 resources/js/components/SMToolbar.vue create mode 100644 resources/js/components/dialogs/SMDialogChangePassword.vue create mode 100644 resources/js/components/dialogs/SMDialogConfirm.vue create mode 100644 resources/js/components/dialogs/SMDialogMedia.vue create mode 100644 resources/js/components/errors/Forbidden.vue create mode 100644 resources/js/components/errors/Internal.vue create mode 100644 resources/js/components/errors/Notfound.vue create mode 100644 resources/js/helpers/common.js create mode 100644 resources/js/helpers/fontawesome.ts create mode 100644 resources/js/helpers/validation.js create mode 100644 resources/js/main.js create mode 100644 resources/js/router/index.js create mode 100644 resources/js/store/ApplicationStore.ts create mode 100644 resources/js/store/UserStore.d.ts create mode 100644 resources/js/store/UserStore.ts create mode 100644 resources/js/views/About.vue create mode 100644 resources/js/views/App.vue create mode 100644 resources/js/views/Contact.vue create mode 100644 resources/js/views/Dashboard.vue create mode 100644 resources/js/views/Dialog.vue create mode 100644 resources/js/views/DialogDelete.vue create mode 100644 resources/js/views/EmailVerify.vue create mode 100644 resources/js/views/EventView.vue create mode 100644 resources/js/views/ForgotPassword.vue create mode 100644 resources/js/views/ForgotUsername.vue create mode 100644 resources/js/views/Home.vue create mode 100644 resources/js/views/Legal.vue create mode 100644 resources/js/views/Login.vue create mode 100644 resources/js/views/Logout.vue create mode 100644 resources/js/views/NewsList.vue create mode 100644 resources/js/views/NewsView.vue create mode 100644 resources/js/views/Privacy.vue create mode 100644 resources/js/views/Register.vue create mode 100644 resources/js/views/ResendEmailVerify.vue create mode 100644 resources/js/views/ResetPassword.vue create mode 100644 resources/js/views/Rules.vue create mode 100644 resources/js/views/Terms.vue create mode 100644 resources/js/views/WorkshopList.vue create mode 100644 resources/js/views/WorkshopView.vue create mode 100644 resources/js/views/dashboard/CreatePost.vue create mode 100644 resources/js/views/dashboard/EventEdit.vue create mode 100644 resources/js/views/dashboard/EventList.vue create mode 100644 resources/js/views/dashboard/MediaEdit.vue create mode 100644 resources/js/views/dashboard/MediaList.vue create mode 100644 resources/js/views/dashboard/PostEdit.vue create mode 100644 resources/js/views/dashboard/PostList.vue create mode 100644 resources/js/views/dashboard/UserEdit.vue create mode 100644 resources/js/views/dashboard/UserList.vue create mode 100644 resources/views/app.blade.php create mode 100644 resources/views/emails/user/change_email_verify.blade.php create mode 100644 resources/views/emails/user/change_email_verify_plain.blade.php create mode 100644 resources/views/emails/user/changed_email.blade.php create mode 100644 resources/views/emails/user/changed_email_plain.blade.php create mode 100644 resources/views/emails/user/changed_password.blade.php create mode 100644 resources/views/emails/user/changed_password_plain.blade.php create mode 100644 resources/views/emails/user/contact.blade.php create mode 100644 resources/views/emails/user/contact_plain.blade.php create mode 100644 resources/views/emails/user/email_verify.blade.php create mode 100644 resources/views/emails/user/email_verify_plain.blade.php create mode 100644 resources/views/emails/user/forgot_password.blade.php create mode 100644 resources/views/emails/user/forgot_password_plain.blade.php create mode 100644 resources/views/emails/user/forgot_username.blade.php create mode 100644 resources/views/emails/user/forgot_username_plain.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 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 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 vite.config.js diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..8f0de65 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,18 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_size = 4 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[*.{yml,yaml}] +indent_size = 2 + +[docker-compose.yml] +indent_size = 4 diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..00b6110 --- /dev/null +++ b/.env.example @@ -0,0 +1,58 @@ +APP_NAME=Laravel +APP_ENV=local +APP_KEY= +APP_DEBUG=true +APP_URL=http://localhost + +LOG_CHANNEL=stack +LOG_DEPRECATIONS_CHANNEL=null +LOG_LEVEL=debug + +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 +FILESYSTEM_DISK=local +QUEUE_CONNECTION=sync +SESSION_DRIVER=file +SESSION_LIFETIME=120 + +MEMCACHED_HOST=127.0.0.1 + +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_MAILER=smtp +MAIL_HOST=mailhog +MAIL_PORT=1025 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null +MAIL_FROM_ADDRESS="hello@example.com" +MAIL_FROM_NAME="${APP_NAME}" + +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_DEFAULT_REGION=us-east-1 +AWS_BUCKET= +AWS_USE_PATH_STYLE_ENDPOINT=false + +PUSHER_APP_ID= +PUSHER_APP_KEY= +PUSHER_APP_SECRET= +PUSHER_HOST= +PUSHER_PORT=443 +PUSHER_SCHEME=https +PUSHER_APP_CLUSTER=mt1 + +VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}" +VITE_PUSHER_HOST="${PUSHER_HOST}" +VITE_PUSHER_PORT="${PUSHER_PORT}" +VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" +VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..9f18230 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,21 @@ +module.exports = { + env: { + node: true, + }, + extends: [ + "eslint:recommended", + "plugin:vue/vue3-recommended", + "prettier", + "plugin:jsdoc/recommended", + "plugin:@typescript-eslint/recommended", + ], + rules: { + "vue/multi-word-component-names": "off", + indent: ["error", 4], + }, + plugins: ["jsdoc", "@typescript-eslint"], + parser: "vue-eslint-parser", + parserOptions: { + parser: "@typescript-eslint/parser", + }, +}; diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..7dbbf41 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,11 @@ +* text=auto + +*.blade.php diff=html +*.css diff=css +*.html diff=html +*.md diff=markdown +*.php diff=php + +/.github export-ignore +CHANGELOG.md export-ignore +.styleci.yml export-ignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cedf09e --- /dev/null +++ b/.gitignore @@ -0,0 +1,239 @@ +### Composer ### +composer.phar +/vendor/ + +# composer.lock + +### Laravel ### +node_modules/ +npm-debug.log +yarn-error.log + +# Laravel 4 specific +bootstrap/compiled.php +app/storage/ + +# Laravel 5 & Lumen specific +public/storage +public/hot + +# Laravel 5 & Lumen specific with changed public path +public_html/storage +public_html/hot + +storage/*.key +.env +Homestead.yaml +Homestead.json +/.vagrant +.phpunit.result.cache + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### macOS Patch ### +# iCloud generated files +*.icloud + +### Node ### +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +.pnpm-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) +web_modules/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional stylelint cache +.stylelintcache + +# Microbundle cache +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variable files +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) +.cache +.parcel-cache + +# Next.js build output +.next +out + +# Nuxt.js build / generate output +.nuxt +dist + +# Gatsby files +.cache/ +# Comment in the public line in if your project uses Gatsby and not Next.js +# https://nextjs.org/blog/next-9-1#public-directory-support +# public + +# vuepress build output +.vuepress/dist + +# vuepress v2.x temp and cache directory +.temp + +# Docusaurus cache and generated files +.docusaurus + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for testing VSCode extensions +.vscode-test + +# yarn v2 +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.* + +### Node Patch ### +# Serverless Webpack directories +.webpack/ + +# Optional stylelint cache + +# SvelteKit build / generate output +.svelte-kit + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +### Vue ### +# gitignore template for Vue.js projects +# +# Recommended template: Node.gitignore + +# TODO: where does this rule come from? +docs/_book + +# TODO: where does this rule come from? +test/ + +### Vuejs ### +# Recommended template: Node.gitignore + +dist/ + +### This Project ### +/public/uploads +*.key \ No newline at end of file diff --git a/.prettierrc.json b/.prettierrc.json new file mode 100644 index 0000000..76e9e19 --- /dev/null +++ b/.prettierrc.json @@ -0,0 +1,4 @@ +{ + "bracketSameLine": true, + "tabWidth": 4 +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..37c63e9 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,18 @@ +{ + "editor.formatOnType": true, + "editor.formatOnSave": true, + "editor.codeActionsOnSave": { + "source.fixAll.eslint": true + }, + "editor.defaultFormatter": "esbenp.prettier-vscode", + "[vue]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[javascript]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[php]": { + // "editor.defaultFormatter": "bmewburn.vscode-intelephense-client" + "editor.defaultFormatter": "wongjn.php-sniffer" + } +} diff --git a/README.md b/README.md index 5047eb6..bf0ddd9 100644 --- a/README.md +++ b/README.md @@ -1 +1,66 @@ -# website \ No newline at end of file +

Laravel Logo

+ +

+Build Status +Total Downloads +Latest Stable Version +License +

+ +## About Laravel + +Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as: + +- [Simple, fast routing engine](https://laravel.com/docs/routing). +- [Powerful dependency injection container](https://laravel.com/docs/container). +- Multiple back-ends for [session](https://laravel.com/docs/session) and [cache](https://laravel.com/docs/cache) storage. +- Expressive, intuitive [database ORM](https://laravel.com/docs/eloquent). +- Database agnostic [schema migrations](https://laravel.com/docs/migrations). +- [Robust background job processing](https://laravel.com/docs/queues). +- [Real-time event broadcasting](https://laravel.com/docs/broadcasting). + +Laravel is accessible, powerful, and provides tools required for large, robust applications. + +## Learning Laravel + +Laravel has the most extensive and thorough [documentation](https://laravel.com/docs) and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework. + +You may also try the [Laravel Bootcamp](https://bootcamp.laravel.com), where you will be guided through building a modern Laravel application from scratch. + +If you don't feel like reading, [Laracasts](https://laracasts.com) can help. Laracasts contains over 2000 video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library. + +## Laravel Sponsors + +We would like to extend our thanks to the following sponsors for funding Laravel development. If you are interested in becoming a sponsor, please visit the Laravel [Patreon page](https://patreon.com/taylorotwell). + +### Premium Partners + +- **[Vehikl](https://vehikl.com/)** +- **[Tighten Co.](https://tighten.co)** +- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)** +- **[64 Robots](https://64robots.com)** +- **[Cubet Techno Labs](https://cubettech.com)** +- **[Cyber-Duck](https://cyber-duck.co.uk)** +- **[Many](https://www.many.co.uk)** +- **[Webdock, Fast VPS Hosting](https://www.webdock.io/en)** +- **[DevSquad](https://devsquad.com)** +- **[Curotec](https://www.curotec.com/services/technologies/laravel/)** +- **[OP.GG](https://op.gg)** +- **[WebReinvent](https://webreinvent.com/?utm_source=laravel&utm_medium=github&utm_campaign=patreon-sponsors)** +- **[Lendio](https://lendio.com)** + +## Contributing + +Thank you for considering contributing to the Laravel framework! The contribution guide can be found in the [Laravel documentation](https://laravel.com/docs/contributions). + +## Code of Conduct + +In order to ensure that the Laravel community is welcoming to all, please review and abide by the [Code of Conduct](https://laravel.com/docs/contributions#code-of-conduct). + +## Security Vulnerabilities + +If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via [taylor@laravel.com](mailto:taylor@laravel.com). All security vulnerabilities will be promptly addressed. + +## License + +The Laravel framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT). diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php new file mode 100644 index 0000000..c040de1 --- /dev/null +++ b/app/Console/Kernel.php @@ -0,0 +1,32 @@ +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/Enum/Enum.php b/app/Enum/Enum.php new file mode 100644 index 0000000..7e7667d --- /dev/null +++ b/app/Enum/Enum.php @@ -0,0 +1,50 @@ +, ReflectionClass> + */ + public static $reflectionCache = []; + + + /** + * Returns a reflection of the enum subclass. + * + * @return ReflectionClass + */ + public static function getReflection(): ReflectionClass + { + $class = static::class; + + return static::$reflectionCache[$class] ??= new ReflectionClass($class); + } + + + /** + * Returns the constants in the enum subclass + * + * @return array + */ + public static function getConstants(): array + { + return static::getReflection()->getConstants(); + } + + + /** + * Returns the constants values in the enum subclass + * + * @return array + */ + public static function getConstantValues(): array + { + return array_values(static::getReflection()->getConstants()); + } +} diff --git a/app/Enum/HttpResponseCodes.php b/app/Enum/HttpResponseCodes.php new file mode 100644 index 0000000..73513b5 --- /dev/null +++ b/app/Enum/HttpResponseCodes.php @@ -0,0 +1,165 @@ + 'Continue.', + 101 => 'Switching Protocols.', + 102 => 'Processing.', + // RFC2518 + 200 => 'OK.', + 201 => 'Created.', + 202 => 'Accepted.', + 203 => 'Non-Authoritative Information.', + 204 => 'No Content.', + 205 => 'Reset Content.', + 206 => 'Partial Content.', + 207 => 'Multi-Status.', + // RFC4918 + 208 => 'Already Reported.', + // RFC5842 + 226 => 'IM Used.', + // RFC3229 + 300 => 'Multiple Choices.', + 301 => 'Moved Permanently.', + 302 => 'Found.', + 303 => 'See Other.', + 304 => 'Not Modified.', + 305 => 'Use Proxy.', + 307 => 'Temporary Redirect.', + 308 => 'Permanent Redirect.', + // RFC7238 + 400 => 'Bad Request.', + 401 => 'Unauthorized.', + 402 => 'Payment Required.', + 403 => 'Forbidden.', + 404 => 'Not Found.', + 405 => 'Method Not Allowed.', + 406 => 'Not Acceptable.', + 407 => 'Proxy Authentication Required.', + 408 => 'Request Timeout.', + 409 => 'Conflict.', + 410 => 'Gone.', + 411 => 'Length Required.', + 412 => 'Precondition Failed.', + 413 => 'Payload Too Large.', + 414 => 'URI Too Long.', + 415 => 'Unsupported Media Type.', + 416 => 'Range Not Satisfiable.', + 417 => 'Expectation Failed.', + 418 => 'I\'m a teapot.', + // RFC2324 + 421 => 'Misdirected Request.', + // RFC7540 + 422 => 'Unprocessable Entity.', + // RFC4918 + 423 => 'Locked.', + // RFC4918 + 424 => 'Failed Dependency.', + // RFC4918 + 425 => 'Reserved for WebDAV advanced collections expired proposal.', + // RFC2817 + 426 => 'Upgrade Required.', + // RFC2817 + 428 => 'Precondition Required.', + // RFC6585 + 429 => 'Too Many Requests.', + // RFC6585 + 431 => 'Request Header Fields Too Large.', + // RFC6585 + 451 => 'Unavailable For Legal Reasons.', + // RFC7725 + 500 => 'Internal Server Error.', + 501 => 'Not Implemented.', + 502 => 'Bad Gateway.', + 503 => 'Service Unavailable.', + 504 => 'Gateway Timeout.', + 505 => 'HTTP Version Not Supported.', + 506 => 'Variant Also Negotiates.', + // RFC2295 + 507 => 'Insufficient Storage.', + // RFC4918 + 508 => 'Loop Detected.', + // RFC5842 + 510 => 'Not Extended.', + // RFC2774 + 511 => 'Network Authentication Required.', + // RFC6585 + ]; +} diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php new file mode 100644 index 0000000..de89608 --- /dev/null +++ b/app/Exceptions/Handler.php @@ -0,0 +1,85 @@ +, \Psr\Log\LogLevel::*> + */ + protected $levels = [ + // + ]; + + /** + * A list of the exception types that are not reported. + * + * @var array> + */ + protected $dontReport = [ + // + ]; + + /** + * A list of the inputs that are never flashed to the session on validation exceptions. + * + * @var array + */ + protected $dontFlash = [ + 'current_password', + 'password', + 'password_confirmation', + ]; + + + /** + * Register the exception handling callbacks for the application. + * + * @return void + */ + public function register() + { + // $this->renderable(function (HttpException $e, $request) { + // if ($request->is('api/*')) { + // $message = $e->getMessage(); + // if ($message === '') { + // $message = HttpResponseCodes::$statusTexts[$e->getStatusCode()]; + // } + + // return response()->json([ + // 'message' => $message + // ], $e->getStatusCode()); + // } + // }); + + $this->renderable(function (NotFoundHttpException $e, $request) { + if ($request->is('api/*') === true) { + return response()->json([ + 'message' => 'Resource not found' + ], 404); + } + }); + + $this->renderable(function (PDOException $e, $request) { + if ($request->is('api/*') === true) { + return response()->json([ + 'message' => 'The server is currently unavailable' + ], 503); + } + }); + + $this->reportable(function (Throwable $e) { + // + }); + } +} diff --git a/app/Filters/AuditFilter.php b/app/Filters/AuditFilter.php new file mode 100644 index 0000000..6a94963 --- /dev/null +++ b/app/Filters/AuditFilter.php @@ -0,0 +1,29 @@ +transform(function ($item, $key) { + // $row = $item->toArray(); + + // unset($row['user_type']); + // unset($row['auditable_type']); + + // if (array_key_exists('password', $row['old_values'])) { + // $row['old_values']['password'] = '###'; + // } + // if (array_key_exists('password', $row['new_values'])) { + // $row['new_values']['password'] = '###'; + // } + + // return $row; + // }); + + // return $collection->toArray(); + // } +} diff --git a/app/Filters/EventFilter.php b/app/Filters/EventFilter.php new file mode 100644 index 0000000..7db3293 --- /dev/null +++ b/app/Filters/EventFilter.php @@ -0,0 +1,70 @@ + ['title','content'], + 'location' => ['location','address'], + ]; + + // protected $q = [ + // 'title', + // 'content' + // ]; + + + /** + * Determine if the user can view the media model + * + * @param Event $event The event instance. + * @param mixed $user The current logged in user. + * @return boolean + */ + protected function viewable(Event $event, mixed $user) + { + return (strcasecmp($event->status, 'draft') !== 0 && $event->publish_at <= now()) + || $user?->hasPermission('admin/events') === true; + } + + /** + * Determine the prebuild query to limit results + * + * @param EloquentBuilder $builder The builder instance. + * @param mixed $user The current logged in user. + * @return EloquentBuilder|null + */ + protected function prebuild(Builder $builder, mixed $user) + { + if ( + $user?->hasPermission('admin/events') !== true + ) { + return $builder + ->where('status', '!=', 'draft') + ->where('publish_at', '>=', now()); + } + } +} diff --git a/app/Filters/FilterAbstract.php b/app/Filters/FilterAbstract.php new file mode 100644 index 0000000..8c72e50 --- /dev/null +++ b/app/Filters/FilterAbstract.php @@ -0,0 +1,589 @@ +request = $request; + } + + /** + * Only include the specified attributes in the results. + * + * @param string|array $only Only return these attributes. + * @return void + */ + public function only(mixed $only) + { + if (is_array($only) === true) { + $this->only = $only; + } else { + $this->only = [$only]; + } + } + + /** + * Exclude the specified attributes in the results. + * + * @param string|array $exclude Attributes to exclude. + * @return void + */ + public function exclude(mixed $exclude) + { + if (is_array($exclude) === true) { + $this->exclude = $exclude; + } else { + $this->exclude = [$exclude]; + } + } + + /** + * Check if the model is viewable by the user + * + * @param mixed $model Model instance. + * @param mixed $user Current user. + * @return boolean + */ + // protected function viewable(mixed $model, mixed $user) + // { + // return true; + // } + + /** + * Prepend action to the builder to limit the results + * + * @param Builder $builder Builder instance. + * @param mixed $user Current user. + * @return Builder|null + */ + // protected function prebuild(Builder $builder, mixed $user) + // { + // return $builder; + // } + + + /** + * Return an array of attributes visible in the results + * + * @param array $attributes Attributes currently visible. + * @param User|null $user Current logged in user or null. + * @return mixed + */ + protected function seeAttributes(array $attributes, mixed $user) + { + return $attributes; + } + + /** + * Apply all the requested filters if available. + * + * @param Model $model Model object to filter. If null create query. + * @return Builder|Model + */ + public function filter(Model $model = null) + { + $this->foundTotal = 0; + + $builder = $this->class::query(); + + /* Get the related model */ + $classModel = $model; + if ($model === null) { + $classModel = $builder->getModel(); + } + + /* Get table name */ + if ($this->table === '') { + if ($model === null) { + $this->table = $classModel->getTable(); + } else { + $this->table = $model->getTable(); + } + } + + /* Run query prebuilder or viewable */ + if ($model === null) { + if (method_exists($this, 'prebuild') === true) { + $prebuilder = $this->prebuild($builder, $this->request->user()); + if ($prebuilder instanceof Builder) { + $builder = $prebuilder; + } + } + } else { + if (method_exists($this, 'viewable') === true) { + if ($this->viewable($model, $this->request->user()) === false) { + return null; + } + } + } + + /* Get attributes from table or use 'only' */ + $attributes = []; + if (is_array($this->only) === true && count($this->only) > 0) { + $attributes = $this->only; + } else { + $attributes = Schema::getColumnListing($this->table); + } + + /* Run attribute modifiers*/ + $modifiedAttribs = $this->seeAttributes($attributes, $this->request->user()); + if (is_array($modifiedAttribs) === true) { + $attributes = $modifiedAttribs; + } + + foreach ($attributes as $key => $column) { + $method = 'see' . Str::studly($column) . 'Attribute'; + if ( + method_exists($this, $method) === true && + $this->$method($this->request->user()) === false + ) { + unset($attributes[$key]); + } + } + + if (is_array($this->exclude) === true && count($this->exclude) > 0) { + $attributes = array_diff($attributes, $this->exclude); + } + + /* Setup attributes and appends */ + // $attributesAppends = array_merge($attributes, $classModel->getAppends()); + + /* Apply ?fields= request to attributes */ + if ($this->request->has('fields') === true) { + $attributes = array_intersect($attributes, explode(',', $this->request->fields)); + } + + /* Hide remaining attributes in model (if present) and return */ + if ($model !== null) { + // TODO: Also show $this->request->fields that are appends + + $model->makeHidden(array_diff(Schema::getColumnListing($this->table), $attributes)); + return $model; + } + + /* Are there attributes left? */ + if (count($attributes) === 0) { + $this->foundTotal = 0; + return new Collection(); + } + + /* apply select! */ + $builder->select($attributes); + + /* Setup filterables if not present */ + if ($this->filterable === null) { + $this->filterable = $attributes; + } + + /* Filter values */ + $filterRequest = array_filter($this->request->only(array_intersect($attributes, $this->filterable))); + $this->builderArrayFilter($builder, $filterRequest); + + if (is_array($this->q) === true && count($this->q) > 0) { + $qQueries = []; + foreach ($this->q as $key => $value) { + if (is_array($value) === true) { + $qKey = $key === '_' ? '' : $key; + foreach ($value as $subvalue) { + $qQueries[$key][$subvalue] = $this->request->get("q" . $qKey); + } + } elseif ($this->request->has("q") === true) { + $qQueries['_'][$value] = $this->request->get("q"); + } + } + + foreach ($qQueries as $key => $value) { + $builder->where(function ($query) use ($value) { + $this->builderArrayFilter($query, $value, 'or'); + }); + } + }//end if + + /* Apply sorting */ + $sortList = $this->defaultSort; + if ($this->request->has('sort') === true) { + $sortList = explode(',', $this->request->sort); + } + + /* Transform sort list to array */ + if (is_array($sortList) === false) { + if (strlen($sortList) > 0) { + $sortList = [$sortList]; + } else { + $sortList = []; + } + } + + /* Remove non-viewable attributes from sort list */ + if (count($sortList) > 0) { + $sortList = array_intersect($attributes, $sortList); + } + + /* Do we have any sort element left? */ + if (count($sortList) > 0) { + foreach ($sortList as $sortAttribute) { + $prefix = substr($sortAttribute, 0, 1); + $direction = 'asc'; + + if (in_array($prefix, ['-', '+']) === true) { + $sortAttribute = substr($sortAttribute, 1); + if ($prefix === '-') { + $direction = 'desc'; + } + } + + $builder->orderBy($sortAttribute, $direction); + }//end foreach + }//end if + + /* save found count */ + $this->foundTotal = $builder->count(); + + /* Apply result limit */ + $limit = $this->defaultLimit; + if ($this->request->has('limit') === true) { + $limit = intval($this->request->limit); + } + if ($limit < 1) { + $limit = 1; + } + if ($limit > $this->maxLimit && $this->maxLimit !== 0) { + $limit = $this->maxLimit; + } + + $builder->limit($limit); + + /* Apply page offset */ + if ($this->request->has('page') === true) { + $page = intval($this->request->page); + if ($page < 1) { + $page = 1; + } + + $builder->offset((intval($this->request->page) - 1) * $limit); + } + + /* run spot run */ + $collection = $builder->get(); + + return $collection; + } + + /** + * Filter content based on the filterRequest + * @param mixed $builder Builder object + * @param array $filterRequest Filter key/value + * @param string $defaultBoolean Default where boolean + * @return void + */ + protected function builderArrayFilter(mixed $builder, array $filterRequest, string $defaultBoolean = 'and') + { + foreach ($filterRequest as $filterAttribute => $filterValue) { + $tags = []; + $boolean = $defaultBoolean; + + $matches = preg_split('/(? $match_info) { + if (($idx % 2) === true) { + if (substr($filterValue, ($match_info[1] - 2), 1) === ',') { + $tags[] = ['operator' => '', 'tag' => stripslashes(trim($match_info[0]))]; + } else { + $tags[(count($tags) - 1)]['tag'] .= stripslashes(trim($match_info[0])); + } + } else { + $innerTags = [$match_info[0]]; + if (strpos($match_info[0], ',') !== false) { + $innerTags = preg_split('/(? 0) { + $operator = '='; + + $single = substr($tag, 0, 1); + $double = substr($tag . ' ', 0, 2); // add empty space incase len $tag < 2 + + // check for operators at start + if (in_array($double, ['!=', '<>', '><', '>=', '<=', '=>', '=<']) === true) { + if ($double === '<>' || $double === '><') { + $double = '!='; + } elseif ($double === '=>') { + $double = '>='; + } elseif ($double === '=<') { + $double == '>='; + } + + $operator = $double; + $tag = substr($tag, 2); + } else { + if (in_array($single, ['=', '!', '>', '<', '~', '%']) === true) { + if ($single === '=') { + $single = '=='; // a single '=' is actually a double '==' + } + + $operator = $single; + $tag = substr($tag, 1); + } + }//end if + + $tags[] = ['operator' => $operator, 'tag' => $tag]; + }//end if + }//end foreach + }//end if + }//end foreach + + if (count($tags) > 1) { + $boolean = 'or'; + } + + foreach ($tags as $tag_data) { + $operator = $tag_data['operator']; + $value = $tag_data['tag']; + $table = $this->table; + $column = $filterAttribute; + + if (($dotPos = strpos($filterAttribute, '.')) !== false) { + $table = substr($filterAttribute, 0, $dotPos); + $column = substr($filterAttribute, ($dotPos + 1)); + } + + $columnType = DB::getSchemaBuilder()->getColumnType($table, $column); + + if ( + in_array($columnType, ['tinyint', 'smallint', 'mediumint', 'int', 'integer', 'bigint', + 'decimal', 'float', 'double', 'real', 'double precision' + ]) === true + ) { + if (in_array($operator, ['=', '>', '<', '>=', '<=', '%', '!']) === false) { + continue; + } + + $columnType = 'numeric'; + } elseif (in_array($columnType, ['date', 'time', 'datetime', 'timestamp', 'year']) === true) { + if (in_array($operator, ['=', '>', '<', '>=', '<=', '!']) === false) { + continue; + } + + $columnType = 'datetime'; + } elseif ( + in_array($columnType, ['string', 'char', 'varchar', 'timeblob', 'blob', 'mediumblob', + 'longblob', 'tinytext', 'text', 'mediumtext', 'longtext', 'enum' + ]) === true + ) { + if (in_array($operator, ['=', '==', '!', '!=', '~']) === false) { + continue; + } + + $columnType = 'text'; + + if ($value === "''" || $value === '""') { + $value = ''; + } elseif (strcasecmp($value, 'null') !== 0) { + if ($operator === '!') { + $operator = 'NOT LIKE'; + $value = '%' . $value . '%'; + } elseif ($operator === '=') { + $operator = 'LIKE'; + $value = '%' . $value . '%'; + } elseif ($operator === '~') { + $operator = 'SOUNDS LIKE'; + } elseif ($operator === '==') { + $operator = '='; + } + } + } elseif ($columnType === 'boolean') { + if (in_array($operator, ['=', '!']) === false) { + continue; + } + + if (strtolower($value) === 'true') { + $value = 1; + } elseif (strtolower($value) === 'false') { + $value = 0; + } + }//end if + + $betweenSeperator = strpos($value, '<>'); + if ( + $operator === '=' && $betweenSeperator !== false && in_array($columnType, ['numeric', + 'datetime' + ]) === true + ) { + $value = explode('<>', $value); + $operator = '<>'; + } + + if ($operator !== '') { + $this->builderWhere($builder, $table, $column, $operator, $value, $boolean); + } + }//end foreach + }//end foreach + } + + /** + * Insert a where statement into the builder, taking the filter map into consideration + * + * @param Builder $builder Builder instance. + * @param string $table Table name. + * @param string $column Column name. + * @param string $operator Where operator. + * @param mixed $value Value to test. + * @param string $boolean Use Or comparison. + * @return void + * @throws RuntimeException Error applying statement. + * @throws InvalidArgumentException Error applying statement. + */ + protected function builderWhere( + Builder &$builder, + string $table, + string $column, + string $operator, + mixed $value, + string $boolean + ) { + if ( + (is_string($value) === true && $operator !== '<>') || (is_array($value) === true && count($value) === 2 && + $operator === '<>') + ) { + if ($table !== '' && $table !== $this->table) { + $builder->whereHas($table, function ($query) use ($column, $operator, $value, $boolean) { + if ($operator !== '<>') { + if (strcasecmp($value, 'null') === 0) { + if ($operator === '!') { + $query->whereNotNull($column, $boolean); + } else { + $query->whereNull($column, $boolean); + } + } else { + $query->where($column, $operator, $value, $boolean); + } + } else { + $query->whereBetween($column, $value, $boolean); + } + }); + } else { + if ($operator !== '<>') { + if (strcasecmp($value, 'null') === 0) { + if ($operator === '!') { + $builder->whereNotNull($column, $boolean); + } else { + $builder->whereNull($column, $boolean); + } + } else { + $builder->where($column, $operator, $value, $boolean); + } + } else { + $builder->whereBetween($column, $value, $boolean); + } + }//end if + }//end if + } + + /** + * Return the found total of items + * @return integer + */ + public function foundTotal() + { + return $this->foundTotal; + } +} diff --git a/app/Filters/MediaFilter.php b/app/Filters/MediaFilter.php new file mode 100644 index 0000000..0e704d5 --- /dev/null +++ b/app/Filters/MediaFilter.php @@ -0,0 +1,58 @@ +permission) === false) { + return ($user?->hasPermission('admin/media') || $user?->hasPermission($media->permission)); + } + + return true; + } + + /** + * Determine the prebuild query to limit results + * + * @param EloquentBuilder $builder The builder instance. + * @param mixed $user The current logged in user. + * @return EloquentBuilder|null + */ + protected function prebuild(Builder $builder, mixed $user) + { + if ($user === null) { + return $builder->whereNull('permission'); + } + } + + /** + * Show the permission attribute in the results + * + * @param User|null $user Current logged in user or null. + * @return boolean + */ + protected function seePermissionAttribute(mixed $user) + { + return ($user?->hasPermission('admin/media')); + } +} diff --git a/app/Filters/PostFilter.php b/app/Filters/PostFilter.php new file mode 100644 index 0000000..5c78f14 --- /dev/null +++ b/app/Filters/PostFilter.php @@ -0,0 +1,47 @@ +hasPermission('admin/posts') !== true) { + return ($post->publish_at <= now()); + } + + return true; + } + + /** + * Determine the prebuild query to limit results + * + * @param EloquentBuilder $builder The builder instance. + * @param mixed $user The current logged in user. + * @return EloquentBuilder|null + */ + protected function prebuild(Builder $builder, mixed $user) + { + if ($user?->hasPermission('admin/posts') !== true) { + return $builder->where('publish_at', '<=', Carbon::now()); + } + } +} diff --git a/app/Filters/UserFilter.php b/app/Filters/UserFilter.php new file mode 100644 index 0000000..1aa5849 --- /dev/null +++ b/app/Filters/UserFilter.php @@ -0,0 +1,30 @@ +hasPermission('admin/users') !== true) { + return ['id', 'username']; + } + } +} diff --git a/app/Http/Controllers/Api/ApiController.php b/app/Http/Controllers/Api/ApiController.php new file mode 100644 index 0000000..27b1e4d --- /dev/null +++ b/app/Http/Controllers/Api/ApiController.php @@ -0,0 +1,172 @@ +json($data, $respondCode, $headers); + } + + /** + * Return forbidden message + * + * @param string $message Response message. + * @return \Illuminate\Http\JsonResponse + */ + public function respondForbidden(string $message = 'You do not have permission to access the resource.') + { + return response()->json(['message' => $message], HttpResponseCodes::HTTP_FORBIDDEN); + } + + /** + * Return forbidden message + * + * @param string $message Response message. + * @return \Illuminate\Http\JsonResponse + */ + public function respondNotFound(string $message = 'The resource was not found.') + { + return response()->json(['message' => $message], HttpResponseCodes::HTTP_NOT_FOUND); + } + + /** + * Return too large message + * + * @param string $message Response message. + * @return \Illuminate\Http\JsonResponse + */ + public function respondTooLarge(string $message = 'The request entity is too large.') + { + return response()->json(['message' => $message], HttpResponseCodes::HTTP_REQUEST_ENTITY_TOO_LARGE); + } + + /** + * Return no content + * @return \Illuminate\Http\JsonResponse + */ + public function respondNoContent() + { + return response()->json([], HttpResponseCodes::HTTP_NO_CONTENT); + } + + /** + * Return created + * @return \Illuminate\Http\JsonResponse + */ + public function respondCreated() + { + return response()->json([], HttpResponseCodes::HTTP_CREATED); + } + + /** + * Return single error message + * + * @param string $message Error message. + * @param integer $responseCode Resource code. + * @return \Illuminate\Http\JsonResponse + */ + public function respondError(string $message, int $responseCode = HttpResponseCodes::HTTP_UNPROCESSABLE_ENTITY) + { + return response()->json([ + 'message' => $message + ], $responseCode); + } + + /** + * Return formatted errors + * + * @param array $errors Error messages. + * @param integer $responseCode Resource code. + * @return \Illuminate\Http\JsonResponse + */ + public function respondWithErrors(array $errors, int $responseCode = HttpResponseCodes::HTTP_UNPROCESSABLE_ENTITY) + { + $keys = array_keys($errors); + $error = $errors[$keys[0]]; + + if (count($keys) > 1) { + $additional_errors = (count($keys) - 1); + $error .= sprintf(' (and %d more %s', $additional_errors, Str::plural('error', $additional_errors)); + } + + return response()->json([ + 'message' => $error, + 'errors' => $errors + ], $responseCode); + } + + /** + * Return resource data + * + * @param array|Model|Collection $data Resource data. + * @param array|null $appendData Data to append to response. + * @param integer $respondCode Resource code. + * @return \Illuminate\Http\JsonResponse + */ + protected function respondAsResource( + mixed $data, + mixed $appendData = null, + int $respondCode = HttpResponseCodes::HTTP_OK + ) { + if ($data === null || ($data instanceof Collection && $data->count() === 0)) { + return $this->respondNotFound(); + } + + $resourceName = $this->resourceName; + + if ($this->resourceName === '') { + $resourceName = get_class($this); + $resourceName = substr($resourceName, (strrpos($resourceName, '\\') + 1)); + $resourceName = substr($resourceName, 0, strpos($resourceName, 'Controller')); + $resourceName = strtolower($resourceName); + } + + $is_multiple = true; + + $dataArray = []; + if ($data instanceof Collection) { + $dataArray = $data->toArray(); + } elseif (is_array($data) === true) { + $dataArray = $data; + } elseif ($data instanceof Model) { + $is_multiple = false; + $dataArray = $data->toArray(); + } + + $resource = []; + if ($is_multiple === true) { + $resource = [Str::plural($resourceName) => $dataArray]; + } else { + $resource = [Str::singular($resourceName) => $dataArray]; + } + + if ($appendData !== null) { + $resource += $appendData; + } + + return response()->json($resource, $respondCode); + } +} diff --git a/app/Http/Controllers/Api/AuthController.php b/app/Http/Controllers/Api/AuthController.php new file mode 100644 index 0000000..cd1b8d1 --- /dev/null +++ b/app/Http/Controllers/Api/AuthController.php @@ -0,0 +1,101 @@ +middleware('auth:sanctum') + // ->only(['me']); + } + + /** + * Current User details + * + * @param Request $request Current request data. + * @return JsonResponse + */ + public function me(Request $request) + { + $user = $request->user()->makeVisible(['permissions']); + return $this->respondAsResource($user); + } + + /** + * Login user with supplied creditials + * + * @param App\Http\Controllers\Api\AuthLoginRequest $request Created request data. + * @return JsonResponse|void + */ + public function login(AuthLoginRequest $request) + { + $user = User::where('username', '=', $request->input('username'))->first(); + + if ($user !== null && Hash::check($request->input('password'), $user->password) === true) { + if ($user->email_verified_at === null) { + return $this->respondWithErrors([ + 'username' => 'Email address has not been verified.' + ]); + } + + if ($user->disabled === true) { + return $this->respondWithErrors([ + 'username' => 'Account has been disabled.' + ]); + } + + $token = $user->createToken('user_token')->plainTextToken; + + $user->logins()->create([ + 'token' => $token, + 'login' => now(), + 'ip_address' => $request->ip(), + 'user_agent' => $request->userAgent() + ]); + + return $this->respondAsResource( + $user->makeVisible(['permissions']), + ['token' => $token] + ); + }//end if + + return $this->respondWithErrors([ + 'username' => 'Invalid username or password', + 'password' => 'Invalid username or password', + ]); + } + + /** + * Logout current user + * + * @param Request $request Current request data. + * @return JsonResponse + */ + public function logout(Request $request) + { + $user = $request->user(); + + $user->logins()->where('token', $user->currentAccessToken())->update(['logout' => now()]); + $user->currentAccessToken()->delete(); + + return $this->respondNoContent(); + } +} diff --git a/app/Http/Controllers/Api/ContactController.php b/app/Http/Controllers/Api/ContactController.php new file mode 100644 index 0000000..85d65fb --- /dev/null +++ b/app/Http/Controllers/Api/ContactController.php @@ -0,0 +1,30 @@ +input('name'), + $request->input('email'), + $request->input('content') + ) + )))->onQueue('mail'); + + return $this->respondCreated(); + } +} diff --git a/app/Http/Controllers/Api/EventController.php b/app/Http/Controllers/Api/EventController.php new file mode 100644 index 0000000..816376a --- /dev/null +++ b/app/Http/Controllers/Api/EventController.php @@ -0,0 +1,88 @@ +middleware('auth:sanctum') + ->only(['store','update','destroy']); + } + + /** + * Display a listing of the resource. + * + * @param EventFilter $filter The event filter. + * @return \Illuminate\Http\Response + */ + public function index(EventFilter $filter) + { + return $this->respondAsResource( + $filter->filter(), + ['total' => $filter->foundTotal()] + ); + } + + /** + * Store a newly created resource in storage. + * + * @param EventRequest $request The event store request. + * @return \Illuminate\Http\Response + */ + public function store(EventRequest $request) + { + $event = Event::create($request->all()); + return $this->respondAsResource( + (new EventFilter($request))->filter($event), + null, + HttpResponseCodes::HTTP_CREATED + ); + } + + /** + * Display the specified resource. + * + * @param EventFilter $filter The event filter. + * @param \App\Models\Event $event The specified event. + * @return \Illuminate\Http\Response + */ + public function show(EventFilter $filter, Event $event) + { + return $this->respondAsResource($filter->filter($event)); + } + + /** + * Update the specified resource in storage. + * + * @param EventRequest $request The event update request. + * @param \App\Models\Event $event The specified event. + * @return \Illuminate\Http\Response + */ + public function update(EventRequest $request, Event $event) + { + $event->update($request->all()); + return $this->respondAsResource((new EventFilter($request))->filter($event)); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\Models\Event $event The specified event. + * @return \Illuminate\Http\Response + */ + public function destroy(Event $event) + { + $event->delete(); + return $this->respondNoContent(); + } +} diff --git a/app/Http/Controllers/Api/MediaController.php b/app/Http/Controllers/Api/MediaController.php new file mode 100644 index 0000000..f223bc7 --- /dev/null +++ b/app/Http/Controllers/Api/MediaController.php @@ -0,0 +1,247 @@ +middleware('auth:sanctum') + ->only(['store','update','destroy']); + } + + /** + * Display a listing of the resource. + * + * @param \App\Filters\MediaFilter $filter Created filter object. + * @return \Illuminate\Http\Response + */ + public function index(MediaFilter $filter) + { + return $this->respondAsResource( + $filter->filter(), + ['total' => $filter->foundTotal()] + ); + } + + /** + * Display the specified resource. + * + * @param MediaFilter $filter The request filter. + * @param Media $medium The request media. + * @return \Illuminate\Http\Response + */ + public function show(MediaFilter $filter, Media $medium) + { + return $this->respondAsResource($filter->filter($medium)); + } + + /** + * Store a new media resource + * + * @param MediaStoreRequest $request The uploaded media. + * @return \Illuminate\Http\Response + */ + public function store(MediaStoreRequest $request) + { + $file = $request->file('file'); + if ($file === null) { + return $this->respondError(['file' => 'An error occurred uploading the file to the server.']); + } + + if ($file->isValid() !== true) { + switch ($file->getError()) { + case UPLOAD_ERR_INI_SIZE: + case UPLOAD_ERR_FORM_SIZE: + return $this->respondTooLarge(); + case UPLOAD_ERR_PARTIAL: + return $this->respondError(['file' => 'The file upload was interrupted.']); + default: + return $this->respondError(['file' => 'An error occurred uploading the file to the server.']); + } + } + + if ($file->getSize() > Media::maxUploadSize()) { + return $this->respondTooLarge(); + } + + $title = $file->getClientOriginalName(); + $mime = $file->getMimeType(); + $fileInfo = Media::store($file, empty($request->input('permission'))); + if ($fileInfo === null) { + return $this->respondError( + ['file' => 'The file could not be stored on the server'], + HttpResponseCodes::HTTP_INTERNAL_SERVER_ERROR + ); + } + + $request->merge([ + 'title' => $title, + 'mime' => $mime, + 'name' => $fileInfo['name'], + 'size' => filesize($fileInfo['path']) + ]); + + $media = $request->user()->media()->create($request->all()); + return $this->respondAsResource((new MediaFilter($request))->filter($media)); + } + + /** + * Update the media resource in storage. + * + * @param MediaUpdateRequest $request The update request. + * @param \App\Models\Media $medium The specified media. + * @return \Illuminate\Http\Response + */ + public function update(MediaUpdateRequest $request, Media $medium) + { + if ((new MediaFilter($request))->filter($medium) === null) { + return $this->respondNotFound(); + } + + $file = $request->file('file'); + if ($file !== null) { + if ($file->getSize() > Media::maxUploadSize()) { + return $this->respondTooLarge(); + } + + $oldPath = $medium->path(); + $fileInfo = Media::store($file, empty($request->input('permission'))); + if ($fileInfo === null) { + return $this->respondError( + ['file' => 'The file could not be stored on the server'], + HttpResponseCodes::HTTP_INTERNAL_SERVER_ERROR + ); + } + + if (file_exists($oldPath) === true) { + unlink($oldPath); + } + + $request->merge([ + 'title' => $file->getClientOriginalName(), + 'mime' => $file->getMimeType(), + 'name' => $fileInfo['name'], + 'size' => filesize($fileInfo['path']) + ]); + }//end if + + $medium->update($request->all()); + return $this->respondWithTransformer($file); + } + + + + /** + * Remove the specified resource from storage. + * + * @param Request $request Request instance. + * @param \App\Models\Media $medium Specified media file. + * @return \Illuminate\Http\Response + */ + public function destroy(Request $request, Media $medium) + { + if ((new MediaFilter($request))->filter($medium) !== null) { + if (file_exists($medium->path()) === true) { + unlink($medium->path()); + } + + $medium->delete(); + return $this->respondNoContent(); + } + + return $this->respondNotFound(); + } + + /** + * Display the specified resource. + * + * @param Request $request Request instance. + * @param \App\Models\Media $medium Specified media. + * @return \Illuminate\Http\Response + */ + public function download(Request $request, Media $medium) + { + $respondJson = in_array('application/json', explode(',', $request->header('Accept', 'application/json'))); + + $headers = []; + $path = $medium->path(); + + /* File exists */ + if (file_exists($path) === false) { + if ($respondJson === false) { + return redirect('/not-found'); + } else { + return $this->respondNotFound(); + } + } + + $updated_at = Carbon::parse(filemtime($path)); + + $headerPragma = 'no-cache'; + $headerCacheControl = 'max-age=0, must-revalidate'; + $headerExpires = $updated_at->toRfc2822String(); + + if (empty($medium->permission) === true) { + if ($request->user() === null && $request->has('token') === true) { + $accessToken = PersonalAccessToken::findToken(urldecode($request->input('token'))); + + if ( + $accessToken !== null && (config('sanctum.expiration') === null || + $accessToken->created_at->lte(now()->subMinutes(config('sanctum.expiration'))) === false) + ) { + $user = $accessToken->tokenable; + } + } + if ($request->user() === null || $user->hasPermission($medium->permission) === false) { + if ($respondJson === false) { + return redirect('/login?redirect=' . $request->path()); + } else { + return $this->respondForbidden(); + } + } + } else { + $headerPragma = 'public'; + $headerExpires = $updated_at->addMonth()->toRfc2822String(); + }//end if + + $headerEtag = md5($updated_at->format('U')); + $headerLastModified = $updated_at->toRfc2822String(); + + $headers = [ + 'Cache-Control' => $headerCacheControl, + 'Content-Disposition' => sprintf('inline; filename="%s"', basename($path)), + 'Etag' => $headerEtag, + 'Expires' => $headerExpires, + 'Last-Modified' => $headerLastModified, + 'Pragma' => $headerPragma, + ]; + + $server = request()->server; + + $requestModifiedSince = $server->has('HTTP_IF_MODIFIED_SINCE') && + $server->get('HTTP_IF_MODIFIED_SINCE') === $headerLastModified; + + $requestNoneMatch = $server->has('HTTP_IF_NONE_MATCH') && + $server->get('HTTP_IF_NONE_MATCH') === $headerEtag; + + if ($requestModifiedSince === true || $requestNoneMatch === true) { + return response()->make('', 304, $headers); + } + + return response()->file($path, $headers); + } +} diff --git a/app/Http/Controllers/Api/PostController.php b/app/Http/Controllers/Api/PostController.php new file mode 100644 index 0000000..4f092c5 --- /dev/null +++ b/app/Http/Controllers/Api/PostController.php @@ -0,0 +1,93 @@ +middleware('auth:sanctum') + ->only([ + 'store', + 'update', + 'delete' + ]); + } + + /** + * Display a listing of the resource. + * + * @param \App\Filters\PostFilter $filter Post filter request. + * @return \Illuminate\Http\Response + */ + public function index(PostFilter $filter) + { + return $this->respondAsResource( + $filter->filter(), + ['total' => $filter->foundTotal()] + ); + } + + /** + * Display the specified resource. + * + * @param PostFilter $filter The filter request. + * @param \App\Models\Post $post The post model. + * @return \Illuminate\Http\Response + */ + public function show(PostFilter $filter, Post $post) + { + return $this->respondAsResource($filter->filter($post)); + } + + /** + * Store a newly created resource in storage. + * + * @param PostStoreRequest $request The post store request. + * @return \Illuminate\Http\Response + */ + public function store(PostStoreRequest $request) + { + $post = Post::create($request->all()); + return $this->respondAsResource( + (new PostFilter($request))->filter($post), + null, + HttpResponseCodes::HTTP_CREATED + ); + } + + /** + * Update the specified resource in storage. + * + * @param PostUpdateRequest $request The post update request. + * @param \App\Models\Post $post The specified post. + * @return \Illuminate\Http\Response + */ + public function update(PostUpdateRequest $request, Post $post) + { + $post->update($request->all()); + return $this->respondAsResource((new PostFilter($request))->filter($post)); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\Models\Post $post The specified post. + * @return \Illuminate\Http\Response + */ + public function destroy(Post $post) + { + $post->delete(); + return $this->respondNoContent(); + } +} diff --git a/app/Http/Controllers/Api/SubscriptionController.php b/app/Http/Controllers/Api/SubscriptionController.php new file mode 100644 index 0000000..fc4d90b --- /dev/null +++ b/app/Http/Controllers/Api/SubscriptionController.php @@ -0,0 +1,126 @@ +middleware('auth:sanctum') + ->except([]); + } + + /** + * Display a listing of the resource. + * + * @param \App\Filters\UserFilter $filter Filter object. + * @return \Illuminate\Http\Response + */ + public function index(UserFilter $filter) + { + $collection = $filter->filter(); + return $this->respondAsResource( + $collection, + ['total' => $filter->foundTotal()] + ); + } + + /** + * Store a newly created user in the database. + * + * @param UserStoreRequest $request The user update request. + * @return \Illuminate\Http\Response + */ + public function store(UserStoreRequest $request) + { + if ($request->user()->hasPermission('admin/user') !== true) { + return $this->respondForbidden(); + } + + $user = User::create($request->all()); + return $this->respondAsResource((new UserFilter($request))->filter($user), [], HttpResponseCodes::HTTP_CREATED); + } + + + /** + * Display the specified user. + * + * @param UserFilter $filter The user filter. + * @param User $user The user model. + * @return \Illuminate\Http\Response + */ + public function show(UserFilter $filter, User $user) + { + return $this->respondAsResource($filter->filter($user)); + } + + /** + * Update the specified resource in storage. + * + * @param UserUpdateRequest $request The user update request. + * @param User $user The specified user. + * @return \Illuminate\Http\Response + */ + public function update(UserUpdateRequest $request, User $user) + { + $input = []; + $updatable = ['username', 'first_name', 'last_name', 'email', 'phone', 'password']; + + if ($request->user()->hasPermission('admin/user') === true) { + $updatable = array_merge($updatable, ['email_verified_at']); + } elseif ($request->user()->is($user) !== true) { + return $this->respondForbidden(); + } + + $input = $request->only($updatable); + if (array_key_exists('password', $input) === true) { + $input['password'] = Hash::make($request->input('password')); + } + + $user->update($input); + + return $this->respondAsResource((new UserFilter($request))->filter($user)); + } + + + /** + * Remove the user from the database. + * + * @param User $user The specified user. + * @return \Illuminate\Http\Response + */ + public function destroy(User $user) + { + if ($user->hasPermission('admin/user') === false) { + return $this->respondForbidden(); + } + + $user->delete(); + return $this->respondNoContent(); + } +} diff --git a/app/Http/Controllers/Api/UserController.php b/app/Http/Controllers/Api/UserController.php new file mode 100644 index 0000000..e92130d --- /dev/null +++ b/app/Http/Controllers/Api/UserController.php @@ -0,0 +1,337 @@ +middleware('auth:sanctum') + ->except([ + 'index', + 'show', + 'register', + 'exists', + 'forgotPassword', + 'forgotUsername', + 'resetPassword', + 'verifyEmail', + 'resendVerifyEmailCode' + ]); + } + + /** + * Display a listing of the resource. + * + * @param \App\Filters\UserFilter $filter Filter object. + * @return \Illuminate\Http\Response + */ + public function index(UserFilter $filter) + { + $collection = $filter->filter(); + return $this->respondAsResource( + $collection, + ['total' => $filter->foundTotal()] + ); + } + + /** + * Store a newly created user in the database. + * + * @param UserStoreRequest $request The user update request. + * @return \Illuminate\Http\Response + */ + public function store(UserStoreRequest $request) + { + if ($request->user()->hasPermission('admin/user') !== true) { + return $this->respondForbidden(); + } + + $user = User::create($request->all()); + return $this->respondAsResource((new UserFilter($request))->filter($user), [], HttpResponseCodes::HTTP_CREATED); + } + + + /** + * Display the specified user. + * + * @param UserFilter $filter The user filter. + * @param User $user The user model. + * @return \Illuminate\Http\Response + */ + public function show(UserFilter $filter, User $user) + { + return $this->respondAsResource($filter->filter($user)); + } + + /** + * Update the specified resource in storage. + * + * @param UserUpdateRequest $request The user update request. + * @param User $user The specified user. + * @return \Illuminate\Http\Response + */ + public function update(UserUpdateRequest $request, User $user) + { + $input = []; + $updatable = ['username', 'first_name', 'last_name', 'email', 'phone', 'password']; + + if ($request->user()->hasPermission('admin/user') === true) { + $updatable = array_merge($updatable, ['email_verified_at']); + } elseif ($request->user()->is($user) !== true) { + return $this->respondForbidden(); + } + + $input = $request->only($updatable); + if (array_key_exists('password', $input) === true) { + $input['password'] = Hash::make($request->input('password')); + } + + $user->update($input); + + return $this->respondAsResource((new UserFilter($request))->filter($user)); + } + + + /** + * Remove the user from the database. + * + * @param User $user The specified user. + * @return \Illuminate\Http\Response + */ + public function destroy(User $user) + { + if ($user->hasPermission('admin/user') === false) { + return $this->respondForbidden(); + } + + $user->delete(); + return $this->respondNoContent(); + } + + /** + * Register a new user + * + * @param UserRegisterRequest $request The register user request. + * @return \Illuminate\Http\Response + */ + public function register(UserRegisterRequest $request) + { + try { + $user = User::create([ + 'first_name' => $request->input('first_name'), + 'last_name' => $request->input('last_name'), + 'username' => $request->input('username'), + 'email' => $request->input('email'), + 'phone' => $request->input('phone'), + 'password' => Hash::make($request->input('password')) + ]); + + $code = $user->codes()->create([ + 'action' => 'verify-email', + ]); + + dispatch((new SendEmailJob($user->email, new EmailVerify($user, $code->code))))->onQueue('mail'); + + return response()->json([ + 'message' => 'Check your email for a welcome code.' + ]); + } catch (\Exception $e) { + return response()->json([ + 'message' => 'A server error occurred. Please try again later' . $e + ], 500); + }//end try + } + + /** + * Sends an email with all the usernames registered at that address + * + * @param UserForgotUsernameRequest $request The forgot username request. + * @return \Illuminate\Http\Response + */ + public function forgotUsername(UserForgotUsernameRequest $request) + { + $users = User::where('email', $request->input('email'))->whereNotNull('email_verified_at')->get(); + if ($users->count() > 0) { + dispatch((new SendEmailJob( + $users->first()->email, + new ForgotUsername($users->pluck('username')->toArray()) + )))->onQueue('mail'); + return $this->respondNoContent(); + } + + return $this->respondJson(['message' => 'Username send to the email address if registered']); + } + + /** + * Generates a new reset password code + * + * @param UserForgotPasswordRequest $request The reset password request. + * @return \Illuminate\Http\Response + */ + public function forgotPassword(UserForgotPasswordRequest $request) + { + $user = User::where('username', $request->input('username'))->first(); + if ($user !== null) { + $user->codes()->where('action', 'reset-password')->delete(); + $code = $user->codes()->create([ + 'action' => 'reset-password' + ]); + + dispatch((new SendEmailJob($user->email, new ForgotPassword($user, $code->code))))->onQueue('mail'); + return $this->respondNoContent(); + } + + return $this->respondNotFound(); + } + + /** + * Resets a user password + * + * @param UserResetPasswordRequest $request The reset password request. + * @return \Illuminate\Http\Response + */ + public function resetPassword(UserResetPasswordRequest $request) + { + UserCode::clearExpired(); + + $code = UserCode::where('code', $request->input('code'))->where('action', 'reset-password')->first(); + if ($code !== null) { + $user = $code->user()->first(); + + $code->delete(); + $user->codes()->where('action', 'verify-email')->delete(); + + $user->password = Hash::make($request->input('password')); + + if ($user->email_verified_at === null) { + $user->email_verified_at = now(); + } + + $user->save(); + + dispatch((new SendEmailJob($user->email, new ChangedPassword($user))))->onQueue('mail'); + return $this->respondNoContent(); + } + + return $this->respondError([ + 'code' => 'The code was not found or has expired' + ]); + } + + /** + * Verify an email code + * + * @param UserVerifyEmailRequest $request The verify email request. + * @return \Illuminate\Http\Response + */ + public function verifyEmail(UserVerifyEmailRequest $request) + { + UserCode::clearExpired(); + + $code = UserCode::where('code', $request->input('code'))->where('action', 'verify-email')->first(); + if ($code !== null) { + $user = $code->user()->first(); + $new_email = $code->data; + + if ($new_email === null) { + if ($user->email_verified_at === null) { + $user->email_verified_at = now(); + } + } else { + dispatch((new SendEmailJob($user->email, new ChangedEmail($user, $user->email, $new_email)))) + ->onQueue('mail'); + + $user->email = $new_email; + $user->email_verified_at = now(); + } + + $code->delete(); + $user->save(); + + return $this->respondNoContent(); + }//end if + + return $this->respondWithErrors([ + 'code' => 'The code was not found or has expired' + ]); + } + + /** + * Resend a new verify email + * + * @param UserResendVerifyEmailRequest $request The resend verify email request. + * @return \Illuminate\Http\Response + */ + public function resendVerifyEmail(UserResendVerifyEmailRequest $request) + { + UserCode::clearExpired(); + + $user = User::where('username', $request->input('username'))->first(); + if ($user !== null) { + $code = $user->codes()->where('action', 'verify-email')->first(); + $code->regenerate(); + $code->save(); + + if ($code->data === null) { + dispatch((new SendEmailJob($user->email, new EmailVerify($user, $code->code))))->onQueue('mail'); + } else { + dispatch((new SendEmailJob($user->email, new ChangeEmailVerify($user, $code->code, $code->data)))) + ->onQueue('mail'); + } + } + + return response()->json(['message' => 'Verify email sent if user registered and required']); + } + + /** + * Resend verification email + * + * @param UserResendVerifyEmailRequest $request The resend user request. + * @return \Illuminate\Http\Response + */ + public function resendVerifyEmailCode(UserResendVerifyEmailRequest $request) + { + $user = User::where('username', $request->input('username'))->first(); + if ($user !== null) { + $user->codes()->where('action', 'verify-email')->delete(); + + if ($user->email_verified_at === null) { + $code = $user->codes()->create([ + 'action' => 'verify-email' + ]); + + dispatch((new SendEmailJob($user->email, new EmailVerify($user, $code->code))))->onQueue('mail'); + } + + return $this->respondNoContent(); + } + + return $this->respondNotFound(); + } +} diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php new file mode 100644 index 0000000..ce1176d --- /dev/null +++ b/app/Http/Controllers/Controller.php @@ -0,0 +1,15 @@ + + */ + protected $middleware = [ + // \App\Http\Middleware\TrustHosts::class, + \App\Http\Middleware\TrustProxies::class, + \Illuminate\Http\Middleware\HandleCors::class, + \App\Http\Middleware\PreventRequestsDuringMaintenance::class, + \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class, + // \App\Http\Middleware\TrimStrings::class, + // \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, + ]; + + /** + * The application's route middleware groups. + * + * @var array> + */ + protected $middlewareGroups = [ + 'web' => [ + \App\Http\Middleware\EncryptCookies::class, + \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, + \Illuminate\Session\Middleware\StartSession::class, + \Illuminate\View\Middleware\ShareErrorsFromSession::class, + \App\Http\Middleware\VerifyCsrfToken::class, + \Illuminate\Routing\Middleware\SubstituteBindings::class, + ], + + 'api' => [ + // \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class, + 'throttle:api', + \Illuminate\Routing\Middleware\SubstituteBindings::class, + // \App\Http\Middleware\ForceJsonResponse::class, + 'useSanctumGuard' + ], + ]; + + /** + * 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, + 'auth.session' => \Illuminate\Session\Middleware\AuthenticateSession::class, + 'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class, + 'can' => \Illuminate\Auth\Middleware\Authorize::class, + 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, + 'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'signed' => \App\Http\Middleware\ValidateSignature::class, + 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, + 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, + 'useSanctumGuard' => \App\Http\Middleware\UseSanctumGuard::class + ]; +} diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php new file mode 100644 index 0000000..3bb5a9e --- /dev/null +++ b/app/Http/Middleware/Authenticate.php @@ -0,0 +1,21 @@ +expectsJson() === false) { + return route('login'); + } + } +} diff --git a/app/Http/Middleware/EncryptCookies.php b/app/Http/Middleware/EncryptCookies.php new file mode 100644 index 0000000..867695b --- /dev/null +++ b/app/Http/Middleware/EncryptCookies.php @@ -0,0 +1,17 @@ + + */ + protected $except = [ + // + ]; +} diff --git a/app/Http/Middleware/ForceJsonResponse.php b/app/Http/Middleware/ForceJsonResponse.php new file mode 100644 index 0000000..3311198 --- /dev/null +++ b/app/Http/Middleware/ForceJsonResponse.php @@ -0,0 +1,22 @@ +headers->set('Accept', 'application/json'); + return $next($request); + } +} diff --git a/app/Http/Middleware/PreventRequestsDuringMaintenance.php b/app/Http/Middleware/PreventRequestsDuringMaintenance.php new file mode 100644 index 0000000..74cbd9a --- /dev/null +++ b/app/Http/Middleware/PreventRequestsDuringMaintenance.php @@ -0,0 +1,17 @@ + + */ + protected $except = [ + // + ]; +} diff --git a/app/Http/Middleware/RedirectIfAuthenticated.php b/app/Http/Middleware/RedirectIfAuthenticated.php new file mode 100644 index 0000000..e51f28c --- /dev/null +++ b/app/Http/Middleware/RedirectIfAuthenticated.php @@ -0,0 +1,32 @@ +check() === true) { + return redirect(RouteServiceProvider::HOME); + } + } + + return $next($request); + } +} diff --git a/app/Http/Middleware/TrimStrings.php b/app/Http/Middleware/TrimStrings.php new file mode 100644 index 0000000..88cadca --- /dev/null +++ b/app/Http/Middleware/TrimStrings.php @@ -0,0 +1,19 @@ + + */ + protected $except = [ + 'current_password', + 'password', + 'password_confirmation', + ]; +} diff --git a/app/Http/Middleware/TrustHosts.php b/app/Http/Middleware/TrustHosts.php new file mode 100644 index 0000000..7186414 --- /dev/null +++ b/app/Http/Middleware/TrustHosts.php @@ -0,0 +1,20 @@ + + */ + public function hosts() + { + return [ + $this->allSubdomainsOfApplicationUrl(), + ]; + } +} diff --git a/app/Http/Middleware/TrustProxies.php b/app/Http/Middleware/TrustProxies.php new file mode 100644 index 0000000..3123f50 --- /dev/null +++ b/app/Http/Middleware/TrustProxies.php @@ -0,0 +1,25 @@ +|string|null + */ + protected $proxies; + + /** + * The headers that should be used to detect proxies. + * + * @var integer + */ + // @codingStandardsIgnoreStart + protected $headers = (Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO | Request::HEADER_X_FORWARDED_AWS_ELB); + // @codingStandardsIgnoreEnd +} diff --git a/app/Http/Middleware/UseSanctumGuard.php b/app/Http/Middleware/UseSanctumGuard.php new file mode 100644 index 0000000..4e4e62d --- /dev/null +++ b/app/Http/Middleware/UseSanctumGuard.php @@ -0,0 +1,23 @@ + + */ + protected $except = [ + // 'fbclid', + // 'utm_campaign', + // 'utm_content', + // 'utm_medium', + // 'utm_source', + // 'utm_term', + ]; +} diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/Http/Middleware/VerifyCsrfToken.php new file mode 100644 index 0000000..9e86521 --- /dev/null +++ b/app/Http/Middleware/VerifyCsrfToken.php @@ -0,0 +1,17 @@ + + */ + protected $except = [ + // + ]; +} diff --git a/app/Http/Requests/AuthLoginRequest.php b/app/Http/Requests/AuthLoginRequest.php new file mode 100644 index 0000000..ba18db1 --- /dev/null +++ b/app/Http/Requests/AuthLoginRequest.php @@ -0,0 +1,21 @@ + + */ + public function rules() + { + return [ + 'username' => 'required|string|min:6|max:255', + 'password' => 'required|string|min:6', + ]; + } +} diff --git a/app/Http/Requests/BaseRequest.php b/app/Http/Requests/BaseRequest.php new file mode 100644 index 0000000..f99f46c --- /dev/null +++ b/app/Http/Requests/BaseRequest.php @@ -0,0 +1,95 @@ +isMethod('post') === true) { + return $this->postAuthorize(); + } elseif (method_exists($this, 'putAuthorize') === true && request()->isMethod('put') === true) { + return $this->putAuthorize(); + } + + return true; + } + + /** + * Get the validation rules that apply to the request. + * + * @return array + */ + public function rules() + { + $rules = []; + + if (method_exists($this, 'baseRules') === true) { + $rules = $this->baseRules(); + } + + if (method_exists($this, 'postRules') === true && request()->isMethod('post') === true) { + $rules = $this->mergeRules($rules, $this->postRules()); + } elseif (method_exists($this, 'putRules') === true && request()->isMethod('put') === true) { + $rules = $this->mergeRules($rules, $this->postRules()); + } + + return $rules; + } + + /** + * Merge two collections of rules. + * + * @param array $collection1 The first collection of rules. + * @param array $collection2 The second collection of rules to merge. + * @return array + */ + private function mergeRules(array $collection1, array $collection2) + { + $rules = []; + + foreach ($collection1 as $key => $ruleset) { + if (array_key_exists($key, $collection2) === true) { + if (is_string($collection1[$key]) === true && is_string($collection2[$key]) === true) { + $rules[$key] = $collection1[$key] . '|' . $collection2[$key]; + } else { + $key_ruleset = []; + + if (is_array($collection1[$key]) === true) { + $key_ruleset = $collection1[$key]; + } elseif (is_string($collection1[$key]) === true) { + $key_ruleset = explode('|', $collection1[$key]); + } + + if (is_array($collection2[$key]) === true) { + $key_ruleset = array_merge($key_ruleset, $collection2[$key]); + } elseif (is_string($collection1[$key]) === true) { + $key_ruleset = array_merge($key_ruleset, explode('|', $collection1[$key])); + } + + if (count($key_ruleset) > 0) { + $rules[$key] = $key_ruleset; + } + }//end if + } else { + $rules[$key] = $ruleset; + }//end if + }//end foreach + + foreach ($collection2 as $key => $ruleset) { + if (array_key_exists($key, $rules) === false) { + $rules[$key] = $collection2[$key]; + } + } + + return $rules; + } +} diff --git a/app/Http/Requests/ContactSendRequest.php b/app/Http/Requests/ContactSendRequest.php new file mode 100644 index 0000000..31e50a7 --- /dev/null +++ b/app/Http/Requests/ContactSendRequest.php @@ -0,0 +1,24 @@ + + */ + public function rules() + { + return [ + 'name' => 'required|max:255', + 'email' => 'required|email|max:255', + 'content' => 'required|max:2000', + 'captcha_token' => [new Recaptcha()], + ]; + } +} diff --git a/app/Http/Requests/EventRequest.php b/app/Http/Requests/EventRequest.php new file mode 100644 index 0000000..10f48e2 --- /dev/null +++ b/app/Http/Requests/EventRequest.php @@ -0,0 +1,78 @@ +user()?->hasPermission('admin/events'); + } + + /** + * Determine if the user is authorized to make this request. + * + * @return boolean + */ + public function putAuthorize() + { + return $this->user()?->hasPermission('admin/events'); + } + + /** + * Apply the base rules to this request + * + * @return array + */ + public function baseRules() + { + return [ + 'title' => 'min:6', + 'location' => [ + Rule::in(['online', 'physical']), + ], + 'address' => 'string|nullable', + 'start_at' => 'date', + 'end_at' => 'date|after:start_date', + 'publish_at' => 'date|nullable', + 'status' => [ + Rule::in(['draft', 'open', 'closed', 'cancelled']), + ], + 'registration_type' => [ + Rule::in(['none', 'email', 'link']), + ], + 'registration_data' => [ + Rule::when(strcasecmp('email', $this->attributes->get('registration_type')) == 0, 'required|email'), + Rule::when(strcasecmp('link', $this->attributes->get('registration_type')) == 0, 'required|url') + ], + 'hero' => 'uuid|exists:media,id', + ]; + } + + /** + * Apply the additional POST base rules to this request + * + * @return array + */ + protected function postRules() + { + return [ + 'title' => 'required', + 'location' => 'required', + 'address' => 'required_if:location,physical', + 'start_at' => 'required', + 'end_at' => 'required', + 'status' => 'required', + 'registration_type' => 'required', + 'hero' => 'required', + ]; + } +} diff --git a/app/Http/Requests/MediaStoreRequest.php b/app/Http/Requests/MediaStoreRequest.php new file mode 100644 index 0000000..de4fc07 --- /dev/null +++ b/app/Http/Requests/MediaStoreRequest.php @@ -0,0 +1,20 @@ + + */ + public function rules() + { + return [ + // + ]; + } +} diff --git a/app/Http/Requests/MediaUpdateRequest.php b/app/Http/Requests/MediaUpdateRequest.php new file mode 100644 index 0000000..d6b61c7 --- /dev/null +++ b/app/Http/Requests/MediaUpdateRequest.php @@ -0,0 +1,20 @@ + + */ + public function rules() + { + return [ + // + ]; + } +} diff --git a/app/Http/Requests/PostStoreRequest.php b/app/Http/Requests/PostStoreRequest.php new file mode 100644 index 0000000..6d4d21b --- /dev/null +++ b/app/Http/Requests/PostStoreRequest.php @@ -0,0 +1,23 @@ + + */ + public function rules() + { + return [ + 'slug' => 'string|min:6|unique:posts', + 'title' => 'string|min:6|max:255', + 'publish_at' => 'date', + 'user_id' => 'uuid|exists:users,id', + ]; + } +} diff --git a/app/Http/Requests/PostUpdateRequest.php b/app/Http/Requests/PostUpdateRequest.php new file mode 100644 index 0000000..c0d01c7 --- /dev/null +++ b/app/Http/Requests/PostUpdateRequest.php @@ -0,0 +1,28 @@ + + */ + public function rules() + { + return [ + 'slug' => [ + 'string', + 'min:6', + Rule::unique('posts')->ignoreModel($this->post), + ], + 'title' => 'string|min:6|max:255', + 'publish_at' => 'date', + 'user_id' => 'uuid|exists:users,id', + ]; + } +} diff --git a/app/Http/Requests/UserForgotPasswordRequest.php b/app/Http/Requests/UserForgotPasswordRequest.php new file mode 100644 index 0000000..93e86b7 --- /dev/null +++ b/app/Http/Requests/UserForgotPasswordRequest.php @@ -0,0 +1,22 @@ + + */ + public function rules() + { + return [ + 'username' => 'required|exists:users,username', + 'captcha_token' => [new Recaptcha()], + ]; + } +} diff --git a/app/Http/Requests/UserForgotUsernameRequest.php b/app/Http/Requests/UserForgotUsernameRequest.php new file mode 100644 index 0000000..a125ae2 --- /dev/null +++ b/app/Http/Requests/UserForgotUsernameRequest.php @@ -0,0 +1,22 @@ + + */ + public function rules() + { + return [ + 'email' => 'required|email|max:255', + 'captcha_token' => [new Recaptcha()], + ]; + } +} diff --git a/app/Http/Requests/UserRegisterRequest.php b/app/Http/Requests/UserRegisterRequest.php new file mode 100644 index 0000000..e67a868 --- /dev/null +++ b/app/Http/Requests/UserRegisterRequest.php @@ -0,0 +1,24 @@ + + */ + public function rules() + { + return [ + 'first_name' => 'required|string|max:255', + 'last_name' => 'required|string|max:255', + 'email' => 'required|string|email|max:255', + 'username' => 'required|string|min:4|max:255|unique:users', + 'password' => 'required|string|min:8', + ]; + } +} diff --git a/app/Http/Requests/UserResendVerifyEmailRequest.php b/app/Http/Requests/UserResendVerifyEmailRequest.php new file mode 100644 index 0000000..825c159 --- /dev/null +++ b/app/Http/Requests/UserResendVerifyEmailRequest.php @@ -0,0 +1,22 @@ + + */ + public function rules() + { + return [ + 'username' => 'required|exists:users,username', + 'captcha_token' => [new Recaptcha()], + ]; + } +} diff --git a/app/Http/Requests/UserResetPasswordRequest.php b/app/Http/Requests/UserResetPasswordRequest.php new file mode 100644 index 0000000..35cfdbf --- /dev/null +++ b/app/Http/Requests/UserResetPasswordRequest.php @@ -0,0 +1,23 @@ + + */ + public function rules() + { + return [ + 'code' => 'required|digits:6', + 'password' => 'required|string|min:8', + 'captcha_token' => [new Recaptcha()], + ]; + } +} diff --git a/app/Http/Requests/UserStoreRequest.php b/app/Http/Requests/UserStoreRequest.php new file mode 100644 index 0000000..43bf17f --- /dev/null +++ b/app/Http/Requests/UserStoreRequest.php @@ -0,0 +1,25 @@ + + */ + public function rules() + { + return [ + 'username' => 'required|string|max:255|min:4|unique:users', + 'first_name' => 'required|string|max:255|min:2', + 'last_name' => 'required|string|max:255|min:2', + 'email' => 'required|string|email|max:255', + 'phone' => ['string', 'regex:/^(\+|00)?[0-9][0-9 \-\(\)\.]{7,32}$/'], + 'email_verified_at' => 'date' + ]; + } +} diff --git a/app/Http/Requests/UserUpdateRequest.php b/app/Http/Requests/UserUpdateRequest.php new file mode 100644 index 0000000..00ff97b --- /dev/null +++ b/app/Http/Requests/UserUpdateRequest.php @@ -0,0 +1,25 @@ + + */ + public function rules() + { + return [ + 'username' => 'string|max:255|min:6|unique:users', + 'first_name' => 'string|max:255|min:2', + 'last_name' => 'string|max:255|min:2', + 'email' => 'string|email|max:255', + 'phone' => ['nullable','regex:/^(\+|00)?[0-9][0-9 \-\(\)\.]{7,32}$/'], + 'password' => 'string|min:8' + ]; + } +} diff --git a/app/Http/Requests/UserVerifyEmailRequest.php b/app/Http/Requests/UserVerifyEmailRequest.php new file mode 100644 index 0000000..d2a6bc9 --- /dev/null +++ b/app/Http/Requests/UserVerifyEmailRequest.php @@ -0,0 +1,22 @@ + + */ + public function rules() + { + return [ + 'code' => 'required|digits:6', + 'captcha_token' => [new Recaptcha()], + ]; + } +} diff --git a/app/Jobs/SendEmailJob.php b/app/Jobs/SendEmailJob.php new file mode 100644 index 0000000..8b045f8 --- /dev/null +++ b/app/Jobs/SendEmailJob.php @@ -0,0 +1,57 @@ +to = $to; + $this->mailable = $mailable; + } + + /** + * Execute the job. + * + * @return void + */ + public function handle() + { + Mail::to($this->to)->send($this->mailable); + } +} diff --git a/app/Mail/ChangeEmailVerify.php b/app/Mail/ChangeEmailVerify.php new file mode 100644 index 0000000..c055bde --- /dev/null +++ b/app/Mail/ChangeEmailVerify.php @@ -0,0 +1,79 @@ +user = $user; + $this->code = $code; + $this->new_email = $new_email; + } + + /** + * Get the message envelope. + * + * @return \Illuminate\Mail\Mailables\Envelope + */ + public function envelope() + { + return new Envelope( + subject: '👋🏻 Lets change your email!', + ); + } + + /** + * Get the message content definition. + * + * @return \Illuminate\Mail\Mailables\Content + */ + public function content() + { + return new Content( + view: 'emails.user.change_email_verify', + text: 'emails.user.change_email_verify_plain', + ); + } +} diff --git a/app/Mail/ChangedEmail.php b/app/Mail/ChangedEmail.php new file mode 100644 index 0000000..d767b85 --- /dev/null +++ b/app/Mail/ChangedEmail.php @@ -0,0 +1,79 @@ +user = $user; + $this->old_email = $old_email; + $this->new_email = $new_email; + } + + /** + * Get the message envelope. + * + * @return \Illuminate\Mail\Mailables\Envelope + */ + public function envelope() + { + return new Envelope( + subject: '👍 Your email has been changed!', + ); + } + + /** + * Get the message content definition. + * + * @return \Illuminate\Mail\Mailables\Content + */ + public function content() + { + return new Content( + view: 'emails.user.changed_email', + text: 'emails.user.changed_email_plain', + ); + } +} diff --git a/app/Mail/ChangedPassword.php b/app/Mail/ChangedPassword.php new file mode 100644 index 0000000..8c62937 --- /dev/null +++ b/app/Mail/ChangedPassword.php @@ -0,0 +1,61 @@ +user = $user; + } + + /** + * Get the message envelope. + * + * @return \Illuminate\Mail\Mailables\Envelope + */ + public function envelope() + { + return new Envelope( + subject: '👍 Your password has been changed!', + ); + } + + /** + * Get the message content definition. + * + * @return \Illuminate\Mail\Mailables\Content + */ + public function content() + { + return new Content( + view: 'emails.user.changed_password', + text: 'emails.user.changed_password_plain', + ); + } +} diff --git a/app/Mail/Contact.php b/app/Mail/Contact.php new file mode 100644 index 0000000..d676fb3 --- /dev/null +++ b/app/Mail/Contact.php @@ -0,0 +1,78 @@ +name = $name; + $this->email = $email; + $this->content = $content; + } + + /** + * Get the message envelope. + * + * @return \Illuminate\Mail\Mailables\Envelope + */ + public function envelope() + { + return new Envelope( + subject: config('contact.contact_subject'), + ); + } + + /** + * Get the message content definition. + * + * @return \Illuminate\Mail\Mailables\Content + */ + public function content() + { + return new Content( + view: 'emails.user.contact', + text: 'emails.user.contact_plain', + ); + } +} diff --git a/app/Mail/EmailVerify.php b/app/Mail/EmailVerify.php new file mode 100644 index 0000000..32f0dcb --- /dev/null +++ b/app/Mail/EmailVerify.php @@ -0,0 +1,70 @@ +user = $user; + $this->code = $code; + } + + /** + * Get the message envelope. + * + * @return \Illuminate\Mail\Mailables\Envelope + */ + public function envelope() + { + return new Envelope( + subject: '👋🏻 Welcome to STEMMechanics!', + ); + } + + /** + * Get the message content definition. + * + * @return \Illuminate\Mail\Mailables\Content + */ + public function content() + { + return new Content( + view: 'emails.user.email_verify', + text: 'emails.user.email_verify_plain', + ); + } +} diff --git a/app/Mail/ForgotPassword.php b/app/Mail/ForgotPassword.php new file mode 100644 index 0000000..e48af31 --- /dev/null +++ b/app/Mail/ForgotPassword.php @@ -0,0 +1,70 @@ +user = $user; + $this->code = $code; + } + + /** + * Get the message envelope. + * + * @return \Illuminate\Mail\Mailables\Envelope + */ + public function envelope() + { + return new Envelope( + subject: '🤦 Forgot your password?', + ); + } + + /** + * Get the message content definition. + * + * @return \Illuminate\Mail\Mailables\Content + */ + public function content() + { + return new Content( + view: 'emails.user.forgot_password', + text: 'emails.user.forgot_password_plain', + ); + } +} diff --git a/app/Mail/ForgotUsername.php b/app/Mail/ForgotUsername.php new file mode 100644 index 0000000..fac4fe0 --- /dev/null +++ b/app/Mail/ForgotUsername.php @@ -0,0 +1,60 @@ +usernames = $usernames; + } + + /** + * Get the message envelope. + * + * @return \Illuminate\Mail\Mailables\Envelope + */ + public function envelope() + { + return new Envelope( + subject: '🤦 Forgot your username?', + ); + } + + /** + * Get the message content definition. + * + * @return \Illuminate\Mail\Mailables\Content + */ + public function content() + { + return new Content( + view: 'emails.user.forgot_username', + text: 'emails.user.forgot_username_plain', + ); + } +} diff --git a/app/Models/Event.php b/app/Models/Event.php new file mode 100644 index 0000000..1e87ebe --- /dev/null +++ b/app/Models/Event.php @@ -0,0 +1,32 @@ + + */ + protected $fillable = [ + 'title', + 'location', + 'address', + 'start_at', + 'end_at', + 'publish_at', + 'status', + 'registration_type', + 'registration_data', + 'hero', + 'content' + ]; +} diff --git a/app/Models/Media.php b/app/Models/Media.php new file mode 100644 index 0000000..f34ac16 --- /dev/null +++ b/app/Models/Media.php @@ -0,0 +1,276 @@ + + */ + protected $fillable = [ + 'title', + 'name', + 'mime', + 'user_id', + 'size', + 'permission' + ]; + + /** + * The attributes that are hidden. + * + * @var array + */ + protected $hidden = [ + 'path', + ]; + + /** + * The attributes that are appended. + * + * @var array + */ + protected $appends = [ + 'url', + ]; + + + /** + * Model Boot + * + * @return void + */ + protected static function boot() + { + parent::boot(); + + static::updating(function ($media) { + if (array_key_exists('permission', $media->getChanges()) === true) { + $origPermission = $media->getOriginal()['permission']; + $newPermission = $media->permission; + + $origPath = Storage::disk(Media::getStorageId(empty($origPermission)))->path($media->name); + $newPath = Storage::disk(Media::getStorageId(empty($newPermission)))->path($media->name); + + if ($origPath !== $newPath) { + if (file_exists($origPath) === true) { + if (file_exists($newPath) === true) { + $fileParts = pathinfo($newPath); + $newName = ''; + + // need a new name! + $tmpPath = $newPath; + while (file_exists($tmpPath) === true) { + $newName = uniqid('', true) . $fileParts['extension']; + $tmpPath = $fileParts['dirname'] . '/' . $newName; + } + + $media->name = $newName; + } + + rename($origPath, $newPath); + }//end if + }//end if + }//end if + }); + } + + /** + * Return the file URL + * + * @return string + */ + public function getUrlAttribute() + { + $url = config('filesystems.disks.' . Media::getStorageId($this) . '.url'); + if (empty($url) === false) { + $replace = [ + 'id' => $this->id, + 'name' => $this->name + ]; + + $url = str_ireplace(array_map(function ($item) { + return '%' . $item . '%'; + }, array_keys($replace)), array_values($replace), $url); + + return $url; + }//end if + + return ''; + } + + /** + * Return the file owner + * + * @return BelongsTo + */ + public function user() + { + return $this->belongsTo(User::class); + } + + /** + * Get the file full local path + * + * @return string + */ + public function path() + { + return Storage::disk(Media::getStorageId($this))->path($this->name); + } + + /** + * Get Storage ID + * + * @param mixed $mediaOrPublic Media object or if file is public. + * @return string + */ + public static function getStorageId(mixed $mediaOrPublic) + { + $isPublic = true; + + if ($mediaOrPublic instanceof Media) { + $isPublic = empty($mediaOrPublic->permission); + } else { + $isPublic = boolval($mediaOrPublic); + } + + return $isPublic === true ? 'public' : 'local'; + } + + /** + * Place uploaded file into storage. Return full path or null + * + * @param UploadedFile $file File to put into storage. + * @param boolean $public Is the file available to the public. + * @return array|null + */ + public static function store(UploadedFile $file, bool $public = true) + { + $storage = Media::getStorageId($public); + $name = $file->store('', ['disk' => $storage]); + + if ($name === false) { + return null; + } + + $path = Storage::disk($storage)->path($name); + return [ + 'name' => $name, + 'path' => $path + ]; + } + + /** + * Get the server maximum upload size + * + * @return integer + */ + public static function maxUploadSize() + { + $sizes = [ + ini_get('upload_max_filesize'), + ini_get('post_max_size'), + ini_get('memory_limit') + ]; + + foreach ($sizes as &$size) { + $size = trim($size); + $last = strtolower($size[(strlen($size) - 1)]); + switch ($last) { + case 'g': + $size = (intval($size) * 1024); + // Size is in MB - fallthrough + case 'm': + $size = (intval($size) * 1024); + // Size is in KB - fallthrough + case 'k': + $size = (intval($size) * 1024); + // Size is in B - fallthrough + } + } + + return min($sizes); + } + + /** + * Sanitize filename for upload + * + * @param string $filename Filename to sanitize. + * @return string + */ + public static function sanitizeFilename(string $filename) + { + /* + # file system reserved https://en.wikipedia.org/wiki/Filename#Reserved_characters_and_words + [<>:"/\\\|?*]| + + # control characters http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx + [\x00-\x1F]| + + # non-printing characters DEL, NO-BREAK SPACE, SOFT HYPHEN + [\x7F\xA0\xAD]| + + # URI reserved https://www.rfc-editor.org/rfc/rfc3986#section-2.2 + [#\[\]@!$&\'()+,;=]| + + # URL unsafe characters https://www.ietf.org/rfc/rfc1738.txt + [{}^\~`] + */ + + $filename = preg_replace( + '~ + [<>:"/\\\|?*]| + [\x00-\x1F]| + [\x7F\xA0\xAD]| + [#\[\]@!$&\'()+,;=]| + [{}^\~`] + ~x', + '-', + $filename + ); + + $filename = ltrim($filename, '.-'); + + $filename = preg_replace([ + // "file name.zip" becomes "file-name.zip" + '/ +/', + // "file___name.zip" becomes "file-name.zip" + '/_+/', + // "file---name.zip" becomes "file-name.zip" + '/-+/' + ], '-', $filename); + $filename = preg_replace([ + // "file--.--.-.--name.zip" becomes "file.name.zip" + '/-*\.-*/', + // "file...name..zip" becomes "file.name.zip" + '/\.{2,}/' + ], '.', $filename); + // lowercase for windows/unix interoperability http://support.microsoft.com/kb/100625 + $filename = mb_strtolower($filename, mb_detect_encoding($filename)); + // ".file-name.-" becomes "file-name" + $filename = trim($filename, '.-'); + + $ext = pathinfo($filename, PATHINFO_EXTENSION); + $filename = mb_strcut( + pathinfo($filename, PATHINFO_FILENAME), + 0, + (255 - ($ext !== '' ? strlen($ext) + 1 : 0)), + mb_detect_encoding($filename) + ) . ($ext !== '' ? '.' . $ext : ''); + return $filename; + } +} diff --git a/app/Models/Permission.php b/app/Models/Permission.php new file mode 100644 index 0000000..5c35923 --- /dev/null +++ b/app/Models/Permission.php @@ -0,0 +1,34 @@ + + */ + protected $fillable = [ + 'permission', + 'user', + ]; + + + /** + * Get the User associated with this model + * + * @return BelongsTo + */ + public function user() + { + return $this->belongsTo(User::class); + } +} diff --git a/app/Models/Post.php b/app/Models/Post.php new file mode 100644 index 0000000..9584def --- /dev/null +++ b/app/Models/Post.php @@ -0,0 +1,38 @@ + + */ + protected $fillable = [ + 'title', + 'slug', + 'publish_at', + 'content', + 'user_id', + 'hero' + ]; + + + /** + * Get the file user + * + * @return BelongsTo + */ + public function user() + { + return $this->belongsTo(User::class); + } +} diff --git a/app/Models/Subscription.php b/app/Models/Subscription.php new file mode 100644 index 0000000..73d94a8 --- /dev/null +++ b/app/Models/Subscription.php @@ -0,0 +1,22 @@ + + */ + protected $fillable = [ + 'email', + ]; +} diff --git a/app/Models/User.php b/app/Models/User.php new file mode 100644 index 0000000..8de62ae --- /dev/null +++ b/app/Models/User.php @@ -0,0 +1,145 @@ + + */ + protected $fillable = [ + 'username', + 'first_name', + 'last_name', + 'email', + 'phone', + 'password', + ]; + + /** + * The attributes that should be hidden for serialization. + * + * @var array + */ + protected $hidden = [ + 'password', + 'remember_token', + 'permissions' + ]; + + /** + * The attributes that should be cast. + * + * @var array + */ + protected $casts = [ + 'email_verified_at' => 'datetime', + ]; + + // protected $hidden = [ + // 'permissions' + // ]; + + /** + * The attributes to append. + * + * @var string[] + */ + protected $appends = [ + 'permissions' + ]; + + + // public function getPermissionsAttribute() { + // return $this->permissions()->pluck('permission')->toArray(); + // } + + + /** + * Get the list of files of the user + * + * @return HasMany + */ + public function permissions() + { + return $this->hasMany(Permission::class); + } + + /** + * Get the permission attribute + * + * @return array + */ + public function getPermissionsAttribute() + { + return $this->permissions()->pluck('permission')->toArray(); + } + + /** + * Test if user has permission + * + * @param string $permission Permission to test. + * @return boolean + */ + public function hasPermission(string $permission) + { + return ($this->permissions()->where('permission', $permission)->first() !== null); + } + + /** + * Get the list of files of the user + * + * @return HasMany + */ + public function media() + { + return $this->hasMany(Media::class); + } + + /** + * Get the list of files of the user + * + * @return HasMany + */ + public function posts() + { + return $this->hasMany(Post::class); + } + + /** + * Get associated user codes + * + * @return HasMany + */ + public function codes() + { + return $this->hasMany(UserCode::class); + } + + /** + * Get the list of logins of the user + * + * @return HasMany + */ + public function logins() + { + return $this->hasMany(UserLogins::class); + } +} diff --git a/app/Models/UserCode.php b/app/Models/UserCode.php new file mode 100644 index 0000000..dcc0f58 --- /dev/null +++ b/app/Models/UserCode.php @@ -0,0 +1,82 @@ + + */ + protected $fillable = [ + 'action', + 'user_id', + 'data', + ]; + + + /** + * Boot function from Laravel. + * + * @return void + */ + protected static function boot() + { + parent::boot(); + static::creating(function ($model) { + UserCode::clearExpired(); + + if (empty($model->{'code'}) === true) { + while (true) { + $code = random_int(100000, 999999); + if (UserCode::where('code', $code)->count() === 0) { + $model->{'code'} = $code; + break; + } + } + } + }); + } + + /** + * Generate new code + * + * @return void + */ + public function regenerate() + { + while (true) { + $code = random_int(100000, 999999); + if (UserCode::where('code', $code)->count() === 0) { + $this->code = $code; + break; + } + } + } + + /** + * Clear expired user codes + * + * @return void + */ + public static function clearExpired() + { + UserCode::where('updated_at', '<=', now()->subDays(5))->delete(); + } + + /** + * Get associated user + * + * @return BelongsTo + */ + public function user() + { + return $this->belongsTo(User::class); + } +} diff --git a/app/Models/UserLogins.php b/app/Models/UserLogins.php new file mode 100644 index 0000000..09c0f4b --- /dev/null +++ b/app/Models/UserLogins.php @@ -0,0 +1,38 @@ + + */ + protected $fillable = [ + 'user_id', + 'token', + 'login', + 'logout', + 'ip_address', + 'user_agent', + ]; + + + /** + * Get the file user + * + * @return BelongsTo + */ + public function user() + { + return $this->belongsTo(User::class); + } +} diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php new file mode 100644 index 0000000..06b608e --- /dev/null +++ b/app/Providers/AppServiceProvider.php @@ -0,0 +1,31 @@ + + */ + protected $policies = [ + // 'App\Models\Model' => 'App\Policies\ModelPolicy', + ]; + + + /** + * Register any authentication / authorization services. + * + * @return void + */ + public function boot() + { + $this->registerPolicies(); + + // + } +} diff --git a/app/Providers/BroadcastServiceProvider.php b/app/Providers/BroadcastServiceProvider.php new file mode 100644 index 0000000..395c518 --- /dev/null +++ b/app/Providers/BroadcastServiceProvider.php @@ -0,0 +1,21 @@ +> + */ + protected $listen = [ + Registered::class => [ + SendEmailVerificationNotification::class, + ], + ]; + + + /** + * Register any events for your application. + * + * @return void + */ + public function boot() + { + Queue::after(function (JobProcessed $event) { + // Log::info($event->connectionName); + // Log::info('ID: ' . $event->job->getJobId()); + // Log::info('Attempts: ' . $event->job->attempts()); + // Log::info('Name: ' . $event->job->getName()); + // Log::info('ResolveNAme: ' . $event->job->resolveName()); + // Log::info('Queue: ' . $event->job->getQueue()); + // Log::info('Body: ' . $event->job->getRawBody()); + // Log::info(print_r($event->job->payload(), true)); + + // $payload = $event->job->payload(); + // $data = unserialize($payload['data']['command']); + + // Log::info('MAIL: ' . $data->to); + // Log::info('MAIL: ' . get_class($data->mailable)); + }); + } + + /** + * Determine if events and listeners should be automatically discovered. + * + * @return boolean + */ + public function shouldDiscoverEvents() + { + return false; + } +} diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php new file mode 100644 index 0000000..55eb40e --- /dev/null +++ b/app/Providers/RouteServiceProvider.php @@ -0,0 +1,53 @@ +configureRateLimiting(); + + $this->routes(function () { + Route::middleware('api') + ->prefix('api') + ->group(base_path('routes/api.php')); + + Route::middleware('web') + ->group(base_path('routes/web.php')); + }); + } + + /** + * Configure the rate limiters for the application. + * + * @return void + */ + protected function configureRateLimiting() + { + RateLimiter::for('api', function (Request $request) { + return Limit::perMinute(60)->by($request->user()?->id !== null ?: $request->ip()); + }); + } +} diff --git a/app/Rules/Recaptcha.php b/app/Rules/Recaptcha.php new file mode 100644 index 0000000..5f9fe1b --- /dev/null +++ b/app/Rules/Recaptcha.php @@ -0,0 +1,52 @@ +post($endpoint['url'], [ + 'secret' => $endpoint['secret_key'], + 'response' => $value, + ])->json(); + + if ($response['success'] === true && $response['score'] > 0.5) { + return true; + } + + return false; + } + + /** + * Get the validation error message. + * + * @return string + */ + public function message() + { + return 'Captcha failed. Refresh the page and try again'; + } +} diff --git a/app/Services/ImageService.php b/app/Services/ImageService.php new file mode 100644 index 0000000..be65efd --- /dev/null +++ b/app/Services/ImageService.php @@ -0,0 +1,9 @@ +{$model->getKeyName()}) === true) { + $model->{$model->getKeyName()} = Str::uuid()->toString(); + } + }); + } + + /** + * Get the value indicating whether the IDs are incrementing. + * + * @return boolean + */ + public function getIncrementing() + { + return false; + } + + /** + * Get the auto-incrementing key type. + * + * @return string + */ + public function getKeyType() + { + return 'string'; + } +} diff --git a/artisan b/artisan new file mode 100755 index 0000000..67a3329 --- /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..6ca3ed0 --- /dev/null +++ b/composer.json @@ -0,0 +1,70 @@ +{ + "name": "laravel/laravel", + "type": "project", + "description": "The Laravel Framework.", + "keywords": ["framework", "laravel"], + "license": "MIT", + "require": { + "php": "^8.0.2", + "doctrine/dbal": "^3.5", + "guzzlehttp/guzzle": "^7.2", + "intervention/image": "^2.7", + "laravel/framework": "^9.19", + "laravel/sanctum": "^3.0", + "laravel/tinker": "^2.7", + "motze92/office365-mail": "^3.0", + "owen-it/laravel-auditing": "^13.0", + "stevebauman/purify": "^5.0" + }, + "require-dev": { + "fakerphp/faker": "^1.9.1", + "laravel/pint": "^1.0", + "laravel/sail": "^1.0.1", + "mockery/mockery": "^1.4.4", + "nunomaduro/collision": "^6.1", + "phpunit/phpunit": "^9.5.10", + "spatie/laravel-ignition": "^1.0" + }, + "autoload": { + "psr-4": { + "App\\": "app/", + "Database\\Factories\\": "database/factories/", + "Database\\Seeders\\": "database/seeders/" + } + }, + "autoload-dev": { + "psr-4": { + "Tests\\": "tests/" + } + }, + "scripts": { + "post-autoload-dump": [ + "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", + "@php artisan package:discover --ansi" + ], + "post-update-cmd": [ + "@php artisan vendor:publish --tag=laravel-assets --ansi --force" + ], + "post-root-package-install": [ + "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" + ], + "post-create-project-cmd": [ + "@php artisan key:generate --ansi" + ] + }, + "extra": { + "laravel": { + "dont-discover": [] + } + }, + "config": { + "optimize-autoloader": true, + "preferred-install": "dist", + "sort-packages": true, + "allow-plugins": { + "pestphp/pest-plugin": true + } + }, + "minimum-stability": "dev", + "prefer-stable": true +} diff --git a/composer.lock b/composer.lock new file mode 100644 index 0000000..2ba10b8 --- /dev/null +++ b/composer.lock @@ -0,0 +1,8558 @@ +{ + "_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": "6b8b3d7dcdc51fcc5ee1e2fe4a9d2b9c", + "packages": [ + { + "name": "brick/math", + "version": "0.10.2", + "source": { + "type": "git", + "url": "https://github.com/brick/math.git", + "reference": "459f2781e1a08d52ee56b0b1444086e038561e3f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/brick/math/zipball/459f2781e1a08d52ee56b0b1444086e038561e3f", + "reference": "459f2781e1a08d52ee56b0b1444086e038561e3f", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.2", + "phpunit/phpunit": "^9.0", + "vimeo/psalm": "4.25.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Brick\\Math\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Arbitrary-precision arithmetic library", + "keywords": [ + "Arbitrary-precision", + "BigInteger", + "BigRational", + "arithmetic", + "bigdecimal", + "bignum", + "brick", + "math" + ], + "support": { + "issues": "https://github.com/brick/math/issues", + "source": "https://github.com/brick/math/tree/0.10.2" + }, + "funding": [ + { + "url": "https://github.com/BenMorel", + "type": "github" + } + ], + "time": "2022-08-10T22:54:19+00:00" + }, + { + "name": "dflydev/dot-access-data", + "version": "v3.0.2", + "source": { + "type": "git", + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "f41715465d65213d644d3141a6a93081be5d3549" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", + "reference": "f41715465d65213d644d3141a6a93081be5d3549", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", + "scrutinizer/ocular": "1.6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Dflydev\\DotAccessData\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" + }, + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com" + } + ], + "description": "Given a deep data structure, access data by dot notation.", + "homepage": "https://github.com/dflydev/dflydev-dot-access-data", + "keywords": [ + "access", + "data", + "dot", + "notation" + ], + "support": { + "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" + }, + "time": "2022-10-27T11:44:00+00:00" + }, + { + "name": "doctrine/cache", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/cache.git", + "reference": "1ca8f21980e770095a31456042471a57bc4c68fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/cache/zipball/1ca8f21980e770095a31456042471a57bc4c68fb", + "reference": "1ca8f21980e770095a31456042471a57bc4c68fb", + "shasum": "" + }, + "require": { + "php": "~7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" + }, + "require-dev": { + "cache/integration-tests": "dev-master", + "doctrine/coding-standard": "^9", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "psr/cache": "^1.0 || ^2.0 || ^3.0", + "symfony/cache": "^4.4 || ^5.4 || ^6", + "symfony/var-exporter": "^4.4 || ^5.4 || ^6" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" + } + }, + "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 Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", + "homepage": "https://www.doctrine-project.org/projects/cache.html", + "keywords": [ + "abstraction", + "apcu", + "cache", + "caching", + "couchdb", + "memcached", + "php", + "redis", + "xcache" + ], + "support": { + "issues": "https://github.com/doctrine/cache/issues", + "source": "https://github.com/doctrine/cache/tree/2.2.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%2Fcache", + "type": "tidelift" + } + ], + "time": "2022-05-20T20:07:39+00:00" + }, + { + "name": "doctrine/dbal", + "version": "3.5.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/dbal.git", + "reference": "63e513cebbbaf96a6795e5c5ee34d205831bfc85" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/63e513cebbbaf96a6795e5c5ee34d205831bfc85", + "reference": "63e513cebbbaf96a6795e5c5ee34d205831bfc85", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2", + "doctrine/cache": "^1.11|^2.0", + "doctrine/deprecations": "^0.5.3|^1", + "doctrine/event-manager": "^1|^2", + "php": "^7.4 || ^8.0", + "psr/cache": "^1|^2|^3", + "psr/log": "^1|^2|^3" + }, + "require-dev": { + "doctrine/coding-standard": "11.0.0", + "jetbrains/phpstorm-stubs": "2022.3", + "phpstan/phpstan": "1.9.2", + "phpstan/phpstan-strict-rules": "^1.4", + "phpunit/phpunit": "9.5.27", + "psalm/plugin-phpunit": "0.18.4", + "squizlabs/php_codesniffer": "3.7.1", + "symfony/cache": "^5.4|^6.0", + "symfony/console": "^4.4|^5.4|^6.0", + "vimeo/psalm": "4.30.0" + }, + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." + }, + "bin": [ + "bin/doctrine-dbal" + ], + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\DBAL\\": "src" + } + }, + "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" + } + ], + "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", + "homepage": "https://www.doctrine-project.org/projects/dbal.html", + "keywords": [ + "abstraction", + "database", + "db2", + "dbal", + "mariadb", + "mssql", + "mysql", + "oci8", + "oracle", + "pdo", + "pgsql", + "postgresql", + "queryobject", + "sasql", + "sql", + "sqlite", + "sqlserver", + "sqlsrv" + ], + "support": { + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/3.5.2" + }, + "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%2Fdbal", + "type": "tidelift" + } + ], + "time": "2022-12-19T08:17:34+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "phpunit/phpunit": "^7.5|^8.5|^9.5", + "psr/log": "^1|^2|^3" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/v1.0.0" + }, + "time": "2022-05-02T15:47:09+00:00" + }, + { + "name": "doctrine/event-manager", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/event-manager.git", + "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/750671534e0241a7c50ea5b43f67e23eb5c96f32", + "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "conflict": { + "doctrine/common": "<2.9" + }, + "require-dev": { + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.8", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^4.28" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "src" + } + }, + "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" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", + "homepage": "https://www.doctrine-project.org/projects/event-manager.html", + "keywords": [ + "event", + "event dispatcher", + "event manager", + "event system", + "events" + ], + "support": { + "issues": "https://github.com/doctrine/event-manager/issues", + "source": "https://github.com/doctrine/event-manager/tree/2.0.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%2Fevent-manager", + "type": "tidelift" + } + ], + "time": "2022-10-12T20:59:15+00:00" + }, + { + "name": "doctrine/inflector", + "version": "2.0.6", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", + "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.3", + "phpunit/phpunit": "^8.5 || ^9.5", + "vimeo/psalm": "^4.25" + }, + "type": "library", + "autoload": { + "psr-4": { + "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/2.0.6" + }, + "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": "2022-10-20T09:10:12+00:00" + }, + { + "name": "doctrine/lexer", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", + "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.0", + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9 || ^10", + "phpstan/phpstan": "^1.3", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^4.11 || ^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "src" + } + }, + "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/2.1.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%2Flexer", + "type": "tidelift" + } + ], + "time": "2022-12-14T08:49:07+00:00" + }, + { + "name": "dragonmantank/cron-expression", + "version": "v3.3.2", + "source": { + "type": "git", + "url": "https://github.com/dragonmantank/cron-expression.git", + "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/782ca5968ab8b954773518e9e49a6f892a34b2a8", + "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0", + "webmozart/assert": "^1.0" + }, + "replace": { + "mtdowling/cron-expression": "^1.0" + }, + "require-dev": { + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.0", + "phpstan/phpstan-webmozart-assert": "^1.0", + "phpunit/phpunit": "^7.0|^8.0|^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cron\\": "src/Cron/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "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/v3.3.2" + }, + "funding": [ + { + "url": "https://github.com/dragonmantank", + "type": "github" + } + ], + "time": "2022-09-10T18:51:20+00:00" + }, + { + "name": "egulias/email-validator", + "version": "3.2.5", + "source": { + "type": "git", + "url": "https://github.com/egulias/EmailValidator.git", + "reference": "b531a2311709443320c786feb4519cfaf94af796" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/b531a2311709443320c786feb4519cfaf94af796", + "reference": "b531a2311709443320c786feb4519cfaf94af796", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^1.2|^2", + "php": ">=7.2", + "symfony/polyfill-intl-idn": "^1.15" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.8|^9.3.3", + "vimeo/psalm": "^4" + }, + "suggest": { + "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.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/3.2.5" + }, + "funding": [ + { + "url": "https://github.com/egulias", + "type": "github" + } + ], + "time": "2023-01-02T17:26:14+00:00" + }, + { + "name": "ezyang/htmlpurifier", + "version": "v4.16.0", + "source": { + "type": "git", + "url": "https://github.com/ezyang/htmlpurifier.git", + "reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/523407fb06eb9e5f3d59889b3978d5bfe94299c8", + "reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8", + "shasum": "" + }, + "require": { + "php": "~5.6.0 || ~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0" + }, + "require-dev": { + "cerdic/css-tidy": "^1.7 || ^2.0", + "simpletest/simpletest": "dev-master" + }, + "suggest": { + "cerdic/css-tidy": "If you want to use the filter 'Filter.ExtractStyleBlocks'.", + "ext-bcmath": "Used for unit conversion and imagecrash protection", + "ext-iconv": "Converts text to and from non-UTF-8 encodings", + "ext-tidy": "Used for pretty-printing HTML" + }, + "type": "library", + "autoload": { + "files": [ + "library/HTMLPurifier.composer.php" + ], + "psr-0": { + "HTMLPurifier": "library/" + }, + "exclude-from-classmap": [ + "/library/HTMLPurifier/Language/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Edward Z. Yang", + "email": "admin@htmlpurifier.org", + "homepage": "http://ezyang.com" + } + ], + "description": "Standards compliant HTML filter written in PHP", + "homepage": "http://htmlpurifier.org/", + "keywords": [ + "html" + ], + "support": { + "issues": "https://github.com/ezyang/htmlpurifier/issues", + "source": "https://github.com/ezyang/htmlpurifier/tree/v4.16.0" + }, + "time": "2022-09-18T07:06:19+00:00" + }, + { + "name": "fruitcake/php-cors", + "version": "v1.2.0", + "source": { + "type": "git", + "url": "https://github.com/fruitcake/php-cors.git", + "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fruitcake/php-cors/zipball/58571acbaa5f9f462c9c77e911700ac66f446d4e", + "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "symfony/http-foundation": "^4.4|^5.4|^6" + }, + "require-dev": { + "phpstan/phpstan": "^1.4", + "phpunit/phpunit": "^9", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "Fruitcake\\Cors\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fruitcake", + "homepage": "https://fruitcake.nl" + }, + { + "name": "Barryvdh", + "email": "barryvdh@gmail.com" + } + ], + "description": "Cross-origin resource sharing library for the Symfony HttpFoundation", + "homepage": "https://github.com/fruitcake/php-cors", + "keywords": [ + "cors", + "laravel", + "symfony" + ], + "support": { + "issues": "https://github.com/fruitcake/php-cors/issues", + "source": "https://github.com/fruitcake/php-cors/tree/v1.2.0" + }, + "funding": [ + { + "url": "https://fruitcake.nl", + "type": "custom" + }, + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2022-02-20T15:07:15+00:00" + }, + { + "name": "graham-campbell/result-type", + "version": "v1.1.0", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/a878d45c1914464426dc94da61c9e1d36ae262a8", + "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.28 || ^9.5.21" + }, + "type": "library", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2022-07-30T15:56:11+00:00" + }, + { + "name": "guzzlehttp/guzzle", + "version": "7.5.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/promises": "^1.5", + "guzzlehttp/psr7": "^1.9 || ^2.4", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.1", + "ext-curl": "*", + "php-http/client-integration-tests": "^3.0", + "phpunit/phpunit": "^8.5.29 || ^9.5.23", + "psr/log": "^1.1 || ^2.0 || ^3.0" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", + "psr/log": "Required for using the Log middleware" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "7.5-dev" + } + }, + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle is a PHP HTTP client library", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "psr-18", + "psr-7", + "rest", + "web service" + ], + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.5.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", + "type": "tidelift" + } + ], + "time": "2022-08-28T15:39:27+00:00" + }, + { + "name": "guzzlehttp/promises", + "version": "1.5.2", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "b94b2807d85443f9719887892882d0329d1e2598" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", + "reference": "b94b2807d85443f9719887892882d0329d1e2598", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "symfony/phpunit-bridge": "^4.4 || ^5.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle promises library", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/1.5.2" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", + "type": "tidelift" + } + ], + "time": "2022-08-28T14:55:35+00:00" + }, + { + "name": "guzzlehttp/psr7", + "version": "2.4.3", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "67c26b443f348a51926030c83481b85718457d3d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", + "reference": "67c26b443f348a51926030c83481b85718457d3d", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0", + "ralouphie/getallheaders": "^3.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.1", + "http-interop/http-factory-tests": "^0.9", + "phpunit/phpunit": "^8.5.29 || ^9.5.23" + }, + "suggest": { + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "2.4-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "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/2.4.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", + "type": "tidelift" + } + ], + "time": "2022-10-26T14:07:24+00:00" + }, + { + "name": "intervention/image", + "version": "2.7.2", + "source": { + "type": "git", + "url": "https://github.com/Intervention/image.git", + "reference": "04be355f8d6734c826045d02a1079ad658322dad" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Intervention/image/zipball/04be355f8d6734c826045d02a1079ad658322dad", + "reference": "04be355f8d6734c826045d02a1079ad658322dad", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "guzzlehttp/psr7": "~1.1 || ^2.0", + "php": ">=5.4.0" + }, + "require-dev": { + "mockery/mockery": "~0.9.2", + "phpunit/phpunit": "^4.8 || ^5.7 || ^7.5.15" + }, + "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@intervention.io", + "homepage": "https://intervention.io/" + } + ], + "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/2.7.2" + }, + "funding": [ + { + "url": "https://paypal.me/interventionio", + "type": "custom" + }, + { + "url": "https://github.com/Intervention", + "type": "github" + } + ], + "time": "2022-05-21T17:30:32+00:00" + }, + { + "name": "laravel/framework", + "version": "v9.47.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/framework.git", + "reference": "92810d88f9a4252095a56c05541b07940363367c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/framework/zipball/92810d88f9a4252095a56c05541b07940363367c", + "reference": "92810d88f9a4252095a56c05541b07940363367c", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^2.0", + "dragonmantank/cron-expression": "^3.3.2", + "egulias/email-validator": "^3.2.1", + "ext-mbstring": "*", + "ext-openssl": "*", + "fruitcake/php-cors": "^1.2", + "laravel/serializable-closure": "^1.2.2", + "league/commonmark": "^2.2.1", + "league/flysystem": "^3.8.0", + "monolog/monolog": "^2.0", + "nesbot/carbon": "^2.62.1", + "nunomaduro/termwind": "^1.13", + "php": "^8.0.2", + "psr/container": "^1.1.1|^2.0.1", + "psr/log": "^1.0|^2.0|^3.0", + "psr/simple-cache": "^1.0|^2.0|^3.0", + "ramsey/uuid": "^4.7", + "symfony/console": "^6.0.9", + "symfony/error-handler": "^6.0", + "symfony/finder": "^6.0", + "symfony/http-foundation": "^6.0", + "symfony/http-kernel": "^6.0", + "symfony/mailer": "^6.0", + "symfony/mime": "^6.0", + "symfony/process": "^6.0", + "symfony/routing": "^6.0", + "symfony/uid": "^6.0", + "symfony/var-dumper": "^6.0", + "tijsverkoyen/css-to-inline-styles": "^2.2.5", + "vlucas/phpdotenv": "^5.4.1", + "voku/portable-ascii": "^2.0" + }, + "conflict": { + "tightenco/collect": "<5.5.33" + }, + "provide": { + "psr/container-implementation": "1.1|2.0", + "psr/simple-cache-implementation": "1.0|2.0|3.0" + }, + "replace": { + "illuminate/auth": "self.version", + "illuminate/broadcasting": "self.version", + "illuminate/bus": "self.version", + "illuminate/cache": "self.version", + "illuminate/collections": "self.version", + "illuminate/conditionable": "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/macroable": "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/testing": "self.version", + "illuminate/translation": "self.version", + "illuminate/validation": "self.version", + "illuminate/view": "self.version" + }, + "require-dev": { + "ably/ably-php": "^1.0", + "aws/aws-sdk-php": "^3.235.5", + "doctrine/dbal": "^2.13.3|^3.1.4", + "fakerphp/faker": "^1.21", + "guzzlehttp/guzzle": "^7.5", + "league/flysystem-aws-s3-v3": "^3.0", + "league/flysystem-ftp": "^3.0", + "league/flysystem-path-prefixing": "^3.3", + "league/flysystem-read-only": "^3.3", + "league/flysystem-sftp-v3": "^3.0", + "mockery/mockery": "^1.5.1", + "orchestra/testbench-core": "^7.16", + "pda/pheanstalk": "^4.0", + "phpstan/phpdoc-parser": "^1.15", + "phpstan/phpstan": "^1.4.7", + "phpunit/phpunit": "^9.5.8", + "predis/predis": "^1.1.9|^2.0.2", + "symfony/cache": "^6.0" + }, + "suggest": { + "ably/ably-php": "Required to use the Ably broadcast driver (^1.0).", + "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.235.5).", + "brianium/paratest": "Required to run tests in parallel (^6.0).", + "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.13.3|^3.1.4).", + "ext-bcmath": "Required to use the multiple_of validation rule.", + "ext-ftp": "Required to use the Flysystem FTP driver.", + "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", + "ext-memcached": "Required to use the memcache cache driver.", + "ext-pcntl": "Required to use all features of the queue worker.", + "ext-posix": "Required to use all features of the queue worker.", + "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", + "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", + "filp/whoops": "Required for friendly error pages in development (^2.14.3).", + "guzzlehttp/guzzle": "Required to use the HTTP Client and the ping methods on schedules (^7.5).", + "laravel/tinker": "Required to use the tinker console command (^2.0).", + "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).", + "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).", + "league/flysystem-path-prefixing": "Required to use the scoped driver (^3.3).", + "league/flysystem-read-only": "Required to use read-only disks (^3.3)", + "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).", + "mockery/mockery": "Required to use mocking (^1.5.1).", + "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", + "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", + "phpunit/phpunit": "Required to use assertions and run tests (^9.5.8).", + "predis/predis": "Required to use the predis connector (^1.1.9|^2.0.2).", + "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", + "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^6.0|^7.0).", + "symfony/cache": "Required to PSR-6 cache bridge (^6.0).", + "symfony/filesystem": "Required to enable support for relative symbolic links (^6.0).", + "symfony/http-client": "Required to enable support for the Symfony API mail transports (^6.0).", + "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^6.0).", + "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^6.0).", + "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.x-dev" + } + }, + "autoload": { + "files": [ + "src/Illuminate/Collections/helpers.php", + "src/Illuminate/Events/functions.php", + "src/Illuminate/Foundation/helpers.php", + "src/Illuminate/Support/helpers.php" + ], + "psr-4": { + "Illuminate\\": "src/Illuminate/", + "Illuminate\\Support\\": [ + "src/Illuminate/Macroable/", + "src/Illuminate/Collections/", + "src/Illuminate/Conditionable/" + ] + } + }, + "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": "2023-01-10T16:10:09+00:00" + }, + { + "name": "laravel/sanctum", + "version": "v3.2.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/sanctum.git", + "reference": "bf5cb6c256d19a108bdfaca121b2594da063fbd5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/sanctum/zipball/bf5cb6c256d19a108bdfaca121b2594da063fbd5", + "reference": "bf5cb6c256d19a108bdfaca121b2594da063fbd5", + "shasum": "" + }, + "require": { + "ext-json": "*", + "illuminate/console": "^9.21|^10.0", + "illuminate/contracts": "^9.21|^10.0", + "illuminate/database": "^9.21|^10.0", + "illuminate/support": "^9.21|^10.0", + "php": "^8.0.2" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "orchestra/testbench": "^7.0|^8.0", + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Sanctum\\SanctumServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Sanctum\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Laravel Sanctum provides a featherweight authentication system for SPAs and simple APIs.", + "keywords": [ + "auth", + "laravel", + "sanctum" + ], + "support": { + "issues": "https://github.com/laravel/sanctum/issues", + "source": "https://github.com/laravel/sanctum" + }, + "time": "2023-01-06T15:43:53+00:00" + }, + { + "name": "laravel/serializable-closure", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/laravel/serializable-closure.git", + "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/47afb7fae28ed29057fdca37e16a84f90cc62fae", + "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae", + "shasum": "" + }, + "require": { + "php": "^7.3|^8.0" + }, + "require-dev": { + "nesbot/carbon": "^2.61", + "pestphp/pest": "^1.21.3", + "phpstan/phpstan": "^1.8.2", + "symfony/var-dumper": "^5.4.11" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Laravel\\SerializableClosure\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + }, + { + "name": "Nuno Maduro", + "email": "nuno@laravel.com" + } + ], + "description": "Laravel Serializable Closure provides an easy and secure way to serialize closures in PHP.", + "keywords": [ + "closure", + "laravel", + "serializable" + ], + "support": { + "issues": "https://github.com/laravel/serializable-closure/issues", + "source": "https://github.com/laravel/serializable-closure" + }, + "time": "2022-09-08T13:45:54+00:00" + }, + { + "name": "laravel/tinker", + "version": "v2.8.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/tinker.git", + "reference": "74d0b287cc4ae65d15c368dd697aae71d62a73ad" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/tinker/zipball/74d0b287cc4ae65d15c368dd697aae71d62a73ad", + "reference": "74d0b287cc4ae65d15c368dd697aae71d62a73ad", + "shasum": "" + }, + "require": { + "illuminate/console": "^6.0|^7.0|^8.0|^9.0|^10.0", + "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0", + "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0", + "php": "^7.2.5|^8.0", + "psy/psysh": "^0.10.4|^0.11.1", + "symfony/var-dumper": "^4.3.4|^5.0|^6.0" + }, + "require-dev": { + "mockery/mockery": "~1.3.3|^1.4.2", + "phpunit/phpunit": "^8.5.8|^9.3.3" + }, + "suggest": { + "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0|^9.0|^10.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-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/v2.8.0" + }, + "time": "2023-01-10T18:03:30+00:00" + }, + { + "name": "league/commonmark", + "version": "2.3.8", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/commonmark.git", + "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/c493585c130544c4e91d2e0e131e6d35cb0cbc47", + "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "league/config": "^1.1.1", + "php": "^7.4 || ^8.0", + "psr/event-dispatcher": "^1.0", + "symfony/deprecation-contracts": "^2.1 || ^3.0", + "symfony/polyfill-php80": "^1.16" + }, + "require-dev": { + "cebe/markdown": "^1.0", + "commonmark/cmark": "0.30.0", + "commonmark/commonmark.js": "0.30.0", + "composer/package-versions-deprecated": "^1.8", + "embed/embed": "^4.4", + "erusev/parsedown": "^1.0", + "ext-json": "*", + "github/gfm": "0.29.0", + "michelf/php-markdown": "^1.4 || ^2.0", + "nyholm/psr7": "^1.5", + "phpstan/phpstan": "^1.8.2", + "phpunit/phpunit": "^9.5.21", + "scrutinizer/ocular": "^1.8.1", + "symfony/finder": "^5.3 | ^6.0", + "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", + "unleashedtech/php-coding-standard": "^3.1.1", + "vimeo/psalm": "^4.24.0 || ^5.0.0" + }, + "suggest": { + "symfony/yaml": "v2.3+ required if using the Front Matter extension" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.4-dev" + } + }, + "autoload": { + "psr-4": { + "League\\CommonMark\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", + "homepage": "https://commonmark.thephpleague.com", + "keywords": [ + "commonmark", + "flavored", + "gfm", + "github", + "github-flavored", + "markdown", + "md", + "parser" + ], + "support": { + "docs": "https://commonmark.thephpleague.com/", + "forum": "https://github.com/thephpleague/commonmark/discussions", + "issues": "https://github.com/thephpleague/commonmark/issues", + "rss": "https://github.com/thephpleague/commonmark/releases.atom", + "source": "https://github.com/thephpleague/commonmark" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/commonmark", + "type": "tidelift" + } + ], + "time": "2022-12-10T16:02:17+00:00" + }, + { + "name": "league/config", + "version": "v1.2.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/config.git", + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^3.0.1", + "nette/schema": "^1.2", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.8.2", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Define configuration arrays with strict schemas and access values with dot notation", + "homepage": "https://config.thephpleague.com", + "keywords": [ + "array", + "config", + "configuration", + "dot", + "dot-access", + "nested", + "schema" + ], + "support": { + "docs": "https://config.thephpleague.com/", + "issues": "https://github.com/thephpleague/config/issues", + "rss": "https://github.com/thephpleague/config/releases.atom", + "source": "https://github.com/thephpleague/config" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + } + ], + "time": "2022-12-11T20:36:23+00:00" + }, + { + "name": "league/flysystem", + "version": "3.12.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem.git", + "reference": "b934123c1f11ada6363d057d691e3065fa6d6d49" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/b934123c1f11ada6363d057d691e3065fa6d6d49", + "reference": "b934123c1f11ada6363d057d691e3065fa6d6d49", + "shasum": "" + }, + "require": { + "league/mime-type-detection": "^1.0.0", + "php": "^8.0.2" + }, + "conflict": { + "aws/aws-sdk-php": "3.209.31 || 3.210.0", + "guzzlehttp/guzzle": "<7.0", + "guzzlehttp/ringphp": "<1.1.1", + "phpseclib/phpseclib": "3.0.15", + "symfony/http-client": "<5.2" + }, + "require-dev": { + "async-aws/s3": "^1.5", + "async-aws/simple-s3": "^1.1", + "aws/aws-sdk-php": "^3.220.0", + "composer/semver": "^3.0", + "ext-fileinfo": "*", + "ext-ftp": "*", + "ext-zip": "*", + "friendsofphp/php-cs-fixer": "^3.5", + "google/cloud-storage": "^1.23", + "microsoft/azure-storage-blob": "^1.1", + "phpseclib/phpseclib": "^3.0.14", + "phpstan/phpstan": "^0.12.26", + "phpunit/phpunit": "^9.5.11", + "sabre/dav": "^4.3.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\Flysystem\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frankdejonge.nl" + } + ], + "description": "File storage abstraction for PHP", + "keywords": [ + "WebDAV", + "aws", + "cloud", + "file", + "files", + "filesystem", + "filesystems", + "ftp", + "s3", + "sftp", + "storage" + ], + "support": { + "issues": "https://github.com/thephpleague/flysystem/issues", + "source": "https://github.com/thephpleague/flysystem/tree/3.12.1" + }, + "funding": [ + { + "url": "https://ecologi.com/frankdejonge", + "type": "custom" + }, + { + "url": "https://github.com/frankdejonge", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/flysystem", + "type": "tidelift" + } + ], + "time": "2023-01-06T16:34:48+00:00" + }, + { + "name": "league/mime-type-detection", + "version": "1.11.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/mime-type-detection.git", + "reference": "ff6248ea87a9f116e78edd6002e39e5128a0d4dd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/ff6248ea87a9f116e78edd6002e39e5128a0d4dd", + "reference": "ff6248ea87a9f116e78edd6002e39e5128a0d4dd", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.2", + "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.11.0" + }, + "funding": [ + { + "url": "https://github.com/frankdejonge", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/flysystem", + "type": "tidelift" + } + ], + "time": "2022-04-17T13:12:02+00:00" + }, + { + "name": "microsoft/microsoft-graph", + "version": "1.85.0", + "source": { + "type": "git", + "url": "https://github.com/microsoftgraph/msgraph-sdk-php.git", + "reference": "e1759262669941873647d0036956239bffb06a2d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/microsoftgraph/msgraph-sdk-php/zipball/e1759262669941873647d0036956239bffb06a2d", + "reference": "e1759262669941873647d0036956239bffb06a2d", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/guzzle": "^6.0 || ^7.0", + "php": "^8.0 || ^7.3", + "psr/http-message": "^1.0" + }, + "require-dev": { + "mikey179/vfsstream": "^1.2", + "phpstan/phpstan": "^0.12.90 || ^1.0.0", + "phpunit/phpunit": "^8.0 || ^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Microsoft\\Graph\\": "src/", + "Beta\\Microsoft\\Graph\\": "src/Beta/Microsoft/Graph/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Microsoft Graph Client Tooling", + "email": "graphtooling@service.microsoft.com", + "role": "Developer" + } + ], + "description": "The Microsoft Graph SDK for PHP", + "homepage": "https://developer.microsoft.com/en-us/graph", + "support": { + "issues": "https://github.com/microsoftgraph/msgraph-sdk-php/issues", + "source": "https://github.com/microsoftgraph/msgraph-sdk-php/tree/1.85.0" + }, + "time": "2023-01-07T04:00:48+00:00" + }, + { + "name": "monolog/monolog", + "version": "2.8.0", + "source": { + "type": "git", + "url": "https://github.com/Seldaek/monolog.git", + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/720488632c590286b88b80e62aa3d3d551ad4a50", + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50", + "shasum": "" + }, + "require": { + "php": ">=7.2", + "psr/log": "^1.0.1 || ^2.0 || ^3.0" + }, + "provide": { + "psr/log-implementation": "1.0.0 || 2.0.0 || 3.0.0" + }, + "require-dev": { + "aws/aws-sdk-php": "^2.4.9 || ^3.0", + "doctrine/couchdb": "~1.0@dev", + "elasticsearch/elasticsearch": "^7 || ^8", + "ext-json": "*", + "graylog2/gelf-php": "^1.4.2", + "guzzlehttp/guzzle": "^7.4", + "guzzlehttp/psr7": "^2.2", + "mongodb/mongodb": "^1.8", + "php-amqplib/php-amqplib": "~2.4 || ^3", + "phpspec/prophecy": "^1.15", + "phpstan/phpstan": "^0.12.91", + "phpunit/phpunit": "^8.5.14", + "predis/predis": "^1.1 || ^2.0", + "rollbar/rollbar": "^1.3 || ^2 || ^3", + "ruflin/elastica": "^7", + "swiftmailer/swiftmailer": "^5.3|^6.0", + "symfony/mailer": "^5.4 || ^6", + "symfony/mime": "^5.4 || ^6" + }, + "suggest": { + "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", + "doctrine/couchdb": "Allow sending log messages to a CouchDB server", + "elasticsearch/elasticsearch": "Allow sending log messages to an Elasticsearch server via official client", + "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", + "ext-curl": "Required to send log messages using the IFTTTHandler, the LogglyHandler, the SendGridHandler, the SlackWebhookHandler or the TelegramBotHandler", + "ext-mbstring": "Allow to work properly with unicode symbols", + "ext-mongodb": "Allow sending log messages to a MongoDB server (via driver)", + "ext-openssl": "Required to send log messages using SSL", + "ext-sockets": "Allow sending log messages to a Syslog server (via UDP driver)", + "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", + "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", + "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", + "rollbar/rollbar": "Allow sending log messages to Rollbar", + "ruflin/elastica": "Allow sending log messages to an Elastic Search server" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Monolog\\": "src/Monolog" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "https://seld.be" + } + ], + "description": "Sends your logs to files, sockets, inboxes, databases and various web services", + "homepage": "https://github.com/Seldaek/monolog", + "keywords": [ + "log", + "logging", + "psr-3" + ], + "support": { + "issues": "https://github.com/Seldaek/monolog/issues", + "source": "https://github.com/Seldaek/monolog/tree/2.8.0" + }, + "funding": [ + { + "url": "https://github.com/Seldaek", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/monolog/monolog", + "type": "tidelift" + } + ], + "time": "2022-07-24T11:55:47+00:00" + }, + { + "name": "motze92/office365-mail", + "version": "3.1-beta", + "source": { + "type": "git", + "url": "https://github.com/motze92/office365-mail.git", + "reference": "44d419d904e85ca77b72529a0d3d36eaef8dce6c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/motze92/office365-mail/zipball/44d419d904e85ca77b72529a0d3d36eaef8dce6c", + "reference": "44d419d904e85ca77b72529a0d3d36eaef8dce6c", + "shasum": "" + }, + "require": { + "microsoft/microsoft-graph": "^1.5", + "php": "^7.1.3 || ^8" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Office365Mail\\Office365MailServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Office365Mail\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Moritz Mair", + "homepage": "https://github.com/motze92", + "role": "Developer" + } + ], + "description": "Office365 transport for Laravel", + "support": { + "issues": "https://github.com/motze92/office365-mail/issues", + "source": "https://github.com/motze92/office365-mail/tree/3.1-beta" + }, + "time": "2022-11-02T18:08:53+00:00" + }, + { + "name": "nesbot/carbon", + "version": "2.65.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "09acf64155c16dc6f580f36569ae89344e9734a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/09acf64155c16dc6f580f36569ae89344e9734a3", + "reference": "09acf64155c16dc6f580f36569ae89344e9734a3", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1.8 || ^8.0", + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.16", + "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" + }, + "require-dev": { + "doctrine/dbal": "^2.0 || ^3.1.4", + "doctrine/orm": "^2.7", + "friendsofphp/php-cs-fixer": "^3.0", + "kylekatarnls/multi-tester": "^2.0", + "ondrejmirtes/better-reflection": "*", + "phpmd/phpmd": "^2.9", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.99 || ^1.7.14", + "phpunit/php-file-iterator": "^2.0.5 || ^3.0.6", + "phpunit/phpunit": "^7.5.20 || ^8.5.26 || ^9.5.20", + "squizlabs/php_codesniffer": "^3.4" + }, + "bin": [ + "bin/carbon" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-3.x": "3.x-dev", + "dev-master": "2.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": "https://markido.com" + }, + { + "name": "kylekatarnls", + "homepage": "https://github.com/kylekatarnls" + } + ], + "description": "An API extension for DateTime that supports 281 different languages.", + "homepage": "https://carbon.nesbot.com", + "keywords": [ + "date", + "datetime", + "time" + ], + "support": { + "docs": "https://carbon.nesbot.com/docs", + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, + "funding": [ + { + "url": "https://github.com/sponsors/kylekatarnls", + "type": "github" + }, + { + "url": "https://opencollective.com/Carbon#sponsor", + "type": "opencollective" + }, + { + "url": "https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme", + "type": "tidelift" + } + ], + "time": "2023-01-06T15:55:01+00:00" + }, + { + "name": "nette/schema", + "version": "v1.2.3", + "source": { + "type": "git", + "url": "https://github.com/nette/schema.git", + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "shasum": "" + }, + "require": { + "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", + "php": ">=7.1 <8.3" + }, + "require-dev": { + "nette/tester": "^2.3 || ^2.4", + "phpstan/phpstan-nette": "^1.0", + "tracy/tracy": "^2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "📐 Nette Schema: validating data structures against a given Schema.", + "homepage": "https://nette.org", + "keywords": [ + "config", + "nette" + ], + "support": { + "issues": "https://github.com/nette/schema/issues", + "source": "https://github.com/nette/schema/tree/v1.2.3" + }, + "time": "2022-10-13T01:24:26+00:00" + }, + { + "name": "nette/utils", + "version": "v3.2.8", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", + "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", + "shasum": "" + }, + "require": { + "php": ">=7.2 <8.3" + }, + "conflict": { + "nette/di": "<3.0.6" + }, + "require-dev": { + "nette/tester": "~2.0", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.3" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", + "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", + "ext-json": "to use Nette\\Utils\\Json", + "ext-mbstring": "to use Strings::lower() etc...", + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", + "ext-xml": "to use Strings::length() etc. when mbstring is not available" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", + "homepage": "https://nette.org", + "keywords": [ + "array", + "core", + "datetime", + "images", + "json", + "nette", + "paginator", + "password", + "slugify", + "string", + "unicode", + "utf-8", + "utility", + "validation" + ], + "support": { + "issues": "https://github.com/nette/utils/issues", + "source": "https://github.com/nette/utils/tree/v3.2.8" + }, + "time": "2022-09-12T23:36:20+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v4.15.2", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", + "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", + "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.15.2" + }, + "time": "2022-11-12T15:38:23+00:00" + }, + { + "name": "nunomaduro/termwind", + "version": "v1.15.0", + "source": { + "type": "git", + "url": "https://github.com/nunomaduro/termwind.git", + "reference": "594ab862396c16ead000de0c3c38f4a5cbe1938d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/594ab862396c16ead000de0c3c38f4a5cbe1938d", + "reference": "594ab862396c16ead000de0c3c38f4a5cbe1938d", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.0", + "symfony/console": "^5.3.0|^6.0.0" + }, + "require-dev": { + "ergebnis/phpstan-rules": "^1.0.", + "illuminate/console": "^8.0|^9.0", + "illuminate/support": "^8.0|^9.0", + "laravel/pint": "^1.0.0", + "pestphp/pest": "^1.21.0", + "pestphp/pest-plugin-mock": "^1.0", + "phpstan/phpstan": "^1.4.6", + "phpstan/phpstan-strict-rules": "^1.1.0", + "symfony/var-dumper": "^5.2.7|^6.0.0", + "thecodingmachine/phpstan-strict-rules": "^1.0.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Termwind\\Laravel\\TermwindServiceProvider" + ] + } + }, + "autoload": { + "files": [ + "src/Functions.php" + ], + "psr-4": { + "Termwind\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nuno Maduro", + "email": "enunomaduro@gmail.com" + } + ], + "description": "Its like Tailwind CSS, but for the console.", + "keywords": [ + "cli", + "console", + "css", + "package", + "php", + "style" + ], + "support": { + "issues": "https://github.com/nunomaduro/termwind/issues", + "source": "https://github.com/nunomaduro/termwind/tree/v1.15.0" + }, + "funding": [ + { + "url": "https://www.paypal.com/paypalme/enunomaduro", + "type": "custom" + }, + { + "url": "https://github.com/nunomaduro", + "type": "github" + }, + { + "url": "https://github.com/xiCO2k", + "type": "github" + } + ], + "time": "2022-12-20T19:00:15+00:00" + }, + { + "name": "owen-it/laravel-auditing", + "version": "v13.0.5", + "source": { + "type": "git", + "url": "https://github.com/owen-it/laravel-auditing.git", + "reference": "240b29a1e6c40c02ed1fb9b4c01ef94d6d4ff7c0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/owen-it/laravel-auditing/zipball/240b29a1e6c40c02ed1fb9b4c01ef94d6d4ff7c0", + "reference": "240b29a1e6c40c02ed1fb9b4c01ef94d6d4ff7c0", + "shasum": "" + }, + "require": { + "ext-json": "*", + "illuminate/console": "^7.0|^8.0|^9.0", + "illuminate/database": "^7.0|^8.0|^9.0", + "illuminate/filesystem": "^7.0|^8.0|^9.0", + "php": "^7.3|^8.0" + }, + "require-dev": { + "laravel/legacy-factories": "*", + "mockery/mockery": "^1.0", + "orchestra/testbench": "^5.0|^6.0|^7.0", + "phpunit/phpunit": "^9.0" + }, + "suggest": { + "laravelista/lumen-vendor-publish": "Needed to publish the package configuration in Lumen" + }, + "type": "package", + "extra": { + "branch-alias": { + "dev-master": "v13-dev" + }, + "laravel": { + "providers": [ + "OwenIt\\Auditing\\AuditingServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "OwenIt\\Auditing\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Antério Vieira", + "email": "anteriovieira@gmail.com" + }, + { + "name": "Raphael França", + "email": "raphaelfrancabsb@gmail.com" + }, + { + "name": "Morten D. Hansen", + "email": "morten@visia.dk" + } + ], + "description": "Audit changes of your Eloquent models in Laravel/Lumen", + "homepage": "http://laravel-auditing.com", + "keywords": [ + "Accountability", + "Audit", + "auditing", + "changes", + "eloquent", + "history", + "laravel", + "log", + "logging", + "lumen", + "observer", + "record", + "revision", + "tracking" + ], + "support": { + "issues": "https://github.com/owen-it/laravel-auditing/issues", + "source": "https://github.com/owen-it/laravel-auditing" + }, + "time": "2022-07-29T11:21:26+00:00" + }, + { + "name": "phpoption/phpoption", + "version": "1.9.0", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", + "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8", + "phpunit/phpunit": "^8.5.28 || ^9.5.21" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": true + }, + "branch-alias": { + "dev-master": "1.9-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", + "homepage": "https://github.com/schmittjoh" + }, + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "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.9.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "time": "2022-07-30T15:51:26+00:00" + }, + { + "name": "psr/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "shasum": "" + }, + "require": { + "php": ">=8.0.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": "https://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "support": { + "source": "https://github.com/php-fig/cache/tree/3.0.0" + }, + "time": "2021-02-03T23:26:27+00:00" + }, + { + "name": "psr/container", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://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/2.0.2" + }, + "time": "2021-11-05T16:47:00+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client/tree/master" + }, + "time": "2020-06-29T06:28:15+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": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001", + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://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/3.0.0" + }, + "time": "2021-07-14T16:46:02+00:00" + }, + { + "name": "psr/simple-cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://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/3.0.0" + }, + "time": "2021-10-29T13:26:27+00:00" + }, + { + "name": "psy/psysh", + "version": "v0.11.10", + "source": { + "type": "git", + "url": "https://github.com/bobthecow/psysh.git", + "reference": "e9eadffbed9c9deb5426fd107faae0452bf20a36" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/e9eadffbed9c9deb5426fd107faae0452bf20a36", + "reference": "e9eadffbed9c9deb5426fd107faae0452bf20a36", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "nikic/php-parser": "^4.0 || ^3.1", + "php": "^8.0 || ^7.0.8", + "symfony/console": "^6.0 || ^5.0 || ^4.0 || ^3.4", + "symfony/var-dumper": "^6.0 || ^5.0 || ^4.0 || ^3.4" + }, + "conflict": { + "symfony/console": "4.4.37 || 5.3.14 || 5.3.15 || 5.4.3 || 5.4.4 || 6.0.3 || 6.0.4" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.2" + }, + "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." + }, + "bin": [ + "bin/psysh" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.11.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.11.10" + }, + "time": "2022-12-23T17:47:18+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/collection", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/ramsey/collection.git", + "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ramsey/collection/zipball/a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", + "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "captainhook/plugin-composer": "^5.3", + "ergebnis/composer-normalize": "^2.28.3", + "fakerphp/faker": "^1.21", + "hamcrest/hamcrest-php": "^2.0", + "jangregor/phpstan-prophecy": "^1.0", + "mockery/mockery": "^1.5", + "php-parallel-lint/php-console-highlighter": "^1.0", + "php-parallel-lint/php-parallel-lint": "^1.3", + "phpcsstandards/phpcsutils": "^1.0.0-rc1", + "phpspec/prophecy-phpunit": "^2.0", + "phpstan/extension-installer": "^1.2", + "phpstan/phpstan": "^1.9", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5", + "psalm/plugin-mockery": "^1.1", + "psalm/plugin-phpunit": "^0.18.4", + "ramsey/coding-standard": "^2.0.3", + "ramsey/conventional-commits": "^1.3", + "vimeo/psalm": "^5.4" + }, + "type": "library", + "extra": { + "captainhook": { + "force-install": true + }, + "ramsey/conventional-commits": { + "configFile": "conventional-commits.json" + } + }, + "autoload": { + "psr-4": { + "Ramsey\\Collection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ben Ramsey", + "email": "ben@benramsey.com", + "homepage": "https://benramsey.com" + } + ], + "description": "A PHP library for representing and manipulating collections.", + "keywords": [ + "array", + "collection", + "hash", + "map", + "queue", + "set" + ], + "support": { + "issues": "https://github.com/ramsey/collection/issues", + "source": "https://github.com/ramsey/collection/tree/2.0.0" + }, + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", + "type": "tidelift" + } + ], + "time": "2022-12-31T21:50:55+00:00" + }, + { + "name": "ramsey/uuid", + "version": "4.7.1", + "source": { + "type": "git", + "url": "https://github.com/ramsey/uuid.git", + "reference": "a1acf96007170234a8399586a6e2ab8feba109d1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/a1acf96007170234a8399586a6e2ab8feba109d1", + "reference": "a1acf96007170234a8399586a6e2ab8feba109d1", + "shasum": "" + }, + "require": { + "brick/math": "^0.8.8 || ^0.9 || ^0.10", + "ext-json": "*", + "php": "^8.0", + "ramsey/collection": "^1.2 || ^2.0" + }, + "replace": { + "rhumsaa/uuid": "self.version" + }, + "require-dev": { + "captainhook/captainhook": "^5.10", + "captainhook/plugin-composer": "^5.3", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "doctrine/annotations": "^1.8", + "ergebnis/composer-normalize": "^2.15", + "mockery/mockery": "^1.3", + "paragonie/random-lib": "^2", + "php-mock/php-mock": "^2.2", + "php-mock/php-mock-mockery": "^1.3", + "php-parallel-lint/php-parallel-lint": "^1.1", + "phpbench/phpbench": "^1.0", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^8.5 || ^9", + "ramsey/composer-repl": "^1.4", + "slevomat/coding-standard": "^8.4", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.9" + }, + "suggest": { + "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", + "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", + "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", + "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", + "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." + }, + "type": "library", + "extra": { + "captainhook": { + "force-install": true + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Ramsey\\Uuid\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", + "keywords": [ + "guid", + "identifier", + "uuid" + ], + "support": { + "issues": "https://github.com/ramsey/uuid/issues", + "source": "https://github.com/ramsey/uuid/tree/4.7.1" + }, + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid", + "type": "tidelift" + } + ], + "time": "2022-12-31T22:20:34+00:00" + }, + { + "name": "stevebauman/purify", + "version": "v5.1.0", + "source": { + "type": "git", + "url": "https://github.com/stevebauman/purify.git", + "reference": "644cd067481e967cd22908bef2e4a06903f31177" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/stevebauman/purify/zipball/644cd067481e967cd22908bef2e4a06903f31177", + "reference": "644cd067481e967cd22908bef2e4a06903f31177", + "shasum": "" + }, + "require": { + "ezyang/htmlpurifier": "^4.9.0", + "illuminate/contracts": "~7.0|~8.0|~9.0", + "illuminate/support": "~7.0|~8.0|~9.0", + "php": ">=7.4" + }, + "require-dev": { + "orchestra/testbench": "~5.0|~6.0|~7.0", + "phpunit/phpunit": "~8.0|~9.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Stevebauman\\Purify\\PurifyServiceProvider" + ], + "aliases": { + "Purify": "Stevebauman\\Purify\\Facades\\Purify" + } + } + }, + "autoload": { + "psr-4": { + "Stevebauman\\Purify\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Steve Bauman", + "email": "steven_bauman@outlook.com" + } + ], + "description": "An HTML Purifier / Sanitizer for Laravel", + "keywords": [ + "Purifier", + "clean", + "cleaner", + "html", + "laravel", + "purification", + "purify" + ], + "support": { + "issues": "https://github.com/stevebauman/purify/issues", + "source": "https://github.com/stevebauman/purify/tree/v5.1.0" + }, + "time": "2023-01-10T04:26:07+00:00" + }, + { + "name": "symfony/console", + "version": "v6.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "0f579613e771dba2dbb8211c382342a641f5da06" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/0f579613e771dba2dbb8211c382342a641f5da06", + "reference": "0f579613e771dba2dbb8211c382342a641f5da06", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/string": "^5.4|^6.0" + }, + "conflict": { + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/lock": "^5.4|^6.0", + "symfony/process": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.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", + "keywords": [ + "cli", + "command line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v6.2.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-28T14:26:22+00:00" + }, + { + "name": "symfony/css-selector", + "version": "v6.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/css-selector.git", + "reference": "ab1df4ba3ded7b724766ba3a6e0eca0418e74f80" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/ab1df4ba3ded7b724766ba3a6e0eca0418e74f80", + "reference": "ab1df4ba3ded7b724766ba3a6e0eca0418e74f80", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "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/v6.2.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-28T14:26:22+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3", + "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.3-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/v3.2.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-25T10:21:52+00:00" + }, + { + "name": "symfony/error-handler", + "version": "v6.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/error-handler.git", + "reference": "0926124c95d220499e2baf0fb465772af3a4eddb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/0926124c95d220499e2baf0fb465772af3a4eddb", + "reference": "0926124c95d220499e2baf0fb465772af3a4eddb", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/log": "^1|^2|^3", + "symfony/var-dumper": "^5.4|^6.0" + }, + "require-dev": { + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/http-kernel": "^5.4|^6.0", + "symfony/serializer": "^5.4|^6.0" + }, + "bin": [ + "Resources/bin/patch-type-declarations" + ], + "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/v6.2.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-19T14:33:49+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v6.2.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "3ffeb31139b49bf6ef0bc09d1db95eac053388d1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3ffeb31139b49bf6ef0bc09d1db95eac053388d1", + "reference": "3ffeb31139b49bf6ef0bc09d1db95eac053388d1", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2|^3" + }, + "conflict": { + "symfony/dependency-injection": "<5.4" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/error-handler": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/http-foundation": "^5.4|^6.0", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/stopwatch": "^5.4|^6.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/v6.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": "2022-12-14T16:11:27+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "0782b0b52a737a05b4383d0df35a474303cabdae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0782b0b52a737a05b4383d0df35a474303cabdae", + "reference": "0782b0b52a737a05b4383d0df35a474303cabdae", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/event-dispatcher": "^1" + }, + "suggest": { + "symfony/event-dispatcher-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.3-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/v3.2.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-25T10:21:52+00:00" + }, + { + "name": "symfony/finder", + "version": "v6.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "81eefbddfde282ee33b437ba5e13d7753211ae8e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/81eefbddfde282ee33b437ba5e13d7753211ae8e", + "reference": "81eefbddfde282ee33b437ba5e13d7753211ae8e", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0" + }, + "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/v6.2.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-22T17:55:15+00:00" + }, + { + "name": "symfony/http-foundation", + "version": "v6.2.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-foundation.git", + "reference": "ddf4dd35de1623e7c02013523e6c2137b67b636f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/ddf4dd35de1623e7c02013523e6c2137b67b636f", + "reference": "ddf4dd35de1623e7c02013523e6c2137b67b636f", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-mbstring": "~1.1" + }, + "conflict": { + "symfony/cache": "<6.2" + }, + "require-dev": { + "predis/predis": "~1.0", + "symfony/cache": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4", + "symfony/mime": "^5.4|^6.0", + "symfony/rate-limiter": "^5.2|^6.0" + }, + "suggest": { + "symfony/mime": "To use the file extension guesser" + }, + "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/v6.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": "2022-12-14T16:11:27+00:00" + }, + { + "name": "symfony/http-kernel", + "version": "v6.2.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-kernel.git", + "reference": "74f2e638ec3fa0315443bd85fab7fc8066b77f83" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/74f2e638ec3fa0315443bd85fab7fc8066b77f83", + "reference": "74f2e638ec3fa0315443bd85fab7fc8066b77f83", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/error-handler": "^6.1", + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/http-foundation": "^5.4|^6.0", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "symfony/browser-kit": "<5.4", + "symfony/cache": "<5.4", + "symfony/config": "<6.1", + "symfony/console": "<5.4", + "symfony/dependency-injection": "<6.2", + "symfony/doctrine-bridge": "<5.4", + "symfony/form": "<5.4", + "symfony/http-client": "<5.4", + "symfony/mailer": "<5.4", + "symfony/messenger": "<5.4", + "symfony/translation": "<5.4", + "symfony/twig-bridge": "<5.4", + "symfony/validator": "<5.4", + "twig/twig": "<2.13" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/cache": "^1.0|^2.0|^3.0", + "symfony/browser-kit": "^5.4|^6.0", + "symfony/config": "^6.1", + "symfony/console": "^5.4|^6.0", + "symfony/css-selector": "^5.4|^6.0", + "symfony/dependency-injection": "^6.2", + "symfony/dom-crawler": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/finder": "^5.4|^6.0", + "symfony/http-client-contracts": "^1.1|^2|^3", + "symfony/process": "^5.4|^6.0", + "symfony/routing": "^5.4|^6.0", + "symfony/stopwatch": "^5.4|^6.0", + "symfony/translation": "^5.4|^6.0", + "symfony/translation-contracts": "^1.1|^2|^3", + "symfony/uid": "^5.4|^6.0", + "twig/twig": "^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/v6.2.4" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-29T19:05:08+00:00" + }, + { + "name": "symfony/mailer", + "version": "v6.2.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/mailer.git", + "reference": "b355ad81f1d2987c47dcd3b04d5dce669e1e62e6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mailer/zipball/b355ad81f1d2987c47dcd3b04d5dce669e1e62e6", + "reference": "b355ad81f1d2987c47dcd3b04d5dce669e1e62e6", + "shasum": "" + }, + "require": { + "egulias/email-validator": "^2.1.10|^3", + "php": ">=8.1", + "psr/event-dispatcher": "^1", + "psr/log": "^1|^2|^3", + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/mime": "^6.2", + "symfony/service-contracts": "^1.1|^2|^3" + }, + "conflict": { + "symfony/http-kernel": "<5.4", + "symfony/messenger": "<6.2", + "symfony/mime": "<6.2", + "symfony/twig-bridge": "<6.2.1" + }, + "require-dev": { + "symfony/console": "^5.4|^6.0", + "symfony/http-client-contracts": "^1.1|^2|^3", + "symfony/messenger": "^6.2", + "symfony/twig-bridge": "^6.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Mailer\\": "" + }, + "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": "Helps sending emails", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/mailer/tree/v6.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": "2022-12-14T16:11:27+00:00" + }, + { + "name": "symfony/mime", + "version": "v6.2.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/mime.git", + "reference": "8c98bf40406e791043890a163f6f6599b9cfa1ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mime/zipball/8c98bf40406e791043890a163f6f6599b9cfa1ed", + "reference": "8c98bf40406e791043890a163f6f6599b9cfa1ed", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-intl-idn": "^1.10", + "symfony/polyfill-mbstring": "^1.0" + }, + "conflict": { + "egulias/email-validator": "~3.0.0", + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", + "symfony/mailer": "<5.4", + "symfony/serializer": "<6.2" + }, + "require-dev": { + "egulias/email-validator": "^2.1.10|^3.1", + "league/html-to-markdown": "^5.0", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/property-access": "^5.4|^6.0", + "symfony/property-info": "^5.4|^6.0", + "symfony/serializer": "^6.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/v6.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": "2022-12-14T16:38:10+00:00" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } + }, + "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.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "511a08c03c1960e08a883f4cffcacd219b758354" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", + "reference": "511a08c03c1960e08a883f4cffcacd219b758354", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } + }, + "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 grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/polyfill-intl-idn", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-idn.git", + "reference": "639084e360537a19f9ee352433b84ce831f3d2da" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/639084e360537a19f9ee352433b84ce831f3d2da", + "reference": "639084e360537a19f9ee352433b84ce831f3d2da", + "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.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Idn\\": "" + } + }, + "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.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "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.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "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.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/polyfill-php72", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php72.git", + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php72\\": "" + } + }, + "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.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "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.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/polyfill-uuid", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-uuid.git", + "reference": "f3cf1a645c2734236ed1e2e671e273eeb3586166" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/f3cf1a645c2734236ed1e2e671e273eeb3586166", + "reference": "f3cf1a645c2734236ed1e2e671e273eeb3586166", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "provide": { + "ext-uuid": "*" + }, + "suggest": { + "ext-uuid": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Uuid\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for uuid functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "uuid" + ], + "support": { + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, + { + "name": "symfony/process", + "version": "v6.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/ba6e55359f8f755fe996c58a81e00eaa67a35877", + "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "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/v6.2.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-02T09:08:04+00:00" + }, + { + "name": "symfony/routing", + "version": "v6.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/routing.git", + "reference": "35fec764f3e2c8c08fb340d275c84bc78ca7e0c9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/routing/zipball/35fec764f3e2c8c08fb340d275c84bc78ca7e0c9", + "reference": "35fec764f3e2c8c08fb340d275c84bc78ca7e0c9", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "conflict": { + "doctrine/annotations": "<1.12", + "symfony/config": "<6.2", + "symfony/dependency-injection": "<5.4", + "symfony/yaml": "<5.4" + }, + "require-dev": { + "doctrine/annotations": "^1.12|^2", + "psr/log": "^1|^2|^3", + "symfony/config": "^6.2", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/http-foundation": "^5.4|^6.0", + "symfony/yaml": "^5.4|^6.0" + }, + "suggest": { + "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/v6.2.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-20T16:41:15+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v3.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75", + "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^2.0" + }, + "conflict": { + "ext-psr": "<1.1|>=2" + }, + "suggest": { + "symfony/service-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "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/v3.2.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-25T10:21:52+00:00" + }, + { + "name": "symfony/string", + "version": "v6.2.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "863219fd713fa41cbcd285a79723f94672faff4d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/863219fd713fa41cbcd285a79723f94672faff4d", + "reference": "863219fd713fa41cbcd285a79723f94672faff4d", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/translation-contracts": "<2.0" + }, + "require-dev": { + "symfony/error-handler": "^5.4|^6.0", + "symfony/http-client": "^5.4|^6.0", + "symfony/intl": "^6.2", + "symfony/translation-contracts": "^2.0|^3.0", + "symfony/var-exporter": "^5.4|^6.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "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 an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v6.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": "2022-12-14T16:11:27+00:00" + }, + { + "name": "symfony/translation", + "version": "v6.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation.git", + "reference": "a2a15404ef4c15d92c205718eb828b225a144379" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation/zipball/a2a15404ef4c15d92c205718eb828b225a144379", + "reference": "a2a15404ef4c15d92c205718eb828b225a144379", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-mbstring": "~1.0", + "symfony/translation-contracts": "^2.3|^3.0" + }, + "conflict": { + "symfony/config": "<5.4", + "symfony/console": "<5.4", + "symfony/dependency-injection": "<5.4", + "symfony/http-kernel": "<5.4", + "symfony/twig-bundle": "<5.4", + "symfony/yaml": "<5.4" + }, + "provide": { + "symfony/translation-implementation": "2.3|3.0" + }, + "require-dev": { + "nikic/php-parser": "^4.13", + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/console": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/finder": "^5.4|^6.0", + "symfony/http-client-contracts": "^1.1|^2.0|^3.0", + "symfony/http-kernel": "^5.4|^6.0", + "symfony/intl": "^5.4|^6.0", + "symfony/polyfill-intl-icu": "^1.21", + "symfony/routing": "^5.4|^6.0", + "symfony/service-contracts": "^1.1.2|^2|^3", + "symfony/yaml": "^5.4|^6.0" + }, + "suggest": { + "nikic/php-parser": "To use PhpAstExtractor", + "psr/log-implementation": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "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/v6.2.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-23T14:11:11+00:00" + }, + { + "name": "symfony/translation-contracts", + "version": "v3.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation-contracts.git", + "reference": "68cce71402305a015f8c1589bfada1280dc64fe7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/68cce71402305a015f8c1589bfada1280dc64fe7", + "reference": "68cce71402305a015f8c1589bfada1280dc64fe7", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "suggest": { + "symfony/translation-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Translation\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "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/v3.2.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-25T10:21:52+00:00" + }, + { + "name": "symfony/uid", + "version": "v6.2.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/uid.git", + "reference": "4f9f537e57261519808a7ce1d941490736522bbc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/uid/zipball/4f9f537e57261519808a7ce1d941490736522bbc", + "reference": "4f9f537e57261519808a7ce1d941490736522bbc", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-uuid": "^1.15" + }, + "require-dev": { + "symfony/console": "^5.4|^6.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Uid\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an object-oriented API to generate and represent UIDs", + "homepage": "https://symfony.com", + "keywords": [ + "UID", + "ulid", + "uuid" + ], + "support": { + "source": "https://github.com/symfony/uid/tree/v6.2.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-10-09T08:55:40+00:00" + }, + { + "name": "symfony/var-dumper", + "version": "v6.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-dumper.git", + "reference": "fdbadd4803bc3c96ef89238c9c9e2ebe424ec2e0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/fdbadd4803bc3c96ef89238c9c9e2ebe424ec2e0", + "reference": "fdbadd4803bc3c96ef89238c9c9e2ebe424ec2e0", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "phpunit/phpunit": "<5.4.3", + "symfony/console": "<5.4" + }, + "require-dev": { + "ext-iconv": "*", + "symfony/console": "^5.4|^6.0", + "symfony/process": "^5.4|^6.0", + "symfony/uid": "^5.4|^6.0", + "twig/twig": "^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/v6.2.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-12-22T17:55:15+00:00" + }, + { + "name": "tijsverkoyen/css-to-inline-styles", + "version": "2.2.6", + "source": { + "type": "git", + "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", + "reference": "c42125b83a4fa63b187fdf29f9c93cb7733da30c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/c42125b83a4fa63b187fdf29f9c93cb7733da30c", + "reference": "c42125b83a4fa63b187fdf29f9c93cb7733da30c", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "php": "^5.5 || ^7.0 || ^8.0", + "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0 || ^6.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5 || ^8.5.21 || ^9.5.10" + }, + "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.6" + }, + "time": "2023-01-03T09:29:04+00:00" + }, + { + "name": "vlucas/phpdotenv", + "version": "v5.5.0", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "graham-campbell/result-type": "^1.0.2", + "php": "^7.1.3 || ^8.0", + "phpoption/phpoption": "^1.8", + "symfony/polyfill-ctype": "^1.23", + "symfony/polyfill-mbstring": "^1.23.1", + "symfony/polyfill-php80": "^1.23.1" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-filter": "*", + "phpunit/phpunit": "^7.5.20 || ^8.5.30 || ^9.5.25" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": true + }, + "branch-alias": { + "dev-master": "5.5-dev" + } + }, + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://github.com/vlucas" + } + ], + "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/v5.5.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "time": "2022-10-16T01:01:54+00:00" + }, + { + "name": "voku/portable-ascii", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/voku/portable-ascii.git", + "reference": "b56450eed252f6801410d810c8e1727224ae0743" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743", + "reference": "b56450eed252f6801410d810c8e1727224ae0743", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" + }, + "suggest": { + "ext-intl": "Use Intl for transliterator_transliterate() support" + }, + "type": "library", + "autoload": { + "psr-4": { + "voku\\": "src/voku/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Lars Moelleken", + "homepage": "http://www.moelleken.org/" + } + ], + "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", + "homepage": "https://github.com/voku/portable-ascii", + "keywords": [ + "ascii", + "clean", + "php" + ], + "support": { + "issues": "https://github.com/voku/portable-ascii/issues", + "source": "https://github.com/voku/portable-ascii/tree/2.0.1" + }, + "funding": [ + { + "url": "https://www.paypal.me/moelleken", + "type": "custom" + }, + { + "url": "https://github.com/voku", + "type": "github" + }, + { + "url": "https://opencollective.com/portable-ascii", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/voku", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "type": "tidelift" + } + ], + "time": "2022-03-08T17:03:00+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.11.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "php": "^7.2 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, + "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.11.0" + }, + "time": "2022-06-03T18:03:27+00:00" + } + ], + "packages-dev": [ + { + "name": "doctrine/instantiator", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b", + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9 || ^11", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^0.16 || ^1", + "phpstan/phpstan": "^1.4", + "phpstan/phpstan-phpunit": "^1", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "vimeo/psalm": "^4.30 || ^5.4" + }, + "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.5.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": "2022-12-30T00:15:36+00:00" + }, + { + "name": "fakerphp/faker", + "version": "v1.21.0", + "source": { + "type": "git", + "url": "https://github.com/FakerPHP/Faker.git", + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", + "ext-intl": "*", + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" + }, + "suggest": { + "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", + "ext-curl": "Required by Faker\\Provider\\Image to download images.", + "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", + "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", + "ext-mbstring": "Required for multibyte Unicode string functionality." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "v1.21-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/FakerPHP/Faker/issues", + "source": "https://github.com/FakerPHP/Faker/tree/v1.21.0" + }, + "time": "2022-12-13T13:54:32+00:00" + }, + { + "name": "filp/whoops", + "version": "2.14.6", + "source": { + "type": "git", + "url": "https://github.com/filp/whoops.git", + "reference": "f7948baaa0330277c729714910336383286305da" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/filp/whoops/zipball/f7948baaa0330277c729714910336383286305da", + "reference": "f7948baaa0330277c729714910336383286305da", + "shasum": "" + }, + "require": { + "php": "^5.5.9 || ^7.0 || ^8.0", + "psr/log": "^1.0.1 || ^2.0 || ^3.0" + }, + "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.14.6" + }, + "funding": [ + { + "url": "https://github.com/denis-sokolov", + "type": "github" + } + ], + "time": "2022-11-02T16:23:29+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": "laravel/pint", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/pint.git", + "reference": "0e7ffdb0af871be10d798e234772ea5d4020ae4a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/pint/zipball/0e7ffdb0af871be10d798e234772ea5d4020ae4a", + "reference": "0e7ffdb0af871be10d798e234772ea5d4020ae4a", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "ext-tokenizer": "*", + "ext-xml": "*", + "php": "^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "~3.13.1", + "illuminate/view": "^9.32.0", + "laravel-zero/framework": "^9.2.0", + "mockery/mockery": "^1.5.1", + "nunomaduro/larastan": "^2.2.0", + "nunomaduro/termwind": "^1.14.0", + "pestphp/pest": "^1.22.1" + }, + "bin": [ + "builds/pint" + ], + "type": "project", + "autoload": { + "psr-4": { + "App\\": "app/", + "Database\\Seeders\\": "database/seeders/", + "Database\\Factories\\": "database/factories/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nuno Maduro", + "email": "enunomaduro@gmail.com" + } + ], + "description": "An opinionated code formatter for PHP.", + "homepage": "https://laravel.com", + "keywords": [ + "format", + "formatter", + "lint", + "linter", + "php" + ], + "support": { + "issues": "https://github.com/laravel/pint/issues", + "source": "https://github.com/laravel/pint" + }, + "time": "2023-01-10T20:03:42+00:00" + }, + { + "name": "laravel/sail", + "version": "v1.18.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/sail.git", + "reference": "77feb38df1cf8700c19487957dfb12087cd696c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/sail/zipball/77feb38df1cf8700c19487957dfb12087cd696c7", + "reference": "77feb38df1cf8700c19487957dfb12087cd696c7", + "shasum": "" + }, + "require": { + "illuminate/console": "^8.0|^9.0|^10.0", + "illuminate/contracts": "^8.0|^9.0|^10.0", + "illuminate/support": "^8.0|^9.0|^10.0", + "php": "^7.3|^8.0" + }, + "bin": [ + "bin/sail" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Sail\\SailServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Sail\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Docker files for running a basic Laravel application.", + "keywords": [ + "docker", + "laravel" + ], + "support": { + "issues": "https://github.com/laravel/sail/issues", + "source": "https://github.com/laravel/sail" + }, + "time": "2023-01-10T16:14:21+00:00" + }, + { + "name": "mockery/mockery", + "version": "1.5.1", + "source": { + "type": "git", + "url": "https://github.com/mockery/mockery.git", + "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e", + "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e", + "shasum": "" + }, + "require": { + "hamcrest/hamcrest-php": "^2.0.1", + "lib-pcre": ">=7.0", + "php": "^7.3 || ^8.0" + }, + "conflict": { + "phpunit/phpunit": "<8.0" + }, + "require-dev": { + "phpunit/phpunit": "^8.5 || ^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4.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.5.1" + }, + "time": "2022-09-07T15:32:08+00:00" + }, + { + "name": "myclabs/deep-copy", + "version": "1.11.0", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", + "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", + "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "doctrine/collections": "<1.6.8", + "doctrine/common": "<2.13.3 || >=3,<3.2.2" + }, + "require-dev": { + "doctrine/collections": "^1.6.8", + "doctrine/common": "^2.13.3 || ^3.2.2", + "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" + }, + "type": "library", + "autoload": { + "files": [ + "src/DeepCopy/deep_copy.php" + ], + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + } + }, + "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.11.0" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", + "type": "tidelift" + } + ], + "time": "2022-03-03T13:19:32+00:00" + }, + { + "name": "nunomaduro/collision", + "version": "v6.4.0", + "source": { + "type": "git", + "url": "https://github.com/nunomaduro/collision.git", + "reference": "f05978827b9343cba381ca05b8c7deee346b6015" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/f05978827b9343cba381ca05b8c7deee346b6015", + "reference": "f05978827b9343cba381ca05b8c7deee346b6015", + "shasum": "" + }, + "require": { + "filp/whoops": "^2.14.5", + "php": "^8.0.0", + "symfony/console": "^6.0.2" + }, + "require-dev": { + "brianium/paratest": "^6.4.1", + "laravel/framework": "^9.26.1", + "laravel/pint": "^1.1.1", + "nunomaduro/larastan": "^1.0.3", + "nunomaduro/mock-final-classes": "^1.1.0", + "orchestra/testbench": "^7.7", + "phpunit/phpunit": "^9.5.23", + "spatie/ignition": "^1.4.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-develop": "6.x-dev" + }, + "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/paypalme/enunomaduro", + "type": "custom" + }, + { + "url": "https://github.com/nunomaduro", + "type": "github" + }, + { + "url": "https://www.patreon.com/nunomaduro", + "type": "patreon" + } + ], + "time": "2023-01-03T12:54:54+00:00" + }, + { + "name": "phar-io/manifest", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "97803eca37d319dfa7826cc2437fc020857acb53" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", + "reference": "97803eca37d319dfa7826cc2437fc020857acb53", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-phar": "*", + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" + }, + "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": "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/2.0.3" + }, + "time": "2021-07-20T11:28:43+00:00" + }, + { + "name": "phar-io/version", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/version.git", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "shasum": "" + }, + "require": { + "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" + }, + { + "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/3.2.1" + }, + "time": "2022-02-21T01:04:05+00:00" + }, + { + "name": "phpunit/php-code-coverage", + "version": "9.2.23", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "9f1f0f9a2fbb680b26d1cf9b61b6eac43a6e4e9c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/9f1f0f9a2fbb680b26d1cf9b61b6eac43a6e4e9c", + "reference": "9f1f0f9a2fbb680b26d1cf9b61b6eac43a6e4e9c", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-xmlwriter": "*", + "nikic/php-parser": "^4.14", + "php": ">=7.3", + "phpunit/php-file-iterator": "^3.0.3", + "phpunit/php-text-template": "^2.0.2", + "sebastian/code-unit-reverse-lookup": "^2.0.2", + "sebastian/complexity": "^2.0", + "sebastian/environment": "^5.1.2", + "sebastian/lines-of-code": "^1.0.3", + "sebastian/version": "^3.0.1", + "theseer/tokenizer": "^1.2.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-pcov": "*", + "ext-xdebug": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.2-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/9.2.23" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-12-28T12:41:10+00:00" + }, + { + "name": "phpunit/php-file-iterator", + "version": "3.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "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", + "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/3.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2021-12-02T12:48:52+00:00" + }, + { + "name": "phpunit/php-invoker", + "version": "3.1.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-invoker.git", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "ext-pcntl": "*", + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-pcntl": "*" + }, + "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", + "role": "lead" + } + ], + "description": "Invoke callables with a timeout", + "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "keywords": [ + "process" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-invoker/issues", + "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:58:55+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "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", + "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/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T05:33:50+00:00" + }, + { + "name": "phpunit/php-timer", + "version": "5.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.0-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/5.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:16:10+00:00" + }, + { + "name": "phpunit/phpunit", + "version": "9.5.27", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38", + "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.3.1", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-xml": "*", + "ext-xmlwriter": "*", + "myclabs/deep-copy": "^1.10.1", + "phar-io/manifest": "^2.0.3", + "phar-io/version": "^3.0.2", + "php": ">=7.3", + "phpunit/php-code-coverage": "^9.2.13", + "phpunit/php-file-iterator": "^3.0.5", + "phpunit/php-invoker": "^3.1.1", + "phpunit/php-text-template": "^2.0.3", + "phpunit/php-timer": "^5.0.2", + "sebastian/cli-parser": "^1.0.1", + "sebastian/code-unit": "^1.0.6", + "sebastian/comparator": "^4.0.8", + "sebastian/diff": "^4.0.3", + "sebastian/environment": "^5.1.3", + "sebastian/exporter": "^4.0.5", + "sebastian/global-state": "^5.0.1", + "sebastian/object-enumerator": "^4.0.3", + "sebastian/resource-operations": "^3.0.3", + "sebastian/type": "^3.2", + "sebastian/version": "^3.0.2" + }, + "suggest": { + "ext-soap": "*", + "ext-xdebug": "*" + }, + "bin": [ + "phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.5-dev" + } + }, + "autoload": { + "files": [ + "src/Framework/Assert/Functions.php" + ], + "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/9.5.27" + }, + "funding": [ + { + "url": "https://phpunit.de/sponsors.html", + "type": "custom" + }, + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", + "type": "tidelift" + } + ], + "time": "2022-12-09T07:31:23+00:00" + }, + { + "name": "sebastian/cli-parser", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", + "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-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 for parsing CLI options", + "homepage": "https://github.com/sebastianbergmann/cli-parser", + "support": { + "issues": "https://github.com/sebastianbergmann/cli-parser/issues", + "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:08:49+00:00" + }, + { + "name": "sebastian/code-unit", + "version": "1.0.8", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit.git", + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-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": "Collection of value objects that represent the PHP code units", + "homepage": "https://github.com/sebastianbergmann/code-unit", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit/issues", + "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:08:54+00:00" + }, + { + "name": "sebastian/code-unit-reverse-lookup", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "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": "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/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:30:19+00:00" + }, + { + "name": "sebastian/comparator", + "version": "4.0.8", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/comparator.git", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/diff": "^4.0", + "sebastian/exporter": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.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/4.0.8" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-09-14T12:41:17+00:00" + }, + { + "name": "sebastian/complexity", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/complexity.git", + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.7", + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "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", + "role": "lead" + } + ], + "description": "Library for calculating the complexity of PHP code units", + "homepage": "https://github.com/sebastianbergmann/complexity", + "support": { + "issues": "https://github.com/sebastianbergmann/complexity/issues", + "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T15:52:27+00:00" + }, + { + "name": "sebastian/diff", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.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/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:10:38+00:00" + }, + { + "name": "sebastian/environment", + "version": "5.1.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-posix": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-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/5.1.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-04-03T09:37:03+00:00" + }, + { + "name": "sebastian/exporter", + "version": "4.0.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/exporter.git", + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-mbstring": "*", + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.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": "Adam Harvey", + "email": "aharvey@php.net" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Provides the functionality to export PHP variables for visualization", + "homepage": "https://www.github.com/sebastianbergmann/exporter", + "keywords": [ + "export", + "exporter" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-09-14T06:03:37+00:00" + }, + { + "name": "sebastian/global-state", + "version": "5.0.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/global-state.git", + "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-dom": "*", + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-uopz": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.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/5.0.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-02-14T08:28:10+00:00" + }, + { + "name": "sebastian/lines-of-code", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/lines-of-code.git", + "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", + "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.6", + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-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 for counting the lines of code in PHP source code", + "homepage": "https://github.com/sebastianbergmann/lines-of-code", + "support": { + "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-28T06:42:11+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-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/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:12:34+00:00" + }, + { + "name": "sebastian/object-reflector", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-reflector.git", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "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": "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/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:14:26+00:00" + }, + { + "name": "sebastian/recursion-context", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.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": "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/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:17:30+00:00" + }, + { + "name": "sebastian/resource-operations", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", + "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "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" + } + ], + "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/3.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:45:17+00:00" + }, + { + "name": "sebastian/type", + "version": "3.2.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-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": "Collection of value objects that represent the types of the PHP type system", + "homepage": "https://github.com/sebastianbergmann/type", + "support": { + "issues": "https://github.com/sebastianbergmann/type/issues", + "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-09-12T14:47:03+00:00" + }, + { + "name": "sebastian/version", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "c6c1022351a901512170118436c764e473f6de8c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", + "reference": "c6c1022351a901512170118436c764e473f6de8c", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "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", + "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/3.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:39:44+00:00" + }, + { + "name": "spatie/backtrace", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/spatie/backtrace.git", + "reference": "4ee7d41aa5268107906ea8a4d9ceccde136dbd5b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/backtrace/zipball/4ee7d41aa5268107906ea8a4d9ceccde136dbd5b", + "reference": "4ee7d41aa5268107906ea8a4d9ceccde136dbd5b", + "shasum": "" + }, + "require": { + "php": "^7.3|^8.0" + }, + "require-dev": { + "ext-json": "*", + "phpunit/phpunit": "^9.3", + "symfony/var-dumper": "^5.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\Backtrace\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van de Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "A better backtrace", + "homepage": "https://github.com/spatie/backtrace", + "keywords": [ + "Backtrace", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/backtrace/issues", + "source": "https://github.com/spatie/backtrace/tree/1.2.1" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spatie", + "type": "github" + }, + { + "url": "https://spatie.be/open-source/support-us", + "type": "other" + } + ], + "time": "2021-11-09T10:57:15+00:00" + }, + { + "name": "spatie/flare-client-php", + "version": "1.3.2", + "source": { + "type": "git", + "url": "https://github.com/spatie/flare-client-php.git", + "reference": "609903bd154ba3d71f5e23a91c3b431fa8f71868" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/609903bd154ba3d71f5e23a91c3b431fa8f71868", + "reference": "609903bd154ba3d71f5e23a91c3b431fa8f71868", + "shasum": "" + }, + "require": { + "illuminate/pipeline": "^8.0|^9.0", + "php": "^8.0", + "spatie/backtrace": "^1.2", + "symfony/http-foundation": "^5.0|^6.0", + "symfony/mime": "^5.2|^6.0", + "symfony/process": "^5.2|^6.0", + "symfony/var-dumper": "^5.2|^6.0" + }, + "require-dev": { + "dms/phpunit-arraysubset-asserts": "^0.3.0", + "pestphp/pest": "^1.20", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan-deprecation-rules": "^1.0", + "phpstan/phpstan-phpunit": "^1.0", + "spatie/phpunit-snapshot-assertions": "^4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.1.x-dev" + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Spatie\\FlareClient\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Send PHP errors to Flare", + "homepage": "https://github.com/spatie/flare-client-php", + "keywords": [ + "exception", + "flare", + "reporting", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/flare-client-php/issues", + "source": "https://github.com/spatie/flare-client-php/tree/1.3.2" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2022-12-26T14:36:46+00:00" + }, + { + "name": "spatie/ignition", + "version": "1.4.1", + "source": { + "type": "git", + "url": "https://github.com/spatie/ignition.git", + "reference": "dd3d456779108d7078baf4e43f8c2b937d9794a1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/ignition/zipball/dd3d456779108d7078baf4e43f8c2b937d9794a1", + "reference": "dd3d456779108d7078baf4e43f8c2b937d9794a1", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "monolog/monolog": "^2.0", + "php": "^8.0", + "spatie/flare-client-php": "^1.1", + "symfony/console": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.0" + }, + "require-dev": { + "mockery/mockery": "^1.4", + "pestphp/pest": "^1.20", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan-deprecation-rules": "^1.0", + "phpstan/phpstan-phpunit": "^1.0", + "symfony/process": "^5.4|^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spatie\\Ignition\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Spatie", + "email": "info@spatie.be", + "role": "Developer" + } + ], + "description": "A beautiful error page for PHP applications.", + "homepage": "https://flareapp.io/ignition", + "keywords": [ + "error", + "flare", + "laravel", + "page" + ], + "support": { + "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", + "forum": "https://twitter.com/flareappio", + "issues": "https://github.com/spatie/ignition/issues", + "source": "https://github.com/spatie/ignition" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2022-08-26T11:51:15+00:00" + }, + { + "name": "spatie/laravel-ignition", + "version": "1.6.4", + "source": { + "type": "git", + "url": "https://github.com/spatie/laravel-ignition.git", + "reference": "1a2b4bd3d48c72526c0ba417687e5c56b5cf49bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/1a2b4bd3d48c72526c0ba417687e5c56b5cf49bc", + "reference": "1a2b4bd3d48c72526c0ba417687e5c56b5cf49bc", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "ext-json": "*", + "ext-mbstring": "*", + "illuminate/support": "^8.77|^9.27", + "monolog/monolog": "^2.3", + "php": "^8.0", + "spatie/flare-client-php": "^1.0.1", + "spatie/ignition": "^1.4.1", + "symfony/console": "^5.0|^6.0", + "symfony/var-dumper": "^5.0|^6.0" + }, + "require-dev": { + "filp/whoops": "^2.14", + "livewire/livewire": "^2.8|dev-develop", + "mockery/mockery": "^1.4", + "nunomaduro/larastan": "^1.0", + "orchestra/testbench": "^6.23|^7.0", + "pestphp/pest": "^1.20", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan-deprecation-rules": "^1.0", + "phpstan/phpstan-phpunit": "^1.0", + "spatie/laravel-ray": "^1.27" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Spatie\\LaravelIgnition\\IgnitionServiceProvider" + ], + "aliases": { + "Flare": "Spatie\\LaravelIgnition\\Facades\\Flare" + } + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Spatie\\LaravelIgnition\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Spatie", + "email": "info@spatie.be", + "role": "Developer" + } + ], + "description": "A beautiful error page for Laravel applications.", + "homepage": "https://flareapp.io/ignition", + "keywords": [ + "error", + "flare", + "laravel", + "page" + ], + "support": { + "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", + "forum": "https://twitter.com/flareappio", + "issues": "https://github.com/spatie/laravel-ignition/issues", + "source": "https://github.com/spatie/laravel-ignition" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2023-01-03T19:28:04+00:00" + }, + { + "name": "theseer/tokenizer", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/theseer/tokenizer.git", + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", + "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/1.2.1" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2021-07-28T10:34:58+00:00" + } + ], + "aliases": [], + "minimum-stability": "dev", + "stability-flags": [], + "prefer-stable": true, + "prefer-lowest": false, + "platform": { + "php": "^8.0.2" + }, + "platform-dev": [], + "plugin-api-version": "2.3.0" +} diff --git a/config/app.php b/config/app.php new file mode 100644 index 0000000..16aac1a --- /dev/null +++ b/config/app.php @@ -0,0 +1,217 @@ + env('APP_NAME', 'Laravel'), + + /* + |-------------------------------------------------------------------------- + | 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' => (bool) 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'), + + /* + |-------------------------------------------------------------------------- + | 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', + + /* + |-------------------------------------------------------------------------- + | Maintenance Mode Driver + |-------------------------------------------------------------------------- + | + | These configuration options determine the driver used to determine and + | manage Laravel's "maintenance mode" status. The "cache" driver will + | allow maintenance mode to be controlled across multiple machines. + | + | Supported drivers: "file", "cache" + | + */ + + 'maintenance' => [ + 'driver' => 'file', + // 'store' => 'redis', + ], + + /* + |-------------------------------------------------------------------------- + | 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... + */ + 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, + + /* + * Package Service Providers... + */ + Intervention\Image\ImageServiceProvider::class, + OwenIt\Auditing\AuditingServiceProvider::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' => Facade::defaultAliases()->merge([ + 'ImageIntervention' => Intervention\Image\Facades\Image::class, + ])->toArray(), + +]; diff --git a/config/audit.php b/config/audit.php new file mode 100644 index 0000000..116a6bb --- /dev/null +++ b/config/audit.php @@ -0,0 +1,169 @@ + env('AUDITING_ENABLED', true), + + /* + |-------------------------------------------------------------------------- + | Audit Implementation + |-------------------------------------------------------------------------- + | + | Define which Audit model implementation should be used. + | + */ + + 'implementation' => OwenIt\Auditing\Models\Audit::class, + + /* + |-------------------------------------------------------------------------- + | User Morph prefix & Guards + |-------------------------------------------------------------------------- + | + | Define the morph prefix and authentication guards for the User resolver. + | + */ + + 'user' => [ + 'morph_prefix' => 'user', + 'guards' => [ + 'web', + 'api' + ], + 'resolver' => OwenIt\Auditing\Resolvers\UserResolver::class + ], + + /* + |-------------------------------------------------------------------------- + | Audit Resolvers + |-------------------------------------------------------------------------- + | + | Define the User, IP Address, User Agent and URL resolver implementations. + | + */ + 'resolvers' => [ + 'ip_address' => OwenIt\Auditing\Resolvers\IpAddressResolver::class, + 'user_agent' => OwenIt\Auditing\Resolvers\UserAgentResolver::class, + 'url' => OwenIt\Auditing\Resolvers\UrlResolver::class, + ], + + /* + |-------------------------------------------------------------------------- + | Audit Events + |-------------------------------------------------------------------------- + | + | The Eloquent events that trigger an Audit. + | + */ + + 'events' => [ + 'created', + 'updated', + 'deleted', + 'restored' + ], + + /* + |-------------------------------------------------------------------------- + | Strict Mode + |-------------------------------------------------------------------------- + | + | Enable the strict mode when auditing? + | + */ + + 'strict' => false, + + /* + |-------------------------------------------------------------------------- + | Global exclude + |-------------------------------------------------------------------------- + | + | Have something you always want to exclude by default? - add it here. + | Note that this is overwritten (not merged) with local exclude + | + */ + + 'exclude' => [], + + /* + |-------------------------------------------------------------------------- + | Empty Values + |-------------------------------------------------------------------------- + | + | Should Audit records be stored when the recorded old_values & new_values + | are both empty? + | + | Some events may be empty on purpose. Use allowed_empty_values to exclude + | those from the empty values check. For example when auditing + | model retrieved events which will never have new and old values. + | + | + */ + + 'empty_values' => true, + 'allowed_empty_values' => [ + 'retrieved' + ], + + /* + |-------------------------------------------------------------------------- + | Audit Timestamps + |-------------------------------------------------------------------------- + | + | Should the created_at, updated_at and deleted_at timestamps be audited? + | + */ + + 'timestamps' => false, + + /* + |-------------------------------------------------------------------------- + | Audit Threshold + |-------------------------------------------------------------------------- + | + | Specify a threshold for the amount of Audit records a model can have. + | Zero means no limit. + | + */ + + 'threshold' => 0, + + /* + |-------------------------------------------------------------------------- + | Audit Driver + |-------------------------------------------------------------------------- + | + | The default audit driver used to keep track of changes. + | + */ + + 'driver' => 'database', + + /* + |-------------------------------------------------------------------------- + | Audit Driver Configurations + |-------------------------------------------------------------------------- + | + | Available audit drivers and respective configurations. + | + */ + + 'drivers' => [ + 'database' => [ + 'table' => 'audits', + 'connection' => null, + ], + ], + + /* + |-------------------------------------------------------------------------- + | Audit Console + |-------------------------------------------------------------------------- + | + | Whether console events should be audited (eg. php artisan db:seed). + | + */ + + 'console' => false, +]; diff --git a/config/auth.php b/config/auth.php new file mode 100644 index 0000000..d8c6cee --- /dev/null +++ b/config/auth.php @@ -0,0 +1,111 @@ + [ + '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" + | + */ + + 'guards' => [ + 'web' => [ + 'driver' => 'session', + '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\Models\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 each reset token will 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, + 'throttle' => 60, + ], + ], + + /* + |-------------------------------------------------------------------------- + | Password Confirmation Timeout + |-------------------------------------------------------------------------- + | + | Here you may define the amount of seconds before a password confirmation + | times out and the user is prompted to re-enter their password via the + | confirmation screen. By default, the timeout lasts for three hours. + | + */ + + 'password_timeout' => 10800, + +]; diff --git a/config/broadcasting.php b/config/broadcasting.php new file mode 100644 index 0000000..ca1c67e --- /dev/null +++ b/config/broadcasting.php @@ -0,0 +1,70 @@ + 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' => [ + 'host' => env('PUSHER_HOST') === true ?: 'api-' . env('PUSHER_APP_CLUSTER', 'mt1') . '.pusher.com', + 'port' => env('PUSHER_PORT', 443), + 'scheme' => env('PUSHER_SCHEME', 'https'), + 'encrypted' => true, + 'useTLS' => env('PUSHER_SCHEME', 'https') === 'https', + ], + 'client_options' => [ + // Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html + ], + ], + + 'ably' => [ + 'driver' => 'ably', + 'key' => env('ABLY_KEY'), + ], + + '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..daf5e68 --- /dev/null +++ b/config/cache.php @@ -0,0 +1,110 @@ + 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. + | + | Supported drivers: "apc", "array", "database", "file", + | "memcached", "redis", "dynamodb", "octane", "null" + | + */ + + 'stores' => [ + + 'apc' => [ + 'driver' => 'apc', + ], + + 'array' => [ + 'driver' => 'array', + 'serialize' => false, + ], + + 'database' => [ + 'driver' => 'database', + 'table' => 'cache', + 'connection' => null, + 'lock_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', + 'lock_connection' => 'default', + ], + + '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'), + ], + + 'octane' => [ + 'driver' => 'octane', + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Cache Key Prefix + |-------------------------------------------------------------------------- + | + | When utilizing the APC, database, memcached, Redis, or DynamoDB cache + | stores there might be other applications using the same cache. For + | that reason, you may prefix every cache key to avoid collisions. + | + */ + + 'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_') . '_cache_'), + +]; diff --git a/config/contact.php b/config/contact.php new file mode 100644 index 0000000..2fac29b --- /dev/null +++ b/config/contact.php @@ -0,0 +1,6 @@ + env('CONTACT_ADDRESS'), + 'contact_subject' => env('CONTACT_SUBJECT'), +]; diff --git a/config/cors.php b/config/cors.php new file mode 100644 index 0000000..8a39e6d --- /dev/null +++ b/config/cors.php @@ -0,0 +1,34 @@ + ['api/*', 'sanctum/csrf-cookie'], + + 'allowed_methods' => ['*'], + + 'allowed_origins' => ['*'], + + 'allowed_origins_patterns' => [], + + 'allowed_headers' => ['*'], + + 'exposed_headers' => [], + + 'max_age' => 0, + + 'supports_credentials' => false, + +]; diff --git a/config/database.php b/config/database.php new file mode 100644 index 0000000..690645a --- /dev/null +++ b/config/database.php @@ -0,0 +1,151 @@ + 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') === true ? 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, + 'search_path' => '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, + // 'encrypt' => env('DB_ENCRYPT', 'yes'), + // 'trust_server_certificate' => env('DB_TRUST_SERVER_CERTIFICATE', 'false'), + ], + + ], + + /* + |-------------------------------------------------------------------------- + | 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', 'phpredis'), + + 'options' => [ + 'cluster' => env('REDIS_CLUSTER', 'redis'), + 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_') . '_database_'), + ], + + 'default' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'username' => env('REDIS_USERNAME'), + 'password' => env('REDIS_PASSWORD'), + 'port' => env('REDIS_PORT', '6379'), + 'database' => env('REDIS_DB', '0'), + ], + + 'cache' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'username' => env('REDIS_USERNAME'), + 'password' => env('REDIS_PASSWORD'), + 'port' => env('REDIS_PORT', '6379'), + 'database' => env('REDIS_CACHE_DB', '1'), + ], + + ], + +]; diff --git a/config/filesystems.php b/config/filesystems.php new file mode 100644 index 0000000..93366c6 --- /dev/null +++ b/config/filesystems.php @@ -0,0 +1,76 @@ + env('FILESYSTEM_DISK', 'local'), + + /* + |-------------------------------------------------------------------------- + | 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 set up for each driver as an example of the required values. + | + | Supported Drivers: "local", "ftp", "sftp", "s3" + | + */ + + 'disks' => [ + + 'local' => [ + 'driver' => 'local', + 'root' => storage_path('app/uploads'), + 'throw' => false, + 'url' => env('STORAGE_LOCAL_URL'), + ], + + 'public' => [ + 'driver' => 'local', + 'root' => public_path('uploads'), + 'throw' => false, + 'url' => env('STORAGE_PUBLIC_URL'), + ], + + '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'), + 'endpoint' => env('AWS_ENDPOINT'), + 'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false), + 'throw' => false, + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Symbolic Links + |-------------------------------------------------------------------------- + | + | Here you may configure the symbolic links that will be created when the + | `storage:link` Artisan command is executed. The array keys should be + | the locations of the links and the values should be their targets. + | + */ + + 'links' => [ + public_path('storage') => storage_path('app/public'), + ], + +]; diff --git a/config/hashing.php b/config/hashing.php new file mode 100644 index 0000000..bcd3be4 --- /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' => 65536, + 'threads' => 1, + 'time' => 4, + ], + +]; diff --git a/config/image.php b/config/image.php new file mode 100644 index 0000000..2b1d2c3 --- /dev/null +++ b/config/image.php @@ -0,0 +1,20 @@ + 'gd' + +]; diff --git a/config/logging.php b/config/logging.php new file mode 100644 index 0000000..752af71 --- /dev/null +++ b/config/logging.php @@ -0,0 +1,122 @@ + env('LOG_CHANNEL', 'stack'), + + /* + |-------------------------------------------------------------------------- + | Deprecations Log Channel + |-------------------------------------------------------------------------- + | + | This option controls the log channel that should be used to log warnings + | regarding deprecated PHP and library features. This allows you to get + | your application ready for upcoming major versions of dependencies. + | + */ + + 'deprecations' => [ + 'channel' => env('LOG_DEPRECATIONS_CHANNEL', 'null'), + 'trace' => false, + ], + + /* + |-------------------------------------------------------------------------- + | 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' => ['single'], + 'ignore_exceptions' => false, + ], + + 'single' => [ + 'driver' => 'single', + 'path' => storage_path('logs/laravel.log'), + 'level' => env('LOG_LEVEL', 'debug'), + ], + + 'daily' => [ + 'driver' => 'daily', + 'path' => storage_path('logs/laravel.log'), + 'level' => env('LOG_LEVEL', 'debug'), + 'days' => 14, + ], + + 'slack' => [ + 'driver' => 'slack', + 'url' => env('LOG_SLACK_WEBHOOK_URL'), + 'username' => 'Laravel Log', + 'emoji' => ':boom:', + 'level' => env('LOG_LEVEL', 'critical'), + ], + + 'papertrail' => [ + 'driver' => 'monolog', + 'level' => env('LOG_LEVEL', 'debug'), + 'handler' => env('LOG_PAPERTRAIL_HANDLER', SyslogUdpHandler::class), + 'handler_with' => [ + 'host' => env('PAPERTRAIL_URL'), + 'port' => env('PAPERTRAIL_PORT'), + 'connectionString' => 'tls://' . env('PAPERTRAIL_URL') . ':' . env('PAPERTRAIL_PORT'), + ], + ], + + 'stderr' => [ + 'driver' => 'monolog', + 'level' => env('LOG_LEVEL', 'debug'), + 'handler' => StreamHandler::class, + 'formatter' => env('LOG_STDERR_FORMATTER'), + 'with' => [ + 'stream' => 'php://stderr', + ], + ], + + 'syslog' => [ + 'driver' => 'syslog', + 'level' => env('LOG_LEVEL', 'debug'), + ], + + 'errorlog' => [ + 'driver' => 'errorlog', + 'level' => env('LOG_LEVEL', 'debug'), + ], + + 'null' => [ + 'driver' => 'monolog', + 'handler' => NullHandler::class, + ], + + 'emergency' => [ + 'path' => storage_path('logs/laravel.log'), + ], + ], + +]; diff --git a/config/mail.php b/config/mail.php new file mode 100644 index 0000000..492c953 --- /dev/null +++ b/config/mail.php @@ -0,0 +1,122 @@ + env('MAIL_MAILER', 'smtp'), + + /* + |-------------------------------------------------------------------------- + | Mailer Configurations + |-------------------------------------------------------------------------- + | + | Here you may configure all of the mailers used by your application plus + | their respective settings. Several examples have been configured for + | you and you are free to add your own as your application requires. + | + | Laravel supports a variety of mail "transport" drivers to be used while + | sending an e-mail. You will specify which one you are using for your + | mailers below. You are free to add additional mailers as required. + | + | Supported: "smtp", "sendmail", "mailgun", "ses", + | "postmark", "log", "array", "failover" + | + */ + + 'mailers' => [ + 'smtp' => [ + 'transport' => 'smtp', + 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), + 'port' => env('MAIL_PORT', 587), + 'encryption' => env('MAIL_ENCRYPTION', 'tls'), + 'username' => env('MAIL_USERNAME'), + 'password' => env('MAIL_PASSWORD'), + 'timeout' => null, + 'local_domain' => env('MAIL_EHLO_DOMAIN'), + ], + + 'ses' => [ + 'transport' => 'ses', + ], + + 'mailgun' => [ + 'transport' => 'mailgun', + ], + + 'postmark' => [ + 'transport' => 'postmark', + ], + + 'sendmail' => [ + 'transport' => 'sendmail', + 'path' => env('MAIL_SENDMAIL_PATH', '/usr/sbin/sendmail -bs -i'), + ], + + 'log' => [ + 'transport' => 'log', + 'channel' => env('MAIL_LOG_CHANNEL'), + ], + + 'array' => [ + 'transport' => 'array', + ], + + 'failover' => [ + 'transport' => 'failover', + 'mailers' => [ + 'smtp', + 'log', + ], + ], + + 'office365mail' => [ + 'transport' => 'office365mail', + ], + ], + + /* + |-------------------------------------------------------------------------- + | 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'), + ], + + /* + |-------------------------------------------------------------------------- + | 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'), + ], + ], + +]; diff --git a/config/purify.php b/config/purify.php new file mode 100644 index 0000000..7bafb3b --- /dev/null +++ b/config/purify.php @@ -0,0 +1,87 @@ + 'default', + + /* + |-------------------------------------------------------------------------- + | Config sets + |-------------------------------------------------------------------------- + | + | Here you may configure various sets of configuration for differentiated use of HTMLPurifier. + | A specific set of configuration can be applied by calling the "config($name)" method on + | a Purify instance. Feel free to add/remove/customize these attributes as you wish. + | + | Documentation: http://htmlpurifier.org/live/configdoc/plain.html + | + | Core.Encoding The encoding to convert input to. + | HTML.Doctype Doctype to use during filtering. + | HTML.Allowed The allowed HTML Elements with their allowed attributes. + | HTML.ForbiddenElements The forbidden HTML elements. Elements that are listed in this + | string will be removed, however their content will remain. + | CSS.AllowedProperties The Allowed CSS properties. + | AutoFormat.AutoParagraph Newlines are converted in to paragraphs whenever possible. + | AutoFormat.RemoveEmpty Remove empty elements that contribute no semantic information to the document. + | + */ + + 'configs' => [ + // @codingStandardsIgnoreStart + 'default' => [ + 'Core.Encoding' => 'utf-8', + 'HTML.Doctype' => 'HTML 4.01 Transitional', + 'HTML.Allowed' => 'h1,h2,h3,h4,h5,h6,b,strong,i,em,s,del,a[href|title],ul,ol,li,p[style],br,span,img[width|height|alt|src]', + 'HTML.ForbiddenElements' => '', + 'CSS.AllowedProperties' => 'font,font-size,font-weight,font-style,font-family,text-decoration,padding-left,color,background-color,text-align', + 'AutoFormat.AutoParagraph' => false, + 'AutoFormat.RemoveEmpty' => false, + ], + // @codingStandardsIgnoreEnd + + ], + + /* + |-------------------------------------------------------------------------- + | HTMLPurifier definitions + |-------------------------------------------------------------------------- + | + | Here you may specify a class that augments the HTML definitions used by + | HTMLPurifier. Additional HTML5 definitions are provided out of the box. + | When specifying a custom class, make sure it implements the interface: + | + | \Stevebauman\Purify\Definitions\Definition + | + | Note that these definitions are applied to every Purifier instance. + | + | Documentation: http://htmlpurifier.org/docs/enduser-customize.html + | + */ + + 'definitions' => Html5Definition::class, + + /* + |-------------------------------------------------------------------------- + | Serializer location + |-------------------------------------------------------------------------- + | + | The location where HTMLPurifier can store its temporary serializer files. + | The filepath should be accessible and writable by the web server. + | A good place for this is in the framework's own storage path. + | + */ + + 'serializer' => storage_path('app/purify'), + +]; diff --git a/config/queue.php b/config/queue.php new file mode 100644 index 0000000..25ea5a8 --- /dev/null +++ b/config/queue.php @@ -0,0 +1,93 @@ + 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, + 'after_commit' => false, + ], + + 'beanstalkd' => [ + 'driver' => 'beanstalkd', + 'host' => 'localhost', + 'queue' => 'default', + 'retry_after' => 90, + 'block_for' => 0, + 'after_commit' => false, + ], + + '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', 'default'), + 'suffix' => env('SQS_SUFFIX'), + 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), + 'after_commit' => false, + ], + + 'redis' => [ + 'driver' => 'redis', + 'connection' => 'default', + 'queue' => env('REDIS_QUEUE', 'default'), + 'retry_after' => 90, + 'block_for' => null, + 'after_commit' => false, + ], + + ], + + /* + |-------------------------------------------------------------------------- + | 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' => [ + 'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), + 'database' => env('DB_CONNECTION', 'mysql'), + 'table' => 'failed_jobs', + ], + +]; diff --git a/config/sanctum.php b/config/sanctum.php new file mode 100644 index 0000000..b75adb2 --- /dev/null +++ b/config/sanctum.php @@ -0,0 +1,67 @@ + explode(',', env('SANCTUM_STATEFUL_DOMAINS', sprintf( + '%s%s', + 'localhost,localhost:3000,127.0.0.1,127.0.0.1:8000,::1', + Sanctum::currentApplicationUrlWithPort() + ))), + + /* + |-------------------------------------------------------------------------- + | Sanctum Guards + |-------------------------------------------------------------------------- + | + | This array contains the authentication guards that will be checked when + | Sanctum is trying to authenticate a request. If none of these guards + | are able to authenticate the request, Sanctum will use the bearer + | token that's present on an incoming request for authentication. + | + */ + + 'guard' => ['web'], + + /* + |-------------------------------------------------------------------------- + | Expiration Minutes + |-------------------------------------------------------------------------- + | + | This value controls the number of minutes until an issued token will be + | considered expired. If this value is null, personal access tokens do + | not expire. This won't tweak the lifetime of first-party sessions. + | + */ + + 'expiration' => 40320, // 28 days + + /* + |-------------------------------------------------------------------------- + | Sanctum Middleware + |-------------------------------------------------------------------------- + | + | When authenticating your first-party SPA with Sanctum you may need to + | customize some of the middleware Sanctum uses while processing the + | request. You may change the middleware listed below as required. + | + */ + + 'middleware' => [ + 'verify_csrf_token' => App\Http\Middleware\VerifyCsrfToken::class, + 'encrypt_cookies' => App\Http\Middleware\EncryptCookies::class, + ], + +]; diff --git a/config/services.php b/config/services.php new file mode 100644 index 0000000..dc231b9 --- /dev/null +++ b/config/services.php @@ -0,0 +1,39 @@ + [ + 'domain' => env('MAILGUN_DOMAIN'), + 'secret' => env('MAILGUN_SECRET'), + 'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'), + 'scheme' => 'https', + ], + + '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'), + ], + + 'google_recaptcha' => [ + 'url' => 'https://www.google.com/recaptcha/api/siteverify', + 'site_key' => env('GOOGLE_RECAPTCHA_SITE_KEY'), + 'secret_key' => env('GOOGLE_RECAPTCHA_SECRET_SITE_KEY'), + ], +]; diff --git a/config/session.php b/config/session.php new file mode 100644 index 0000000..1b99f22 --- /dev/null +++ b/config/session.php @@ -0,0 +1,201 @@ + 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'), + + /* + |-------------------------------------------------------------------------- + | 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 + |-------------------------------------------------------------------------- + | + | While using one of the framework's cache driven session backends 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". + | + | Affects: "apc", "dynamodb", "memcached", "redis" + | + */ + + 'store' => env('SESSION_STORE'), + + /* + |-------------------------------------------------------------------------- + | 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'), + + /* + |-------------------------------------------------------------------------- + | 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 when it can't be done securely. + | + */ + + 'secure' => env('SESSION_SECURE_COOKIE'), + + /* + |-------------------------------------------------------------------------- + | 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 + | will set this value to "lax" since this is a secure default value. + | + | Supported: "lax", "strict", "none", null + | + */ + + 'same_site' => 'lax', + +]; 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/database/.gitignore b/database/.gitignore new file mode 100644 index 0000000..9b19b93 --- /dev/null +++ b/database/.gitignore @@ -0,0 +1 @@ +*.sqlite* diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php new file mode 100644 index 0000000..08b27b6 --- /dev/null +++ b/database/factories/UserFactory.php @@ -0,0 +1,43 @@ + + */ +class UserFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition() + { + return [ + 'username' => fake()->unique()->userName(), + 'first_name' => fake()->firstName(), + 'last_name' => fake()->lastName(), + 'email' => fake()->safeEmail(), + 'email_verified_at' => now(), + 'phone' => fake()->phoneNumber(), + 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password + 'remember_token' => Str::random(10), + ]; + } + + /** + * Indicate that the model's email address should be unverified. + * + * @return static + */ + public function unverified() + { + return $this->state(fn (array $attributes) => [ + 'email_verified_at' => null, + ]); + } +} 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..03d1d84 --- /dev/null +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -0,0 +1,40 @@ +uuid('id')->primary(); + $table->string('username')->unique(); + $table->string('password')->nullable(); + $table->boolean('enabled')->default(true); + $table->string('first_name'); + $table->string('last_name'); + $table->string('email'); + $table->timestamp('email_verified_at')->nullable(); + $table->string('phone')->nullable(); + $table->rememberToken(); + $table->timestamps(); + }); + } + + /** + * 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..fcacb80 --- /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_08_19_000000_create_failed_jobs_table.php b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php new file mode 100644 index 0000000..1719198 --- /dev/null +++ b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php @@ -0,0 +1,36 @@ +id(); + $table->string('uuid')->unique(); + $table->text('connection'); + $table->text('queue'); + $table->longText('payload'); + $table->longText('exception'); + $table->timestamp('failed_at')->useCurrent(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('failed_jobs'); + } +}; diff --git a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php new file mode 100644 index 0000000..9207c18 --- /dev/null +++ b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php @@ -0,0 +1,37 @@ +id(); + $table->uuidMorphs('tokenable'); + $table->string('name'); + $table->string('token', 64)->unique(); + $table->text('abilities')->nullable(); + $table->timestamp('last_used_at')->nullable(); + $table->timestamp('expires_at')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('personal_access_tokens'); + } +}; diff --git a/database/migrations/2022_12_28_113117_create_posts_table.php b/database/migrations/2022_12_28_113117_create_posts_table.php new file mode 100644 index 0000000..7eaffc5 --- /dev/null +++ b/database/migrations/2022_12_28_113117_create_posts_table.php @@ -0,0 +1,39 @@ +uuid('id')->primary(); + $table->string('slug', 255)->unique(); + $table->string('title', 255); + $table->timestamp('publish_at')->nullable()->useCurrent(); + $table->uuid('user_id'); + $table->uuid('hero'); + $table->text('content'); + $table->timestamps(); + + // $table->foreign('user_id')->references('id')->on('users'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('posts'); + } +}; diff --git a/database/migrations/2022_12_30_105153_create_media_table.php b/database/migrations/2022_12_30_105153_create_media_table.php new file mode 100644 index 0000000..4762f75 --- /dev/null +++ b/database/migrations/2022_12_30_105153_create_media_table.php @@ -0,0 +1,39 @@ +uuid('id')->primary(); + $table->uuid('user_id'); + $table->string('title'); + $table->string('name'); + $table->string('mime'); + $table->string('permission')->nullable(); + $table->bigInteger('size'); + $table->timestamps(); + + // $table->foreign('user_id')->references('id')->on('users'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('media'); + } +}; diff --git a/database/migrations/2022_12_30_110049_create_permissions_table.php b/database/migrations/2022_12_30_110049_create_permissions_table.php new file mode 100644 index 0000000..2142080 --- /dev/null +++ b/database/migrations/2022_12_30_110049_create_permissions_table.php @@ -0,0 +1,35 @@ +uuid('id')->primary(); + $table->string('permission'); + $table->uuid('user_id'); + $table->timestamps(); + + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('permissions'); + } +}; diff --git a/database/migrations/2023_01_01_103251_create_events_table.php b/database/migrations/2023_01_01_103251_create_events_table.php new file mode 100644 index 0000000..8ba1596 --- /dev/null +++ b/database/migrations/2023_01_01_103251_create_events_table.php @@ -0,0 +1,42 @@ +uuid('id')->primary(); + $table->string('title'); + $table->string('location'); + $table->string('address')->nullable(); + $table->timestamp('start_at'); + $table->timestamp('end_at'); + $table->timestamp('publish_at')->nullable(); + $table->string('status')->default('draft'); + $table->string('registration_type'); + $table->string('registration_data')->nullable(); + $table->uuid('hero'); + $table->text('content')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('events'); + } +}; diff --git a/database/migrations/2023_01_021_050482_create_subscriptions_table.php b/database/migrations/2023_01_021_050482_create_subscriptions_table.php new file mode 100644 index 0000000..b47f416 --- /dev/null +++ b/database/migrations/2023_01_021_050482_create_subscriptions_table.php @@ -0,0 +1,33 @@ +uuid('id')->primary(); + $table->string('email'); + $table->timestamp('confirmed_at')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('subscriptions'); + } +}; diff --git a/database/migrations/2023_01_05_043106_create_jobs_table.php b/database/migrations/2023_01_05_043106_create_jobs_table.php new file mode 100644 index 0000000..a786a89 --- /dev/null +++ b/database/migrations/2023_01_05_043106_create_jobs_table.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->string('queue')->index(); + $table->longText('payload'); + $table->unsignedTinyInteger('attempts'); + $table->unsignedInteger('reserved_at')->nullable(); + $table->unsignedInteger('available_at'); + $table->unsignedInteger('created_at'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('jobs'); + } +}; diff --git a/database/migrations/2023_01_05_112154_create_user_codes_table.php b/database/migrations/2023_01_05_112154_create_user_codes_table.php new file mode 100644 index 0000000..1d98f9c --- /dev/null +++ b/database/migrations/2023_01_05_112154_create_user_codes_table.php @@ -0,0 +1,37 @@ +id(); + $table->char('code', 6)->unique(); + $table->string('action'); + $table->string('data')->nullable(); + $table->uuid('user_id'); + $table->timestamps(); + + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('user_codes'); + } +}; diff --git a/database/migrations/2023_01_08_045958_create_audits_table.php b/database/migrations/2023_01_08_045958_create_audits_table.php new file mode 100644 index 0000000..7016272 --- /dev/null +++ b/database/migrations/2023_01_08_045958_create_audits_table.php @@ -0,0 +1,47 @@ +create('audits', function (Blueprint $table) { + + $morphPrefix = Config::get('audit.user.morph_prefix', 'user'); + + $table->bigIncrements('id'); + $table->string($morphPrefix . '_type')->nullable(); + $table->uuid($morphPrefix . '_id')->nullable(); + $table->string('event'); + $table->uuidMorphs('auditable'); + $table->text('old_values')->nullable(); + $table->text('new_values')->nullable(); + $table->text('url')->nullable(); + $table->ipAddress('ip_address')->nullable(); + $table->string('user_agent', 1023)->nullable(); + $table->string('tags')->nullable(); + $table->timestamps(); + + $table->index([$morphPrefix . '_id', $morphPrefix . '_type']); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::connection(config('audit.drivers.database.connection', config('database.default')))->drop('audits'); + } +} diff --git a/database/migrations/2023_01_08_050847_create_user_logins_table.php b/database/migrations/2023_01_08_050847_create_user_logins_table.php new file mode 100644 index 0000000..b2200df --- /dev/null +++ b/database/migrations/2023_01_08_050847_create_user_logins_table.php @@ -0,0 +1,39 @@ +uuid('id')->primary(); + $table->uuid('user_id'); + $table->string('token'); + $table->timestamp('login')->nullable(); + $table->timestamp('logout')->nullable(); + $table->ipAddress('ip_address')->nullable(); + $table->string('user_agent', 1023)->nullable(); + $table->timestamps(); + + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('user_logins'); + } +}; diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php new file mode 100644 index 0000000..7914d10 --- /dev/null +++ b/database/seeders/DatabaseSeeder.php @@ -0,0 +1,32 @@ +create(); + + \App\Models\User::factory()->create([ + 'username' => 'nomadjimbob', + 'first_name' => 'James', + 'last_name' => 'Collins', + 'email' => 'james@stemmechanics.com.au', + 'email_verified_at' => Carbon::now(), + 'phone' => '0400 130 190', + 'password' => Hash::make('password@12') + ]); + } +} diff --git a/lang/en/auth.php b/lang/en/auth.php new file mode 100644 index 0000000..6598e2c --- /dev/null +++ b/lang/en/auth.php @@ -0,0 +1,20 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + +]; diff --git a/lang/en/pagination.php b/lang/en/pagination.php new file mode 100644 index 0000000..d481411 --- /dev/null +++ b/lang/en/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/en/passwords.php b/lang/en/passwords.php new file mode 100644 index 0000000..2345a56 --- /dev/null +++ b/lang/en/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/en/validation.php b/lang/en/validation.php new file mode 100644 index 0000000..af94bd4 --- /dev/null +++ b/lang/en/validation.php @@ -0,0 +1,179 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + '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 must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'ascii' => 'The :attribute must only contain single-byte alphanumeric characters and symbols.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + '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.', + 'decimal' => 'The :attribute must have :decimal decimal places.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + '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.', + 'doesnt_end_with' => 'The :attribute may not end with one of the following: :values.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + '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.', + 'lowercase' => 'The :attribute must be lowercase.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'max_digits' => 'The :attribute must not have more than :max digits.', + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'min_digits' => 'The :attribute must have at least :min digits.', + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_if_accepted' => 'The :attribute field is required when :other is accepted.', + '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' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + '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 timezone.', + 'unique' => 'The :attribute has already been taken.', + 'uploaded' => 'The :attribute failed to upload.', + 'uppercase' => 'The :attribute must be uppercase.', + 'url' => 'The :attribute must be a valid URL.', + 'ulid' => 'The :attribute must be a valid ULID.', + '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/package-lock.json b/package-lock.json new file mode 100644 index 0000000..40b42a1 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,3934 @@ +{ + "name": "Website", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.2.1", + "@fortawesome/free-brands-svg-icons": "^6.2.1", + "@fortawesome/free-regular-svg-icons": "^6.2.1", + "@fortawesome/free-solid-svg-icons": "^6.2.1", + "@fortawesome/vue-fontawesome": "^3.0.2", + "@vitejs/plugin-vue": "^4.0.0", + "@vuepic/vue-datepicker": "^3.6.4", + "date-fns": "^2.29.3", + "dotenv": "^16.0.3", + "element-plus": "^2.2.27", + "normalize.css": "^8.0.1", + "pinia": "^2.0.28", + "pinia-plugin-persistedstate": "^3.0.1", + "sass": "^1.57.1", + "trix": "^2.0.4", + "vue": "^3.2.36", + "vue-dompurify-html": "^3.1.2", + "vue-final-modal": "^3.4.11", + "vue-loader": "^17.0.1", + "vue-recaptcha-v3": "^2.0.1", + "vue-router": "^4.1.6", + "vue3-easy-data-table": "^1.5.24", + "vue3-promise-dialog": "^0.3.4" + }, + "devDependencies": { + "@typescript-eslint/eslint-plugin": "^5.48.1", + "@typescript-eslint/parser": "^5.48.1", + "axios": "^1.1.2", + "eslint": "^8.31.0", + "eslint-config-prettier": "^8.6.0", + "eslint-plugin-jsdoc": "^39.6.4", + "eslint-plugin-vue": "^9.8.0", + "laravel-vite-plugin": "^0.7.2", + "lodash": "^4.17.19", + "postcss": "^8.1.14", + "prettier": "2.8.2", + "typescript": "^4.9.4", + "vite": "^4.0.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", + "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ctrl/tinycolor": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.5.0.tgz", + "integrity": "sha512-tlJpwF40DEQcfR/QF+wNMVyGMaO9FQp6Z1Wahj4Gk3CJQYHwA2xVG7iKDFdW6zuxZY9XWOpGcfNCTsX4McOsOg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@element-plus/icons-vue": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz", + "integrity": "sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ==", + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.1.tgz", + "integrity": "sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==", + "dev": true, + "dependencies": { + "comment-parser": "1.3.1", + "esquery": "^1.4.0", + "jsdoc-type-pratt-parser": "~3.1.0" + }, + "engines": { + "node": "^14 || ^16 || ^17 || ^18 || ^19" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", + "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", + "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", + "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", + "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", + "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", + "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", + "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", + "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", + "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", + "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", + "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", + "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", + "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", + "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", + "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", + "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", + "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", + "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", + "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", + "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", + "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", + "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.1.0.tgz", + "integrity": "sha512-zbsLwtnHo84w1Kc8rScAo5GMk1GdecSlrflIbfnEBJwvTSj1SL6kkOYV+nHraMCPEy+RNZZUaZyL8JosDGCtGQ==" + }, + "node_modules/@floating-ui/dom": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.1.0.tgz", + "integrity": "sha512-TSogMPVxbRe77QCj1dt8NmRiJasPvuc+eT5jnJ6YpLqgOD2zXc5UA3S1qwybN+GVCDNdKfpKy1oj8RpzLJvh6A==", + "dependencies": { + "@floating-ui/core": "^1.0.5" + } + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.2.1.tgz", + "integrity": "sha512-Sz07mnQrTekFWLz5BMjOzHl/+NooTdW8F8kDQxjWwbpOJcnoSg4vUDng8d/WR1wOxM0O+CY9Zw0nR054riNYtQ==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.2.1.tgz", + "integrity": "sha512-HELwwbCz6C1XEcjzyT1Jugmz2NNklMrSPjZOWMlc+ZsHIVk+XOvOXLGGQtFBwSyqfJDNgRq4xBCwWOaZ/d9DEA==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.2.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-brands-svg-icons": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-6.2.1.tgz", + "integrity": "sha512-L8l4MfdHPmZlJ72PvzdfwOwbwcCAL0vx48tJRnI6u1PJXh+j2f3yDoKyQgO3qjEsgD5Fr2tQV/cPP8F/k6aUig==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.2.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-regular-svg-icons": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.2.1.tgz", + "integrity": "sha512-wiqcNDNom75x+pe88FclpKz7aOSqS2lOivZeicMV5KRwOAeypxEYWAK/0v+7r+LrEY30+qzh8r2XDaEHvoLsMA==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.2.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.2.1.tgz", + "integrity": "sha512-oKuqrP5jbfEPJWTij4sM+/RvgX+RMFwx3QZCZcK9PrBDgxC35zuc7AOFsyMjMd/PIFPeB2JxyqDr5zs/DZFPPw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.2.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/vue-fontawesome": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.2.tgz", + "integrity": "sha512-xHVtVY8ASUeEvgcA/7vULUesENhD+pi/EirRHdMBqooHlXBqK+yrV6d8tUye1m5UKQKVgYAHMhUBfOnoiwvc8Q==", + "peerDependencies": { + "@fortawesome/fontawesome-svg-core": "~1 || ~6", + "vue": ">= 3.0.0 < 4" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "peer": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "name": "@sxzz/popperjs-es", + "version": "2.11.7", + "resolved": "https://registry.npmjs.org/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz", + "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@types/eslint": { + "version": "8.4.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", + "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "peer": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "node_modules/@types/lodash": { + "version": "4.14.191", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", + "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==" + }, + "node_modules/@types/lodash-es": { + "version": "4.17.6", + "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.6.tgz", + "integrity": "sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==", + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/node": { + "version": "18.11.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz", + "integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==", + "peer": true + }, + "node_modules/@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz", + "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.2.tgz", + "integrity": "sha512-sR0Gja9Ky1teIq4qJOl0nC+Tk64/uYdX+mi+5iB//MH8gwyx8e3SOyhEzeLZEFEEfCaLf8KJq+Bd/6je1t+CAg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/type-utils": "5.48.2", + "@typescript-eslint/utils": "5.48.2", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.48.2.tgz", + "integrity": "sha512-38zMsKsG2sIuM5Oi/olurGwYJXzmtdsHhn5mI/pQogP+BjYVkK5iRazCQ8RGS0V+YLk282uWElN70zAAUmaYHw==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/typescript-estree": "5.48.2", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.48.2.tgz", + "integrity": "sha512-zEUFfonQid5KRDKoI3O+uP1GnrFd4tIHlvs+sTJXiWuypUWMuDaottkJuR612wQfOkjYbsaskSIURV9xo4f+Fw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/visitor-keys": "5.48.2" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.48.2.tgz", + "integrity": "sha512-QVWx7J5sPMRiOMJp5dYshPxABRoZV1xbRirqSk8yuIIsu0nvMTZesKErEA3Oix1k+uvsk8Cs8TGJ6kQ0ndAcew==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.48.2", + "@typescript-eslint/utils": "5.48.2", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.48.2.tgz", + "integrity": "sha512-hE7dA77xxu7ByBc6KCzikgfRyBCTst6dZQpwaTy25iMYOnbNljDT4hjhrGEJJ0QoMjrfqrx+j1l1B9/LtKeuqA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.2.tgz", + "integrity": "sha512-bibvD3z6ilnoVxUBFEgkO0k0aFvUc4Cttt0dAreEr+nrAHhWzkO83PEVVuieK3DqcgL6VAK5dkzK8XUVja5Zcg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/visitor-keys": "5.48.2", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.48.2.tgz", + "integrity": "sha512-2h18c0d7jgkw6tdKTlNaM7wyopbLRBiit8oAxoP89YnuBOzCZ8g8aBCaCqq7h208qUTroL7Whgzam7UY3HVLow==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/typescript-estree": "5.48.2", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.2.tgz", + "integrity": "sha512-z9njZLSkwmjFWUelGEwEbdf4NwKvfHxvGC0OcGN1Hp/XNDIcJ7D5DpPNPv6x6/mFvc1tQHsaWmpD/a4gOvvCJQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.48.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz", + "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==", + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.45.tgz", + "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/shared": "3.2.45", + "estree-walker": "^2.0.2", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", + "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", + "dependencies": { + "@vue/compiler-core": "3.2.45", + "@vue/shared": "3.2.45" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", + "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.45", + "@vue/compiler-dom": "3.2.45", + "@vue/compiler-ssr": "3.2.45", + "@vue/reactivity-transform": "3.2.45", + "@vue/shared": "3.2.45", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7", + "postcss": "^8.1.10", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", + "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", + "dependencies": { + "@vue/compiler-dom": "3.2.45", + "@vue/shared": "3.2.45" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz", + "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==" + }, + "node_modules/@vue/reactivity": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.45.tgz", + "integrity": "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==", + "dependencies": { + "@vue/shared": "3.2.45" + } + }, + "node_modules/@vue/reactivity-transform": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", + "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.45", + "@vue/shared": "3.2.45", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.45.tgz", + "integrity": "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==", + "dependencies": { + "@vue/reactivity": "3.2.45", + "@vue/shared": "3.2.45" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz", + "integrity": "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==", + "dependencies": { + "@vue/runtime-core": "3.2.45", + "@vue/shared": "3.2.45", + "csstype": "^2.6.8" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.45.tgz", + "integrity": "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==", + "dependencies": { + "@vue/compiler-ssr": "3.2.45", + "@vue/shared": "3.2.45" + }, + "peerDependencies": { + "vue": "3.2.45" + } + }, + "node_modules/@vue/shared": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.45.tgz", + "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==" + }, + "node_modules/@vuepic/vue-datepicker": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/@vuepic/vue-datepicker/-/vue-datepicker-3.6.5.tgz", + "integrity": "sha512-axf9st9UIjxbLUL/WjbYPSzkNKfedfDqV3wQIBeCAekN2/w45RNmWfIUXIxpbfZKiRo2ie+U23IW20I33oGauw==", + "dependencies": { + "date-fns": "^2.29.3", + "date-fns-tz": "^1.3.7" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "vue": ">=3.2.0" + } + }, + "node_modules/@vueuse/core": { + "version": "9.11.1", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.11.1.tgz", + "integrity": "sha512-E/cizD1w9ILkq4axYjZrXLkKaBfzloaby2n3NMjUfd6yI/jkfTVgc6iwy/Cw2e++Ld4LphGbO+3MhzizvwUslQ==", + "dependencies": { + "@types/web-bluetooth": "^0.0.16", + "@vueuse/metadata": "9.11.1", + "@vueuse/shared": "9.11.1", + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/metadata": { + "version": "9.11.1", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.11.1.tgz", + "integrity": "sha512-ABjkrG+VXggNhjfGyw5e/sekxTZfXTwjrYXkkWQmQ7Biyv+Gq9UD6IDNfeGvQZEINI0Qzw6nfuO2UFCd3hlrxQ==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "9.11.1", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.11.1.tgz", + "integrity": "sha512-UTZYGAjT96hWn4buf4wstZbeheBVNcKPQuej6qpoSkjF1atdaeCD6kqm9uGL2waHfisSgH9mq0qCRiBOk5C/2w==", + "dependencies": { + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "peer": true + }, + "node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "peer": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peer": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/axios": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.3.tgz", + "integrity": "sha512-pdDkMYJeuXLZ6Xj/Q5J3Phpe+jbGdsSzlQaFVkMQzRUL05+6+tetX8TV3p4HrU4kzuO9bt+io/yGQxuyxA/xcw==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "peer": true, + "dependencies": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "peer": true + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001446", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001446.tgz", + "integrity": "sha512-fEoga4PrImGcwUUGEol/PoFCSBnSkA9drgdkxXkJLsUBOnJ8rs3zDv6ApqYXGQFOyMPsjh79naWhF4DAxbF8rw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ], + "peer": true + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "peer": true + }, + "node_modules/comment-parser": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", + "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", + "dev": true, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "2.6.21", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", + "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" + }, + "node_modules/date-fns": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.29.3.tgz", + "integrity": "sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==", + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/date-fns-tz": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/date-fns-tz/-/date-fns-tz-1.3.7.tgz", + "integrity": "sha512-1t1b8zyJo+UI8aR+g3iqr5fkUHWpd58VBx8J/ZSQ+w7YrGlw80Ag4sA86qkfCXRBLmMc4I2US+aPMd4uKvwj5g==", + "peerDependencies": { + "date-fns": ">=2.0.0" + } + }, + "node_modules/dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dompurify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.3.tgz", + "integrity": "sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==" + }, + "node_modules/dotenv": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", + "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "peer": true + }, + "node_modules/element-plus": { + "version": "2.2.28", + "resolved": "https://registry.npmjs.org/element-plus/-/element-plus-2.2.28.tgz", + "integrity": "sha512-BsxF7iEaBydmRfw1Tt++EO9jRBjbtJr7ZRIrnEwz4J3Cwa1IzHCNCcx3ZwcYTlJq9CYFxv94JnbNr1EbkTou3A==", + "dependencies": { + "@ctrl/tinycolor": "^3.4.1", + "@element-plus/icons-vue": "^2.0.6", + "@floating-ui/dom": "^1.0.1", + "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7", + "@types/lodash": "^4.14.182", + "@types/lodash-es": "^4.17.6", + "@vueuse/core": "^9.1.0", + "async-validator": "^4.2.5", + "dayjs": "^1.11.3", + "escape-html": "^1.0.3", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21", + "lodash-unified": "^1.0.2", + "memoize-one": "^6.0.0", + "normalize-wheel-es": "^1.2.0" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "peer": true + }, + "node_modules/esbuild": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", + "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.16.17", + "@esbuild/android-arm64": "0.16.17", + "@esbuild/android-x64": "0.16.17", + "@esbuild/darwin-arm64": "0.16.17", + "@esbuild/darwin-x64": "0.16.17", + "@esbuild/freebsd-arm64": "0.16.17", + "@esbuild/freebsd-x64": "0.16.17", + "@esbuild/linux-arm": "0.16.17", + "@esbuild/linux-arm64": "0.16.17", + "@esbuild/linux-ia32": "0.16.17", + "@esbuild/linux-loong64": "0.16.17", + "@esbuild/linux-mips64el": "0.16.17", + "@esbuild/linux-ppc64": "0.16.17", + "@esbuild/linux-riscv64": "0.16.17", + "@esbuild/linux-s390x": "0.16.17", + "@esbuild/linux-x64": "0.16.17", + "@esbuild/netbsd-x64": "0.16.17", + "@esbuild/openbsd-x64": "0.16.17", + "@esbuild/sunos-x64": "0.16.17", + "@esbuild/win32-arm64": "0.16.17", + "@esbuild/win32-ia32": "0.16.17", + "@esbuild/win32-x64": "0.16.17" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz", + "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", + "dev": true, + "dependencies": { + "@eslint/eslintrc": "^1.4.1", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", + "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-jsdoc": { + "version": "39.6.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.7.tgz", + "integrity": "sha512-0mrzXrHvL2ZLe3QK9X0OEDy7Fs2cFQ/f1d1G5KHEGD+13D1qg56Iovq0uOkYf5bJlHiKPytWVgOOO9y7kLW3VA==", + "dev": true, + "dependencies": { + "@es-joy/jsdoccomment": "~0.36.1", + "comment-parser": "1.3.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.4.0", + "semver": "^7.3.8", + "spdx-expression-parse": "^3.0.1" + }, + "engines": { + "node": "^14 || ^16 || ^17 || ^18 || ^19" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-vue": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.9.0.tgz", + "integrity": "sha512-YbubS7eK0J7DCf0U2LxvVP7LMfs6rC6UltihIgval3azO3gyDwEGVgsCMe1TmDiEkl6GdMKfRpaME6QxIYtzDQ==", + "dev": true, + "dependencies": { + "eslint-utils": "^3.0.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.0.1", + "postcss-selector-parser": "^6.0.9", + "semver": "^7.3.5", + "vue-eslint-parser": "^9.0.1", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "dev": true, + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "peer": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "peer": true + }, + "node_modules/globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "peer": true + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==" + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immutable": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", + "integrity": "sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og==" + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdoc-type-pratt-parser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", + "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/laravel-vite-plugin": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/laravel-vite-plugin/-/laravel-vite-plugin-0.7.3.tgz", + "integrity": "sha512-N6hH/JFA98oW1I0OZ2Gx1HF3/QzkBpUIkxqfKqxENQNLWLFx4+CWB7cxP+i4sGXp9LQUlLbH5Lq/eZoXtLAq8w==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "vite-plugin-full-reload": "^1.0.5" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash-unified": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/lodash-unified/-/lodash-unified-1.0.3.tgz", + "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", + "peerDependencies": { + "@types/lodash-es": "*", + "lodash": "*", + "lodash-es": "*" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "peer": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "peer": true + }, + "node_modules/node-releases": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", + "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", + "peer": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-wheel-es": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", + "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" + }, + "node_modules/normalize.css": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz", + "integrity": "sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pinia": { + "version": "2.0.29", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.29.tgz", + "integrity": "sha512-5z/KpFecq/cIgfeTnulJXldiLcTITRkTe3N58RKYSj0Pc1EdR6oyCdnf5A9jLoVwBqX5LtHhd0kGlpzWvk9oiQ==", + "dependencies": { + "@vue/devtools-api": "^6.4.5", + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "@vue/composition-api": "^1.4.0", + "typescript": ">=4.4.4", + "vue": "^2.6.14 || ^3.2.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia-plugin-persistedstate": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-3.0.2.tgz", + "integrity": "sha512-84vPyUhPA/8Pr+1mT1ioNb2d8z4tvdgYRqMQf8xyauOVBKjo0ZcRBwPQBV7ZAJG43Kwar43nXG2jU+ZMvAFFRQ==", + "peerDependencies": { + "pinia": "^2.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.2.tgz", + "integrity": "sha512-BtRV9BcncDyI2tsuS19zzhzoxD8Dh8LiCx7j7tHzrkz8GFXAexeWFdi22mjE1d16dftH2qNaytVxqiRTGlMfpw==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "peer": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/recaptcha-v3": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/recaptcha-v3/-/recaptcha-v3-1.10.0.tgz", + "integrity": "sha512-aGTxYSk3FFNKnXeKDbLpgRDRyIHRZNBF5HyaXXAN1Aj4TSyyZvmoAn9CylvpqLV3pYpIQavwc+2rzhNFn5SsLQ==" + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.10.1.tgz", + "integrity": "sha512-3Er+yel3bZbZX1g2kjVM+FW+RUWDxbG87fcqFM5/9HbPCTpbVp6JOLn7jlxnNlbu7s/N/uDA4EV/91E2gWnxzw==", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/sass": { + "version": "1.57.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", + "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead" + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", + "dev": true + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", + "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", + "peer": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/trix": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/trix/-/trix-2.0.4.tgz", + "integrity": "sha512-WOMKqwCVti0i3RVaDrMnrEZWs6XMpFoCfUvFCZNd15KndAy6MsYQscizxEpFiCLUlo+rXMkueK0ldRDo5xpVJA==" + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", + "devOptional": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "peer": true, + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vite": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.4.tgz", + "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==", + "dependencies": { + "esbuild": "^0.16.3", + "postcss": "^8.4.20", + "resolve": "^1.22.1", + "rollup": "^3.7.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-full-reload": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/vite-plugin-full-reload/-/vite-plugin-full-reload-1.0.5.tgz", + "integrity": "sha512-kVZFDFWr0DxiHn6MuDVTQf7gnWIdETGlZh0hvTiMXzRN80vgF4PKbONSq8U1d0WtHsKaFODTQgJeakLacoPZEQ==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "picomatch": "^2.3.1" + }, + "peerDependencies": { + "vite": "^2 || ^3 || ^4" + } + }, + "node_modules/vue": { + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.45.tgz", + "integrity": "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==", + "dependencies": { + "@vue/compiler-dom": "3.2.45", + "@vue/compiler-sfc": "3.2.45", + "@vue/runtime-dom": "3.2.45", + "@vue/server-renderer": "3.2.45", + "@vue/shared": "3.2.45" + } + }, + "node_modules/vue-demi": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz", + "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/vue-dompurify-html": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/vue-dompurify-html/-/vue-dompurify-html-3.1.2.tgz", + "integrity": "sha512-2xCnSuog5+OPUtmeAwPZY/6oV9YKuLhjgcl5EUw3jKbmhnyPo8YyCczCeRNGBorVcz1fCGm6PEOIUSXNS8I0ZA==", + "dependencies": { + "dompurify": "^2.3.4", + "vue-demi": "^0.13.2" + }, + "peerDependencies": { + "vue": "^2.7.0 || ^3.0.0" + } + }, + "node_modules/vue-eslint-parser": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", + "integrity": "sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.6" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/vue-final-modal": { + "version": "3.4.11", + "resolved": "https://registry.npmjs.org/vue-final-modal/-/vue-final-modal-3.4.11.tgz", + "integrity": "sha512-tKBM4hcUo16rUGa/UaYMlut11cRfxMZnahz9u+mAoSk8mQNdnm9FHzOeHIcUxNHvMC/YyVBlOHi+2GqOVO8zig==" + }, + "node_modules/vue-loader": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-17.0.1.tgz", + "integrity": "sha512-/OOyugJnImKCkAKrAvdsWMuwoCqGxWT5USLsjohzWbMgOwpA5wQmzQiLMzZd7DjhIfunzAGIApTOgIylz/kwcg==", + "dependencies": { + "chalk": "^4.1.0", + "hash-sum": "^2.0.0", + "loader-utils": "^2.0.0" + }, + "peerDependencies": { + "webpack": "^4.1.0 || ^5.0.0-0" + }, + "peerDependenciesMeta": { + "@vue/compiler-sfc": { + "optional": true + }, + "vue": { + "optional": true + } + } + }, + "node_modules/vue-recaptcha-v3": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/vue-recaptcha-v3/-/vue-recaptcha-v3-2.0.1.tgz", + "integrity": "sha512-isEDtOfHU4wWRrZZuxciAELtQmPOeEEdicPNa0f1AOyLPy3sCcBEcpFt+FOcO3RQv5unJ3Yn5NlsWtXv9rXqjg==", + "dependencies": { + "recaptcha-v3": "^1.8.0" + }, + "peerDependencies": { + "vue": "^3.0.11" + } + }, + "node_modules/vue-router": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.6.tgz", + "integrity": "sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==", + "dependencies": { + "@vue/devtools-api": "^6.4.5" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue3-easy-data-table": { + "version": "1.5.27", + "resolved": "https://registry.npmjs.org/vue3-easy-data-table/-/vue3-easy-data-table-1.5.27.tgz", + "integrity": "sha512-12T5YNA2Qn5InJlyV8L7u6SGOauqgJwNCgFembNiASzFrNV02wbgLoD69aM3yELDVoG8VOckV8XLulwB2PcJ/w==", + "dependencies": { + "vue": "^3.2.45" + } + }, + "node_modules/vue3-promise-dialog": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/vue3-promise-dialog/-/vue3-promise-dialog-0.3.4.tgz", + "integrity": "sha512-JquYYE+1lxuGgncD8Q+8KTFAWUJsNWnhuYPSsOFRKzz3kz66Rjz5pdlEW6GLfUlV3cKak9T8b3mV49B4ouEgVg==", + "peerDependencies": { + "vue": "^3.x" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack": { + "version": "5.75.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", + "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..19ba6f6 --- /dev/null +++ b/package.json @@ -0,0 +1,49 @@ +{ + "private": true, + "scripts": { + "dev": "vite", + "build": "vite build", + "lint": "eslint \"**/*.{js,jsx,.vue}\" --ignore-path .gitignore", + "format": "prettier . --write" + }, + "devDependencies": { + "@typescript-eslint/eslint-plugin": "^5.48.1", + "@typescript-eslint/parser": "^5.48.1", + "axios": "^1.1.2", + "eslint": "^8.31.0", + "eslint-config-prettier": "^8.6.0", + "eslint-plugin-jsdoc": "^39.6.4", + "eslint-plugin-vue": "^9.8.0", + "laravel-vite-plugin": "^0.7.2", + "lodash": "^4.17.19", + "postcss": "^8.1.14", + "prettier": "2.8.2", + "typescript": "^4.9.4", + "vite": "^4.0.0" + }, + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.2.1", + "@fortawesome/free-brands-svg-icons": "^6.2.1", + "@fortawesome/free-regular-svg-icons": "^6.2.1", + "@fortawesome/free-solid-svg-icons": "^6.2.1", + "@fortawesome/vue-fontawesome": "^3.0.2", + "@vitejs/plugin-vue": "^4.0.0", + "@vuepic/vue-datepicker": "^3.6.4", + "date-fns": "^2.29.3", + "dotenv": "^16.0.3", + "element-plus": "^2.2.27", + "normalize.css": "^8.0.1", + "pinia": "^2.0.28", + "pinia-plugin-persistedstate": "^3.0.1", + "sass": "^1.57.1", + "trix": "^2.0.4", + "vue": "^3.2.36", + "vue-dompurify-html": "^3.1.2", + "vue-final-modal": "^3.4.11", + "vue-loader": "^17.0.1", + "vue-recaptcha-v3": "^2.0.1", + "vue-router": "^4.1.6", + "vue3-easy-data-table": "^1.5.24", + "vue3-promise-dialog": "^0.3.4" + } +} diff --git a/phpcs.xml b/phpcs.xml new file mode 100644 index 0000000..d90c3c1 --- /dev/null +++ b/phpcs.xml @@ -0,0 +1,119 @@ + + + STEMMechanics Coding Standards + + app + config + resources + routes + tests + + */database/* + */cache/* + */lang/* + */*.js + */*.css + */*.xml + */*.blade.php + */autoload.php + */storage/* + */docs/* + */vendor/* + */migrations/* + public/index.php + + + + + + + + + + + + */tests/* + */data/* + + + + + + + + + + + + + + + + + + error + + + + + error + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/phpunit.xml b/phpunit.xml new file mode 100644 index 0000000..2ac86a1 --- /dev/null +++ b/phpunit.xml @@ -0,0 +1,31 @@ + + + + + ./tests/Unit + + + ./tests/Feature + + + + + ./app + + + + + + + + + + + + + + diff --git a/public/.htaccess b/public/.htaccess new file mode 100644 index 0000000..3aec5e2 --- /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] + + # Send Requests To Front Controller... + RewriteCond %{REQUEST_FILENAME} !-d + RewriteCond %{REQUEST_FILENAME} !-f + RewriteRule ^ index.php [L] + diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..2085bddabe5a0c2785ddc13a624a076984ab0f28 GIT binary patch literal 20338 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Λps4wd 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 OK{TGOelF{r5}E*ly5V~O literal 0 HcmV?d00001 diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..2a25ed2454912b85876d8be0b54a32ae34db222b GIT binary patch literal 683 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uuz(rC1}QWNE&Rm5z$EJF;uvBf zn4BO{^5Fmf|2@Z!9b0pPFE}9Jfx|Q9%`+Wk0s{k`)55~`Z@c$W^m?BCi{Q&wvMUOn ze>=H7KmLArU|?c>*3>;SeXqV)-Z6*Qe1GqL`Rm-rUdQjh_m}q)x0%E33rfc>+*vrY zxi|9p*T2SluCKcvdG6%d)aviw&W5fsn#9=GnGPepFcleNP6;* z$NJ&?F|5)bUjBV;{eFFH#g{J!ZS6EQ+f~_$cf+ISKP1v_cbukQ*lz` zL;2J1-_P$6GWDN%vhHTV-}mx-qIH3Bw%)nfZTi#uY%0o2UWHDG6BA%$eim=HKJEAJ zyDw!o&u;&5*M8rtkLf8}m;N(+Q~7E7`^i5&*PZ;HZ@9euR*fl z`~UiXul*zaIQLk6xcaDf+nK*R)p)|^8yeXBKd19K`ul3z%{TPh>iH%0>l1$HGF(2) zksPsUgUQkVKZDPnIPu}Xy-9)OKjx*9jW!AllLg-WKYT{#`1F52lX->Os~v?-d`w74 zXj+kyV8Q-Go~>v{gVoQ*HwFrArwsQoZd}Na$Kb=@wwg)Opf$_DQOD#CL%^zv?qvrg zI{S6L^Lon2u`w|*aoyivf8A-);gcz8X>~u}-rm01Li9o?6T`f%r+02_?+6AZ6i-(_ Jmvv4FO#nj!FcJU& literal 0 HcmV?d00001 diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..4f2893cc2bfd2ebb7bc6be37fa7ff1fbdff02990 GIT binary patch literal 1587 zcmV-32F&@1P)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91AfN*P1ONa40RR91AOHXW0IY^$^8f$^ok>JNR9Fe^R((uUR}??5Eq#Ro zrBKWG&oD+#AZgbg~!Dy%AAk*P8oq|f{ zbW8AKv%vf);s;m}u(d!-X>0B0-Mw|MgM!2mvSbM-Il1SZd(Sz)d)_(cJ%CA?%)tL4 z17&4p+^noD5kiO>3-9dNv!{=>Kib}?4x^%?#5$cWYk7VV<)oZTRNdVLK~u#1maCT) zI&I%-jYf0B(^-6E{It6%(k8$Ae}1BE`AtUlC6fFQk%+c6Hy`cuJU`+&F)>jn3=*9Z z28zzoG~N99HwVy_8%osHHRxt}TQ`~+mv|>PH@AX}8-#7U$%`R7nJA`}^SP zl}4yPaSSe;JA?A1D@8}D4|Z8BmS)EG<>0^_E2eud4!w2)?&-|jIWPI{_V-Ws>kbO4 z2w43ZPas{IY6%HlKP6*X1WTc{KY60O$JlZhp{AzB6crQKdR^X_a`D{BMoo7|nnABO z$NIMm+f-~l#h;dGHk)T$Z;{us*=!wSM^;38C-mw~;OEPS%>Ispd-v8F3ku4tQW`zx zo&I@hg9U-tqHKyQ3NA*y>Y|0W!$QuVukI(d!)hQfFt8BcEELzk86J;^SRBp|3BktX zySEicgQC-HHk(Eu5cul#dLuC=#OLz``K#V&Nk~feI=HXW_UK_pve9T9%v<(m?5Z`Z z8$v_H)S3F<;bD&kYLyzK?@%7oHSS;a%-RD0QId+UE-%+{oK7E~v<#@+FN5t{Hp8Il zDX=-NSIgMCR_)_1*!0RRF!JJ|zFh)VyThgT_lbZ-xr-nnF&c{YErHUw9dPW(DcQWt zoDDMByEeuNixHSrB9X8noK89xD{MA9Yt#auLTy1g09YshM~bp%n<;H@*hG${ywvMl&zP3J@g^G z_x?sO^s5^zgZ(qC25pL^@8+)iZ8tuBHCp95eosxoQ^T;BzL%w|gB603;x^w&P*9f&`3)lAmRaM2?x^}HG1#s7~SWmGEIgpcPvw`Js;=Uyo z4i+9D6zK^-l+&f7@XI6}Na4|jYrAVdHF002ovPDHLkV1iX`*d71? literal 0 HcmV?d00001 diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..45023b3453e7e3fe2874adeb9f142b5ccde2a7be GIT binary patch literal 15406 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 Yy9e4m(C&eD543xr-2?3&XbTVg4@8qP#{d8T literal 0 HcmV?d00001 diff --git a/public/img/403.jpg b/public/img/403.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8d1ec7a61056f521f0a5536dbb81e11d2e59da1c GIT binary patch literal 46264 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 JtFiqY{|{sw&{qHe literal 0 HcmV?d00001 diff --git a/public/img/404.jpg b/public/img/404.jpg new file mode 100644 index 0000000000000000000000000000000000000000..193adfa624a878510825fd4c2b68e856a528933b GIT binary patch literal 136251 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 ecu?~n+O@b7wsC(^s&J_#+z(cOyk$5 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 z

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�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 JtFiqY{|{sw&{qHe literal 0 HcmV?d00001 diff --git a/public/img/discord.jpg b/public/img/discord.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5ddb924c2fe54ee96b378d45d3264a6948eae5c1 GIT binary patch literal 97542 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 literal 0 HcmV?d00001 diff --git a/public/img/green-screen.jpg b/public/img/green-screen.jpg new file mode 100644 index 0000000000000000000000000000000000000000..eb804684b875ba6c14058c53bc95379a087118d2 GIT binary patch literal 103397 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⪼{od?aMz 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�{;#RVUOmp!jLa9mh_(Tii* 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 J1e$0M|JlY3c+3C* literal 0 HcmV?d00001 diff --git a/public/img/logo-small.png b/public/img/logo-small.png new file mode 100644 index 0000000000000000000000000000000000000000..d40f6b4524a40dfaca008e14186621e30c309321 GIT binary patch literal 69047 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

N)=rEl8p;-W6pGy5lt@s3=f-czPP(n~( zUMXkncxGZcCXCDu)GL7Lx8te91TxP=F>(dz5dbm=_y^G#iwp`tq6%EJp#2>kDj@_*u1<>_KjF*c19U=uU?YP3Zd zPw2z$K_2Rw5Q1t@v*U#WrQgDjsVvrigCB=Nzu>!Y+W3@*(SD$o%pW2Te(XX3tAUER z{p5(oBEZ1-#(0uoOrYM-d=T0%)FN42K@WILQCH6rkKb|<loV5w1odEzUuw z`FI~}RjejcAQ<;=+SBP04=`^%6Xo!sKk{fv0={9B;R+sA$?b#t_W7t5n5iV`XW;YP z-;idZnL{Q~b4OIRVcg8f|FR_mG?VQU4Vzhy#Gy)VxSR)B!GGpS z8|K#}dF`PD2)C;zT?`9YXmabBJQ?;s5cN@K$8NqFg@lLr9xUh*mQ)s7lbVEwDN>t_l8G*}jmhnNXkW-wMTo;sZ71FQ@Tj`~-qQIqn$!E`LBHdqm^= zamJ7q@(RieBWC8mSsVAR51F?sP6xTdl-Zq1ZU|EF7ub5fndcobib1tu+!_E5_4A)Y zd7vYLj={WL=o_EA_$b2MJ7;zVVTk}ic43W{VBm*)0ky&c!OyT@W(_#U4-}jaRd`SZ zoEq6U{RgvO<+w@zIr1n7dTzKl8=9ABOeG&E;r_ooj{ZLu`Wxi#Y@hc?IBxsl*wRM& zBk|-MQVeIB!e#Y*5D*a^x;woYB3)~)}@z`y|Cz~JD5cS>}KF=9x&VQx;&89;UH2uKfC(EGA0 zE;(&pqukN58GuYy=llBlspN*1Oj zZ9bP(0KYoKF!6kQM2{U{^bRv{pdU)`zdy@v@x9(FX>wi_;wM2DS8^9vR)Yx#b-nqC zJphnL`4ZLar>%h);#^i1mKV{XCPm%AJBUT(wAj+ukRf`toKc`Cy3Y;}eZD_=N~sB=1!%shdCb${imY3-kwspsK0>-nCue18-VNkDNmpn~-PJ!a!{Y z(fC3whu6IIbBM3K{b6rWQPEF8XXxIc!m{f^Tk%5dZyd)^v)qW}|dj?Mj{u#nUWUPovSd4*zzh@#On{+T9{mY)9i;FS>f zw)d;9GP~SN`|)d6L)U7abMfmZ{%;yfIrj_H3Q6?;KYo=I5>e~|{&}Q2yVv_F`dl3b zU^-%QP$blqj_mb6f09Ixjsd;~VnbC6(7ljucQpdUjva$Z)UrzNh9J-*sU8$Kq6Ah zv7piAB&b@@G~zAYGp&CtB*m(|t4<_9-2y~|d!Pm;T%6A`oM4u}`c7k^k}GIVfEgS+ zL`w0;cS6}@bBgMnco4&O#M;*d2~{Ww6n>x6C&s}m`x%o(b4?p))c^R{pLKW zwS&cfDCuhvq^nD34-02zqhTIibhM|Nf6+`4=aoD-BS?5=NRBH|{R^MM^~W!J}zr>}(Jq z_Toe@PNLQ2*4uP*))DL6b_;7uwC>pr%NvoQQQ3bFV)TK;iHz}zCtTSP1SGP2tV|6v zpgein*?iE?(#BPVZ1r+pT^^dA^c#ovl(T}+X%YP&7~!6J9(F7EuUUZvaNj3&K1K<^ z8S0ysRx3krM6prem*k1DBj2?sg2qC5sL#ex&(ATeeXjZC)3m?;AlXpMRl|s&TvGX5 zS=>4I%mkei{|0+kE`l?C^`AQ{dGso}??2RA>D*a0w{9O2SuvEzaYK}GF<+MlAVEJu zd7+_sgd1wcGA=!p@~N6qxWC@LBKg2-=J%HQ@IH^>z^X9cD9pv=6)s{PBF^R&^S}P& z-*CFR!5eh(eBu1H&`)AK)DgrQlqsOE98WBgH*`Mer98hRL>?((L@f5mwT3RHH-4Ff zCZ^Xa-wk8TnKz|{ylnla>%$>FJV4$T;8+bWY9##Q@OK~9yZiUeprv#a?_;t6kmvG1 z(D>-)St*Ss0*se4my(pKNK#_s43v=55y44%KY^IYWXdIJGtRm;L6p4g1@7t|9VfZE zRc8lmA*Pm)1?suni2U=65~JB0r?Wd+PKy%h7}IAf2rJ|(EfNzyd&d;4Xr1UzA$h%_~(q^3aB+fsc zxOZ&-v54myL#P`YCRkCPBYGI_e?L1)z}?o$(Fj_yX_W#)y%iIPicBs3_6AS zdp1;b#Bq{Oxqb-*8X&r1ZI=nH_9%4Lh=G)87d0n~bvDfh9uMT=YQEMSM^$M0tVvt$ zM<0WvxBT}-59Y41D8fB1)AzHXfe7&zEpProejqd!G|P+(Ck+9SMyDu`!v1S9> zXFHDt16=#;7rgIBb+2cnyC;#H8Bc`l0^S@AA$A}cU~ODBGl_HLM^>_L|I8Ls^Ywlw z{z7`^D0nK2NW~w3mKBeCq@%W>e|+rd*H5!z2@MZwe#{U1$8&iE_{6Xbuylr^v&jho zW2Q6rP0*)~lQ>SS;&}0SF7b#mn-ETQCE_VOCsO|$+z0jihwOOgiNHW^Mj%}xT7zn4 zchd8wKs&dLPN!G(IwFjht`>b7YA52$PkiD}{lh%`{MeTseBw;nOGthQIy2Kn)M!jX z>xykl7a%unO;D9f5$0SL_3Yw$cRiI~(n@0f1jW_tV;#{A(ReILWRShz7hOsTf3)&c z2`=D1%-|nNBBdsy^5IV=;uow!ijrd*RLfhKxJs1CFrdKAqbxhGLQwp|oF(seUg+8W zae2x8z92qV=bb;~JI&%wotHOTX{p8R4-&0IdwbYLU`Jm|$K!JxiUsi${YBX}=bq%8 z)JSh=Ih;7vG9oXUIRQ4G%Mx3!js+XfxYX-mL5H|uzubt`MXz7VfDTN~(wBdB#PKDy zt3{wI@Qbh_<{|hT6$vm`V^M!XuAzOHHB@c0cEJ3FzB&y3pyT<37WPlwLpo{aCm#*m z23Ve!%Y}b_rgDLR&-jippz|tn=FM-_Qgzrg|6`^jY(L%F!REkO<*oCp=(H-6Ki*!W z(=)!=q&clj5hc)FQ(T<;bo=OebJh8P{~Cvi^s{{c5JI_go^(5|M1a5#ph7OYZfQM8 z+2k?4enKP45p6Z>!kx=5Y-pN(;d*>e`MO#B$5`w&?v>%8Ff_J=Q6eI>f#wFo>Dg|l zrDI!=zJl7-E$?p%ia57_+~2IHf9a+U=>~1LvLc>pm9>3faL}@QLfS)J3@|*bvJg0G zXjfHR{Ix#uEJ{%|mplH&psk?$h+omzPQsD+xSn3tZ90d4T6V`hTT*0RtzUj=ZGu>k zA!)=%Xdk%cx`mTeVmL*R!1zMdBj?uA?YTCNLpf)t3}Yi-$D0;9@cz#d=Ad{h*xKc|WMZbkR)u?c*YpKdh)umAD5=7NiE400%$fL`)CScwClS zi9ZYsc^>Y8uNdTC+#3+yKY$`0FI?Tq?(F zq5fXXk2e1o$H`CPyMbt|)c(9@m_a{(%8_Kev&`vvuHE5WVwOX|psBJpz~2$+WkhL9 z<(*J>j1NKGS6?wTdCeZZ7y67wbaz!+f-PZsdd*An8SkL6LZ5JlTpz4~`e#`@8#rz% zK)dtOU@kvf!C44W-U6#^TN?;S@~ zbc%o582gG*f4$qfB%6{U-YHJf`x^Bz>NYwp#w{jUjvmi+a@W#%E9=~Q19Uz1`*%je zIMf06|NZ));pmF&l zgvaCB`_Z4d4%v(0-o#AdkY|O#WnMEK#ESZe_32|4-X}q?_z63Ep1RX1w?p1{Z}G6htq$AYz8Bi9011P) z7LdpfwbGMrf6BDc%Xz?!3Y#7j%hWBb(m-e85_O??tVR%=;k~!4a|MJwOG7Z}WkB8^&M1 zeVI@Dj*H!sIT+9;Of$Pp5H8Nf!D{w60cvQdZmPAAg%(4P$mz)uZL|=KNy~;m2b~8^ zOAIr=!Iv7Is2lyj^0)uHNs(g5f=Z!&rKv-Y;(%<9HCeK_VLTpX)5b#8dQ2NNv^*?V}s)n%R%S8FQC@Y zOQ`xMW^mR+UF~Qb!QY0K)R&D`MuUO`>OwF23oGN7w-6K4tL9~Wq`HZM`~_#O6W4uX zZQwTc3~IUbqz3kq)drGzd*9MgC~%yHJl&z>-_OV6hY5bIyVEie{FNI0o>U_($)Q(> z>eG&+v)z?7lD2>FQ7I9QVNsmcj#UsRZ{1}q>gw3jN8<~@jg_}69ANBORPtdPBE)Qz zHX(Hb<bb3umYl(S@Sp}7#L%@yg3g%a)l2>N5C%WUoLElkj9#MiJ3)Ff+~dTHYtCuA=%X#_~rTdQ0cep%D+{l ziCG7jNrnSFSp+SGE(4>%Mz7nDpf?ad7NUIVeOdlG&)FB!`8Ab@bJ^6q5%IHOh#Sl2 zqC$c9xgA=fC|OVa39o{v&# z)dGj{_!O#{qVe+dTnle`WFBFnRPU!pC}0~~Pb1Bm=({g_I$!O-AwBE`P6N(&ig$t3 z5!(|!J+B2^dcx7y{n>|esfi6H5G8u(waVsZwKa!Enx~eu*ihM#9QxT;J~ib4c|-vz zxh-23*Qv&Cl$%7kujhN&coqT}tKBc%4!juBZ!y68amzJLG)UPm zB0=o!^({*HL{O=OADZjs7T!vYB&92dlfzLltRG&->$I)$q_Njpz^{dnT~|(0a`lZv z#arscoh^I2>C0<8>6@0kng6GRAdyrvH1y=XQXCXq-3pU;|(+4EIpe`r-0?aiUSSn6lUbd zXRVY>$F{4X!L%4gmtt`SH#l=IZNpwHP`P_b*&>F91fs`%yPaqhKjWTDZdZ+I#k}D; z(IG^CT{y=JJx2ZV1=e+*@z~Qz<+aPXF#|XL;@k2>n*(BhSs51h)h_WaN`!Gz9>Ulw zf`6~WqO!a<{1)2D4SuN;pYTp%k$Os8%16DYU~_Y`!Q^zDh*xMR!`+6V)D5B1_d;^% zu6I!3Dq#Ft!Vt8O6CzJ4S_Y&-T*BVCY^rnG!fSgx;HFPE;$i)6#1P#Z{V3XnO}=V! zyeKQ$&`||`3G>DNfBFw8N@MA;C#iAmtvqoAU6eh5(+XA~Brn8DMP=V{Z^jhO97 z;EQuY)}kVpMy!rsR_fdqq>(a7P4O_AdG(hH`SQ8$s2}A%;;l46jREVv`UKH30v3L} z8Y8Vq{8>3X+1yfLtgW6wJi>XNP9*01G(+tGJPgIK7Y3t}c<_8qf>HUQ%U^t_`V=_6 z%=UzC-qHU_-4)R(Ah41a`BpRVq@5r~=;c0z+4Iems+!WZr0Ad7n#iW|YbVdTWN7#2 zI5!?(+sV|82d6T>7m`i#c(;5p{WsVux^oyt5C}1AIV82M{H8BwZFz z2>XP3c3ex#&~i}3(6sBoi>b%p7YldmRJdUe?L7C57&iq zmNc;#;+4}SdtT9c@E&6;M+#R)zPT~M#(H>@ue5{=wN_27-Z-o*1ooGQDB?rX--H+ggXhj1$X+CoSNKj^IJxS8m;I(GG2(c=8 zrZY<#Je;D|3yZYDocD z(~>BX?zQVzSpX~j!-EgQZ%ru``~%^XL6yI`DCzFZZ@pUu+M0;PB_9i=T|tD3BN!ts z0S$a$k4XmhJb`0)X{`F0l`cZxt99Ik#BWzUcMpbaOr+UPL<^YtD|lkoN*F~AWZD#L zC1@p_*8|!{0_Smi_FhZ)%t?QFc}{vOyCM2O9J#2ka0w|Qzd@{fZZ+yxoTw#?eq&is z)|u+9!NC2183>Z(+^AT?@73_x+D$Qb!Z|%%r_L<8Uy+oz;0@X;Ekh(iOqUwg{Inb9 zFYNj?=t& zkIE8cyupwfra-d0D@X-YM0GVmOF;&HzmRp)9)>GR+_G`TU*V=lY9%1)9fxpp+Da~p z_44jx$Fg{h!)Wj^g07oROk>tWkQ$b`#q90&8;{24U@QA+*!uPD&u z`FN6SMn9A6m$E3R@p;qzW(8*v|2_!wH@i9hrvQ~}VA`$Z?+hpjiP2g#G&Hzw?j+tN zCY2^+(;azQx)bN&x8SWaWp*N~6Nf|o1HlC4L>qdbj3IM|k!d6tIkJY)wvMd4;6s%f z?ukGDEmlEz8lR8i!_@k<6Mb#OO~)Z_#pw6%?hl(p`Q#4WRuGIr{x6Ne0uaC072PIut*Z+yQl z2FT<$pR2zykbFhc_hB-LwPvT2gf?}c4PL~I&&pZvztZzDcFAz-UeswyxKMa}7|0h( zh3!s+35-AqIE)of&r0167hl6u`xxvOUE`$Vz$G6MMW=nxoIY5%;Aqvrk@oMCs;a&% zAZ)c0;AeYTYd#h=G23D}?c|W1$cZI*esG>4$~b6+cw!oX(PMBuX%WG=L?4UcB&~n9hp#L#jkmp{up zKjWpkr@oyi$B`}zicU*YH~5w_FvvkuTZYn=@MFv@)X?zjLK%htQ7fL!2Wb@m?`?ht?A#2Cl?F!vlKQomDkWlRf$Ae)rfzl>r3`=-=Tc3KRhB``L0vvE2WN%UIbHq zZuodV?+@99G&?LoC)4wlSW*YdhPa^!1>3KHq|DyXP3Uw`e>+>2s5dPUYp&8eS>{Od zqG;UFa}+?Pk|BebHnDbFV3PsLHPhjls1ko`0&tNH|XB^>=QaDzcBDWT!ZIDbuEQ0RVB zCU#L)+>qX)cONw5KIPxmcMEq?1_D9QtlBcb-8VD7NvLe>|`$u>dHyDI% zZn0@Wq~S9~BAsKoBXf4fqz3^<4RRF12^%R9Y_7pwG1Y9~pn;NuV}QvUUC2OXbJf+6 z7-;sl(kgk&>;l`S%OsrXurTb+=Fn-2>MBZ#iKkK}+uxTH3hw;`dYp_6VV>Ql_`kaV z4j6mimjUZ8xUauH1F}<#!ijYv7^0I>%3aP`UKV9V-(FJGnh>=nrHF~iwIqNRO!P3M z$%3^j)RrEye@uH^o?p7rAJd6qRN{2Z#}a>dXseL(YVzWZ{s{=1m+wwsYR9 zhQ}jmng5Yv=4tBatH-%Y<_uSxnwAKlBT@hWhGip;)P(8M{*Tlmz0d1}cs_ITXF$#( zjd$L>Jf_Y29=SMXl|nJ!QfJ$DrQA%ZrBOD#GQ_(b?}imCS!%J#!_TX3d~L;Nff4@% z5k^f+$pvH}ET9dQr1ypw1^bN{IkA+=B6E!6_RcqUy;d z_=z!D{)GbhjO1+)h1-Y$&PNMfm4Jw?=M#`qPkR0M%jOO06K<0jgT>A=!kh4*DpsS8 z6ld*DkBD=u&YK_TDS7TFo7=TCd^Jg&nI*nYl4#uq4%~>X1g*q2WfCex2lJ_e*nj); z_{=5jwsk#7n&alF0JhHWU^;7UX-QzxcQp)oy3@uhQzxMiH_+;QkG=eGdPqkhZKkPV zhDem(9@86Uq=rHjfisSek~gfvV(|&@hWNyJT)QeT^GgxJh(1?1{O&LG%tu#It|)Bj zGchv7>XW)-*@kK=irOoqAyz3cub3nAs9*@OVWj!pQzX6jDKUlN;zrMVo)%ABxU3pq zP?Z0$0EIn$;4Ju}ysy)e{MwLoa*%DZ_uJiLeT#4yTJ5oDW znKCt70Udx2hymE{W>$(3e`7Szw9T=a8rFcBW~@U;QtCAB+@OAcdP zXigSOT0U25uoq-n%0d=dnZ)?}Z}jIW1cYx4b>&0|OPR#u;RsprNExvz(xXMZE=H1+ zU?rsitc_hfAbUHXt-WH2!er)PDf!@sJeg`SR8g^(vWKpmEf5Fsijj_Glc9aqC06q* z9|;fD^Hu$~5KZsrhN;QicgV8mQ3C3os1?m+9cljIZgite+6}}vqd`?MqdC1do}HOi zCD)y|ktHT06)DDkKv^Y1JQ=eRAt87vyX6usVj_4VS3p?CBRR}n=jlZEFYlw%+yw{b z16lh^TC;w9&aLd;6Ks(bx5~ z7#nv_PuKoUc$+TtbIym~{bplHo3OPss`2rKZS>U#T?`nxKti@AX$kF0G4zE*Ks@Hz zdd@d5oMe^(wBR7@v3{%HBTBYNKp?KL7+VpfHQ{rVdRbhp$=(e{(HK*Bw%(mx06?CH zvgBaLC`-FtsF?i4H-3$#D?U;o-$UD0q8rhKiH41ExnX^9^u7M`AL}Wd=cKgds)a9S z^;_Q7tYzNM){$29WF7aZkC44f$E`Wf zfQV~9n5#j+rM|BF6!K73Lqh+=htqSafas%|k(fOWqqg9W(diaBYK$#9ta9GoFFM=L z(`QrA!I@AMLG;q^dN_WhpN@9F>+p2JDv|}wmWF`*qF7B3otV?oo}pazKaAt*%UGRj z*j{sdbVM%#$(Gsm`jmxS5BY9SJY4(`L^U=!xilX|yMih4-sxkw{-N?pwuElrOS1_E z?nnINhxMoA3M9jR54?W%qD10E>bbr##xN^glAcPfH{P>7KN!`*IO)ANm`puA*;@pO zXj{H7`F~~oSMzkvU_L%rmC43Yia`@Y?um_g1=p!R%J%r3VJ>eS%?JEYS%%@EUL75| z`fuK_Y_S=AhxEM6Z1H;GO2k&)T5^1@5khTp)MZf>xN%Klv7lqz_ih^UqS)*Oc-p`n zPFh#fvsX7|b^{QMR=|xRTxsKKA*}oQa*{?mDPD$}#&C0v@|*sto}6FE!ah4-s@S)y znisrCrN0?&Van%>Et{>B@9`mb7%SdMT%%d~00CoBc* zL_L2~&G^h|S8w>G1V8R*$*<<&eS!Vp!3GR`Bw(%IFmF!a>^nQ7YtDVjj(C4xkMX$$ zdGAdx1}!xU`1ywnAxWS2fVuH^T<3(fKR=&JnoU2#+YE3(riRI89}c(=X4|8S!$EI# zG?hgtE!RqH;JWgA(ThP{_q)uLwA5`8X?ncX;(VB}gV#jrY}y@y6DjV8d__ba>{c|U z!`<)HXc_z#c-)mN;rx@-8+~R&HJLvJDH^=}t^+&{#25DGPJX%)JYEU^5YiWf9IOS| zm+H1QVi@7S_-^EF+U7OsoDcs`73 zf4_C9%P$6drO7&SHfgKV;iICu*ZylkmPAw(khkzCKyi3TKtQ;~nHVMom!SH5Rc76H zO?IDa&CL8M!f}p{?+a9%ju$&osNr)cO!khP>GoBjsT|KSs@jZvOv`*TOt=*(wsPJX1h&z6&*{PB;Q8FSk2X)610arFTQpIJXrhJT)Nd8iByMpdoZ z#GO#y>?wVPCd+zOZZ5@w^E}(1H>+WNROe&%X#H6uw@ccsS^kai(n+{$!vLBeVJq^^ zkP6Es4MvU%6}~e=TDp2d`WQ6Flqgc}6Vpr6Rc7v)4qN`kNb~r8JVOd{?Br|k?j80b+&$Hkl${E;%TU4Wd5^Ii z5h;4SLTW8V5urP>4_}_My|jQeX>-GiL2KBdKhNV9<=m8G!Tp=#@Xi{A#kKd0W zLKyK^FxvFLqs^>KiHwR8c_~?;kg?g0I#m%bGUljKJ3gB;GBVjlz^z~!-}Sz+zGI{} z{MpsP2*oZ+_Yg@b3 zoc|yISM~Cp#+_O2)R*O1Vp&~h>#xdGJ{7ouwI8VzOwn@t6U@<~RdZFPT`^JP_j^&_W&CRS@?$-*z3B8HqDP_w6LAk?Q8*j!#e5`g zH4~lV$WWDsVySwgJ1<-$-`3Nfnf2&SlD!<@5J^A794)n_@G=9J>Fc^Nvw=H_FNc3%?LO@y1wCezudNSY z2PKMlQUwI~eh^eOknO72mQ0WKW$6``v{0M=u5#nE=q(N6mo#X!y3-VgQE99tR{c_K zAj+aYarD^zpSjIrdxr#WJon}VRrtmJHf@1Je_JzM2^n?3+1lqyBhYFmfS057JQwQm zsU5i$agUO?&GMfygUexQENC9gP{5k}Ud>LIpO2J^uzDrvo8#clOzi&jmOyOY^w`+Q zA7a)t?(6*z1Fg>*j>foE5y8_HLyhmE?1J0A;h*`5R#TaB?uff%d(hM4RObhcGEy(H zlVjbFZ;e^N7LXhIJ)%sm06S%0@I_m{y=Q{o z31N{2A)cW7^F>)vKNXpx5*!g}i8kFL)VC`%at}YkO&CKJ#sz&R@4ksk&=U(LPB-uIT)K>H+W6TFmybqDEr-K|EZ+^$maPnwjXd>HyN>G zF?J=nohXBxB>0UV_h+Y9+1?YLOv2qv4DqEg;wpd8si++{=!X78>{I)5_)-Y(?^%Jr zXU5}9(-Rh-k5Sl%N@gsy+dqQ*_M&HBkfLPoQEsgB8)TlIf~o?ePVqmxWbAA--p}S% z`Cia8+v$y_sa)DE)rrmTqIQ?HePH2V_903xS04VX`u~a+v)PncEY^OOh&y!*Sd5Vv zk=YoUc9l_Au=S*ji__*)Awk%$U%4fv_nY?UqX&zl(qt{;xjXGtG*S|eKX!*cwTIfL z2i{mD<0yg-=^u+no!sWT+f!$d{LpR;d)40SRAnF~Qk0ZqUcA)Pm9+E0-gNwy6+AiU zlE;9CfbsstMh}LokuMKsGIOvz=dVaonqO^~NiVy96n2+}%xvMTY(sP3w7g8t`J2P7 zciP?75TV6z60h?gygL}jN}k0`gZHu(O1ZwR-1J_$=R6H)ZwgFC9N;x8puzxhQ0jpb5v_@bllGu~+o=OMnH@w{Pzx7PTnOVO;w8>6@G10>$^ z{x%L&S+KZ0<8sLihMaa7$RM0NJ~#rnGUS5e0UQ zss0U0ELS_6kIc7|^>+`f7&}eej8og{K4t8d4_Rz$=yMANXtc+I{H^V+O$W;^|D^c; zC(}Q5Y|9C0jfi$wBQD>y1g?n&-kw(N{b&9c^7P1Xe|^+nHnd-NYRV)N|70*T5t2w< z&`O=ZH}J(YCM8o7jUqC^eAFKVV9gT^IUA?lYdNOI@-=R4X^&muU;c2nRNYwRjh{PN zKCUMeRCEZ!bF?k0-tI;)p%cB5iQzM4bizMrfr3X%)S8--=jx-wY9APf#oJ=L8noU% zHdjWbY?r;I!IEynJ9J|dj*xp#@Ix_D&gYI)Tu@d~Nr7A}Yj<@pet8MCsRf~vei7*v zic#&~xa8ir%-z6;PF^ZA_RoCx-jVdwViF|!H6<2lnQyj*X zHzzB9;8QWHx{a^(Pt-Q@L56R^{%nO0&S|J%Gv&8GUN7aUq+o)dvQ>bWOy~x{jmrxY zH0964!rIHn%9s8)o)*^VJ;=z7&F*#UUmxgwys5$^W+q2EhOaezOc*U(wUQw_D4(w# z)@P4umIgc#UxTMu^SU^_Swr6~hn^Tp44cH`BrD*J9+uzsb(S1@f|B?>2`wDkvtT`l zq|{@951jOg2W2n3Q{YRJG3j{mgc~JSI)ok`cx)VW&h+bBs9>9w_CCiJslzAuCWk;m zbj;s)Fmp?CTpy#9eNaCMi-#E-J(X3du22$oc3h(R9X3!6@63ET!=PMhjHcc>oc3Jv zaTsl|Gk78 z)0-h;!Dl$!=T)<6;y6Lu25vzVr}=ZCzXNb@xB|0aiS_c<==FP%DMqfyJ?VMb{*CEy zaRJexL9S2AnWp5Hnz`N#+&UQ+?|0t}2kZYCc*AJe{+>i|O;7wl1;73Ycjx;p_snt< zIai`T)n8dJipP;xly3P*ziH7}d1+}T{4fm`W}^GkVnb%2ry#m;P@G%U+wDi+Tzb%dcZ!c+LS`5nbZ{OFChxEwTi=8LtjnvpnH zho^sejXt;?&*u*g)CvUna{OMxSUs#e$}@2I=aWNsQ}Y#VRH$P43h)N}#BJ?7<)FwI z=WN3{^U_0@s{#W)3B}WGZ9puo!a}Mu;L;rZ#NR|$4Wybc5I3D$pYo+BcvXd0 zo^6qt^qWQr%ITl1YR3Uh=6ZZ(eXOs9BBxh2vGGFn9^`RX- z8Unn+-RO&Q(emXP%oh5{oDU;TO*bB>hwDXmL(yDe4|t>u+Xv_6}Am?6bYz58k;obZ=cA%r|gv-@|jqp!aa0 z%f^W$Urp`3S#dYqA+oYbUkgp4Z`&H*2(xz_@NR5c1h`+K<1>7~FQm^7nJm@@X!!cp z!4rp9RZINXSRq{|E$>WCI1$rJ_M)oR2pN{1qla*Tg|7B-eP9A@_n=Q_C01M5-jSamDMs_3(q zx7*xIA)^bUY}V1nBAs8!I-hL)EV_UCPk$uv+tF(oFq`KalVPkkN9%-t%!i{>ZNgfW zP_RLb(ei4S-e%9r+Xp?jwuZJbAURu~02mnVt=-j@>Hwdx|JN(g%-!>S3;qnskehm= zi;`?75|!Oxk0Y6 z1>=Cf5v$#te=c%DkE9C<#Oc{0viKa_1T7A%RN5?}R&XA+qrAKo=SK03OIeF?2XZXj`4zw{bh$Sg3Q=Q}k| z2_@+^^Xk9aUcYn`{^O7&K5mr+b{x9^dPO^vPaVR;a(dO2ctX;to4YDG1}ldsCP zv>@WYU*yL!Eq)zjH=)Tz=Ob+iRF79cONvWs^1YSK7f)+V>FIT)YrI{BLBf_dE9*}m zrWQQ0W**C|zgSMk(It~l)muO4dAxJzQ)WP|Dwnh(attHaLfqdKqpri%K|#uK(9+Qy zavkJPGUog-cA3te)nE7-QMIL$)N6dV$Auixi~odrG4#hsmQddL2j#9~R~~Z4V!Hx1 zhq25$19UM+4IO!5TYcu|ITSc(|$c?qV(=C|i)UJZt|q8aWrdP@7;qxgEAiC&YY{EAD!{f-?un*Z{YXU_zUJn^Zh z-Q^eFo)o&w``FF*a;m0O?zERvK4J#mKd4#RTDvsWXk_zM?N6^r+g}#)BjCV)Fx%g{ z43#bnn17=G1+AwEpOkRrs4+%f0Q&VMo@YNw|ibXwXt3Q@s(9R{q1 za|(Ncns-yEB9tL_%{UNB&*klfq(-~<>?*zjdI73@8ohDv%@tnVf8H0+T$a$#M@@6@ zQtl>IC2tf)A09+3v-BZq`1-uzYwFF2s8=|M?n(5R{pwe-kFVPG2ZE-S~Kbp03 zy^xKW7$N(jiNW~9h`!rPki%wAIi*W!o_>w@=>2Vf?NdhL9K2a$H(M76*O(oz#tI8N z_~?9dOK2sK`@+bt+TOGf&tMY>vL&RZ4s#E(5R1LnoSU9$hHpXnQM@$v?%!=DOaO)E z5+<-40vC{Dj`qHDm&cfmHKK1IQGn3<(dNVAN@RT(7Og>!&(-J!b>^W1!}H%T#b%(C zE8Orsz?lI+h9~36?&H$r$?XXamE6czOs3XTACcRyM^pS*5K3{~M-fPG*ury*CI$F+uZWj}n=<`oBmX-;h$V{2$sIOx7&UX z7k=Ef4Pn0kR78Rt z6RAwq{AcVmeg!00f%hr3mlqe$5|Ox!r?dRjHTV=WG*_Wjo0gs zo`5G{jJw`Sec;k)Z2q0driSH3>s77iQ`~&ug?+hx`%zB^VZ!>11YbozEs;kPHHWag zhHu1|E{BF^4Y2~Tu&Qd>$UOU=048;k|`;Soawc{8BpwhI^o?g+S{S~rj%y?EUv|jm;%X9(EN5G zm;Dv-kEFiso-d=`sI%LUkeiYA&@@)MHXp=D|98774b*wD!Jz++9oib}BcKeFKT=NKjO)j8|-R0vv@fIlQ-Lv0k#l znY_a9V*Plll*nj3Pnc+8=GU4Yx0WyC>6L0$AWV4f*gqmiY1HDU%5+HIx}yJlbL0!D zAIYYEc>vu>aL{{|7j` z$W-LB`d>fFh{TEGI_U*#8+iryw%PPeUxyEqO?5o;i|8q`n}?jr|1xFE=C4|Z_Z1Kq zRtr2pCnQkv9l16qDyNs6^VUHYPXTf7YT4ODW%K{-Xq!P($-2j}B+pBcjm=#Vqr{kK|pv<-cUynek0M7w)%3#B6t z8(TCyp9U($H+ryqr9dldI6-_mX2Dv&ksr#arz7U}K(fpe4PQ(}z3DTi+OB`S@BmSo z;!Q9(;~INMb`r}{ywXedQ_MHd_L6Oop1`(;6DzpGAh?5k+U6Q{kgwkEWp&f4MJ1=O z(1flJG1Ep0=KX(T5rGBC3kIQrg$jlgPIL8N-VylC=gS&D`ZBB zOOr&&Pmh)V$~y zTF`ki1nw<`4aJM?adGabCr)Kin1E+1O5n~)RBS|sc-9vjFRN()B&PGYih4iBzXi41 zMq!>=IqdJm{8$gO)^%2wEW?I>#zh>VdNoQkWlQK0&>SbqHY7rYUn zZLAu|mehx#oT2Xzyga{L2R3O;oC|U?ao|h(uwy455ljFaiy?0Zf0d~f-1`0V=AJqko zl*rB;JT*)OlOlv)1+EZvh;oF zjr=jLhJ!*Z3eK|S^W}6>dnWfbD~jZ*%>t=Nn3zjwf(xWxp_yiOXAL$%dMlIbQ)DOv zDwNCV6(CIcMUnu{dyW+plNE>EKoPQ5lAkk7=)e^$c->Wn&!*R5&k;}?Ua;J^TOMm} zeu^7)?#leLpLXSZ?b3^D%B1THI-`Bn7sD8Tm zdB|`uXvqZJrLfM#k`Eo89p!T6iD9)to5O@t*?xV^8KPE1Qcncq+6v%x(5UVBo*oI?rxA4 zVF;y5X{Eav8l*c07`nTA?(1Fme);`j0iS@yJae9N_St)%^E&m2R-pQ!_)%xeg@Szd zo}N@zz8V^Cv-UW;Z7SihoW)a|V?d`l7kh(!ehL@8(dqf<@BTHE3h4^P(gz0}#cyN4 z+1v|7OivG|ayY5Gs9xn7DqUjKRpB~+8rDVe`?sqt?jNq;NwQz-o9?52@YddX16m2Y zCS-c%{vS6rwuEw_5vlk9FrNKa%Dqd27Q<6x_2j)hzM7~uEX&=p7Zf-zCO>lF(qshN z!icj7!hQy%YflT|hxXfu&v4h0fP@1V`9Q zg3Kh+E6?bTpVUA$8SST`rK9ti<$0y<_G90Guu1a zKk#w%P;qmpG3y0+H~hwP7n$?0IY(fBnWfe@F7D?+E1>(gt(`c^vs3q&s;Biw7kk&; z4s{jj=q=AtxzPb2nrHt~Y=a+G26^C)`Cx3eyRp2$UDUN~zOv0gItp1{Y_6VG@ z2&OSaK}1vB1@zCGPlzeJ|LrJav1FOAkP4qY8~TEqIxSF-74VvC$iZhHAC6L!SMP?V zjQjnbu4h1XRKYT6qR0iTgJDLU@4;LW z5i<(7lxP)kPpLKkT<=$Xztud_QuAW)8Jmmo)Ns6hnJI=6<74{o90=U)gwq zge!8yjr(x_TKy74p7OMHUee`W&8H*m<58@8yz?mC^p19o6#rtVA?XuefhWH8C6foy zmW*Q=7kFAHoB%eqRI54s^0kHWsg&gZe5?gGS(cEa>1>+>ITQr#g1su^<;Xs13}pMa zMoQ8hY8|UIuUE=^YKyF?DgHkC&H7y=vD3OL3CPIgHLP}@_GLtUO&DdQF>f`VXZ4q(IMbPQ z!!OQxjcU|1mW<)4hVm>C!-UW+DWn3v_G4Zf*avId{?Y?RPyYSY(%X7%d%9B2nfZzdW5B5OQ8q$NGi;r)Yt&G zrqOP?=<;+i&LvEb|I*=9UJyr6^l}zmc+E&CIgWwndbt64=9Ya4fgC-~7?(h|G!EFE zVdJ}Y6azJ~3PBe8SSkx+-3L49zh7!wU`tuxO2aisjyxeS4x>32CN@rdpoXSSMdS75 z$g1k1#%fTM_DDbvI|4|suDa48BAM5GKg5mK-~ol(MRyAeaKJ5v0E;&1;Y!FwYC3GN zmek$&3?=ae?R2iCXbBEMI0_F8MJE%qj{Ft8qP8~a=mN+wtVby zOnSh0VPj*|r>tddoa#1md^A2YT7|;kj_NKxh%})0zt<1n^Y$pW-i{s*^@}3!Y<=~Y zidf_5Tkn2OfjW1RAKEN4^`;_1HJ=>}E~8tXP%c`Db4*Liq6ufv-DfJ~?W3bWHJC|i zKOclRxs&gF_;~#UheLn=>}2sF1APo0khvB0I=8H&!C=n;Cy!u{F;%qw5JE!aGtW(F=R^OPQ&uc%O!ht-qK) z#_vBlte%@>3QYf)tFbknlYLjN_77kr%0UyyHycJJF#voKnFrttjpA+5!Tm1f*hSK3 zj~uRJ5nnBvKeon}N&GJOL_qX<{c!ZNe#cPp?reGem%qhCKs}XVnBUGZX%Gzb!I<`? zx&kM9%SzLi-LUB^K-B|a=`RMTvG0jrok>H*M-Ca8NwZ$@h4s;g#r}wo1hYJE9S$4b?Fd;WEbQ1w=xXVxwt;!aObrOr`PWAYrJEP z`EwCrf!Tl5+u@vCU+eOR>0R>BKzOQD4H&X`U%9Se8;dSu{Qm3gjQql8i&RB}XnMtP z;5~AIh2z9yus)}lkNK%Ts!v-V6Iw{u6{>j34#t{}H-2H`#^qF^Ob9k7&owRPX9t^J z!{KLBt&T?HyXPzC*JZZkunHil!4wrn%8FL)g`3ZKN!6B|F75FnI_?g=%N52gBX$FN zbZlOai$0kT8&|1Y;0pAQ^*U(YaIzIBCs@LTV(W^K4*XqdroMZcc{Si~K=Fgu-Fg{w-R>Ouf$yeceD87^0==-NCkl29Op-u_jD{HF9RX7|&_~!NNwGblz?6OxK z_Eo-B?(Rf?^kKas{u%=Zx)}3t=x!IE59zG=VD?hp?lCd8V|9}usRuSSz&tc%xPVh^ z=^_+Y`p(*Aid%2V_x%y-4b|}HM7a6&8vj#oBqeXM`0`D_@;h0VeR+5m&K~<{IR_2k z3W$gX6ek*6zy`(3`K2K86-pqIUMU}u84g+0MrQ|5Yz{Eq~mtstmF^XUFzZ!nU2DZ6x;gYS2n32Xg} z0d{iT&~}p5wWV)l!F3o;$2}f<&cam@=5Fye5J0Q|A^N2iwuPLv(XB1Jr?|`Jfia^l*7Z;o8TknKGj4t+D$nG4bZ$a`>~y0+k5NZ?z9F{o#|sf|n7Z zcJNB~W*_9+Ox>Nc6OsVAh21>34$ge!slx!yr}57Zn8EW_AH3L}dw>h!xtqnfUcyvE zjYkA6x7nHLAmt;qQj8d0d!1o`YAu{EkJ{I+9T}UDk&~;GD{d{Us*CvymmLVhiK0si_1a5@%}aGVji8Nd#(_2&2l`m_+Ru)2z2zrT>n@(dPg@*xhAT_3C=AaCyeoT1VcHl;$FQt5$H8dph(81j^y_YKlMq=!QBd<{0YL7p%%Y@f5W-UNFrM z$AJ+s5TIv|14x_Z9X9%4jILq#G z^kBMqFKu9Ef2+2W@*;*4A7C51v=N%lLrZ6x&OkJ#>~wrC((GyxX)KtpPrqpZxXPEZ z3|?GFdDiEH#s7#_SWG;T$=;D6aLg*7W2D{GVjQ@;FPc^N{*>(7S`uFIjf`$GDPf)t zF`YjwW-Iw!_yWVuW9#LWuUjCl17T+2E*f{MSCt7lL1 z2!4t_H(No?!LioQhh#`1O3awP8Wklp#`k)cS{S<#sE)fT{e|98ZYuNYNWt*UVhq69;!bR z5maC(JU094#Q%Zh`H+_6A)FUt4yZ6Pq#Z|PcIO}7OqHxCPl{h0E=cgd_*FUH>=Ovz zM8gVAeDP6rdMQWp`4PraSk4y%d(=}k6!W~wlOH^|oL+lJSeN7eIMlz5VH>*t_$0N` z`J`Bprd)|<8KNPye7X?-6-%<&>{_}%Q{!jp`bMsKJRY0VWd{lJmkf^_h5gQ8Cx(my z7r*8gTsCMk>Vl-cLK6S>0+5wz0Rihe&+=ktPKIBefr5#T1ESBywp_XC8n+r{TA-5j z8MCE`HEy(EoZvZseGqOjG&9;qd?(n4wy-fs=;5bKw`U+Nbb_7w%!^FG3(I+PuqO)O zAeqG1*49uQE<8y%5d)Qg9V)NtTlZVyURDMfjK!37J z{tVF=yVWpw6^fg^lsz5q-1biWa;rGHODUJ!3u#Z9Ywp`4xs0L*)_*Pl4dWb@LH8ll z5FAlB3w&$1l7l-vJ?Y0ofjL;o%F=K7Q&M>7Mg%`&AwdEplqj1^ESl|3`_+XMUD&~c zVEN{KKI8Aed|ew$P&mqvQn8$WFNPiR(9cK{2^ze$6L;OgJ%Lk@Fx5049~Nrnu(Y0@ zXvc^CBq4j`%FT?nyO2mykqd6t@y^v_g2?yBULt3_NbAbjWmt8$z5e9LjbL6X4|;!$ z99K+4t-CKIHv2E<{4lilFAk@Z3mJ({Qw&RqU}nX##B7ZzNx8;+waA_ZR%KyG?;mU6 zUSJ6k(DVQ4zx()}5l3y@5n(*@Q%10#8qM!HPXtyi<0BCwy}iHRABKFMY|&{7L78?w zp_<@fl21D;oJ&dJcu%+N1gp8XBO1c-N)luW!_C}ZUpWCGLmJKbO0~Ti8y~j$8_S53 z4vmE9wv(O;Bg^mZwEgV(aQ%0>bx?CN1Kz5O4A2hG!e*PTnZthLR9M~%zHzt9F3Ag( zVfbbXo2mI@@9g-AHmnud|H(z2=G_|T5Cp2oSIv(i?^+#RkZp^(^V_m?;4eD_?M~bN z6D%rCRdR31Nzq%DJ9@o(STXIIsNmtBE-$yac0?E@LuVnMXiD^f)X6 z*Kp}R2L&%^@*XP9FMC*#nV4z+jY{Yu0my!}@3UiNYiw`li!!-wUuqE+!OSb_1tXi% zXz0TkUa!>w|)KMbYTIquk%)|cI3GS!< zG-9(y`0{Tu+XXiDd$+mFx%^g4KJA}zRgy4`q>2#&~>IK(2!rIgrDiBU4q zQACRGmX+*GH_{$5fypz>NK9aSn=Vn;5r;&#BHZCs`@vt-k^@86&~Wtw#=CY*I+m$r z7Phv;w!)Wy8VEZ)?69&`GQSpFB2gZXEf0O<2y*0_u|<)-p$|DW;*)SA>7%yv$$B~X z&0js6t@reV7l^uSC0K9^zC1E9qK1V!46G=t#6@A)TySIb4Iitd*e}2Ja=-K_MHUe6 z?f=qFL8^*{xNKUTYJ!eKX?utyy_j+9Ue-mkGc5smz-cig(cvH@ap~A(Z9R#%0|eBV zmAIeZmD0O`d%%A?ANlIlD_~J)uoy^&GZ|XJDnIU0g?2N+WsjC=jx@uj8`vawaMr<$u8Ai^sIX|~ zc&0>>+K^xuZHA8s47tLj&j>^!T!}rCj2W^#e>k_Ek62m&B~HH_s0CXXw**5o`)FV_N4Mv z(6?``4BlNJ;Ta%iKFX)RjpP~zjPvW`N7p`UYa4Mg48X~m(2b^6tOiU%k)a>GR@Qh~ z(HE6aubH*Z*GqlBJ!cni9uZ-_NrfL~+gvFR2_Pt&c2l0e&J@h>_5N*PD{JlbPHRsR zN~Y}8^cN1gWIgOPg-z!uuE)MAITKWD-2B|SXijU z4fAqJ@&+tN3_uBk0bN}y3Xxb*=B?x485x(H#Lp3TYwO?O3>k*6-rmi_n;jLbJ-5tp zyit_Ijk~sPlP{~fP+n|!yzZ;)#h%0JQ$(ZqaFRtM#IsDhgsQ}6?sr(2u5jzuBSD@L zD4nLqIwrS?M2+gy;8o`Hmz%v|5A&;BDA3Fxn3FZpHgc!zfv-lx*Gr~vQ$X{DE@ydISSkqz3*m$z5<&0w0O^`W*~ z6)DF)JhQ>%zw3vBkW+RIF=rJPj0bQ|O)6OaTF0d2-;ut{>V+TiZ z&gn4;P4ZMsf&RO$plCkA|819JMI8mJf&CfJKy%G%(JH7-So64dC|4*)a!Y`m5+(?} zwnT`pjIopqlnUtFN2ToSKp5jAel6{dL6I6HpW{n&YA7F&NG5YSBG|(XC zAHX|dDQ(*nI#@hb&kJKleof{zCa&BZGQZib6tKOMEc=<8OV-a_ zzQ3B^K=Bs+iVbh*s222eau(!8sf;zS!ZsW!HZrW_e~oQ6oX$(LkdAe7;tc%aEA|!} z{KV!{iaTWLRNg%oS6m?qT1{02k8SH%npCN&Hx-+up^|fU7M?k7?Z0y9?qa^})lmAu}J6GA% zbJ!oDl{gt@C5@Bz6Q=@x7QGg+!8_FG&?d&`@#!f#>Nir&zt<#eOMm}xm<-I|e?FLz zezmr!-AD;B=B*{rtMGf2iC*}$rGOOn=;q{3C$}y52yUFkJg;HmAYgQ;flIL%V zIBMUPA`j8>geP8paC5p$$1S%zH=DjFTXiJBz#VrxG(*Dt)1D+5ar&+o<*?3CWMO{M}5oY|1cg#_%KI7e(wMS&=64-X4+`Pg#1j#V1Bad$Z3+oFCl1^TalX05JAl!a1 z!7APkE{0Lj5T(d45On@pXyFNyx%X+1mugbbk+<3jF%feFq|4#7u75gOr#ZaGd6;z* zK$wI(E*#nh)is3nw)w}c{vo9{r1k2$l5H5JZPDEph+VKO)o-*Oiio12YgDsM)Csduh6~puaCcCld`RCVH>%dnP!LrZx`Ckc3Cs$y7K*jPB)$D0uRsZQUT8*~vpMp@oWB=j?NZBReN zcp$M#S+IT#gr_-JuLSXPo9$U5tO`n71*js4&Z=s%i_@!1i%q(>xyDNl&##j>Z3X{9 z>R)mko0*Z+29tkSEG+H1_au<$UPPRXe0?=+*Sm2a>2y6a`<4ku0mRVX4zk&}OdI5n zB`^>!t5s5!Y^aTyI4$b`+%YrW9h;uc^-2O4XhxzWDU|Fj3rbB9Eh5Yfe$<82i!j%f zj(V{h`wHft-Jxa~{%&Zv^Op>4Y_?V0wWG86eyi7ZFy6Kzq;iY2S?ByuI-fc*5O7r; zuPy5{t8RW9#uW_lz^cNWUa z`^4xSc{SSt1e%+wg1G@ES|XF6T30Gy?Gv1M)QGY{dl zO%jLo$!P%j+&0%|0NANL_Eo~V4Qa>kAEnCWW{l+;RgH`+0j;RCVQd*y7gM2_SRD_d zAj>Ro$5hkV&(tNGd|r$J3~UPp5eV*)-8uw^dZ=7E+%!t@ipu3}L+aQK`@o z!`yE#Ma)JNe1Wi+Y{!?L4tYHA$nc4#WiGQ~NQ8IpedWx#fM+FoP( zF5NIr);u{Fa50WU5b+y%p$7?)0o16sG9fgJYIfIidO=&@k}uVq)Ta{IS

2 zQ{c%sZ7r@|C!TBDiJQYBtKa+$Ndp59y4e1x*{w|>uJ9+rIGz3AAcO9K*LQc(uveLa zqV(QPCDpm<^(v)9TU63XP^ExFs9+_S_r?DLkJyZ6$}hO+4*#~%g(4s1YCnht6cw=w z&cVEOc2BRbMx^amj58mwLPDfU&Vk{D!av2!%eRQOY=qCNV!bioZubohbywKX#e(t* zD|4Kj`Ud-rdt>OB6f*`o`v6W)^vCt{q4v$o)$aY=4PxV$+?@ z^lq4-gwFvXT-Lo_c86qMn+a%s)e1gxK2qRJVgyu!aM6!gmLSj=w1k>enuVV}p zhLvNg>DsC)kX`!|CIxn8JgkPPFu+X_Bp!-G-u*3^D_LX{E3S`Waxx5f28i!(TPZ>~%=3-@YX5dxWEHuTsTI(5~|6SjMH3EAg#aW57%L+&#J$w5#3?{9j}5xvYIfF`xHv@=62E);3hd_UivI-2`x zs*#Y4c|F6cIXmmS$ni1?7*6)~vEM40Ugv0qMi-|7ss)Z(dV`Zp2$fT`w+Sp^VQ;}V zK#pBIc-q~`k9)3Wu+$#GH7s%uq?lG?7!^}u=KJf3c$C2i<5O#?CSIoksBBdMFr*(u{dxV#Ixj=B&`SW5l< z!pj#BPyt4mmzVSYY@CeG&gYGM46>H*&s=K9xM6%v%80c5rY|!xu};VkIc; z1Ay&gWk%-4<+aM%92wc1c7$vC@;jFBg0^$)nti z6^g+6)*9r@0$wSl>>`IzZl;rNoY?{&ym5b zrMxdlVda?rlq5sSPh5P%ixcb458UxVE}7qwbCp>!r=S2JJSDxgwM$X45=>*$<4?OO zPo)%j5=?st z+d<+GMQ|@G=V$LKVT&4Y7pC63b5MMBSinxakdwB%y{GgyKkfcoHGPW}G-kc~`esMZ zi0_crQG#eTa?a8hA$l@o|7+`>M`K^lsPS~HWOjbyFCa|}q;O64)jE9BU>zFFykn30 z$Dr{UE?nz^KU+&EV0`8i8x$|VmT)EgeUAJ{Qgn*r|M3M^A|UafKEHD| z@K3vn)5PsjtUW9qEyJca89r3EEZans>yks(G^<>mjtlo-3p9W;;aAsG9fJ|~w=Rib zG@i>#ONmF~f~?91bs-?qj(Q7yK2DzLtuQ(jB)=!(DIj+CPt3D-8s8X(6d#|<#eZ%O;wV+`bz z(TN$ct~u2g#6&6@8l6JK8C_LmTx3Fa!tqQ>$e&6H`zwGM*XaE0;0{_hJNO3%0>{O( z*FQnUs>d2AfKz!{Z@$*DL-8fK)|gf*I6FvI-!99_X?Qn^#zki`z~2xxBr`+K+Ibk9 zIuwnEjXk)wzL_(rqz*LH)IOWF+w6RS!vc%)k04z1W);&F2_z4ftW*a%0C+JolZ zDY)QkBp-yA1~-{gB@OubTzd?t&C+l4d`XG><Aie2i?6j&n*ZtMQ1b5nma#qIuC1SokSk{;e7Ts?&%HR4ho5^3+ z+R#(I>Ri!_xL2dge%CzL5&wL>P1s6(GiGmD7MMRX?T`bWN2FGI!LMa59nJy2>u^b= z4t51QG(F}h#q!GkaAZh(6cK3Gu0RFB=r}S+F@snuj5AO{oR4!8FD1--PCbNQkR;+o zNzPPw(z6W?is;411B@QQ=mZAY*-$DbH5j)$0ebbRZqKF81>MI3|H*xf%sVK?PYtW) zaq}vm-VitfEj7Q6YYfjHwFZig_tM@%0Cmy{SgbTPNzpAs(f~dDv>P*__3p6N zv)6(yX7NSX;oZ^mwKX&I8p=e^W-7bezx$THdOD&)w}?vj&E=0jF5x|J^P0V9vNAM# z-cPfh0(0`@U$xmjbYbs))vk6Mt(jA^{xijH1-XUK?j=$;EN?$tyBlHemcwPM4f=PfZYNCrfxZ!{C{c z?Q3%86z~!w;r@!N1z-R5eLi9snH|a|^n&Mg<|8OXvLdu+8_ALr__j@q8L~C`=eq{0 zmG#@*U5?g)hH7h4ULQ&39HBA|R$%*IEzcB4=Z#kkd$Ij9pUvkEeWOdWwPuT}9~RNS z2U@mYZbCDR4LYc<90>3Bb!VoKu#v+%X-9{&f-JZ{aKAKNy)n~aC)u4YUcNTZ%=(Q$ zLdT+L{~1Q9Xqwrwwz0N+e(g|?(^LSjU{x!=dLmegFHbV@yphLmTCX)=ktjDgDjxYc zTs7=#@W0d3v-`XG6#d=&aXfsMG9y50 zIM0XRk*w19W+4|4bn;P6-fzAP*Wz608&tpfppLEB&hJb>ge8(Xt9AoURLlWQ;}O^SHJlE7hl z{#Pj+c2~cbfo@QHVtgQM-mu~FS+N9S0GimS(@BhMHr^Fcm3oMtP$thAh+D%@$a>Q@Un`U08Br&F{8oS4g5phc~Rt~+#WI; z9n~?kRO-t?CaunSZII!B3Y1&t3li}&GE}ZV%aMdj)|Jc6=SO{N9>%H_TmbRL8enl) z34Vb|fQeQJtBizzbtFq`|9ad+NRw%bgd(Gcfo!g1-n_XjbL}_F@ZQn4f!E}woA2N_ zA(a-#0#1ND;pdGaNIqp-gxaeYX>}=1kvOhM$3zWeYH=Mq3!`d1JiNRr`n8FFMb}?b zf`LNZALS0Cutkpa&lr35NVa5PaZPLw^HapI;3yrQ-nq}STsgg-WA!UzjSOuN%9UP-^%l1E+o#($(Ihsb3$#pOi++n$Q1a!}{9WnYMP~nQs3@cI zM=X_4316fO?)Fscr3K*ee9{#(bg=;*{f=`cDNN_C-WC=G=KDK8075MeP!iz3A6Rca zWK&NU?D*Jg8}E@D>Lh*e@@C)lM-SKEq&z>m-XoHA;bCNys_CYza3f8PN~aV|OwOd? zTS3#}@Bz4m?>`cAeC}*vZsn$@IH}pYDxxiqu!ko32cND+?4FM~d|QAT@23gv=8S7m z8)yQ9wkf&Pej^*@DJdx$R~Oo8PIEdp=hP!ZlKUi(p77bNt0kxUf*o+oaeTh}yEn1- zA>xhKNB8dG!4hoIsoYQOgt2kRaY}IZzP7?2jK32x*h{=w8hBmy2VdIC&2}_KmgvTj{L&2r*|uS8umk0p`}M7ztc(+})S<38f@PJr5_{KOyY5QJKo| z)eBUgmdgbna(Gh>6}H(eY?>)QI6Bfcx=pFf=GX2U_ZS_&XcV!j@U?mDs@jRP94!xU zQy4SubND0)uNJ5s*0M&@(!Vb^TzHw1nleYxXnJa<=esR6^l);$FF)azU^=^VWst&@ z=~ET#7ZeII+`&(ek@sqdvQ|G`Oy#K6I*VBinZ;;Z`?>wviytqO*^~Se^8E+H?gA5h zNeQG3eN2cyk~eCZp;84>yNxt{FeO!KB5-DJji;W~i7cF&F6HLK=`+fv6<6nWiIp{y zydoh$np?KvL)QYUJ3Ge&2L1jd=mx@DTPIm87Z7~nlBN5|z-_q6kAwP^ zYVx;$UOvXzO(7iX4)>`ZJO*~om-A|3+ZQFf(FMzEO83RbIPATLuZ1d^IZ0Hg?6u| zvxiToTZIP?bkBk1#m0UmAG+3^9PfF+`3+{IJwq8o6J&%*j-5H*hm6$+XO?ROwL23N zjnLZ`0^7qDan&k^-i!Bbz3re4L7^MxuD?{Te$DW)7UO>-BsN1b1XmNfd-_r2055@E zQxY^XzoRkEt=VjacF5+F8sF++#mp!V5O`R2kT8#?{SsUx1%;@llf8J4X3^icDM`yN zV=A^fwJEugaQe}|rxgsi(PXGp>dff3X094I4LT03$vFn5_?egE9PX-D~V& zlRI_yAx~KnOO4l0T<;zpq_4-4nH}1?oXG@zvi47B-x?U`d;LgI)~~Idbo@A;vpu?a z)?lL4IK1xli#l&|W}{An`@O7e?EWe`Dy^UMVF$0YwixuH{1G=H!>vHwfcl; z&zweQ8rrM1wzKVVU6BQ)fBGFN5L5Z~M3vD(qPYUt=dMjRhxwX~E2~(!aTzxDzLfSY zXB613joK7k1r&Z>#PVc|t~*FRcCT2fNOjSescan19nm4W`zuo%WI9ec;)X(QdmOB9 z%uELPnG}S+oO~4})m@Jq3?RwS2)E2;L54nKrZlvk@5a^^xUDL6gh39hE4P-#PzJ>x zJP=@hx9&vGoQuNmo3%`_ATlnuy5jPZ)+lJ@&n(@|XJEa)mF8j+_`dsMm$QoCMWs@6 zLc4{l_annK+m@fNVi-@JN0MrCB{VhFkQ6ZyJQKZJLQP=1FCdKbeZ$9>SUGghY1|zp zXSq1EukCpsVm?!6CKVbd3o+5;z9FA!sXmt)BMgHMd|YyMS7a5!LPaqQy3c)9ulI^2 zm=K4v?#?2pPomAdQeVlj^waMfT%*0-7Ej2&9qy*C%gc45 zT-#{x?dw_r^8-GQ&0a{ zrb4=Ck&YJ|LBusZv*V8o9E9h2f%g%=@e^{Cn4Lh14D?4l-_^mL(E^q2kXM z`@>6y7jEZzwQksQ;JcXjt>BJ6(RHVKQl5s;Q;wG4*vSi$W)z#nx{T5lM1NdDj7Cdu zW`>*w9LItFy=?#Zk6KawsC{YtldAdVM}l9nfrCiYBsQ+XDfAnKf}NdSsxjd)zkTa9 z`tG!=9j&;cBF;F3|Eu#*V+<{CBsWqSD=%Pc)#gB?rrYj~aEuZ6SIm@oF?zf02N1hW zal=p{jg-YEKb!07 zG;*x5FQ3LX=*ADLncX)W&OmRuEQZN4XnBI>UK2+ik8AsNa4EIKB@E&E{&|yhn!9QP zLFByd-S>Z{?5;#K>Z)Adf`z0sfX$Sofak}8dl;hPu{$i)snYAQlNe3knzcXuI>3S< z!KgNDu*UhZNVr^f6bzWzJYOHNUo!ZOj%9M6qG}th-(vH+KatI}v%m@y6H}1Z@RPVW zvNW|f#ZQBn*1O|Nn^~LEm^N+&H4gny4(7z|o;0yTQB^X7>nHOj+=!g>*XC=O=1CodWMy^K3$B-&t{}V5LfR2iLtnRTF3wG^>sbl zqCJzm-%0kZMS;D%dJ_Uavb$~>=FWML^%09|u2rIk6Dz2{R4@#fNk>I2GQmzS9%4Qiu_T-3I5u39L;djtZH zEflOuBouC`bOo@zbtU-!UI5yT<7*$==%}96rnC0by}9~q!npg|xHtl{Ob>$mL7|`) z)q9&^IR*lslTnPO%Wk>7Vpw`x@R%-IYO3e%x__l_e;%>>7_}BMT<}@9i%qd-cb!fQ zD2n(nlM`#c#Kb%tb+*D%q$MqZ}2Thau+tF3DV9jBT#W&_pJ10m>=U!KR>F{5_Dh8&m zB%G3PrF#sdN{{shn z%;}tA%Anp>s(T@Cx5Ek^4ywrGJDt9@(IS%8(Zo3iL_OordMKvkkGCR_ST ztp`}Lk<8&WbNGV<-qu2{(ARiisW@9l15(N34~asHh-uFL7XXma51Y_xCsD}C53#X#}b;N3P3YroNHw`9+Whjv6(WIs$V-Obx3bW0rL6N*I!}}fEnnn?w>uTrMhYL5=r_CYMqw^-E z7KS6BNC~@zce8Bdn%6<@eVLVEME-vGs~L=+m8#qac@*NA5$6Qu8sx>IHowV)zQ7QN zUMD9`<4#RA6pm*v4w?~WZ*ITCG6=DP>(;xyZK7*rh^PKLv?2ph-Q~!d@+T_u0#F6i zbB4pKj2>b_+vOgZAGk1agLqerDC5qMkd&O01+b-6Z@AT)+l!8MOYd_x?w9MM(p2p> zwv4W!*yL}&c$yEI-we>de#KfP!a<64bn%Cy+~&BQw^3VW*o+k2TAkIp8k!FxiKc{A zM^dpqU$MO_=q4DUs5z=Ra`o^P#Y$xHETdYwW?rOq%$g#>0F3eao$FThGz>4WDz_FO zwv@YNV{}gb=WnsY4sJ4UQG#AZz-xjzE~?eBjz;5%_U1Irt&1q7sfB)kh3~ikohYWp zn5uUmo9Xn=tsM;*Tum1#b;#CLaep@->jnC6rr4&kx+j{r@qcQAazHn`|FhB~pfb?C z;Jj6#7{O|Fzo;nO8XoQwib-AZSx=mn-n#pvva*5o-5-wT&d~E+&a~gI**)Kui=0~r z);jWH6BEt7^_*4cOIxof`oUh*{cS7Q+wH88zy_C!yKG!7)|kHGKousaVTYiA_E#)a z0<&G7=Tv-a9@xLwxSu{nLruy{Zf`%?o17=j@l(n!E@w{jVQBWgv~mR`ZFV`Zp6#xO zeo_)dbKXfjA@=!VX=&H4)ot!nMONXcUgEPxCMC+@Q~SHvS>_>`T}NbLD!$Vp(TGOB zdsMF<#QEHO1krgj`-a+oum5{p82Tq~Za?m}CYrQ$M2RJLMC761BJUQS>&q7F@7haA z3MR8RY1&8*@_*>}TCFHA;3bYc8OeMYc~+?9end;izu9z31~#MvQU>hw<-ND(d40Y{ zwT&$LxNHqT8T*_p8(mD*HW@z@h&rr0Dx0+~htm@32_?Q$?N*PibV?ff7IY1utJrlx;>>Txk}IY&`z)Xs!MZcsX6 zy)DgR8zmP4+uz7w*pSir@e#yj6I1#fSorn{*H^8IkA1k=;nM^sTCL(XMf$NanKj0!1yu( z4>LsL;<%@CmF+O;K@*rVX}XzLsS}}kKS7aJ?i1$=9NuiXD_4YM|MMkWYBW{G8Lf!} zhVftz@(^5hR5#w5yXq&YseOHe9r6qg_1Xo|TTE&ka2xCSf>8S$MgYzHh>ibK2oFT5C|pSbY_6nlGq%C6AW z00Lw9klf|TzibC{I@EKV-uM-aK_7t|oq7zcya{wgew?V-9Sw}W8R!tV9?0E?HN zAF}HGjpImLn8VuJN>V`|{sSzwlnlSlSYS-p&wF^GNVEB?q_*}vss?eR`~K27Nk-f1 zF{g=%!utwYw}>92e=F9CQ?(YwTl8P22|oLaDfm`Hs7oQdQ>%0c#I~jTgpEhAm*W)! zsl~yC6mDtj5%Oqwb9kH=hl>v zQ$bPzE$MU>1=nBw z`$~D4`kM8PLEp;y*|zr3++^yOs@A{~?LFXK0EmL6Zc3lB?{ zR@lfoo_vw`;?qaXgqmL%0R}Xk9QKIj!BJvc;{Vp|aG8rg=SnnzO^MW^v3J|j!y#8dHd!m=YGNLXEp3z8Q$$VV5ag0IZE}YuK&{LIz-}>d5tiHteZ(qBi+}K6D-66)Hq7$eT zE|RD|4$w6Gve3TN5pJm!1)SKuQ!}3CnKJ)}t*?xVYg@Jk8g~f6JrE$cyCgu6pn>4- z1b27$;0{581b252ZUKTjjW+J^ZO%FOy?fvN`UfMU=`ecNTB~Z-tXZ{e(w9l0w5;(8 zy}>*>UTzdtLYSS+!pRPQx^pRP`TWC_Pz5>!&4n+>3zrd(-BTqRFUbbffPy}AL5_`nIyL<) z4R1HMso2Z|ds$4eq6md`Ks zeD%122$ZJ#3|!la86kCsCoAxzURy6Y4AK?XjG;PL{d=2`?p(?--V>Oe5y8yXR)NKH zKuZy8i=RCg!AwK*W`XK{>ppIo^loAGaMdn0r7bsC0Y@4IUF%|k9p?`rr}-JrFQvV! zN?o8Q;e3pbVwk>_cS5zvrMX>!K7OFGAWla8<0`_=ZohA zehsrw)M%b_=FTDmoq}>Ivj~y{bQNHWy}`0SKeKIFHW&8x(k7|%as39U%c6G*3L;+% z1BDQWV>mp!Zag^(njp$xpae;UO+f>E>prqLZB)=()ZlYdDirc+KjZfT&;?Nj!CK6g zR)d}e<>pX&CxkAePAIgrBQ|sDV;!zcfM05`u>Lug_6*m$a=hqEhlzN4M}M+FOhTpp z@L%o0%b&}9a3D^FhK?{8ws>_cwUso%78kqc zij(b2Ro%D5$Ulx6vsGs+$ab}BeGQ}2Ge2XAau7bspN2^EVF;!fcg(?{2>TqIrIhMU;zsaw3}@0Y_Hq@xTaWXGDL8BK9gJV z+O^7^G}DNAR2L0K-+YK*Hon7>D46M@#0~=*4u*zD`;Nfv{6(J*;1dCdXJ5TXhZ!Zx zuyUny{k#47)+k+^@F1;P%;wP9qw%Wwh1_=Bv#gQN81knd>)rk}!tH)HBDLgpeLXll zK00{X;t#}qP{(ch=;Yg>=>H05Q;aWQQ_i06BTY-ZhEL8k1>nj97&LGhoYj&N4?Xp2 zXepS5$%Z)qK|)GF8{<}k&GN6KhUH(f4NrlhZ)K&6Stwr5a&l@_uCaCJV4|#gqYPI! zc=_-U_ix+BW+zLK8wI%W_GY`KuXv@-oGno11lv^$B zPdDJ$zWP0LK>ZQjsmm)@jL=kX*$E2e0KQ`!8-Pu3bS3$Fz)=ZEPcRsLfs zz|dbG;aR%D_ypKS-a{&dqQD7|#QSn^{q68-V)_DM4EETC4|uCyX@iO6#fJwvtg0`Ao?@bz+weC+$Z*Y)L*AXJD#!=t{fcoM$;CWc^ zYqe)67Akn~fI@VTdVQET12htmywWrbO2q3$_UvK{x=!o(+z2MYOaKF$^Og*6Z`=#F zhPw)Mt&(}aWgH;>BA9Sb+L$Wjs zyU3V<#AsqHM8_{6~ zB|{&$h-NWwRyC(U&wC9uL*k~V|AZBMXNe(O^=1T;h*4rsNvHc5rEdd2ba^8}$nJ%M zqwrJeJ+)`gepn#Fe&CWg`DONB!@lj7v7L@Xf%R}KFT5UC zksoNAG-8_9Ab{86&omd1@X$!NJW`{ zm|uw@W&&}|28@H&NtGV-Iu?8C=Cpwf+`2zbSvl!+nM|w8#m5#d=J^~>rEI>Fo|y@- zC{T{Yy;J#ui5j@4G@C9JKVUaSC&B7C4|S(}*}n#%l<<4^bIy6i zgoh&!DxCHd7mmNdN3{n$@sIZMu`7Y+m9~V7ec-NAV1PlS(JNDe&PwUM?5EKub|&JQ zxg+TBOi(#y^6%WCDzCqz6D#+1c0ICXY%A#s9H~LIKb4`Jx-N0d+=l`6_@qQ&dk>9{ zRwHL{NcFyYxCyylAhdwOO=lzeFF{QP*Bls1yVGvw4s9oSUi;l!O3G|Q8x$)rE5Ka? ztF+YGn&3=>5hB|9v`@d}GFLI*;$j2;3h4dL9AD5C%I?n11-9GWLaU-WwMe z;~*AO$^=}VOe)SKxJlPDdHyAM2CcdHr=vxL7UnN=S`EH&I>p*}Q(c>OAO#JT58}oI zq%kc6xPl_pi#@=h@Bcmj*+7J<#_zw(ZO)#FJ^_bw)Djjd$zKe4|0E$m3iJ=erl)J1 zin3s?1?^_7Kk2SYC@Coc-?1-QyNkedT)sH8tC|7WJwwC8J-g?|ESZj6J-+LSw#SZz z@%dvg-HP`lpMM_(OUCS9O(YxX`qs;4^Rm_`_9lf`WY=wF=jVza*g0_+yp z4g?4iJ)bWvM$);j#@6MWJ_wKwuuuZlz(NlR9oVej;pF5x>+N`w($}YW39+pY4+%Yg z^zq?UwH}=StRM5RJ+4+@ZlOaN`@N|t)xY}#a42vOuILB(H*aUvwQ4J2R;u;>3>xhQ zYT3{f?tizPAvZZ0K=BQP%dvj0U9P}yNvEOp!C; zhYdsg=6N&%eFpss5j5%L1JKL={u(OP=s^Ky#43(fODa}KnLQq{lG_Y z==O~dcRQMv6)5qN^O~7QtBakwWOpcVLE;&9SG+f$_kMjtjv45gt9ayER|xeHyyN~0 zt#yfXzN2M`goW|bW5E4%(k(o^55bzkGR%%L7f>;^1-%xriHqQ{vbtPtfJG-s^8x_* zI${c)z{YUBhLvDnniSL5x*nL%v@LsMP>$F@)-ih$)sKc;W2_I9dJM)xba(Ct zIU!?oo$LxhtUo}%{_yOaXM`lx2)n$HzK0G2E<50sl#GqH1A@fGT}rjuJyk!#NWWVG z2Blj_IlEL^O)2nLx_)FcPB4DYpx>cVK!@6rPL641H;AqW4N=yB;rluzqQ}dnQ`pY3 zi|^#I2h+Wd*s$c+)rU%t zIk^}50S6b?Zicl6;>un_;!`p8x%}adJ4}qS_2Qw!Y8;qo_}aqSG-QGYm@M3ZgO$%M{75F(M8e#$XKS^<=4p^!f%z|JY|chC)6>ZQW^( z7#bRqu}hq9Fm(YP{I;&=bcXj}&-j=>%qEG;F#=@*Gwr)h)k18X4zsrA)i7@HRvoH} z@CMe^XVprg@W+2Pq{o)$R!l=TV>-11;T`I=kYowN^hP`*u2QhX&972oe=M>J<`})S zg0frwdYjGUhUWx-f1u$kGk75WsW3wyU-|N2d|TBkN|LHOy`t@_hcyq*zN)UOOO-yp zECA9lfK_Z|J%a8l4=^7PK4d^Ch$e4J;1~|fg-u+xa3Iei#>Dm3F~5%+QCFTp+>PiGI4Mig8J9NAJ)DB&-Le5p*ZFVC}Qww zj&Zd;UD5>$_VBUVR2O{+ot-k14qhw+y(-3UH20Y4=K>fij#JC%1i=}1DB46@w@f&_ zWBl#;Cx5w+Zw!hD*HBGz17?M==bt{jpoPC)V1rt@OQn_!baKkL(F=b{t7aj03L7`F zEr`BiyS*j)x*GaPS(WZXrPH~IxAVd117twh_^=CM)463jYjWG3)v_0nscAzRxIhF@ zqYPXv>5;R{Z`*5wrE!G?YVB|By`Xj@{c1PU9M33NN-6L6Uupz)p?yc==Ex0ynvI`B zE|&G^AEmgV`^tiJ7tIfUE+Rc_BG z#xIDJu>oWsf4yRvOhSN7^es~k0l-=&OaMeFJZ*3>Sf1K4RfKDY9Z;5N^i1k%d@lqv z4o;i)+&L||PotIUw)8u9iTzx%<~Hmn=?zNO8M{GxrIfa~G{cdble3;4YkPwN>>*wP zBw8y1k?1>T$Ov4O5Zk77G@6Ce-?b0Em1k^Iq^w8TCCSs zPhA+CJGf*!ofracb%pubA1!Ncowq97e{$`^O&CS0q^-0$Dk)+v`zr{;D_mdsbv}gS zkPZ87@2lcb_13CcUb{7`YK!DUP>SPQE<9vik7bx&?$^I;NzFfz<8K`6J`DX<{X4$c>zOSLzR{94|JgI^(o%qD?a$eFql5e9nq@TVXo1OHo zjR{)bkC2|V*>7gJOD4ccc;IX4ciaHrK}h|Mm0Rc8>gxAg1Gikdy}f-3(A~3};R4+w z5iMj!#{0SZo_2C})^sufomoRvE)hTnQ|#EOmtN5{MgDM_ z^x5hlrSoH)h7T9sFG-V3w2_xs|Mx3@;Q<@PiEmy$=*1K-d*H`1O75!e^XhYlfN;OM zQf`J%eoXt1s|Yfg>8+l=h?^&uc5w#>2anBKI)J9jGa(sH-5oKVSfijDU9R!CP7rZ8 zw>ow8v~-e{m0!*rLK%S~rE2Pgn5^ln$%}A;nY{-=?(rYi1Ln|n$9?@XIB3AINpODO zVm}Xr=;5eX+f=0nz;QsA@Mn!l#iPUgI*JrHSYlStQA}GGm`YNh9U0|bF|;T}iQql_ zWlI?w$s&0yeP%99D#@e1Q(D8lU6Xn{j+<+wLe>MlYWeea8d^1Owk$C??^ZIfhKEYiG3{pr|xsY z&hb)};YV8hR`ys))G>wD@=^>4`x>hr`UD0o=$#Z3(*yNTPzYGa)cW14el*|xcM#+C z&l1!AdOUT!2hP;Hb)8Tv2$UqqJFWbZxLvj2@QSg4gVAn;j`W2}YZMRX#e+2m7$*X` zH*wDJwgM0)hyV*&`W!77=SL?@T+FCS9LljtE*t>sDO2s)AmW9hlF1HOEP%^2|L!B| z++I?A8RG(2f_IhXR>!e^n)4qrZ>w{~g--+zQaTMSCRUw^Oy-^xbd=d>3jPUtx^5R& zWD@4c0vO1{u&y{?m06D0iAh($im8qMol;th)xmG| zNy)91*x6ZQg7CRSd|!-4C^b~iOrxrvT{30vA@T346m4@c?>e1N;Cp=EZ!0Kf^uuP- z#`*@DKc83FqFx0v>}!<2Is>IkGChoZj$i6j=6_QtLsIb)ZaD}){S|IgfN*Qh`N}nM zD;+(AFGKu~3X&F5D?9_J9R`Ol4M=|SJ?@0RcY-mej1!<6cu6Q_YbBe`oBTYAFAvU< zq<&tif`FLvF>NpH9~fn?_w4v$hQPngAf&dZzG89GD>$qY%Yxy#>Kli+nnGeawnc3J zdEQSDAN6eGeB5qTyMvPWmli@{^_l%nmfc&L%rkNK#DaP?_v!v9nzz_tt6%139Oufm zwMAHMaUd`d@+;@rJM^JU(rG6&sbUDl9Lhj+kf(0i*h&}>R*^z`Kc}BR-Khw(M#Mkd zj_qK~9(S71#9CD7ioEyZ(st1RR3|TO6NLO}dMd)aKO|C71tjdDA7w&nB=2XSuAwx2 zb)nv5L;-~KR2eE|6HxmCBCy=~3__Pu zB3%r^0A%>XdShacc^kGVV>J=O2}yITo9K^fHN%uEA5O6<3Fg~RAPf5f`~mK&32fEw zlEHbBn%GG3x(|oYnucfq;Wz}35WA$kp{-ZnqfR9#E$LjT0Vg1JX7>dR5adV>Xp2@) zD7e>)`qBej(Z@TNTnF!uWx8-2Y$3;&Esf>>y5$9dt%K_0_^~U5?fg^P3kMu`qaFo-587B6Js6zJf4r6Tzg=uS0 zy=HK9v`%omnqltGY>7M>r~8E$0m@v{nXer%Wl9)2*}$Rjal9DT8y!_nw4gnI;#B{S zB<YQuRh9yu%?(qrkU1wT?Fuha^RtIE+y(0@L*Yfl|fP2I_8XJuHag>BhGW zJ+LVS^^JqJml&TJ3j}XXbWIu90VeoBOyGB8KwyGtwxD5t2@Px13)*x@|9L~3A`aE3fXL%lGi{&v^K#q&LM1$?S{6Fz}?!>yb z0!dtYL28ZlXxc3hD20dB8b{8dME!25gk_qci{37@QIOy>Dg# zHDcc2^AIsg@6r8~au(5q&+zlc12B?#MV{0Xk+ge(gD-(xh$Q=?&{`?n%v~WL$p_+d zE4|QZiYb}7e>&J>lLRpi?f3#gS1=eagknDbgh6(eslErzv3m2*QC6lN1J4f3)pSD^ zH!*AEJ`5x-n?HlP&!2}QfZKf37=Ev$SP`<@=jL;s9GfEe~Qul z3dob7IX5Pn_E+fbl*xfmB>BeFQ$1V0&)AaNW=#I*XdZ8(SF_kdt(qa_b~5$X)(D^g zQ~;!!hT3W)xk5c*VxNB_09PCMUO5TG9daYP!m7b$1mgYx*1C2eQzQ%k4AZYc4Zzbj zlYknNHGGn+9Vm}f4#<$Tb{$dw#>-e>F(B3GbOC5R-}F@7&wtbSB0(5};~qzufB+Rl zL3D|z)6kdDMN$5o+tnrNiO&^52JlG-ze{&=gdhEYV3FtwA3+A-#_ekQik)v#Aq5;j zw{sHE6ZI4hn5M#*R-?Je_l>XS_3{`+(^}1!+a}u^u|_>6Ee?!m0aRoZ4dNA|MjW1` zD@Ni{80jiI!L#P|#wwOvn>4uQKnq*quWSmY6T$xq7*ov%zI_1r7CV6Q;ExOsl}xYo zuibU4ZF@E9nt{RnhbaAkHI-Ljq>iSAV0qQFr3N63O#5iE74Ab2)GwYq0EtP()p1ck zf6Oj0Ld|HYYf~u=4?X1GYNZyu4_GFG4Tn+t<2S892#Ox`&~lWf7da{jodjXE6_JSt zEjk6Y2ci3vUH`!hLh8E8iN`|Nh-!9_ZVnYhB|IX4cf)Fn$I?HBx8>9mo7c5l&)$3x z)+<>Ij7)A{FzCBdp}F;qml7J|j`v)u>CI=e6uJt4zup}3Y3uE7NP^r5>uv>zXG6v` zKe=8XVJuX6ag#A<^sltZ0#c9IBTW}9GxTb&MJ9&fTx)qytR&EwCr6uL8Hu&rV7to3 zD8qjHSohh>*8RIARodr<5IDI2zajRhs_8{UU4B(eh+F)K!f=)PRfi*@X$i_RAgll6El zz^-MwV`>@5fz5yEYq^4rA9k`@)SDh&Ejk4Fbxv4m)_c}87ZkW{pKbfddNfAU!HrQa zEb9v>7@2;~Ua`G&v)#8-(10!B`aqk|TJaNRXDpbcMSpn*#I$k^Edh-O(*VscUQ$^>Nhu=^#kpLhp?cF3l6aC7kOXm z`$?q@gQr91of#nHES+HTsqHdAeFenaBs=J9=xJXZpT$H5!*5HCA5N%0y#?G1=sXjh zl0fC)8v6Nvy^Gz%LmYSU<=oWcDvEo=7JL*XW!&4l%Acn0$AMODJ>JTzl; z2%-)=A-Y0_Rc`VlDyO0x*!q(mC_`@K$)74(!(;P)+BHqBe(wd+RI59g4_%lTPdm?5 z&ZA#jl%jTacG5@|8+=Nd3*J`R-<}mtkuo{yteLHqbn1)nav>wzJFI0Wty%2$3{rec zK7gZ_>#kL6N5?+h>b_SLjqAhc@PfVKB7rCbQK2xYKzAU(pA0(?4{1Msx{4agBWclb zTV|;jmLW*mA1UvuCQmRpvKGaxpAmJKze=E7v;9uU6SkEbnCz$a)%2L-s2M%={-*@? zDJ&E)mP(Cbfu#RLUWk`y|M8h%bMGc4 zXy?h>{;Uj&A{0yjW_qMA(2Vx(o){UjXWZ5}Ti_>a<7 zJlUvGU`j}26jA+Tp}Y+sc&IXq1olUbc@LMnY7!Qbgk6jF#XH7=$yFIeJLq*=*a~2{ z!2w0AQ5ObCe)P&Ta@jbR{#VS!@@PjR206|# zefM6&282RwYM;f#EP*2A_)JxIh+FX}-Dm{+i9*0mXpF}*8vpeldT+##p4P{m1E6kf z4}Pu6Y71G5#1Y=w-nQGC9Kb||znwlg0dBxWtKU&i+WvZRPt&MfesW0f?Mi*Len^Dm z8L)*g*;aL0V};LRh`nU{S|%Iu)(t45rbe#k{ABy+fXQVk^+Xdx6rGZBcmuhKsI{=zVPH-1UqeiA}X81}UL^nUNL?8E+U$8L_W@cSEwFKofFrDcF*4VZEc+#t|KnmdW_cH1QOMiH17dK=^h)PKN> z4ctyn9>qlrK&fML&&B}q?Wt6^A!vV6w2C3ZzuOa#l-4*5koJ>ugx@u{U63gt;o}EK z{QS8x!+ldsz@D+(LI`med^kUOuD`6icq>gkS&tBI6rFB#I`>)*A-42XRj=Wt=q*+~ zBQN=MTs${*Oh@*@&k-d3IN@^Ay#9P3oN`O;ZkWUW^YR+O8c3&t|0g;c3_QeH0a7_A zoi|N6)-Ko}IYaLu8abdp4r~peYxZUMhep9y>GhVTs&AAF8nv2o$@`NF2{=O9mY%D{ zwe#B0_Cx`FRQnB#Taz0@;|4t-Nej}?e|87}L?b37J_3M9DCGHprrv7Vz#_|7{Wv%{ zxR|No{?4lpwXr*skJTg}3FgopdHa%(Y z*(@p#iSaRQNt+Wtw(pazXT`@u9L-6d@KEEU2nr+v2T=toz)(>z=e)(_6GicxF#NDL zi;vn5N2Il-L$#1s@3r%|DLp7oKU(hW;{4;>Ez6DJlY?nYZA}e7`|gsGW<~q1U5^`0 zPjzBt(I$sG8h+B1jegHW`_E0$s_;I}5sr8G3@9p=e#{L<58p`j5Z{5X@z*}CDJpZ? zQQYuy@x|ekm}a>L@rE1^4;7M`dyLF>G$j^hr7W(G|3Nm9nYMiF5N9Ze&RfTw#ik;T z#zZfv;4W3=A8Y1JZ~yc0=(iPA>-Cuba{coa(K&yV>@osCo#Sr>dvSbm|nVephK*FR&c;mHJ?}9@X^+!JI;}Q33uy~vm zd;5DVXAjA_S23+-9?PRd7H+3aa}Ibi+&>(aoD8dMfS4GnQ$*}aO6QIVR)_Ljb9}Lb zSZoU>&jgrU?01y-Yazr~n+|dAkNhNogKWz@_&keXmVd1E0Z~!!Lsx@u&E7{LL%$|} z1qGMCj8&Wu$+^B0nD*<4F!HuB5M%lEOcJ|wxVIUegY8%SsM@Kt3>%SqE~pc4H$zjQ_vQC-QIew*UJ zpC^kJz&vh&K5oZ-8(pXC`gvh|v@v#~0V5&#y|E9EE&RjL*S*!zw}v_xu=INKC^ zRnGY%7$Ne0e&~e*iD#$Yd76cH?-EgD9p3D28`~~XR9+iha@W2WJz{3gy~_5x z${T7@4YAmqVZoA0sJxQ~hGn=3TkYCpZK})F=P_qTka)hlfFhus0>s??V};&@gOE zruDbNh?V|j*HFhG|8c0*f}4}Y75JsU7G*MiVO#)Da8y9g{w>G?k1=E+RTz@ujpcnB z^_eiwTj!~ll2|r&p)CTwXKiSJG^aK{p=P`TszaFjS~~=-Vk2Kko@QyPdkIfh@BYfF zzMndND2`FHK4Z_hMf0tSs&11dcq)n)aU4zy>7f%CFl$`7E5>v0%JXbQ%REf=+}StL z#RUJQzls6kD&X6nf`uE=A!+-#`kmL(<`XIR#R*E{qn?Ov5g|-`e^+RiZI8Adhx5|w zoDqz|(E>9Yf}lLYA&#$cj41UDoj%F=PYl9E!k*XZ6WGDet#B1yP@D%8#9;e#=(T~O z?ttMTkGhM^u>i3HizPxyb;VHHA25a?h72OR_t69Nu2fz&2<$1*5YjN;!{q}J=T!) zGJ!X(PeBblBx0nmH>nF(HgFv`Uw`PrEd*gLe?BD=jUGir_>lDrpg zdXCh}m*Wc+u}Zj@QH3rQ^!nZ5WyKMA0@nE4(uNaI7}gEq%U7^f6t*i;mE%UP7DArY zI9!&1==@^|)K{Nh4LygY`HD+z2TN%mZ}l&)=7f#tS0p}S#_X~b5j*JH@dDNqy%74* zIW0LEFt`Mi2+4tseZjI_6pir`C-;)bU^X++KOidS+*fGgDYibna0LGo4L{(7DcG_% z+o3{~*7%V52QKZ_76bj!0LK=H*(OfWK^MA&60g5;-uh*k*%K;-t2Qisylkzz13|5d zHPYNUbKf%cEzw-XZqEG)wZiA_90}qkO*XH3nFR;=cDLhO;KmW4P24LN%Yzg3)U|aL z7=Ob|!0GOI-n+jq%%IskNO#T|z~Ap)l92}QG@tjzJpwaI9g64vDiAyD5ib>IkIv{;vFULcjnyl`jP zK!RbyLmCF2*OfD>(Rh7|W8}AV>@kkc#c4}XyB?9#=3&ffRCS88Sc<&PJL(0gI%x_b z@xZABLFvFjB(z49lw(KoT(dS9hQDwNW-bCB2@i70fg?HPn;ySaJ`%C4m)LV;y4Non z=%39Gcs*b15qKtNzDR+1!|=aR&tgk~xRB$P5E1fD zXoT^u&7sj_0k3|U54*aOJj5pJ{&2vJNt&AmlV;n%wI(MqgzN(w z3@L9H%T9Z{_^I?&XK3OI;k3%z=-XDdKT@(%th~3c9YFK=BAOk(gyZihd0y>O*B7XW zR6kP!h?9<27INMUQF*p^8?1bYHwyOzpNi^TsoA~;ALS;|()lz*r{H?l{xR78J+n+` zB0rtNq9HmB6=!K449PtI9R>WGT(T*`%db!{cre{gBECo>8{yq zPBP}oAi_HhNL77!b;XlV$!V|1x#+VAvsBCwew=a{L8$47%2K+Qnis>B`gC@GzSI$< zOvb|oJ9|{C%afp> zLWX6xDD#MzX71nHctl;+ud4pb4Gd-~KtOAHj++*pS4$qywjc=ehxe%@%7_%i zFHU$-fQ`YkNV}F8eOQP5K8nM2t;LJ?T!n@3X!(^q6*hzJ6)(oJ3o|e_HMQn?RQW;nDYmbSTM@D#yhDILAA$Lb_N7plbNF#cF)hX0a zY`?7sT`$DEBQgoB1e!CS8@}3J9~r?}CHp7>Qm@nM8&zQqVI9s|Np#gdX^R3&_)ati zp<@TF&U%V;C|BbSJ}8*Z4FWP4$gLES9VkW#B*I&ncxm>w)Q&N?1Focw`hvA9yvJGi zC;pr1X?iq&Jj>h*h%D7_c!K-ih$`sw{X-~MJ3oFUa;W}h-^#1vP_{DNs@C^pb0lHs zQekCoj|x+Pqt~Q#y`w^`y;&fPVej13_oC{D$_^>Wms+YtY~)Cbe+!))5o!+evuIFe zS+5tD8&_#>D~LhtiX>cm5Svozz;`zT@cKYr)71|xi~ul?n6XK`o!meu2t_AG&VUox z2OI_?9#qZWAN$)a2#V0&klG?QvqIk>*$SG${=~~RoLL|fb)CieQtc(S`Wqq#0{E(%QEl zzLhU3rm)OtCO4;)*=FM+Na4kzT77X;S1YtO5{6V_mK7U`AMItZ zURM8QS?#HDw9q{fmTz8vrA!Xcd|pmJ%!;po*Fji;S|P{LO6;>j0k#P|fOMBh;rL{F zPo&v^Wptl6Rlf2+ZDc^to)|pB`vPh6Ajhs!eZY+RcyrU^mXMIJaebevEJ&al9S&q_ zJ48T##FO`8ndN+?j_mj<+;H_0FgoxRSE=rEPuT1%<8Ttw<8`!fww4N8BWtR_v?LX? zg(TI0Q1DXcKeD$Y8?c)3{p*D zu(mX*^2gbJ1k-*(&c9K!8nIkDh(nYPooQPuHI$r*?&^z}rDxGqxr^3Iz6fV42EcR3 zD!W0GMX8||VL+jbYlR}H={~|iJqvvN!UvmMxf2WPEcCXqk|(-s`Qb-kWf_huVUZ({ ziOgVk3jcHJ;2wa9)m2-U#L7l{9-Uco2hj3ei<2I{S~9VNpi5kR{fE(XTs_pdS4dk9%1F8S|Xv+ORq=@o1GV zQ9Wkco)rTl*N>YwRrbGHSVdJa48Q2YtbqEzaE6*T$%}i|@&&^57qqY~x5ZaOpVH!n zCY=pg7`61LYo)cBV3?u?(fcrD86jIfdcU)zq(7lFK)N{A7oJls%j@{c$tKs^aa(PMfa^0WfaDi8H75qwdI(c_~sl{Ut@Ez zL^N(_YG;*0kKgbdZl=`(FvB`tYJWB?9#f*OvO;b2PIzd=l9pg(04hT9;t9^u{x3Y6 zo6JMVL*V)gEFxA24?V|25*QE;`K45G33A-@{?G*nU|PN$qG{g~ev;sTf490OZ6k?m zj?+S_b)%nm(Fa6s1&o5andMH`{(0N_Wc(oandk{x1Y=ukg<=~yGIK*J>P>TkWKojgy_4&wBW}Zz^&GUDHAgBWQCBqesu;x` z+>_y7g?uPx?yxidG!>{84il_QNLlF$;wY3fnd3-d)9E=0a21eS=8`-_nkjeS!iZy>xl(5v*V<5!Rrr}t~p{&LtYIF2) zj_7>j$+%jG8KHN>K}m6b{Y+QKPF#BF9)r21|Lg(4l3{5Pju46tER%w8aA}{sbJQ+%y)-jprLn4nFTO4zy?i z1w)y{;Ex&2N0`e$Y(yRKb-aYPMXCH~6psF!fi3yz-QF4AeC&51`4pp1ZLfTz*UjY> zSoVc;&Hk%BW*{aBAJP0cKpn=|^6y*yg&}V*-{=8V>Cojyh3pu2eyPt)LfpATAYk(x ze&GJ)C(KXs5&GNzrXDY0X-hJ;04IXMJq$Iz1CT^-67ROEz~wz$4DxJ0-fzg|-RNt2 z3C0{?oSuDRp3uYR1*#}lN5i~$T7z~pSz_dvz#hqxaW@DHd{n{JmQ=%C&kq~_vF=iw ze7V8Ap6F72iMa5?oaLG^qQ78fe7KZ#V&Eye_IocjW|Vn~`Jpo*q=OolkuGjQ(0bm7 z46h4${`Z8PYKVMNXBrwEnE@JvaLXb5i69xq3&{W0G&vhB%jlp6fkAofsAvud3mOf9 zRC%FWZ!syHRp6KQUQUl045{-!e&`I!g?#9H&<>?u!Ss6^s0HQ-dEqs9fTC)-MPnHO zlOy~7e|86yBio7hZh2@%@+c1WF`isA0G3{=He;22DC@&Wf@=^!Oj38P*|RARGA?1*kBas=zU&O7 zz+@P;(OQU;{Ms7_j#5`bAgUMT=$rnc0rP6We?0#Citmp0+2|`N*C(f0**p;L&q4Fo zx0%~_?>c`+)H^zhTE78H#p&$;GJWtRbp4#5QnO&_!z~=k(#uwWkWah^e}6$6XIpw} z#K5!af)TV%0Iu1wM|`gzS`L9i1KcmRHXs-BHz@hXhvb^ZcOyWvFi-o{MI@QBN28mI zJcHxAsv!t4jZ?JV^UZGTJ{?CYD_-}El(9>rGCG_FRJ*#KNDk<{sPcrFbcd3r?nRB} zSX{C&OlTdSHXr5J9_4EYK`GW^VmBdC|-rn;t#C z$!Fn@HSGQ|iLr~-mA>Xx0N@$&e6xY`zsGuP%Ln!HXb@B7?l#+%SrNcH;2@@Ewz)2c zSsPs&luBk>n|12?l{)b-+5a0l1O7`WaV%g2IGr0Pi0P^}z?nb+^Vpe^AGKYk`_UdQ z$9;^t9x$YO9p)bOVoo=k*5YhxR-X_GUhA3$yFNx@B&<6ubf{vpGg20ahYiazz&8k^ z-ezufSY$KQ&Hs@?ep*-3S0IzzoMXZdqvDXLt&QMXx$UORFu?VZ4S0nY z$18JJM=2(=+oO|`JXS|}+5Xj9LyZBXcl6BKC>cp5x>-;xIoaR*TD*ad`#oY+3z47i zi%(of)2sU1C;Gn!B+dvF^C*ooz$TZ(((%JCyMko`Xo@bRPDMEcMUj6CyDx5$m$JA( zU17%&YWaFj1|ituKwUF?RDrL4PI5xPx|@-)QH#mbTUdjz4-Ob{ynSckJwDYJ!8%GT zleqHr*Nk8jWN}shZbaQoG@#ATJRa=TVb{)enLF=b`^wPzY zanI{9al=Y)c1!8WW%9M4{Tvo&g)Go;oTSW~tY)Yj(R5VT-A`uG&JX9%UiuYMgk5J; zi$vs2!_!So=tA0Q_UBT1LX})?Ma_o&dV0B;oWtlps+`aG<7AyfxuXT8SGi24*GtaH0YdcaH1q=`F2fmML>vl?~5$ z(1vq+_$@-hfht?A%OkITIGtF%?QmC6fe)S);9@=PDVOu9$Pc6Pi#3SjMZCw=*cR(XHUFL3(>WT5AE;())d!Q3E)tE!Vg0g1k{sM79Nrq=nLB3XHsc2AZt9?*?!`V{By&*ZaJg1M~xwO$5A?<(#CVk9;0U z#$9K!xQm*6PfY`8_a}LZoMJr(PD%@Stu4wLiST@kIFkzO<}0YgBHq}aq8n=BY?M*5 z{F>ZIuEbO*C4w-diaMAxtuZXB?;yIvo_m4|5g%~KnQhx&4%Vi1v*H&0i+{*SLGoM# zle_02<fOnD)67NZ0a%mI1n)+?`|@AMN26m<9RUe+LzcPwlA-l{7U(;teA}-hPy8 zyb$^3M|NTdWOlB=dY4v2_;Cx}_BU`Ewctd>2b$J%3#WNlBVW3@J3Oo;rK5Sj3H%vbIJ&Pt9A3_fz~4V#Y<4iv(1THuXqxwFX1~_>Z5`>b zJ!%(BhPeBP`gDtJIggsjxs>u5uIFx>x!>|@v{~;faFmn=>p zwba##vVIT2Br3XVRDc?TE)3W+eu5cX^>q2auKARQL`0tTH4n7w@277XYpujV@nLSA zKT=UkHSegUUM=x5<)!jE?>?swQ33fbFk!(^9rrY)EzEQClqcJhBfDeCRj}h`G!d0h zVBUEybZo}z&)|8CaQCZc_c%1o`T{|3IWSAPWL9773ME+ zbpME^c~vtyHeG)dSsAN+QE)}s#QSrWuZ=;UK0&q#LqB$H`s?ZPPHTPC}#M z!#$wzyh`NA%3Y$Q=KeXaFJKF8OZak^;4@S?jCW*aH!>QG2Up=Oq%AoSiasp@O|&Nh zyhUK#um}>tydgE0=XEE~pVbn_$&ScG|1QY^bKnQxIlsOd-Hs0O@`Wz)uY2P6Y}>rP zo34rD$bz1#`1l%F4KX2DKVizu_A_H_$QuANP=)|p6{y^f@0-qhr+J=*e=9@3gw_kD z&o|%1S4BsI9<$3;%b-oZV^1LWfjS>kQDthy)T*JcN`G04v=9p8du|)|ru~Wk5kEu) z-0PB%l;jUwU9y-SCO{Z<_S9nIu=v~(M)vrSd_kt?Qhy$8rJ>Z*LFN|fBYe$}ey~4H z>SG2*ESJg{e+mO<7DReL9Mq=gnra<6=Q!IIww-CB{icw)e_o3otC?iTYOc>>tewPk zw+3O>sfJX)N=7k>IjTI)gQ#OhSeP3dq`zfYgsqDrd0sjSR_x*IkNR_ok;`h3f{;w# z70wBiM{^QwM={pNuRG7a_>dpj?4#_^ia6*0qvkPs<{6eN`Hh5?lBM(Tfj-uK4`KCot;HH-V)SM0s7eW{_& zlfO?-laei_Ko95zQgI3zu(H_2coihUeCKk;sZF#IGHZpx-R8Lfu3xjS=3ZWhApHx< zJJY`19o=9xjLBZRZc}6zJ+`ZNeLgRhAqUtH8D7-W#)Yewc7(vL(GJkn%w!=e}A#axys@+X*5MJLyUTrSid}kI7 zl+0Enz>3ED^vMhvE4L4SJ%h~TX)X8_8{6jOP_S&FnY9!8Y`~X&=s& zlWK+WLEYgnhN!vFBojVP?Vf#C1f6zf%!7t8?K=t|6akk59V&eXo2IaJmovgy^Hx6c zBd%YV*A8XsZ&Q>m(*xjZz!ITf#ulW!3M(`rC(MD9@BIUv!)!gVxu3VDH7UqtNCtc+{S-LZzep8g?IaIc`<9gA4^G7WqSP-@s(NV0_IOj+CN;0->=u{I$^k*-rp1r$T*bJh+5+1l+q^3 z@4kMp73aNH=57qeDlBN@ZY%!r{nvLZ9X4#w>%_)3fqLP)HwWfKt}m*TU4>7ci#<>T zfMG9~#kpjWCqsa++w*}(yZF0m_q%9|1s#&CHF%@vyPfbo%UNAao@e!X#o7Me3;zrdcS{PbAWDqh(@+Hz7O_|JB+Yn3$uNjVE+UsoR8ZZ{)T#!r=h{*LU>zF?Ww#B$F!C>@?@(*=EYZMz23(=`mn2<&H_nhK+e@kd zs~)tk36?P78bmEVWg-n>qP6)}7+omBHACUdl8v4Vm;3ZE3%8J!XVmaTue>Yi7)<-M z<>|hLrWWSGSQ?c;GD?*@o?xQ!!mG{uq=APdUROvdNAb7A^Pr^$Y|nO6Z1&VKacPpu zD-Y;T*g4cOpVt#o%ebvllF!--Mo(C_s+2yocq#Sj5Dm}itxe&xw4MH>xpM9GtI?<9 zojZrnKM`S(1p})uUj+;nSIq)5)|ZJrTz*Jd3Q>{xKnvR|*g&O6SpT3}}XmUV7dXbE!Wr_tZPb|P_F zqRRNmGUe$szniJQ+TX~RJR<8YvF6~Tq$JfBiFUG$JMZ#dFXa0EtWHKoOIINNZTMzI zcm?M6jR0Ux2uSlDe?ZY(IKSG)K<+(;!d`9ipH7_YL1L zwX|byW`xzmtR#U4tK(XvOeoLh&pP7e>d28beQ6&bK~p-i_jX=H zU)a9P$e35JZ7tpgKHDGCdp`Y)7Ib^E)}|uA60?(tqh0dI(Jdcsp`-vhG1#B9rr1kc z*YBnmO1qdq5kquuV$=H-Cc@&iO6mtymp42}Pbl_Est0RLi-^P{cT}C<2tK}L$y${& z{4hYPlup4Jkp?NH@-((%tr{<`ng8IEK~sDPJvRgI8|?JkFA|k5rj=z7VQ-b@R_y$o zPDp;C5i8>K)^J1ZiCsJnJR`jPNTLh>g7qFVU>43UdwBlpC=4sr3jW2SVZU)Um^qF0 z+f3)#tkrww{r5ZahVLAg&hUy6nJWQ~nmCZ&aCn_g$IxrS^uY|a)mf{70oakb3Nic( z>icDQV_=6aHiN9@MB?k|?FZ`QTYr@Fm1TEB!pR~|nqW53;L#_{ECm)@E+tjWRKvDH zUe(og2j;PCfrj(jNt;1ot+C>`+KQsdmHw|Dp}pLW+op?K^5t`vBesps)5Tki&W4>g zdut5Y!!p>kKa#erL|pIU`1uryhn?}9qO22DA9(*WHY>8b0U>{O&9at2|R7ARWQRn8; zD`zto1SJAAt+Z}ZcK-c!C z_7pneXx56wmC}{TRf@)9Toc#Q{qPOqkC>QR@i(g0AG>t!2QJ-C0F#5HB&1d-=YP#d zFT16zX^f@j2}Dh6oT`&I5H)L?V_*5A(XT=OYNa@5D%1#|R>BgzrgDsR_=O*7kLw-bZV=8n2cT_sI!Xg;<1yYha0{g0pGPq8-MHpNGz2qLt$PVD_WDG~s?Wv%Aj-SGyT~i94fe&c4^7q*%~Sa2Q|p8w(hgttP05iqdJ?fzR%`uiN*MAcG7P##HP zDri(Y5x%Bjy9k#!^c!u=y9$fJ51spySBVMpxC}JRT!4*5NBYzj{6d=EUR?2Lgji5l z^{$*5XUs%u|JI9m)z1)J@Doy$uF_D1j+d7*;_4;Hh-oFmYPULlii!ZX4#vw*X!PMv z{1;0PXKR-I=kh=4X}kWI7(iTlxdz$mw?F+dq6tC-N&G$FWtg~FwYldc2Uc>AlBS-s zOuQ~MGq*J-AXa9*4XH7PT6KNp{@GJbxp_T)g7KPddhH!}`{%clAMq#OD+s>aI$+#$ zf8bNeMGfL=zp&oxiFTL7*>iS_0`#jDVp*1x-m zP{xO5n=P=$$eNuX2|a3%ZZ5aHdpzub2_p0@jf{n;+P2d{ojT#w;}RxJ#T#9{H#f;T zjb-PuULQ1Nc;hAPm`;|&VQ_a29Hl2e>sq+@`wzCa^Uf1C6oa2#Wnyp+wjoHq&A6VS zN2(Q|pT&vYH8n$u2pnzZnCHSl%cAb>4+5SwZ(Y95>>{0+J+p6S1M>W>2R5rPFi{QK zee)>2eV7u-p!7?8N_{*L0}Cxvh*~kZ$hzS$G4gwMiiI*KOy3wEl%(L9O||DJ^&Fh^ zci00P34Z#VRe0~^^Z`OR3tfSPbmgR&311lMnGJkqWka6SUIj(X<-z0y{8a3O?}Vt> zEaUI5c#}7R_b|L(=4Q^wM-y%u{?Oq+QWPsb>8ddKp8sh9nx$hjT+>TaV{0q*{VOI5 z2%06iM<=q}Z3e<(-Xa@3qc>5&rf=9Kncki+Fvm@4>%jm@RbuaEQc;z$1q&+$$?1o& zuSnyGw~gdofr>0y9kQPa>`+g%D#8a-4WxihL@A$_TJcVJio^!AM<#fk^oX@WO-26($tj<<}r@c;lw^VamAGUH?fc7OMd>e6k za6*wgVsl7%d0AhA&+s^!&G_dT87Y~50A~~>2SRb+T!}hLn)zlUmQt) zm}@MMCyAo=5c*t-+wKZoo4iN_yO$$VNK#VfewY!dXZNQD8UMiw*u<`8nNgOyHMY<{ z@sXqx+|Ehu3*_d?d2>d7enLal@{rj~WcFuc%&O;#dFuB5B_Pl@xr8R+S8K!u0>U#z zni}NCWq5*&XQ)v8!CH49{te^M62Pj`%LXmS!3jzJRhtNw>BJB8er))z7;rbtVl(Tn z-(#o)G14InvX8(!ne1SUhvvTQu}tXS%qgkxQm|dxkUjzuz9T-}xth`FLE&ZSNM3=B z$gO$X=xP1CB4isAZJ#<(g@j2bz?Y%QXY2j6gm!|m2G$tsuD;-^eEyRJhnx$Vv|u}o z@t2H-9NyPgs}CGtrWQ`8NP>9HfqezwZirB1?(9M=Xc0!!{52D!=u;fLhM8=k{5$>m z-IADSTFh-&^zZgNwp9orn^wQ`UOj0?e+vwqGRRCgtMsS9KTHGX&He3g+UfUiB$p0Q zWSRe1XBII(A@(|;*!jUx-^6|gc#Dd*(!E8D2l!Nh8JWir+QKz;KBDgjB~nErfCK!u z-6%<*UL3u6&g<5;Vx~VFcuz+jQ8t~){8&LkK3 zXF3~?dzWUOXCzeos-BT70;drj<|)+AKisSl0aX3adkL-sEKGq3dSau`60x5|0$d&IKH&H81EB1;HYHOm# ziAA&pQOU_}KaTcUu#1EZcKx~VltW`7uM>o?p+J#TG$8THJet)8#ESi(QCN}e^bp*B zx%{Y)(3k$6H`2@=iEplVuEDk3IKydB@JB<$EBsg@ss2lW9aF5F&NfEjm;yW5SL6G7 zFI8MYqd-!JCm+{U1 zyQ-JmrOJ`|eqd7pC*&74%OOLpw1qw(#A77dO*Ayb_Z(p@Z+~I+lG{TacL;?eZOJkx zb6rM-^^Tb*4RIMZP~&!9$I&d<&30U-_n9YvJI|Xa;W={Pos<%i7^e>AX^TR2y+2po zLD6VD_J>M*_b5g4%kH0Yga95DvV{Flw-lywZxU!RK65GSiPWz zk;2Rm)5k8af~}ZOCop%(j6fl1Z7m~TtI2L`GB$|*y-vJAvC8irdw@4*9zPTdV5wvo zmA=`uVXgQSXw=tps*q;xYow84`v1=Q$eF%#;fYXyg<;%+S$RYKLnMpA*C^gZ*tHNL zrU`0$fm5x}r&4dv&Zgc(IE@d5tG|Qv*kw1{V(+P!7`!}@=09Uy}aGmzw_+$oVDHN*I}G3b;!X;kIdUDD`jAR5P9)c z#|JzGt%G)0*ak4MK9Pt9V~DW{QE&KGr@S6MKhv&)A>gvyvxQEPw<&V7TPo!N%p8!= zF{UY*f1&6EM0vJ+aWgt(!PTUuLEoFY?r^^{sc!rcTr+#?!~q@of@Gp=H+|I~mrn!}!QswK>H=MRKk9koxpZH)-eCKL9EeaLu+4z52FV~+FRu&1tSTwQWO76XazSROChB{^~(Lm zUQ_94vmT_OE)_TtR2hE9&%-NY+3jaX7^+2UTK>*5&s4S*BEI3NZ|R*NX?W~b2O(;wvby>6-mx0NHd#SWACzGEN}u$anrUxjJK$ z&^sYy^)zb*g1e!eqy%)5cjSoJ{KebLvx@<~OnkEk^xAMN+vKAMln*u*6I~K_oCFcd zDRA`LKNB@`a`a`PiSIG;38Uzk=7m#Tp(109oJH%3 zGcfOIK&iD8+-b>^EPjWRJH_sI(#B_WRWMYFrBXaEC*H<2}KrI0|)AF;lGcJO$;_B}&H=uFz@@WICcJ>Uw567i=mxSQsMcTgvv zDyiVbvz|(Y?+*CAcTW)>>Q@`rzHV(D2{d@+FApt_g4*L`dsdeeyLbhPJl{K}1)pBl zpJXUgwpAVcOtnpmuW8X;$Etvd^L_uN`OEn;Q^dQ3FH(;V*J4$2e}$l z1<{MZUFf0+@3V4IxlETbq z(}C%LoqiKF3`Xn}=hlhDCy>3yc1}mr&Ig6wkh{ zLH&Q6IrTSV{z^ff9$^)QGq!e)52Ekg9{+~)#jZtiR5BN1bRUPO%B-KA zuMd#-baQgH{2;c^ogh(t_3NIS5wkb`u#$T>#V`15;< z<3)?z&xdF;hwJrhNvi${P`lO@PGx0~O1?no1Afl;ldA6tRO$NB)f{Z?+AGVamo#jt zmwx0;D?-y1Gly@OHVJ%NlBbY=e^>vhB$-L$#N*1zP1Bk-+9uo{0_fNO1(PvX-o5^B z^~Yui$BJ+k>5tPZ=XQVwPd-#-NRw|=!E=*%H`PL!70!dTas%G$*=$lI^6^dpIit*$ zf&t-`@KGP9;}otW+>H~?gYQF&i7Y2{srNk_@BZ2Q80P@3)hU0Z^c^qsdXiSmlx>I& z<%zg<@lxN%ZtFB>)bYfriA3@cPgpE6lPHyr%jO$Tu3OXeS=`ThrE;wk}1`A6K5K3j}{UU1-WY0xhsAFiU(l0qKe_@DM|)SKhJYGXiccYRN2;;fiM5L^D( z@h(xn6YF4>=Lhl06u8I>e2-WbN`Gj$7IuN8XJ#HJpP!n~B$oQ&!w%N^uK4l8(SIzw z!wBx^igTS_yNSqW}>uK1O1VcCGW*JI0%=P@}Js=P+mo6PMZZE{JY1{>US9R&X{VbZ_z zm^kNh@4#x`0%CiZ@*6kYlSF;td)X;ks#9F4@PO2+|>bEz#EBKgj$&phWdzX6y_XIr~%NnAXY^< z50U2@BA_S)y19Rugp?#DSb!9y%);{Z=u#fOjuwP`PgXBj>TvuAB?u`m*7=^wM?+#M zo<@$;y#TZvq7sqvRx4D&PSVD&Os|l)5+&trDBJF>uu>mPa?j&Fc|37DgbfQ#@(Zs9 zYpYSiER=3^Kz69i}Yd6>-fZEu!wZmo7bt_`!*=o8%d#+Y+i6w-I%XLipbbj^sF zZ`QT*y`d;b^s^DjI_{yQN>YXT1MdmSM-^!g*|*gvAB@F^O`QneS_nMZ;yA-GYCEXy zX9qNSPi>-sIsI8aE{u^gFXM~xU&kI={HUw<<0dvbV+fYjDyl}V!IbM$%|=GR9(o}Z zY6q-WLl)z`=B#bMdJR>}m8y3^3nh|7;>?UUTf@ea+>@$p-+KM%wdM)T)QNeC{&Gxa zjJ@~R=5*2(`%ga-Y->pgn*B`&Xd6h&wwck}k0D6nKbWS`CR1VYWu7%_rdaI<+8X~g zPT51D;s7707(jk&XjN5F7$4&`R|@{8zEQlVp#Wrza>_}soFKi4&H=RixdkNRzh}(= zTSP!W4Pd2H`#b$A2x;J?bkz#ktPz=$(GmohTLO zMR~!hiNw1Q(r*0Jl4xm9^eX?KF5`(P*_@icBb|qlwm@@qa`?LxF@N*UnczIjyJiuC z*q7N4)ClB%k7q)&MJrYR<8mGsK1F$g?@or z>pK3lW_c>?xWh{>h5r?L%;(sfgnKV{3$#u+s?-(B*cMx1%}6Ptv^Q!m-xbw!QkuHA9WWcj%oFha&>czM~+t9CC0wuzt1_FvgdE(^%xVc0k4t= zq-W<7%e^3U%&lx{^5nV;=v2IOXsnAL8%rfE6_Pw-?q_rlPQHZ=N>FXCMNzu=8OKR$ z=02&Yom_1Tc=dGKP-p{t!+db=qx>LM0u+Lah?`!sHjZMk#3{n1DE+U+UtV3l7T+tX z>Q-}eEE2Xa)A^mI*ppW-K>L*S_(+*+)^qOq$N1zh*-gquvn86D>8j|}LH$zi%{L$W zuT(#aM+>jb;WG%ITVi$LyrrXW5pTlp)=wLs&W{@RDNKC#gC1R{J4fSbO%9dZYlzrI z-|{#Aka$Wr7ghTdn(;YPiV z>iE;Dmh`eqBE{DEyd+rJl)J$vzxCKSus?qF`$=p zdrh2Z%zlp80daQ5v#(1V2lb%*6h7dY4yjf0*A_@Npt>f=HmfnT2^V^aa>DN_Rs|{< zbV-NpldYK*}RB`{;qmMoi0xi zej!rT#rLPEiLt0`=5C*T!m^yS{+y3jFAl^!()_)CeIoq1y58x=lV0U7(&}F!&vk%i zHoSv3>BbroY}(EV>LSI+kR{Epl-U3HU!lX0VWO1+2Tc$>lHgDj zZ)#EBJEpxHoo*$TRg5_M)!`c>=nUx;9RG%7UfDa3$P35b`cJ&2^&fU_4oRpd*$K#% zsQl5pu8_Qy>V{&95-J>Tn`lRkG>qysM_sOXfEEyChdV*dSfM?TBF<; z(w5+a=!6J5qvK7HiUw^WtU|0G4`#^ zG7xPqc?yD;wnkdSBleagEvE&0Fw)l7>bj@udY91vUAeE>+K8qOG8$t6H>N_qVyvzM*ipDAbUo0M-4nn{ZD5|ip>!J!5*VOUcBsu zfK}CGH|wp0s+z42zna5AQR_tmGd-D~%Ya`BJoxp7w)N6pg$8xJBbVgk@6Dy{!M*Oqm)!2$@BKD+ zO}|mUQ+m|>($~YEO+GA{T*$$aSnP<-@A7E1_yLz4bX@JmkiMScEgL|lrf&ZA#H=XUtQ?2`!NwJEA(ecb~8wV`$_cJ zDRzlS5-2pNmRqa$yqG@VDUpgDbb;R=?JfrzO;A=*1!kxf%Cuwu2HaZ@b(0sz=Qv%y zLm*qKC^tjoJ7(2qs2Lqps)?bVZ1yL=k0Aquwfh+D$#%vec0b)p#;74mHs7`il%FgM=b%(H&UNN>x5}mJ?Fq}fpRFe! z`VI=Q29^^h;a|dEo6d!tjY_OV#=n@T-g`0eeYdvD%@=q3_Ug~4Ey?krqj@Adz31GF z3xyR7nf2Z?0BUE_WAa@2Z0}BhHt2|+(!{%$ZGZhw%lc!*dhgGAOW{|d;LoJ#IoR`j zlJ@dcUja!2>`A1F0aYtFG~FqoZLLfa)&9c;l;B?6ak?#WBbr;~p35j$lHDLDT(X($ z8QEPnZ_DsR1AiOmP_8pRQfOsIl0F#c_;9pBF4Viugdmj6PlDWvbnUtCt^ycl@pR8GVxXkbD zV7hSaWetM?;;Fx&y`V`icxjA)uV$pGdJ~CoECj}hZ;FDko5Vo1M4T0AM_nVT7<&fT z$m#9iy+aA;?#P1p_ZWVNf;dd}l>%8_*kmYvLM3YuEoB_;SBZcAlu zhojLF3S}8KNcoFVQyIn)9llmUBZKiB08l~%;-qtO)+_ba|K1hxe9GO3_Nd)gg)J;B z$bl{jCob)&NI{uE?Ki02&xsH zI9WR?_34lw)tc8IEgPbH+)z*Sht}F{ll}5dQQAWxysu>QLzua1Ft|B{qX%m`Lee~= zS$J$fGVF;hb5Pl{d0ED*F(G9bK|~G)V_f_uDMp$Rj%G z#yno*xVB`3!PEL1+0eG7f6Sw-A(<6?<5S^ELaISa z>aKC_CB^v9?HBe-eEq~LllpT=@;Z=>*GY^NtI76NQ;XiUmtXu{ZKl478J#iZnP>e_Mym3)!w&cu(x$n{@M?@#(Mnvycuz*Id;{9UXD ztU){5J4u@@|j4i$Qu{H+Q}Kv$p-v=_gaxT&j)~+veZ> zcOs5vZxMVz6#GFsNJk);-Y;eKrL&j2CeSl_Tx|p|Kos$>0w8%h{n3chJp|*VFF8p- zVzMxp>?q=}CtHc_PXE-i=II8;7mKpHgX~nl1d2Q)L8OKW+q}zXF9dPUQp;J6q@jYG zl8iG2r6w}CUK^isItU7SluZZz<{lXG!wpxHpdIr6XUIBmd#vI30O;WAMGiyiFsUn>$lM zh(-x8_w~DGJK7bGYfJ9h0yvn{J^IYBWAG~phW-uLTWZ&1ts?X~ zn}Kxi%QE`kpIg7~-}w5RIbwcoVc6SQ*j-*&If_pwJ)~vB3DG%{{NP0)T`0l+YsvzVgi@36`;JSJ_6i{V%xYmDh^-A&xCeMz-3}kJ{SNf05@%s zXxvVU$Ta&GJ<{dRN#D#243V`$A0P^ZwYM*-?!rlKW6iI*p-pW^1k@1zlvOi4O%*uO zvAKchE*`_8r|^mQ3cd0&VRs_%NFpl(Ly#%T>te-IA$0EZ$Go47en_;)(K|^D4OJ^@ zBY+_LCD{or0vSP~lio>;IEq<37y{DA!tn9RaO&g?X|kw+8mYJs)=Q#@wB3AWJs+_H zgPBaQLUq%@|Fi%^%&uku>5X{R%W<8y1L{=P#w#7Nq{Vz2NS zE7A8sI0xwA{tzK~wLT*BiT8eTRgxT$QCrh%El%^6A%E+}s^e&9gH~CG*2{W7q&=qW zmD?=2_NSj*4Y)Pv+`A5xuDG66Sll?W%JW&hlu>}>ZaWeU%jOJ3H_tb#&K>11nc`90 zYDvyrwfU7^5>GwH_$0YP!vIr4>d7fUD5C(Fd zrIvmHY9;a>Q{#!n+mZGkcu8CKi2b<1Yw?UAmo4DLlckRy1y~${P#4)82*t z+ncQhZdWc>zN*h>&k^MFv^Pla(b|zoez_heJfqzUHXe+l8eVC?lv<=QPTrdZGD&4J za}47Yn8alBvcY>ssy2pt%=y$U8)F3YM;@(Bw*Pc&>uJ+-lfk)awa~a)prm>&xgvj? zJ3Yz=;6Qau#zee5+G$|bn&CHEyYFyGZ;fBHhPt8>*|kUHlyV0ajKpc|uU%7cdy!lm ze%rD-IBz16Y-G2f81HyS1sDb&52ehz@vO_l$Q=GhiFL9t&fXG0>+ z!ZQRNBXuFK6TS`CQ~yC`Paor zr+I|FfyJEo zR))O_WHQibRN%=`QMMlrLpAAZ#G3^Ej^Zi`eaTxGf52O#tg=r(ErxI()o#b5rya{y z8H%Qi6W8@7N%cJR@<)0V;F^vGICbFvc*oT&SWmzbp?UE{KSiv(WWC2#Yi*}f!3qPX z__@~2al=_ZNupzw2-u$Mzi zLMT>nkt=!GQ7;yc!>i+VG>!&cK+-yQGXev>|o?W2pRStb$-n z^fZbfAA^{I3eMeJ5|REfup|E61isF_MyaTxd|2plXa!_|U@;we%*WrYy#MM5 zCm?Cbsd!@DBME5&2St1b;%b4!&8QoH?ZEKlWR6>MM0hek19;W9MBV8jz2ADoVFHz4 zE3Q=)(EFQS@nA7m$)a;zt01Wlhu>m?vc2EQaIB^)TW-~Z-;@!QWc z^2AW*dLwqCWQ5ruRC=;%h~d4%T|JY6S?UCxQ`DedGbwNUy91mGDzqS%y+3UC^@sgc zyt2hH{Wt^RPsom7=)L*Z#>C?GX52zGz2yETxHJX&%|q2)ue}MEqW}foyweIEp~G9o z^?Y^2=s;2BLjFdyOVDSt-8g}uY=_FFV4hVmCtD%=HKy#N%~^LSqnkm+r zY*E!}JRjneQ1fytbwpDbH3??~Z>h$45@}Vno4bb|NgE)iCH_XnAiKmGGH~u3xUKpk}ye>27<~we7Min=<;`?YIFusdE0KN6#C1rbW&w7BVXu$rW+rsDUWn&QnFT z8p^lVe4>&77^D*vzIOb(7>X^e3if*azDC^!#_rH2#85ad-; zLm!Xp5o7fZWe+?Tu)ej#}v-2MD9th>~+LZW{v2W8u;I{A?My|T-O!mPr#@IyqMXmG+o zZ@ncL%xP{+EG{GrAz{{aQOh6mwF<)>*3bEUx-I^rm!|U`dRdE#6sk<2kNKbmY{(m@ z5Kyde8*KCy;N4z2BzrqAz;1+6_ed_0SAtEh%ZtNuUgux&xrC}eDT?PsF>BvI+!|T$ z3R8gCjPI(pM8V!?*RST<;;STm6t{FH%n1fJm@@QL<)&QMug_T1kL zxOpT|7%E)jqwFo5s1-09FuO$^um~dh{XKC=&oHd45=W@}kX^d^9cus*47mU>R#M)S z|Ia#9)=Rqt-a{%1y7YiUu2>8-RY2)-TYph9ft%q8)j?k_7L_MtOWKUJ%f~Q+iAIfY zXqcfub(XJFWu9NbMjJ4J!h9Q;*)5Hll&r9q&a1aqvK6^E5S3 zF7j`yMC!}FT5ce=H+p-NJ!^|F;kY9cSytyJaEH6PnKu4Pm8TPwxo;Y5J)v(mC+!jf z+bq+U3Zl5^?_UR6DCKG}bkH}Qr;$zl>MSqt6Wkyzqd8s8qY;UcoWZM@+`s20Ok4;! z^9;LF4R`NNYtS%r#mC+wlCzkn%g@x*B7xrHNLHNwHEp0W@yBNx3vsm^nF};wVKcmT z);GpI5W$PWGiZ77!#o$ccT+;Ch4p*mENV*6UW_gyFlpMf~@EV!>Rs17Ix^&6kNemNp|4%A)9 z1vAt#zZ12%YqWsS!!YI>8qLFzEhYy^u+u5tLS9n>(g(TPK%={;aE+aBC`M|m>{~gi zR*bm953 z(G}rpB>So5piH&nOWdD+_dVQaOI`wDUFz+$!7d^NrS{Q?x0|=mG5&O#V}8jql>otqq;>>R>HHMP;#AMnm%%h)oa$CHcF{jec6##vB){ z2fziP##*irjT(Gbfg(t5d>U@2gT#g02HcOcU%gown_zZnlA>qaH6xzUgX21IP)xhK z4Hik&vk6T@r0qRCdhGce59kWeDfwEVKxdev@9x0d0?~KGe&RCR+>-gEapxO>Ns*oy zgPpqo>TEpq{U7SQ6jNLiB%Y%!GsY&qYn+)s(H^&SIOkh&uf^cC{uq^;NHF!w#$D&~ z;oz_>3puYx-g}KUQ*%a0Sy4+F*Sx#}5?1Jlf$FI0`uzC!)hUtSXLV z2{^!ZystruU3~k+Hf`hMJMBy1b8czKfnqx2w<&!|&x$F*xk7g?bM8NHTVCIuKX>93 zwD^0S=e{i2x|5gtzG>38CF{(1*&*H{`nz9K=2YJc?k3O(*>akj6*a_zD{_$7bRVy1 z0SQ54hUY3`ACmiDG3IJb=bCy%pnv8)J;vNn-HPrRm$Zm1r0X5S{*4eeL0vLPdIaDC zS7?u_^iMcFPBx{rTBI0Lte^tW)g-mt@BG^CO^&Z|*qR9e-7;Ca>mylUoMCC|wn(HC ztzqNJ2-h({!3FUn+2yTqNBEkluV~7y?xKrjr2RBksg`tAoxOf>_OoWU7Qpy=V#j!m z-4;GC00*>tzZm zH}L`b2crP}Y7RKcniY+05^0j^8cj5($Q|VsWLcAi)C~@8@*a*q-Qn*T87CXI^6Vu4 zo!}x!h^yLPW1yxjbno+#!tb9zq`9UMU?=t z8iJ`;qmpyT+&Z?OOVr+nMP6a&q!HRyyp`^}DZa;WR#P$8wS4L3-#h%weB{2;7v)$d zxG3sPg&75nJb&^=&rRxq?$V1IK-lQ_{|~~B`M8boC|8UpKdVcz5=iXs(w7Z_I?e*TjTag}EBt=rS=YlB1OTA@JlVIhq46w~D06~}>00k@@Ty;~J7V>#S-B@MU5 zvT27&7m`dRVria;AT#gbrPA;IrJL0?irka79Qy_&Edb~9f3Y$a!7G8lQmH-+g=cef z(7KlHFOl9J*dYF>=zao@WjYQZy6@8fqT7aI-1A3@SEeDUy2jyUnfTIOMRED^>^(iR zpm?9!h~U>uH(?vyr!?^^Re{w1*GoOdA+AP}g!jZvo{KHG9gR+Yt&&TJZ~4n_7_k{qw{M~MLvYq{x$!P+WDPms9Bhet^eFL`iS5qv>u%`-iRl}-vIuSgmY>yO2mcao2KnR z+EfStUK60L*JaIy!ez=-J^6f%ym2%&(2>0XCQp_uf95spb3H1^6q#!`iT>_HRu4b=**SalAKOZoZ|rKec@jJjiT~bs8E&Ts1Ji|7esxanDiD(e4<8d$o!L%<&)0*gp4 zA*l!wl9CHZcXuoy(t=8tpp@paZ1 z)l}>RSE-i-DwF2?1yI@H1 zFB3+y=tM6FPo(R*>RkEM@k(dn-1Czw<&UvFiLOJQ|GKZj`OkDg#Yw+QZ29&&-(M$v zV0yNek#s&QQo5Y7-+O;i^vxyQo|k`}zVJ*n{TZsbiJ zrBsPfgyJ^Z!3$zVLUa=zx1KrS=f>FlZCE_d&xOigQ%RQq)+QvgZV}V_|A?2_qzbek zQ>JOPOj}6zUzEOBU3mplbzpx90Ic~JqQEScsdwnWK9|<$lMR)sKsxEJSp5@|m3G9- zRVv`2jOVZ>=JkP3I$b17nFh!N`Q;|GSvfCUjfzEx)r-;ugkzb#GG!DF@TFj``M^b! z9~Nlxu_^a_LSirdU*V_>&E!w7G1ZokvC5wLF3>BCbo&`u{a4M^eMtH$*Zx`DZ{n(r z;MusdQwZFOtkyvak9U*&QErg$wr$8_KQU9RXFGaL^@cF-i)9|A?B}})9FGgm_yeh7uNwlg+;E(R^p2JbANDT`7hxD1 zf|b?=!Lk`jT0|;s6g~ml`adLAlJmsVa1+WTVUH6`xqyy}$+`B3HaEv1p0I_i%kFu_ zSD+nDEF&=s*xn(2BAV}HFLmVyIE@(Up1rnfUJDhQXN2^&)c=CxFGj*9| zV+mv#TPu;lBiAD{87ikb*61@jDyuY)8N$hji3i;Ru@TN@n>uHFJYN1HoQ(B8`wLG+ zR9>dQ2SZC6U;PxS#C)j`^KFS?nkKH@Z)M@RUaD_uV5{kdx^|7aG4_NOnh$N!>&1{_(yl+uDK1henIM zyiI(Wd(!C5_@Fn(cJTbN~xn{ z$K9V-lmhjJ>+#>rhr(9pHR}rx$^6>JBU0{E9jjHP$tV1*;(y7P(8GFj-GE;54H!)2 zAuacLDh^R|^RMD$LFgv-fZ0+nd;S!bH-?xMIn&IE8;1w+V?o?&GOP`(5SWR06*{1! z+3oetM@F;tG}E%zII^*+O-2+?(n#7_m6|&}ywM(tlkp{{`?m9^;$9KokPeuW|Oy zv5f$)4;y#w%K24)aL~Tp|G9cedsfV4ewILV)@&tgu^<9vID+>cTI!votlNpYq&zD% zQDCh|C?gSf$GX5NLtnzMs#<6N3ll{1~l%f;0 zt9Tk?gB8r+-ovGFZFH4m%n<+eSWKY}^|ic*cH%`aPB1#aLFZQ3DOaYDcI~_Z3KEbl z-NTR2*vfnDFJx=Vu|>7La1%HIy;Eo~Wh|b^!ScA|Pxd(U7c7OG_+zC^OTobQu)BX2 zpmS==Is|l1O|ifcEpdT`d?~Vm=#}kxtz#vIt=DOd|K0G_&%A?Hdi^j+_Z$w+igYv_ zb;pR%BKa}De>bue)#D?6Ciz$#7^2X&GH+Pt)xuvOf^{u-PKptjz25vE5n1|n0Y{@v zu8bTPoLFJ)r7_-^=wONy$|I_v4-8e8rWGWAHuKCH>GPwBeEOkwQmg%Fp1b2QO+O$UbFRH%M(NI(yuG-af4*=?V~lk!xEEO7!z_5otZ?~pgxE=hmpK&uB+!slDk;Ah$A|Zf zV5pDM0dLw2G+?g5j5m~%fAc}rMk38Ia`Lk8rVHEI80GR(Yo$k-2tJzP?0LTuHG6kk z{ZxCCnNPGgr%E-7Vcr7W%Yl|55|1 zS#!vhgFu+R4}f(UrPA}GxNpwX7d~^U!)vGmS?pWL2pI?k;VaGzL#7Q6fwLAFHNkeoSqkVSQGs6!%tevsJwCX_&cN~Ht_ya7S{y{I$HOpP3fo>Ef0H$fg%XSiW^kG~% zJ?<(*NBhkp_yzrcrena-8kVj9rv*@3hef!o$=XtT;FL`><^EAx3w7Rmud>e_0&8pv z{RyZJVG|xbT&CB45`g-+M68_OLSRzfWI|&`unnV)gVwq^pgxVNnx|5z)!CX87%;2SMs3;P-z zvIk_q={Gnzsn{{Lzq53-S3!Pb>4P{+ z0=2KB5@HHy!?Qw&n-{80Gbm`jxy-j=-dPYF?r%N%8N(D ze1$zV!7yDUdA&kY1<=ry_OXZgXG zD5Zcq`5)^jZ+9d^q@r>hqH$zM;64t-%;qsL1a>M`7u?$39`v?_USyUC3Pto*`b%Yf zbJd;2MPefvk8sN8CCo(I|Kc<^>2TTsTGzfOPVW zPX=2r`fm+Z{!}^?`s3({4FPr=qGtIYH=?i+n+KTpvd&lYyOOj`-m?_vnBdkMVK9Da z_hkLb3J#02X!{v07>S>D@lEd z*ba*F;>X949-$&o*)RV$g-@F#MgOk8g7#?l;MC8ZxHn5Wr`>Xg^)|g$XYp28D^$qr zU5?$G6(DFp_W&(^Fkt;3zjZLj_)qY}9iuSxmMe^l5yxCVb+LCKyc1>wbnZUAHFazz z1fEsAv4?*L6c&w|3#Z15Z)KT=YKbQK7@TPLxY)x_X}#xab0gd_L9v)1O$z!9tTFzn=IfbLuTPNsaI%yU zGySe3B{lXPK`_=f;m)Cr>b&;(iFfk#n)NnTg7xE#w^?+4SS27at&f`bTnTf4q=^k+ zTYl1YH9yo`H1)DlcduCY$xiHhIuI}bw&&lxDttF7L$84K+ed=g(|Y+6s#rFRC)?uf zgsWN6JY`98fT|nC;|7zhZLw&Mi&OEzBxp0@wW8~9muH;XOMPeRl6W|`Z|1>4+KGNE zD0S_lwH>C!Z{IiDP@xWTqI-9ZLWFu+P84qieh0myx^sj8;-7)KZu3_PbnGg>r zs5?B_0C;Lwd#Szo@lHT%o6pxD0)+}Y~ zBwYO;6BH5v!vpxcr?gju6TSqq%3j~7T_#uS)HJdcbVk~m-Af;xtasU_q_p+)un1*i z$3EP$9{ZF+Xd8eAne}v*IYmdT{Z*8PYHqI)<|M!4Kue88L;IrRbLt9Ap}xn{9M9@M{}md+7NU3`{R1DPXswEW|c?j?sx z)w?F+?D5r5(rz}@@l87Mxqi-k(K?*G_UpOQCt985*wBFpRM7c)(S=q`b8M}Tq;cR( z4bP7~%d%4c$kZWf7tU}zMEwxa;*L*dTJf_B+{3p%3_Z0&od&K>n>Kfqe~AO_9XtBQ zAf}xe7D`8fGjiIg5utTT@3%&lT%>K}ijo4GqI9;^{N}67A6h$-Z zpl*M(Fy@|kL^FCWP)nuZqi7r&R5fX((uw78WM_s~FJ(WrcHqECurEThjMnOPKBWws zVAe~|w@!6Lozrb9^@}(-2Fak;0LvAMYoSEb%5e}6&L8X%a;!Cev{yKzuf0geOwm_A zCq)pc$Se^CVWlje3jHq!+5c7`!j;nZ`clgn-$ec28L-vR&lW@^PgK<^?-o~Ugn9N) z9I*z>Me5|1YMx^WJ5xA+P$giVrXd`}Qthm9L}$jTn@Rdlq^zUHc*aw3rA8P-b*AdL z!we*yV@Y8WmR9odoIQpfa|&x`@pP7U7T*g;oHEyJv~rO>4?q%hl@Yr*=h<)75QejUbO#?hgXCzNN(BS9wyjWdY8Zy{Cy_(yAHA=`~* zNK@!%MolJ{hkS@4x?aHWOORenhM-t2Az)3ySz0@3m1YKl-aKrLQcJzNP~ ziO)9L=*=MbYbx2Zz13+>Qo;sdpXz_n_Ku?yRx<$4ddF5|Sum3CfbC^{uCK-O*U8{^ ztJICA8#cF1bRf8WNHzVMfW4AJr)wSOHF=+L-Ln*HO-;7GfXYj;(Q1ZJa&3oY3_LQx zgr=aeZVj}TK4WN=lBhSRJN93T$vvo^L(NS7qr1Lz&dT~aVpQtow6L3b*Zv@}i1>a# znhHVb-?TKEqO#(TJ)^|lv6B>3u{QJrol^zKo>RXRmPk?hFFeI^p^O>930 z;s-`5>8FYRG$Hww5D?O5^@@qeF|d=v=644cT+PE?6za9JFfr%ZKk$SRwxe&v0`$0k zoZcHg-<<-0td&_0Q$^R7Ad7Vnb*%|-vY|F^ z0#t~;%O|u*OqKi5drH|263Ggx}OLnG)KmZmbI#oqS#OEp(QAvo%RZI!k6L7i1?xoS9=wyF<|~FDTGX$ z^u%po-3L&fPCg~!{DEzfRFw%XWyS=J`xt(nyZ|EY?HCp1@wN5qFu*UsX?0m_g7urK zRV-DBn3e4y^uCR9MZT~)xD|jx`^4j>#W|PStJ*39Ap6*7A)?ef*;~{0tDYk30OWr& z1IV#x34~Dhvb4)HL!u1y(+qc0+J9u}XeQ#>71la!Mea`xFj8Ehm&5SD4=nms9dX&T zsvIJ&R%AU<YBuRl<_2;T?1M4#ANxZ8IK?SB!P84)^?d=JbNV``cugP(0&uZxDJkVvJPQ;0kv z4_)eR=QGzn384sN`F71(XFL-z)|nH;a^>^zY5%2gyVV4A_EljKcDYw)_768SU|s!# z^s5P9A_lX{K+#qb-Rkrh1&`uLEB!U|FYM0D0YA?D{ z>}_4iA%Zkm{;x8*YRv>;J^2cpS%%hRH~b`QC*{Q|pNbuSDeu74fptB*NQHvkWX`Q2 zA?D;E9n{~LSd|!?91)u`{dCm=`UQw4*Z=a*T?a5v`^Yl{T^Wcd*N-OnwMd!9kb{8bR00V!38KNV zn?`9WA-AI?#8S#MHNqtLWW!3vvCc;wbjmylh+`${_?^p+03&b}JIp;)vpO3PJHG4$ z+bRW>z`U3x3YF1kHYBDQfK#^)72gf13NhpM)iVKqk$;yWO*hd*E{Z)B;7t)>kn#qM z%u7!IuI~KYx0}Suj(Il0@tASnfm4ptM7$EF@YU*LQ=~)i>x}23F1!6*K}&@*yd%88 zJ|NjTf91!jl2*Z`FbB7w4Y#=Zc(a_byeSJEAKjCm+wc;VKl=AluNLck;4XMHGm^dM z7uj^=OnXmHAHVta)2<+2)9gbs-GtX`*piu$x z2YEquDF)mmtlrI6T8+DU{S~$2;XkdWX)vJG1Z&UpMVpZ-WRj}NU^`PbyH3W)zs|Gd zP7A(~xcCiR@dQX2E>$@Vk;}5N6jMs1ZtN`$!?P}Q)($2(DDD+e*!U*eBmyge<#gLS zH_8lX*x7N8uvMKJ@zUWTu+)@k;=;L0kr^gV0!6f2Q2B;8d}cL=-4D+i^9bGXKU%$% z+Ez@E=_=rC1uXLJxt;G)zV3-t)M8!ZYLa4$d)KOpkmKpF&>dcl^A=FKpKnhygI24ehs`=6muaR9nm0svb{3szNt`P6{T8sMmtpJ@U83M z0%wOmR>8aMf@+v3*6IBAT=BD0?%_xUORa;k)7AG^OYDZ0*@MA)z7$y6-u&)vCek zHockvOBb@Pj~ve2&aFpJ*sQS8bup6j^p&OlspmWXv3;@)Yi6r>TJ08PbcjsKZ56ff z=Rv@PR@R*-U#KWlFvCJ|s3pK)_>yNnQLX3e3OcZzl3<|=O5WN$7%0WVrZ&@W&WQqf zP6Oc;_ar%-B)^u|*?IUPIh!8F0Bd%Y(vzmuBg}}fS%Njic}aweXlz z7k~wH(VM)t82lXh2`Y6`=o-~z9Hx-;3@%^}W8WFSsDCX=;J>RDWw=?i%5omGiR>rC z^q1=KvLLS;`t!-8vG_0R)^(7LAB!hZga~slRc*88rbpncP0W0Y*uYks7m?-T7HikU zlxc$A))F%~r*b}jE?o2H6o8NR@5ya{n;sNS?g!lcdS(qKMAp8r&#l4`rbC;0^wVZ| zRhy^s-9T^rkd??&MY5`L>1DHI##SIcYfTf~6~NafxG_&+^=$`V7h=#_IYIwr9a0D2 z2vgyVfav)fC=JmqmF!0~r^#15Ov6~%cJuYtMp9H#8AXs+Nk;F$&Pwf+k|orHdWdC2 zL{r|!_G1HV>h1m&*M@TcGY)VfboE(j==V^V2_CkpED_(}6>}A~>14^*P(1A60x5s`%gMJCn* z32k7c+N9M_f-2`>EtPPRm5=^e?{`9APumgE2wE-9MztA(zti@H&A=h8gvb~Y#P7fq zWliF(y(Po^M5h2({SH+Z?7x#IIIsGxra)VzlgioJ&W; z%ZuCR626GjrK6s48~19+$~6YfPk&Wzl_ctC$~N>0v{b(D#F$NM2tC(6^~Q&fsUQ6H zHIYQSTk`m9OrXME!GlcQ=MrFeqhH<(rboLI{_bWmqGInAeu$^yX)Fh$i$DCBcz)SD zG)qjvUFZztPq7A3m~6cWq- z8tVBJOyaY^`UD)00ncwas&rTt52h?(Ug&bh!l>qi`FujubO$CO2HC(?=sdu}177I? z7oAkhb=4EomtRf~zleaE+dkr8pc?nVj}$2`v&0{18sn1jR-OF#Ayr*F*Yh=JsKh-+2c`w&idegMfLu_a8 z8MJ>1{dR3L62(G~T70n0O3xZNIX{asrr~zCRHb-Xx8ZBlFsk#tK(afbrg)rMeDHRv zZxi|%_C4wFPHc!5*|C4|$n#7bt_iW(<3%sScGnRGVRz3^n z!OeSl+?b(80-;fUR`nw5AOxO{?T>b#1SQ`i%S=S5v{Rc-H^-4zFKLR8I0XlCXYwd_ zgY3vs(go)ZpMr-lxAYF|{F?SfQ8rj**g9MFeGl zLUJ-pXnw)v0-;&xSv;!=^%y)9DHJbiX@YVO8gzyF-cJ+iO3Ug4G>WaT~V{?b!*zs${KTR-@BFcsclA?22e zl!rf;e}vo09LDDYyg?nrJSIni!>RVwlh&#Ii@=`R0~V_|J|YwIO|z^(QZT(YkssMT zd{#DsCm4>7W5z%4fLTIJn05O{=TwVo^!!Iz?e`fT&hfdZTbXMa`=tgvc*%#X`Rn?} z$X53mao{T7sWD<8Xf(X_X{`$dHvS9IDEPzjgzvZ z4%-zKuz*7ptgXA#l-Eh%G+Rd1$f)Ihn$i{kE$Ygta%IJ5x`{Y^6#I@PLigq81*WxA z@Q3*4?{_-)p$E-z?ZaO@^VBrsfX2m9Y%JQJwDl_KWDiJ@g&KVNN|M`{3 zS~&eTYpM}WGHy_QaS^Gxl1>Y}JJp9PFh(=`c++h9YP8wHJ|Q+Xn$YZ0VxT((yRD4{ zRQLD9_E_48V0CK(-F1`dW8kl?%{h30pYU!ymk<`U^aiYNXeeU|`SOy)`RH*Th2YIaMKUt7 z1agn(b%igK#OyCeI}H3RXGA{2sp>x~Z<8zb)!C5b+1mHev$UWu?uv(bby#aam1hLV zT{&Q>tK#w{7=rW-BOWodM3{l8J9Hh^rqBiXkpxLEbof*7hXt}4JJ>bh6&A8657XzM z?C3Xn%02ENXPoPs%Xy$ITric>)!To17o2SP+69r^5m5l6*}64ks$lVC{a8NJ=*s=@;wCq11U*IKbVv{duv+ zF$t1ZJwu%RjKwb0Tz zZu?o5svcdf8!g?`3V)u+m)Juh9W@L|+-GYJ;ETE|&Cef)7um8ojc^iFu0fuhWd!OB zGQh*`raoIWdD<*@8He!1W0rmwgnl<`aT`%pCD;6|?FZrmUiP{(bSi8lAt_jU2;L%7km-RLC>sfXj>6h9ZM`A`H4o{H=O|9`!ny0heO{CcJ!l}n(D zr{J&erRpim$Y#S4hBDBh~I7=lEz^xnN5-@cW;q5b|aYipv6@(l2%(@RGzekqzs zH7LM{JZwuR(?-mf$@Rt?5+BGwt59t-o_AvCq8%QTIR4z;Ux)9RrOOH2H_=zs{u8%K zGXQ5lHyY1?bUvGQCOsx610#eV8qCmQRFs*a7x+c%HN zb^gkxu&w@f{8D9Cw*`$7L&2QYf?Cj5`n`tSO)=(!M_P}@xh1JU`HA9;xhnp2LfU1( zWU1V;)~y@l!yMEck~F=1-`2ZrsspOITs`e>C^ucy^)Y^=w5&rMz<^fa|7ii{{n-G7 z7$80ea)k!z*_##~<*qF*u((rNXt@V^9gb}$v1RigSasZaRt3sY7BijVwR$+FO~(7L zmAjZY-9)h-9i%~Umzn>uE(r7b z@SqveGn`gmsX+3};Hjk-(GvNUczE>^L5ULd;tBY;z*%ayH5E~ZxfM7gBTkhfHoH<# zMh$Bm#nGGg_?#jUnF-Irw|@(ja%JE&$Iv9nI1*RHpY~vS6}b8lN(t-Ry5k2YW9T-; zCA^@Ly5e3>Oog!j-Xth4Oewd&^`7hK~u9pUTwHj)6NxGH#^GKvv?s(j;G#o zGYzJ7o^!Pp`bj*_2_CC^(~5naHN@gdMO8A_LOI zd#Ai^uWIQ7`{xe*Dm|s;VDEU*uIw!#oN=FMx^+jVr%`@NL#334FEwT`z1q^Y?_Qr~ zc&lY4)YqYAn&;_ICf3T<`qT9z@#zs8u3-Pqhj*i?O4;ohiVFg{W^MPPmNU91Ltf!a zRy*($cMrcEn7`fYo`{BcK%L=u065`M{8eL3v=OZQ3NJ9kNf@NVh`}zy#t))k2a0pJ zFPb;-uf{Y)qg=kJat>;bpFVMzHQGWkv9$Gd$ZooNU?D5_N%0yI!Fy)6iMbgdLY379 zo9N(m$iqs#K-Zx+xuP#vVj%lfjfpV1H{&H1=2Il~eG!u{WHjDZ@-T9S|Gf7jo&kqwX zkf%)Gs=QxUEo!Dlwm$h2VJFZg`W2D!0mDc)t~2{`JsfF1n9M?u_Z@a_)bplK_)tlyXf6np!F3! zPfy@rKR)eC#8C@;yb3un1)VsDMhvZaEp!IL2T%n@3q@sy$op9S^lfBNO9#XE^`-#B zl_=W>Q9l~u;`tbh+cTa9h%5xD6Y!_9k-?{VD>EcZuskXXKXAE$Ia&L#>wN(JN=AWX z_V&~boncbYx9!{3R}@4>(xN!h>D8>;x_6P^?Xb_R)o(s3GW0AHm#Y-!l;XfIP(Ic+ zp-CA0ZYo#UM@;G4=V~Z_2`u`wwM{(dd+QWo3VjOi0S#>%6FU@x8FbAwQ@WrCk0ZeL zG3bFUae+lYv3skdt*P_kHpXzJqdKX!g;)K}#;BX?%b@p2-=)`Il~@yfs$nLkUZ>=# zD=@@w1btcP=g*(LIY=1ax<)4%e!vuE-!kVTxO)HdfggI*^{Zs1Fll@oEykUR4c(6H z63!DNjC~Pvo^q5S3vJuK3X0`Exyjr|!#nxq_kQM}V^Gk=@(*9ea>QwB-i_eaz+L~Zh0aB>iR7}-KOA6wbj~i|bAyR+2c2Gs zTAfxR(O0ckjXHL8!xE;qIpt0CxVwM12K=4$;{21Er~I1GH+N>Fv=p|P6m}knVc>w- zY)^1|g#G$}sD}l!AU?z`K6F48W;YUMFdPBl`xLEKW;sAqOgrw>E^W+vEukjt-`y2( z4E5jq>BzEBpG$%>NIY9`{OS2}0q`3whlt2mb&FX9Vrru{F;*)$XaPU zj}3ptt*ilLFzYM33BrAIfX;be*{6GCCb+(oDR&OpTP=MwNSfRh5O~+f8VX(ek(pgB zNkRc>DjIyebc*A*pXlHFMPI1@G<^xHnrkIZeNB!*rMYs|PT&y1iuaS0n<{oT{br_- zm@TzN97*pSy#EBq5Lt928OP%C7{pl9u_xX%XyM0C6O2~SgR-|rq?XZidT^34P+WC( z=}yB>VyNRc-Y|@$ES4(JbM+W=M!*wmvhV0 zK~JV9GCXJ`=qwb91!Rf?&BPlF0E83pHMs&in#n{D1N&8EL;H%)NqUY*XtK~~vI zFp?jM_(Xq1Q4p6|KCb9iqlBmITa1N%KQ|c~ZJ+w`8#_l$JFY8&#xp3dtu*tNp40Wi zO7m6W-)ct|1I@7rcB{kJqh3s(bT7HDh~FAWjS!q`iWZI3s_Y3?{tE^*1)=8Y$F#4v zjw5VSnI+xFTP^06L7f)gFHxRDkeW?{CVzWA-M+f&`oA4%OLWr(O*q@Z^>EwuKh3C^ z$ClijzY+OKj6_2O4|}!SYjY&05+ao-8aoB7m|IePiuv`bYJNEfqUSFuZN-aZY@8za z+peV+3?F?gHR$Pi2*kH5?xpk0Uh#Ky|N7(T=7~z=d+P_9loV+hjR?Xszn?o-`sp=a z(R`czwlDT+VhH^z{lR|cIR+(w39~cM-Gf;3&a|L3>(s)LN6W$pJ^@Bff(QJ;3?L}l zwx@69FXR5ejoPryXuP}EUO^92;x^}d<1!DopJgh5!(BwO!p1uO7$B0V9@)TnXGX(0 zh(YW!PbPMb0dhqSAmP08c|LlRc;$6Hh~12I;a^QRW?sXBDq~b@_qh{(@oB}0ab?Qw z!2lMM%JqpqH4;DJt}=IJB;cuj8&2X_iw-3IR098x7a5p?&P;4r^r-t9M$h)z<2D3! z!A;LY;DaEzG5NJO^K1yh-Uy@XtTmG+Dbb=LGhT`~i;#UyzGF9j3R{jZBVGYPxi55wRI9yKa|0n0%Xje(4T_Ei~hMbP%h zwPpWheEL3cj*h!ww9vEkCM*2;`!=c@71}?R$@cOq`^l_L-guvmn+2jXZ!~Wn%suE= ziYA5%F)un$n$|0fZqYSjIV;S>wh&gO*T7ii*<`eqk zXU;gcdh!&YiOX>6(&8g1ns)I%`dMSv{N&qLJ0qOWV`%~`BRw5i!;I4!nCk@y74(b! zwQ6JZIxJy!@W`JmrEynLm{M-MFMSr8lo#;$MvE}&_-n(f3R=_2<}O+ChymQe<}$gn zx6m!LA3)Pr$QFaYa;@`Lp>Z%((O1gqCN66w&zr89Zej~_Ywk+!zrO)9=W_UUgXWb`cGWt}-6J_m)bEJtn^wseGEK=lPq3Tr0t zPe~FZDz@7!mz!5+ZxxaW?$h<{f5_fqI2P2_w4*3c5&}{y7OY)4=oQ^>!B2mPw-ooY zP=g1BDx}ZK?@zW-K83#{=FTsU^!ad{;zV8wQ_UWl!bb`j-y3d)Z2UNE#@{l8bDakn z#`BXfwG&+m3m&a>rn;`=w%lp3k4PJ}H}u$DoqiVbxo3$U^Xhq5B;kiSX|;0+w3>@a zK&yFHv1%4COl!dBu&jW8PFO+h3}0tVd=~){0fpIMv^Pgx^KIY z!#Cc}_Sn+(Tx4l^cu!gSLA_qkDuvhY%;~q?Flxu|Fyj&$=am20aK%b8=-4~9ShZ>% zNYUPEj;iqx95V6n(R2GAvVN|oK>SRc?iUVma9}2-R50&s%8UEk?Ujeo_ce7?7eb5; zMweJ3F0|mhq_k=s^Zu-TP@UpuKDntQd{hf_()L==;-rba)rv_}iTV?YFbp!G4txfoLEgP82o%bkouaVTu+c zj~Fp7*!1J*j$PNn-#7WZ=URHz8-l38h-ipQ2>uQ;_dOp3>(hvWr(YgryoHL}c^xdI z{B@PMF6wmS{ADN-aI(2l8b>1Om9>w?Esnjjhdl;C3?ptZx7NrFTG*wh(HQr|sPk2-cot&Nohg?K=0nj;I^{)wd9O*_^>&_rXiLQj z1V7Z7D&%bd@> zGJ9zLu1s2Yl4T_6J}IZEdKxXW7o?e(EIsf4G;+Lyy``i|N63bxUIZl-uoN9L^ zG>!rQsx-s?nftf#mWrD-jx2WbpH8=LR!(WESp$6E&yIcD&Jvk#JR4)2u)MFhV$F`o z-|9H}`R7&d7G@77 z1ewXh(us$Eg~(X|zrQz$_n^n;NzAQ)gY!n8SRA0gcndw^@9Tn$r`q8S(f}<6FE|@b ztuZbE%(7KA?xxm6{3R#EsYTgds>{>(Qbx=@VCPso_)qU}s(%X~xZEq4(=g)AJ7~8l z1Y^*Sv4Ww380Lcr6`Qy%1ASaXgE|~s-eDdb=WoOMUdhw8%Fr$;(cXuG=cBsU1vGCiY1-lkb!A>#FN8 zjjV^a#R33m@nV&E&$YT)vWJZ~y6Q2*h|Xp@w+Z+NL11un;|kH0PGBz{xG%r@(TKJ6 zlJ`o~Ep08I=2YePKAS$VjuE=>N)DTI-Y z0vGB>BUTbr@X3z-@i7rMv&Gg4jTcyPZcMWB@_#63%xSo|zd@vNvK)8E|AjYOSvhecS5vKqvb-=J{G{eg1 zgZ*ZWSpRRJENzzujRhT4Po<~7m_S0WW?ZuXLl72;V1WtY4erEcN_Vm7HWHKOF&N>z zNx^67*W9Jy@ZjAoW!da0;{fB?v+n+JxH`#dfdFZtit!=--_+m+LTU$-3E=OfjPGlO~zlwU-Old`RAho_FUN+HNeM zn=|v7B!{Lzs6rf-e)8YMs7}$s3vy$-6h(u;cKA99Q4mXHnC=&j4ziugbF{*)y+&Wu$t()Ix}(bI^St z^KOwb;FU7^qi}H1xlfso@CYIe|6-{sGf>DU_ok!!s6e_Gb)sdx|ChHTIIyCxsbciY za5TwZt*Jh)%z-&o3gB*?`2@)$a1g|DX5ld#sbuQ*Ese}0(!&otaVvQJNg?HKRDIse zF<~@m1hq0VulKh}p-{3ioh>b8)4-u8;%OY@@Kct%-|CkuP0AzByKI3-FJqj#KSyUl ze03CIy>p1CtHv`j|9DJ8LC?6q20wP`5nQVw7|aGrGtH^VX*0q5&DVY=j>Urm=>!kP zxPvb{c0}(Mj9gxKSaV{a5Ev|Uir5gZ^Y%>4tzE~5WjMpM={GlL_Q1n$Bgvm;`kiG$ z0je@=tOxO|ERV8?T92&xRi0j(mtRU$>w&TH!SUU@U_8wHDGx@aKh;c2lKyK88D4?& z*Ub{|T!22bwhZ(wmD)e8XW^3j`0pk0%`<;w^s!q$_qTQIN?;I4>ktEX%eOMbL4HFI zoIVjK7w@o^s9XIg;n|s>i#r(e4MkOYK)`b3&V=ZRzLBgrp|i;>+EySTk#vwYq(-V* zXLLClD#$RHzVz}xdj&zt$T8svN&JzKn2Zj4#WSj46?Qb}Xty4mdg+FC$$!;O#Kat>$lF-$cYD|Efz+ zPyDs5r1Jp=^ZI^D;st!5r%Mz|ik;*yB06jK|cP2t*nWSkf*~>EaW$erU(f9NFcXeHL znHh85=Q-y-_qoq`-j}PLOPXTa^nNvTZGPPQ72-H7e{#Cs89=em&>!?=C?F-LY^ZA! zuW6v!ngn{-N3<{4tesoZq}=`Xn~D^K`|fTjH9L76`y5T|%Xj}Z+Itjsc+Jn#la8i7 z6o04y>*HuplQ6yo;kNZlI00T5PJ!~Xna`tdbo#<7VFL5xizIr+Ty9Y*8QfLhU+Z3= z%DZbld^$#=nagnN&%NepF6ioh{C=B6LM^Lbbo%%uIx~gJQz!Mu$6Uw46B@^rZ2L=k zrmicy`~Rev-WMPR)?O$gJz}%=!yAsNJI*a;<={`0JUSW;i|$%I@K)QdeR@vq2MLRl z{t+|JILkM}BKULp6Zg7b0*S(4if;$q=+DX#V9_0Htf%7GaQzWIu)c-qc>7GIt1NW@ zBd%rt4tZp;6bdco#z5AaD-vFZ;Ch^@n82mkT14(OY|But*!n6~svArMXIQcIsqHB| zQQ%E7B~ApJXXnSU^<&Y+@ZtpEumr~a>pbpct&XK3oH+9S&E^kKZly}mbdivmI5C@_ zZ1>KPy`OSQ#8D=H5Wn-py)-;HgQ8wNuNpXj#YNQrMPF{-wv(4V=V@bbGzJoSBwvLT zsf(28z@t^Or|h8vb!qpO67f0?&vL}7PGHG@4%sqyvy3tSM;V*w* zmWoEzvJDQcdKtGaoRH8t4?<7)#g!50l&$BNeP}hTPW?$jyz7!(l>^w<*8_O6ja}gtrRio`2-*xdHVH$u4;l%N3yQ4BTKLrP$bi+4}CtdX$ z*OxL}=F;5Q5vd!m?k@FbZU0gV8Vu}OQALl~8W;C1(v|*1_UJ|QT#4wRMfBWzi>Mpj zau_`~x8s+=ov;m*nwe$q&MJz?S@8Q$?Zs@Wd!H4vz$YVqPoW=ky0I@gy5+`sGH3BI zWzD0HMCxa;WFB6Nu-ebKhRYjpYvxfN>xaG9UL>Aba?E@VRO?%wbgyd>&v6`^Hjc#& zxT8q>CxbWU3U5C8E^MzgxYx%g)>!ilCB3@4bXbN2w z^tKL%){k{Mxd;E44J-`S=nH@;WUH~I1w7QQ%FEVUX33UKU~xj&{%a}m55A>@g&I=I zgkgk$t_mi<_tNr~D1Iv+9#2WqQy$?~xZymj&O_!5U>&iVSgb>wdVzb*6ce8|ehTG& z`49T>+EpH!XiTU&j|DuKq5eoJG=E+$N#ujFQc`vi(!UjSfNuLCFK0vE$Y?pUbh>U@ zTr);Irpu+vVAlwnpY}-QIiU(xI4bJmJpmw_aSWbc!HjB^m%S{~d4RkOfDcxNKYb|V zO5!bW`uImf8c$j;juxo|$Hhk{ke7vKp{ruv(e%60FHolNY92M;S9?qfO_8K!ue;f3 z)u`P&C3SmS^-;M;lm4J1Za{;>EJ(h{%Ymn2jLybLz#ADBVCyh0EZbhdKZ5YF{6G& zapI-dnIc9_&`>Hm0$dMV17-)fJJD&Bi6UgXB0o1CpMGa7y!rv%{``^=T}*5Dm0-*@ zNv?V);3gy%{?BaZgQo{H>EHKbnV!>wF_g>A4nTfnVb@S>cH(QERwL3|i#(eyEEBfZ zwrh+EQU$$85tMkL`i=7fFiSt=RogNY=Gf9P8y_Yc&e`{B=Y!b~@pYzwshV$7rkJT% ztnzqBeaD^SEZ7k6ikPK<0;|&l9tiD6gc9DMb8in4i)LU-->yX(c{8a&{@6oT08CkXS!q~6Hpck1N!(gk4_g8vGG z1CshwjSF4~IeT0qOgP52AEoi%iY+_AEFp1lBe)TL9DVxdO6!Clr5DzB&Vj{j-D2O& zon`;=@%h?92;txEW*X2>^18LFd`&z%w_7ED={;vr-}S%3TKesgga-S z_`|L@hmo`nQ)MWmGxFxUk)8jaJR9L9nwKPMQ-uD&yM<5<7IW{U za{T|dEM}=PB8i;+mjYpF|s4yY6AO#_NxTE;n_%2*5T2-{alx2NKx*f}Y>}z?7 z1^gUr5qQIOS9%14fH(3QBSs<1kn#QidsDM;pb>BWe{)3Z3cl^DS)lK}Q_INz;l8?_yAY()O zD)}8zr`IR#|7HPBNA%PX0qbn1M1m2tLwjE|DiV8vxnv@`PdKUzcYA3Edi~>vR^K^) z;-S6yMfe7bNOrMf@i0GVlOOV$!cnDAS|ZreoHcXU94vnk9fjeTxwP*)fVKTS(E1-pUGYRU0*u*VsP5qCD_D?IM%)<@3! z{+kR6pI`j( zpC!4(a!4Jls5Vac$qp}u&&I&yOZb1zrT4}G77xpX4qCGa{bGnCa@`1?znB~rI)TOk zRMj-ahcA0)x+Zqf#XXt1w>_-oOMey`_W+s28p52)+gmbVht^R{nL*>eKsoDpx&dZE z4kO@gTGJUzn{vgaBgIc=&k6q!i{1Gblc2MtZGB;GfMOv9v)~SY*v_&8KHF-I+eCWyiL(v(!*eF@iqb`@qNJQ2nBfS=jjTn@GzJr(-l!pfGaRm+csobl6wVO7yAHkY8) zd>?#~*RR#)cv*c`=}P__hIfYU->Ba}i=;@Lj`=meK=+>!VuCW@vBVAd>p1t4I&s$? zn+--AB`2^BH-a4??X`%zXEo??q(DUy!{WNSAITp zKNf;2Rw(AhFfTpoxWijn3nE)sSfKWVe;byGGz3>ZxhfU%k1>ZTuxtX_O0v+l9**Bi znwJukWcj&#s`cl6_WFh(z+lU+<6ZhL({^xJhkkMd@kTQ7spEI#BozY8eR@wAY89qQ!Q7rJ_4NuDC5{DYBS!}`T`|NjxxnH1AMt07^r@qiLs6FIE|<-#6v-)wr2bfN4? zTu^V7VrdL&DQDu^@%V|U15mYruK;hj115iAqT^HJ2@9QrKV%INYShjQfw=XkMRJ=KgGy4v8e6xRh?JY4}X79Ka}DWK;E z+X8(1$&Xa6`<8g;vnXTO1snOHlZy(^IUPltoniyj{{KopQO0l;BT+40iI+%o|Agr6h?`mCsmKwqW?K%9uC6SR?EAbXK{6I?tPLKN;hBSv=$z zTv2f7XS|qWcjga~`o@ztQ5k%qxfuGrp zg|pa!V47+6yDlh%I!X*`)%==&ETZQ@p?Xx50?-|yO%IUjV0rH|I3Pk7otjSCl*fQ- zXB;Y%PE5UG{j1IQp@M*am)Ci*-=GRp^**@sR~iiWgFgx7RXBA#pE+FX>*d477f4Ga z3;JE&x}CVS&Z)j`bFEcS_oG!eXZ=U3h#1P1o8O~};$o?qb~lxWA-+DC;p_%_^J#Ph zr~L!%c3zhJ6TKy+PC=tb4lj;hu@j49b%j%lH_p5W2G1#b*v@tAxlatkFVM=rG6(~5 ztWY{rXCzUPsE7nJ6ySk1zhK*SF=s7K(z`*G8UAn8#(y)p;Vs@y*Wo{x=w||}eR3HT z=>5B~&yM?WqC_99Iz2BaK8duv^!{@TC5}y;-l2S!{ROif zJ_OV?&wwvxD?jS7B_ay#6r^GPO%oI0aq+tN{yy8tz_(9`A_t+0F{aga7?sB!C2yrwgi! zy{jhx-=5C=bU$^yTuSqkYcm$kVRK?K7Q zhi^ZLy5jwwv#)6Rck@qn9Et!j8jXC!J_}L*9dXfB={OLnlY$@3iU5!R(719IqFaY} z{?POv0DSx6)i=au|H%~BqE&S23X4p3d0*?bNJs%lZc!hJVxVSfmpZd&OCSax)z;ao z|C$H!1r@LK7?L=3U7&(USE!yX0owkO&Fv{rw|L#uTBOpC9#I{aL>054(*N4CV%B ze=<&(6m#eed;M-_uqtfhwDR-gCzqh~zL{8`#Cd_1(;TMx!vHoaVGqf}nh*Vrs8{Ei zC$uUH+fPjOWrSrkFo5x+^|Po6i%1Y1@gT%TcNX6~NR>%D!edR3fiKC~lt&l7RNzWd z#&1OsfiS5ff*Pb_f!%^B!5krM)?sH;_|MXMw*O19Vit;{%A?p(7whUl1$)v4ix|XN zV*ij3Rtxxl#YV;K9NEoXi4J;&R23&24KqMM#7LRG_D9 zZb9n6>u*q|Clq`dNri|Q#_}`vH-<>UOG05#n&W4eX&Sk zS>P#{rQi$;@W4SO$AP=v?^#P)*{#@b=Isf0tHM|D-z4@u+($!44V#^U z_I9KFUA;lU9}ISUvk%44S&))LpU$6KI$~39!5eb>rtTr9aipJQ zhI*gD14cM^!`g_!1^*XsWlKR@un96He(wzT?D9>N`t_6n)u$nX0<43qV%UsR_ zNWS)vigWk}$=|*Y5_1aG@Bi#2S|GY-0sMNfzKSOPW>cOEyOV9tb&Rp&CjQ8F45oX$HqjMALUoK4i3(^ zAS~Q(gz$b(!-2BxhB?nX#Lbv^ngSP~vpf}3`6Kn?=e~DQx=fvR^pjTfljoqTuF$e0 zmFH})TWgNqcgu~BH*f1=`X7P0@zs>BuO_-_hk1z=BU*gZ6d!@V91Ae(&Ez3}zrnks zv{W(6&fCk#AD6<=qAD@`{b=Tj^bscj!FCSd5%=h-wuH^#qrv0TznvB0QF^aQE9;0* z&sr%;O+?RCFa_MUKj<+%Rwf7TxB>>MeX{|OZU#!8-aw?P<>DmOb- zgX?F`dW4@1+RV>@=|XflGzJu!;fGX2@K{nLQ)e>0gFLiM*jK%;3x67CR?L@>`0@mE zmdk(FB8Gm*AStqmL(nbc6zD65}WxI4OkUR2acVU5mKO zfRQP_CmCPNyL8cJjozmGZt$mTpYcb5j{e1l{{8S_78KLRC&QHgfEo42bW=5m=TVDO z+R^JPOerwZF^zZ*4Yg>=r287y!q8QId`$vzmshE2_((N0X->}kJOTIjKb0`YfvMON zA7220f~wQqr(EUbwS1s@H3N#6a8uj`ul*D2pH! zNu9B*szE#}?q$v*11HP93Z_?99GjiYfUn!Z|H6Ftn#0#LDQ?L=7Dn||{`OZ{v zXk4g897{nBKopcFvpm@9Z}JT3@)RIfORkHE*(9`(nj@7CONe810*nqI^}SGH$~s{l z85KMKeTkG5Ukh70Y2zbk^Jgaz!K}@P4@f8S)92GEkE8XjG7^@+0s{`NC5s|NO-oWO(84fX5qFi*mALCK|BA;vi0GjsI@*`bHi(zO^u&vnSe!z@7+W#FA7DjL&Df}j z8cWv0Z2n7;C<1!n&h3q!*oGVT>dK;ZgnuNeHVw71XPR?EjBgyc zR@PLo*cx0N4czSccFKqZsjK}F1BdxLEif16PE*05PoI=zKt&0q}A8UvBCDPR|e2+|$Mo&pHI2 zODr0cAmHZ1vpjLTvBcn6G<|5Cm`C(S=&IsUeJ|^b!XwoA_ZOUIj$~o+@;H^rtvU8l zuVyDh`Aj_;bm`G7yVw9%bu@|qNLPEalh_J6|qw$6^GjPYw!Lj{6aiuP1 zO_2t1%n?1q5qEQDZ=CtWrIs3HMX`qepYOH4C!(1J!XOx?C4nW@b;e{uYu#&DA^pw8 zHdj(GleX7klwRAPV*X|)KO1nHPR9%RE?k%U%amSw`KSWUZo4!rJg4K5t9WifjUdY-5{+?4a&doc+E zNDx$zU4!E1lg|F!ZK-6UMZOTmIc9z6iy{ub-9B|-RBn*LKL&L^ZG-plsCRdHeir=+ zVn)d$dJ6W>*HSBp8eJm22R)z_gSD{+0Ph5ro`Q)yz4re#P&@{_CuB^qe*Jh+7F0F!omCz8N<9XL=>n}SDH>V~ihoJb98Q;W#y z(FuwQi`}=O%SMguT6K?6wK1rbo!VH?%9F$}4_RfIvYPEaqcO0wp08?#<6`mLH^+nc zG@78p*{jgBazp42l!H0zf>Q0Bs3^0XvQs4(lj-bV-ZnqE!SS&}+Hh?ejf17wPH8*) zrp~6J296DW^$MWe1qXuna9R;PCn9=Y6vD7$U$*w^xloT$C)Ih*)Zht{XRE=qh(^T) z4l&p~aj19dTf=2F>`=PQ#VdA?!KO0wD%_3dUSKj>=OEUJVhE5lBH`kc>l+mF8S$S$T%%2x*O zbErjjjYT@w>bMuBhIjxZr}1GNNp7*3m5`YXVo70^&%2Xm)76qTKC&1tyx3pl!1bHS z@sHT{Ea1~Qkh*ICDR)=pPy+Y5u+I_-+BUr3n}GutR9Ncu+LTZ(!byb)koz1R9lAL+ zF7(i33*GVV%vqxNRlHR4PNQQB(6ntY8G`5)aHTJ7ALiXyyxG(w0pVg?Z}YgKKXEBG z>V^Y9eh0}B35ELx2Q&O;{td5ZEm!D#Re2k)gaay(R?n?}s>_YsLZVJa$Z(e^Ta1X= z^(vEZ$GIuqN54MS#|@R#r;01;F6B>C?d5D@f(w=S`5($H| zYZybO{C8!9Ul^)#sU{5b3&))Q>X7*+D(bTkDxi6KgxFu0rGTQZGk>sSQ2<7&L$ z^Wl$LXqw;}`?_o<(`0HaFIjzYkTt^w*K6`vKz{33zj+aBs8{;kLPSEpBC|RwHytVm z?^Xwg=cbkB$lKz$+#zt-_Upq;qH3Xfrz5l5iG6RP!RSG;(qr){X@h32=3%$6H!J4@ zla9vxo0z(WCO-~go1A#pUsFieR*R4l6l@wcG0DCt!QjA!NtoqfR+0^`YjV}r>fXD* z=y&5sB2+*$W5sQ3JX?D5}+V!IIoA2*xpu z@U$GJEbw=>xQLPuhB5LOgF-eqny1~GoswoR3)_oaSbQ~Z@N`2vuG#lE7zq!vcw*6U zr?9fUJ6Wfbm^#Bamnt@Uoo$uC5cjD&x%+{fW9dj;dOo))%*=X)88q=UtD;u8G!%EK z`|m)9Mz!`xozrmp{KmJg`_^G|a&BTLb4U63c)avMI4@^N6tJf3AQy)3kZ2Nix2rTFz#&&3q`kDQJG z352u&U58a3{%jEjTFO1lf|7QQcG@L%O6gGzs&_qn>3mPcbklX8L3x|Q&)?t?51&^p zlfT0Y?y?LOI1^L3aBgWu)7pVU;{YPzg>22FBdXz=j%yf0xsN4%{g|p4!^OD&a6bLJ z{44LXS%OQ()*?1OQW!dX@{GdEsKwx2Ub9#fRo(iH1zhX~PeDwf^V6tJNmLnAmJB`` zoO1@E-C4C%nUIuk$@8f*3Ztl-LES$E71BY-alcn~9B4YNt}D)%ib&PrX<+z$^!IJ+ zv#q>^*WBN1?goI}^A zPu0yelHnSW)sVq^!MIlGySv@u6P4~4LPv4}wm(m^a}!nUJyr7T?>;UP-~Ka@Pz{_%46vTzjTX2vjQiVgulCl z@mEASjvPHSwZ45+R8IONetM)ABzdv){5?cubE7^7Loa_#25 zNNUAv|BaXSFTP^)iU=MCL$&q~7Ufb*jTjn&@@SIAO^ve*$4Aw(U~|tG7fx{sCcgU} zs}TvY&gksrE%>EoythAnj&FR|?tO06?rx}kn|AxGjHz#2ttR+zMNIO#%kxKO6+1a; zl7ot&jpS`IQv6E2&FdnWVV97bw53YdD+#@Ca(hn*THi_~m$H6U%nC1d?Ebi*zlU{r z2aRkK6TeXDp3+gCz*1oMQ*eDixgndp4Zam2;E-FMf9JrRtO?xqec)vG^5mqmr(kr)ks!*)MhDTB zu7QJBiA^Qj(MGdo^13OFd^2ZC2%)w1Hf(XV=Gcz3Eb4EgS$V^v!eO(5ctsu0C!xNoG7Z-O9Bf`^upw{6Itmg8D?h>!Z)kb(q{UY9+YuHL2?#Dh$uStX+; z1vDdMXCdCSO`C#5-fuB4w71;fKWrI)DlRFp32q_p)WF-f_O<)&(d+l4)Mb(;C|tdPiY+rH}#YMs4#W(9&~AtNASs8pqPQL};( z%1YT5xKBpApK5wf>5qvLhRD3~CkKm?eSQY<&K3KgCY|;Dl4`TlO&hBB(l|ejt+-~v zh+JF5X-Lqt5(sdzviq;kKgip1;!5@c2~+1GbB&_LVS}YCLUWIX1Z0NXUz7Z_g2%eO z2Ez`%x$I5GaS2%tzkelUG^U8`5E1|@9EmM9zuX{X;3M(Wj0#m8f>wjBs_Z^WGK;l9+ z{KQltW{V41FwBRL>cHJ;b_kJKvEc8~y<8A%P)ozTU(@XEpG52t@d1H;d9=O3T?-D0 zFB~bkjxh)?{@?oR9m)+g(qB z2hw-G<8#MrLwP}@eY|;1Ab{W7DY@LNw@OT{^0s@a+bz_O;%dDPHm?D+pdztcZ-p6Tbr3In*&>F>1H8q-BQTat*tN>L*s(R?CrURy$Sc! z*Ydi81>wu15Q(-RO}O>QRv5yqhLrE2hNh1k@HEbi2X32MoNJ^@@Q_7+IpZ@$o$C>b zYx!h#Vq4#RQp8@awaBF+Vb*V0kX~UIns}B*!i2(l50zQ}Ao!L#UsXpRs9yT2`%N2kDv`8=XQ^ zopI5JLKK?GY$CaDH}0y zr-!r(C$_;r*DTxk@=B}ma1r?YV}oGSl(2X zsg)n8sM6HxBYC@#tY*A%YlaTTBCYHBVL=+rXl7s4u01kRnnjm7QWhWlZWCfQ+IeWA zV=Mwv>?bi;`h!1aMTQ)Bn8vdkvI2>RR%D5DAlQz)Oi&C?H0%g<^of~R`$c^Xf`Wcd zxNKx{rWKi*@q8`=UT!LwJ$0J z;O3CxOb@e=?rC;@(;|X^3Ys2L>?&Z=;Oi4LvE)q-0wj)}Q&1s)q4!f?@PnS+pS$IgNZw8`nw4~`Xmrn`6&ZOJr4N?A+&1)8lz|Mo@XGAn>yWsDk@gMh zTl-%4ngcoy7ZVXCys@(M8 zat9Q0_N!OE6}X&+fb9l=+TWBzK!y*>N}M@so2e|izP4|nc{4qh_lpD&(+mWViEtvd~elfM( zuhXYQ?bG)Gol+%B#>X||*WRYR!r&Xqs2DE6?nSjlen@fCzu2Xg?%C!O8UrMYLum;B=5Cy?H(C#rI>mH)STyl`1AV}rVU1xZie@!e05z!`M z-)1)4S*MR(pFYPu`ua_76~IDh!bgoaxuQl*vS>!WsRSw;a8+Qo#ZnX%I1*-bSBuu! zBQ(nHA4)3(5j^^A=M~lD-wR%=<%97l8GxviAiMKI=Xb3Pf*}xVj$kir8OSu{p%sC% zhq#;`5JqbPP?QmGtR{>8%&ZqYib=^0%NI~Zw{6uo1Wr%0i#qWwiov^7@+h&0Pi-{@ zv|Lb6Ad!EvJ9}%$^Ms8!urkXea{S;t-TJ2o@u73mJP^zWakcoc;_a%Qy9%gb)1d%k zQnjg7h5a02Y9oQgbWU@b4uZRl+32BDD7Q3Hu|D)Xl1gphR}kC&cW4VeLORd1tnaWD z4ojgwOD*&$r^x~12HJwYeLAl%9-lU7Bv?~D@-5RlnaW)7YvdC8i&k>(My2*2KI_PxNx zDy&V;@bb!dEia5HH~9QpocFaIh3PNdmx+@zN4eJoIRzmQo_WpQVTXgX!P0ks&ldbR z0+}l?HjF=sd{^s=1u0b2hR^txs{hLbUeEOX(!g({oEaZN-vyw*{KbcZTV3;a9=ddO zZ2%X1RNo>q&@_*BR1>Z!wz`&-ND&%)s9Y7;H_eWjzDTkQ3-DouynU0a=47JGB=N0VA5-IC)cE9uNF$f61gqm?f&?rsNO2u`Q<`=H@ z4f9jiAeXIvza=GC9#OyV(bpzT{v@kQD)8w4Br#ngui6l(kw<$Si+G?nIa8Ha7aRAf zZOfXr*VTJ=4grts5i~9mL_#4Sz>9>Sn8Oz@(_me_mi2Ld8!8H-@Igf~o2+g|b@9mC zO$dZ|V?_TS@}k2`RcsGEC@NlV;n7-eUIxF<{7^YyO$t)0Yn9Y1;f4E!RBlF#AbIx* zmA}@nKTgghlidkrfJ97~=L8x7YO3*XVLnj9;^RJP)TpmsD&;>KIjD!O9Rc1N|Ik7qI=>LJe?TS+eosc7Wn^Xih+2>-9axRyYKrp_ntDwAuP;hDAzP7;=>FD$>|D$e}*R0OP@^6h>E;Crd`L5PBISB zp;d=8PFi~D_8Y9ORa4j9rw&f*bnEAB#2`vo1k6=@e3%{wdSOXDLO7Rn@SBuCp|qqW zaBuI&G&?Kp9W{63PiG!&%6OzkbZYW#U>G)fa%L@hC-x~D1QKIg1z+!l6FdutrO`}~ z;$y>ld*iB>iyq|Ue|FG36`BG9EoqTEJ{4tobqm^vLB_$AsXm?6HBEB-;U#W$QQP0- zh93lvPKyj`0Ci}@U|JLK8-TNS85Ezey_TSfn`>`Z1m|M8ScXxgA zHpP}r&cwE_rbsrl+dv?r56yFHK{Dq*xkzZt3EZ1L1tDr|9xYc@_SW z-Q)$b%iaogV_-+`qMb^^HbO~-`1nn382I84T0+lV#K*8afj8qYNIR&4)hc8hwuh)k z!Z}K+(v3nKSAE(9EGK*cD;nEUychZ*U_0;D%F&>P6?O>3{2A#a5~n^UXlnV^I1mEq zQyG*W^WqZ~Yxz_XyOA(|NwPalOM2M2C7ouSz9HQ8hf%{4!rOF z>e^50-7GtPy^TCoG+8Z@Ztj_?8HW1gpzNhT8nH{`uA4Ivu!w>|keX!ib1E}LQ12Z8Ut`%M%2d*(D5 zGpj%a+w}dCTAPmhY?U1od5gfc`H}Pr5*q|dMf7K()i>0hEOkin*yN0?c(kx`fDfnd z(8NH7RPSwq>*BJk0*}BQmAPw;|6uW0cV4=IMU_3dS~n)PB{9II0~eqI_KCgIXe zX>d8bz&rxqCEZ9r22#%G>a)a0vZ^RFLiFzjLC`6^TL4L49RZRPxvHW*{_}9)<<&nb zXh__Mw8QqJ#0)YZG?6b?>d5o!_MPRXVOq4Vpirb-zY>8@RyWK`TJ-Ke{!yQ~ok*=D zH?ej%e_D&9@)0t=A%r22psynK*8k9XDJi$g$jVH`0hrUZXnar*5ZEz&iq9rJovgPM zur+5gN+_0_Ubr z5hapxxeeqyRQx6Dvuo8?%VSAj>G~uO6Ojg)G&x1PvfN3%1#<1s)a?FbcZFhbXwi1t zM*$-o;&s;K%Z98)w>vrC@qLj z7~pdaS=@9#txRdya;P?7#qS95D^P6N3JdjBLJ!|PL$&}2usFPtN9qLvj%PvR$H19J ztBhmA#(UPZmabltI;`GdvXLY6ipMUxR%pA0wS2$i_9oZRN>9bchaG}b2b9)YUQFNp zWdOP?An;y?N4k;eNN}$4MqVLB8SGCI%qD%fM>)iprUs~GT#IOc3GGBzZ;`C-;AR;^ zQf^bBhu-|R^CgkLHSJB4LN#7duv`($(utC~`LW z^F#UVJZ+H7Ew38}2(aQm6Nf|z?FI)G+Y8iJb`z++c7kAmhh>8!h6{pgxv@;wcYDxZ z7nm}n9AZVolJhj%$Dk@7Ydu!iSd0Qy={o)lN*0Bd+OM3ONYz&h6s%4Jsrg;lm+@@V-p>!ze+(McK!m4bMM{j zbI<7`rF2O}9(RUvwwFdPT^!aM$`7c;0?+EPL6iqiFCX z&ffk@ebdz&o+8@%vY|BJVN;eIYj*Z^x{Ta+qrec_p7=|#&@emWiwx@|y~&-YR7s$x zT2C1r)NQ9v&P-&rKrm5Vz0r9^h5JFYY9Q7(&k}0D>cio_o#hu%OK+(xgvG*igEU1s zPVUii>RmFooUU4*a)Wo1MDWaBEy%BPnX81?^ZXn69z&&6ihL|8f{B^2ys{a5;>{%jBA9z#ijB@h!b@&t=Q zv$s1lYY>gbhH6$SnE?ZB&HNbY$r&WMz_g&LB=8!|KAgk-1)Cv2P!&6{2Or{Mk}dBw zU>rMraucO`4I?Mfo0k334uRuFvB`&sL=~19m|l^knSw%32f_#3IScX+z4u ztnKYY=BG_&{jsBe8Y*i;u(6Xf#t8z9Z*u+QbT`}sLRR9)u8gASC`;3!ciT@VXCy0K zplroElQW9sqXfaiVI_qwC&$W!%Y_AN5MmqfnGI(kkzgj_sZmXN9+nn>eC`^>Cr{3t z?&=kk)s-*WSEs3yWy-w2ga!t6K+jrzS60Co%w*1OLL!GVj7b8>@n_qk(;!8()DcF0 zE2=i+Y=uN8e#&_DORmK=Pwj&dIjBto)SL=Q|H6RNCEe0u50gi0FdMFJ^rmgusUy!# z8ITA9hAJVB47cTg1aG-#nMcdY1A?~*rsMYoiEpa}tNir8%dF}-jH4(kq%U~Y$FzgAIFi?x3EXL(SH>b?sxl@yJ>*=w_Uc+DwTGN# zR-jg9fA^p`$7oj5V8lFRu-mIEvqrAB zU)(;j>BIhmKj(w^bM2+SjTnT128$J8&`7?ZvGQ-lx0boo#L^ZHf~c(SqChHKVR~{V ziyQ)!dZR9KyrC6Z?q_g`Xj$PvFE(k@CVfl?jlx*ffKDIk7bm{af1d}O^nS;z zP?*u4Nghp1+&e5T;Z$Q|?RYf?{_A;Z%LJimz~sA4)?q=9;YrhPz)V#eW9JjEtj7Aq z9iSuzexd6EU2gS{Ig?H7Cct|hR{GVsS<`QDssfj@*duq}&7;ZYdAf^T3AV#-+4Q$< zU!!#<%BN@4mo*E)dzAOQY2T@t1;31)#kPN!|CQSBKb6vD}w0X;>MnZp;_eZ2js9Kk5X@Qzx(AO zOOL6Zc}*V4(@SHY0{Yx<;s28I)I2LxD{4bKBGOZgtjNAY`l`RAuWURK=MYmxE3jei zU3@uesdw166Ckr0RkOlqP=L15(cHgKn zd{8-!Tv|7}O7Im>v--JGy+sAR*|jX?Imzr>Y(E zXx!zTr#$Y3cwy71gb8SR0$XK$|E`}>`>lB@=F6eL)d9ME0M`oat6mnlifx%!g_j8o z)R0pMlyYTCpb1T0>ELmH_ta0#`cNNS$kOjhKMH{@4pBTcITJ1(ZLIZTfx2E zUVC!hD}UMvpmEfr=iAqz<-F(-w4m!LfE?w~brCD~$Z~HG6j&~-oErJO<^D}aYSAs| zAnpMC+Jdq)yZ6RbF)5b6q_=iEGe1`LuWSbFbuT9o(ir3#>vNcv|B@?Aza7hvJ^Lqp z^BV12;?DkaO6qX^>W0@T_i>JO4zK15&<1yIb>cZv;erC1euvs4z7x=L#gF!KXWczO zpyiX#qc}uryh>ruSfE>DX3pqRb6WhtZ{NaS%n*=4IXgZ_o<0*LsXDnT=_F%W6<|eM zw~GsN5>u|Xcf9UWZG9Mwu67pRXI~ieCCxP;)AGHurw-?Ca=j2!2InAZdNQWUq#o-J3jd%v;vbs~pyzq7nQaq5xgO?Jw# zVw|#C{Vwr7_vCM?l_}T#fT`~GDr3na%Nlpm8Tql+hM~8c#7tie+KE>g5s@u_P0#y- z$pm`ePh{PN!K%Ljtb>17#KY58o0k2%);At45BWHB;HER;6^HvusRuiZlTdJp3ZWf@ zZiK|L7A%9%CY3M&DWM^^Do>bq)iJ_1OpT_3NN-4R$zFWGC6{cZE znxgB$p&b(&-@v{2ngs?03sm(ANE^$2B(-~cb{+T4i;h7D!MKEWhuIs-fMQ{dw|UOr zfad2DPc7EWHU$@_8`ky)@w>{iW0eOH2|&hV)SEyWQk0lpC4H1=AoX`U^Rn-Gcl1t# zsg5kCSB9mSf*Pu+fFE%E-9ATKkNny zjkksdOrh9l_Eyzzv!b6XyJPur!)7Xu5M215=~+5skF70_&d*;>Kwnx9r=S;69ozvW zIQo?T#%QeG5AAO4OJojz%Eljf@Kai7SeHES>q1MQHpL;Jb$_U$8}oxJ%8YSX7c4pP z_~#R5jOf=&lM{a>#$BhdYq1->6661GpSgc+6~Ds>bTSAu^lrVs`Xp2JlkU~;SIC)L zaa6xD)3jyC*;%~$J8;w<2DaF0tKR;|7&R^X-?>-7YG;G`x=`DVsqsEH#KP@&=HH+8 z9N7GZf&;D=r6mjr-(wd3di$!_ojvjT-{Y^o2Ls1CU;ubeCa{$LJb(57@Y=606yD5w z9bO;#cR8?E00#*SN7-*Ug|Gd$Vpq8-@3}*rvscYu`ESdvTMu;LY8VVoX#!iLlRo=> zk-opJTQNZxIER|_be_el7vU&4|lX~H`d8g0u%{Q~)ezP2w2;h1iD8*C(efGa5>T9JnuuBI62OJAt z0UJ6*DtbhPFB0!C6I5=<&G!%mXX462OY&h7k5j3O?2MxVTft?8i$k74y)!-l@ z88o?u0Mft}12EohJ-o5nF~Z{zv&Nl2b%QX0vIP7 z*2ftmMa>5LZA*WA;0MkhGyHzF-W{m``gR;#2N9Y@6b265yFKmE zVa=}%xp~#;(B~i~47}Ov-OIP(^u9u1(nvUecYoDEWbOZMOp^t!=XjfV zcN3Ed!-l!%R;`PfYY7}NhJg+CezLL&;&Vg)0%u@>)3m#4y%1$>!HSryl7`rCt6uF7 ziMIpI2fUVxwk-fU6b2IN=NefZklPXRwF@{G)Xc!J``Og1;bG5vkX^VQ6fVrqL$0q6 z11ou?ze;-97nl*iF772WG5M^S5U3{a&pe+P^L? zZmy{rBEB|g@&$i<_{VRho+)q+;DY7VO5iX&9L#?CpIvXE+h_Z;TMmK*Jzf1=);T3K F0RZcjS^NM1 literal 0 HcmV?d00001 diff --git a/public/img/minecraft-address.png b/public/img/minecraft-address.png new file mode 100644 index 0000000000000000000000000000000000000000..3713c4631cd92dd99b4d6855eced9845c34f1bb0 GIT binary patch literal 2589 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

%*x!E;X!u^%YvrFA}`}EGIvFhQ{$a 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

~Hp; z`(SL~Z1Df%|8=T~c>Y+(%5q6qI62!ndi=fhkE5<^;_#2vKbF=Of1hz8qQ5)MWnlDI z-FZpu9qo)=j7*IGPV0}{KTsz-Q)f2=M-xG_KTYN(5i~Wm_|qW|B89(BFA*ahBLf}V zf3)T0l6(BX&F5JD zXQ~ca!!#^pRNw6vBXoZNE$sa)LGTe~sRE4iYbS7=MKyj|4t zq%AXGw5Ey$2O(zf##KFH_pvlyTUqL{K zKqN&3Rot^Kx-3%9#j43*{gq

U9S$fx!7Kt?R0*a@SXQPARZ0D5-CO8<~dR%O-i~ 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

N~-D1l)Yavj@mld5~6~2%nbG%c3I56 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�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 EMY?_cdWdRamp2fk0jHN zWtf?R{6&snL$RUN$;FuAKpi$2b=M2u=({!hS|NZM!S#$OFnrVSV&n6t$ zki#2O-55R}!@o%hcVGfk5E0ub(Z0#ld~L=r);?uGR7r`qwB&@uaGq{%ZsGN2Pfl9o z7`5F}Z602|4EM)x^z`&|y6Q~r;sWADrN(u7e-hiKx?S*P!v9PS!P~pNxq=G!e&4{z zmHq4MXr8F5s9j%QcK^?YpMew?Q{sj1QrWlXPH0?c2wZPEij3tHqw7ec>E2SZ@V4l|J^<1KW>Nc|L&g6|9w>k=;h@gPs(i)&;Q7O z3lp_^{x>?+0@ZD!UZsV+zT)}zLhuf6g4~E!AJR@@^8e}z&cpOdkNRZ(Z|nB!ivq87 zX!H5`8C%^h!2V*A_J-B0ZPGgVv&Z~lc(;Ua(lkT$lxQu(P}?F`S6A@*E5SL2M;8&< zZZZBV_d;Mb?PZUx>6^`95eoPfB9k+QkuLu3ROPTN>4E1oK_3YbI^Dxj3| z(eac~Wm{lTY-c4fnp5c9A*Dy)flc}Uj?q!>y}7b*7B>@QF_n{pUrr=gj=ge3rfFKG z#rlv@ktK=WR@wWD&G zQC4~B^t$oKE=Cq{RtT%AfE$caOCl!Tm4ROrdVEwUF;ZdS;B)_I!*fU08b88eXL0e! zv0zW`4tGIP%iGPH-v1J+>9{7}kWz3(UwP%V(HV$1Ow&|!^2OkHi&*g-VTq9W?yIQ0g~ZBMWuN;)8`&!|W-dBsc>agh#br{W?g zJ#^WkE5<-nPhLV5Q$PN>NRKzf`D6Di!C~DLvG@iyQ+GccVLo~!He&KYtbl9Lk{G_X z!_o`%A!9zyPUbF+ua>W{9<>M>Z=RZ6mnHr0Oh?qho?Ll*z^^_CB#DXfJeLW*^Mv?F zF`CH|Gi1Ws&pVpG=rFyLwQ`pJHNgJnGpybEQ_)HMpHTs$6psC${d+?Zu<)#RSPS$d zI97NSD@bBhF+|bv{QOGDs@^F0Y7_x5Z{(wA(n_axMkYalh=}t#RxH*Q5=?8EQn|?!2wJZhK?g)O4YGEs)IEkrSk*{p4aN>ohYotgf0x9j zk*i>PH^If68EqZm_Ej+dVIcK!v~>Q52UsQzG$gb3SrEFBN;viJTNA)QGk;+*_4=dE zY?Q)E?^{Q(w)NXMg0VboP&)ovIDfTNuZ#}WWs2C!GLy;O<#2-CG)7RSO#7Fz0%me| z<}E!xy<-&IU-U0cX9wdvBb^&z@hzT;%Oax+%>9w{6&#k u-RS6N;dK(^wyaGW2vkYO=OoNq6aRla+#z3@AP*V<0000make(Kernel::class); + +$response = $kernel->handle( + $request = Request::capture() +)->send(); + +$kernel->terminate($request, $response); diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 0000000..eb05362 --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: diff --git a/resources/css/app.scss b/resources/css/app.scss new file mode 100644 index 0000000..dcba5e1 --- /dev/null +++ b/resources/css/app.scss @@ -0,0 +1,451 @@ +@import "variables.scss"; +@import "utils.scss"; +@import "data-table.scss"; +@import "datepicker.scss"; + +* { + box-sizing: border-box; +} + +html { + overflow: -moz-scrollbars-vertical; + overflow-y: scroll; +} + +html, +body { + font-family: $font-family; + font-size: $font-size; + color: $font-color; + min-height: 100vh; +} + +#app { + display: flex; + flex-direction: column; + min-height: 100vh; +} + +a, +a:visited { + color: $primary-color; + text-decoration: none; + transition: color 0.1s, underline 0.1s; + + &:hover { + color: $primary-color-dark; + text-decoration: underline; + } +} + +h1 { + text-align: center; + font-weight: 800; +} + +label { + display: block; + margin-bottom: map-get($spacer, 1); + + &.required:after { + content: " *"; + color: $danger-color; + } + + &.inline { + display: inline-block; + margin-right: map-get($spacer, 3); + + &:after { + content: ":"; + } + } +} + +p { + line-height: 1.5rem; +} + +input, +select, +textarea { + box-sizing: border-box; + display: block; + width: 100%; + border: 1px solid $border-color; + border-radius: 12px; + padding: map-get($spacer, 2) map-get($spacer, 3); + color: $font-color; + margin-bottom: map-get($spacer, 4); + + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +textarea { + resize: none; +} + +select { + padding-right: 2.5rem; + 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 5 6 6 6-6'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right 0.75rem center; + background-size: 24px 18px; +} + +.input-file-group { + display: flex; + align-items: center; + margin-bottom: 0.5rem; + border: 1px solid transparent; + border-radius: 12px; + + input { + opacity: 0; + width: 0.1px; + height: 0.1px; + position: absolute; + margin-left: -9999px; + } + + label.button { + margin-right: map-get($spacer, 4); + border-top-left-radius: 10px; + border-bottom-left-radius: 10px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + margin: 0; + height: 3rem; + width: auto; + } + + .file-name { + display: block; + border: 1px solid $border-color; + border-top-right-radius: 12px; + border-bottom-right-radius: 12px; + flex: 1; + height: 3rem; + background-color: #fff; + line-height: 3rem; + padding: 0 1rem; + overflow: hidden; + text-overflow: ellipsis; + } +} + +svg, +button { + @extend .prevent-select; +} + +/* Dialog */ +.modal { + position: fixed; + display: flex; + top: 0; + left: 0; + bottom: 0; + right: 0; + flex-direction: column; + align-items: center; + justify-content: center; + background-color: rgba(0, 0, 0, 0.4); + backdrop-filter: blur(2px); + -webkit-backdrop-filter: blur(2px); + z-index: 1000; + padding: 1rem; + + .dialog { + flex: 0 0 auto; + margin: 0; + box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.2); + } +} + +.dialog { + flex-direction: column; + margin: 0 auto; + flex: 1; + background-color: #eee; + padding: map-get($spacer, 2) map-get($spacer, 5) map-get($spacer, 4) + map-get($spacer, 5); + border: 1px solid #eee; + border-radius: 24px; + overflow: hidden; + min-width: map-get($spacer, 5) * 12; + + &.dialog-narrow { + min-width: auto; + max-width: map-get($spacer, 5) * 10; + } + + &.dialog-full { + width: 100%; + } + + .dialog-loading-cover { + position: fixed; + display: flex; + justify-content: center; + align-items: center; + top: 0; + left: 0; + bottom: 0; + right: 0; + backdrop-filter: blur(14px); + -webkit-backdrop-filter: blur(4px); + background-color: rgba(255, 255, 255, 0.5); + + .dialog-loading { + display: flex; + flex-direction: column; + padding: map-get($spacer, 5) calc(map-get($spacer, 5) * 2); + + border: 1px solid transparent; + border-radius: 24px; + + svg { + font-size: calc(map-get($spacer, 5) * 1.5); + } + + span { + font-size: map-get($spacer, 4); + padding-top: map-get($spacer, 3); + } + } + } +} + +@media only screen and (max-width: 640px) { + .dialog { + padding: map-get($spacer, 1) map-get($spacer, 3) map-get($spacer, 3) + map-get($spacer, 3); + min-width: auto; + + .button { + display: block; + width: 100%; + text-align: center; + + margin-top: map-get($spacer, 1); + margin-bottom: map-get($spacer, 1); + margin-left: 0 !important; + margin-right: 0 !important; + } + } +} + +/* Loader */ +.loader-cover { + position: fixed; + display: flex; + justify-content: center; + align-items: center; + top: 0; + left: 0; + bottom: 0; + right: 0; + backdrop-filter: blur(14px); + -webkit-backdrop-filter: blur(4px); + background-color: rgba(255, 255, 255, 0.5); + + .loader { + display: flex; + flex-direction: column; + padding: map-get($spacer, 5) calc(map-get($spacer, 5) * 2); + + border: 1px solid transparent; + border-radius: 24px; + + svg { + font-size: calc(map-get($spacer, 5) * 1.5); + } + + span { + font-size: map-get($spacer, 4); + padding-top: map-get($spacer, 3); + } + } +} + +/* Button */ +button.button, +a.button, +label.button { + padding: map-get($spacer, 2) map-get($spacer, 4); + color: white; + font-weight: 800; + border-width: 2px; + border-style: solid; + border-radius: 24px; + transition: background-color 0.1s, color 0.1s; + cursor: pointer; + background-color: $secondary-color; + border-color: $secondary-color; + min-width: 7rem; + text-align: center; + + &:disabled { + cursor: not-allowed; + background-color: $secondary-color !important; + border-color: $secondary-color !important; + opacity: 0.5; + } + + &:hover:not(:disabled) { + text-decoration: none; + color: $secondary-color; + } + + &.primary { + background-color: $primary-color; + border-color: $primary-color; + + &:hover:not(:disabled) { + color: $primary-color; + } + } + + &.secondary { + background-color: $secondary-color; + border-color: $secondary-color; + + &:hover:not(:disabled) { + color: $secondary-color; + } + } + + &.danger { + background-color: $danger-color; + border-color: $danger-color; + + &:hover:not(:disabled) { + color: $danger-color; + } + } + + &:hover:not(:disabled) { + background-color: #fff; + } + + svg { + padding-left: 0.5rem; + vertical-align: middle !important; + } +} + +.button + .button { + margin: 0 map-get($spacer, 2); + + &:first-child { + margin-left: 0; + } + + &:last-child { + margin-right: 0; + } +} + +/* Form Group */ +.form-group { + margin-bottom: map-get($spacer, 3); + padding: 0 4px; + flex: 1; + + input, + textarea { + margin-bottom: map-get($spacer, 1); + } + + .form-group-info { + font-size: 85%; + margin-bottom: map-get($spacer, 1); + } + + .form-group-error { + // display: none; + font-size: 85%; + margin-bottom: map-get($spacer, 1); + color: $danger-color; + } + + .form-group-help { + font-size: 85%; + margin-bottom: map-get($spacer, 1); + color: $secondary-color; + + svg { + vertical-align: middle !important; + } + } + + &.has-error { + input, + textarea, + .input-file-group, + .input-media-group .input-media-display { + border: 2px solid $danger-color; + } + + .form-group-error { + display: block; + } + } +} + +/* Page Errors */ +.page-error { + display: flex; + flex-direction: row; + flex: 1; + margin-top: map-get($spacer, 5); + + .image { + flex: 1; + height: 100%; + width: 100%; + background-position: center; + background-size: contain; + background-repeat: no-repeat; + margin-left: map-get($spacer, 2); + margin-right: map-get($spacer, 2); + } + + .content { + display: flex; + flex-direction: column; + flex: 1; + justify-content: center; + margin-left: map-get($spacer, 2); + margin-right: map-get($spacer, 2); + margin-bottom: 0; + + h1 { + text-align: left; + margin-bottom: map-get($spacer, 1); + } + + p { + margin: 0; + } + } +} + +@media screen and (max-width: 768px) { + .not-found { + flex-direction: column-reverse; + + .content { + flex: 0; + margin-bottom: map-get($spacer, 5); + + align-items: center; + h1 { + margin-top: 0; + } + } + } +} diff --git a/resources/css/data-table.scss b/resources/css/data-table.scss new file mode 100644 index 0000000..5f7f83e --- /dev/null +++ b/resources/css/data-table.scss @@ -0,0 +1,66 @@ +@import "vue3-easy-data-table/dist/style.css"; +.vue3-easy-data-table { + border-radius: 12px; + + .vue3-easy-data-table__header tr { + background-color: var(--easy-table-header-background-color); + } + + .vue3-easy-data-table__header th { + background-color: transparent; + } + + .vue3-easy-data-table__main { + border-top-left-radius: 12px; + border-top-right-radius: 12px; + } + + .vue3-easy-data-table__footer { + border-bottom-left-radius: 12px; + border-bottom-right-radius: 12px; + } + + td.easy-data-table-cell-center { + text-align: center !important; + } + + th.easy-data-table-cell-center .header { + justify-content: center !important; + } + + .action-wrapper { + a { + color: $font-color; + } + + svg { + margin: 0 0.2rem; + transition: color 0.1s ease-in-out; + + &:hover { + cursor: pointer; + color: $primary-color; + } + } + } +} + +:root { + --easy-table-border: #{1px solid $border-color}; + --easy-table-row-border: #{1px solid $border-color}; + + --easy-table-header-font-size: #{calc($font-size / 1.1)}; + --easy-table-header-background-color: #{$secondary-background-color}; + --easy-table-header-item-padding: 20px 20px; + + --easy-table-body-row-font-size: #{calc($font-size / 1.2)}; + --easy-table-body-item-padding: 20px 20px; + --easy-table-body-row-hover-background-color: #e5f3fd; + + --easy-table-footer-font-size: #{calc($font-size / 1.2)}; + --easy-table-footer-background-color: #{$secondary-background-color}; + --easy-table-footer-padding: 20px 20px; + --easy-table-footer-height: auto; + + --easy-table-message-font-size: #{calc($font-size / 1.2)}; +} diff --git a/resources/css/datepicker.scss b/resources/css/datepicker.scss new file mode 100644 index 0000000..4ebf6ae --- /dev/null +++ b/resources/css/datepicker.scss @@ -0,0 +1,70 @@ +@import "@vuepic/vue-datepicker/dist/main.css"; + +.dp__menu { + border-radius: 12px; + padding: 1rem; + box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.2); +} + +.dp__input { + padding: 0.75rem 1rem; + border: 1px solid $border-color; + border-radius: 12px; + padding: map-get($spacer, 2) map-get($spacer, 3) map-get($spacer, 2) #{calc( + map-get($spacer, 4) * 1.2 + )}; + + &::placeholder { + opacity: 1 !important; + } +} + +.dp__action_row { + flex-direction: column; + + .dp__selection_preview { + width: auto; + font-size: 0.9rem; + } + + .dp__action_buttons { + width: 100%; + display: flex; + justify-content: space-between; + margin-top: map-get($spacer, 2); + + .dp__action { + padding: map-get($spacer, 1) map-get($spacer, 3); + font-size: 1rem; + color: white; + font-weight: 800; + border-width: 2px; + border-style: solid; + border-radius: 24px; + transition: background-color 0.1s, color 0.1s; + cursor: pointer; + background-color: $secondary-color; + border-color: $secondary-color; + + &:hover { + background-color: #fff; + text-decoration: none; + color: $secondary-color; + } + + &.dp__select { + background-color: $primary-color; + border-color: $primary-color; + + &:hover { + background-color: #fff; + color: $primary-color; + } + } + } + } +} + +.dp__theme_light { + --dp-success-color: #{$primary-color}; +} diff --git a/resources/css/utils.scss b/resources/css/utils.scss new file mode 100644 index 0000000..1ef8450 --- /dev/null +++ b/resources/css/utils.scss @@ -0,0 +1,190 @@ +/* Display */ +.d-flex { + display: flex; +} + +.d-block { + display: block; +} + +.d-inline-block { + display: inline-block; +} + +/* Width */ +.w-100 { + width: 100%; +} + +.w-75 { + width: 75%; +} + +.w-50 { + width: 50%; +} + +.w-25 { + width: 25%; +} + +/* Float */ +.float-left { + float: left; +} + +.float-right { + float: right; +} + +.clear { + clear: both; +} + +/* Flex */ +.flex-fill { + flex: 1; +} + +.flex-0 { + flex: 0 !important; +} + +/* Flex Align */ +.align-items-center { + align-items: center; +} + +/* Flex Justify */ +.justify-content-center { + justify-content: center; +} + +.justify-content-end { + justify-content: flex-end !important; +} + +/* Flex Direction */ +.flex-row { + flex-direction: row; +} + +.flex-row-reverse { + flex-direction: row-reverse; +} + +.flex-column { + flex-direction: column; +} + +.flex-column-reverse { + flex-direction: column-reverse; +} + +.flex-basis-45 { + flex-basis: 45%; +} + +.flex-basis-55 { + flex-basis: 55%; +} + +/* Padding */ +@each $index, $size in $spacer { + .p-#{$index} { + padding: #{$size}; + } + + .pt-#{$index} { + padding-top: #{$size}; + } + + .pb-#{$index} { + padding-bottom: #{$size}; + } + + .pl-#{$index} { + padding-left: #{$size}; + } + + .pr-#{$index} { + padding-right: #{$size}; + } + + .px-#{$index} { + padding-left: #{$size}; + padding-right: #{$size}; + } + + .py-#{$index} { + padding-top: #{$size}; + padding-bottom: #{$size}; + } +} + +/* Margin */ +@each $index, $size in $spacer { + .m-#{$index} { + margin: #{$size}; + } + + .mt-#{$index} { + margin-top: #{$size}; + } + + .mb-#{$index} { + margin-bottom: #{$size}; + } + + .ml-#{$index} { + margin-left: #{$size}; + } + + .mr-#{$index} { + margin-right: #{$size}; + } + + .mx-#{$index} { + margin-left: #{$size}; + margin-right: #{$size}; + } + + .my-#{$index} { + margin-top: #{$size}; + margin-bottom: #{$size}; + } +} + +.mx-auto { + margin-left: auto !important; + margin-right: auto !important; +} + +.ml-auto { + margin-left: auto !important; +} + +.mr-auto { + margin-right: auto !important; +} + +/* Text Align */ +.text-left { + text-align: left !important; +} + +.text-center { + text-align: center !important; +} + +/* Utility */ +.prevent-select { + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.small { + font-size: 80%; + line-height: 150%; +} diff --git a/resources/css/variables.scss b/resources/css/variables.scss new file mode 100644 index 0000000..20183c6 --- /dev/null +++ b/resources/css/variables.scss @@ -0,0 +1,40 @@ +@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;700;800;1000&display=swap"); + +$font-family: Nunito, Arial, Helvetica, sans-serif; +$font-size: 1.1rem; + +$font-color: rgba(0, 0, 0, 0.7); + +$primary-color-lighter: #cce8fb; +$primary-color-light: #67bbf4; +$primary-color: #35a5f1; +$primary-color-dark: #0e80ce; +$primary-color-darker: #095589; + +$secondary-color: #9ca8b0; +$secondary-color-dark: #6e7f8a; +$secondary-color-darker: #49545c; + +$danger-color-lighter: #f3c8c8; +$danger-color-light: #db5c5a; +$danger-color: #c82e2b; +$danger-color-dark: #952220; +$danger-color-darker: #641715; + +$success-color-lighter: #b5f1d5; +$success-color-light: #26d081; +$success-color: #198754; +$success-color-dark: #12653e; +$success-color-darker: #0c4329; + +$border-color: #dddddd; +$secondary-background-color: #efefef; + +$spacer: ( + 0: 0, + 1: 0.5rem, + 2: 0.75rem, + 3: 1rem, + 4: 1.5rem, + 5: 3rem, +); diff --git a/resources/js/axios.js b/resources/js/axios.js new file mode 100644 index 0000000..795f0fb --- /dev/null +++ b/resources/js/axios.js @@ -0,0 +1,44 @@ +import axios from "axios"; +import { useUserStore } from "./store/UserStore"; +import { useRouter } from "vue-router"; + +axios.defaults.baseURL = import.meta.env.APP_URL_API; +axios.defaults.withCredentials = true; +axios.defaults.headers.common["Accept"] = "application/json"; + +axios.interceptors.request.use((request) => { + const userStore = useUserStore(); + if (userStore.id) { + request.headers["Authorization"] = `Bearer ${userStore.token}`; + } + + return request; +}); + +axios.interceptors.response.use( + (response) => { + return response; + }, + (error) => { + if (error.config.redirect !== false && error.response.status === 401) { + const userStore = useUserStore(); + const router = useRouter(); + userStore.clearUser(); + + const url = new URL(error.request.responseURL); + router.push({ name: "login", query: { redirect: url.pathname } }); + } + + // if(error.config.redirect === true) { + // if(error.response.status === 403) { + // router.push({ name: 'error-forbidden' }) + // } else if(error.response.status === 404) { + // router.push({ name: 'error-notfound' }) + // } else if(error.response.status >= 500) { + // router.push({name: 'error-internal'}) + // } + // } + + return Promise.reject(error); + } +); diff --git a/resources/js/bootstrap.js b/resources/js/bootstrap.js new file mode 100644 index 0000000..366c49d --- /dev/null +++ b/resources/js/bootstrap.js @@ -0,0 +1,34 @@ +import _ from 'lodash'; +window._ = _; + +/** + * We'll load the axios HTTP library which allows us to easily issue requests + * to our Laravel back-end. This library automatically handles sending the + * CSRF token as a header based on the value of the "XSRF" token cookie. + */ + +import axios from 'axios'; +window.axios = axios; + +window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; + +/** + * Echo exposes an expressive API for subscribing to channels and listening + * for events that are broadcast by Laravel. Echo and event broadcasting + * allows your team to easily build robust real-time web applications. + */ + +// import Echo from 'laravel-echo'; + +// import Pusher from 'pusher-js'; +// window.Pusher = Pusher; + +// window.Echo = new Echo({ +// broadcaster: 'pusher', +// key: import.meta.env.VITE_PUSHER_APP_KEY, +// wsHost: import.meta.env.VITE_PUSHER_HOST ? import.meta.env.VITE_PUSHER_HOST : `ws-${import.meta.env.VITE_PUSHER_APP_CLUSTER}.pusher.com`, +// wsPort: import.meta.env.VITE_PUSHER_PORT ?? 80, +// wssPort: import.meta.env.VITE_PUSHER_PORT ?? 443, +// forceTLS: (import.meta.env.VITE_PUSHER_SCHEME ?? 'https') === 'https', +// enabledTransports: ['ws', 'wss'], +// }); diff --git a/resources/js/components/DFileLink.vue b/resources/js/components/DFileLink.vue new file mode 100644 index 0000000..79f1ae2 --- /dev/null +++ b/resources/js/components/DFileLink.vue @@ -0,0 +1,58 @@ + + + diff --git a/resources/js/components/DTab.vue b/resources/js/components/DTab.vue new file mode 100644 index 0000000..477ee12 --- /dev/null +++ b/resources/js/components/DTab.vue @@ -0,0 +1,26 @@ + + + + + diff --git a/resources/js/components/DTabGroup.vue b/resources/js/components/DTabGroup.vue new file mode 100644 index 0000000..b4d2556 --- /dev/null +++ b/resources/js/components/DTabGroup.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/resources/js/components/Dialog.vue b/resources/js/components/Dialog.vue new file mode 100644 index 0000000..08ddf6f --- /dev/null +++ b/resources/js/components/Dialog.vue @@ -0,0 +1,59 @@ + + + + + diff --git a/resources/js/components/SMBreadcrumbs.vue b/resources/js/components/SMBreadcrumbs.vue new file mode 100644 index 0000000..eaa8214 --- /dev/null +++ b/resources/js/components/SMBreadcrumbs.vue @@ -0,0 +1,134 @@ + + + + + diff --git a/resources/js/components/SMButton.vue b/resources/js/components/SMButton.vue new file mode 100644 index 0000000..a90f6fe --- /dev/null +++ b/resources/js/components/SMButton.vue @@ -0,0 +1,58 @@ + + + diff --git a/resources/js/components/SMCaptchaNotice.vue b/resources/js/components/SMCaptchaNotice.vue new file mode 100644 index 0000000..c60152d --- /dev/null +++ b/resources/js/components/SMCaptchaNotice.vue @@ -0,0 +1,16 @@ + + + diff --git a/resources/js/components/SMCarousel.vue b/resources/js/components/SMCarousel.vue new file mode 100644 index 0000000..3a3bd39 --- /dev/null +++ b/resources/js/components/SMCarousel.vue @@ -0,0 +1,192 @@ + + + + + diff --git a/resources/js/components/SMCarouselSlide.vue b/resources/js/components/SMCarouselSlide.vue new file mode 100644 index 0000000..37b1a25 --- /dev/null +++ b/resources/js/components/SMCarouselSlide.vue @@ -0,0 +1,133 @@ + + + + + diff --git a/resources/js/components/SMColumn.vue b/resources/js/components/SMColumn.vue new file mode 100644 index 0000000..b00aeb3 --- /dev/null +++ b/resources/js/components/SMColumn.vue @@ -0,0 +1,68 @@ + + + + + diff --git a/resources/js/components/SMContainer.vue b/resources/js/components/SMContainer.vue new file mode 100644 index 0000000..7d3a3d2 --- /dev/null +++ b/resources/js/components/SMContainer.vue @@ -0,0 +1,88 @@ + + + + + diff --git a/resources/js/components/SMDatePicker.vue b/resources/js/components/SMDatePicker.vue new file mode 100644 index 0000000..6de1ba2 --- /dev/null +++ b/resources/js/components/SMDatePicker.vue @@ -0,0 +1,131 @@ + + + diff --git a/resources/js/components/SMDialog.vue b/resources/js/components/SMDialog.vue new file mode 100644 index 0000000..737c7e9 --- /dev/null +++ b/resources/js/components/SMDialog.vue @@ -0,0 +1,39 @@ + + + diff --git a/resources/js/components/SMEditor.vue b/resources/js/components/SMEditor.vue new file mode 100644 index 0000000..dfe2e04 --- /dev/null +++ b/resources/js/components/SMEditor.vue @@ -0,0 +1,731 @@ + + + + + diff --git a/resources/js/components/SMFooter.vue b/resources/js/components/SMFooter.vue new file mode 100644 index 0000000..26bf89c --- /dev/null +++ b/resources/js/components/SMFooter.vue @@ -0,0 +1,168 @@ + + + diff --git a/resources/js/components/SMFormFooter.vue b/resources/js/components/SMFormFooter.vue new file mode 100644 index 0000000..060a21f --- /dev/null +++ b/resources/js/components/SMFormFooter.vue @@ -0,0 +1,79 @@ + + + diff --git a/resources/js/components/SMHTML.vue b/resources/js/components/SMHTML.vue new file mode 100644 index 0000000..2f38737 --- /dev/null +++ b/resources/js/components/SMHTML.vue @@ -0,0 +1,29 @@ + + + diff --git a/resources/js/components/SMHeading.vue b/resources/js/components/SMHeading.vue new file mode 100644 index 0000000..ab7c18c --- /dev/null +++ b/resources/js/components/SMHeading.vue @@ -0,0 +1,87 @@ + + + + + diff --git a/resources/js/components/SMInput.vue b/resources/js/components/SMInput.vue new file mode 100644 index 0000000..cf7357d --- /dev/null +++ b/resources/js/components/SMInput.vue @@ -0,0 +1,205 @@ + + + + + diff --git a/resources/js/components/SMLoader.vue b/resources/js/components/SMLoader.vue new file mode 100644 index 0000000..8b8528e --- /dev/null +++ b/resources/js/components/SMLoader.vue @@ -0,0 +1,21 @@ + + + diff --git a/resources/js/components/SMMessage.vue b/resources/js/components/SMMessage.vue new file mode 100644 index 0000000..769c91a --- /dev/null +++ b/resources/js/components/SMMessage.vue @@ -0,0 +1,57 @@ + + + + + diff --git a/resources/js/components/SMModal.vue b/resources/js/components/SMModal.vue new file mode 100644 index 0000000..672421b --- /dev/null +++ b/resources/js/components/SMModal.vue @@ -0,0 +1,17 @@ + + + diff --git a/resources/js/components/SMNavbar.vue b/resources/js/components/SMNavbar.vue new file mode 100644 index 0000000..628f32a --- /dev/null +++ b/resources/js/components/SMNavbar.vue @@ -0,0 +1,378 @@ + + + + + diff --git a/resources/js/components/SMPageError.vue b/resources/js/components/SMPageError.vue new file mode 100644 index 0000000..5a92098 --- /dev/null +++ b/resources/js/components/SMPageError.vue @@ -0,0 +1,25 @@ + + + diff --git a/resources/js/components/SMPanel.vue b/resources/js/components/SMPanel.vue new file mode 100644 index 0000000..83ae9bf --- /dev/null +++ b/resources/js/components/SMPanel.vue @@ -0,0 +1,242 @@ + + + + + diff --git a/resources/js/components/SMPanelList.vue b/resources/js/components/SMPanelList.vue new file mode 100644 index 0000000..08b027e --- /dev/null +++ b/resources/js/components/SMPanelList.vue @@ -0,0 +1,71 @@ + + + + + diff --git a/resources/js/components/SMRow.vue b/resources/js/components/SMRow.vue new file mode 100644 index 0000000..838e5dd --- /dev/null +++ b/resources/js/components/SMRow.vue @@ -0,0 +1,31 @@ + + + + + diff --git a/resources/js/components/SMSelect.vue b/resources/js/components/SMSelect.vue new file mode 100644 index 0000000..4f8eb7b --- /dev/null +++ b/resources/js/components/SMSelect.vue @@ -0,0 +1,89 @@ + + + diff --git a/resources/js/components/SMToolbar.vue b/resources/js/components/SMToolbar.vue new file mode 100644 index 0000000..0aa51b5 --- /dev/null +++ b/resources/js/components/SMToolbar.vue @@ -0,0 +1,84 @@ + + + diff --git a/resources/js/components/dialogs/SMDialogChangePassword.vue b/resources/js/components/dialogs/SMDialogChangePassword.vue new file mode 100644 index 0000000..d7d9982 --- /dev/null +++ b/resources/js/components/dialogs/SMDialogChangePassword.vue @@ -0,0 +1,118 @@ + + + diff --git a/resources/js/components/dialogs/SMDialogConfirm.vue b/resources/js/components/dialogs/SMDialogConfirm.vue new file mode 100644 index 0000000..7cac47a --- /dev/null +++ b/resources/js/components/dialogs/SMDialogConfirm.vue @@ -0,0 +1,86 @@ + + + diff --git a/resources/js/components/dialogs/SMDialogMedia.vue b/resources/js/components/dialogs/SMDialogMedia.vue new file mode 100644 index 0000000..74fdaf9 --- /dev/null +++ b/resources/js/components/dialogs/SMDialogMedia.vue @@ -0,0 +1,308 @@ + + + + + diff --git a/resources/js/components/errors/Forbidden.vue b/resources/js/components/errors/Forbidden.vue new file mode 100644 index 0000000..59e91ee --- /dev/null +++ b/resources/js/components/errors/Forbidden.vue @@ -0,0 +1,15 @@ + + + \ No newline at end of file diff --git a/resources/js/components/errors/Internal.vue b/resources/js/components/errors/Internal.vue new file mode 100644 index 0000000..cec7dd0 --- /dev/null +++ b/resources/js/components/errors/Internal.vue @@ -0,0 +1,15 @@ + + + \ No newline at end of file diff --git a/resources/js/components/errors/Notfound.vue b/resources/js/components/errors/Notfound.vue new file mode 100644 index 0000000..499ad20 --- /dev/null +++ b/resources/js/components/errors/Notfound.vue @@ -0,0 +1,15 @@ + + + \ No newline at end of file diff --git a/resources/js/helpers/common.js b/resources/js/helpers/common.js new file mode 100644 index 0000000..86ad68e --- /dev/null +++ b/resources/js/helpers/common.js @@ -0,0 +1,404 @@ +const transitionEndEventName = () => { + var i, + undefined, + el = document.createElement("div"), + transitions = { + transition: "transitionend", + OTransition: "otransitionend", + MozTransition: "transitionend", + WebkitTransition: "webkitTransitionEnd", + }; + + for (i in transitions) { + if (transitions.hasOwnProperty(i) && el.style[i] !== undefined) { + return transitions[i]; + } + } + + return null; +}; + +const waitForElementRender = (elem) => { + return new Promise((resolve) => { + if (document.contains(elem.value)) { + return resolve(elem.value); + } + + const MutationObserver = + window.MutationObserver || + window.WebKitMutationObserver || + window.MozMutationObserver; + const observer = new MutationObserver((mutations) => { + if (document.contains(elem.value)) { + resolve(elem.value); + observer.disconnect(); + } + }); + + observer.observe(document.body, { + childList: true, + subtree: true, + }); + }); +}; + +const transitionEnter = (elem, transition) => { + waitForElementRender(elem).then((e) => { + window.setTimeout(() => { + e.classList.replace( + transition + "-enter-from", + transition + "-enter-active" + ); + const transitionName = transitionEndEventName(); + e.addEventListener( + transitionName, + () => { + e.classList.replace( + transition + "-enter-active", + transition + "-enter-to" + ); + }, + false + ); + }, 1); + }); +}; + +const transitionLeave = (elem, transition, callback = null) => { + elem.value.classList.remove(transition + "-enter-to"); + elem.value.classList.add(transition + "-leave-from"); + window.setTimeout(() => { + elem.value.classList.replace( + transition + "-leave-from", + transition + "-leave-active" + ); + const transitionName = transitionEndEventName(); + elem.value.addEventListener( + transitionName, + () => { + elem.value.classList.replace( + transition + "-leave-active", + transition + "-leave-to" + ); + if (callback) { + callback(); + } + }, + false + ); + }, 1); +}; + +export const monthString = [ + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec", +]; + +export const fullMonthString = [ + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December", +]; + +/** + * + * @param target + */ +export function isBool(target) { + return typeof target === "boolean"; +} + +/** + * + * @param target + */ +export function isNumber(target) { + return typeof target === "number"; +} + +/** + * + * @param target + */ +export function isObject(target) { + return typeof target === "object" && target !== null; +} + +/** + * + * @param target + */ +export function isString(target) { + return typeof target === "string" && target !== null; +} + +/** + * + * @param target + * @param def + */ +export function parseErrorType( + target, + def = "An unknown error occurred. Please try again later." +) { + if (target.response?.message) { + return target.response.message; + } else if (target instanceof Error) { + target.message; + } else if (isString(err)) { + return target; + } + + return def; +} + +export const relativeDate = (d) => { + if (isString(d)) { + d = new Date(d); + } + + // const d = new Date(0); + // // d.setUTCSeconds(parseInt(epoch)); + // d.setUTCSeconds(epoch); + + const now = new Date(); + const dif = Math.round((now.getTime() - d.getTime()) / 1000); + + if (dif < 60) { + // let v = dif; + // return v + " sec" + (v != 1 ? "s" : "") + " ago"; + return "Just now"; + } else if (dif < 3600) { + const v = Math.round(dif / 60); + return v + " min" + (v != 1 ? "s" : "") + " ago"; + } else if (dif < 86400) { + const v = Math.round(dif / 3600); + return v + " hour" + (v != 1 ? "s" : "") + " ago"; + } else if (dif < 604800) { + const v = Math.round(dif / 86400); + return v + " day" + (v != 1 ? "s" : "") + " ago"; + } else if (dif < 2419200) { + const v = Math.round(dif / 604800); + return v + " week" + (v != 1 ? "s" : "") + " ago"; + } + + return ( + monthString[d.getMonth()] + " " + d.getDate() + ", " + d.getFullYear() + ); +}; + +export const buildUrlQuery = (url, query) => { + let s = ""; + + if (Object.keys(query).length > 0) { + s = "?"; + } + + s += Object.keys(query) + .map((key) => key + "=" + query[key]) + .join("&"); + + return url + s; +}; + +export const toParamString = (obj, q = true) => { + let s = ""; + + if (q && Object.keys(obj).length > 0) { + s = "?"; + } + + s += Object.keys(obj) + .map((key) => key + "=" + obj[key]) + .join("&"); + return s; +}; + +export const getLocale = () => { + return ( + navigator.userLanguage || + (navigator.languages && + navigator.languages.length && + navigator.languages[0]) || + navigator.language || + navigator.browserLanguage || + navigator.systemLanguage || + "en" + ); +}; + +export const debounce = (fn, delay) => { + var timeoutID = null; + return function () { + clearTimeout(timeoutID); + var args = arguments; + var that = this; + timeoutID = setTimeout(function () { + fn.apply(that, args); + }, delay); + }; +}; + +export const bytesReadable = (bytes) => { + if (isNaN(bytes)) { + return "0 Bytes"; + } + + if (Math.abs(bytes) < 1024) { + return bytes + " Bytes"; + } + + const units = ["KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]; + let u = -1; + const r = 10 ** 1; + + do { + bytes /= 1000; + ++u; + } while ( + Math.round(Math.abs(bytes) * r) / r >= 1000 && + u < units.length - 1 + ); + + return bytes.toFixed(1) + " " + units[u]; +}; + +export const arrayIncludesMatchBasic = (arr, str) => { + let matches = false; + + arr.every((elem) => { + elem = elem.replace(/[|\\{}()[\]^$+?.]/g, "\\$&"); + let regex = new RegExp("^" + elem.replace("*", ".*?") + "$", "i"); + if (str.match(regex)) { + matches = true; + } + return !matches; + }); + + return matches; +}; + +export const excerpt = (txt, maxLen = 150, strip = true) => { + if (strip) { + txt = stripHtmlTags(replaceHtmlEntites(txt)); + } + + let txtPieces = txt.split(" "); + let excerptPieces = []; + let curLen = 0; + + txtPieces.every((itm) => { + if (curLen + itm.length >= maxLen) { + return false; + } + + excerptPieces.push(itm); + curLen += itm.length + 1; + return true; + }); + + return excerptPieces.join(" ") + (curLen < txt.length ? "..." : ""); +}; + +export const stripHtmlTags = (txt) => { + txt = txt.replace(/<(p|br)([ /]*?>|[ /]+.*?>)/g, " "); + return txt.replace(/<[a-zA-Z/][^>]+(>|$)/g, ""); +}; + +export const replaceHtmlEntites = (txt) => { + var translate_re = /&(nbsp|amp|quot|lt|gt);/g; + var translate = { + nbsp: " ", + amp: "&", + quot: '"', + lt: "<", + gt: ">", + }; + + return txt.replace(translate_re, function (match, entity) { + return translate[entity]; + }); +}; + +export const formatAusDateToUniversal = (datetime) => { + if ( + /20[0-9]{2}-[0-1][0-9]-[0-3][0-9] [0-2][0-9]:[0-5][0-9]:[0-5][0-9]/.test( + datetime + ) == true + ) { + return datetime; + } + + var splitted = datetime.match( + /([0-9]{1,2}?)\/([0-9]{1,2}?)\/([0-9]{2,4}?)[, ]*([0-9]{1,2}?):([0-9]{2})[:0-9 ]*(AM|PM)?/i + ); + + try { + if (splitted.length >= 5) { + if (splitted.length >= 6 && splitted[6].toUpperCase() == "PM") { + splitted[4] = parseInt(splitted[4]) + 12; + } + } + + const d = new Date( + splitted[3] + + "/" + + splitted[2] + + "/" + + splitted[1] + + " " + + splitted[4] + + ":" + + splitted[5] + ); + if (isNaN(d)) { + return ""; + } + + let year = d.getFullYear(); + let month = (d.getMonth() + 1).toString().padStart(2, "0"); + let day = d.getDate().toString().padStart(2, "0"); + let hours = d.getHours(); + let mins = d.getMinutes(); + let secs = "00"; + + return `${year}-${month}-${day} ${hours}:${mins}:${secs}`; + } catch (e) { + console.log(e); + /* empty */ + } + + return ""; +}; + +export const isUUID = (uuid) => { + return /^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test( + uuid + ); +}; + +export { + transitionEndEventName, + waitForElementRender, + transitionEnter, + transitionLeave, +}; diff --git a/resources/js/helpers/fontawesome.ts b/resources/js/helpers/fontawesome.ts new file mode 100644 index 0000000..933d6c7 --- /dev/null +++ b/resources/js/helpers/fontawesome.ts @@ -0,0 +1,9 @@ +import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome"; +import { library } from "@fortawesome/fontawesome-svg-core"; +import { fas } from '@fortawesome/free-solid-svg-icons' +import { fab } from '@fortawesome/free-brands-svg-icons'; +import { far } from '@fortawesome/free-regular-svg-icons'; + +library.add(far, fas, fab); + +export default FontAwesomeIcon; \ No newline at end of file diff --git a/resources/js/helpers/validation.js b/resources/js/helpers/validation.js new file mode 100644 index 0000000..af189d1 --- /dev/null +++ b/resources/js/helpers/validation.js @@ -0,0 +1,316 @@ +import { watch } from "vue"; +import { formatAusDateToUniversal } from "../helpers/common"; +import { parse, parseISO } from "date-fns"; + +let oldFormData = {}; + +const bytesReadable = (bytes) => { + if (Math.abs(bytes) < 1024) { + return bytes + "B"; + } + + const units = ["kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]; + let u = -1; + const r = 10 ** 1; + + do { + bytes /= 1024; + ++u; + } while ( + Math.round(Math.abs(bytes) * r) / r >= 1024 && + u < units.length - 1 + ); + + return bytes.toFixed(1) + "" + units[u]; +}; + +const validateMessage = (ruleData, rule, defMessage) => { + let msg = + ruleData[rule + "_message"] !== undefined + ? ruleData[rule + "_message"] + : defMessage; + return msg + .replaceAll("%d", ruleData[rule]) + .replaceAll("%b", bytesReadable(ruleData[rule])); +}; + +const validateSingle = (fieldData) => { + let error = ""; + + if ( + fieldData.rules && + (fieldData.enabled == undefined || fieldData.enabled == true) + ) { + // Fill in the type declaration + if (Object.keys(fieldData.rules).includes("type")) { + if (typeof fieldData.rules.type === "string") { + fieldData.rules[fieldData.rules.type] = true; + } else if ( + typeof fieldData.rules.type === "object" && + "type" in fieldData.rules.type + ) { + fieldData.rules[fieldData.rules.type.type] = true; + } + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("required") && + (fieldData.rules.required == true || + (typeof fieldData.rules.required == "function" && + fieldData.rules.required() == true)) && + (fieldData.value == null || fieldData.value.length == 0) + ) { + error = validateMessage( + fieldData.rules, + "required", + "This item is required" + ); + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("min") && + (fieldData.value == null || + fieldData.value.length < fieldData.rules.min) + ) { + error = validateMessage( + fieldData.rules, + "min", + "This item is required to be at least %d characters" + ); + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("max") && + fieldData.value != null && + fieldData.value.length > fieldData.rules.max + ) { + error = validateMessage( + fieldData.rules, + "max", + "This item is required to be at no longer than %d characters" + ); + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("email") && + /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test( + fieldData.value + ) == false + ) { + error = validateMessage( + fieldData.rules, + "email", + "This item is required to be a valid email address" + ); + } + + if (error.length == 0 && Object.keys(fieldData.rules).includes("url")) { + try { + new URL(fieldData.value); + } catch (e) { + error = validateMessage( + fieldData.rules, + "url", + "This item is required to be a valid URL" + ); + } + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("password") + ) { + if ( + (fieldData.rules.password == true || + fieldData.rules.password == "basic") && + /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{1,}$/.test( + fieldData.value + ) == false + ) { + error = validateMessage( + fieldData.rules, + "password", + "Your password needs to have at least 1 letter and 1 number" + ); + } else if ( + fieldData.rules.password == "special" && + /(?=.*[A-Za-z])(?=.*\d)(?=.*[.@$!%*#?&])[A-Za-z\d.@$!%*#?&]{1,}$/.test( + fieldData.value + ) == false + ) { + error = validateMessage( + fieldData.rules, + "password", + "Your password needs to have at least a letter, a number and a special character" + ); + } else if ( + fieldData.rules.password == "uppercase_special" && + /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{1,}$/.test( + fieldData.value + ) == false + ) { + error = validateMessage( + fieldData.rules, + "password", + "Your password needs to have at least a lowercase and uppercase letter, 1 number and 1 special character" + ); + } + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("phone") && + fieldData.value != null && + fieldData.value.length > 0 && + /^(\+|00)?[0-9][0-9 \-\(\)\.]{7,32}$/.test(fieldData.value) == false + ) { + error = validateMessage( + fieldData.rules, + "phone", + "This item is required to be a valid phone number" + ); + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("datetime") && + fieldData.value != null && + fieldData.value.length > 0 + ) { + try { + parseISO(fieldData.value); + } catch (e) { + error = validateMessage( + fieldData.rules, + "datetime", + "A valid date/time is required" + ); + } + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("fileSize") && + fieldData.value != null && + fieldData.value.size > fieldData.rules.fileSize + ) { + error = validateMessage( + fieldData.rules, + "fileSize", + "The file size larger than the allowed size" + ); + } + + if ( + error.length == 0 && + Object.keys(fieldData.rules).includes("custom") + ) { + error = fieldData.rules.custom(fieldData.value); + } + + fieldData.error = error; + } +}; + +const validateRules = ( + formData, + force = false, + pageRef = null, + showMessages = false +) => { + Object.keys(oldFormData).forEach((key) => { + if ( + key in formData && + (oldFormData[key].value != parseValue(formData[key].value) || + force == true) && + formData[key].rules !== undefined && + (pageRef == null || formData[key].page == pageRef.value) + ) { + oldFormData[key].value = parseValue(formData[key].value); + if (showMessages == true) { + validateSingle(formData[key]); + } else { + formData[key].error = ""; + } + } + }); +}; + +const parseValue = (val) => { + if (val instanceof File) { + return JSON.stringify({ + name: val.name, + size: val.size, + lastModified: val.lastModified, + lastModifiedDate: val.lastModifiedDate, + type: val.type, + }); + } + + return val; +}; + +const useValidation = (formData, pageRef = null, showMessages = false) => { + watch(formData, (newFormData) => { + if (newFormData) { + validateRules(newFormData, false, pageRef, showMessages); + } + }); +}; + +const isValidated = (formData, pageRef = null) => { + let result = true; + + oldFormData = JSON.parse(JSON.stringify(formData)); + validateRules(formData, true, pageRef, true); + + Object.keys(formData).forEach((key) => { + if ( + formData[key].error !== undefined && + formData[key].error.length > 0 && + (pageRef == null || pageRef.value == formData[key].page) + ) { + result = false; + } + }); + + return result; +}; + +const fieldValidate = (fieldData) => { + validateSingle(fieldData); +}; + +const restParseErrors = (formData, formErrorRef, response) => { + let foundKeys = false; + + if (response.response?.data?.errors) { + Object.keys(response.response.data.errors).forEach((key) => { + if (formData[key] !== undefined) { + foundKeys = true; + if (Array.isArray(response.response.data.errors[key])) { + formData[key].error = response.response.data.errors[key][0]; + } else { + formData[key].error = response.response.data.errors[key]; + } + } + }); + } + + if (foundKeys == false) { + const msg = response.response?.data?.message + ? response.response?.data?.message + : "An unknown server error occurred. Please try again later"; + if (Array.isArray(formErrorRef)) { + formErrorRef[0][formErrorRef[1]] = msg; + } else if (formErrorRef.value !== undefined) { + formErrorRef.value = msg; + } + } +}; + +export { useValidation, isValidated, fieldValidate, restParseErrors }; diff --git a/resources/js/main.js b/resources/js/main.js new file mode 100644 index 0000000..de24fc7 --- /dev/null +++ b/resources/js/main.js @@ -0,0 +1,37 @@ +import "./bootstrap"; +import { createApp } from "vue"; +import { createPinia } from "pinia"; +import piniaPluginPersistedstate from "pinia-plugin-persistedstate"; +import Router from "@/router"; +import "./axios.js"; +import "normalize.css"; +import "../css/app.scss"; +import App from "./views/App.vue"; +import FontAwesomeIcon from "@/helpers/fontawesome"; +import SMContainer from "./components/SMContainer.vue"; +import SMRow from "./components/SMRow.vue"; +import SMColumn from "./components/SMColumn.vue"; +import { PromiseDialog } from "vue3-promise-dialog"; +import { VueReCaptcha } from "vue-recaptcha-v3"; +import VueDOMPurifyHTML from "vue-dompurify-html"; +import "trix/dist/trix.css"; + +const pinia = createPinia(); +pinia.use(piniaPluginPersistedstate); + +createApp(App) + .component("FontAwesomeIcon", FontAwesomeIcon) + .use(pinia) + .use(Router) + .use(PromiseDialog) + .use(VueDOMPurifyHTML) + .use(VueReCaptcha, { + siteKey: import.meta.env.GOOGLE_RECAPTCHA_SITE_KEY, + loaderOptions: { + autoHideBadge: true, + }, + }) + .component("SMContainer", SMContainer) + .component("SMRow", SMRow) + .component("SMColumn", SMColumn) + .mount("#app"); diff --git a/resources/js/router/index.js b/resources/js/router/index.js new file mode 100644 index 0000000..3950d93 --- /dev/null +++ b/resources/js/router/index.js @@ -0,0 +1,449 @@ +import axios from "axios"; +import { createWebHistory, createRouter } from "vue-router"; +import { useUserStore } from "@/store/UserStore"; +import { useApplicationStore } from "../store/ApplicationStore"; + +export const routes = [ + { + path: "/", + name: "home", + meta: { + title: "Home", + }, + component: () => import("@/views/Home.vue"), + }, + { + path: "/get-file/:id", + name: "get-file", + component: () => import("@/views/GetFile.vue"), + }, + { + path: "/verify-email", + name: "verify-email", + meta: { + title: "Verify Email", + }, + component: () => import("@/views/EmailVerify.vue"), + }, + { + path: "/resend-verify-email", + name: "resend-verify-email", + meta: { + title: "Resend Verification Email", + }, + component: () => import("@/views/ResendEmailVerify.vue"), + }, + { + path: "/reset-password", + name: "reset-password", + meta: { + title: "Reset Password", + }, + component: () => import("@/views/ResetPassword.vue"), + }, + { + path: "/about", + name: "about", + meta: { + title: "About", + }, + component: () => import("@/views/About.vue"), + }, + { + path: "/privacy", + name: "privacy", + meta: { + title: "Privacy Policy", + }, + component: () => import("@/views/Privacy.vue"), + }, + { + path: "/rules", + name: "rules", + meta: { + title: "Rules", + }, + component: () => import("@/views/Rules.vue"), + }, + { + path: "/terms", + name: "terms", + meta: { + title: "Terms and Conditions", + }, + component: () => import("@/views/Terms.vue"), + }, + { + path: "/workshops", + children: [ + { + path: "", + name: "workshop-list", + meta: { + title: "Workshops", + }, + component: () => import("@/views/WorkshopList.vue"), + }, + { + path: ":id", + name: "workshop-view", + component: () => import("@/views/WorkshopView.vue"), + }, + ], + }, + { + path: "/login", + name: "login", + meta: { + title: "Login", + middleware: "guest", + }, + component: () => import("@/views/Login.vue"), + }, + { + path: "/logout", + name: "logout", + meta: { + title: "Logout", + }, + component: () => import("@/views/Logout.vue"), + }, + { + path: "/contact", + name: "contact", + meta: { + title: "Contact Us", + }, + component: () => import("@/views/Contact.vue"), + }, + { + path: "/register", + name: "register", + meta: { + title: "Register", + }, + component: () => import("@/views/Register.vue"), + }, + { + path: "/news", + children: [ + { + path: "", + name: "news", + meta: { + title: "News", + }, + component: () => import("@/views/NewsList.vue"), + }, + { + path: ":slug", + name: "post-view", + component: () => import("@/views/NewsView.vue"), + }, + ], + }, + { + path: "/dashboard", + children: [ + { + path: "", + name: "dashboard", + meta: { + title: "Dashboard", + middleware: "authenticated", + }, + component: () => import("@/views/Dashboard.vue"), + }, + { + path: "posts", + children: [ + { + path: "", + name: "post-list", + meta: { + title: "Posts", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/PostList.vue"), + }, + { + path: "create", + name: "post-create", + meta: { + title: "Create Post", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/PostEdit.vue"), + }, + { + path: ":id", + name: "post-edit", + meta: { + title: "Edit Post", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/PostEdit.vue"), + }, + ], + }, + { + path: "events", + children: [ + { + path: "", + name: "event-list", + meta: { + title: "Events", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/EventList.vue"), + }, + { + path: "create", + name: "event-create", + meta: { + title: "Create Event", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/EventEdit.vue"), + }, + { + path: ":id", + name: "event-edit", + meta: { + title: "Event Post", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/EventEdit.vue"), + }, + ], + }, + { + path: "details", + name: "account-details", + meta: { + title: "Account Details", + middleware: "authenticated", + }, + component: () => import("@/views/Dashboard/UserEdit.vue"), + }, + { + path: "users", + children: [ + { + path: "", + name: "user-list", + meta: { + title: "Users", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/UserList.vue"), + }, + { + path: ":id", + name: "user-edit", + meta: { + title: "Edit User", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/UserEdit.vue"), + }, + ], + }, + { + path: "media", + children: [ + { + path: "", + name: "media", + meta: { + title: "Media", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/MediaList.vue"), + }, + { + path: "upload", + name: "media-upload", + meta: { + title: "Upload Media", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/MediaEdit.vue"), + }, + { + path: "edit/:id", + name: "media-edit", + meta: { + title: "Edit Media", + middleware: "authenticated", + }, + component: () => + import("@/views/Dashboard/MediaEdit.vue"), + }, + ], + }, + ], + }, + { + path: "/forgot-username", + name: "forgot-username", + meta: { + title: "Forgot Username", + }, + component: () => import("@/views/ForgotUsername.vue"), + }, + { + path: "/forgot-password", + name: "forgot-password", + meta: { + title: "Forgot Password", + }, + component: () => import("@/views/ForgotPassword.vue"), + }, + { + path: "/courses", + name: "courses", + component: () => import("@/views/Courses.vue"), + }, + { + path: "/error/internal", + name: "error-internal", + meta: { + title: "Server error", + }, + component: () => import("@/views/errors/Internal.vue"), + }, + { + path: "/error/forbidden", + name: "forbidden", + meta: { + title: "Forbidden", + }, + component: () => import("@/components/errors/Forbidden.vue"), + }, + { + path: "/:catchAll(.*)", + name: "not-found", + meta: { + title: "Page not found", + }, + component: () => import("@/components/errors/NotFound.vue"), + }, +]; + +const router = createRouter({ + history: createWebHistory(), + routes, + scrollBehavior(to, from, savedPosition) { + // always scroll to top + return { top: 0 }; + }, +}); + +// export let activeRoutes = []; + +router.beforeEach(async (to, from, next) => { + // BC Start + // activeRoutes = []; + // to.matched.forEach((record) => { + // console.log(record.routeName); + // activeRoutes.push(record); + // }); + + const userStore = useUserStore(); + const applicationStore = useApplicationStore(); + + applicationStore.clearDynamicTitle(); + + // Check Token + if (userStore.id) { + let redirect = false; + + try { + let res = await axios.get("me"); + userStore.setUserDetails(res.data.user); + } catch (err) { + if (err.response.status == 401) { + userStore.clearUser(); + redirect = true; + } + } + + if ( + redirect && + to.path.startsWith("/error/") === false && + to.path.startsWith("/login") === false + ) { + next({ name: "login", query: { redirect: to.fullPath } }); + return; + } + } + + // Document Title + const nearestWithTitle = to.matched + .slice() + .reverse() + .find((r) => r.meta && r.meta.title); + const previousNearestWithMeta = from.matched + .slice() + .reverse() + .find((r) => r.meta && r.meta.metaTags); + + let title = ""; + if (nearestWithTitle) { + title = nearestWithTitle.meta.title; + } else if (previousNearestWithMeta) { + title = previousNearestWithMeta.meta.title; + } + + if (title != "") { + document.title = "STEMMechanics | " + title; + } + + // Meta tags + const nearestWithMeta = to.matched + .slice() + .reverse() + .find((r) => r.meta && r.meta.metaTags); + Array.from(document.querySelectorAll("[data-vue-router-controlled]")).map( + (el) => el.parentNode.removeChild(el) + ); + if (nearestWithMeta) { + nearestWithMeta.meta.metaTags + .map((tagDef) => { + const tag = document.createElement("meta"); + + Object.keys(tagDef).forEach((key) => { + tag.setAttribute(key, tagDef[key]); + }); + + tag.setAttribute("data-vue-router-controlled", ""); + + return tag; + }) + .forEach((tag) => document.head.appendChild(tag)); + } + + // Middleware + // if (to.meta.middleware == 'guest' && userStore.id) { + // next({ name: 'home'}) + // } else + if (to.meta.middleware == "authenticated" && !userStore.id) { + next({ name: "login", query: { redirect: to.fullPath } }); + } else { + next(); + } +}); + +export default router; diff --git a/resources/js/store/ApplicationStore.ts b/resources/js/store/ApplicationStore.ts new file mode 100644 index 0000000..de27ca8 --- /dev/null +++ b/resources/js/store/ApplicationStore.ts @@ -0,0 +1,25 @@ +import { defineStore } from "pinia"; + +export interface ApplicationStore { + dynamicTitle: string; + racers: boolean; +} + +export const useApplicationStore = defineStore({ + id: "application", + state: (): ApplicationStore => ({ + dynamicTitle: "", + racers: false, + }), + + actions: { + async setDynamicTitle(title: string) { + this.$state.dynamicTitle = title; + document.title = "STEMMechanics | " + title; + }, + + clearDynamicTitle() { + this.$state.dynamicTitle = ""; + }, + }, +}); diff --git a/resources/js/store/UserStore.d.ts b/resources/js/store/UserStore.d.ts new file mode 100644 index 0000000..2187cfe --- /dev/null +++ b/resources/js/store/UserStore.d.ts @@ -0,0 +1,17 @@ +import "pinia"; +import { UserDetails } from "./UserStore"; + +declare module "pinia" { + export interface PiniaCustomProperties { + setUserDetails(user: UserDetails): void; + + id: string; + token: string; + username: string; + firstName: string; + lastName: string; + email: string; + phone: string; + permissions: string[]; + } +} diff --git a/resources/js/store/UserStore.ts b/resources/js/store/UserStore.ts new file mode 100644 index 0000000..2e65586 --- /dev/null +++ b/resources/js/store/UserStore.ts @@ -0,0 +1,79 @@ +import axios from "axios"; +import { defineStore } from "pinia"; + +export interface UserDetails { + id: string; + username: string; + first_name: string; + last_name: string; + email: string; + phone: string; + permissions: string[]; +} + +export interface UserStore { + id: string; + token: string; + username: string; + firstName: string; + lastName: string; + email: string; + phone: string; + permissions: string[]; +} + +export const useUserStore = defineStore({ + id: "user", + state: (): UserStore => ({ + id: "", + token: "", + username: "", + firstName: "", + lastName: "", + email: "", + phone: "", + permissions: [], + }), + + actions: { + async setUserDetails(user: UserDetails) { + this.$state.id = user.id; + this.$state.username = user.username; + this.$state.firstName = user.first_name; + this.$state.lastName = user.last_name; + this.$state.email = user.email; + this.$state.phone = user.phone; + this.$state.permissions = user.permissions || []; + }, + + async setUserToken(token: string) { + this.$state.token = token; + }, + + async fetchUser() { + const res = await axios.get("users/" + this.$state.id); + + this.$state.id = res.data.user.id; + this.$state.token = res.data.token; + this.$state.username = res.data.user.username; + this.$state.firstName = res.data.user.first_name; + this.$state.lastName = res.data.user.last_name; + this.$state.email = res.data.user.email; + this.$state.phone = res.data.user.phone; + this.$state.permissions = res.data.user.permissions || []; + }, + + clearUser() { + this.$state.id = null; + this.$state.token = null; + this.$state.username = null; + this.$state.firstName = null; + this.$state.lastName = null; + this.$state.email = null; + this.$state.phone = null; + this.$state.permissions = []; + }, + }, + + persist: true, +}); diff --git a/resources/js/views/About.vue b/resources/js/views/About.vue new file mode 100644 index 0000000..e705c7e --- /dev/null +++ b/resources/js/views/About.vue @@ -0,0 +1,5 @@ + diff --git a/resources/js/views/App.vue b/resources/js/views/App.vue new file mode 100644 index 0000000..63b5410 --- /dev/null +++ b/resources/js/views/App.vue @@ -0,0 +1,37 @@ + + + + + diff --git a/resources/js/views/Contact.vue b/resources/js/views/Contact.vue new file mode 100644 index 0000000..e05c3be --- /dev/null +++ b/resources/js/views/Contact.vue @@ -0,0 +1,150 @@ + + + diff --git a/resources/js/views/Dashboard.vue b/resources/js/views/Dashboard.vue new file mode 100644 index 0000000..f5b2ccc --- /dev/null +++ b/resources/js/views/Dashboard.vue @@ -0,0 +1,105 @@ + + + + + diff --git a/resources/js/views/Dialog.vue b/resources/js/views/Dialog.vue new file mode 100644 index 0000000..ed335d2 --- /dev/null +++ b/resources/js/views/Dialog.vue @@ -0,0 +1,50 @@ + + + + + diff --git a/resources/js/views/DialogDelete.vue b/resources/js/views/DialogDelete.vue new file mode 100644 index 0000000..9d4c228 --- /dev/null +++ b/resources/js/views/DialogDelete.vue @@ -0,0 +1,19 @@ + + + + + diff --git a/resources/js/views/EmailVerify.vue b/resources/js/views/EmailVerify.vue new file mode 100644 index 0000000..19209f5 --- /dev/null +++ b/resources/js/views/EmailVerify.vue @@ -0,0 +1,126 @@ + + + diff --git a/resources/js/views/EventView.vue b/resources/js/views/EventView.vue new file mode 100644 index 0000000..c4f6a5a --- /dev/null +++ b/resources/js/views/EventView.vue @@ -0,0 +1,52 @@ + + + diff --git a/resources/js/views/ForgotPassword.vue b/resources/js/views/ForgotPassword.vue new file mode 100644 index 0000000..b567cc1 --- /dev/null +++ b/resources/js/views/ForgotPassword.vue @@ -0,0 +1,128 @@ + + + + + diff --git a/resources/js/views/ForgotUsername.vue b/resources/js/views/ForgotUsername.vue new file mode 100644 index 0000000..f39b6b8 --- /dev/null +++ b/resources/js/views/ForgotUsername.vue @@ -0,0 +1,121 @@ + + + + + diff --git a/resources/js/views/Home.vue b/resources/js/views/Home.vue new file mode 100644 index 0000000..c509c47 --- /dev/null +++ b/resources/js/views/Home.vue @@ -0,0 +1,335 @@ + + + + + diff --git a/resources/js/views/Legal.vue b/resources/js/views/Legal.vue new file mode 100644 index 0000000..4732c4e --- /dev/null +++ b/resources/js/views/Legal.vue @@ -0,0 +1,7 @@ + + + diff --git a/resources/js/views/Login.vue b/resources/js/views/Login.vue new file mode 100644 index 0000000..e4f3e3d --- /dev/null +++ b/resources/js/views/Login.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/resources/js/views/Logout.vue b/resources/js/views/Logout.vue new file mode 100644 index 0000000..e4887b1 --- /dev/null +++ b/resources/js/views/Logout.vue @@ -0,0 +1,56 @@ + + + + + diff --git a/resources/js/views/NewsList.vue b/resources/js/views/NewsList.vue new file mode 100644 index 0000000..50debb4 --- /dev/null +++ b/resources/js/views/NewsList.vue @@ -0,0 +1,62 @@ + + + + + diff --git a/resources/js/views/NewsView.vue b/resources/js/views/NewsView.vue new file mode 100644 index 0000000..175b32f --- /dev/null +++ b/resources/js/views/NewsView.vue @@ -0,0 +1,166 @@ + + + + + diff --git a/resources/js/views/Privacy.vue b/resources/js/views/Privacy.vue new file mode 100644 index 0000000..ba90a20 --- /dev/null +++ b/resources/js/views/Privacy.vue @@ -0,0 +1,334 @@ + + + diff --git a/resources/js/views/Register.vue b/resources/js/views/Register.vue new file mode 100644 index 0000000..efb8586 --- /dev/null +++ b/resources/js/views/Register.vue @@ -0,0 +1,272 @@ + + + diff --git a/resources/js/views/ResendEmailVerify.vue b/resources/js/views/ResendEmailVerify.vue new file mode 100644 index 0000000..f7d7c2f --- /dev/null +++ b/resources/js/views/ResendEmailVerify.vue @@ -0,0 +1,128 @@ + + + + + diff --git a/resources/js/views/ResetPassword.vue b/resources/js/views/ResetPassword.vue new file mode 100644 index 0000000..dc19330 --- /dev/null +++ b/resources/js/views/ResetPassword.vue @@ -0,0 +1,150 @@ + + + + + diff --git a/resources/js/views/Rules.vue b/resources/js/views/Rules.vue new file mode 100644 index 0000000..94ea15e --- /dev/null +++ b/resources/js/views/Rules.vue @@ -0,0 +1,40 @@ + + + diff --git a/resources/js/views/Terms.vue b/resources/js/views/Terms.vue new file mode 100644 index 0000000..bce047c --- /dev/null +++ b/resources/js/views/Terms.vue @@ -0,0 +1,564 @@ + diff --git a/resources/js/views/WorkshopList.vue b/resources/js/views/WorkshopList.vue new file mode 100644 index 0000000..998e2f5 --- /dev/null +++ b/resources/js/views/WorkshopList.vue @@ -0,0 +1,126 @@ + + + + + diff --git a/resources/js/views/WorkshopView.vue b/resources/js/views/WorkshopView.vue new file mode 100644 index 0000000..b8e1b6b --- /dev/null +++ b/resources/js/views/WorkshopView.vue @@ -0,0 +1,272 @@ + + + + + diff --git a/resources/js/views/dashboard/CreatePost.vue b/resources/js/views/dashboard/CreatePost.vue new file mode 100644 index 0000000..5e2ddc9 --- /dev/null +++ b/resources/js/views/dashboard/CreatePost.vue @@ -0,0 +1,182 @@ + + + + + diff --git a/resources/js/views/dashboard/EventEdit.vue b/resources/js/views/dashboard/EventEdit.vue new file mode 100644 index 0000000..93afac0 --- /dev/null +++ b/resources/js/views/dashboard/EventEdit.vue @@ -0,0 +1,423 @@ + + + diff --git a/resources/js/views/dashboard/EventList.vue b/resources/js/views/dashboard/EventList.vue new file mode 100644 index 0000000..658bd85 --- /dev/null +++ b/resources/js/views/dashboard/EventList.vue @@ -0,0 +1,199 @@ + + + + + diff --git a/resources/js/views/dashboard/MediaEdit.vue b/resources/js/views/dashboard/MediaEdit.vue new file mode 100644 index 0000000..daf98a7 --- /dev/null +++ b/resources/js/views/dashboard/MediaEdit.vue @@ -0,0 +1,241 @@ + + + diff --git a/resources/js/views/dashboard/MediaList.vue b/resources/js/views/dashboard/MediaList.vue new file mode 100644 index 0000000..cae7f9c --- /dev/null +++ b/resources/js/views/dashboard/MediaList.vue @@ -0,0 +1,215 @@ + + + diff --git a/resources/js/views/dashboard/PostEdit.vue b/resources/js/views/dashboard/PostEdit.vue new file mode 100644 index 0000000..f5a339a --- /dev/null +++ b/resources/js/views/dashboard/PostEdit.vue @@ -0,0 +1,320 @@ + + + diff --git a/resources/js/views/dashboard/PostList.vue b/resources/js/views/dashboard/PostList.vue new file mode 100644 index 0000000..c1ae3a1 --- /dev/null +++ b/resources/js/views/dashboard/PostList.vue @@ -0,0 +1,199 @@ + + + + + diff --git a/resources/js/views/dashboard/UserEdit.vue b/resources/js/views/dashboard/UserEdit.vue new file mode 100644 index 0000000..304d3dd --- /dev/null +++ b/resources/js/views/dashboard/UserEdit.vue @@ -0,0 +1,199 @@ + + + diff --git a/resources/js/views/dashboard/UserList.vue b/resources/js/views/dashboard/UserList.vue new file mode 100644 index 0000000..615fef7 --- /dev/null +++ b/resources/js/views/dashboard/UserList.vue @@ -0,0 +1,168 @@ + + + + + diff --git a/resources/views/app.blade.php b/resources/views/app.blade.php new file mode 100644 index 0000000..14dd061 --- /dev/null +++ b/resources/views/app.blade.php @@ -0,0 +1,14 @@ + + + + + + + STEMMechanics + + +

+ @vite('resources/js/main.js') + + diff --git a/resources/views/emails/user/change_email_verify.blade.php b/resources/views/emails/user/change_email_verify.blade.php new file mode 100644 index 0000000..7c47e9d --- /dev/null +++ b/resources/views/emails/user/change_email_verify.blade.php @@ -0,0 +1,103 @@ + + + + + + + STEMMechanics - Verify Email Address + + + +
+ + STEMMechanics Logo + +

Hey {{ $user?->username }},

+

We just need to confirm that this is your new email address. Click this link stemmechanics.com.au/verify-email and if you are asked, use the confirm code:

+ {{ $code }} +
+ +
+ + + diff --git a/resources/views/emails/user/change_email_verify_plain.blade.php b/resources/views/emails/user/change_email_verify_plain.blade.php new file mode 100644 index 0000000..89a9b78 --- /dev/null +++ b/resources/views/emails/user/change_email_verify_plain.blade.php @@ -0,0 +1,16 @@ +Hey {{ $user?->username }}, + +We just need to confirm that this is your new email address. + +Enter the following URL in your browser: + +https://www.stemmechanics.com.au/verify-email + +and when asked, use the confirm code: {{ $code }} + +Need help or got feedback? Contact us at https://www.stemmechanics.com.au/contact or touch base on twitter at @stemmechanics + +-- +Sent by STEMMechanics +https://www.stemmechanics.com.au/ +PO Box 36, Edmonton, QLD 4869, Australia diff --git a/resources/views/emails/user/changed_email.blade.php b/resources/views/emails/user/changed_email.blade.php new file mode 100644 index 0000000..9caa4d0 --- /dev/null +++ b/resources/views/emails/user/changed_email.blade.php @@ -0,0 +1,116 @@ + + + + + + + STEMMechanics - Changed Password + + + +
+ + STEMMechanics Logo + +

Yo {{ $user?->username }}

+

Just a quick word that your email has been changed to {{ $new_email }}.

+

If this was not you, please contact us by replying to this email so we can disable your account.

+
+ +
+ + + diff --git a/resources/views/emails/user/changed_email_plain.blade.php b/resources/views/emails/user/changed_email_plain.blade.php new file mode 100644 index 0000000..8100ccc --- /dev/null +++ b/resources/views/emails/user/changed_email_plain.blade.php @@ -0,0 +1,12 @@ +Yo {{ $user?->username }} + +Just a quick word that your email has been changed to {{ $new_email }}. + +If this was not you, please contact us by replying to this email so we can disable your account. + +Need help or got feedback? Contact us at https://www.stemmechanics.com.au/contact or touch base on twitter at @stemmechanics + +-- +Sent by STEMMechanics +https://www.stemmechanics.com.au/ +PO Box 36, Edmonton, QLD 4869, Australia \ No newline at end of file diff --git a/resources/views/emails/user/changed_password.blade.php b/resources/views/emails/user/changed_password.blade.php new file mode 100644 index 0000000..45f8619 --- /dev/null +++ b/resources/views/emails/user/changed_password.blade.php @@ -0,0 +1,116 @@ + + + + + + + STEMMechanics - Changed Password + + + +
+ + STEMMechanics Logo + +

Yo {{ $user?->username }}

+

Just a quick word that your password has been changed.

+

If this was not you, please contact us by replying to this email so we can disable your account.

+
+ +
+ + + diff --git a/resources/views/emails/user/changed_password_plain.blade.php b/resources/views/emails/user/changed_password_plain.blade.php new file mode 100644 index 0000000..1d59f7a --- /dev/null +++ b/resources/views/emails/user/changed_password_plain.blade.php @@ -0,0 +1,12 @@ +Yo {{ $user?->username }} + +Just a quick word that your password has been changed. + +If this was not you, please contact us by replying to this email so we can disable your account. + +Need help or got feedback? Contact us at https://www.stemmechanics.com.au/contact or touch base on twitter at @stemmechanics + +-- +Sent by STEMMechanics +https://www.stemmechanics.com.au/ +PO Box 36, Edmonton, QLD 4869, Australia \ No newline at end of file diff --git a/resources/views/emails/user/contact.blade.php b/resources/views/emails/user/contact.blade.php new file mode 100644 index 0000000..aa341a4 --- /dev/null +++ b/resources/views/emails/user/contact.blade.php @@ -0,0 +1,58 @@ + + + + + + + STEMMechanics - Contact from Website + + + +
+

{{ $content }}

+

From: {{ $name }} - {{ $email }}

+
+ + + diff --git a/resources/views/emails/user/contact_plain.blade.php b/resources/views/emails/user/contact_plain.blade.php new file mode 100644 index 0000000..f1236c9 --- /dev/null +++ b/resources/views/emails/user/contact_plain.blade.php @@ -0,0 +1,8 @@ +{{ $content }} + +From: {{ $name }} - {{ $email }} + +-- +Sent by STEMMechanics +https://www.stemmechanics.com.au/ +PO Box 36, Edmonton, QLD 4869, Australia diff --git a/resources/views/emails/user/email_verify.blade.php b/resources/views/emails/user/email_verify.blade.php new file mode 100644 index 0000000..4edf99d --- /dev/null +++ b/resources/views/emails/user/email_verify.blade.php @@ -0,0 +1,104 @@ + + + + + + + STEMMechanics - Verify Email Address + + + +
+ + STEMMechanics Logo + +

Welcome {{ $user?->username }},

+

We've heard you would like to try out our workshops and courses!

+

Before we can let you loose on our website, we need to make sure you are a real person and not a pesky robot or cat. Click this link stemmechanics.com.au/verify-email and if you are asked, use the confirm code:

+ {{ $code }} +
+ +
+ + + diff --git a/resources/views/emails/user/email_verify_plain.blade.php b/resources/views/emails/user/email_verify_plain.blade.php new file mode 100644 index 0000000..054ba8b --- /dev/null +++ b/resources/views/emails/user/email_verify_plain.blade.php @@ -0,0 +1,17 @@ +Welcome {{ $user?->username }}, + +We've heard you would like to try out our workshops and courses! +Before we can let you loose on our website, we need to make sure you are a real person and not a pesky robot or cat. + +Enter the following URL in your browser: + +https://www.stemmechanics.com.au/verify-email + +and when asked, use the confirm code: {{ $code }} + +Need help or got feedback? Contact us at https://www.stemmechanics.com.au/contact or touch base on twitter at @stemmechanics + +-- +Sent by STEMMechanics +https://www.stemmechanics.com.au/ +PO Box 36, Edmonton, QLD 4869, Australia diff --git a/resources/views/emails/user/forgot_password.blade.php b/resources/views/emails/user/forgot_password.blade.php new file mode 100644 index 0000000..9a1d52f --- /dev/null +++ b/resources/views/emails/user/forgot_password.blade.php @@ -0,0 +1,117 @@ + + + + + + + STEMMechanics - Forgot Password + + + +
+ + STEMMechanics Logo + +

Yo {{ $user?->username }}

+

We all forget things sometimes! But you can reset your password by clicking the link Reset Password and entering the following code:

+ {{ $code }} +

But if you didn't ask to reset your password, you can delete this email and your password will remain the same.

+
+ +
+ + + diff --git a/resources/views/emails/user/forgot_password_plain.blade.php b/resources/views/emails/user/forgot_password_plain.blade.php new file mode 100644 index 0000000..472057a --- /dev/null +++ b/resources/views/emails/user/forgot_password_plain.blade.php @@ -0,0 +1,14 @@ +Yo {{ $user?->username }} + +We all forget things sometimes! But you can reset your password typing the following into your browser https://www.stemmechanics.com.au/reset-password and entering the following code: + +{{ $code }} + +But if you didn't ask to reset your password, you can delete this email and we will keep your current password. + +Need help or got feedback? Contact us at https://www.stemmechanics.com.au/contact or touch base on twitter at @stemmechanics + +-- +Sent by STEMMechanics +https://www.stemmechanics.com.au/ +PO Box 36, Edmonton, QLD 4869, Australia \ No newline at end of file diff --git a/resources/views/emails/user/forgot_username.blade.php b/resources/views/emails/user/forgot_username.blade.php new file mode 100644 index 0000000..6a47c3f --- /dev/null +++ b/resources/views/emails/user/forgot_username.blade.php @@ -0,0 +1,132 @@ + + + + + + + STEMMechanics - Forgot Username + + + +
+ + STEMMechanics Logo + + @if (count($usernames) > 2) +

Yo {{ $usernames[0] }}, {{ $usernames[1] }}, or is it {{ $usernames[count($usernames)-1] }}?

+ @elseif (count($usernames) > 1) +

Yo {{ $usernames[0] }} or is it {{ $usernames[1] }}?

+ @else +

Yo {{ $usernames[0] }},

+ @endif + @if (count($usernames) == 1) +

Guess what, your username is {{ $usernames[0] }}.

+ @else +

We have the following usernames registered to this email address:

+
+
    + @foreach($usernames as $username) +
  • {{ $username }}
  • + @endforeach +
+
+ @endif +
+ +
+ + + diff --git a/resources/views/emails/user/forgot_username_plain.blade.php b/resources/views/emails/user/forgot_username_plain.blade.php new file mode 100644 index 0000000..93b1f3e --- /dev/null +++ b/resources/views/emails/user/forgot_username_plain.blade.php @@ -0,0 +1,24 @@ +@if (count($usernames) > 2) +Yo {{ $usernames[0] }}, {{ $usernames[1] }}, or is it {{ $usernames[count($usernames)-1] }}? +@elseif (count($usernames) > 1) +Yo {{ $usernames[0] }} or is it {{ $usernames[1] }}? +@else +Yo {{ $usernames[0] }}, +@endif + +@if (count($usernames) == 1) +Guess what, your username is {{ $usernames[0] }}. +@else +We have the following usernames registered to this email address: + +@foreach($usernames as $username) +- {{ $username }} +@endforeach +@endif + +Need help or got feedback? Contact us at https://www.stemmechanics.com.au/contact or touch base on twitter at @stemmechanics + +-- +Sent by STEMMechanics +https://www.stemmechanics.com.au/ +PO Box 36, Edmonton, QLD 4869, Australia \ No newline at end of file diff --git a/routes/api.php b/routes/api.php new file mode 100644 index 0000000..754ea46 --- /dev/null +++ b/routes/api.php @@ -0,0 +1,51 @@ +group(function () { + Route::post('/logout', [AuthController::class, 'logout']); + Route::get('/me', [AuthController::class, 'me']); +}); + +Route::any('{any}', function () { + return response()->json(['message' => 'Resource not found'], 404); +})->where('any', '.*'); diff --git a/routes/channels.php b/routes/channels.php new file mode 100644 index 0000000..5d451e1 --- /dev/null +++ b/routes/channels.php @@ -0,0 +1,18 @@ +id === (int) $id; +}); diff --git a/routes/console.php b/routes/console.php new file mode 100644 index 0000000..e05f4c9 --- /dev/null +++ b/routes/console.php @@ -0,0 +1,19 @@ +comment(Inspiring::quote()); +})->purpose('Display an inspiring quote'); diff --git a/routes/web.php b/routes/web.php new file mode 100644 index 0000000..6481dc4 --- /dev/null +++ b/routes/web.php @@ -0,0 +1,23 @@ +where('any', '.*'); 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..05c4471 --- /dev/null +++ b/storage/framework/.gitignore @@ -0,0 +1,9 @@ +compiled.php +config.php +down +events.scanned.php +maintenance.php +routes.php +routes.scanned.php +schedule-* +services.json 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/tests/CreatesApplication.php b/tests/CreatesApplication.php new file mode 100644 index 0000000..ab92402 --- /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..1eafba6 --- /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/vite.config.js b/vite.config.js new file mode 100644 index 0000000..709dcc5 --- /dev/null +++ b/vite.config.js @@ -0,0 +1,32 @@ +import { defineConfig } from "vite"; +import laravel from "laravel-vite-plugin"; +import vue from "@vitejs/plugin-vue"; + +export default defineConfig({ + plugins: [ + vue({ + template: { + compilerOptions: { + isCustomElement: (tag) => ["trix-editor"].includes(tag), + }, + }, + }), + laravel({ + input: ["resources/css/app.css", "resources/js/app.js"], + refresh: true, + }), + ], + css: { + preprocessorOptions: { + scss: { + additionalData: `@import "./resources/css/variables.scss";`, + }, + }, + }, + envPrefix: ["VITE_", "GOOGLE_RECAPTCHA_SITE_KEY", "APP_URL"], + // resolve: { + // alias: { + // vue: 'vue/dist/vue.esm-bundler.js', + // }, + // }, +});