From 18dc8fb40f3804433eeaf80796cb2304330346e0 Mon Sep 17 00:00:00 2001
From: Jepp9350 <2jepp9350@gmail.com>
Date: Tue, 25 Feb 2025 08:20:04 +0100
Subject: [PATCH] Add Department POS module and related views
Introduced Department POS functionality with navigation, orders, and order detail views. Set up routing and middleware for POS operations. Added base styles, assets, and updated package dependencies to support these changes.
---
.gitignore | 30 +
README.md | 29 +
index.html | 15 +
jsconfig.json | 8 +
package-lock.json | 3628 +++++++++++++++++
package.json | 40 +
public/favicon.ico | Bin 0 -> 4286 bytes
src/App.vue | 23 +
src/assets/base.css | 86 +
.../truckwash-banner-white-compressed.png | Bin 0 -> 5046 bytes
src/assets/logo.svg | 1 +
src/assets/main.css | 1 +
src/assets/piktogrammer/01.png | Bin 0 -> 79856 bytes
src/assets/piktogrammer/02.png | Bin 0 -> 46370 bytes
src/assets/piktogrammer/03.png | Bin 0 -> 72730 bytes
src/assets/piktogrammer/04.png | Bin 0 -> 34734 bytes
src/assets/piktogrammer/05.png | Bin 0 -> 72507 bytes
src/assets/piktogrammer/06.png | Bin 0 -> 49371 bytes
src/assets/piktogrammer/07.png | Bin 0 -> 73505 bytes
src/assets/piktogrammer/08.png | Bin 0 -> 50524 bytes
src/assets/piktogrammer/09.png | Bin 0 -> 54590 bytes
src/assets/piktogrammer/10.png | Bin 0 -> 36479 bytes
src/assets/piktogrammer/12.png | Bin 0 -> 67441 bytes
src/assets/piktogrammer/13.png | Bin 0 -> 48185 bytes
src/assets/piktogrammer/14.png | Bin 0 -> 41942 bytes
src/assets/piktogrammer/placeholder.png | Bin 0 -> 35880 bytes
src/components/displays/Categories.vue | 39 +
src/components/displays/Customers.vue | 26 +
.../displays/DepartmentSelector.vue | 22 +
src/components/displays/Departments.vue | 37 +
.../displays/NumberPlateScanners.vue | 33 +
src/components/displays/Orders.vue | 15 +
src/components/displays/PopperDefault.vue | 69 +
src/components/displays/Products.vue | 27 +
src/components/displays/Users.vue | 25 +
.../buttons/ActionSettingsWheelButton.vue | 35 +
.../buttons/ActionSettingsWheelItem.vue | 137 +
.../displays/buttons/EditableTableColumn.vue | 57 +
.../department/bookings/bookingsTable.vue | 67 +
.../DepartmentModulesDisplay.vue | 105 +
.../department/pos/PosDepartmentMVP.vue | 25 +
.../pos/PosLastScannedLicensePlates.vue | 293 ++
.../displays/department/pos/PosNotes.vue | 35 +
.../department/pos/PosOrderItemsCurrent.vue | 210 +
.../department/pos/PosSelectedCustomer.vue | 208 +
.../department/pos/order/orderItemsTable.vue | 49 +
.../department/pos/orders/ordersTable.vue | 205 +
.../pos/steps/PosDepartmentStep1.vue | 39 +
.../pos/steps/PosDepartmentStep2.vue | 42 +
.../pos/steps/PosDepartmentStep3.vue | 39 +
.../displays/pagination/ExamplePagination.vue | 21 +
.../displays/pagination/PaginationDisplay.vue | 46 +
.../pagination/PaginationNavigation.vue | 115 +
.../DepartmentPos/BookingsPagination.vue | 45 +
.../models/DepartmentPos/OrdersPagination.vue | 82 +
.../CategoriesPagination.vue | 56 +
.../CustomersPagination.vue | 56 +
.../DepartmentsPagination.vue | 54 +
.../NumberPlateScannersPagination.vue | 54 +
.../SuperUserDashboard/ProductsPagination.vue | 69 +
.../SuperUserDashboard/RolesPagination.vue | 54 +
.../SuperUserDashboard/UsersPagination.vue | 70 +
.../UserDashboard/BookingsPagination.vue | 167 +
.../models/UserDashboard/OrdersPagination.vue | 37 +
.../UserDashboard/VehiclesPagination.vue | 33 +
src/components/displays/piktogrammer.vue | 11 +
.../displays/statistics/StatisticsOptions.vue | 74 +
.../configuration/ConfigurationCategory.vue | 61 +
.../configuration/ConfigurationError.vue | 25 +
.../configuration/ConfigurationInput.vue | 76 +
.../ConfigurationInputNumber.vue | 76 +
.../configuration/ConfigurationLoader.vue | 26 +
.../configuration/ConfigurationSecretKey.vue | 84 +
.../configuration/ConfigurationSelect.vue | 38 +
.../ConfigurationSelectObject.vue | 19 +
.../configuration/ConfigurationSwitch.vue | 36 +
.../superuser/system/DatabaseDisplay.vue | 16 +
.../superuser/tables/categoriesTable.vue | 56 +
.../superuser/tables/customersTable.vue | 162 +
.../tables/departmentCategoriesTable.vue | 92 +
.../superuser/tables/departmentsTable.vue | 82 +
.../tables/numberPlateScannersTable.vue | 67 +
.../superuser/tables/productsTable.vue | 184 +
.../displays/superuser/tables/rolesTable.vue | 75 +
.../displays/superuser/tables/usersTable.vue | 69 +
.../displays/user/bookings/bookingsTable.vue | 397 ++
.../displays/user/invoices/invoicesTable.vue | 96 +
.../displays/user/vehicles/addVehicleForm.vue | 44 +
.../displays/user/vehicles/vehiclesTable.vue | 107 +
.../userbuttons/RoundedUserButton.vue | 20 +
.../forms/auth/LoginEmployeeForm.vue | 164 +
src/components/forms/auth/LoginForm.vue | 103 +
src/components/forms/auth/authSignOutForm.vue | 28 +
.../department/pos/SelectCustomerFormPOS.vue | 124 +
.../department/pos/SelectProductsFormPOS.vue | 441 ++
.../forms/department/pos/buttons/Cancel.vue | 11 +
.../forms/department/pos/buttons/NextStep.vue | 12 +
.../department/pos/error/NextStepError.vue | 13 +
.../pos/input/LicensePlateInput.vue | 252 ++
.../forms/superUser/createDepartmentForm.vue | 41 +
.../forms/superUser/createNumberPlateScan.vue | 59 +
.../createNumberPlateScannerForm.vue | 54 +
.../forms/superUser/createOrderForm.vue | 60 +
.../forms/superUser/createProductForm.vue | 65 +
.../superUser/createUserDiscountForm.vue | 53 +
.../forms/superUser/createUserForm.vue | 51 +
.../forms/superUser/editDepartmentForm.vue | 47 +
.../superUser/editNumberPlateScannerForm.vue | 47 +
.../forms/superUser/editOrderForm.vue | 53 +
.../forms/superUser/editOrderItemForm.vue | 64 +
.../forms/superUser/editOrderNotesForm.vue | 37 +
.../forms/superUser/editProductForm.vue | 71 +
.../forms/superUser/editUserForm.vue | 53 +
.../forms/user/addVehicleUserForm.vue | 47 +
src/components/global/Footer.vue | 32 +
src/components/global/PageLoader.vue | 13 +
src/components/global/PageTitle.vue | 26 +
src/components/global/ShowErrorField.vue | 20 +
src/components/global/Theme.vue | 25 +
src/components/global/UserNavigation.vue | 53 +
.../numberplatescanners/Scanners.vue | 50 +
src/components/numberplatescanners/Scans.vue | 47 +
src/components/objects/booking_object.vue | 43 +
.../page/wrappers/AuthPageWrapper.vue | 13 +
.../page/wrappers/DefaultPageWrapper.vue | 14 +
.../wrappers/NotFoundFallBackPageWrapper.vue | 32 +
.../page/wrappers/RestrictedPageWrapper.vue | 75 +
src/components/pagination/departmentTabs.vue | 43 +
src/components/pagination/paginatedList.vue | 227 ++
.../request/HandleEconomicError.vue | 75 +
src/components/request/HandleGlobalError.vue | 54 +
.../request/LoadButtonWhileAwait.vue | 27 +
.../search/economic/customerSearch.vue | 55 +
.../search/economic/customerSearchField.vue | 14 +
.../economic/exportOrderToDraftButton.vue | 27 +
.../economic/exportOrderToInvoiceButton.vue | 32 +
.../exportOrderToInvoiceStripeButton.vue | 53 +
.../economic/getOrderInvoicePDFButton.vue | 27 +
.../removeOrderDraftInvoiceButton.vue | 26 +
src/components/session/Session.vue | 148 +
.../session/authenticatedRequest.vue | 36 +
.../token/AdminUser/Customer/codes.vue | 18 +
.../AdminUser/Customer/fromCustomerNumber.vue | 17 +
.../token/AdminUser/Invoices/Invoices.vue | 33 +
.../session/token/AdminUser/Plates/Plates.vue | 30 +
.../token/AdminUser/Statistics/Statistics.vue | 138 +
.../session/token/AdminUserObject.vue | 23 +
src/components/session/token/SessionUser.vue | 260 ++
.../token/SessionUser/EditFieldForm.vue | 80 +
.../token/SessionUser/Objects/Categories.vue | 137 +
.../Objects/DepartmentCategories.vue | 130 +
.../token/SessionUser/Objects/Departments.vue | 184 +
.../SessionUser/Objects/ObjectsGlobal.vue | 397 ++
.../token/SessionUser/Objects/Permissions.vue | 59 +
.../SessionUser/Objects/ProductOptions.vue | 146 +
.../token/SessionUser/Objects/Products.vue | 205 +
.../token/SessionUser/Objects/Roles.vue | 137 +
.../Objects/economicDepartments.vue | 129 +
.../SessionUser/Objects/economicProducts.vue | 102 +
.../token/SessionUser/reCAPTCHA/reCAPTCHA.vue | 18 +
.../session/token/superUser/cron.vue | 99 +
.../superUser/modules/Backups/Backups.vue | 30 +
.../superUser/modules/Backups/Config.vue | 48 +
.../superUser/modules/Economic/Config.vue | 40 +
.../superUser/modules/Economic/Customer.vue | 23 +
.../Customer/EconomicCustomerBarred.vue | 18 +
.../superUser/modules/Economic/Economic.vue | 49 +
.../superUser/modules/Economic/Layouts.vue | 20 +
.../token/superUser/modules/Email/Config.vue | 128 +
.../token/superUser/modules/Email/Email.vue | 23 +
.../superUser/modules/motorapi/Config.vue | 56 +
.../superUser/modules/motorapi/MotorAPI.vue | 21 +
.../superUser/modules/reCAPTCHA/ApiKeys.vue | 20 +
.../superUser/modules/reCAPTCHA/Config.vue | 56 +
.../superUser/modules/reCAPTCHA/reCAPTCHA.vue | 15 +
.../token/superUser/modules/stripe/Config.vue | 64 +
.../token/superUser/modules/stripe/Stripe.vue | 82 +
.../token/superUser/systemDatabase.vue | 27 +
.../session/token/superUserObject.vue | 78 +
.../session/unauthenticatedRequest.vue | 13 +
.../session/user/UserVehicleRequest.vue | 38 +
src/components/shop/CustomerAttributes.vue | 48 +
src/components/shop/CustomerNotes.vue | 44 +
.../shop/DownloadWashCertificate.vue | 56 +
src/components/shop/Orders.vue | 92 +
src/components/shop/OrdersItems.vue | 63 +
src/components/shop/POSDepartmentProcess.vue | 751 ++++
src/components/shop/Products.vue | 77 +
src/main.js | 19 +
src/middleware/admin.vue | 18 +
src/middleware/adminMiddleware.js | 12 +
src/middleware/authMiddleware.js | 11 +
src/middleware/guestMiddleware.js | 9 +
src/middleware/index.js | 35 +
src/middleware/superUserMiddleware.js | 12 +
src/router.js | 346 ++
src/store/user.vue | 29 +
src/themes/Dark.sass | 1 +
src/themes/Default.sass | 3 +
src/themes/elements/Footer.sass | 6 +
src/views/DefaultPage.vue | 34 +
src/views/auth/Employee.vue | 17 +
src/views/auth/Login.vue | 17 +
src/views/auth/Register.vue | 13 +
src/views/dashboards/DepartmentDashboard.vue | 39 +
src/views/dashboards/SuperUserDashboard.vue | 41 +
src/views/dashboards/UserDashboard.vue | 16 +
.../DepartmentDashboardHero.vue | 24 +
.../departmentDashboardNavigation.vue | 76 +
.../modules/Pos/DepartmentPos.vue | 21 +
.../modules/Pos/DepartmentPosNavigation.vue | 37 +
.../modules/Pos/DepartmentPosOrder.vue | 365 ++
.../modules/Pos/DepartmentPosOrders.vue | 29 +
.../modules/bookings/DepartmentBookings.vue | 20 +
.../superUserDashboard/Categories.vue | 21 +
.../superUserDashboard/Customers.vue | 17 +
.../superUserDashboard/Departments.vue | 20 +
.../NumberPlateScanners.vue | 20 +
.../dashboards/superUserDashboard/Orders.vue | 20 +
.../superUserDashboard/Products.vue | 20 +
.../SuperUserDashboardNavigation.vue | 55 +
.../dashboards/superUserDashboard/Users.vue | 20 +
.../configuration/Configuration.vue | 28 +
.../configuration/ConfigurationBackups.vue | 139 +
.../configuration/ConfigurationEconomic.vue | 101 +
.../configuration/ConfigurationEmail.vue | 266 ++
.../configuration/ConfigurationMotorAPI.vue | 177 +
.../configuration/ConfigurationReCAPTCHA.vue | 123 +
.../configuration/ConfigurationStripe.vue | 206 +
.../ConfigurationSubPageWrapper.vue | 24 +
...erUserDashboardConfigurationNavigation.vue | 44 +
.../SuperUserSelectedConfigurationObject.vue | 92 +
.../department/Department.vue | 35 +
.../department/DepartmentCategories.vue | 48 +
.../department/DepartmentPricing.vue | 66 +
.../department/DepartmentSubPageWrapper.vue | 19 +
...SuperUserDashboardDepartmentNavigation.vue | 42 +
.../SuperUserSelectedDepartmentObject.vue | 92 +
.../stripe/DepartmentStripeSetup.vue | 96 +
.../DepartmentStripeTerminalsReaders.vue | 79 +
...serDashboardDepartmentStripeNavigation.vue | 40 +
.../superUserDashboard/roles/Roles.vue | 35 +
.../roles/RolesSubPageWrapper.vue | 20 +
.../SuperUserDashboardRolesNavigation.vue | 39 +
.../roles/SuperUserRolesPermissions.vue | 98 +
.../roles/SuperUserSelectedRolesObject.vue | 92 +
.../statistics/DepartmentPricing.vue | 66 +
.../statistics/Statistics.vue | 28 +
.../statistics/StatisticsOverview.vue | 131 +
.../statistics/StatisticsSubPageWrapper.vue | 22 +
...SuperUserDashboardStatisticsNavigation.vue | 39 +
.../SuperUserSelectedStatisticsObject.vue | 92 +
.../displays/StatisticsBookings.vue | 36 +
.../statistics/displays/StatisticsLine.vue | 36 +
.../overview/StatisticsDepartmentGoal.vue | 30 +
.../overview/StatisticsIncomeCard.vue | 101 +
.../system/DatabaseOverview.vue | 19 +
.../user/SuperUserDashboardUserNavigation.vue | 42 +
.../user/SuperUserSelectedUserObject.vue | 187 +
.../superUserDashboard/user/User.vue | 83 +
.../superUserDashboard/user/UserOrders.vue | 119 +
.../superUserDashboard/user/UserPricing.vue | 125 +
.../user/UserSubPageWrapper.vue | 21 +
src/views/dashboards/userDashboard/Home.vue | 21 +
.../userDashboard/UserDashboardHero.vue | 27 +
.../userDashboard/bookings/MyBookings.vue | 29 +
.../userDashboard/orders/MyOrder.vue | 101 +
.../userDashboard/orders/MyOrders.vue | 18 +
.../userDashboard/userDashboardNavigation.vue | 45 +
.../userDashboard/vehicles/MyVehicles.vue | 16 +
.../userDashboard/vehicles/NewVehicle.vue | 14 +
src/views/errors/NotFound.vue | 14 +
test.html | 3539 ++++++++++++++++
vite.config.js | 22 +
274 files changed, 24678 insertions(+)
create mode 100644 .gitignore
create mode 100644 README.md
create mode 100644 index.html
create mode 100644 jsconfig.json
create mode 100644 package-lock.json
create mode 100644 package.json
create mode 100644 public/favicon.ico
create mode 100644 src/App.vue
create mode 100644 src/assets/base.css
create mode 100644 src/assets/branding/truckwash-banner-white-compressed.png
create mode 100644 src/assets/logo.svg
create mode 100644 src/assets/main.css
create mode 100644 src/assets/piktogrammer/01.png
create mode 100644 src/assets/piktogrammer/02.png
create mode 100644 src/assets/piktogrammer/03.png
create mode 100644 src/assets/piktogrammer/04.png
create mode 100644 src/assets/piktogrammer/05.png
create mode 100644 src/assets/piktogrammer/06.png
create mode 100644 src/assets/piktogrammer/07.png
create mode 100644 src/assets/piktogrammer/08.png
create mode 100644 src/assets/piktogrammer/09.png
create mode 100644 src/assets/piktogrammer/10.png
create mode 100644 src/assets/piktogrammer/12.png
create mode 100644 src/assets/piktogrammer/13.png
create mode 100644 src/assets/piktogrammer/14.png
create mode 100644 src/assets/piktogrammer/placeholder.png
create mode 100644 src/components/displays/Categories.vue
create mode 100644 src/components/displays/Customers.vue
create mode 100644 src/components/displays/DepartmentSelector.vue
create mode 100644 src/components/displays/Departments.vue
create mode 100644 src/components/displays/NumberPlateScanners.vue
create mode 100644 src/components/displays/Orders.vue
create mode 100644 src/components/displays/PopperDefault.vue
create mode 100644 src/components/displays/Products.vue
create mode 100644 src/components/displays/Users.vue
create mode 100644 src/components/displays/buttons/ActionSettingsWheelButton.vue
create mode 100644 src/components/displays/buttons/ActionSettingsWheelItem.vue
create mode 100644 src/components/displays/buttons/EditableTableColumn.vue
create mode 100644 src/components/displays/department/bookings/bookingsTable.vue
create mode 100644 src/components/displays/department/moduleNavigation/DepartmentModulesDisplay.vue
create mode 100644 src/components/displays/department/pos/PosDepartmentMVP.vue
create mode 100644 src/components/displays/department/pos/PosLastScannedLicensePlates.vue
create mode 100644 src/components/displays/department/pos/PosNotes.vue
create mode 100644 src/components/displays/department/pos/PosOrderItemsCurrent.vue
create mode 100644 src/components/displays/department/pos/PosSelectedCustomer.vue
create mode 100644 src/components/displays/department/pos/order/orderItemsTable.vue
create mode 100644 src/components/displays/department/pos/orders/ordersTable.vue
create mode 100644 src/components/displays/department/pos/steps/PosDepartmentStep1.vue
create mode 100644 src/components/displays/department/pos/steps/PosDepartmentStep2.vue
create mode 100644 src/components/displays/department/pos/steps/PosDepartmentStep3.vue
create mode 100644 src/components/displays/pagination/ExamplePagination.vue
create mode 100644 src/components/displays/pagination/PaginationDisplay.vue
create mode 100644 src/components/displays/pagination/PaginationNavigation.vue
create mode 100644 src/components/displays/pagination/models/DepartmentPos/BookingsPagination.vue
create mode 100644 src/components/displays/pagination/models/DepartmentPos/OrdersPagination.vue
create mode 100644 src/components/displays/pagination/models/SuperUserDashboard/CategoriesPagination.vue
create mode 100644 src/components/displays/pagination/models/SuperUserDashboard/CustomersPagination.vue
create mode 100644 src/components/displays/pagination/models/SuperUserDashboard/DepartmentsPagination.vue
create mode 100644 src/components/displays/pagination/models/SuperUserDashboard/NumberPlateScannersPagination.vue
create mode 100644 src/components/displays/pagination/models/SuperUserDashboard/ProductsPagination.vue
create mode 100644 src/components/displays/pagination/models/SuperUserDashboard/RolesPagination.vue
create mode 100644 src/components/displays/pagination/models/SuperUserDashboard/UsersPagination.vue
create mode 100644 src/components/displays/pagination/models/UserDashboard/BookingsPagination.vue
create mode 100644 src/components/displays/pagination/models/UserDashboard/OrdersPagination.vue
create mode 100644 src/components/displays/pagination/models/UserDashboard/VehiclesPagination.vue
create mode 100644 src/components/displays/piktogrammer.vue
create mode 100644 src/components/displays/statistics/StatisticsOptions.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationCategory.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationError.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationInput.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationInputNumber.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationLoader.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationSecretKey.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationSelect.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationSelectObject.vue
create mode 100644 src/components/displays/superuser/configuration/ConfigurationSwitch.vue
create mode 100644 src/components/displays/superuser/system/DatabaseDisplay.vue
create mode 100644 src/components/displays/superuser/tables/categoriesTable.vue
create mode 100644 src/components/displays/superuser/tables/customersTable.vue
create mode 100644 src/components/displays/superuser/tables/departmentCategoriesTable.vue
create mode 100644 src/components/displays/superuser/tables/departmentsTable.vue
create mode 100644 src/components/displays/superuser/tables/numberPlateScannersTable.vue
create mode 100644 src/components/displays/superuser/tables/productsTable.vue
create mode 100644 src/components/displays/superuser/tables/rolesTable.vue
create mode 100644 src/components/displays/superuser/tables/usersTable.vue
create mode 100644 src/components/displays/user/bookings/bookingsTable.vue
create mode 100644 src/components/displays/user/invoices/invoicesTable.vue
create mode 100644 src/components/displays/user/vehicles/addVehicleForm.vue
create mode 100644 src/components/displays/user/vehicles/vehiclesTable.vue
create mode 100644 src/components/displays/userbuttons/RoundedUserButton.vue
create mode 100644 src/components/forms/auth/LoginEmployeeForm.vue
create mode 100644 src/components/forms/auth/LoginForm.vue
create mode 100644 src/components/forms/auth/authSignOutForm.vue
create mode 100644 src/components/forms/department/pos/SelectCustomerFormPOS.vue
create mode 100644 src/components/forms/department/pos/SelectProductsFormPOS.vue
create mode 100644 src/components/forms/department/pos/buttons/Cancel.vue
create mode 100644 src/components/forms/department/pos/buttons/NextStep.vue
create mode 100644 src/components/forms/department/pos/error/NextStepError.vue
create mode 100644 src/components/forms/department/pos/input/LicensePlateInput.vue
create mode 100644 src/components/forms/superUser/createDepartmentForm.vue
create mode 100644 src/components/forms/superUser/createNumberPlateScan.vue
create mode 100644 src/components/forms/superUser/createNumberPlateScannerForm.vue
create mode 100644 src/components/forms/superUser/createOrderForm.vue
create mode 100644 src/components/forms/superUser/createProductForm.vue
create mode 100644 src/components/forms/superUser/createUserDiscountForm.vue
create mode 100644 src/components/forms/superUser/createUserForm.vue
create mode 100644 src/components/forms/superUser/editDepartmentForm.vue
create mode 100644 src/components/forms/superUser/editNumberPlateScannerForm.vue
create mode 100644 src/components/forms/superUser/editOrderForm.vue
create mode 100644 src/components/forms/superUser/editOrderItemForm.vue
create mode 100644 src/components/forms/superUser/editOrderNotesForm.vue
create mode 100644 src/components/forms/superUser/editProductForm.vue
create mode 100644 src/components/forms/superUser/editUserForm.vue
create mode 100644 src/components/forms/user/addVehicleUserForm.vue
create mode 100644 src/components/global/Footer.vue
create mode 100644 src/components/global/PageLoader.vue
create mode 100644 src/components/global/PageTitle.vue
create mode 100644 src/components/global/ShowErrorField.vue
create mode 100644 src/components/global/Theme.vue
create mode 100644 src/components/global/UserNavigation.vue
create mode 100644 src/components/numberplatescanners/Scanners.vue
create mode 100644 src/components/numberplatescanners/Scans.vue
create mode 100644 src/components/objects/booking_object.vue
create mode 100644 src/components/page/wrappers/AuthPageWrapper.vue
create mode 100644 src/components/page/wrappers/DefaultPageWrapper.vue
create mode 100644 src/components/page/wrappers/NotFoundFallBackPageWrapper.vue
create mode 100644 src/components/page/wrappers/RestrictedPageWrapper.vue
create mode 100644 src/components/pagination/departmentTabs.vue
create mode 100644 src/components/pagination/paginatedList.vue
create mode 100644 src/components/request/HandleEconomicError.vue
create mode 100644 src/components/request/HandleGlobalError.vue
create mode 100644 src/components/request/LoadButtonWhileAwait.vue
create mode 100644 src/components/search/economic/customerSearch.vue
create mode 100644 src/components/search/economic/customerSearchField.vue
create mode 100644 src/components/search/economic/exportOrderToDraftButton.vue
create mode 100644 src/components/search/economic/exportOrderToInvoiceButton.vue
create mode 100644 src/components/search/economic/exportOrderToInvoiceStripeButton.vue
create mode 100644 src/components/search/economic/getOrderInvoicePDFButton.vue
create mode 100644 src/components/search/economic/removeOrderDraftInvoiceButton.vue
create mode 100644 src/components/session/Session.vue
create mode 100644 src/components/session/authenticatedRequest.vue
create mode 100644 src/components/session/token/AdminUser/Customer/codes.vue
create mode 100644 src/components/session/token/AdminUser/Customer/fromCustomerNumber.vue
create mode 100644 src/components/session/token/AdminUser/Invoices/Invoices.vue
create mode 100644 src/components/session/token/AdminUser/Plates/Plates.vue
create mode 100644 src/components/session/token/AdminUser/Statistics/Statistics.vue
create mode 100644 src/components/session/token/AdminUserObject.vue
create mode 100644 src/components/session/token/SessionUser.vue
create mode 100644 src/components/session/token/SessionUser/EditFieldForm.vue
create mode 100644 src/components/session/token/SessionUser/Objects/Categories.vue
create mode 100644 src/components/session/token/SessionUser/Objects/DepartmentCategories.vue
create mode 100644 src/components/session/token/SessionUser/Objects/Departments.vue
create mode 100644 src/components/session/token/SessionUser/Objects/ObjectsGlobal.vue
create mode 100644 src/components/session/token/SessionUser/Objects/Permissions.vue
create mode 100644 src/components/session/token/SessionUser/Objects/ProductOptions.vue
create mode 100644 src/components/session/token/SessionUser/Objects/Products.vue
create mode 100644 src/components/session/token/SessionUser/Objects/Roles.vue
create mode 100644 src/components/session/token/SessionUser/Objects/economicDepartments.vue
create mode 100644 src/components/session/token/SessionUser/Objects/economicProducts.vue
create mode 100644 src/components/session/token/SessionUser/reCAPTCHA/reCAPTCHA.vue
create mode 100644 src/components/session/token/superUser/cron.vue
create mode 100644 src/components/session/token/superUser/modules/Backups/Backups.vue
create mode 100644 src/components/session/token/superUser/modules/Backups/Config.vue
create mode 100644 src/components/session/token/superUser/modules/Economic/Config.vue
create mode 100644 src/components/session/token/superUser/modules/Economic/Customer.vue
create mode 100644 src/components/session/token/superUser/modules/Economic/Customer/EconomicCustomerBarred.vue
create mode 100644 src/components/session/token/superUser/modules/Economic/Economic.vue
create mode 100644 src/components/session/token/superUser/modules/Economic/Layouts.vue
create mode 100644 src/components/session/token/superUser/modules/Email/Config.vue
create mode 100644 src/components/session/token/superUser/modules/Email/Email.vue
create mode 100644 src/components/session/token/superUser/modules/motorapi/Config.vue
create mode 100644 src/components/session/token/superUser/modules/motorapi/MotorAPI.vue
create mode 100644 src/components/session/token/superUser/modules/reCAPTCHA/ApiKeys.vue
create mode 100644 src/components/session/token/superUser/modules/reCAPTCHA/Config.vue
create mode 100644 src/components/session/token/superUser/modules/reCAPTCHA/reCAPTCHA.vue
create mode 100644 src/components/session/token/superUser/modules/stripe/Config.vue
create mode 100644 src/components/session/token/superUser/modules/stripe/Stripe.vue
create mode 100644 src/components/session/token/superUser/systemDatabase.vue
create mode 100644 src/components/session/token/superUserObject.vue
create mode 100644 src/components/session/unauthenticatedRequest.vue
create mode 100644 src/components/session/user/UserVehicleRequest.vue
create mode 100644 src/components/shop/CustomerAttributes.vue
create mode 100644 src/components/shop/CustomerNotes.vue
create mode 100644 src/components/shop/DownloadWashCertificate.vue
create mode 100644 src/components/shop/Orders.vue
create mode 100644 src/components/shop/OrdersItems.vue
create mode 100644 src/components/shop/POSDepartmentProcess.vue
create mode 100644 src/components/shop/Products.vue
create mode 100644 src/main.js
create mode 100644 src/middleware/admin.vue
create mode 100644 src/middleware/adminMiddleware.js
create mode 100644 src/middleware/authMiddleware.js
create mode 100644 src/middleware/guestMiddleware.js
create mode 100644 src/middleware/index.js
create mode 100644 src/middleware/superUserMiddleware.js
create mode 100644 src/router.js
create mode 100644 src/store/user.vue
create mode 100644 src/themes/Dark.sass
create mode 100644 src/themes/Default.sass
create mode 100644 src/themes/elements/Footer.sass
create mode 100644 src/views/DefaultPage.vue
create mode 100644 src/views/auth/Employee.vue
create mode 100644 src/views/auth/Login.vue
create mode 100644 src/views/auth/Register.vue
create mode 100644 src/views/dashboards/DepartmentDashboard.vue
create mode 100644 src/views/dashboards/SuperUserDashboard.vue
create mode 100644 src/views/dashboards/UserDashboard.vue
create mode 100644 src/views/dashboards/departmentDashboard/DepartmentDashboardHero.vue
create mode 100644 src/views/dashboards/departmentDashboard/departmentDashboardNavigation.vue
create mode 100644 src/views/dashboards/departmentDashboard/modules/Pos/DepartmentPos.vue
create mode 100644 src/views/dashboards/departmentDashboard/modules/Pos/DepartmentPosNavigation.vue
create mode 100644 src/views/dashboards/departmentDashboard/modules/Pos/DepartmentPosOrder.vue
create mode 100644 src/views/dashboards/departmentDashboard/modules/Pos/DepartmentPosOrders.vue
create mode 100644 src/views/dashboards/departmentDashboard/modules/bookings/DepartmentBookings.vue
create mode 100644 src/views/dashboards/superUserDashboard/Categories.vue
create mode 100644 src/views/dashboards/superUserDashboard/Customers.vue
create mode 100644 src/views/dashboards/superUserDashboard/Departments.vue
create mode 100644 src/views/dashboards/superUserDashboard/NumberPlateScanners.vue
create mode 100644 src/views/dashboards/superUserDashboard/Orders.vue
create mode 100644 src/views/dashboards/superUserDashboard/Products.vue
create mode 100644 src/views/dashboards/superUserDashboard/SuperUserDashboardNavigation.vue
create mode 100644 src/views/dashboards/superUserDashboard/Users.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/Configuration.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/ConfigurationBackups.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/ConfigurationEconomic.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/ConfigurationEmail.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/ConfigurationMotorAPI.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/ConfigurationReCAPTCHA.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/ConfigurationStripe.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/ConfigurationSubPageWrapper.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/SuperUserDashboardConfigurationNavigation.vue
create mode 100644 src/views/dashboards/superUserDashboard/configuration/SuperUserSelectedConfigurationObject.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/Department.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/DepartmentCategories.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/DepartmentPricing.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/DepartmentSubPageWrapper.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/SuperUserDashboardDepartmentNavigation.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/SuperUserSelectedDepartmentObject.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/stripe/DepartmentStripeSetup.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/stripe/DepartmentStripeTerminalsReaders.vue
create mode 100644 src/views/dashboards/superUserDashboard/department/stripe/SuperUserDashboardDepartmentStripeNavigation.vue
create mode 100644 src/views/dashboards/superUserDashboard/roles/Roles.vue
create mode 100644 src/views/dashboards/superUserDashboard/roles/RolesSubPageWrapper.vue
create mode 100644 src/views/dashboards/superUserDashboard/roles/SuperUserDashboardRolesNavigation.vue
create mode 100644 src/views/dashboards/superUserDashboard/roles/SuperUserRolesPermissions.vue
create mode 100644 src/views/dashboards/superUserDashboard/roles/SuperUserSelectedRolesObject.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/DepartmentPricing.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/Statistics.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/StatisticsOverview.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/StatisticsSubPageWrapper.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/SuperUserDashboardStatisticsNavigation.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/SuperUserSelectedStatisticsObject.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/displays/StatisticsBookings.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/displays/StatisticsLine.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/displays/overview/StatisticsDepartmentGoal.vue
create mode 100644 src/views/dashboards/superUserDashboard/statistics/displays/overview/StatisticsIncomeCard.vue
create mode 100644 src/views/dashboards/superUserDashboard/system/DatabaseOverview.vue
create mode 100644 src/views/dashboards/superUserDashboard/user/SuperUserDashboardUserNavigation.vue
create mode 100644 src/views/dashboards/superUserDashboard/user/SuperUserSelectedUserObject.vue
create mode 100644 src/views/dashboards/superUserDashboard/user/User.vue
create mode 100644 src/views/dashboards/superUserDashboard/user/UserOrders.vue
create mode 100644 src/views/dashboards/superUserDashboard/user/UserPricing.vue
create mode 100644 src/views/dashboards/superUserDashboard/user/UserSubPageWrapper.vue
create mode 100644 src/views/dashboards/userDashboard/Home.vue
create mode 100644 src/views/dashboards/userDashboard/UserDashboardHero.vue
create mode 100644 src/views/dashboards/userDashboard/bookings/MyBookings.vue
create mode 100644 src/views/dashboards/userDashboard/orders/MyOrder.vue
create mode 100644 src/views/dashboards/userDashboard/orders/MyOrders.vue
create mode 100644 src/views/dashboards/userDashboard/userDashboardNavigation.vue
create mode 100644 src/views/dashboards/userDashboard/vehicles/MyVehicles.vue
create mode 100644 src/views/dashboards/userDashboard/vehicles/NewVehicle.vue
create mode 100644 src/views/errors/NotFound.vue
create mode 100644 test.html
create mode 100644 vite.config.js
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00000000..8ee54e8d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,30 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+*.tsbuildinfo
diff --git a/README.md b/README.md
new file mode 100644
index 00000000..f97894be
--- /dev/null
+++ b/README.md
@@ -0,0 +1,29 @@
+# truckwashdashboardsfrontend
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur).
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vite.dev/config/).
+
+## Project Setup
+
+```sh
+npm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+npm run dev
+```
+
+### Compile and Minify for Production
+
+```sh
+npm run build
+```
diff --git a/index.html b/index.html
new file mode 100644
index 00000000..c7569eb9
--- /dev/null
+++ b/index.html
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+ Truck Wash
+
+
+
+
+
+
diff --git a/jsconfig.json b/jsconfig.json
new file mode 100644
index 00000000..5a1f2d22
--- /dev/null
+++ b/jsconfig.json
@@ -0,0 +1,8 @@
+{
+ "compilerOptions": {
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ },
+ "exclude": ["node_modules", "dist"]
+}
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 00000000..382c457d
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,3628 @@
+{
+ "name": "truckwashdashboardsfrontend",
+ "version": "0.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "truckwashdashboardsfrontend",
+ "version": "0.0.0",
+ "dependencies": {
+ "@creativebulma/bulma-badge": "^1.0.1",
+ "@popperjs/core": "^2.11.8",
+ "@sweetalert2/theme-bulma": "^5.0.18",
+ "@sweetalert2/theme-dark": "^5.0.18",
+ "axios": "^1.7.8",
+ "bulma": "^1.0.2",
+ "bulma-list": "^3.0.0",
+ "bulma-pageloader": "^0.3.0",
+ "bulma-quickview": "^2.0.0",
+ "bulma-switch": "^2.0.4",
+ "chart.js": "^4.4.7",
+ "sass": "^1.81.1",
+ "sweetalert2": "^11.14.5",
+ "toastify-js": "^1.12.0",
+ "vite-plugin-singlefile": "^2.1.0",
+ "vue": "^3.5.12",
+ "vue-chartjs": "^5.3.2",
+ "vue-popperjs": "^2.3.0",
+ "vue-router": "^4.5.0",
+ "vuex": "^4.1.0"
+ },
+ "devDependencies": {
+ "@creativebulma/bulma-divider": "^1.1.0",
+ "@vitejs/plugin-vue": "^5.1.4",
+ "sass-embedded": "^1.81.0",
+ "vite": "^5.4.10",
+ "vite-plugin-vue-devtools": "^7.5.4"
+ }
+ },
+ "node_modules/@ampproject/remapping": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
+ "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@antfu/utils": {
+ "version": "0.7.10",
+ "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz",
+ "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/@babel/code-frame": {
+ "version": "7.26.2",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz",
+ "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.25.9",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/compat-data": {
+ "version": "7.26.2",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.2.tgz",
+ "integrity": "sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/core": {
+ "version": "7.26.0",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz",
+ "integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==",
+ "dev": true,
+ "dependencies": {
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.26.0",
+ "@babel/generator": "^7.26.0",
+ "@babel/helper-compilation-targets": "^7.25.9",
+ "@babel/helper-module-transforms": "^7.26.0",
+ "@babel/helpers": "^7.26.0",
+ "@babel/parser": "^7.26.0",
+ "@babel/template": "^7.25.9",
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.26.0",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@babel/generator": {
+ "version": "7.26.2",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.2.tgz",
+ "integrity": "sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/parser": "^7.26.2",
+ "@babel/types": "^7.26.0",
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25",
+ "jsesc": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-annotate-as-pure": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz",
+ "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-compilation-targets": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz",
+ "integrity": "sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/compat-data": "^7.25.9",
+ "@babel/helper-validator-option": "^7.25.9",
+ "browserslist": "^4.24.0",
+ "lru-cache": "^5.1.1",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-create-class-features-plugin": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz",
+ "integrity": "sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.25.9",
+ "@babel/helper-member-expression-to-functions": "^7.25.9",
+ "@babel/helper-optimise-call-expression": "^7.25.9",
+ "@babel/helper-replace-supers": "^7.25.9",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
+ "@babel/traverse": "^7.25.9",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-member-expression-to-functions": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz",
+ "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-imports": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz",
+ "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-transforms": {
+ "version": "7.26.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz",
+ "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-imports": "^7.25.9",
+ "@babel/helper-validator-identifier": "^7.25.9",
+ "@babel/traverse": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-optimise-call-expression": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz",
+ "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-plugin-utils": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz",
+ "integrity": "sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-replace-supers": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz",
+ "integrity": "sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-member-expression-to-functions": "^7.25.9",
+ "@babel/helper-optimise-call-expression": "^7.25.9",
+ "@babel/traverse": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz",
+ "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-string-parser": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
+ "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
+ "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-option": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz",
+ "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helpers": {
+ "version": "7.26.0",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.0.tgz",
+ "integrity": "sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/template": "^7.25.9",
+ "@babel/types": "^7.26.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.26.2",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz",
+ "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==",
+ "dependencies": {
+ "@babel/types": "^7.26.0"
+ },
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@babel/plugin-proposal-decorators": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.25.9.tgz",
+ "integrity": "sha512-smkNLL/O1ezy9Nhy4CNosc4Va+1wo5w4gzSZeLe6y6dM4mmHfYOCPolXQPHQxonZCF+ZyebxN9vqOolkYrSn5g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-create-class-features-plugin": "^7.25.9",
+ "@babel/helper-plugin-utils": "^7.25.9",
+ "@babel/plugin-syntax-decorators": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-decorators": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.25.9.tgz",
+ "integrity": "sha512-ryzI0McXUPJnRCvMo4lumIKZUzhYUO/ScI+Mz4YVaTLt04DHNSjEUjKVvbzQjZFLuod/cYEc07mJWhzl6v4DPg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-import-attributes": {
+ "version": "7.26.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz",
+ "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-import-meta": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
+ "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-jsx": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz",
+ "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-typescript": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz",
+ "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-typescript": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.9.tgz",
+ "integrity": "sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.25.9",
+ "@babel/helper-create-class-features-plugin": "^7.25.9",
+ "@babel/helper-plugin-utils": "^7.25.9",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
+ "@babel/plugin-syntax-typescript": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/template": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz",
+ "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.25.9",
+ "@babel/parser": "^7.25.9",
+ "@babel/types": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/traverse": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
+ "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.25.9",
+ "@babel/generator": "^7.25.9",
+ "@babel/parser": "^7.25.9",
+ "@babel/template": "^7.25.9",
+ "@babel/types": "^7.25.9",
+ "debug": "^4.3.1",
+ "globals": "^11.1.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/types": {
+ "version": "7.26.0",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz",
+ "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==",
+ "dependencies": {
+ "@babel/helper-string-parser": "^7.25.9",
+ "@babel/helper-validator-identifier": "^7.25.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@bufbuild/protobuf": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.2.2.tgz",
+ "integrity": "sha512-UNtPCbrwrenpmrXuRwn9jYpPoweNXj8X5sMvYgsqYyaH8jQ6LfUJSk3dJLnBK+6sfYPrF4iAIo5sd5HQ+tg75A==",
+ "devOptional": true
+ },
+ "node_modules/@creativebulma/bulma-badge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@creativebulma/bulma-badge/-/bulma-badge-1.0.1.tgz",
+ "integrity": "sha512-cTMgxPdTOsAfPqd9wbrvKNUTvnIt+pNgwwO9Xzu6MRUIFlvGRtIVApaV51f3wt0/uI78BpKv5FPAtEJbmSTZOg=="
+ },
+ "node_modules/@creativebulma/bulma-divider": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@creativebulma/bulma-divider/-/bulma-divider-1.1.0.tgz",
+ "integrity": "sha512-Lx5MlUhgAnTF+wNZ5LXcaE1K0F2m0Pkwte1p08FBsIyRV6Oq7BuKPk/O9XJPcF+vR6BjCxNy/hjYFXtNmoXbNg==",
+ "dev": true
+ },
+ "node_modules/@esbuild/aix-ppc64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",
+ "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==",
+ "cpu": [
+ "ppc64"
+ ],
+ "optional": true,
+ "os": [
+ "aix"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz",
+ "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz",
+ "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz",
+ "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz",
+ "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz",
+ "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz",
+ "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz",
+ "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz",
+ "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz",
+ "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz",
+ "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz",
+ "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==",
+ "cpu": [
+ "loong64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz",
+ "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==",
+ "cpu": [
+ "mips64el"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz",
+ "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==",
+ "cpu": [
+ "ppc64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz",
+ "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz",
+ "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==",
+ "cpu": [
+ "s390x"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz",
+ "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz",
+ "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz",
+ "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz",
+ "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz",
+ "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz",
+ "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz",
+ "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/set-array": "^1.2.1",
+ "@jridgewell/sourcemap-codec": "^1.4.10",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/set-array": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
+ "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
+ }
+ },
+ "node_modules/@kurkle/color": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz",
+ "integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w=="
+ },
+ "node_modules/@parcel/watcher": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.0.tgz",
+ "integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==",
+ "hasInstallScript": true,
+ "optional": true,
+ "dependencies": {
+ "detect-libc": "^1.0.3",
+ "is-glob": "^4.0.3",
+ "micromatch": "^4.0.5",
+ "node-addon-api": "^7.0.0"
+ },
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ },
+ "optionalDependencies": {
+ "@parcel/watcher-android-arm64": "2.5.0",
+ "@parcel/watcher-darwin-arm64": "2.5.0",
+ "@parcel/watcher-darwin-x64": "2.5.0",
+ "@parcel/watcher-freebsd-x64": "2.5.0",
+ "@parcel/watcher-linux-arm-glibc": "2.5.0",
+ "@parcel/watcher-linux-arm-musl": "2.5.0",
+ "@parcel/watcher-linux-arm64-glibc": "2.5.0",
+ "@parcel/watcher-linux-arm64-musl": "2.5.0",
+ "@parcel/watcher-linux-x64-glibc": "2.5.0",
+ "@parcel/watcher-linux-x64-musl": "2.5.0",
+ "@parcel/watcher-win32-arm64": "2.5.0",
+ "@parcel/watcher-win32-ia32": "2.5.0",
+ "@parcel/watcher-win32-x64": "2.5.0"
+ }
+ },
+ "node_modules/@parcel/watcher-android-arm64": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz",
+ "integrity": "sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-darwin-arm64": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz",
+ "integrity": "sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-darwin-x64": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz",
+ "integrity": "sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-freebsd-x64": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz",
+ "integrity": "sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-linux-arm-glibc": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz",
+ "integrity": "sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-linux-arm-musl": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz",
+ "integrity": "sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-linux-arm64-glibc": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz",
+ "integrity": "sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-linux-arm64-musl": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz",
+ "integrity": "sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-linux-x64-glibc": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz",
+ "integrity": "sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-linux-x64-musl": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz",
+ "integrity": "sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-win32-arm64": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz",
+ "integrity": "sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-win32-ia32": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz",
+ "integrity": "sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@parcel/watcher-win32-x64": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.0.tgz",
+ "integrity": "sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/@polka/url": {
+ "version": "1.0.0-next.28",
+ "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.28.tgz",
+ "integrity": "sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==",
+ "dev": true
+ },
+ "node_modules/@popperjs/core": {
+ "version": "2.11.8",
+ "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
+ "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/popperjs"
+ }
+ },
+ "node_modules/@rollup/pluginutils": {
+ "version": "5.1.3",
+ "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz",
+ "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==",
+ "dev": true,
+ "dependencies": {
+ "@types/estree": "^1.0.0",
+ "estree-walker": "^2.0.2",
+ "picomatch": "^4.0.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "peerDependencies": {
+ "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0"
+ },
+ "peerDependenciesMeta": {
+ "rollup": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@rollup/rollup-android-arm-eabi": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz",
+ "integrity": "sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ]
+ },
+ "node_modules/@rollup/rollup-android-arm64": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.1.tgz",
+ "integrity": "sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ]
+ },
+ "node_modules/@rollup/rollup-darwin-arm64": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.1.tgz",
+ "integrity": "sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/@rollup/rollup-darwin-x64": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.1.tgz",
+ "integrity": "sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/@rollup/rollup-freebsd-arm64": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.1.tgz",
+ "integrity": "sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "freebsd"
+ ]
+ },
+ "node_modules/@rollup/rollup-freebsd-x64": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.1.tgz",
+ "integrity": "sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "freebsd"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.1.tgz",
+ "integrity": "sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm-musleabihf": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.1.tgz",
+ "integrity": "sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm64-gnu": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.1.tgz",
+ "integrity": "sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-arm64-musl": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.1.tgz",
+ "integrity": "sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-loongarch64-gnu": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.28.1.tgz",
+ "integrity": "sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==",
+ "cpu": [
+ "loong64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.1.tgz",
+ "integrity": "sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==",
+ "cpu": [
+ "ppc64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-riscv64-gnu": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.1.tgz",
+ "integrity": "sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-s390x-gnu": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.1.tgz",
+ "integrity": "sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==",
+ "cpu": [
+ "s390x"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-x64-gnu": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.1.tgz",
+ "integrity": "sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-linux-x64-musl": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.1.tgz",
+ "integrity": "sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rollup/rollup-win32-arm64-msvc": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.1.tgz",
+ "integrity": "sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/@rollup/rollup-win32-ia32-msvc": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.1.tgz",
+ "integrity": "sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/@rollup/rollup-win32-x64-msvc": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.1.tgz",
+ "integrity": "sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/@sec-ant/readable-stream": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz",
+ "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==",
+ "dev": true
+ },
+ "node_modules/@sindresorhus/merge-streams": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz",
+ "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@sweetalert2/theme-bulma": {
+ "version": "5.0.18",
+ "resolved": "https://registry.npmjs.org/@sweetalert2/theme-bulma/-/theme-bulma-5.0.18.tgz",
+ "integrity": "sha512-GmlNOFmgF9bw9XMAEz6kLWglvSLuNMtr/ThTYW6mEKkQw9M8s1WB/1H7s/nIn2IgamgOlz/fhDvDqX9ne5cgQg=="
+ },
+ "node_modules/@sweetalert2/theme-dark": {
+ "version": "5.0.18",
+ "resolved": "https://registry.npmjs.org/@sweetalert2/theme-dark/-/theme-dark-5.0.18.tgz",
+ "integrity": "sha512-Fdt8OQHQcbJy6i+rvA49h3OAzQevMwDgfsHPdR2kNwT5M7AtG5rAaBBo0StlvNbcTx/AQ5xhEdMyJdnM05CNoQ=="
+ },
+ "node_modules/@types/estree": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz",
+ "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw=="
+ },
+ "node_modules/@vitejs/plugin-vue": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.1.tgz",
+ "integrity": "sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==",
+ "dev": true,
+ "engines": {
+ "node": "^18.0.0 || >=20.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^5.0.0 || ^6.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/@vue/babel-helper-vue-transform-on": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.5.tgz",
+ "integrity": "sha512-lOz4t39ZdmU4DJAa2hwPYmKc8EsuGa2U0L9KaZaOJUt0UwQNjNA3AZTq6uEivhOKhhG1Wvy96SvYBoFmCg3uuw==",
+ "dev": true
+ },
+ "node_modules/@vue/babel-plugin-jsx": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.5.tgz",
+ "integrity": "sha512-zTrNmOd4939H9KsRIGmmzn3q2zvv1mjxkYZHgqHZgDrXz5B1Q3WyGEjO2f+JrmKghvl1JIRcvo63LgM1kH5zFg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-imports": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.8",
+ "@babel/plugin-syntax-jsx": "^7.24.7",
+ "@babel/template": "^7.25.0",
+ "@babel/traverse": "^7.25.6",
+ "@babel/types": "^7.25.6",
+ "@vue/babel-helper-vue-transform-on": "1.2.5",
+ "@vue/babel-plugin-resolve-type": "1.2.5",
+ "html-tags": "^3.3.1",
+ "svg-tags": "^1.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ },
+ "peerDependenciesMeta": {
+ "@babel/core": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@vue/babel-plugin-resolve-type": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.5.tgz",
+ "integrity": "sha512-U/ibkQrf5sx0XXRnUZD1mo5F7PkpKyTbfXM3a3rC4YnUz6crHEz9Jg09jzzL6QYlXNto/9CePdOg/c87O4Nlfg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.24.7",
+ "@babel/helper-module-imports": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.8",
+ "@babel/parser": "^7.25.6",
+ "@vue/compiler-sfc": "^3.5.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@vue/compiler-core": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz",
+ "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==",
+ "dependencies": {
+ "@babel/parser": "^7.25.3",
+ "@vue/shared": "3.5.13",
+ "entities": "^4.5.0",
+ "estree-walker": "^2.0.2",
+ "source-map-js": "^1.2.0"
+ }
+ },
+ "node_modules/@vue/compiler-dom": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz",
+ "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==",
+ "dependencies": {
+ "@vue/compiler-core": "3.5.13",
+ "@vue/shared": "3.5.13"
+ }
+ },
+ "node_modules/@vue/compiler-sfc": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz",
+ "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==",
+ "dependencies": {
+ "@babel/parser": "^7.25.3",
+ "@vue/compiler-core": "3.5.13",
+ "@vue/compiler-dom": "3.5.13",
+ "@vue/compiler-ssr": "3.5.13",
+ "@vue/shared": "3.5.13",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.30.11",
+ "postcss": "^8.4.48",
+ "source-map-js": "^1.2.0"
+ }
+ },
+ "node_modules/@vue/compiler-ssr": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz",
+ "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.5.13",
+ "@vue/shared": "3.5.13"
+ }
+ },
+ "node_modules/@vue/devtools-api": {
+ "version": "6.6.4",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz",
+ "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g=="
+ },
+ "node_modules/@vue/devtools-core": {
+ "version": "7.6.7",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-7.6.7.tgz",
+ "integrity": "sha512-6fW8Q0H1NHDXdEcuV6dylT5U2Yxg3SdMnVCey99Y6S4R2PNgFL2vC+VU9U9rHIiaoEUkeza42S7FfHxV4VI3Jg==",
+ "dev": true,
+ "dependencies": {
+ "@vue/devtools-kit": "^7.6.7",
+ "@vue/devtools-shared": "^7.6.7",
+ "mitt": "^3.0.1",
+ "nanoid": "^5.0.9",
+ "pathe": "^1.1.2",
+ "vite-hot-client": "^0.2.4"
+ },
+ "peerDependencies": {
+ "vue": "^3.0.0"
+ }
+ },
+ "node_modules/@vue/devtools-core/node_modules/nanoid": {
+ "version": "5.0.9",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.9.tgz",
+ "integrity": "sha512-Aooyr6MXU6HpvvWXKoVoXwKMs/KyVakWwg7xQfv5/S/RIgJMy0Ifa45H9qqYy7pTCszrHzP21Uk4PZq2HpEM8Q==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "bin": {
+ "nanoid": "bin/nanoid.js"
+ },
+ "engines": {
+ "node": "^18 || >=20"
+ }
+ },
+ "node_modules/@vue/devtools-kit": {
+ "version": "7.6.7",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.6.7.tgz",
+ "integrity": "sha512-V8/jrXY/swHgnblABG9U4QCbE60c6RuPasmv2d9FvVqc5d94t1vDiESuvRmdNJBdWz4/D3q6ffgyAfRVjwHYEw==",
+ "dev": true,
+ "dependencies": {
+ "@vue/devtools-shared": "^7.6.7",
+ "birpc": "^0.2.19",
+ "hookable": "^5.5.3",
+ "mitt": "^3.0.1",
+ "perfect-debounce": "^1.0.0",
+ "speakingurl": "^14.0.1",
+ "superjson": "^2.2.1"
+ }
+ },
+ "node_modules/@vue/devtools-shared": {
+ "version": "7.6.7",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.6.7.tgz",
+ "integrity": "sha512-QggO6SviAsolrePAXZ/sA1dSicSPt4TueZibCvydfhNDieL1lAuyMTgQDGst7TEvMGb4vgYv2I+1sDkO4jWNnw==",
+ "dev": true,
+ "dependencies": {
+ "rfdc": "^1.4.1"
+ }
+ },
+ "node_modules/@vue/reactivity": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz",
+ "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==",
+ "dependencies": {
+ "@vue/shared": "3.5.13"
+ }
+ },
+ "node_modules/@vue/runtime-core": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz",
+ "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==",
+ "dependencies": {
+ "@vue/reactivity": "3.5.13",
+ "@vue/shared": "3.5.13"
+ }
+ },
+ "node_modules/@vue/runtime-dom": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz",
+ "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==",
+ "dependencies": {
+ "@vue/reactivity": "3.5.13",
+ "@vue/runtime-core": "3.5.13",
+ "@vue/shared": "3.5.13",
+ "csstype": "^3.1.3"
+ }
+ },
+ "node_modules/@vue/server-renderer": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz",
+ "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==",
+ "dependencies": {
+ "@vue/compiler-ssr": "3.5.13",
+ "@vue/shared": "3.5.13"
+ },
+ "peerDependencies": {
+ "vue": "3.5.13"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz",
+ "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ=="
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
+ },
+ "node_modules/axios": {
+ "version": "1.7.8",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.8.tgz",
+ "integrity": "sha512-Uu0wb7KNqK2t5K+YQyVCLM76prD5sRFjKHbJYCP1J7JFGEQ6nN7HWn9+04LAeiJ3ji54lgS/gZCH1oxyrf1SPw==",
+ "dependencies": {
+ "follow-redirects": "^1.15.6",
+ "form-data": "^4.0.0",
+ "proxy-from-env": "^1.1.0"
+ }
+ },
+ "node_modules/birpc": {
+ "version": "0.2.19",
+ "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.19.tgz",
+ "integrity": "sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "dependencies": {
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/browserslist": {
+ "version": "4.24.2",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz",
+ "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "dependencies": {
+ "caniuse-lite": "^1.0.30001669",
+ "electron-to-chromium": "^1.5.41",
+ "node-releases": "^2.0.18",
+ "update-browserslist-db": "^1.1.1"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+ }
+ },
+ "node_modules/buffer-builder": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/buffer-builder/-/buffer-builder-0.2.0.tgz",
+ "integrity": "sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==",
+ "devOptional": true
+ },
+ "node_modules/bulma": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/bulma/-/bulma-1.0.2.tgz",
+ "integrity": "sha512-D7GnDuF6seb6HkcnRMM9E739QpEY9chDzzeFrHMyEns/EXyDJuQ0XA0KxbBl/B2NTsKSoDomW61jFGFaAxhK5A=="
+ },
+ "node_modules/bulma-list": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/bulma-list/-/bulma-list-3.0.0.tgz",
+ "integrity": "sha512-TWu22INxxtGPXS4LOijXqy/3zH11QJRXrOENf1AIU4QTXnG8ahhrx+D6/fbr5tgU50aAXJK0eKOTzza1TI20OQ=="
+ },
+ "node_modules/bulma-pageloader": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/bulma-pageloader/-/bulma-pageloader-0.3.0.tgz",
+ "integrity": "sha512-lbahiqhBCov5AYdziHFnC5/JOhCrJWFTpdRiAkwW49IM/mf0whCWHVe8MuejZFu2PEs1mtH8Gnz8exEks4Q+7g=="
+ },
+ "node_modules/bulma-quickview": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/bulma-quickview/-/bulma-quickview-2.0.0.tgz",
+ "integrity": "sha512-EJq9XYcJ+pG94FIYgw9AI2NoRDRjQX/Iua0H3iIJq4C3D+4sVOCg/Y+I7gd/G0v7fez/qvKX/S+91UZqaTmXSQ=="
+ },
+ "node_modules/bulma-switch": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/bulma-switch/-/bulma-switch-2.0.4.tgz",
+ "integrity": "sha512-kMu4H0Pr0VjvfsnT6viRDCgptUq0Rvy7y7PX6q+IHg1xUynsjszPjhAdal5ysAlCG5HNO+5YXxeiu92qYGQolw=="
+ },
+ "node_modules/bundle-name": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz",
+ "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==",
+ "dev": true,
+ "dependencies": {
+ "run-applescript": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001684",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001684.tgz",
+ "integrity": "sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ]
+ },
+ "node_modules/chart.js": {
+ "version": "4.4.7",
+ "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.7.tgz",
+ "integrity": "sha512-pwkcKfdzTMAU/+jNosKhNL2bHtJc/sSmYgVbuGTEDhzkrhmyihmP7vUc/5ZK9WopidMDHNe3Wm7jOd/WhuHWuw==",
+ "dependencies": {
+ "@kurkle/color": "^0.3.0"
+ },
+ "engines": {
+ "pnpm": ">=8"
+ }
+ },
+ "node_modules/chokidar": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz",
+ "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==",
+ "dependencies": {
+ "readdirp": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 14.16.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/colorjs.io": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/colorjs.io/-/colorjs.io-0.5.2.tgz",
+ "integrity": "sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==",
+ "devOptional": true
+ },
+ "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==",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "node_modules/copy-anything": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
+ "integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
+ "dev": true,
+ "dependencies": {
+ "is-what": "^4.1.8"
+ },
+ "engines": {
+ "node": ">=12.13"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mesqueeb"
+ }
+ },
+ "node_modules/cross-spawn": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/csstype": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
+ "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="
+ },
+ "node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dev": true,
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/default-browser": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz",
+ "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==",
+ "dev": true,
+ "dependencies": {
+ "bundle-name": "^4.1.0",
+ "default-browser-id": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/default-browser-id": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz",
+ "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/define-lazy-prop": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz",
+ "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/detect-libc": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
+ "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==",
+ "optional": true,
+ "bin": {
+ "detect-libc": "bin/detect-libc.js"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/electron-to-chromium": {
+ "version": "1.5.67",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.67.tgz",
+ "integrity": "sha512-nz88NNBsD7kQSAGGJyp8hS6xSPtWwqNogA0mjtc2nUYeEf3nURK9qpV18TuBdDmEDgVWotS8Wkzf+V52dSQ/LQ==",
+ "dev": true
+ },
+ "node_modules/entities": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
+ "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
+ "engines": {
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "node_modules/error-stack-parser-es": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-0.1.5.tgz",
+ "integrity": "sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/esbuild": {
+ "version": "0.21.5",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
+ "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==",
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/aix-ppc64": "0.21.5",
+ "@esbuild/android-arm": "0.21.5",
+ "@esbuild/android-arm64": "0.21.5",
+ "@esbuild/android-x64": "0.21.5",
+ "@esbuild/darwin-arm64": "0.21.5",
+ "@esbuild/darwin-x64": "0.21.5",
+ "@esbuild/freebsd-arm64": "0.21.5",
+ "@esbuild/freebsd-x64": "0.21.5",
+ "@esbuild/linux-arm": "0.21.5",
+ "@esbuild/linux-arm64": "0.21.5",
+ "@esbuild/linux-ia32": "0.21.5",
+ "@esbuild/linux-loong64": "0.21.5",
+ "@esbuild/linux-mips64el": "0.21.5",
+ "@esbuild/linux-ppc64": "0.21.5",
+ "@esbuild/linux-riscv64": "0.21.5",
+ "@esbuild/linux-s390x": "0.21.5",
+ "@esbuild/linux-x64": "0.21.5",
+ "@esbuild/netbsd-x64": "0.21.5",
+ "@esbuild/openbsd-x64": "0.21.5",
+ "@esbuild/sunos-x64": "0.21.5",
+ "@esbuild/win32-arm64": "0.21.5",
+ "@esbuild/win32-ia32": "0.21.5",
+ "@esbuild/win32-x64": "0.21.5"
+ }
+ },
+ "node_modules/escalade": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "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/execa": {
+ "version": "9.5.1",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-9.5.1.tgz",
+ "integrity": "sha512-QY5PPtSonnGwhhHDNI7+3RvY285c7iuJFFB+lU+oEzMY/gEGJ808owqJsrr8Otd1E/x07po1LkUBmdAc5duPAg==",
+ "dev": true,
+ "dependencies": {
+ "@sindresorhus/merge-streams": "^4.0.0",
+ "cross-spawn": "^7.0.3",
+ "figures": "^6.1.0",
+ "get-stream": "^9.0.0",
+ "human-signals": "^8.0.0",
+ "is-plain-obj": "^4.1.0",
+ "is-stream": "^4.0.1",
+ "npm-run-path": "^6.0.0",
+ "pretty-ms": "^9.0.0",
+ "signal-exit": "^4.1.0",
+ "strip-final-newline": "^4.0.0",
+ "yoctocolors": "^2.0.0"
+ },
+ "engines": {
+ "node": "^18.19.0 || >=20.5.0"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/execa?sponsor=1"
+ }
+ },
+ "node_modules/figures": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz",
+ "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==",
+ "dev": true,
+ "dependencies": {
+ "is-unicode-supported": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.15.9",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz",
+ "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/form-data": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz",
+ "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/fs-extra": {
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
+ "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=14.14"
+ }
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/gensync": {
+ "version": "1.0.0-beta.2",
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/get-stream": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz",
+ "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==",
+ "dev": true,
+ "dependencies": {
+ "@sec-ant/readable-stream": "^0.4.1",
+ "is-stream": "^4.0.1"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/globals": {
+ "version": "11.12.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
+ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
+ "dev": true
+ },
+ "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==",
+ "devOptional": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/hookable": {
+ "version": "5.5.3",
+ "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz",
+ "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==",
+ "dev": true
+ },
+ "node_modules/html-tags": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz",
+ "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/human-signals": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-8.0.0.tgz",
+ "integrity": "sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA==",
+ "dev": true,
+ "engines": {
+ "node": ">=18.18.0"
+ }
+ },
+ "node_modules/immutable": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz",
+ "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw=="
+ },
+ "node_modules/is-docker": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz",
+ "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==",
+ "dev": true,
+ "bin": {
+ "is-docker": "cli.js"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "optional": true,
+ "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==",
+ "optional": true,
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-inside-container": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz",
+ "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==",
+ "dev": true,
+ "dependencies": {
+ "is-docker": "^3.0.0"
+ },
+ "bin": {
+ "is-inside-container": "cli.js"
+ },
+ "engines": {
+ "node": ">=14.16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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-plain-obj": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
+ "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-stream": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz",
+ "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-unicode-supported": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz",
+ "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-what": {
+ "version": "4.1.16",
+ "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz",
+ "integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==",
+ "dev": true,
+ "engines": {
+ "node": ">=12.13"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mesqueeb"
+ }
+ },
+ "node_modules/is-wsl": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz",
+ "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==",
+ "dev": true,
+ "dependencies": {
+ "is-inside-container": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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/js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+ "dev": true
+ },
+ "node_modules/jsesc": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz",
+ "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==",
+ "dev": true,
+ "bin": {
+ "jsesc": "bin/jsesc"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/json5": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
+ "dev": true,
+ "bin": {
+ "json5": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+ "dev": true,
+ "dependencies": {
+ "universalify": "^2.0.0"
+ },
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "node_modules/kolorist": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz",
+ "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==",
+ "dev": true
+ },
+ "node_modules/lru-cache": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
+ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^3.0.2"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.30.14",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.14.tgz",
+ "integrity": "sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==",
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": "^1.5.0"
+ }
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
+ "dependencies": {
+ "braces": "^3.0.3",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/micromatch/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/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/mitt": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
+ "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==",
+ "dev": true
+ },
+ "node_modules/mrmime": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz",
+ "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.8",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
+ "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/node-addon-api": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
+ "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
+ "optional": true
+ },
+ "node_modules/node-releases": {
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
+ "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
+ "dev": true
+ },
+ "node_modules/npm-run-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-6.0.0.tgz",
+ "integrity": "sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^4.0.0",
+ "unicorn-magic": "^0.3.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/npm-run-path/node_modules/path-key": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz",
+ "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/open": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz",
+ "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==",
+ "dev": true,
+ "dependencies": {
+ "default-browser": "^5.2.1",
+ "define-lazy-prop": "^3.0.0",
+ "is-inside-container": "^1.0.0",
+ "is-wsl": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/opencollective-postinstall": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz",
+ "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==",
+ "bin": {
+ "opencollective-postinstall": "index.js"
+ }
+ },
+ "node_modules/parse-ms": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz",
+ "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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/pathe": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz",
+ "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==",
+ "dev": true
+ },
+ "node_modules/perfect-debounce": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz",
+ "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==",
+ "dev": true
+ },
+ "node_modules/picocolors": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="
+ },
+ "node_modules/picomatch": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
+ "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/popper.js": {
+ "version": "1.16.1",
+ "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz",
+ "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==",
+ "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1",
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/popperjs"
+ }
+ },
+ "node_modules/postcss": {
+ "version": "8.4.49",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz",
+ "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==",
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/postcss"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "dependencies": {
+ "nanoid": "^3.3.7",
+ "picocolors": "^1.1.1",
+ "source-map-js": "^1.2.1"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/pretty-ms": {
+ "version": "9.2.0",
+ "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.2.0.tgz",
+ "integrity": "sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==",
+ "dev": true,
+ "dependencies": {
+ "parse-ms": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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=="
+ },
+ "node_modules/readdirp": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz",
+ "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==",
+ "engines": {
+ "node": ">= 14.16.0"
+ },
+ "funding": {
+ "type": "individual",
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/rfdc": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz",
+ "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==",
+ "dev": true
+ },
+ "node_modules/rollup": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.28.1.tgz",
+ "integrity": "sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==",
+ "dependencies": {
+ "@types/estree": "1.0.6"
+ },
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=18.0.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "@rollup/rollup-android-arm-eabi": "4.28.1",
+ "@rollup/rollup-android-arm64": "4.28.1",
+ "@rollup/rollup-darwin-arm64": "4.28.1",
+ "@rollup/rollup-darwin-x64": "4.28.1",
+ "@rollup/rollup-freebsd-arm64": "4.28.1",
+ "@rollup/rollup-freebsd-x64": "4.28.1",
+ "@rollup/rollup-linux-arm-gnueabihf": "4.28.1",
+ "@rollup/rollup-linux-arm-musleabihf": "4.28.1",
+ "@rollup/rollup-linux-arm64-gnu": "4.28.1",
+ "@rollup/rollup-linux-arm64-musl": "4.28.1",
+ "@rollup/rollup-linux-loongarch64-gnu": "4.28.1",
+ "@rollup/rollup-linux-powerpc64le-gnu": "4.28.1",
+ "@rollup/rollup-linux-riscv64-gnu": "4.28.1",
+ "@rollup/rollup-linux-s390x-gnu": "4.28.1",
+ "@rollup/rollup-linux-x64-gnu": "4.28.1",
+ "@rollup/rollup-linux-x64-musl": "4.28.1",
+ "@rollup/rollup-win32-arm64-msvc": "4.28.1",
+ "@rollup/rollup-win32-ia32-msvc": "4.28.1",
+ "@rollup/rollup-win32-x64-msvc": "4.28.1",
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/run-applescript": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz",
+ "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/rxjs": {
+ "version": "7.8.1",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
+ "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
+ "devOptional": true,
+ "dependencies": {
+ "tslib": "^2.1.0"
+ }
+ },
+ "node_modules/sass": {
+ "version": "1.81.1",
+ "resolved": "https://registry.npmjs.org/sass/-/sass-1.81.1.tgz",
+ "integrity": "sha512-VNLgf4FC5yFyKwAumAAwwNh8X4SevlVREq3Y8aDZIkm0lI/zO1feycMXQ4hn+eB6FVhRbleSQ1Yb/q8juSldTA==",
+ "dependencies": {
+ "chokidar": "^4.0.0",
+ "immutable": "^5.0.2",
+ "source-map-js": ">=0.6.2 <2.0.0"
+ },
+ "bin": {
+ "sass": "sass.js"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "optionalDependencies": {
+ "@parcel/watcher": "^2.4.1"
+ }
+ },
+ "node_modules/sass-embedded": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded/-/sass-embedded-1.81.0.tgz",
+ "integrity": "sha512-uZQ2Faxb1oWBHpeSSzjxnhClbMb3QadN0ql0ZFNuqWOLUxwaVhrMlMhPq6TDPbbfDUjihuwrMCuy695Bgna5RA==",
+ "devOptional": true,
+ "dependencies": {
+ "@bufbuild/protobuf": "^2.0.0",
+ "buffer-builder": "^0.2.0",
+ "colorjs.io": "^0.5.0",
+ "immutable": "^5.0.2",
+ "rxjs": "^7.4.0",
+ "supports-color": "^8.1.1",
+ "sync-child-process": "^1.0.2",
+ "varint": "^6.0.0"
+ },
+ "bin": {
+ "sass": "dist/bin/sass.js"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ },
+ "optionalDependencies": {
+ "sass-embedded-android-arm": "1.81.0",
+ "sass-embedded-android-arm64": "1.81.0",
+ "sass-embedded-android-ia32": "1.81.0",
+ "sass-embedded-android-riscv64": "1.81.0",
+ "sass-embedded-android-x64": "1.81.0",
+ "sass-embedded-darwin-arm64": "1.81.0",
+ "sass-embedded-darwin-x64": "1.81.0",
+ "sass-embedded-linux-arm": "1.81.0",
+ "sass-embedded-linux-arm64": "1.81.0",
+ "sass-embedded-linux-ia32": "1.81.0",
+ "sass-embedded-linux-musl-arm": "1.81.0",
+ "sass-embedded-linux-musl-arm64": "1.81.0",
+ "sass-embedded-linux-musl-ia32": "1.81.0",
+ "sass-embedded-linux-musl-riscv64": "1.81.0",
+ "sass-embedded-linux-musl-x64": "1.81.0",
+ "sass-embedded-linux-riscv64": "1.81.0",
+ "sass-embedded-linux-x64": "1.81.0",
+ "sass-embedded-win32-arm64": "1.81.0",
+ "sass-embedded-win32-ia32": "1.81.0",
+ "sass-embedded-win32-x64": "1.81.0"
+ }
+ },
+ "node_modules/sass-embedded-android-arm": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-android-arm/-/sass-embedded-android-arm-1.81.0.tgz",
+ "integrity": "sha512-NWEmIuaIEsGFNsIRa+5JpIpPJyZ32H15E85CNZqEIhhwWlk9UNw7vlOCmTH8MtabtnACwC/2NG8VyNa3nxKzUQ==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-android-arm64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-android-arm64/-/sass-embedded-android-arm64-1.81.0.tgz",
+ "integrity": "sha512-I36P77/PKAHx6sqOmexO2iEY5kpsmQ1VxcgITZSOxPMQhdB6m4t3bTabfDuWQQmCrqqiNFtLQHeytB65bUqwiw==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-android-ia32": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-android-ia32/-/sass-embedded-android-ia32-1.81.0.tgz",
+ "integrity": "sha512-k8V1usXw30w1GVxvrteG1RzgYJzYQ9PfL2aeOqGdroBN7zYTD9VGJXTGcxA4IeeRxmRd7szVW2mKXXS472fh8g==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-android-riscv64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-android-riscv64/-/sass-embedded-android-riscv64-1.81.0.tgz",
+ "integrity": "sha512-RXlanyLXEpN/DEehXgLuKPsqT//GYlsGFxKXgRiCc8hIPAueFLQXKJmLWlL3BEtHgmFdbsStIu4aZCcb1hOFlQ==",
+ "cpu": [
+ "riscv64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-android-x64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-android-x64/-/sass-embedded-android-x64-1.81.0.tgz",
+ "integrity": "sha512-RQG0FxGQ1DERNyUDED8+BDVaLIjI+BNg8lVcyqlLZUrWY6NhzjwYEeiN/DNZmMmHtqDucAPNDcsdVUNQqsBy2A==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-darwin-arm64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-darwin-arm64/-/sass-embedded-darwin-arm64-1.81.0.tgz",
+ "integrity": "sha512-gLKbsfII9Ppua76N41ODFnKGutla9qv0OGAas8gxe0jYBeAQFi/1iKQYdNtQtKi4mA9n5TQTqz+HHCKszZCoyA==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-darwin-x64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-darwin-x64/-/sass-embedded-darwin-x64-1.81.0.tgz",
+ "integrity": "sha512-7uMOlT9hD2KUJCbTN2XcfghDxt/rc50ujjfSjSHjX1SYj7mGplkINUXvVbbvvaV2wt6t9vkGkCo5qNbeBhfwBg==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-arm": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-arm/-/sass-embedded-linux-arm-1.81.0.tgz",
+ "integrity": "sha512-REqR9qM4RchCE3cKqzRy9Q4zigIV82SbSpCi/O4O3oK3pg2I1z7vkb3TiJsivusG/li7aqKZGmYOtAXjruGQDA==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-arm64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-arm64/-/sass-embedded-linux-arm64-1.81.0.tgz",
+ "integrity": "sha512-jy4bvhdUmqbyw1jv1f3Uxl+MF8EU/Y/GDx4w6XPJm4Ds+mwH/TwnyAwsxxoBhWfnBnW8q2ADy039DlS5p+9csQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-ia32": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-ia32/-/sass-embedded-linux-ia32-1.81.0.tgz",
+ "integrity": "sha512-ga/Jk4q5Bn1aC+iHJteDZuLSKnmBUiS3dEg1fnl/Z7GaHIChceKDJOw0zNaILRXI0qT2E1at9MwzoRaRA5Nn/g==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-musl-arm": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-musl-arm/-/sass-embedded-linux-musl-arm-1.81.0.tgz",
+ "integrity": "sha512-oWVUvQ4d5Kx1Md75YXZl5z1WBjc+uOhfRRqzkJ3nWc8tjszxJN+y/5EOJavhsNI3/2yoTt6eMXRTqDD9b0tWSQ==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-musl-arm64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-musl-arm64/-/sass-embedded-linux-musl-arm64-1.81.0.tgz",
+ "integrity": "sha512-hpntWf5kjkoxncA1Vh8vhsUOquZ8AROZKx0rQh7ZjSRs4JrYZASz1cfevPKaEM3wIim/nYa6TJqm0VqWsrERlA==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-musl-ia32": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-musl-ia32/-/sass-embedded-linux-musl-ia32-1.81.0.tgz",
+ "integrity": "sha512-UEXUYkBuqTSwg5JNWiNlfMZ1Jx6SJkaEdx+fsL3Tk099L8cKSoJWH2EPz4ZJjNbyIMymrSdVfymheTeZ8u24xA==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-musl-riscv64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-musl-riscv64/-/sass-embedded-linux-musl-riscv64-1.81.0.tgz",
+ "integrity": "sha512-1D7OznytbIhx2XDHWi1nuQ8d/uCVR7FGGzELgaU//T8A9DapVTUgPKvB70AF1k4GzChR9IXU/WvFZs2hDTbaJg==",
+ "cpu": [
+ "riscv64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-musl-x64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-musl-x64/-/sass-embedded-linux-musl-x64-1.81.0.tgz",
+ "integrity": "sha512-ia6VCTeVDQtBSMktXRFza1AZCt8/6aUoujot6Ugf4KmdytQqPJIHxkHaGftm5xwi9WdrMGYS7zgolToPijR11A==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-riscv64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-riscv64/-/sass-embedded-linux-riscv64-1.81.0.tgz",
+ "integrity": "sha512-KbxSsqu4tT1XbhZfJV/5NfW0VtJIGlD58RjqJqJBi8Rnjrx29/upBsuwoDWtsPV/LhoGwwU1XkSa9Q1ifCz4fQ==",
+ "cpu": [
+ "riscv64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-linux-x64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-linux-x64/-/sass-embedded-linux-x64-1.81.0.tgz",
+ "integrity": "sha512-AMDeVY2T9WAnSFkuQcsOn5c29GRs/TuqnCiblKeXfxCSKym5uKdBl/N7GnTV6OjzoxiJBbkYKdVIaS5By7Gj4g==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-win32-arm64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-win32-arm64/-/sass-embedded-win32-arm64-1.81.0.tgz",
+ "integrity": "sha512-YOmBRYnygwWUmCoH14QbMRHjcvCJufeJBAp0m61tOJXIQh64ziwV4mjdqjS/Rx3zhTT4T+nulDUw4d3kLiMncA==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-win32-ia32": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-win32-ia32/-/sass-embedded-win32-ia32-1.81.0.tgz",
+ "integrity": "sha512-HFfr/C+uLJGGTENdnssuNTmXI/xnIasUuEHEKqI+2J0FHCWT5cpz3PGAOHymPyJcZVYGUG/7gIxIx/d7t0LFYw==",
+ "cpu": [
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/sass-embedded-win32-x64": {
+ "version": "1.81.0",
+ "resolved": "https://registry.npmjs.org/sass-embedded-win32-x64/-/sass-embedded-win32-x64-1.81.0.tgz",
+ "integrity": "sha512-wxj52jDcIAwWcXb7ShZ7vQYKcVUkJ+04YM9l46jDY+qwHzliGuorAUyujLyKTE9heGD3gShJ3wPPC1lXzq6v9A==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "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/signal-exit": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
+ "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
+ "dev": true,
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/sirv": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.0.tgz",
+ "integrity": "sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg==",
+ "dev": true,
+ "dependencies": {
+ "@polka/url": "^1.0.0-next.24",
+ "mrmime": "^2.0.0",
+ "totalist": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
+ "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/speakingurl": {
+ "version": "14.0.1",
+ "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz",
+ "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/strip-final-newline": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-4.0.0.tgz",
+ "integrity": "sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/superjson": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.1.tgz",
+ "integrity": "sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==",
+ "dev": true,
+ "dependencies": {
+ "copy-anything": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "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==",
+ "devOptional": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
+ }
+ },
+ "node_modules/svg-tags": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz",
+ "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==",
+ "dev": true
+ },
+ "node_modules/sweetalert2": {
+ "version": "11.14.5",
+ "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.14.5.tgz",
+ "integrity": "sha512-8MWk5uc/r6bWhiJWkUXyEuApfXAhSCZT8FFX7pZXL7YwaPxq+9Ynhi2dUzWkOFn9jvLjKj22CXuccZ+IHcnjvQ==",
+ "funding": {
+ "type": "individual",
+ "url": "https://github.com/sponsors/limonte"
+ }
+ },
+ "node_modules/sync-child-process": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/sync-child-process/-/sync-child-process-1.0.2.tgz",
+ "integrity": "sha512-8lD+t2KrrScJ/7KXCSyfhT3/hRq78rC0wBFqNJXv3mZyn6hW2ypM05JmlSvtqRbeq6jqA94oHbxAr2vYsJ8vDA==",
+ "devOptional": true,
+ "dependencies": {
+ "sync-message-port": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/sync-message-port": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/sync-message-port/-/sync-message-port-1.1.3.tgz",
+ "integrity": "sha512-GTt8rSKje5FilG+wEdfCkOcLL7LWqpMlr2c3LRuKt/YXxcJ52aGSbGBAdI4L3aaqfrBt6y711El53ItyH1NWzg==",
+ "devOptional": true,
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "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/toastify-js": {
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/toastify-js/-/toastify-js-1.12.0.tgz",
+ "integrity": "sha512-HeMHCO9yLPvP9k0apGSdPUWrUbLnxUKNFzgUoZp1PHCLploIX/4DSQ7V8H25ef+h4iO9n0he7ImfcndnN6nDrQ=="
+ },
+ "node_modules/totalist": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz",
+ "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/tslib": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
+ "devOptional": true
+ },
+ "node_modules/unicorn-magic": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz",
+ "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/update-browserslist-db": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz",
+ "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "dependencies": {
+ "escalade": "^3.2.0",
+ "picocolors": "^1.1.0"
+ },
+ "bin": {
+ "update-browserslist-db": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
+ }
+ },
+ "node_modules/varint": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz",
+ "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==",
+ "devOptional": true
+ },
+ "node_modules/vite": {
+ "version": "5.4.11",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz",
+ "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==",
+ "dependencies": {
+ "esbuild": "^0.21.3",
+ "postcss": "^8.4.43",
+ "rollup": "^4.20.0"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^18.0.0 || >=20.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/vitejs/vite?sponsor=1"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.3"
+ },
+ "peerDependencies": {
+ "@types/node": "^18.0.0 || >=20.0.0",
+ "less": "*",
+ "lightningcss": "^1.21.0",
+ "sass": "*",
+ "sass-embedded": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "lightningcss": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "sass-embedded": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vite-hot-client": {
+ "version": "0.2.4",
+ "resolved": "https://registry.npmjs.org/vite-hot-client/-/vite-hot-client-0.2.4.tgz",
+ "integrity": "sha512-a1nzURqO7DDmnXqabFOliz908FRmIppkBKsJthS8rbe8hBEXwEwe4C3Pp33Z1JoFCYfVL4kTOMLKk0ZZxREIeA==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ },
+ "peerDependencies": {
+ "vite": "^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0"
+ }
+ },
+ "node_modules/vite-plugin-inspect": {
+ "version": "0.8.8",
+ "resolved": "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.8.8.tgz",
+ "integrity": "sha512-aZlBuXsWUPJFmMK92GIv6lH7LrwG2POu4KJ+aEdcqnu92OAf+rhBnfMDQvxIJPEB7hE2t5EyY/PMgf5aDLT8EA==",
+ "dev": true,
+ "dependencies": {
+ "@antfu/utils": "^0.7.10",
+ "@rollup/pluginutils": "^5.1.3",
+ "debug": "^4.3.7",
+ "error-stack-parser-es": "^0.1.5",
+ "fs-extra": "^11.2.0",
+ "open": "^10.1.0",
+ "perfect-debounce": "^1.0.0",
+ "picocolors": "^1.1.1",
+ "sirv": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ },
+ "peerDependencies": {
+ "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0"
+ },
+ "peerDependenciesMeta": {
+ "@nuxt/kit": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vite-plugin-singlefile": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/vite-plugin-singlefile/-/vite-plugin-singlefile-2.1.0.tgz",
+ "integrity": "sha512-7tJo+UgZABlKpY/nubth/wxJ4+pUGREPnEwNOknxwl2MM0zTvF14KTU4Ln1lc140gjLLV5mjDrvuoquU7OZqCg==",
+ "dependencies": {
+ "micromatch": "^4.0.8"
+ },
+ "engines": {
+ "node": ">18.0.0"
+ },
+ "peerDependencies": {
+ "rollup": "^4.28.1",
+ "vite": "^5.4.11 || ^6.0.0"
+ }
+ },
+ "node_modules/vite-plugin-vue-devtools": {
+ "version": "7.6.7",
+ "resolved": "https://registry.npmjs.org/vite-plugin-vue-devtools/-/vite-plugin-vue-devtools-7.6.7.tgz",
+ "integrity": "sha512-H1ZyjtpWjP5mHA5R15sQeYgAARuh2Myg3TDFXWZK6QOQRy8s3XjTIt319DogVjU/x3rC3L/jJQjIasRU04mWXA==",
+ "dev": true,
+ "dependencies": {
+ "@vue/devtools-core": "^7.6.7",
+ "@vue/devtools-kit": "^7.6.7",
+ "@vue/devtools-shared": "^7.6.7",
+ "execa": "^9.5.1",
+ "sirv": "^3.0.0",
+ "vite-plugin-inspect": "0.8.8",
+ "vite-plugin-vue-inspector": "^5.3.1"
+ },
+ "engines": {
+ "node": ">=v14.21.3"
+ },
+ "peerDependencies": {
+ "vite": "^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0"
+ }
+ },
+ "node_modules/vite-plugin-vue-inspector": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/vite-plugin-vue-inspector/-/vite-plugin-vue-inspector-5.3.1.tgz",
+ "integrity": "sha512-cBk172kZKTdvGpJuzCCLg8lJ909wopwsu3Ve9FsL1XsnLBiRT9U3MePcqrgGHgCX2ZgkqZmAGR8taxw+TV6s7A==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "^7.23.0",
+ "@babel/plugin-proposal-decorators": "^7.23.0",
+ "@babel/plugin-syntax-import-attributes": "^7.22.5",
+ "@babel/plugin-syntax-import-meta": "^7.10.4",
+ "@babel/plugin-transform-typescript": "^7.22.15",
+ "@vue/babel-plugin-jsx": "^1.1.5",
+ "@vue/compiler-dom": "^3.3.4",
+ "kolorist": "^1.8.0",
+ "magic-string": "^0.30.4"
+ },
+ "peerDependencies": {
+ "vite": "^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0"
+ }
+ },
+ "node_modules/vue": {
+ "version": "3.5.13",
+ "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz",
+ "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.5.13",
+ "@vue/compiler-sfc": "3.5.13",
+ "@vue/runtime-dom": "3.5.13",
+ "@vue/server-renderer": "3.5.13",
+ "@vue/shared": "3.5.13"
+ },
+ "peerDependencies": {
+ "typescript": "*"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue-chartjs": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/vue-chartjs/-/vue-chartjs-5.3.2.tgz",
+ "integrity": "sha512-NrkbRRoYshbXbWqJkTN6InoDVwVb90C0R7eAVgMWcB9dPikbruaOoTFjFYHE/+tNPdIe6qdLCDjfjPHQ0fw4jw==",
+ "peerDependencies": {
+ "chart.js": "^4.1.1",
+ "vue": "^3.0.0-0 || ^2.7.0"
+ }
+ },
+ "node_modules/vue-popperjs": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/vue-popperjs/-/vue-popperjs-2.3.0.tgz",
+ "integrity": "sha512-925QEeNjlMtb3eDHl5ZlODJzqnQL0nQPEKpr9aQ3XBg21DyqAdfLgD/At4svsPwFeIkpdF1gvHarENon47L9Cg==",
+ "hasInstallScript": true,
+ "dependencies": {
+ "opencollective-postinstall": "^2.0.2",
+ "popper.js": "^1.15.0"
+ }
+ },
+ "node_modules/vue-router": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.5.0.tgz",
+ "integrity": "sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==",
+ "dependencies": {
+ "@vue/devtools-api": "^6.6.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/posva"
+ },
+ "peerDependencies": {
+ "vue": "^3.2.0"
+ }
+ },
+ "node_modules/vuex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/vuex/-/vuex-4.1.0.tgz",
+ "integrity": "sha512-hmV6UerDrPcgbSy9ORAtNXDr9M4wlNP4pEFKye4ujJF8oqgFFuxDCdOLS3eNoRTtq5O3hoBDh9Doj1bQMYHRbQ==",
+ "dependencies": {
+ "@vue/devtools-api": "^6.0.0-beta.11"
+ },
+ "peerDependencies": {
+ "vue": "^3.2.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/yallist": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
+ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
+ "dev": true
+ },
+ "node_modules/yoctocolors": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.1.tgz",
+ "integrity": "sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
new file mode 100644
index 00000000..fc557d55
--- /dev/null
+++ b/package.json
@@ -0,0 +1,40 @@
+{
+ "name": "truckwashdashboardsfrontend",
+ "version": "0.0.0",
+ "private": true,
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "@creativebulma/bulma-badge": "^1.0.1",
+ "@popperjs/core": "^2.11.8",
+ "@sweetalert2/theme-bulma": "^5.0.18",
+ "@sweetalert2/theme-dark": "^5.0.18",
+ "axios": "^1.7.8",
+ "bulma": "^1.0.2",
+ "bulma-list": "^3.0.0",
+ "bulma-pageloader": "^0.3.0",
+ "bulma-quickview": "^2.0.0",
+ "bulma-switch": "^2.0.4",
+ "chart.js": "^4.4.7",
+ "sass": "^1.81.1",
+ "sweetalert2": "^11.14.5",
+ "toastify-js": "^1.12.0",
+ "vite-plugin-singlefile": "^2.1.0",
+ "vue": "^3.5.12",
+ "vue-chartjs": "^5.3.2",
+ "vue-popperjs": "^2.3.0",
+ "vue-router": "^4.5.0",
+ "vuex": "^4.1.0"
+ },
+ "devDependencies": {
+ "@creativebulma/bulma-divider": "^1.1.0",
+ "@vitejs/plugin-vue": "^5.1.4",
+ "sass-embedded": "^1.81.0",
+ "vite": "^5.4.10",
+ "vite-plugin-vue-devtools": "^7.5.4"
+ }
+}
diff --git a/public/favicon.ico b/public/favicon.ico
new file mode 100644
index 0000000000000000000000000000000000000000..df36fcfb72584e00488330b560ebcf34a41c64c2
GIT binary patch
literal 4286
zcmds*O-Phc6o&64GDVCEQHxsW(p4>LW*W<827=Unuo8sGpRux(DN@jWP-e29Wl%wj
zY84_aq9}^Am9-cWTD5GGEo#+5Fi2wX_P*bo+xO!)p*7B;iKlbFd(U~_d(U?#hLj56
zPhFkj-|A6~Qk#@g^#D^U0XT1cu=c-vu1+SElX9NR;kzAUV(q0|dl0|%h|dI$%VICy
zJnu2^L*Te9JrJMGh%-P79CL0}dq92RGU6gI{v2~|)p}sG5x0U*z<8U;Ij*hB9z?ei
z@g6Xq-pDoPl=MANPiR7%172VA%r)kevtV-_5H*QJKFmd;8yA$98zCxBZYXTNZ#QFk2(TX0;Y2dt&WitL#$96|gJY=3xX
zpCoi|YNzgO3R`f@IiEeSmKrPSf#h#Qd<$%Ej^RIeeYfsxhPMOG`S`Pz8q``=511zm
zAm)MX5AV^5xIWPyEu7u>qYs?pn$I4nL9J!=K=SGlKLXpE<5x+2cDTXq?brj?n6sp=
zphe9;_JHf40^9~}9i08r{XM$7HB!`{Ys~TK0kx<}ZQng`UPvH*11|q7&l9?@FQz;8
zx!=3<4seY*%=OlbCbcae?5^V_}*K>Uo6ZWV8mTyE^B=DKy7-sdLYkR5Z?paTgK-zyIkKjIcpyO
z{+uIt&YSa_$QnN_@t~L014dyK(fOOo+W*MIxbA6Ndgr=Y!f#Tokqv}n<7-9qfHkc3
z=>a|HWqcX8fzQCT=dqVbogRq!-S>H%yA{1w#2Pn;=e>JiEj7Hl;zdt-2f+j2%DeVD
zsW0Ab)ZK@0cIW%W7z}H{&~yGhn~D;aiP4=;m-HCo`BEI+Kd6
z={Xwx{T%b6i9IjI)Ls)S{-*mq<@~R{?$}ZKjf;^k75i_}(2MXt}^SEBVg7AI@28
zo_uPg2V)_e-`2Ois=PYoe%9u*n9({PFR)OnHJPi{dNx>KxD#iCLfl2vQGDitKtN>z|-AdCN|$jTFDg0m3O`WLD4_s#$S
literal 0
HcmV?d00001
diff --git a/src/App.vue b/src/App.vue
new file mode 100644
index 00000000..b61c0c7f
--- /dev/null
+++ b/src/App.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/assets/base.css b/src/assets/base.css
new file mode 100644
index 00000000..8816868a
--- /dev/null
+++ b/src/assets/base.css
@@ -0,0 +1,86 @@
+/* color palette from */
+:root {
+ --vt-c-white: #ffffff;
+ --vt-c-white-soft: #f8f8f8;
+ --vt-c-white-mute: #f2f2f2;
+
+ --vt-c-black: #181818;
+ --vt-c-black-soft: #222222;
+ --vt-c-black-mute: #282828;
+
+ --vt-c-indigo: #2c3e50;
+
+ --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
+ --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
+ --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
+ --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
+
+ --vt-c-text-light-1: var(--vt-c-indigo);
+ --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
+ --vt-c-text-dark-1: var(--vt-c-white);
+ --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
+}
+
+/* semantic color variables for this project */
+:root {
+ --color-background: var(--vt-c-white);
+ --color-background-soft: var(--vt-c-white-soft);
+ --color-background-mute: var(--vt-c-white-mute);
+
+ --color-border: var(--vt-c-divider-light-2);
+ --color-border-hover: var(--vt-c-divider-light-1);
+
+ --color-heading: var(--vt-c-text-light-1);
+ --color-text: var(--vt-c-text-light-1);
+
+ --section-gap: 160px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--vt-c-black);
+ --color-background-soft: var(--vt-c-black-soft);
+ --color-background-mute: var(--vt-c-black-mute);
+
+ --color-border: var(--vt-c-divider-dark-2);
+ --color-border-hover: var(--vt-c-divider-dark-1);
+
+ --color-heading: var(--vt-c-text-dark-1);
+ --color-text: var(--vt-c-text-dark-2);
+ }
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+ margin: 0;
+ font-weight: normal;
+}
+
+body {
+ min-height: 100vh;
+ color: var(--color-text);
+ background: var(--color-background);
+ transition:
+ color 0.5s,
+ background-color 0.5s;
+ line-height: 1.6;
+ font-family:
+ Inter,
+ -apple-system,
+ BlinkMacSystemFont,
+ 'Segoe UI',
+ Roboto,
+ Oxygen,
+ Ubuntu,
+ Cantarell,
+ 'Fira Sans',
+ 'Droid Sans',
+ 'Helvetica Neue',
+ sans-serif;
+ font-size: 15px;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
diff --git a/src/assets/branding/truckwash-banner-white-compressed.png b/src/assets/branding/truckwash-banner-white-compressed.png
new file mode 100644
index 0000000000000000000000000000000000000000..207a85822bef87464c1e9931ae5705ab052e9f38
GIT binary patch
literal 5046
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
diff --git a/src/assets/main.css b/src/assets/main.css
new file mode 100644
index 00000000..a1521999
--- /dev/null
+++ b/src/assets/main.css
@@ -0,0 +1 @@
+@import './base.css';
diff --git a/src/assets/piktogrammer/01.png b/src/assets/piktogrammer/01.png
new file mode 100644
index 0000000000000000000000000000000000000000..3e66a258536047758be6937a79315fa400f62237
GIT binary patch
literal 79856
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