From 6cda80f234554f4f541bd3a155fc7c25664c0e9e Mon Sep 17 00:00:00 2001 From: ulitsaRaskolnikova Date: Mon, 9 Feb 2026 16:06:36 +0300 Subject: [PATCH] feat(front): init --- common/build.gradle.kts | 2 +- docker-compose.yml | 13 + domains-frontend/.dockerignore | 4 + domains-frontend/.prettierignore | 4 + domains-frontend/.prettierrc | 6 + domains-frontend/Dockerfile | 18 + domains-frontend/nginx.conf | 25 + domains-frontend/orval.config.ts | 48 + domains-frontend/package.json | 40 + domains-frontend/pnpm-lock.yaml | 4976 +++++++++++++++++ domains-frontend/public/favicon.png | Bin 0 -> 6290 bytes domains-frontend/rsbuild.config.ts | 10 + domains-frontend/src/App.tsx | 8 + domains-frontend/src/api/Constants.ts | 4 + domains-frontend/src/api/apiClient.ts | 109 + domains-frontend/src/api/apiClientDomains.ts | 109 + domains-frontend/src/api/apiClientExdns.ts | 43 + .../src/api/models/DomainQuery.ts | 5 + .../src/api/models/auth/apiError.ts | 13 + .../src/api/models/auth/apiErrorDetails.ts | 8 + .../src/api/models/auth/apiResponseBoolean.ts | 14 + .../models/auth/apiResponseLoginResponse.ts | 15 + .../src/api/models/auth/apiResponseString.ts | 14 + .../auth/apiResponseTwoFactorSetupResponse.ts | 15 + .../models/auth/apiResponseUserResponse.ts | 15 + .../models/auth/enable2FAWithSecretRequest.ts | 12 + .../models/auth/getAuthVerifyEmailParams.ts | 10 + domains-frontend/src/api/models/auth/index.ts | 25 + .../src/api/models/auth/loginRequest.ts | 12 + .../src/api/models/auth/loginResponse.ts | 13 + .../auth/postAuthResendVerificationParams.ts | 10 + .../api/models/auth/refreshTokenRequest.ts | 10 + .../src/api/models/auth/registerRequest.ts | 15 + .../auth/resendVerificationEmailParams.ts | 10 + .../api/models/auth/twoFactorSetupResponse.ts | 12 + .../src/api/models/auth/userResponse.ts | 13 + .../src/api/models/auth/verifyEmailParams.ts | 10 + .../models/domain-order/addCartItemRequest.ts | 15 + .../domain-order/addCartItemRequestAction.ts | 15 + .../domain-order/addCartItemRequestTerm.ts | 15 + .../src/api/models/domain-order/apiError.ts | 13 + .../models/domain-order/apiErrorDetails.ts | 8 + .../apiResponseCartItemResponse.ts | 15 + .../domain-order/apiResponseCartResponse.ts | 15 + .../apiResponseDnsRecordResponse.ts | 15 + .../apiResponseDomainExpiryAlertResponse.ts | 17 + .../domain-order/apiResponseDomainResponse.ts | 15 + .../apiResponseListDnsRecordResponse.ts | 15 + .../apiResponseListDomainSearchResult.ts | 15 + .../apiResponseMonitoringDashboardResponse.ts | 17 + ...ResponseNotificationPreferencesResponse.ts | 17 + .../apiResponseNsDelegationResponse.ts | 15 + .../domain-order/apiResponseOrderResponse.ts | 15 + ...ponsePageDomainExpiryMonitoringResponse.ts | 17 + .../apiResponsePageDomainResponse.ts | 15 + .../apiResponsePageOrderResponse.ts | 15 + .../domain-order/apiResponsePageZone.ts | 15 + .../models/domain-order/apiResponseString.ts | 14 + .../models/domain-order/apiResponseVoid.ts | 15 + .../domain-order/apiResponseVoidData.ts | 8 + .../models/domain-order/apiResponseZone.ts | 15 + .../models/domain-order/cartItemResponse.ts | 18 + .../domain-order/cartItemResponseAction.ts | 15 + .../domain-order/cartItemResponseTerm.ts | 15 + .../api/models/domain-order/cartResponse.ts | 15 + .../domain-order/createARecordRequest.ts | 14 + .../domain-order/createAaaaRecordRequest.ts | 14 + .../domain-order/createCaaRecordRequest.ts | 17 + .../domain-order/createCnameRecordRequest.ts | 13 + .../domain-order/createDomainRequest.ts | 12 + .../domain-order/createMxRecordRequest.ts | 15 + .../models/domain-order/createOrderRequest.ts | 10 + .../domain-order/createSrvRecordRequest.ts | 25 + .../domain-order/createTxtRecordRequest.ts | 13 + .../models/domain-order/createZoneRequest.ts | 11 + .../models/domain-order/dnsRecordResponse.ts | 20 + .../domain-order/domainExpiryAlertResponse.ts | 11 + .../domainExpiryMonitoringResponse.ts | 18 + .../api/models/domain-order/domainResponse.ts | 17 + .../models/domain-order/domainSearchResult.ts | 12 + .../domain-order/expiryAlertPreference.ts | 12 + .../domain-order/getAllDomainsParams.ts | 11 + .../models/domain-order/getAllZonesParams.ts | 11 + .../models/domain-order/getDomainsParams.ts | 18 + .../domain-order/getDomainsSearchParams.ts | 10 + ...ificationsExpiryMonitoringDomainsParams.ts | 18 + .../models/domain-order/getOrdersParams.ts | 11 + .../api/models/domain-order/getZonesParams.ts | 18 + .../src/api/models/domain-order/index.ts | 91 + .../src/api/models/domain-order/itemAction.ts | 14 + .../src/api/models/domain-order/itemTerm.ts | 14 + .../monitoringDashboardResponse.ts | 16 + .../notificationPreferencesResponse.ts | 14 + .../models/domain-order/notificationType.ts | 18 + .../domain-order/nsDelegationRequest.ts | 14 + .../domain-order/nsDelegationResponse.ts | 12 + .../models/domain-order/orderItemResponse.ts | 17 + .../domain-order/orderItemResponseAction.ts | 15 + .../domain-order/orderItemResponseTerm.ts | 15 + .../api/models/domain-order/orderResponse.ts | 19 + .../domain-order/orderResponseStatus.ts | 18 + .../api/models/domain-order/orderStatus.ts | 17 + .../pageDomainExpiryMonitoringResponse.ts | 19 + .../models/domain-order/pageDomainResponse.ts | 23 + .../models/domain-order/pageOrderResponse.ts | 23 + .../src/api/models/domain-order/pageZone.ts | 23 + .../src/api/models/domain-order/pageable.ts | 14 + .../api/models/domain-order/pageableObject.ts | 16 + .../domain-order/putOrdersIdStatusParams.ts | 11 + .../domain-order/searchDomainsParams.ts | 10 + .../domain-order/sendNotificationRequest.ts | 19 + .../sendNotificationRequestParameters.ts | 13 + .../src/api/models/domain-order/sortObject.ts | 14 + .../domain-order/updateDnsRecordRequest.ts | 16 + .../domain-order/updateDomainRequest.ts | 11 + .../domain-order/updateExpiryAlertsRequest.ts | 11 + .../updateNotificationPreferencesRequest.ts | 17 + .../domain-order/updateOrderStatusParams.ts | 11 + .../domain-order/updateOrderStatusStatus.ts | 18 + .../models/domain-order/updateZoneRequest.ts | 10 + .../domain-order/userIdHeaderParameter.ts | 8 + .../src/api/models/domain-order/zone.ts | 14 + .../api/models/exdns/deleteZonesDomain200.ts | 10 + .../src/api/models/exdns/error.ts | 10 + .../src/api/models/exdns/index.ts | 14 + .../api/models/exdns/postZonesDomain201.ts | 10 + .../src/api/models/exdns/putZonesDomain200.ts | 10 + .../src/api/models/exdns/record.ts | 14 + .../src/api/models/exdns/recordType.ts | 20 + domains-frontend/src/api/models/exdns/zone.ts | 13 + domains-frontend/src/api/services/auth.ts | 203 + .../src/api/services/domain-order.ts | 631 +++ domains-frontend/src/api/services/exdns.ts | 92 + domains-frontend/src/api/specs/exdns.json | 244 + domains-frontend/src/assets/bg.png | Bin 0 -> 590914 bytes domains-frontend/src/assets/bg.webp | Bin 0 -> 14062 bytes domains-frontend/src/common/atoms.ts | 2 + domains-frontend/src/components/AppLink.tsx | 22 + domains-frontend/src/components/DateText.tsx | 23 + .../admin/zones/CreateZoneDialog.tsx | 122 + .../admin/zones/ManageZoneDialog.tsx | 154 + .../components/app/profile/ChangePassword.tsx | 103 + .../app/profile/EnableTwoFactorDialog.tsx | 152 + .../src/components/dashboard/DomainList.tsx | 48 + .../src/components/dashboard/EventList.tsx | 53 + .../src/components/domainsTable/DomainRow.tsx | 29 + .../components/domainsTable/DomainsTable.tsx | 39 + .../src/components/layouts/AdminLayout.tsx | 123 + .../src/components/layouts/AppLayout.tsx | 118 + .../src/components/layouts/AuthLayout.tsx | 19 + .../src/components/layouts/Layout.tsx | 18 + .../src/components/layouts/PublicLayout.tsx | 37 + .../src/components/ui/color-mode.tsx | 108 + .../src/components/ui/provider.tsx | 13 + .../src/components/ui/toaster.tsx | 43 + .../src/components/ui/tooltip.tsx | 46 + domains-frontend/src/env.d.ts | 11 + domains-frontend/src/index.tsx | 15 + .../src/pages/CheckDomainPage.tsx | 82 + domains-frontend/src/pages/NotFound.tsx | 29 + domains-frontend/src/pages/WelcomePage.tsx | 103 + .../src/pages/admin/AdminDashboardPage.tsx | 83 + .../src/pages/admin/FinancesPage.tsx | 85 + .../src/pages/admin/SystemEventsPage.tsx | 37 + .../src/pages/admin/UsersDomainsPage.tsx | 79 + .../src/pages/admin/UsersPage.tsx | 61 + domains-frontend/src/pages/app/CartPage.tsx | 280 + domains-frontend/src/pages/app/DNSPage.tsx | 210 + .../src/pages/app/DashboardPage.tsx | 62 + .../src/pages/app/DomainsPage.tsx | 54 + domains-frontend/src/pages/app/EventsPage.tsx | 29 + .../src/pages/app/ProfilePage.tsx | 84 + .../src/pages/auth/CheckEmailPage.tsx | 68 + .../src/pages/auth/ForgetPasswordPage.tsx | 56 + .../src/pages/auth/SignInPage.tsx | 136 + .../src/pages/auth/SignUpPage.tsx | 145 + domains-frontend/src/pages/auth/TFAPage.tsx | 23 + .../src/pages/auth/TFATotpPage.tsx | 104 + .../src/pages/auth/TFAWebAuthnPage.tsx | 16 + .../src/pages/auth/VerificateEmailPage.tsx | 53 + domains-frontend/src/pages/auth/ZonesPage.tsx | 82 + domains-frontend/src/router/index.tsx | 73 + domains-frontend/src/store/AutoStore.ts | 18 + domains-frontend/src/store/RootStore.ts | 12 + domains-frontend/src/store/UserStore.ts | 22 + domains-frontend/src/store/index.tsx | 11 + domains-frontend/src/theme/index.ts | 68 + domains-frontend/src/types.d.ts | 10 + domains-frontend/src/utils/authTokens.ts | 60 + domains-frontend/src/utils/validateDomain.ts | 17 + domains-frontend/tsconfig.json | 27 + 191 files changed, 11857 insertions(+), 1 deletion(-) create mode 100644 domains-frontend/.dockerignore create mode 100644 domains-frontend/.prettierignore create mode 100644 domains-frontend/.prettierrc create mode 100644 domains-frontend/Dockerfile create mode 100644 domains-frontend/nginx.conf create mode 100644 domains-frontend/orval.config.ts create mode 100644 domains-frontend/package.json create mode 100644 domains-frontend/pnpm-lock.yaml create mode 100644 domains-frontend/public/favicon.png create mode 100644 domains-frontend/rsbuild.config.ts create mode 100644 domains-frontend/src/App.tsx create mode 100644 domains-frontend/src/api/Constants.ts create mode 100644 domains-frontend/src/api/apiClient.ts create mode 100644 domains-frontend/src/api/apiClientDomains.ts create mode 100644 domains-frontend/src/api/apiClientExdns.ts create mode 100644 domains-frontend/src/api/models/DomainQuery.ts create mode 100644 domains-frontend/src/api/models/auth/apiError.ts create mode 100644 domains-frontend/src/api/models/auth/apiErrorDetails.ts create mode 100644 domains-frontend/src/api/models/auth/apiResponseBoolean.ts create mode 100644 domains-frontend/src/api/models/auth/apiResponseLoginResponse.ts create mode 100644 domains-frontend/src/api/models/auth/apiResponseString.ts create mode 100644 domains-frontend/src/api/models/auth/apiResponseTwoFactorSetupResponse.ts create mode 100644 domains-frontend/src/api/models/auth/apiResponseUserResponse.ts create mode 100644 domains-frontend/src/api/models/auth/enable2FAWithSecretRequest.ts create mode 100644 domains-frontend/src/api/models/auth/getAuthVerifyEmailParams.ts create mode 100644 domains-frontend/src/api/models/auth/index.ts create mode 100644 domains-frontend/src/api/models/auth/loginRequest.ts create mode 100644 domains-frontend/src/api/models/auth/loginResponse.ts create mode 100644 domains-frontend/src/api/models/auth/postAuthResendVerificationParams.ts create mode 100644 domains-frontend/src/api/models/auth/refreshTokenRequest.ts create mode 100644 domains-frontend/src/api/models/auth/registerRequest.ts create mode 100644 domains-frontend/src/api/models/auth/resendVerificationEmailParams.ts create mode 100644 domains-frontend/src/api/models/auth/twoFactorSetupResponse.ts create mode 100644 domains-frontend/src/api/models/auth/userResponse.ts create mode 100644 domains-frontend/src/api/models/auth/verifyEmailParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/addCartItemRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/addCartItemRequestAction.ts create mode 100644 domains-frontend/src/api/models/domain-order/addCartItemRequestTerm.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiError.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiErrorDetails.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseCartItemResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseCartResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseDnsRecordResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseDomainExpiryAlertResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseDomainResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseListDnsRecordResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseListDomainSearchResult.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseMonitoringDashboardResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseNotificationPreferencesResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseNsDelegationResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseOrderResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponsePageDomainExpiryMonitoringResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponsePageDomainResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponsePageOrderResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponsePageZone.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseString.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseVoid.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseVoidData.ts create mode 100644 domains-frontend/src/api/models/domain-order/apiResponseZone.ts create mode 100644 domains-frontend/src/api/models/domain-order/cartItemResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/cartItemResponseAction.ts create mode 100644 domains-frontend/src/api/models/domain-order/cartItemResponseTerm.ts create mode 100644 domains-frontend/src/api/models/domain-order/cartResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/createARecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createAaaaRecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createCaaRecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createCnameRecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createDomainRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createMxRecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createOrderRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createSrvRecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createTxtRecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/createZoneRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/dnsRecordResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/domainExpiryAlertResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/domainExpiryMonitoringResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/domainResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/domainSearchResult.ts create mode 100644 domains-frontend/src/api/models/domain-order/expiryAlertPreference.ts create mode 100644 domains-frontend/src/api/models/domain-order/getAllDomainsParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/getAllZonesParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/getDomainsParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/getDomainsSearchParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/getNotificationsExpiryMonitoringDomainsParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/getOrdersParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/getZonesParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/index.ts create mode 100644 domains-frontend/src/api/models/domain-order/itemAction.ts create mode 100644 domains-frontend/src/api/models/domain-order/itemTerm.ts create mode 100644 domains-frontend/src/api/models/domain-order/monitoringDashboardResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/notificationPreferencesResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/notificationType.ts create mode 100644 domains-frontend/src/api/models/domain-order/nsDelegationRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/nsDelegationResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/orderItemResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/orderItemResponseAction.ts create mode 100644 domains-frontend/src/api/models/domain-order/orderItemResponseTerm.ts create mode 100644 domains-frontend/src/api/models/domain-order/orderResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/orderResponseStatus.ts create mode 100644 domains-frontend/src/api/models/domain-order/orderStatus.ts create mode 100644 domains-frontend/src/api/models/domain-order/pageDomainExpiryMonitoringResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/pageDomainResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/pageOrderResponse.ts create mode 100644 domains-frontend/src/api/models/domain-order/pageZone.ts create mode 100644 domains-frontend/src/api/models/domain-order/pageable.ts create mode 100644 domains-frontend/src/api/models/domain-order/pageableObject.ts create mode 100644 domains-frontend/src/api/models/domain-order/putOrdersIdStatusParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/searchDomainsParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/sendNotificationRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/sendNotificationRequestParameters.ts create mode 100644 domains-frontend/src/api/models/domain-order/sortObject.ts create mode 100644 domains-frontend/src/api/models/domain-order/updateDnsRecordRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/updateDomainRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/updateExpiryAlertsRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/updateNotificationPreferencesRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/updateOrderStatusParams.ts create mode 100644 domains-frontend/src/api/models/domain-order/updateOrderStatusStatus.ts create mode 100644 domains-frontend/src/api/models/domain-order/updateZoneRequest.ts create mode 100644 domains-frontend/src/api/models/domain-order/userIdHeaderParameter.ts create mode 100644 domains-frontend/src/api/models/domain-order/zone.ts create mode 100644 domains-frontend/src/api/models/exdns/deleteZonesDomain200.ts create mode 100644 domains-frontend/src/api/models/exdns/error.ts create mode 100644 domains-frontend/src/api/models/exdns/index.ts create mode 100644 domains-frontend/src/api/models/exdns/postZonesDomain201.ts create mode 100644 domains-frontend/src/api/models/exdns/putZonesDomain200.ts create mode 100644 domains-frontend/src/api/models/exdns/record.ts create mode 100644 domains-frontend/src/api/models/exdns/recordType.ts create mode 100644 domains-frontend/src/api/models/exdns/zone.ts create mode 100644 domains-frontend/src/api/services/auth.ts create mode 100644 domains-frontend/src/api/services/domain-order.ts create mode 100644 domains-frontend/src/api/services/exdns.ts create mode 100644 domains-frontend/src/api/specs/exdns.json create mode 100644 domains-frontend/src/assets/bg.png create mode 100644 domains-frontend/src/assets/bg.webp create mode 100644 domains-frontend/src/common/atoms.ts create mode 100644 domains-frontend/src/components/AppLink.tsx create mode 100644 domains-frontend/src/components/DateText.tsx create mode 100644 domains-frontend/src/components/admin/zones/CreateZoneDialog.tsx create mode 100644 domains-frontend/src/components/admin/zones/ManageZoneDialog.tsx create mode 100644 domains-frontend/src/components/app/profile/ChangePassword.tsx create mode 100644 domains-frontend/src/components/app/profile/EnableTwoFactorDialog.tsx create mode 100644 domains-frontend/src/components/dashboard/DomainList.tsx create mode 100644 domains-frontend/src/components/dashboard/EventList.tsx create mode 100644 domains-frontend/src/components/domainsTable/DomainRow.tsx create mode 100644 domains-frontend/src/components/domainsTable/DomainsTable.tsx create mode 100644 domains-frontend/src/components/layouts/AdminLayout.tsx create mode 100644 domains-frontend/src/components/layouts/AppLayout.tsx create mode 100644 domains-frontend/src/components/layouts/AuthLayout.tsx create mode 100644 domains-frontend/src/components/layouts/Layout.tsx create mode 100644 domains-frontend/src/components/layouts/PublicLayout.tsx create mode 100644 domains-frontend/src/components/ui/color-mode.tsx create mode 100644 domains-frontend/src/components/ui/provider.tsx create mode 100644 domains-frontend/src/components/ui/toaster.tsx create mode 100644 domains-frontend/src/components/ui/tooltip.tsx create mode 100644 domains-frontend/src/env.d.ts create mode 100644 domains-frontend/src/index.tsx create mode 100644 domains-frontend/src/pages/CheckDomainPage.tsx create mode 100644 domains-frontend/src/pages/NotFound.tsx create mode 100644 domains-frontend/src/pages/WelcomePage.tsx create mode 100644 domains-frontend/src/pages/admin/AdminDashboardPage.tsx create mode 100644 domains-frontend/src/pages/admin/FinancesPage.tsx create mode 100644 domains-frontend/src/pages/admin/SystemEventsPage.tsx create mode 100644 domains-frontend/src/pages/admin/UsersDomainsPage.tsx create mode 100644 domains-frontend/src/pages/admin/UsersPage.tsx create mode 100644 domains-frontend/src/pages/app/CartPage.tsx create mode 100644 domains-frontend/src/pages/app/DNSPage.tsx create mode 100644 domains-frontend/src/pages/app/DashboardPage.tsx create mode 100644 domains-frontend/src/pages/app/DomainsPage.tsx create mode 100644 domains-frontend/src/pages/app/EventsPage.tsx create mode 100644 domains-frontend/src/pages/app/ProfilePage.tsx create mode 100644 domains-frontend/src/pages/auth/CheckEmailPage.tsx create mode 100644 domains-frontend/src/pages/auth/ForgetPasswordPage.tsx create mode 100644 domains-frontend/src/pages/auth/SignInPage.tsx create mode 100644 domains-frontend/src/pages/auth/SignUpPage.tsx create mode 100644 domains-frontend/src/pages/auth/TFAPage.tsx create mode 100644 domains-frontend/src/pages/auth/TFATotpPage.tsx create mode 100644 domains-frontend/src/pages/auth/TFAWebAuthnPage.tsx create mode 100644 domains-frontend/src/pages/auth/VerificateEmailPage.tsx create mode 100644 domains-frontend/src/pages/auth/ZonesPage.tsx create mode 100644 domains-frontend/src/router/index.tsx create mode 100644 domains-frontend/src/store/AutoStore.ts create mode 100644 domains-frontend/src/store/RootStore.ts create mode 100644 domains-frontend/src/store/UserStore.ts create mode 100644 domains-frontend/src/store/index.tsx create mode 100644 domains-frontend/src/theme/index.ts create mode 100644 domains-frontend/src/types.d.ts create mode 100644 domains-frontend/src/utils/authTokens.ts create mode 100644 domains-frontend/src/utils/validateDomain.ts create mode 100644 domains-frontend/tsconfig.json diff --git a/common/build.gradle.kts b/common/build.gradle.kts index db6c3ef..5cc5585 100644 --- a/common/build.gradle.kts +++ b/common/build.gradle.kts @@ -19,7 +19,7 @@ dependencies { api("io.jsonwebtoken:jjwt-impl:0.12.3") api("io.jsonwebtoken:jjwt-jackson:0.12.3") - api("org.springframework.boot:spring-boot-starter-web") + compileOnly("org.springframework:spring-web") compileOnly("org.projectlombok:lombok") annotationProcessor("org.projectlombok:lombok") diff --git a/docker-compose.yml b/docker-compose.yml index b24e7c7..d44a2d6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,19 @@ name: is-coursework services: + frontend: + build: + context: ./domains-frontend + dockerfile: Dockerfile + container_name: frontend + ports: + - "3000:3000" + depends_on: + - api-gateway + - exdns + networks: + - domain-registrar-network + api-gateway: build: context: . diff --git a/domains-frontend/.dockerignore b/domains-frontend/.dockerignore new file mode 100644 index 0000000..62b26e1 --- /dev/null +++ b/domains-frontend/.dockerignore @@ -0,0 +1,4 @@ +node_modules +dist +.git +*.md diff --git a/domains-frontend/.prettierignore b/domains-frontend/.prettierignore new file mode 100644 index 0000000..ac66857 --- /dev/null +++ b/domains-frontend/.prettierignore @@ -0,0 +1,4 @@ +# Lock files +package-lock.json +pnpm-lock.yaml +yarn.lock diff --git a/domains-frontend/.prettierrc b/domains-frontend/.prettierrc new file mode 100644 index 0000000..0a72520 --- /dev/null +++ b/domains-frontend/.prettierrc @@ -0,0 +1,6 @@ +{ + "trailingComma": "es5", + "tabWidth": 2, + "semi": true, + "singleQuote": true +} diff --git a/domains-frontend/Dockerfile b/domains-frontend/Dockerfile new file mode 100644 index 0000000..8314398 --- /dev/null +++ b/domains-frontend/Dockerfile @@ -0,0 +1,18 @@ +FROM node:20-alpine AS build +WORKDIR /app + +RUN corepack enable && corepack prepare pnpm@latest --activate + +COPY package.json pnpm-lock.yaml ./ +RUN pnpm install --frozen-lockfile + +COPY . . +RUN pnpm build + +FROM nginx:alpine +COPY --from=build /app/dist /usr/share/nginx/html +COPY nginx.conf /etc/nginx/conf.d/default.conf + +EXPOSE 3000 + +CMD ["nginx", "-g", "daemon off;"] diff --git a/domains-frontend/nginx.conf b/domains-frontend/nginx.conf new file mode 100644 index 0000000..9486ff5 --- /dev/null +++ b/domains-frontend/nginx.conf @@ -0,0 +1,25 @@ +server { + listen 3000; + server_name localhost; + + root /usr/share/nginx/html; + index index.html; + + location /api/ { + proxy_pass http://api-gateway:8080/api/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + location /exdns/ { + proxy_pass http://exdns:8000/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + } + + location / { + try_files $uri $uri/ /index.html; + } +} diff --git a/domains-frontend/orval.config.ts b/domains-frontend/orval.config.ts new file mode 100644 index 0000000..b6db5e1 --- /dev/null +++ b/domains-frontend/orval.config.ts @@ -0,0 +1,48 @@ +import { defineConfig } from 'orval'; + +export default defineConfig({ + auth: { + // input: 'src/api/specs/auth-openapi.json', + input: 'http://localhost:8080/api/auth/v3/api-docs', + output: { + client: 'axios-functions', + target: 'src/api/services/auth.ts', + schemas: 'src/api/models/auth', + override: { + mutator: { + path: './src/api/apiClient.ts', + name: 'customInstance', + }, + }, + }, + }, + domainOrder: { + // input: 'src/api/specs/domain-order-openapi.json', + input: 'http://localhost:8080/api/domains/v3/api-docs', + output: { + client: 'axios-functions', + target: 'src/api/services/domain-order.ts', + schemas: 'src/api/models/domain-order', + override: { + mutator: { + path: './src/api/apiClientDomains.ts', + name: 'customInstance', + }, + }, + }, + }, + exdns: { + input: 'src/api/specs/exdns.json', + output: { + client: 'axios-functions', + target: 'src/api/services/exdns.ts', + schemas: 'src/api/models/exdns', + override: { + mutator: { + path: './src/api/apiClientExdns.ts', + name: 'customInstance', + }, + }, + }, + }, +}); diff --git a/domains-frontend/package.json b/domains-frontend/package.json new file mode 100644 index 0000000..e7d9edb --- /dev/null +++ b/domains-frontend/package.json @@ -0,0 +1,40 @@ +{ + "name": "domains-frontend", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "build": "rsbuild build", + "dev": "rsbuild dev --open", + "format": "prettier --write .", + "preview": "rsbuild preview", + "genapi": "orval --config orval.config.ts" + }, + "dependencies": { + "@chakra-ui/react": "^3.30.0", + "@emotion/react": "^11.14.0", + "@fontsource-variable/jost": "^5.2.8", + "@fontsource/golos-text": "^5.2.8", + "@simplewebauthn/browser": "^13.2.2", + "axios": "^1.13.2", + "dayjs": "^1.11.19", + "lucide-react": "^0.562.0", + "mobx": "^6.15.0", + "mobx-react-lite": "^4.1.1", + "next-themes": "^0.4.6", + "react": "^19.2.3", + "react-dom": "^19.2.3", + "react-hook-form": "^7.70.0", + "react-icons": "^5.5.0", + "react-router": "^7.12.0" + }, + "devDependencies": { + "@rsbuild/core": "^1.7.1", + "@rsbuild/plugin-react": "^1.4.2", + "@types/react": "^19.2.7", + "@types/react-dom": "^19.2.3", + "orval": "^7.17.2", + "prettier": "^3.7.3", + "typescript": "^5.9.3" + } +} diff --git a/domains-frontend/pnpm-lock.yaml b/domains-frontend/pnpm-lock.yaml new file mode 100644 index 0000000..2377d13 --- /dev/null +++ b/domains-frontend/pnpm-lock.yaml @@ -0,0 +1,4976 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@chakra-ui/react': + specifier: ^3.30.0 + version: 3.30.0(@emotion/react@11.14.0(@types/react@19.2.7)(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + '@emotion/react': + specifier: ^11.14.0 + version: 11.14.0(@types/react@19.2.7)(react@19.2.3) + '@fontsource-variable/jost': + specifier: ^5.2.8 + version: 5.2.8 + '@fontsource/golos-text': + specifier: ^5.2.8 + version: 5.2.8 + '@simplewebauthn/browser': + specifier: ^13.2.2 + version: 13.2.2 + axios: + specifier: ^1.13.2 + version: 1.13.2 + dayjs: + specifier: ^1.11.19 + version: 1.11.19 + lucide-react: + specifier: ^0.562.0 + version: 0.562.0(react@19.2.3) + mobx: + specifier: ^6.15.0 + version: 6.15.0 + mobx-react-lite: + specifier: ^4.1.1 + version: 4.1.1(mobx@6.15.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + next-themes: + specifier: ^0.4.6 + version: 0.4.6(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + react: + specifier: ^19.2.3 + version: 19.2.3 + react-dom: + specifier: ^19.2.3 + version: 19.2.3(react@19.2.3) + react-hook-form: + specifier: ^7.70.0 + version: 7.70.0(react@19.2.3) + react-icons: + specifier: ^5.5.0 + version: 5.5.0(react@19.2.3) + react-router: + specifier: ^7.12.0 + version: 7.12.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + devDependencies: + '@rsbuild/core': + specifier: ^1.7.1 + version: 1.7.2 + '@rsbuild/plugin-react': + specifier: ^1.4.2 + version: 1.4.2(@rsbuild/core@1.7.2) + '@types/react': + specifier: ^19.2.7 + version: 19.2.7 + '@types/react-dom': + specifier: ^19.2.3 + version: 19.2.3(@types/react@19.2.7) + orval: + specifier: ^7.17.2 + version: 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + prettier: + specifier: ^3.7.3 + version: 3.7.4 + typescript: + specifier: ^5.9.3 + version: 5.9.3 + +packages: + + '@apidevtools/json-schema-ref-parser@14.0.1': + resolution: {integrity: sha512-Oc96zvmxx1fqoSEdUmfmvvb59/KDOnUoJ7s2t7bISyAn0XEz57LCCw8k2Y4Pf3mwKaZLMciESALORLgfe2frCw==} + engines: {node: '>= 16'} + + '@apidevtools/openapi-schemas@2.1.0': + resolution: {integrity: sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ==} + engines: {node: '>=10'} + + '@apidevtools/swagger-methods@3.0.2': + resolution: {integrity: sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg==} + + '@apidevtools/swagger-parser@12.1.0': + resolution: {integrity: sha512-e5mJoswsnAX0jG+J09xHFYQXb/bUc5S3pLpMxUuRUA2H8T2kni3yEoyz2R3Dltw5f4A6j6rPNMpWTK+iVDFlng==} + peerDependencies: + openapi-types: '>=7' + + '@ark-ui/react@5.30.0': + resolution: {integrity: sha512-MIWgj6uWTuG42DGaXUQARObvuQJymm+/1wsdGEDrIHtSv0a2PFQO4svwMvMFwfFbL1jVkJzzBU6JDAH0xKbvyw==} + peerDependencies: + react: '>=18.0.0' + react-dom: '>=18.0.0' + + '@asyncapi/specs@6.10.0': + resolution: {integrity: sha512-vB5oKLsdrLUORIZ5BXortZTlVyGWWMC1Nud/0LtgxQ3Yn2738HigAD6EVqScvpPsDUI/bcLVsYEXN4dtXQHVng==} + + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.28.5': + resolution: {integrity: sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-globals@7.28.0': + resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.27.1': + resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.28.5': + resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/runtime@7.28.4': + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.27.2': + resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.28.5': + resolution: {integrity: sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.28.5': + resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} + engines: {node: '>=6.9.0'} + + '@chakra-ui/react@3.30.0': + resolution: {integrity: sha512-eIRRAilqY4f2zN8GWRnjcciBYsvy3GZDOmzGD9xk596LBxCTNCJaivdBiHCcgNlqA3y1wMyM1jepy2b2vQC4QA==} + peerDependencies: + '@emotion/react': '>=11' + react: '>=18' + react-dom: '>=18' + + '@commander-js/extra-typings@14.0.0': + resolution: {integrity: sha512-hIn0ncNaJRLkZrxBIp5AsW/eXEHNKYQBh0aPdoUqNgD+Io3NIykQqpKFyKcuasZhicGaEZJX/JBSIkZ4e5x8Dg==} + peerDependencies: + commander: ~14.0.0 + + '@emnapi/core@1.8.1': + resolution: {integrity: sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==} + + '@emnapi/runtime@1.8.1': + resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==} + + '@emnapi/wasi-threads@1.1.0': + resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + + '@emotion/babel-plugin@11.13.5': + resolution: {integrity: sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==} + + '@emotion/cache@11.14.0': + resolution: {integrity: sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==} + + '@emotion/hash@0.9.2': + resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==} + + '@emotion/is-prop-valid@1.4.0': + resolution: {integrity: sha512-QgD4fyscGcbbKwJmqNvUMSE02OsHUa+lAWKdEUIJKgqe5IwRSKd7+KhibEWdaKwgjLj0DRSHA9biAIqGBk05lw==} + + '@emotion/memoize@0.9.0': + resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==} + + '@emotion/react@11.14.0': + resolution: {integrity: sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==} + peerDependencies: + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@types/react': + optional: true + + '@emotion/serialize@1.3.3': + resolution: {integrity: sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==} + + '@emotion/sheet@1.4.0': + resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==} + + '@emotion/unitless@0.10.0': + resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==} + + '@emotion/use-insertion-effect-with-fallbacks@1.2.0': + resolution: {integrity: sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==} + peerDependencies: + react: '>=16.8.0' + + '@emotion/utils@1.4.2': + resolution: {integrity: sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==} + + '@emotion/weak-memoize@0.4.0': + resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==} + + '@esbuild/aix-ppc64@0.25.12': + resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.25.12': + resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.25.12': + resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.25.12': + resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.25.12': + resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.25.12': + resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.25.12': + resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.25.12': + resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.25.12': + resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.25.12': + resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.25.12': + resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.25.12': + resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.25.12': + resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.25.12': + resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.25.12': + resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.25.12': + resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.25.12': + resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.25.12': + resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.25.12': + resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.25.12': + resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.25.12': + resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.25.12': + resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.25.12': + resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.25.12': + resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.25.12': + resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.25.12': + resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@exodus/schemasafe@1.3.0': + resolution: {integrity: sha512-5Aap/GaRupgNx/feGBwLLTVv8OQFfv3pq2lPRzPg9R+IOBnDgghTGW7l7EuVXOvg5cc/xSAlRW8rBrjIC3Nvqw==} + + '@floating-ui/core@1.7.3': + resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==} + + '@floating-ui/dom@1.7.4': + resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==} + + '@floating-ui/utils@0.2.10': + resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} + + '@fontsource-variable/jost@5.2.8': + resolution: {integrity: sha512-+VDDHpbhgZ9A8KeHb7/LUMRR1LILVKIscNhVRSDzn3tFXoi1mFA/OhO8CZL/u2OujoGjZANjOdUZIgaxclxyjw==} + + '@fontsource/golos-text@5.2.8': + resolution: {integrity: sha512-8aJxXaRDbZVh97RBmL1nzUUI5K5KuG0b7LC/p5Q204/OF6IdpSeXTD6nxHwqrfLQXLr6hEO5c+y2rHqkHnuu2g==} + + '@gerrit0/mini-shiki@3.21.0': + resolution: {integrity: sha512-9PrsT5DjZA+w3lur/aOIx3FlDeHdyCEFlv9U+fmsVyjPZh61G5SYURQ/1ebe2U63KbDmI2V8IhIUegWb8hjOyg==} + + '@ibm-cloud/openapi-ruleset-utilities@1.9.0': + resolution: {integrity: sha512-AoFbSarOqFBYH+1TZ9Ahkm2IWYSi5v0pBk88fpV+5b3qGJukypX8PwvCWADjuyIccKg48/F73a6hTTkBzDQ2UA==} + engines: {node: '>=16.0.0'} + + '@ibm-cloud/openapi-ruleset@1.33.5': + resolution: {integrity: sha512-oT8USsTulFAA8FiBN0lA2rJqQI2lIt+HP2pdakGQXo3EviL2vqJTgpSCRwjl6mLJL158f1BVcdQUOEFGxomK3w==} + engines: {node: '>=16.0.0'} + + '@internationalized/date@3.10.0': + resolution: {integrity: sha512-oxDR/NTEJ1k+UFVQElaNIk65E/Z83HK1z1WI3lQyhTtnNg4R5oVXaPzK3jcpKG8UHKDVuDQHzn+wsxSz8RP3aw==} + + '@internationalized/number@3.6.5': + resolution: {integrity: sha512-6hY4Kl4HPBvtfS62asS/R22JzNNy8vi/Ssev7x6EobfCp+9QIB2hKvI2EtbdJ0VSQacxVNtqhE/NmF/NZ0gm6g==} + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@jsep-plugin/assignment@1.3.0': + resolution: {integrity: sha512-VVgV+CXrhbMI3aSusQyclHkenWSAm95WaiKrMxRFam3JSUiIaQjoMIw2sEs/OX4XifnqeQUN4DYbJjlA8EfktQ==} + engines: {node: '>= 10.16.0'} + peerDependencies: + jsep: ^0.4.0||^1.0.0 + + '@jsep-plugin/regex@1.0.4': + resolution: {integrity: sha512-q7qL4Mgjs1vByCaTnDFcBnV9HS7GVPJX5vyVoCgZHNSC9rjwIlmbXG5sUuorR5ndfHAIlJ8pVStxvjXHbNvtUg==} + engines: {node: '>= 10.16.0'} + peerDependencies: + jsep: ^0.4.0||^1.0.0 + + '@jsep-plugin/ternary@1.1.4': + resolution: {integrity: sha512-ck5wiqIbqdMX6WRQztBL7ASDty9YLgJ3sSAK5ZpBzXeySvFGCzIvM6UiAI4hTZ22fEcYQVV/zhUbNscggW+Ukg==} + engines: {node: '>= 10.16.0'} + peerDependencies: + jsep: ^0.4.0||^1.0.0 + + '@module-federation/error-codes@0.22.0': + resolution: {integrity: sha512-xF9SjnEy7vTdx+xekjPCV5cIHOGCkdn3pIxo9vU7gEZMIw0SvAEdsy6Uh17xaCpm8V0FWvR0SZoK9Ik6jGOaug==} + + '@module-federation/runtime-core@0.22.0': + resolution: {integrity: sha512-GR1TcD6/s7zqItfhC87zAp30PqzvceoeDGYTgF3Vx2TXvsfDrhP6Qw9T4vudDQL3uJRne6t7CzdT29YyVxlgIA==} + + '@module-federation/runtime-tools@0.22.0': + resolution: {integrity: sha512-4ScUJ/aUfEernb+4PbLdhM/c60VHl698Gn1gY21m9vyC1Ucn69fPCA1y2EwcCB7IItseRMoNhdcWQnzt/OPCNA==} + + '@module-federation/runtime@0.22.0': + resolution: {integrity: sha512-38g5iPju2tPC3KHMPxRKmy4k4onNp6ypFPS1eKGsNLUkXgHsPMBFqAjDw96iEcjri91BrahG4XcdyKi97xZzlA==} + + '@module-federation/sdk@0.22.0': + resolution: {integrity: sha512-x4aFNBKn2KVQRuNVC5A7SnrSCSqyfIWmm1DvubjbO9iKFe7ith5niw8dqSFBekYBg2Fwy+eMg4sEFNVvCAdo6g==} + + '@module-federation/webpack-bundler-runtime@0.22.0': + resolution: {integrity: sha512-aM8gCqXu+/4wBmJtVeMeeMN5guw3chf+2i6HajKtQv7SJfxV/f4IyNQJUeUQu9HfiAZHjqtMV5Lvq/Lvh8LdyA==} + + '@napi-rs/wasm-runtime@1.0.7': + resolution: {integrity: sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@orval/angular@7.17.2': + resolution: {integrity: sha512-+WBILd8KJD/I8eyX2eyTmzhyY+oTvbCTV25YoF2/UzWaBIq0reIhe5i2J2vUBXFnhZDLfwJYn70v341y7NSPlQ==} + + '@orval/axios@7.17.2': + resolution: {integrity: sha512-9wNxnEtNSI4S22V5ta4f5jaFAfrJ5PEcQwALP6ogsBxT0lUhzHWhRGWaopA2SJLW8eCGfPVo4fF/x/2i9ecG8w==} + + '@orval/core@7.17.2': + resolution: {integrity: sha512-7kv7JgC6Va9hE/OiYTaJEU52Uy52y8Ill26QZufgP9yeMT60h3yiycF//LSQp83P+fGzcS9PLuCS4uRPmrMtgA==} + + '@orval/fetch@7.17.2': + resolution: {integrity: sha512-gBgk4POAacKs4c7VKCQPTkdLWvxF2s1p/EBKT1N6h2QKUxZcO7MbV141FQXFghFGFYgpuNiUTlox4BbSeCVrXw==} + + '@orval/hono@7.17.2': + resolution: {integrity: sha512-YSTDYPysnD5LyugRKGSU4kZEMgK0HeLeZ7r1X/4u6U5FrRdhmjf+gjnCseBR61yKwS/8BLMogIe7qw8uOs83Hg==} + + '@orval/mcp@7.17.2': + resolution: {integrity: sha512-7aJcZMSh2ZPHdcgz0JdilVTLcaMbPeEHJgpJTvSUZembgQvBwJYfalaaROfBmRH9nSfHP11DYmsuG5kTIfd3JA==} + + '@orval/mock@7.17.2': + resolution: {integrity: sha512-otVzA/yR2lKQJRSIeVyuh+tl/uE/EJQ82oJg9Zu11S70QzxMTCg/IEe8fbTeE3APtoujhACB6aZ/qqbmK29ugw==} + + '@orval/query@7.17.2': + resolution: {integrity: sha512-dbD3U6CuRBYszMQOlitO4MryLnrlZIHwjNGsree0l5WO25e9QrfEMPxFU9wVaLnP/w10ODMBsBIBNUmy5ifXxQ==} + + '@orval/swr@7.17.2': + resolution: {integrity: sha512-BWN7E41JEfr2qVFi+sNwPH3jXJgL4BiIAJTqZraZW0S89EmI4kU2yh3YveNmeopXai7mssaiiAlE8qe4wFcWnw==} + + '@orval/zod@7.17.2': + resolution: {integrity: sha512-Zf2sAQAGZ99VzummF4/Tq5pbXe6qR+w37XmLX5bMokshT8lEuV9goT4gftW4AWGY3Azrp/Syj3fdbSBthN/KPw==} + + '@pandacss/is-valid-prop@1.8.0': + resolution: {integrity: sha512-ni3nGvk7K7OwvS5QWljnPgLaNhfcqFJnCYQxyEgUBXcAd/hEbwMhXjfuL/VFczWPERJITJdi1FB/giau3pF+DQ==} + + '@rsbuild/core@1.7.2': + resolution: {integrity: sha512-VAFO6cM+cyg2ntxNW6g3tB2Jc5J5mpLjLluvm7VtW2uceNzyUlVv41o66Yp1t1ikxd3ljtqegViXem62JqzveA==} + engines: {node: '>=18.12.0'} + hasBin: true + + '@rsbuild/plugin-react@1.4.2': + resolution: {integrity: sha512-2rJb5mOuqVof2aDq4SbB1E65+0n1vjhAADipC88jvZRNuTOulg79fh7R4tsCiBMI4VWq46gSpwekiK8G5bq6jg==} + peerDependencies: + '@rsbuild/core': 1.x + + '@rspack/binding-darwin-arm64@1.7.1': + resolution: {integrity: sha512-3C0w0kfCHfgOH+AP/Dx1bm/b3AR/or5CmU22Abevek0m95ndU3iT902eLcm9JNiMQnDQLBQbolfj5P591t0oPg==} + cpu: [arm64] + os: [darwin] + + '@rspack/binding-darwin-x64@1.7.1': + resolution: {integrity: sha512-HTrBpdw2gWwcpJ3c8h4JF8B1YRNvrFT+K620ycttrlu/HvI4/U770BBJ/ej36R/hdh59JvMCGe+w49FyXv6rzg==} + cpu: [x64] + os: [darwin] + + '@rspack/binding-linux-arm64-gnu@1.7.1': + resolution: {integrity: sha512-BX9yAPCO0WBFyOzKl9bSXT/cH27nnOJp02smIQMxfv7RNfwGkJg5GgakYcuYG+9U1HEFitBSzmwS2+dxDcAxlg==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-arm64-musl@1.7.1': + resolution: {integrity: sha512-maBX19XyiVkxzh/NA79ALetCobc4zUyoWkWLeCGyW5xKzhPVFatJp+qCiHqHkqUZcgRo+1i5ihoZ2bXmelIeZg==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-x64-gnu@1.7.1': + resolution: {integrity: sha512-8KJAeBLiWcN7zEc9aaS7LRJPZVtZuQU8mCsn+fRhdQDSc+a9FcTN8b6Lw29z8cejwbU6Gxr/8wk5XGexMWFaZA==} + cpu: [x64] + os: [linux] + + '@rspack/binding-linux-x64-musl@1.7.1': + resolution: {integrity: sha512-Gn9x5vhKRELvSoZ3ZjquY8eWtCXur0OsYnZ2/ump8mofM6IDaL7Qqu3Hf4Kud31PDH0tfz0jWf9piX32HHPmgg==} + cpu: [x64] + os: [linux] + + '@rspack/binding-wasm32-wasi@1.7.1': + resolution: {integrity: sha512-2r9M5iVchmsFkp3sz7A5YnMm2TfpkB71LK3AoaRWKMfvf5oFky0GSGISYd2TCBASO+X2Qskaq+B24Szo8zH5FA==} + cpu: [wasm32] + + '@rspack/binding-win32-arm64-msvc@1.7.1': + resolution: {integrity: sha512-/WIHp982yqqqAuiz2WLtf1ofo9d1lHDGZJ7flxFllb1iMgnUeSRyX6stxEi11K3Rg6pQa7FdCZGKX/engyj2bw==} + cpu: [arm64] + os: [win32] + + '@rspack/binding-win32-ia32-msvc@1.7.1': + resolution: {integrity: sha512-Kpela29n+kDGGsss6q/3qTd6n9VW7TOQaiA7t1YLdCCl8qqcdKlz/vWjFMd2MqgcSGC/16PvChE4sgpUvryfCQ==} + cpu: [ia32] + os: [win32] + + '@rspack/binding-win32-x64-msvc@1.7.1': + resolution: {integrity: sha512-B/y4MWqP2Xeto1/HV0qtZNOMPSLrEVOqi2b7JSIXG/bhlf+3IAkDzEEoHs+ZikLR4C8hMaS0pVJsDGKFmGzC9A==} + cpu: [x64] + os: [win32] + + '@rspack/binding@1.7.1': + resolution: {integrity: sha512-qVTV1/UWpMSZktvK5A8+HolgR1Qf0nYR3Gg4Vax5x3/BcHDpwGZ0fbdFRUirGVWH/XwxZ81zoI6F2SZq7xbX+w==} + + '@rspack/core@1.7.1': + resolution: {integrity: sha512-kRxfY8RRa6nU3/viDvAIP6CRpx+0rfXFRonPL0pHBx8u6HhV7m9rLEyaN6MWsLgNIAWkleFGb7tdo4ux2ljRJQ==} + engines: {node: '>=18.12.0'} + peerDependencies: + '@swc/helpers': '>=0.5.1' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@rspack/lite-tapable@1.1.0': + resolution: {integrity: sha512-E2B0JhYFmVAwdDiG14+DW0Di4Ze4Jg10Pc4/lILUrd5DRCaklduz2OvJ5HYQ6G+hd+WTzqQb3QnDNfK4yvAFYw==} + + '@rspack/plugin-react-refresh@1.6.0': + resolution: {integrity: sha512-OO53gkrte/Ty4iRXxxM6lkwPGxsSsupFKdrPFnjwFIYrPvFLjeolAl5cTx+FzO5hYygJiGnw7iEKTmD+ptxqDA==} + peerDependencies: + react-refresh: '>=0.10.0 <1.0.0' + webpack-hot-middleware: 2.x + peerDependenciesMeta: + webpack-hot-middleware: + optional: true + + '@shikijs/engine-oniguruma@3.21.0': + resolution: {integrity: sha512-OYknTCct6qiwpQDqDdf3iedRdzj6hFlOPv5hMvI+hkWfCKs5mlJ4TXziBG9nyabLwGulrUjHiCq3xCspSzErYQ==} + + '@shikijs/langs@3.21.0': + resolution: {integrity: sha512-g6mn5m+Y6GBJ4wxmBYqalK9Sp0CFkUqfNzUy2pJglUginz6ZpWbaWjDB4fbQ/8SHzFjYbtU6Ddlp1pc+PPNDVA==} + + '@shikijs/themes@3.21.0': + resolution: {integrity: sha512-BAE4cr9EDiZyYzwIHEk7JTBJ9CzlPuM4PchfcA5ao1dWXb25nv6hYsoDiBq2aZK9E3dlt3WB78uI96UESD+8Mw==} + + '@shikijs/types@3.21.0': + resolution: {integrity: sha512-zGrWOxZ0/+0ovPY7PvBU2gIS9tmhSUUt30jAcNV0Bq0gb2S98gwfjIs1vxlmH5zM7/4YxLamT6ChlqqAJmPPjA==} + + '@shikijs/vscode-textmate@10.0.2': + resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} + + '@simplewebauthn/browser@13.2.2': + resolution: {integrity: sha512-FNW1oLQpTJyqG5kkDg5ZsotvWgmBaC6jCHR7Ej0qUNep36Wl9tj2eZu7J5rP+uhXgHaLk+QQ3lqcw2vS5MX1IA==} + + '@stoplight/better-ajv-errors@1.0.3': + resolution: {integrity: sha512-0p9uXkuB22qGdNfy3VeEhxkU5uwvp/KrBTAbrLBURv6ilxIVwanKwjMc41lQfIVgPGcOkmLbTolfFrSsueu7zA==} + engines: {node: ^12.20 || >= 14.13} + peerDependencies: + ajv: '>=8' + + '@stoplight/json-ref-readers@1.2.2': + resolution: {integrity: sha512-nty0tHUq2f1IKuFYsLM4CXLZGHdMn+X/IwEUIpeSOXt0QjMUbL0Em57iJUDzz+2MkWG83smIigNZ3fauGjqgdQ==} + engines: {node: '>=8.3.0'} + + '@stoplight/json-ref-resolver@3.1.6': + resolution: {integrity: sha512-YNcWv3R3n3U6iQYBsFOiWSuRGE5su1tJSiX6pAPRVk7dP0L7lqCteXGzuVRQ0gMZqUl8v1P0+fAKxF6PLo9B5A==} + engines: {node: '>=8.3.0'} + + '@stoplight/json@3.21.7': + resolution: {integrity: sha512-xcJXgKFqv/uCEgtGlPxy3tPA+4I+ZI4vAuMJ885+ThkTHFVkC+0Fm58lA9NlsyjnkpxFh4YiQWpH+KefHdbA0A==} + engines: {node: '>=8.3.0'} + + '@stoplight/ordered-object-literal@1.0.5': + resolution: {integrity: sha512-COTiuCU5bgMUtbIFBuyyh2/yVVzlr5Om0v5utQDgBCuQUOPgU1DwoffkTfg4UBQOvByi5foF4w4T+H9CoRe5wg==} + engines: {node: '>=8'} + + '@stoplight/path@1.3.2': + resolution: {integrity: sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==} + engines: {node: '>=8'} + + '@stoplight/spectral-core@1.20.0': + resolution: {integrity: sha512-5hBP81nCC1zn1hJXL/uxPNRKNcB+/pEIHgCjPRpl/w/qy9yC9ver04tw1W0l/PMiv0UeB5dYgozXVQ4j5a6QQQ==} + engines: {node: ^16.20 || ^18.18 || >= 20.17} + + '@stoplight/spectral-formats@1.8.2': + resolution: {integrity: sha512-c06HB+rOKfe7tuxg0IdKDEA5XnjL2vrn/m/OVIIxtINtBzphZrOgtRn7epQ5bQF5SWp84Ue7UJWaGgDwVngMFw==} + engines: {node: ^16.20 || ^18.18 || >= 20.17} + + '@stoplight/spectral-functions@1.10.1': + resolution: {integrity: sha512-obu8ZfoHxELOapfGsCJixKZXZcffjg+lSoNuttpmUFuDzVLT3VmH8QkPXfOGOL5Pz80BR35ClNAToDkdnYIURg==} + engines: {node: ^16.20 || ^18.18 || >= 20.17} + + '@stoplight/spectral-parsers@1.0.5': + resolution: {integrity: sha512-ANDTp2IHWGvsQDAY85/jQi9ZrF4mRrA5bciNHX+PUxPr4DwS6iv4h+FVWJMVwcEYdpyoIdyL+SRmHdJfQEPmwQ==} + engines: {node: ^16.20 || ^18.18 || >= 20.17} + + '@stoplight/spectral-ref-resolver@1.0.5': + resolution: {integrity: sha512-gj3TieX5a9zMW29z3mBlAtDOCgN3GEc1VgZnCVlr5irmR4Qi5LuECuFItAq4pTn5Zu+sW5bqutsCH7D4PkpyAA==} + engines: {node: ^16.20 || ^18.18 || >= 20.17} + + '@stoplight/spectral-rulesets@1.22.0': + resolution: {integrity: sha512-l2EY2jiKKLsvnPfGy+pXC0LeGsbJzcQP5G/AojHgf+cwN//VYxW1Wvv4WKFx/CLmLxc42mJYF2juwWofjWYNIQ==} + engines: {node: ^16.20 || ^18.18 || >= 20.17} + + '@stoplight/spectral-runtime@1.1.4': + resolution: {integrity: sha512-YHbhX3dqW0do6DhiPSgSGQzr6yQLlWybhKwWx0cqxjMwxej3TqLv3BXMfIUYFKKUqIwH4Q2mV8rrMM8qD2N0rQ==} + engines: {node: ^16.20 || ^18.18 || >= 20.17} + + '@stoplight/types@13.20.0': + resolution: {integrity: sha512-2FNTv05If7ib79VPDA/r9eUet76jewXFH2y2K5vuge6SXbRHtWBhcaRmu+6QpF4/WRNoJj5XYRSwLGXDxysBGA==} + engines: {node: ^12.20 || >=14.13} + + '@stoplight/types@13.6.0': + resolution: {integrity: sha512-dzyuzvUjv3m1wmhPfq82lCVYGcXG0xUYgqnWfCq3PCVR4BKFhjdkHrnJ+jIDoMKvXb05AZP/ObQF6+NpDo29IQ==} + engines: {node: ^12.20 || >=14.13} + + '@stoplight/types@14.1.1': + resolution: {integrity: sha512-/kjtr+0t0tjKr+heVfviO9FrU/uGLc+QNX3fHJc19xsCNYqU7lVhaXxDmEID9BZTjG+/r9pK9xP/xU02XGg65g==} + engines: {node: ^12.20 || >=14.13} + + '@stoplight/yaml-ast-parser@0.0.50': + resolution: {integrity: sha512-Pb6M8TDO9DtSVla9yXSTAxmo9GVEouq5P40DWXdOie69bXogZTkgvopCq+yEvTMA0F6PEvdJmbtTV3ccIp11VQ==} + + '@stoplight/yaml@4.3.0': + resolution: {integrity: sha512-JZlVFE6/dYpP9tQmV0/ADfn32L9uFarHWxfcRhReKUnljz1ZiUM5zpX+PH8h5CJs6lao3TuFqnPm9IJJCEkE2w==} + engines: {node: '>=10.8'} + + '@swc/helpers@0.5.18': + resolution: {integrity: sha512-TXTnIcNJQEKwThMMqBXsZ4VGAza6bvN4pa41Rkqoio6QBKMvo+5lexeTMScGCIxtzgQJzElcvIltani+adC5PQ==} + + '@tybys/wasm-util@0.10.1': + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + + '@types/es-aggregate-error@1.0.6': + resolution: {integrity: sha512-qJ7LIFp06h1QE1aVxbVd+zJP2wdaugYXYfd6JxsyRMrYHaxb6itXPogW2tz+ylUJ1n1b+JF1PHyYCfYHm0dvUg==} + + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/node@25.0.5': + resolution: {integrity: sha512-FuLxeLuSVOqHPxSN1fkcD8DLU21gAP7nCKqGRJ/FglbCUBs0NYN6TpHcdmyLeh8C0KwGIaZQJSv+OYG+KZz+Gw==} + + '@types/parse-json@4.0.2': + resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} + + '@types/react-dom@19.2.3': + resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==} + peerDependencies: + '@types/react': ^19.2.0 + + '@types/react@19.2.7': + resolution: {integrity: sha512-MWtvHrGZLFttgeEj28VXHxpmwYbor/ATPYbBfSFZEIRK0ecCFLl2Qo55z52Hss+UV9CRN7trSeq1zbgx7YDWWg==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@types/urijs@1.19.26': + resolution: {integrity: sha512-wkXrVzX5yoqLnndOwFsieJA7oKM8cNkOKJtf/3vVGSUFkWDKZvFHpIl9Pvqb/T9UsawBBFMTTD8xu7sK5MWuvg==} + + '@zag-js/accordion@1.31.1': + resolution: {integrity: sha512-3sGi4EZpGBz/O1IVkk9dzzWzP5vVVOj4Li6C+jHOnrgaWPouA/mBTP5L9HEL8qtFsECFZwpNo486eqiCmeHoGw==} + + '@zag-js/anatomy@1.31.1': + resolution: {integrity: sha512-BhIhf3Q0tRA0Jugd7AJfUBzeAb/iATBsw7KyYThMGcPWmrWssL7KWr5AB6RufzGKU7+DCb1QEhlqd4NSOJaYxQ==} + + '@zag-js/angle-slider@1.31.1': + resolution: {integrity: sha512-SfWrgnM0zMLX82rsIJOqWk430UnPA17UFGcDqMDRwXy1Wx4yptmx0aFAsSXnRnw4Ee7WaulF2RWBli6O6iYRCA==} + + '@zag-js/aria-hidden@1.31.1': + resolution: {integrity: sha512-SoNt4S2LkHNWPglQczWN0E5vAV15MT1GoK9MksZzbkMhl+pkDTdLytpXsQ1IgalC1YUng0XNps/Wt6P3uDuzTA==} + + '@zag-js/async-list@1.31.1': + resolution: {integrity: sha512-BDZEmr4KKh3JASgkXouOwoTWRS1UPE3gdZYZ7Sk7SJ1i8+Pk6zUQ4FnxaoF/cSAdCXyjSSr92Kns2bTk/QuNkQ==} + + '@zag-js/auto-resize@1.31.1': + resolution: {integrity: sha512-qzWHibjBekSmFweG+EWY8g0lRzKtok7o9XtQ+JFlOu3s6x4D02z2YDzjDdfSLmS7j0NxISnwQkinWiDAZEYHog==} + + '@zag-js/avatar@1.31.1': + resolution: {integrity: sha512-Grosi2hRn4wfDYlPd8l+d4GCIFMsoj6ZFqii+1k14AqTDiCUJ/J0jCvOrRHkvkpEqektjuSD7e/GCX+yawqkuQ==} + + '@zag-js/bottom-sheet@1.31.1': + resolution: {integrity: sha512-ZBbIpYyZX2zQeqW36aODVi9/I4J3zS1XmIHUjeXmfmf6TlQUA1ydgYl7ipREfmCzNWX2LEA5ZnPJQw0UBcrB8w==} + + '@zag-js/carousel@1.31.1': + resolution: {integrity: sha512-228Ol86G/lg8crcomy5cALkUYdOHCHcvJnSOQzeUj80JNjlELzrjBpaAj4lx8dZocfwou2Sg4NyZJ+mISSc+Dg==} + + '@zag-js/checkbox@1.31.1': + resolution: {integrity: sha512-oLS8bqhimckLl6coCNmKPPUmB8wIbVhtkpLwLPLgz4vhhUe7gnpB5dea14Ow2JTBnmug8bMh/bJDtuPa9qQuTw==} + + '@zag-js/clipboard@1.31.1': + resolution: {integrity: sha512-pv/gOmD9DMg+YmSMjahyd5oSp7/v9K0uQ3att6fPeaNMjB42b3tnY1S1GNVy5Ltf/qHDab6WVwlEN+1zKHXaYw==} + + '@zag-js/collapsible@1.31.1': + resolution: {integrity: sha512-eCC5G6bBZUwF8z2XULQXUNRxqte9I2Sv+WJ2brycPn1a68uYD76RzFBmLQ2er95VbshUdeo8nRuX8MooAFuYzg==} + + '@zag-js/collection@1.31.1': + resolution: {integrity: sha512-ecpfyfCj8Y0/GUPuHYsLxexIrx10VuR3Wd0H+lamcki3lYgQxZrpLRFMwgTqmI/m7t3zhm5QeEvMUJ1H14YMLA==} + + '@zag-js/color-picker@1.31.1': + resolution: {integrity: sha512-AWNZth49iEDxqh1DBZNSKpfEM/FF+MjL5bgUHVctnHdkpFsZLynJorWQQ4hNXNDFEc/I5w10KSxVCcO6tsPGFw==} + + '@zag-js/color-utils@1.31.1': + resolution: {integrity: sha512-HdjTRU8C0tO6hK+PBVlu8iQH1MJaAnJAEdq2FcD97mq0PiPhrSj6iOftnrvPsE4CRieVFjnJWOvaubWFc4VmHA==} + + '@zag-js/combobox@1.31.1': + resolution: {integrity: sha512-IT0getSAGzngdRL20iX/iAh2d7DzVoMDDppOsOFBG2owKAgLpj8uLvUhy+lcrm6N8yxYOya89D6Aef7V5KdwlQ==} + + '@zag-js/core@1.31.1': + resolution: {integrity: sha512-RaMJeqtjxG6k7iFD3WQnlyFJVT3yfQN+pJygAHH37GsMtiNzQQJOoesjb0LV9T27jwMXeNUzrh3MSDr1/0yVcQ==} + + '@zag-js/date-picker@1.31.1': + resolution: {integrity: sha512-AOWN/IskGidVQt5g+uE9cILqJBTclE6OG1GC9WSWuyP/y4F+PdP/781SgYpYCZg/6pMGbL01PFKKb7xOOCeZAg==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/date-utils@1.31.1': + resolution: {integrity: sha512-+Aq9g/rqLeiRmnazgdZMc59gAxqxbw3GGy8AngrtNipgRtMhPlzGa3S4Qsq1yau6OKaHZ13uckUS+MhLNbBY+Q==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/dialog@1.31.1': + resolution: {integrity: sha512-iaWlYQ6TYoVjM/X5+UZVZzKiMboE50GnEzGUpbhbeRNRiLqSu5dODSFzior1G4kde/ns5eN+BTf/Tm6AT4N2og==} + + '@zag-js/dismissable@1.31.1': + resolution: {integrity: sha512-jCdJwQmEkG6PlrN13fUk2l7ZclSu54FZwmT4xOtQpEbaiAiESm5KI5oyFh5jDPY47Goa28UJkEjWXVgKXKWb0g==} + + '@zag-js/dom-query@1.31.1': + resolution: {integrity: sha512-2tCZLwSfoXm62gwl0neiAN6u5VnzUhy5wHtKbX+klqGFatnca3Bm++H9+4PHMrwUWRbPg3H5N151lKFEOQhBfQ==} + + '@zag-js/editable@1.31.1': + resolution: {integrity: sha512-JMICHw4/x0YqDy/n+I+TeaXlFbTA0j9w3UqOWMwUFQ+dAsq4JLXeqZDXu19MQN6yaTFdOpG1EFw4FEVTsu+d3Q==} + + '@zag-js/file-upload@1.31.1': + resolution: {integrity: sha512-cp7qMiXKrIcTfDamOz9wlnJLeBF8gucTI7Y+iKaP+hiIW+OG254GElfQiqXNDad3HUmD+Dt8Tx6uAzL/mw3sbQ==} + + '@zag-js/file-utils@1.31.1': + resolution: {integrity: sha512-MDDz52IdPh/mPUYrqUXvh7qDckJHs+mt5gjfx0N89qh2JNXuRU14zPotOKTzIKM4o+HFZkAT6BAfMpr9CX/0ug==} + + '@zag-js/floating-panel@1.31.1': + resolution: {integrity: sha512-Pjgd/wjdglZ90dtq/LC4o5sc6w0m+RehhPmJcIzq9T+E/Xrb6qrhf06QhxB9LwSj4DG/gIv87gmD2qF1VH7cRQ==} + + '@zag-js/focus-trap@1.31.1': + resolution: {integrity: sha512-omgUhAz1r81pYAujqYIIavdTKJzDRExioSiqhnx/xq10a6Q/xavMFflq8w7edMc9JHkTOnr9E5qh9abCVJjhpQ==} + + '@zag-js/focus-visible@1.31.1': + resolution: {integrity: sha512-GC59A3yd7tj8aKhzvhrM+CEZZraXm5y/SpfIjz1J7kGV6eeXbUtjkbe75g99Ve8iJYfQVQlAj2GyN3oniHc5Zw==} + + '@zag-js/highlight-word@1.31.1': + resolution: {integrity: sha512-nQw7t8LgWXW+6Z5E/p6T+OST0DDXp35mrFCzrkJL54aVTZ3GuLyIP2p0/HGQr2hE/KKLbZEs5i6UcXF84tiI4g==} + + '@zag-js/hover-card@1.31.1': + resolution: {integrity: sha512-R74kz2wPgGwB3jKQeD91kdtlvVKpffWBJHqw8yCBd95GXGVmhym+BPoCToJzcqiemP8+0EtSuVPU9IHaSuJnSg==} + + '@zag-js/i18n-utils@1.31.1': + resolution: {integrity: sha512-SARkFuo1+Q0WcNv4jqvxp5hjCOqu/gBa7p6BTh7v5Bo00QhKRM/bCvVt0EB6V+h2oejrZfkwZ0MwbpQiL6L2aQ==} + + '@zag-js/image-cropper@1.31.1': + resolution: {integrity: sha512-hFuy4I3jIJ/iyJsnfbLX1l/cJtN42j7lwhw8TeWVX8Y+hHxFPMSKx7AQirt/hALUbyy7QsQgAd5IslpsYq1Nlg==} + + '@zag-js/interact-outside@1.31.1': + resolution: {integrity: sha512-oxBAlBqcatlxGUmhwUCRYTADIBrVoyxM1YrFzR1R8jhvVR/QCaxoLAyKwcA3mWXlZ8+NlXb7n5ELE11BZb/rEg==} + + '@zag-js/json-tree-utils@1.31.1': + resolution: {integrity: sha512-wrNek2UBE69FWpo2f0E2MxiboBS+Uop79LeQU2jNDujA1o3x6b1Lp2r7Fl1sfnUWMdKVVQb44oqfIj2g3CTEmQ==} + + '@zag-js/listbox@1.31.1': + resolution: {integrity: sha512-LcTIr4I9eN4MR1nSRfQfseWgj4ybOXXAY2o5dBpEBL67dnCSX3swNb/4LQO+ebj077BViQb66pBb1KSoeHGkEQ==} + + '@zag-js/live-region@1.31.1': + resolution: {integrity: sha512-RBx8jk1dgvkEUuFs77SBZn0WwvEkeZgVawVu6XUAy4ENfhP0D/qkvwNk+Els8InKmr1gWKajD7sh+g8M40Ex6A==} + + '@zag-js/marquee@1.31.1': + resolution: {integrity: sha512-Rt7+zy7CDOxXm0PqaTcmuWxcrZOPOpZY4T6IxOZk4ZcOXJQ2v7CkF3EK0pdI9PyI6Zpk/YIwQkENjidT55db0A==} + + '@zag-js/menu@1.31.1': + resolution: {integrity: sha512-eJPRM8tlauRTsAoJXchDBzMzL2RhXYSHmHak2IJCDMApCV51p0MqGYP8Er3DbMSQTPUFuTq779uUIarDqW+zmA==} + + '@zag-js/navigation-menu@1.31.1': + resolution: {integrity: sha512-xS4aynqmB9NYicPbEW8lPPakAfDfSgIDL1pRVSD6f1+VXkHD6LgNn6jUNDNbFt65mGhLpA2IczbvLCxv0g/ISQ==} + + '@zag-js/number-input@1.31.1': + resolution: {integrity: sha512-vn+BXEZ2/g2CMIFFyjjye/SbCeW3I/rlszL8EyBmhMcuA1l51OX2WKry6HeQNiU41uMyFg2rb1pb5KVw1gJsCg==} + + '@zag-js/pagination@1.31.1': + resolution: {integrity: sha512-icW6FNzIKNz7iXU+prlQWpMFJedDrhmCKzzI39SY+dv5g1Gnrlc0b44PxvNl5PWFLSkB5KBT/R1WCqd8Kh4cCA==} + + '@zag-js/password-input@1.31.1': + resolution: {integrity: sha512-AivOeNO14a39xhxVMB2TVmIjmQ89OwVz0+2IjX3JjLS2Pmia+gg9xnVd2kBIcKfnqUN4MBnzmk7t46YWJMQVVQ==} + + '@zag-js/pin-input@1.31.1': + resolution: {integrity: sha512-k3ESoX5ve5sbWBLTCPYAzgLjRU7mVNEUiqAOhRgazOcBGV5wjGh398zWb1jr0FMxPnoAMrXDN/CQwJTmJcMKrg==} + + '@zag-js/popover@1.31.1': + resolution: {integrity: sha512-uCFJP3DFBkEBAre6lgGLw2xWS2ZIuT/DLeajIXb+8BmC9KCF0wY4c9qojx9F3rGMJQxcGl+WUoXENkOvkTaVhQ==} + + '@zag-js/popper@1.31.1': + resolution: {integrity: sha512-wLXcEqzn9MK1rGbsgnDH26o5ZWqR4oeb6ZepKKy0gcuJl/1S5/dr1VBvxJNMZlf9d6etvYklG5LRnIVkXCbrjA==} + + '@zag-js/presence@1.31.1': + resolution: {integrity: sha512-tv+WsBnA0abIlDuEfZMh0lRPF4cMs6kWJosNkGBwzeXnGds+KXjzpL2KDtwDgbJgN3sI0xHPMYjRy2v3ZamcDA==} + + '@zag-js/progress@1.31.1': + resolution: {integrity: sha512-f9lIDHCRcFAG14LVEKOAPTdqPzphwIIraC6fTr9AwmNlYI6/qFDkz3jOlYVSyk5VsJAIFM/777x/CdqjliiOqg==} + + '@zag-js/qr-code@1.31.1': + resolution: {integrity: sha512-Rxh+HF12SgUp5rvTelp1qyLK3xkn37h2fT/L4eBQ0f8OUEo8wfowEbs36+1i61d6UuH7PJt4q/07eIf6vNVevA==} + + '@zag-js/radio-group@1.31.1': + resolution: {integrity: sha512-OfKIdEtSG0EuHM+cFVqcR+04yzZmcDRgG3j0QhoJsyS1my63ZHbwC2HNAtfPFh4U4sJx9yUexwSzPGZ6pOzIdw==} + + '@zag-js/rating-group@1.31.1': + resolution: {integrity: sha512-BkQUglKm4a+KXYPACYvIvBJSuEyzV0YQqjjiucwJ5UiOlK72C66VBvyGN+DqJRDnkU1K5azt6E1Ja5ANk3fgsg==} + + '@zag-js/react@1.31.1': + resolution: {integrity: sha512-a7uYH+tcw1UYbcovyVBzlh6X8KztK/b1+s8sMs4Srhd24M+hZMetV94Z0bM1Km5aNAnoS4gkH3gtJjH0OphquQ==} + peerDependencies: + react: '>=18.0.0' + react-dom: '>=18.0.0' + + '@zag-js/rect-utils@1.31.1': + resolution: {integrity: sha512-lBFheAnz8+3aGDFjqlkw0Iew/F03lFjiIf26hkkcFSZu0ltNZUMG/X3XLHUnHxdfbdBguc8ons6mr2MkVvisng==} + + '@zag-js/remove-scroll@1.31.1': + resolution: {integrity: sha512-gVVJuFKaCjo652RmajYmkjXKgjJWLQ5ZhZLTaLUKWM1mAarvlqnLui8jrHEHLxqpfsjQylfdhJKkWmyF8NAgTA==} + + '@zag-js/scroll-area@1.31.1': + resolution: {integrity: sha512-GBXd1K3U0AHwWlJaqAMKQMZyeoxuBO6XYrVgdvzgiftQbJrZs5fuYOFyDvPLDWHTLYxaHso44/f+9EmAUAiytw==} + + '@zag-js/scroll-snap@1.31.1': + resolution: {integrity: sha512-YWsfhcQqiffu2X9HuB0fMnEQAu6rEOfGcvQYinvB6pjWPOvIJGxGMi/dYyy21XQDNJ9K1IcWRIo/yuaajoJyQQ==} + + '@zag-js/select@1.31.1': + resolution: {integrity: sha512-vKWb8BiRY83Y3HkDNnimf6cr1yvzJh1HwZlzXFz0y47zEvlikQaf+r96obR78RgTtMjNTTV15tTXdc1/WFoYkw==} + + '@zag-js/signature-pad@1.31.1': + resolution: {integrity: sha512-bz3WtLuIZoLrJDKcdS7fPAdD/Qi9wKiKACl5cu+ftv9zg8w+qqYNLtjH9HxeUFbCtQRKqcdXjO/UZ8iL07hgsQ==} + + '@zag-js/slider@1.31.1': + resolution: {integrity: sha512-FILbLTMd3BnyclZ28+ippfyqzYPGK60qZapxtTERmWDC75Okf8AFnTCQf84Y8jRmBKCS1yhjF+IOtkFAENeB6w==} + + '@zag-js/splitter@1.31.1': + resolution: {integrity: sha512-7SGBT2/xKsOzeSQEg+Otn1XV3RHrAz3jTySjBRKoEmdxubhfREqbKotbGVG65aTve11fQnmJ3Oyt3GJOeraxLA==} + + '@zag-js/steps@1.31.1': + resolution: {integrity: sha512-KsBH38V3tH9/q8CDgx4sUSXLYwFdcp1crZy8hTIcN0RUiZ55PmqYKkN2znzBjTbaCW9yhP8kXsbuo2s8OIU5lQ==} + + '@zag-js/store@1.31.1': + resolution: {integrity: sha512-d5ZTRciTuXOGQ3nML15kQLaTiR1wJPxT1Fu1nN659X6Rl8DPtubYaRCZ3RCk9Kyiyg2z5HxeVqDswaDvGbM9Rg==} + + '@zag-js/switch@1.31.1': + resolution: {integrity: sha512-Jii3OSqSa9sQux+hvSRvp9dirzUF09+PAjrLjCQs+BT08EZ0XqeGvVzM0Wqf9LFy07HdLZntai3IUaXLF6byBw==} + + '@zag-js/tabs@1.31.1': + resolution: {integrity: sha512-QBq4ngpBNMNEI7Wuaq8llwHOqgcVbNHHEDC5zHg60Bf7MY5ltP8wSq6Kldu0zZRVwrLzanYoMELDUyf9H0vtnw==} + + '@zag-js/tags-input@1.31.1': + resolution: {integrity: sha512-V4lJe/aMIs7WVoXYfszU6E3iARLLRQFMiycu76/slb8NWJiLrkSIaMQ4FAe2pqkodgCWXA83tuaeAZRq7ouTFg==} + + '@zag-js/timer@1.31.1': + resolution: {integrity: sha512-bXfeSbneWGOBKlD5dYq06T8CSY9Ky+qb1yIfJAFsRF4n34mpUYRdtfwpNQYyddGpkLD7oH4VibajeZXB7HaL0g==} + + '@zag-js/toast@1.31.1': + resolution: {integrity: sha512-MueHEei9ol3H6tWBruLxF7yEUpV3vsJ8brTQVRRtPr/6pqBs5kGzfL4YskhQ2tiwO6egay8YrkbaS3xJfpKt4w==} + + '@zag-js/toggle-group@1.31.1': + resolution: {integrity: sha512-Mojc7mex01/gvwXfrUIIThzT7HOktZoMge9rrb6+P7rQX7ulyNXYPjQrW2tay+t54GOJ3xODo9dU7PpRzXeHbw==} + + '@zag-js/toggle@1.31.1': + resolution: {integrity: sha512-HbFBuGfdyYkNvOp3cEB8Civ4E92finT4u3e4LKysB4/LboqKA0cJvFhSnHyThbROONTx06W/3CxwoSFR4o8IhA==} + + '@zag-js/tooltip@1.31.1': + resolution: {integrity: sha512-pWEU5XhEPpnyl2VLrGJlyjj7+p+X0UX3Fld+WGhc/hCaWiuW2ZzD/ewDRhSOZu4/TzAO3axrPqG1YhW4fhogKQ==} + + '@zag-js/tour@1.31.1': + resolution: {integrity: sha512-ZmcAevXxoENHmHG0xwdIt1oCLe2/DW1CEBFPr7YuGKc+FU3QbBVZMzcBHrJCe0nkKXhUKzHOHM78bOHD/gM76w==} + + '@zag-js/tree-view@1.31.1': + resolution: {integrity: sha512-Q+VSQz7X1XR8gT7ICWXlQOJIvzTWw/9BlF7B073UpEgAKRFlD11FmERka5y/BYqj8uE0vazcbSEA3Vc2dgCMJA==} + + '@zag-js/types@1.31.1': + resolution: {integrity: sha512-mKw5DoeBjFykfUHv3ifCRjcogFTqp0aCCsmqQMfnf+J/mg2aXpAx76AXT1PYXAVVhxdP6qGXNd0mOQZDVrIlSQ==} + + '@zag-js/utils@1.31.1': + resolution: {integrity: sha512-KLm0pmOtf4ydALbaVLboL7W98TDVxwVVLvSuvtRgV53XTjlsVopTRA5/Xmzq2NhWujDZAXv7bRV603NDgDcjSw==} + + abort-controller@3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv-draft-04@1.0.0: + resolution: {integrity: sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==} + peerDependencies: + ajv: ^8.5.0 + peerDependenciesMeta: + ajv: + optional: true + + ajv-errors@3.0.0: + resolution: {integrity: sha512-V3wD15YHfHz6y0KdhYFjyy9vWtEVALT9UrxfN3zqlI6dMioHnJrqOYfyPKol3oqrnCM9uwkcdCwkJ0WUcbLMTQ==} + peerDependencies: + ajv: ^8.0.1 + + ajv-formats@2.1.1: + resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + + astring@1.9.0: + resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==} + hasBin: true + + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + axios@1.13.2: + resolution: {integrity: sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==} + + babel-plugin-macros@3.1.0: + resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} + engines: {node: '>=10', npm: '>=6'} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + call-me-maybe@1.0.2: + resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + commander@14.0.2: + resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==} + engines: {node: '>=20'} + + compare-versions@6.1.1: + resolution: {integrity: sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + + cookie@1.1.1: + resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} + engines: {node: '>=18'} + + core-js@3.47.0: + resolution: {integrity: sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==} + + cosmiconfig@7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} + engines: {node: '>=10'} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + csstype@3.2.3: + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} + + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + + dayjs@1.11.19: + resolution: {integrity: sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + dependency-graph@0.11.0: + resolution: {integrity: sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==} + engines: {node: '>= 0.6.0'} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + error-ex@1.3.4: + resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==} + + error-stack-parser@2.1.4: + resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} + engines: {node: '>= 0.4'} + + es-aggregate-error@1.0.14: + resolution: {integrity: sha512-3YxX6rVb07B5TV11AV5wsL7nQCHXNwoHPsQC8S4AmBiqYhyNCJ5BRKXkXyDJvs8QzXN20NgRtxe3dEEQD9NLHA==} + engines: {node: '>= 0.4'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + + es6-promise@3.3.1: + resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} + + esbuild@0.25.12: + resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} + engines: {node: '>=18'} + hasBin: true + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + event-target-shim@5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + + execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-memoize@2.5.2: + resolution: {integrity: sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw==} + + fast-safe-stringify@2.1.1: + resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + + fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-root@1.1.0: + resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + form-data@4.0.5: + resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} + engines: {node: '>= 6'} + + fs-extra@11.3.3: + resolution: {integrity: sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==} + engines: {node: '>=14.14'} + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hoist-non-react-statics@3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + + html-entities@2.6.0: + resolution: {integrity: sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==} + + http2-client@1.3.5: + resolution: {integrity: sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==} + + human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + immer@9.0.21: + resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + inflected@2.1.0: + resolution: {integrity: sha512-hAEKNxvHf2Iq3H60oMBHkB4wl5jn3TPF3+fXek/sRwAB5gP9xWs4r7aweSF95f99HFoz69pnZTcu8f0SIHV18w==} + + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + jiti@2.6.1: + resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + jsep@1.4.0: + resolution: {integrity: sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==} + engines: {node: '>= 10.16.0'} + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + jsonc-parser@2.2.1: + resolution: {integrity: sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==} + + jsonfile@6.2.0: + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} + + jsonpath-plus@10.3.0: + resolution: {integrity: sha512-8TNmfeTCk2Le33A3vRRwtuworG/L5RrgMvdjhKZxvyShO+mBu2fP50OWUjRLNtvw344DdDarFh9buFAZs5ujeA==} + engines: {node: '>=18.0.0'} + hasBin: true + + jsonpointer@5.0.1: + resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} + engines: {node: '>=0.10.0'} + + jsonschema@1.5.0: + resolution: {integrity: sha512-K+A9hhqbn0f3pJX17Q/7H6yQfD/5OXgdrR5UE12gMXCiN9D5Xq2o5mddV2QEcX/bjla99ASsAAQUyMCCRWAEhw==} + + leven@3.1.0: + resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} + engines: {node: '>=6'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.isempty@4.4.0: + resolution: {integrity: sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==} + + lodash.omitby@4.6.0: + resolution: {integrity: sha512-5OrRcIVR75M288p4nbI2WLAf3ndw2GD9fyNv3Bc15+WCxJDdZ4lYndSxGd7hnG6PVjiJTeJE2dHEGhIuKGicIQ==} + + lodash.topath@4.5.2: + resolution: {integrity: sha512-1/W4dM+35DwvE/iEd1M9ekewOSTlpFekhw9mhAtrwjVqUr83/ilQiyAvmg4tVX7Unkcfl1KC+i9WdaT4B6aQcg==} + + lodash.uniq@4.5.0: + resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} + + lodash.uniqby@4.7.0: + resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==} + + lodash.uniqwith@4.5.0: + resolution: {integrity: sha512-7lYL8bLopMoy4CTICbxygAUq6CdRJ36vFc80DucPueUee+d5NBRxz3FdT9Pes/HEx5mPoT9jwnsEJWz1N7uq7Q==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + loglevel-plugin-prefix@0.8.4: + resolution: {integrity: sha512-WpG9CcFAOjz/FtNht+QJeGpvVl/cdR6P0z6OcXSkr8wFJOsV2GRj2j10JLfjuA4aYkcKCNIEqRGCyTife9R8/g==} + + loglevel@1.9.2: + resolution: {integrity: sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg==} + engines: {node: '>= 0.6.0'} + + lucide-react@0.562.0: + resolution: {integrity: sha512-82hOAu7y0dbVuFfmO4bYF1XEwYk/mEbM5E+b1jgci/udUBEE/R7LF5Ip0CCEmXe8AybRM8L+04eP+LGZeDvkiw==} + peerDependencies: + react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + lunr@2.3.9: + resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} + + markdown-it@14.1.0: + resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} + hasBin: true + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@6.2.0: + resolution: {integrity: sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==} + engines: {node: '>=10'} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + mobx-react-lite@4.1.1: + resolution: {integrity: sha512-iUxiMpsvNraCKXU+yPotsOncNNmyeS2B5DKL+TL6Tar/xm+wwNJAubJmtRSeAoYawdZqwv8Z/+5nPRHeQxTiXg==} + peerDependencies: + mobx: ^6.9.0 + react: ^16.8.0 || ^17 || ^18 || ^19 + react-dom: '*' + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + + mobx@6.15.0: + resolution: {integrity: sha512-UczzB+0nnwGotYSgllfARAqWCJ5e/skuV2K/l+Zyck/H6pJIhLXuBnz+6vn2i211o7DtbE78HQtsYEKICHGI+g==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + next-themes@0.4.6: + resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} + peerDependencies: + react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + + nimma@0.2.3: + resolution: {integrity: sha512-1ZOI8J+1PKKGceo/5CT5GfQOG6H8I2BencSK06YarZ2wXwH37BSSUWldqJmMJYA5JfqDqffxDXynt6f11AyKcA==} + engines: {node: ^12.20 || >=14.13} + + node-fetch-h2@2.3.0: + resolution: {integrity: sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==} + engines: {node: 4.x || >=6.0.0} + + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + node-readfiles@0.2.0: + resolution: {integrity: sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==} + + npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} + + oas-kit-common@1.0.8: + resolution: {integrity: sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==} + + oas-linter@3.2.2: + resolution: {integrity: sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==} + + oas-resolver@2.5.6: + resolution: {integrity: sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==} + hasBin: true + + oas-schema-walker@1.1.5: + resolution: {integrity: sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==} + + oas-validator@5.0.8: + resolution: {integrity: sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + + onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + + openapi-types@12.1.3: + resolution: {integrity: sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==} + + openapi3-ts@4.5.0: + resolution: {integrity: sha512-jaL+HgTq2Gj5jRcfdutgRGLosCy/hT8sQf6VOy+P+g36cZOjI1iukdPnijC+4CmeRzg/jEllJUboEic2FhxhtQ==} + + orval@7.17.2: + resolution: {integrity: sha512-6+drCVVWNukdX+ytFPOC2UJ51gv0kGAPch7cTQYxO7VsGwdZ1DiZhYozdGehwu6QeVvAszPhPlh4uLq53k0x+w==} + engines: {node: '>=22.18.0'} + hasBin: true + + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + perfect-freehand@1.2.2: + resolution: {integrity: sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pony-cause@1.1.1: + resolution: {integrity: sha512-PxkIc/2ZpLiEzQXu5YRDOUgBlfGYBY8156HY5ZcRAwwonMk5W/MrJP2LLkG/hF7GEQzaHo2aS7ho6ZLCOvf+6g==} + engines: {node: '>=12.0.0'} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + prettier@3.7.4: + resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==} + engines: {node: '>=14'} + hasBin: true + + proxy-compare@3.0.1: + resolution: {integrity: sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q==} + + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + + proxy-memoize@3.0.1: + resolution: {integrity: sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g==} + + punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + react-dom@19.2.3: + resolution: {integrity: sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==} + peerDependencies: + react: ^19.2.3 + + react-hook-form@7.70.0: + resolution: {integrity: sha512-COOMajS4FI3Wuwrs3GPpi/Jeef/5W1DRR84Yl5/ShlT3dKVFUfoGiEZ/QE6Uw8P4T2/CLJdcTVYKvWBMQTEpvw==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^16.8.0 || ^17 || ^18 || ^19 + + react-icons@5.5.0: + resolution: {integrity: sha512-MEFcXdkP3dLo8uumGI5xN3lDFNsRtrjbOEKDLD7yv76v4wpnEq2Lt2qeHaQOr34I/wPN3s3+N08WkQ+CW37Xiw==} + peerDependencies: + react: '*' + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + react-refresh@0.18.0: + resolution: {integrity: sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==} + engines: {node: '>=0.10.0'} + + react-router@7.12.0: + resolution: {integrity: sha512-kTPDYPFzDVGIIGNLS5VJykK0HfHLY5MF3b+xj0/tTyNYL1gF1qs7u67Z9jEhQk2sQ98SUaHxlG31g1JtF7IfVw==} + engines: {node: '>=20.0.0'} + peerDependencies: + react: '>=18' + react-dom: '>=18' + peerDependenciesMeta: + react-dom: + optional: true + + react@19.2.3: + resolution: {integrity: sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==} + engines: {node: '>=0.10.0'} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + reftools@1.1.9: + resolution: {integrity: sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} + engines: {node: '>= 0.4'} + hasBin: true + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + safe-stable-stringify@1.1.1: + resolution: {integrity: sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==} + + scheduler@0.27.0: + resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} + + set-cookie-parser@2.7.2: + resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==} + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + should-equal@2.0.0: + resolution: {integrity: sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==} + + should-format@3.0.3: + resolution: {integrity: sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==} + + should-type-adaptors@1.1.0: + resolution: {integrity: sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==} + + should-type@1.4.0: + resolution: {integrity: sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==} + + should-util@1.0.1: + resolution: {integrity: sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==} + + should@13.2.3: + resolution: {integrity: sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==} + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + simple-eval@1.0.1: + resolution: {integrity: sha512-LH7FpTAkeD+y5xQC4fzS+tFtaNlvt3Ib1zKzvhjv/Y+cioV4zIuw4IZr2yhRLu67CWL7FR9/6KXKnjRoZTvGGQ==} + engines: {node: '>=12'} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + source-map@0.5.7: + resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} + engines: {node: '>=0.10.0'} + + stackframe@1.3.4: + resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} + + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + + string-argv@0.3.2: + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} + engines: {node: '>=0.6.19'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + + stylis@4.2.0: + resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + swagger2openapi@7.0.8: + resolution: {integrity: sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==} + hasBin: true + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + + tsconfck@2.1.2: + resolution: {integrity: sha512-ghqN1b0puy3MhhviwO2kGF8SeMDNhEbnKxjK7h6+fvY9JAxqvXi8y5NAHSQv687OVboS2uZIByzGd45/YxrRHg==} + engines: {node: ^14.13.1 || ^16 || >=18} + hasBin: true + peerDependencies: + typescript: ^4.3.5 || ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + + typedoc-plugin-coverage@4.0.2: + resolution: {integrity: sha512-mfn0e7NCqB8x2PfvhXrtmd7KWlsNf1+B2N9y8gR/jexXBLrXl/0e+b2HdG5HaTXGi7i0t2pyQY2VRmq7gtdEHQ==} + engines: {node: '>= 18'} + peerDependencies: + typedoc: 0.28.x + + typedoc-plugin-markdown@4.9.0: + resolution: {integrity: sha512-9Uu4WR9L7ZBgAl60N/h+jqmPxxvnC9nQAlnnO/OujtG2ubjnKTVUFY1XDhcMY+pCqlX3N2HsQM2QTYZIU9tJuw==} + engines: {node: '>= 18'} + peerDependencies: + typedoc: 0.28.x + + typedoc@0.28.15: + resolution: {integrity: sha512-mw2/2vTL7MlT+BVo43lOsufkkd2CJO4zeOSuWQQsiXoV2VuEn7f6IZp2jsUDPmBMABpgR0R5jlcJ2OGEFYmkyg==} + engines: {node: '>= 18', pnpm: '>= 10'} + hasBin: true + peerDependencies: + typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + uc.micro@2.1.0: + resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} + + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + + undici-types@7.16.0: + resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + uqr@0.1.2: + resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==} + + urijs@1.19.11: + resolution: {integrity: sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==} + + use-sync-external-store@1.6.0: + resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + utility-types@3.11.0: + resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==} + engines: {node: '>= 4'} + + validator@13.15.26: + resolution: {integrity: sha512-spH26xU080ydGggxRyR1Yhcbgx+j3y5jbNXk/8L+iRvdIEQ4uTRH2Sgf2dokud6Q4oAtsbNvJ1Ft+9xmm6IZcA==} + engines: {node: '>= 0.10'} + + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-typed-array@1.1.19: + resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==} + engines: {node: '>= 0.4'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yaml@1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + + yaml@2.8.2: + resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} + engines: {node: '>= 14.6'} + hasBin: true + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@apidevtools/json-schema-ref-parser@14.0.1': + dependencies: + '@types/json-schema': 7.0.15 + js-yaml: 4.1.1 + + '@apidevtools/openapi-schemas@2.1.0': {} + + '@apidevtools/swagger-methods@3.0.2': {} + + '@apidevtools/swagger-parser@12.1.0(openapi-types@12.1.3)': + dependencies: + '@apidevtools/json-schema-ref-parser': 14.0.1 + '@apidevtools/openapi-schemas': 2.1.0 + '@apidevtools/swagger-methods': 3.0.2 + ajv: 8.17.1 + ajv-draft-04: 1.0.0(ajv@8.17.1) + call-me-maybe: 1.0.2 + openapi-types: 12.1.3 + + '@ark-ui/react@5.30.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + dependencies: + '@internationalized/date': 3.10.0 + '@zag-js/accordion': 1.31.1 + '@zag-js/anatomy': 1.31.1 + '@zag-js/angle-slider': 1.31.1 + '@zag-js/async-list': 1.31.1 + '@zag-js/auto-resize': 1.31.1 + '@zag-js/avatar': 1.31.1 + '@zag-js/bottom-sheet': 1.31.1 + '@zag-js/carousel': 1.31.1 + '@zag-js/checkbox': 1.31.1 + '@zag-js/clipboard': 1.31.1 + '@zag-js/collapsible': 1.31.1 + '@zag-js/collection': 1.31.1 + '@zag-js/color-picker': 1.31.1 + '@zag-js/color-utils': 1.31.1 + '@zag-js/combobox': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/date-picker': 1.31.1(@internationalized/date@3.10.0) + '@zag-js/date-utils': 1.31.1(@internationalized/date@3.10.0) + '@zag-js/dialog': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/editable': 1.31.1 + '@zag-js/file-upload': 1.31.1 + '@zag-js/file-utils': 1.31.1 + '@zag-js/floating-panel': 1.31.1 + '@zag-js/focus-trap': 1.31.1 + '@zag-js/highlight-word': 1.31.1 + '@zag-js/hover-card': 1.31.1 + '@zag-js/i18n-utils': 1.31.1 + '@zag-js/image-cropper': 1.31.1 + '@zag-js/json-tree-utils': 1.31.1 + '@zag-js/listbox': 1.31.1 + '@zag-js/marquee': 1.31.1 + '@zag-js/menu': 1.31.1 + '@zag-js/navigation-menu': 1.31.1 + '@zag-js/number-input': 1.31.1 + '@zag-js/pagination': 1.31.1 + '@zag-js/password-input': 1.31.1 + '@zag-js/pin-input': 1.31.1 + '@zag-js/popover': 1.31.1 + '@zag-js/presence': 1.31.1 + '@zag-js/progress': 1.31.1 + '@zag-js/qr-code': 1.31.1 + '@zag-js/radio-group': 1.31.1 + '@zag-js/rating-group': 1.31.1 + '@zag-js/react': 1.31.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + '@zag-js/scroll-area': 1.31.1 + '@zag-js/select': 1.31.1 + '@zag-js/signature-pad': 1.31.1 + '@zag-js/slider': 1.31.1 + '@zag-js/splitter': 1.31.1 + '@zag-js/steps': 1.31.1 + '@zag-js/switch': 1.31.1 + '@zag-js/tabs': 1.31.1 + '@zag-js/tags-input': 1.31.1 + '@zag-js/timer': 1.31.1 + '@zag-js/toast': 1.31.1 + '@zag-js/toggle': 1.31.1 + '@zag-js/toggle-group': 1.31.1 + '@zag-js/tooltip': 1.31.1 + '@zag-js/tour': 1.31.1 + '@zag-js/tree-view': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + + '@asyncapi/specs@6.10.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@babel/code-frame@7.27.1': + dependencies: + '@babel/helper-validator-identifier': 7.28.5 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/generator@7.28.5': + dependencies: + '@babel/parser': 7.28.5 + '@babel/types': 7.28.5 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + jsesc: 3.1.0 + + '@babel/helper-globals@7.28.0': {} + + '@babel/helper-module-imports@7.27.1': + dependencies: + '@babel/traverse': 7.28.5 + '@babel/types': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.28.5': {} + + '@babel/parser@7.28.5': + dependencies: + '@babel/types': 7.28.5 + + '@babel/runtime@7.28.4': {} + + '@babel/template@7.27.2': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/parser': 7.28.5 + '@babel/types': 7.28.5 + + '@babel/traverse@7.28.5': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.28.5 + '@babel/helper-globals': 7.28.0 + '@babel/parser': 7.28.5 + '@babel/template': 7.27.2 + '@babel/types': 7.28.5 + debug: 4.4.3 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.28.5': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + + '@chakra-ui/react@3.30.0(@emotion/react@11.14.0(@types/react@19.2.7)(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + dependencies: + '@ark-ui/react': 5.30.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + '@emotion/is-prop-valid': 1.4.0 + '@emotion/react': 11.14.0(@types/react@19.2.7)(react@19.2.3) + '@emotion/serialize': 1.3.3 + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.2.3) + '@emotion/utils': 1.4.2 + '@pandacss/is-valid-prop': 1.8.0 + csstype: 3.2.3 + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + + '@commander-js/extra-typings@14.0.0(commander@14.0.2)': + dependencies: + commander: 14.0.2 + + '@emnapi/core@1.8.1': + dependencies: + '@emnapi/wasi-threads': 1.1.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.8.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.1.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@emotion/babel-plugin@11.13.5': + dependencies: + '@babel/helper-module-imports': 7.27.1 + '@babel/runtime': 7.28.4 + '@emotion/hash': 0.9.2 + '@emotion/memoize': 0.9.0 + '@emotion/serialize': 1.3.3 + babel-plugin-macros: 3.1.0 + convert-source-map: 1.9.0 + escape-string-regexp: 4.0.0 + find-root: 1.1.0 + source-map: 0.5.7 + stylis: 4.2.0 + transitivePeerDependencies: + - supports-color + + '@emotion/cache@11.14.0': + dependencies: + '@emotion/memoize': 0.9.0 + '@emotion/sheet': 1.4.0 + '@emotion/utils': 1.4.2 + '@emotion/weak-memoize': 0.4.0 + stylis: 4.2.0 + + '@emotion/hash@0.9.2': {} + + '@emotion/is-prop-valid@1.4.0': + dependencies: + '@emotion/memoize': 0.9.0 + + '@emotion/memoize@0.9.0': {} + + '@emotion/react@11.14.0(@types/react@19.2.7)(react@19.2.3)': + dependencies: + '@babel/runtime': 7.28.4 + '@emotion/babel-plugin': 11.13.5 + '@emotion/cache': 11.14.0 + '@emotion/serialize': 1.3.3 + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.2.3) + '@emotion/utils': 1.4.2 + '@emotion/weak-memoize': 0.4.0 + hoist-non-react-statics: 3.3.2 + react: 19.2.3 + optionalDependencies: + '@types/react': 19.2.7 + transitivePeerDependencies: + - supports-color + + '@emotion/serialize@1.3.3': + dependencies: + '@emotion/hash': 0.9.2 + '@emotion/memoize': 0.9.0 + '@emotion/unitless': 0.10.0 + '@emotion/utils': 1.4.2 + csstype: 3.2.3 + + '@emotion/sheet@1.4.0': {} + + '@emotion/unitless@0.10.0': {} + + '@emotion/use-insertion-effect-with-fallbacks@1.2.0(react@19.2.3)': + dependencies: + react: 19.2.3 + + '@emotion/utils@1.4.2': {} + + '@emotion/weak-memoize@0.4.0': {} + + '@esbuild/aix-ppc64@0.25.12': + optional: true + + '@esbuild/android-arm64@0.25.12': + optional: true + + '@esbuild/android-arm@0.25.12': + optional: true + + '@esbuild/android-x64@0.25.12': + optional: true + + '@esbuild/darwin-arm64@0.25.12': + optional: true + + '@esbuild/darwin-x64@0.25.12': + optional: true + + '@esbuild/freebsd-arm64@0.25.12': + optional: true + + '@esbuild/freebsd-x64@0.25.12': + optional: true + + '@esbuild/linux-arm64@0.25.12': + optional: true + + '@esbuild/linux-arm@0.25.12': + optional: true + + '@esbuild/linux-ia32@0.25.12': + optional: true + + '@esbuild/linux-loong64@0.25.12': + optional: true + + '@esbuild/linux-mips64el@0.25.12': + optional: true + + '@esbuild/linux-ppc64@0.25.12': + optional: true + + '@esbuild/linux-riscv64@0.25.12': + optional: true + + '@esbuild/linux-s390x@0.25.12': + optional: true + + '@esbuild/linux-x64@0.25.12': + optional: true + + '@esbuild/netbsd-arm64@0.25.12': + optional: true + + '@esbuild/netbsd-x64@0.25.12': + optional: true + + '@esbuild/openbsd-arm64@0.25.12': + optional: true + + '@esbuild/openbsd-x64@0.25.12': + optional: true + + '@esbuild/openharmony-arm64@0.25.12': + optional: true + + '@esbuild/sunos-x64@0.25.12': + optional: true + + '@esbuild/win32-arm64@0.25.12': + optional: true + + '@esbuild/win32-ia32@0.25.12': + optional: true + + '@esbuild/win32-x64@0.25.12': + optional: true + + '@exodus/schemasafe@1.3.0': {} + + '@floating-ui/core@1.7.3': + dependencies: + '@floating-ui/utils': 0.2.10 + + '@floating-ui/dom@1.7.4': + dependencies: + '@floating-ui/core': 1.7.3 + '@floating-ui/utils': 0.2.10 + + '@floating-ui/utils@0.2.10': {} + + '@fontsource-variable/jost@5.2.8': {} + + '@fontsource/golos-text@5.2.8': {} + + '@gerrit0/mini-shiki@3.21.0': + dependencies: + '@shikijs/engine-oniguruma': 3.21.0 + '@shikijs/langs': 3.21.0 + '@shikijs/themes': 3.21.0 + '@shikijs/types': 3.21.0 + '@shikijs/vscode-textmate': 10.0.2 + + '@ibm-cloud/openapi-ruleset-utilities@1.9.0': {} + + '@ibm-cloud/openapi-ruleset@1.33.5': + dependencies: + '@ibm-cloud/openapi-ruleset-utilities': 1.9.0 + '@stoplight/spectral-formats': 1.8.2 + '@stoplight/spectral-functions': 1.10.1 + '@stoplight/spectral-rulesets': 1.22.0 + chalk: 4.1.2 + inflected: 2.1.0 + jsonschema: 1.5.0 + lodash: 4.17.21 + loglevel: 1.9.2 + loglevel-plugin-prefix: 0.8.4 + minimatch: 6.2.0 + validator: 13.15.26 + transitivePeerDependencies: + - encoding + + '@internationalized/date@3.10.0': + dependencies: + '@swc/helpers': 0.5.18 + + '@internationalized/number@3.6.5': + dependencies: + '@swc/helpers': 0.5.18 + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@jsep-plugin/assignment@1.3.0(jsep@1.4.0)': + dependencies: + jsep: 1.4.0 + + '@jsep-plugin/regex@1.0.4(jsep@1.4.0)': + dependencies: + jsep: 1.4.0 + + '@jsep-plugin/ternary@1.1.4(jsep@1.4.0)': + dependencies: + jsep: 1.4.0 + + '@module-federation/error-codes@0.22.0': {} + + '@module-federation/runtime-core@0.22.0': + dependencies: + '@module-federation/error-codes': 0.22.0 + '@module-federation/sdk': 0.22.0 + + '@module-federation/runtime-tools@0.22.0': + dependencies: + '@module-federation/runtime': 0.22.0 + '@module-federation/webpack-bundler-runtime': 0.22.0 + + '@module-federation/runtime@0.22.0': + dependencies: + '@module-federation/error-codes': 0.22.0 + '@module-federation/runtime-core': 0.22.0 + '@module-federation/sdk': 0.22.0 + + '@module-federation/sdk@0.22.0': {} + + '@module-federation/webpack-bundler-runtime@0.22.0': + dependencies: + '@module-federation/runtime': 0.22.0 + '@module-federation/sdk': 0.22.0 + + '@napi-rs/wasm-runtime@1.0.7': + dependencies: + '@emnapi/core': 1.8.1 + '@emnapi/runtime': 1.8.1 + '@tybys/wasm-util': 0.10.1 + optional: true + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.20.1 + + '@orval/angular@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/axios@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/core@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@apidevtools/swagger-parser': 12.1.0(openapi-types@12.1.3) + '@ibm-cloud/openapi-ruleset': 1.33.5 + '@stoplight/spectral-core': 1.20.0 + acorn: 8.15.0 + chalk: 4.1.2 + compare-versions: 6.1.1 + debug: 4.4.3 + esbuild: 0.25.12 + esutils: 2.0.3 + fs-extra: 11.3.3 + globby: 11.1.0 + lodash.isempty: 4.4.0 + lodash.uniq: 4.5.0 + lodash.uniqby: 4.7.0 + lodash.uniqwith: 4.5.0 + micromatch: 4.0.8 + openapi3-ts: 4.5.0 + swagger2openapi: 7.0.8 + typedoc: 0.28.15(typescript@5.9.3) + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/fetch@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + openapi3-ts: 4.5.0 + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/hono@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/zod': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + fs-extra: 11.3.3 + lodash.uniq: 4.5.0 + openapi3-ts: 4.5.0 + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/mcp@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/fetch': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/zod': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + openapi3-ts: 4.5.0 + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/mock@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + openapi3-ts: 4.5.0 + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/query@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/fetch': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + chalk: 4.1.2 + lodash.omitby: 4.6.0 + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/swr@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/fetch': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@orval/zod@7.17.2(openapi-types@12.1.3)(typescript@5.9.3)': + dependencies: + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + lodash.uniq: 4.5.0 + openapi3-ts: 4.5.0 + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + '@pandacss/is-valid-prop@1.8.0': {} + + '@rsbuild/core@1.7.2': + dependencies: + '@rspack/core': 1.7.1(@swc/helpers@0.5.18) + '@rspack/lite-tapable': 1.1.0 + '@swc/helpers': 0.5.18 + core-js: 3.47.0 + jiti: 2.6.1 + + '@rsbuild/plugin-react@1.4.2(@rsbuild/core@1.7.2)': + dependencies: + '@rsbuild/core': 1.7.2 + '@rspack/plugin-react-refresh': 1.6.0(react-refresh@0.18.0) + react-refresh: 0.18.0 + transitivePeerDependencies: + - webpack-hot-middleware + + '@rspack/binding-darwin-arm64@1.7.1': + optional: true + + '@rspack/binding-darwin-x64@1.7.1': + optional: true + + '@rspack/binding-linux-arm64-gnu@1.7.1': + optional: true + + '@rspack/binding-linux-arm64-musl@1.7.1': + optional: true + + '@rspack/binding-linux-x64-gnu@1.7.1': + optional: true + + '@rspack/binding-linux-x64-musl@1.7.1': + optional: true + + '@rspack/binding-wasm32-wasi@1.7.1': + dependencies: + '@napi-rs/wasm-runtime': 1.0.7 + optional: true + + '@rspack/binding-win32-arm64-msvc@1.7.1': + optional: true + + '@rspack/binding-win32-ia32-msvc@1.7.1': + optional: true + + '@rspack/binding-win32-x64-msvc@1.7.1': + optional: true + + '@rspack/binding@1.7.1': + optionalDependencies: + '@rspack/binding-darwin-arm64': 1.7.1 + '@rspack/binding-darwin-x64': 1.7.1 + '@rspack/binding-linux-arm64-gnu': 1.7.1 + '@rspack/binding-linux-arm64-musl': 1.7.1 + '@rspack/binding-linux-x64-gnu': 1.7.1 + '@rspack/binding-linux-x64-musl': 1.7.1 + '@rspack/binding-wasm32-wasi': 1.7.1 + '@rspack/binding-win32-arm64-msvc': 1.7.1 + '@rspack/binding-win32-ia32-msvc': 1.7.1 + '@rspack/binding-win32-x64-msvc': 1.7.1 + + '@rspack/core@1.7.1(@swc/helpers@0.5.18)': + dependencies: + '@module-federation/runtime-tools': 0.22.0 + '@rspack/binding': 1.7.1 + '@rspack/lite-tapable': 1.1.0 + optionalDependencies: + '@swc/helpers': 0.5.18 + + '@rspack/lite-tapable@1.1.0': {} + + '@rspack/plugin-react-refresh@1.6.0(react-refresh@0.18.0)': + dependencies: + error-stack-parser: 2.1.4 + html-entities: 2.6.0 + react-refresh: 0.18.0 + + '@shikijs/engine-oniguruma@3.21.0': + dependencies: + '@shikijs/types': 3.21.0 + '@shikijs/vscode-textmate': 10.0.2 + + '@shikijs/langs@3.21.0': + dependencies: + '@shikijs/types': 3.21.0 + + '@shikijs/themes@3.21.0': + dependencies: + '@shikijs/types': 3.21.0 + + '@shikijs/types@3.21.0': + dependencies: + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + + '@shikijs/vscode-textmate@10.0.2': {} + + '@simplewebauthn/browser@13.2.2': {} + + '@stoplight/better-ajv-errors@1.0.3(ajv@8.17.1)': + dependencies: + ajv: 8.17.1 + jsonpointer: 5.0.1 + leven: 3.1.0 + + '@stoplight/json-ref-readers@1.2.2': + dependencies: + node-fetch: 2.7.0 + tslib: 1.14.1 + transitivePeerDependencies: + - encoding + + '@stoplight/json-ref-resolver@3.1.6': + dependencies: + '@stoplight/json': 3.21.7 + '@stoplight/path': 1.3.2 + '@stoplight/types': 13.6.0 + '@types/urijs': 1.19.26 + dependency-graph: 0.11.0 + fast-memoize: 2.5.2 + immer: 9.0.21 + lodash: 4.17.21 + tslib: 2.8.1 + urijs: 1.19.11 + + '@stoplight/json@3.21.7': + dependencies: + '@stoplight/ordered-object-literal': 1.0.5 + '@stoplight/path': 1.3.2 + '@stoplight/types': 13.6.0 + jsonc-parser: 2.2.1 + lodash: 4.17.21 + safe-stable-stringify: 1.1.1 + + '@stoplight/ordered-object-literal@1.0.5': {} + + '@stoplight/path@1.3.2': {} + + '@stoplight/spectral-core@1.20.0': + dependencies: + '@stoplight/better-ajv-errors': 1.0.3(ajv@8.17.1) + '@stoplight/json': 3.21.7 + '@stoplight/path': 1.3.2 + '@stoplight/spectral-parsers': 1.0.5 + '@stoplight/spectral-ref-resolver': 1.0.5 + '@stoplight/spectral-runtime': 1.1.4 + '@stoplight/types': 13.6.0 + '@types/es-aggregate-error': 1.0.6 + '@types/json-schema': 7.0.15 + ajv: 8.17.1 + ajv-errors: 3.0.0(ajv@8.17.1) + ajv-formats: 2.1.1(ajv@8.17.1) + es-aggregate-error: 1.0.14 + jsonpath-plus: 10.3.0 + lodash: 4.17.21 + lodash.topath: 4.5.2 + minimatch: 3.1.2 + nimma: 0.2.3 + pony-cause: 1.1.1 + simple-eval: 1.0.1 + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + + '@stoplight/spectral-formats@1.8.2': + dependencies: + '@stoplight/json': 3.21.7 + '@stoplight/spectral-core': 1.20.0 + '@types/json-schema': 7.0.15 + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + + '@stoplight/spectral-functions@1.10.1': + dependencies: + '@stoplight/better-ajv-errors': 1.0.3(ajv@8.17.1) + '@stoplight/json': 3.21.7 + '@stoplight/spectral-core': 1.20.0 + '@stoplight/spectral-formats': 1.8.2 + '@stoplight/spectral-runtime': 1.1.4 + ajv: 8.17.1 + ajv-draft-04: 1.0.0(ajv@8.17.1) + ajv-errors: 3.0.0(ajv@8.17.1) + ajv-formats: 2.1.1(ajv@8.17.1) + lodash: 4.17.21 + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + + '@stoplight/spectral-parsers@1.0.5': + dependencies: + '@stoplight/json': 3.21.7 + '@stoplight/types': 14.1.1 + '@stoplight/yaml': 4.3.0 + tslib: 2.8.1 + + '@stoplight/spectral-ref-resolver@1.0.5': + dependencies: + '@stoplight/json-ref-readers': 1.2.2 + '@stoplight/json-ref-resolver': 3.1.6 + '@stoplight/spectral-runtime': 1.1.4 + dependency-graph: 0.11.0 + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + + '@stoplight/spectral-rulesets@1.22.0': + dependencies: + '@asyncapi/specs': 6.10.0 + '@stoplight/better-ajv-errors': 1.0.3(ajv@8.17.1) + '@stoplight/json': 3.21.7 + '@stoplight/spectral-core': 1.20.0 + '@stoplight/spectral-formats': 1.8.2 + '@stoplight/spectral-functions': 1.10.1 + '@stoplight/spectral-runtime': 1.1.4 + '@stoplight/types': 13.20.0 + '@types/json-schema': 7.0.15 + ajv: 8.17.1 + ajv-formats: 2.1.1(ajv@8.17.1) + json-schema-traverse: 1.0.0 + leven: 3.1.0 + lodash: 4.17.21 + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + + '@stoplight/spectral-runtime@1.1.4': + dependencies: + '@stoplight/json': 3.21.7 + '@stoplight/path': 1.3.2 + '@stoplight/types': 13.6.0 + abort-controller: 3.0.0 + lodash: 4.17.21 + node-fetch: 2.7.0 + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + + '@stoplight/types@13.20.0': + dependencies: + '@types/json-schema': 7.0.15 + utility-types: 3.11.0 + + '@stoplight/types@13.6.0': + dependencies: + '@types/json-schema': 7.0.15 + utility-types: 3.11.0 + + '@stoplight/types@14.1.1': + dependencies: + '@types/json-schema': 7.0.15 + utility-types: 3.11.0 + + '@stoplight/yaml-ast-parser@0.0.50': {} + + '@stoplight/yaml@4.3.0': + dependencies: + '@stoplight/ordered-object-literal': 1.0.5 + '@stoplight/types': 14.1.1 + '@stoplight/yaml-ast-parser': 0.0.50 + tslib: 2.8.1 + + '@swc/helpers@0.5.18': + dependencies: + tslib: 2.8.1 + + '@tybys/wasm-util@0.10.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/es-aggregate-error@1.0.6': + dependencies: + '@types/node': 25.0.5 + + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/json-schema@7.0.15': {} + + '@types/node@25.0.5': + dependencies: + undici-types: 7.16.0 + + '@types/parse-json@4.0.2': {} + + '@types/react-dom@19.2.3(@types/react@19.2.7)': + dependencies: + '@types/react': 19.2.7 + + '@types/react@19.2.7': + dependencies: + csstype: 3.2.3 + + '@types/unist@3.0.3': {} + + '@types/urijs@1.19.26': {} + + '@zag-js/accordion@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/anatomy@1.31.1': {} + + '@zag-js/angle-slider@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/rect-utils': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/aria-hidden@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + + '@zag-js/async-list@1.31.1': + dependencies: + '@zag-js/core': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/auto-resize@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + + '@zag-js/avatar@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/bottom-sheet@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/aria-hidden': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-trap': 1.31.1 + '@zag-js/remove-scroll': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/carousel@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/scroll-snap': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/checkbox@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-visible': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/clipboard@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/collapsible@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/collection@1.31.1': + dependencies: + '@zag-js/utils': 1.31.1 + + '@zag-js/color-picker@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/color-utils': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/color-utils@1.31.1': + dependencies: + '@zag-js/utils': 1.31.1 + + '@zag-js/combobox@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/aria-hidden': 1.31.1 + '@zag-js/collection': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/core@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/date-picker@1.31.1(@internationalized/date@3.10.0)': + dependencies: + '@internationalized/date': 3.10.0 + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/date-utils': 1.31.1(@internationalized/date@3.10.0) + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/live-region': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/date-utils@1.31.1(@internationalized/date@3.10.0)': + dependencies: + '@internationalized/date': 3.10.0 + + '@zag-js/dialog@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/aria-hidden': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-trap': 1.31.1 + '@zag-js/remove-scroll': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/dismissable@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + '@zag-js/interact-outside': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/dom-query@1.31.1': + dependencies: + '@zag-js/types': 1.31.1 + + '@zag-js/editable@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/interact-outside': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/file-upload@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/file-utils': 1.31.1 + '@zag-js/i18n-utils': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/file-utils@1.31.1': + dependencies: + '@zag-js/i18n-utils': 1.31.1 + + '@zag-js/floating-panel@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/rect-utils': 1.31.1 + '@zag-js/store': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/focus-trap@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + + '@zag-js/focus-visible@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + + '@zag-js/highlight-word@1.31.1': {} + + '@zag-js/hover-card@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/i18n-utils@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + + '@zag-js/image-cropper@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/interact-outside@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/json-tree-utils@1.31.1': {} + + '@zag-js/listbox@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/collection': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-visible': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/live-region@1.31.1': {} + + '@zag-js/marquee@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/menu@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/rect-utils': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/navigation-menu@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/number-input@1.31.1': + dependencies: + '@internationalized/number': 3.6.5 + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/pagination@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/password-input@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/pin-input@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/popover@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/aria-hidden': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-trap': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/remove-scroll': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/popper@1.31.1': + dependencies: + '@floating-ui/dom': 1.7.4 + '@zag-js/dom-query': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/presence@1.31.1': + dependencies: + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + + '@zag-js/progress@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/qr-code@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + proxy-memoize: 3.0.1 + uqr: 0.1.2 + + '@zag-js/radio-group@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-visible': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/rating-group@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/react@1.31.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + dependencies: + '@zag-js/core': 1.31.1 + '@zag-js/store': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + + '@zag-js/rect-utils@1.31.1': {} + + '@zag-js/remove-scroll@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + + '@zag-js/scroll-area@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/scroll-snap@1.31.1': + dependencies: + '@zag-js/dom-query': 1.31.1 + + '@zag-js/select@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/collection': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/signature-pad@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + perfect-freehand: 1.2.2 + + '@zag-js/slider@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/splitter@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/steps@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/store@1.31.1': + dependencies: + proxy-compare: 3.0.1 + + '@zag-js/switch@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-visible': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/tabs@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/tags-input@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/auto-resize': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/interact-outside': 1.31.1 + '@zag-js/live-region': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/timer@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/toast@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/toggle-group@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/toggle@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/tooltip@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-visible': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/tour@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dismissable': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/focus-trap': 1.31.1 + '@zag-js/interact-outside': 1.31.1 + '@zag-js/popper': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/tree-view@1.31.1': + dependencies: + '@zag-js/anatomy': 1.31.1 + '@zag-js/collection': 1.31.1 + '@zag-js/core': 1.31.1 + '@zag-js/dom-query': 1.31.1 + '@zag-js/types': 1.31.1 + '@zag-js/utils': 1.31.1 + + '@zag-js/types@1.31.1': + dependencies: + csstype: 3.2.3 + + '@zag-js/utils@1.31.1': {} + + abort-controller@3.0.0: + dependencies: + event-target-shim: 5.0.1 + + acorn@8.15.0: {} + + ajv-draft-04@1.0.0(ajv@8.17.1): + optionalDependencies: + ajv: 8.17.1 + + ajv-errors@3.0.0(ajv@8.17.1): + dependencies: + ajv: 8.17.1 + + ajv-formats@2.1.1(ajv@8.17.1): + optionalDependencies: + ajv: 8.17.1 + + ajv@8.17.1: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + + ansi-colors@4.1.3: {} + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + argparse@2.0.1: {} + + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + + array-union@2.1.0: {} + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + + astring@1.9.0: {} + + async-function@1.0.0: {} + + asynckit@0.4.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + axios@1.13.2: + dependencies: + follow-redirects: 1.15.11 + form-data: 4.0.5 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + babel-plugin-macros@3.1.0: + dependencies: + '@babel/runtime': 7.28.4 + cosmiconfig: 7.1.0 + resolve: 1.22.11 + + balanced-match@1.0.2: {} + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + call-me-maybe@1.0.2: {} + + callsites@3.1.0: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + commander@14.0.2: {} + + compare-versions@6.1.1: {} + + concat-map@0.0.1: {} + + convert-source-map@1.9.0: {} + + cookie@1.1.1: {} + + core-js@3.47.0: {} + + cosmiconfig@7.1.0: + dependencies: + '@types/parse-json': 4.0.2 + import-fresh: 3.3.1 + parse-json: 5.2.0 + path-type: 4.0.0 + yaml: 1.10.2 + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + csstype@3.2.3: {} + + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + dayjs@1.11.19: {} + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + + delayed-stream@1.0.0: {} + + dependency-graph@0.11.0: {} + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + emoji-regex@8.0.0: {} + + enquirer@2.4.1: + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + + entities@4.5.0: {} + + error-ex@1.3.4: + dependencies: + is-arrayish: 0.2.1 + + error-stack-parser@2.1.4: + dependencies: + stackframe: 1.3.4 + + es-abstract@1.24.1: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.19 + + es-aggregate-error@1.0.14: + dependencies: + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + function-bind: 1.1.2 + globalthis: 1.0.4 + has-property-descriptors: 1.0.2 + set-function-name: 2.0.2 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + + es6-promise@3.3.1: {} + + esbuild@0.25.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.12 + '@esbuild/android-arm': 0.25.12 + '@esbuild/android-arm64': 0.25.12 + '@esbuild/android-x64': 0.25.12 + '@esbuild/darwin-arm64': 0.25.12 + '@esbuild/darwin-x64': 0.25.12 + '@esbuild/freebsd-arm64': 0.25.12 + '@esbuild/freebsd-x64': 0.25.12 + '@esbuild/linux-arm': 0.25.12 + '@esbuild/linux-arm64': 0.25.12 + '@esbuild/linux-ia32': 0.25.12 + '@esbuild/linux-loong64': 0.25.12 + '@esbuild/linux-mips64el': 0.25.12 + '@esbuild/linux-ppc64': 0.25.12 + '@esbuild/linux-riscv64': 0.25.12 + '@esbuild/linux-s390x': 0.25.12 + '@esbuild/linux-x64': 0.25.12 + '@esbuild/netbsd-arm64': 0.25.12 + '@esbuild/netbsd-x64': 0.25.12 + '@esbuild/openbsd-arm64': 0.25.12 + '@esbuild/openbsd-x64': 0.25.12 + '@esbuild/openharmony-arm64': 0.25.12 + '@esbuild/sunos-x64': 0.25.12 + '@esbuild/win32-arm64': 0.25.12 + '@esbuild/win32-ia32': 0.25.12 + '@esbuild/win32-x64': 0.25.12 + + escalade@3.2.0: {} + + escape-string-regexp@4.0.0: {} + + esutils@2.0.3: {} + + event-target-shim@5.0.1: {} + + execa@5.1.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-memoize@2.5.2: {} + + fast-safe-stringify@2.1.1: {} + + fast-uri@3.1.0: {} + + fastq@1.20.1: + dependencies: + reusify: 1.1.0 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-root@1.1.0: {} + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + follow-redirects@1.15.11: {} + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + form-data@4.0.5: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.2 + mime-types: 2.1.35 + + fs-extra@11.3.3: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.2.0 + universalify: 2.0.1 + + function-bind@1.1.2: {} + + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + + generator-function@2.0.1: {} + + get-caller-file@2.0.5: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-stream@6.0.1: {} + + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + has-bigints@1.1.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hoist-non-react-statics@3.3.2: + dependencies: + react-is: 16.13.1 + + html-entities@2.6.0: {} + + http2-client@1.3.5: {} + + human-signals@2.1.0: {} + + ignore@5.3.2: {} + + immer@9.0.21: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + inflected@2.1.0: {} + + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + is-arrayish@0.2.1: {} + + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-callable@1.2.7: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-extglob@2.1.1: {} + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-fullwidth-code-point@3.0.0: {} + + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-map@2.0.3: {} + + is-negative-zero@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-number@7.0.0: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + + is-stream@2.0.1: {} + + is-string@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.19 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + jiti@2.6.1: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + jsep@1.4.0: {} + + jsesc@3.1.0: {} + + json-parse-even-better-errors@2.3.1: {} + + json-schema-traverse@1.0.0: {} + + jsonc-parser@2.2.1: {} + + jsonfile@6.2.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + jsonpath-plus@10.3.0: + dependencies: + '@jsep-plugin/assignment': 1.3.0(jsep@1.4.0) + '@jsep-plugin/regex': 1.0.4(jsep@1.4.0) + jsep: 1.4.0 + + jsonpointer@5.0.1: {} + + jsonschema@1.5.0: {} + + leven@3.1.0: {} + + lines-and-columns@1.2.4: {} + + linkify-it@5.0.0: + dependencies: + uc.micro: 2.1.0 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.isempty@4.4.0: {} + + lodash.omitby@4.6.0: {} + + lodash.topath@4.5.2: {} + + lodash.uniq@4.5.0: {} + + lodash.uniqby@4.7.0: {} + + lodash.uniqwith@4.5.0: {} + + lodash@4.17.21: {} + + loglevel-plugin-prefix@0.8.4: {} + + loglevel@1.9.2: {} + + lucide-react@0.562.0(react@19.2.3): + dependencies: + react: 19.2.3 + + lunr@2.3.9: {} + + markdown-it@14.1.0: + dependencies: + argparse: 2.0.1 + entities: 4.5.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.1.0 + + math-intrinsics@1.1.0: {} + + mdurl@2.0.0: {} + + merge-stream@2.0.0: {} + + merge2@1.4.1: {} + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + mimic-fn@2.1.0: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.12 + + minimatch@6.2.0: + dependencies: + brace-expansion: 2.0.2 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.2 + + mobx-react-lite@4.1.1(mobx@6.15.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3): + dependencies: + mobx: 6.15.0 + react: 19.2.3 + use-sync-external-store: 1.6.0(react@19.2.3) + optionalDependencies: + react-dom: 19.2.3(react@19.2.3) + + mobx@6.15.0: {} + + ms@2.1.3: {} + + next-themes@0.4.6(react-dom@19.2.3(react@19.2.3))(react@19.2.3): + dependencies: + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + + nimma@0.2.3: + dependencies: + '@jsep-plugin/regex': 1.0.4(jsep@1.4.0) + '@jsep-plugin/ternary': 1.1.4(jsep@1.4.0) + astring: 1.9.0 + jsep: 1.4.0 + optionalDependencies: + jsonpath-plus: 10.3.0 + lodash.topath: 4.5.2 + + node-fetch-h2@2.3.0: + dependencies: + http2-client: 1.3.5 + + node-fetch@2.7.0: + dependencies: + whatwg-url: 5.0.0 + + node-readfiles@0.2.0: + dependencies: + es6-promise: 3.3.1 + + npm-run-path@4.0.1: + dependencies: + path-key: 3.1.1 + + oas-kit-common@1.0.8: + dependencies: + fast-safe-stringify: 2.1.1 + + oas-linter@3.2.2: + dependencies: + '@exodus/schemasafe': 1.3.0 + should: 13.2.3 + yaml: 1.10.2 + + oas-resolver@2.5.6: + dependencies: + node-fetch-h2: 2.3.0 + oas-kit-common: 1.0.8 + reftools: 1.1.9 + yaml: 1.10.2 + yargs: 17.7.2 + + oas-schema-walker@1.1.5: {} + + oas-validator@5.0.8: + dependencies: + call-me-maybe: 1.0.2 + oas-kit-common: 1.0.8 + oas-linter: 3.2.2 + oas-resolver: 2.5.6 + oas-schema-walker: 1.1.5 + reftools: 1.1.9 + should: 13.2.3 + yaml: 1.10.2 + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + + openapi-types@12.1.3: {} + + openapi3-ts@4.5.0: + dependencies: + yaml: 2.8.2 + + orval@7.17.2(openapi-types@12.1.3)(typescript@5.9.3): + dependencies: + '@apidevtools/swagger-parser': 12.1.0(openapi-types@12.1.3) + '@commander-js/extra-typings': 14.0.0(commander@14.0.2) + '@orval/angular': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/axios': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/core': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/fetch': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/hono': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/mcp': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/mock': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/query': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/swr': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + '@orval/zod': 7.17.2(openapi-types@12.1.3)(typescript@5.9.3) + chalk: 4.1.2 + chokidar: 4.0.3 + commander: 14.0.2 + enquirer: 2.4.1 + execa: 5.1.1 + find-up: 5.0.0 + fs-extra: 11.3.3 + jiti: 2.6.1 + js-yaml: 4.1.1 + lodash.uniq: 4.5.0 + openapi3-ts: 4.5.0 + string-argv: 0.3.2 + tsconfck: 2.1.2(typescript@5.9.3) + typedoc: 0.28.15(typescript@5.9.3) + typedoc-plugin-coverage: 4.0.2(typedoc@0.28.15(typescript@5.9.3)) + typedoc-plugin-markdown: 4.9.0(typedoc@0.28.15(typescript@5.9.3)) + transitivePeerDependencies: + - encoding + - openapi-types + - supports-color + - typescript + + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.27.1 + error-ex: 1.3.4 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + path-type@4.0.0: {} + + perfect-freehand@1.2.2: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + pony-cause@1.1.1: {} + + possible-typed-array-names@1.1.0: {} + + prettier@3.7.4: {} + + proxy-compare@3.0.1: {} + + proxy-from-env@1.1.0: {} + + proxy-memoize@3.0.1: + dependencies: + proxy-compare: 3.0.1 + + punycode.js@2.3.1: {} + + queue-microtask@1.2.3: {} + + react-dom@19.2.3(react@19.2.3): + dependencies: + react: 19.2.3 + scheduler: 0.27.0 + + react-hook-form@7.70.0(react@19.2.3): + dependencies: + react: 19.2.3 + + react-icons@5.5.0(react@19.2.3): + dependencies: + react: 19.2.3 + + react-is@16.13.1: {} + + react-refresh@0.18.0: {} + + react-router@7.12.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3): + dependencies: + cookie: 1.1.1 + react: 19.2.3 + set-cookie-parser: 2.7.2 + optionalDependencies: + react-dom: 19.2.3(react@19.2.3) + + react@19.2.3: {} + + readdirp@4.1.2: {} + + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + + reftools@1.1.9: {} + + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + + require-directory@2.1.1: {} + + require-from-string@2.0.2: {} + + resolve-from@4.0.0: {} + + resolve@1.22.11: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.1.0: {} + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + + safe-stable-stringify@1.1.1: {} + + scheduler@0.27.0: {} + + set-cookie-parser@2.7.2: {} + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + should-equal@2.0.0: + dependencies: + should-type: 1.4.0 + + should-format@3.0.3: + dependencies: + should-type: 1.4.0 + should-type-adaptors: 1.1.0 + + should-type-adaptors@1.1.0: + dependencies: + should-type: 1.4.0 + should-util: 1.0.1 + + should-type@1.4.0: {} + + should-util@1.0.1: {} + + should@13.2.3: + dependencies: + should-equal: 2.0.0 + should-format: 3.0.3 + should-type: 1.4.0 + should-type-adaptors: 1.1.0 + should-util: 1.0.1 + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + signal-exit@3.0.7: {} + + simple-eval@1.0.1: + dependencies: + jsep: 1.4.0 + + slash@3.0.0: {} + + source-map@0.5.7: {} + + stackframe@1.3.4: {} + + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + + string-argv@0.3.2: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-final-newline@2.0.0: {} + + stylis@4.2.0: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + swagger2openapi@7.0.8: + dependencies: + call-me-maybe: 1.0.2 + node-fetch: 2.7.0 + node-fetch-h2: 2.3.0 + node-readfiles: 0.2.0 + oas-kit-common: 1.0.8 + oas-resolver: 2.5.6 + oas-schema-walker: 1.1.5 + oas-validator: 5.0.8 + reftools: 1.1.9 + yaml: 1.10.2 + yargs: 17.7.2 + transitivePeerDependencies: + - encoding + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + tr46@0.0.3: {} + + tsconfck@2.1.2(typescript@5.9.3): + optionalDependencies: + typescript: 5.9.3 + + tslib@1.14.1: {} + + tslib@2.8.1: {} + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + + typedoc-plugin-coverage@4.0.2(typedoc@0.28.15(typescript@5.9.3)): + dependencies: + typedoc: 0.28.15(typescript@5.9.3) + + typedoc-plugin-markdown@4.9.0(typedoc@0.28.15(typescript@5.9.3)): + dependencies: + typedoc: 0.28.15(typescript@5.9.3) + + typedoc@0.28.15(typescript@5.9.3): + dependencies: + '@gerrit0/mini-shiki': 3.21.0 + lunr: 2.3.9 + markdown-it: 14.1.0 + minimatch: 9.0.5 + typescript: 5.9.3 + yaml: 2.8.2 + + typescript@5.9.3: {} + + uc.micro@2.1.0: {} + + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + + undici-types@7.16.0: {} + + universalify@2.0.1: {} + + uqr@0.1.2: {} + + urijs@1.19.11: {} + + use-sync-external-store@1.6.0(react@19.2.3): + dependencies: + react: 19.2.3 + + utility-types@3.11.0: {} + + validator@13.15.26: {} + + webidl-conversions@3.0.1: {} + + whatwg-url@5.0.0: + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.19 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-typed-array@1.1.19: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + y18n@5.0.8: {} + + yaml@1.10.2: {} + + yaml@2.8.2: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yocto-queue@0.1.0: {} diff --git a/domains-frontend/public/favicon.png b/domains-frontend/public/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..af06119f6251e26563d22f1a7a312913bd48f0c8 GIT binary patch literal 6290 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 { + return {router()}; +}; + +export default App; diff --git a/domains-frontend/src/api/Constants.ts b/domains-frontend/src/api/Constants.ts new file mode 100644 index 0000000..cc89095 --- /dev/null +++ b/domains-frontend/src/api/Constants.ts @@ -0,0 +1,4 @@ +export const AUTH_URL = '/api/auth'; +export const DOMAIN_ORDER_URL = '/api/domains'; +export const EXDNS_URL = '/exdns'; +export const EXDNS_TOKEN = 'changeme'; \ No newline at end of file diff --git a/domains-frontend/src/api/apiClient.ts b/domains-frontend/src/api/apiClient.ts new file mode 100644 index 0000000..f30687f --- /dev/null +++ b/domains-frontend/src/api/apiClient.ts @@ -0,0 +1,109 @@ +import Axios, { type AxiosRequestConfig } from 'axios'; +import { getAccessToken, getRefreshToken, setTokens } from '~/utils/authTokens'; +import { AUTH_URL } from './Constants'; + +const AUTH_HEADER = 'Authorization'; + +export const AXIOS_INSTANCE = Axios.create({ + baseURL: AUTH_URL, +}); + +const refreshClient = Axios.create({ + baseURL: AUTH_URL, +}); + +const isRefreshRequest = (url?: string) => url?.includes('/auth/refresh'); + +const applyAccessToken = (config: AxiosRequestConfig, accessToken?: string) => { + if (!accessToken) return; + if (isRefreshRequest(config.url)) return; + + const headers = config.headers ?? {}; + if ( + typeof (headers as { set?: (k: string, v: string) => void }).set === + 'function' + ) { + (headers as { set: (k: string, v: string) => void }).set( + AUTH_HEADER, + `Bearer ${accessToken}` + ); + } else { + (headers as Record)[AUTH_HEADER] = `Bearer ${accessToken}`; + } + config.headers = headers; +}; + +const refreshAccessToken = async () => { + const refreshToken = getRefreshToken(); + if (!refreshToken) { + return null; + } + + const { data } = await refreshClient.post('/auth/refresh', { + refreshToken, + }); + + const accessToken = data?.data?.accessToken; + const nextRefreshToken = data?.data?.refreshToken ?? refreshToken; + + if (!accessToken) { + return null; + } + + setTokens({ access: accessToken, refresh: nextRefreshToken }); + + return accessToken; +}; + +AXIOS_INSTANCE.interceptors.request.use((config) => { + applyAccessToken(config, getAccessToken()); + return config; +}); + +let refreshPromise: Promise | null = null; + +AXIOS_INSTANCE.interceptors.response.use( + (response) => response, + async (error) => { + const status = error?.response?.status; + const originalConfig = error?.config as + | (AxiosRequestConfig & { _retry?: boolean }) + | undefined; + + if (!originalConfig || status !== 403 || originalConfig._retry) { + return Promise.reject(error); + } + + if (isRefreshRequest(originalConfig.url)) { + return Promise.reject(error); + } + + originalConfig._retry = true; + + if (!refreshPromise) { + refreshPromise = refreshAccessToken().finally(() => { + refreshPromise = null; + }); + } + + const accessToken = await refreshPromise; + if (!accessToken) { + return Promise.reject(error); + } + + applyAccessToken(originalConfig, accessToken); + return AXIOS_INSTANCE(originalConfig); + } +); + +export const customInstance = ( + config: AxiosRequestConfig, + options?: AxiosRequestConfig +): Promise => { + const promise = AXIOS_INSTANCE({ + ...config, + ...options, + }).then(({ data }) => data); + + return promise; +}; diff --git a/domains-frontend/src/api/apiClientDomains.ts b/domains-frontend/src/api/apiClientDomains.ts new file mode 100644 index 0000000..b8df4d1 --- /dev/null +++ b/domains-frontend/src/api/apiClientDomains.ts @@ -0,0 +1,109 @@ +import Axios, { type AxiosRequestConfig } from 'axios'; +import { getAccessToken, getRefreshToken, setTokens } from '~/utils/authTokens'; +import { DOMAIN_ORDER_URL } from './Constants'; + +const AUTH_HEADER = 'Authorization'; + +export const AXIOS_INSTANCE = Axios.create({ + baseURL: DOMAIN_ORDER_URL, +}); + +const refreshClient = Axios.create({ + baseURL: DOMAIN_ORDER_URL, +}); + +const isRefreshRequest = (url?: string) => url?.includes('/auth/refresh'); + +const applyAccessToken = (config: AxiosRequestConfig, accessToken?: string) => { + if (!accessToken) return; + if (isRefreshRequest(config.url)) return; + + const headers = config.headers ?? {}; + if ( + typeof (headers as { set?: (k: string, v: string) => void }).set === + 'function' + ) { + (headers as { set: (k: string, v: string) => void }).set( + AUTH_HEADER, + `Bearer ${accessToken}` + ); + } else { + (headers as Record)[AUTH_HEADER] = `Bearer ${accessToken}`; + } + config.headers = headers; +}; + +const refreshAccessToken = async () => { + const refreshToken = getRefreshToken(); + if (!refreshToken) { + return null; + } + + const { data } = await refreshClient.post('/auth/refresh', { + refreshToken, + }); + + const accessToken = data?.data?.accessToken; + const nextRefreshToken = data?.data?.refreshToken ?? refreshToken; + + if (!accessToken) { + return null; + } + + setTokens({ access: accessToken, refresh: nextRefreshToken }); + + return accessToken; +}; + +AXIOS_INSTANCE.interceptors.request.use((config) => { + applyAccessToken(config, getAccessToken()); + return config; +}); + +let refreshPromise: Promise | null = null; + +AXIOS_INSTANCE.interceptors.response.use( + (response) => response, + async (error) => { + const status = error?.response?.status; + const originalConfig = error?.config as + | (AxiosRequestConfig & { _retry?: boolean }) + | undefined; + + if (!originalConfig || status !== 403 || originalConfig._retry) { + return Promise.reject(error); + } + + if (isRefreshRequest(originalConfig.url)) { + return Promise.reject(error); + } + + originalConfig._retry = true; + + if (!refreshPromise) { + refreshPromise = refreshAccessToken().finally(() => { + refreshPromise = null; + }); + } + + const accessToken = await refreshPromise; + if (!accessToken) { + return Promise.reject(error); + } + + applyAccessToken(originalConfig, accessToken); + return AXIOS_INSTANCE(originalConfig); + } +); + +export const customInstance = ( + config: AxiosRequestConfig, + options?: AxiosRequestConfig +): Promise => { + const promise = AXIOS_INSTANCE({ + ...config, + ...options, + }).then(({ data }) => data); + + return promise; +}; diff --git a/domains-frontend/src/api/apiClientExdns.ts b/domains-frontend/src/api/apiClientExdns.ts new file mode 100644 index 0000000..5eac4dc --- /dev/null +++ b/domains-frontend/src/api/apiClientExdns.ts @@ -0,0 +1,43 @@ +import Axios, { type AxiosRequestConfig } from 'axios'; +import { EXDNS_TOKEN, EXDNS_URL } from './Constants'; + +const AUTH_HEADER = 'authentication'; + +export const AXIOS_INSTANCE = Axios.create({ + baseURL: EXDNS_URL, +}); + +const applyToken = (config: AxiosRequestConfig) => { + if (!EXDNS_TOKEN) return; + + const headers = config.headers ?? {}; + if ( + typeof (headers as { set?: (k: string, v: string) => void }).set === + 'function' + ) { + (headers as { set: (k: string, v: string) => void }).set( + AUTH_HEADER, + `Bearer ${EXDNS_TOKEN}` + ); + } else { + (headers as Record)[AUTH_HEADER] = `Bearer ${EXDNS_TOKEN}`; + } + config.headers = headers; +}; + +AXIOS_INSTANCE.interceptors.request.use((config) => { + applyToken(config); + return config; +}); + +export const customInstance = ( + config: AxiosRequestConfig, + options?: AxiosRequestConfig +): Promise => { + const promise = AXIOS_INSTANCE({ + ...config, + ...options, + }).then(({ data }) => data); + + return promise; +}; diff --git a/domains-frontend/src/api/models/DomainQuery.ts b/domains-frontend/src/api/models/DomainQuery.ts new file mode 100644 index 0000000..9cd2f28 --- /dev/null +++ b/domains-frontend/src/api/models/DomainQuery.ts @@ -0,0 +1,5 @@ +export interface DomainQuery { + fqdn: string; + price: number; + free: boolean; +} diff --git a/domains-frontend/src/api/models/auth/apiError.ts b/domains-frontend/src/api/models/auth/apiError.ts new file mode 100644 index 0000000..7e7c317 --- /dev/null +++ b/domains-frontend/src/api/models/auth/apiError.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { ApiErrorDetails } from './apiErrorDetails'; + +export interface ApiError { + code?: string; + message?: string; + details?: ApiErrorDetails; +} diff --git a/domains-frontend/src/api/models/auth/apiErrorDetails.ts b/domains-frontend/src/api/models/auth/apiErrorDetails.ts new file mode 100644 index 0000000..2cf3c49 --- /dev/null +++ b/domains-frontend/src/api/models/auth/apiErrorDetails.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type ApiErrorDetails = { [key: string]: { [key: string]: unknown } }; diff --git a/domains-frontend/src/api/models/auth/apiResponseBoolean.ts b/domains-frontend/src/api/models/auth/apiResponseBoolean.ts new file mode 100644 index 0000000..7a7542d --- /dev/null +++ b/domains-frontend/src/api/models/auth/apiResponseBoolean.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { ApiError } from './apiError'; + +export interface ApiResponseBoolean { + success?: boolean; + data?: boolean; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/auth/apiResponseLoginResponse.ts b/domains-frontend/src/api/models/auth/apiResponseLoginResponse.ts new file mode 100644 index 0000000..3cfed91 --- /dev/null +++ b/domains-frontend/src/api/models/auth/apiResponseLoginResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { LoginResponse } from './loginResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseLoginResponse { + success?: boolean; + data?: LoginResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/auth/apiResponseString.ts b/domains-frontend/src/api/models/auth/apiResponseString.ts new file mode 100644 index 0000000..5a47115 --- /dev/null +++ b/domains-frontend/src/api/models/auth/apiResponseString.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { ApiError } from './apiError'; + +export interface ApiResponseString { + success?: boolean; + data?: string; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/auth/apiResponseTwoFactorSetupResponse.ts b/domains-frontend/src/api/models/auth/apiResponseTwoFactorSetupResponse.ts new file mode 100644 index 0000000..647c7bf --- /dev/null +++ b/domains-frontend/src/api/models/auth/apiResponseTwoFactorSetupResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { TwoFactorSetupResponse } from './twoFactorSetupResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseTwoFactorSetupResponse { + success?: boolean; + data?: TwoFactorSetupResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/auth/apiResponseUserResponse.ts b/domains-frontend/src/api/models/auth/apiResponseUserResponse.ts new file mode 100644 index 0000000..54a4b65 --- /dev/null +++ b/domains-frontend/src/api/models/auth/apiResponseUserResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { UserResponse } from './userResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseUserResponse { + success?: boolean; + data?: UserResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/auth/enable2FAWithSecretRequest.ts b/domains-frontend/src/api/models/auth/enable2FAWithSecretRequest.ts new file mode 100644 index 0000000..2bc24aa --- /dev/null +++ b/domains-frontend/src/api/models/auth/enable2FAWithSecretRequest.ts @@ -0,0 +1,12 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface Enable2FAWithSecretRequest { + secret: string; + /** @pattern ^\d{6}$ */ + code: string; +} diff --git a/domains-frontend/src/api/models/auth/getAuthVerifyEmailParams.ts b/domains-frontend/src/api/models/auth/getAuthVerifyEmailParams.ts new file mode 100644 index 0000000..31ae68d --- /dev/null +++ b/domains-frontend/src/api/models/auth/getAuthVerifyEmailParams.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Auth Service API + * OpenAPI spec version: 1.0.0 + */ + +export type GetAuthVerifyEmailParams = { + token: string; +}; diff --git a/domains-frontend/src/api/models/auth/index.ts b/domains-frontend/src/api/models/auth/index.ts new file mode 100644 index 0000000..d2db66a --- /dev/null +++ b/domains-frontend/src/api/models/auth/index.ts @@ -0,0 +1,25 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export * from './apiError'; +export * from './apiErrorDetails'; +export * from './apiResponseBoolean'; +export * from './apiResponseLoginResponse'; +export * from './apiResponseString'; +export * from './apiResponseTwoFactorSetupResponse'; +export * from './apiResponseUserResponse'; +export * from './enable2FAWithSecretRequest'; +export * from './getAuthVerifyEmailParams'; +export * from './loginRequest'; +export * from './loginResponse'; +export * from './postAuthResendVerificationParams'; +export * from './refreshTokenRequest'; +export * from './registerRequest'; +export * from './resendVerificationEmailParams'; +export * from './twoFactorSetupResponse'; +export * from './userResponse'; +export * from './verifyEmailParams'; diff --git a/domains-frontend/src/api/models/auth/loginRequest.ts b/domains-frontend/src/api/models/auth/loginRequest.ts new file mode 100644 index 0000000..76a7c2c --- /dev/null +++ b/domains-frontend/src/api/models/auth/loginRequest.ts @@ -0,0 +1,12 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface LoginRequest { + email: string; + password: string; + totpCode?: string; +} diff --git a/domains-frontend/src/api/models/auth/loginResponse.ts b/domains-frontend/src/api/models/auth/loginResponse.ts new file mode 100644 index 0000000..903e99b --- /dev/null +++ b/domains-frontend/src/api/models/auth/loginResponse.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface LoginResponse { + userId?: string; + accessToken?: string; + refreshToken?: string; + email?: string; +} diff --git a/domains-frontend/src/api/models/auth/postAuthResendVerificationParams.ts b/domains-frontend/src/api/models/auth/postAuthResendVerificationParams.ts new file mode 100644 index 0000000..e442f7d --- /dev/null +++ b/domains-frontend/src/api/models/auth/postAuthResendVerificationParams.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Auth Service API + * OpenAPI spec version: 1.0.0 + */ + +export type PostAuthResendVerificationParams = { + email: string; +}; diff --git a/domains-frontend/src/api/models/auth/refreshTokenRequest.ts b/domains-frontend/src/api/models/auth/refreshTokenRequest.ts new file mode 100644 index 0000000..1998bb8 --- /dev/null +++ b/domains-frontend/src/api/models/auth/refreshTokenRequest.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface RefreshTokenRequest { + refreshToken: string; +} diff --git a/domains-frontend/src/api/models/auth/registerRequest.ts b/domains-frontend/src/api/models/auth/registerRequest.ts new file mode 100644 index 0000000..1b06c09 --- /dev/null +++ b/domains-frontend/src/api/models/auth/registerRequest.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface RegisterRequest { + email: string; + /** + * @minLength 8 + * @maxLength 2147483647 + */ + password: string; +} diff --git a/domains-frontend/src/api/models/auth/resendVerificationEmailParams.ts b/domains-frontend/src/api/models/auth/resendVerificationEmailParams.ts new file mode 100644 index 0000000..e4d93cb --- /dev/null +++ b/domains-frontend/src/api/models/auth/resendVerificationEmailParams.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type ResendVerificationEmailParams = { + email: string; +}; diff --git a/domains-frontend/src/api/models/auth/twoFactorSetupResponse.ts b/domains-frontend/src/api/models/auth/twoFactorSetupResponse.ts new file mode 100644 index 0000000..ce1b390 --- /dev/null +++ b/domains-frontend/src/api/models/auth/twoFactorSetupResponse.ts @@ -0,0 +1,12 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface TwoFactorSetupResponse { + secret?: string; + qrCodeUrl?: string; + manualEntryKey?: string; +} diff --git a/domains-frontend/src/api/models/auth/userResponse.ts b/domains-frontend/src/api/models/auth/userResponse.ts new file mode 100644 index 0000000..c1aa932 --- /dev/null +++ b/domains-frontend/src/api/models/auth/userResponse.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface UserResponse { + id?: string; + email?: string; + createdAt?: string; + updatedAt?: string; +} diff --git a/domains-frontend/src/api/models/auth/verifyEmailParams.ts b/domains-frontend/src/api/models/auth/verifyEmailParams.ts new file mode 100644 index 0000000..c874c9a --- /dev/null +++ b/domains-frontend/src/api/models/auth/verifyEmailParams.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type VerifyEmailParams = { + token: string; +}; diff --git a/domains-frontend/src/api/models/domain-order/addCartItemRequest.ts b/domains-frontend/src/api/models/domain-order/addCartItemRequest.ts new file mode 100644 index 0000000..1a7b5b1 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/addCartItemRequest.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { AddCartItemRequestAction } from './addCartItemRequestAction'; +import type { AddCartItemRequestTerm } from './addCartItemRequestTerm'; + +export interface AddCartItemRequest { + action: AddCartItemRequestAction; + term: AddCartItemRequestTerm; + fqdn: string; + price: number; +} diff --git a/domains-frontend/src/api/models/domain-order/addCartItemRequestAction.ts b/domains-frontend/src/api/models/domain-order/addCartItemRequestAction.ts new file mode 100644 index 0000000..d927fd4 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/addCartItemRequestAction.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type AddCartItemRequestAction = + (typeof AddCartItemRequestAction)[keyof typeof AddCartItemRequestAction]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const AddCartItemRequestAction = { + register: 'register', + renew: 'renew', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/addCartItemRequestTerm.ts b/domains-frontend/src/api/models/domain-order/addCartItemRequestTerm.ts new file mode 100644 index 0000000..fee623b --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/addCartItemRequestTerm.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type AddCartItemRequestTerm = + (typeof AddCartItemRequestTerm)[keyof typeof AddCartItemRequestTerm]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const AddCartItemRequestTerm = { + monthly: 'monthly', + yearly: 'yearly', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/apiError.ts b/domains-frontend/src/api/models/domain-order/apiError.ts new file mode 100644 index 0000000..7e7c317 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiError.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { ApiErrorDetails } from './apiErrorDetails'; + +export interface ApiError { + code?: string; + message?: string; + details?: ApiErrorDetails; +} diff --git a/domains-frontend/src/api/models/domain-order/apiErrorDetails.ts b/domains-frontend/src/api/models/domain-order/apiErrorDetails.ts new file mode 100644 index 0000000..2cf3c49 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiErrorDetails.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type ApiErrorDetails = { [key: string]: { [key: string]: unknown } }; diff --git a/domains-frontend/src/api/models/domain-order/apiResponseCartItemResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseCartItemResponse.ts new file mode 100644 index 0000000..607d999 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseCartItemResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { CartItemResponse } from './cartItemResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseCartItemResponse { + success?: boolean; + data?: CartItemResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseCartResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseCartResponse.ts new file mode 100644 index 0000000..50d9df7 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseCartResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { CartResponse } from './cartResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseCartResponse { + success?: boolean; + data?: CartResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseDnsRecordResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseDnsRecordResponse.ts new file mode 100644 index 0000000..88b2cd6 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseDnsRecordResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { DnsRecordResponse } from './dnsRecordResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseDnsRecordResponse { + success?: boolean; + data?: DnsRecordResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseDomainExpiryAlertResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseDomainExpiryAlertResponse.ts new file mode 100644 index 0000000..1bfd1cf --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseDomainExpiryAlertResponse.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { DomainExpiryAlertResponse } from './domainExpiryAlertResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseDomainExpiryAlertResponse { + success?: boolean; + data?: DomainExpiryAlertResponse; + /** @nullable */ + message?: string | null; + /** @nullable */ + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseDomainResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseDomainResponse.ts new file mode 100644 index 0000000..253799c --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseDomainResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { DomainResponse } from './domainResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseDomainResponse { + success?: boolean; + data?: DomainResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseListDnsRecordResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseListDnsRecordResponse.ts new file mode 100644 index 0000000..bff9172 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseListDnsRecordResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { DnsRecordResponse } from './dnsRecordResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseListDnsRecordResponse { + success?: boolean; + data?: DnsRecordResponse[]; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseListDomainSearchResult.ts b/domains-frontend/src/api/models/domain-order/apiResponseListDomainSearchResult.ts new file mode 100644 index 0000000..00946da --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseListDomainSearchResult.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { DomainSearchResult } from './domainSearchResult'; +import type { ApiError } from './apiError'; + +export interface ApiResponseListDomainSearchResult { + success?: boolean; + data?: DomainSearchResult[]; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseMonitoringDashboardResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseMonitoringDashboardResponse.ts new file mode 100644 index 0000000..f48c2b3 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseMonitoringDashboardResponse.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { MonitoringDashboardResponse } from './monitoringDashboardResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseMonitoringDashboardResponse { + success?: boolean; + data?: MonitoringDashboardResponse; + /** @nullable */ + message?: string | null; + /** @nullable */ + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseNotificationPreferencesResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseNotificationPreferencesResponse.ts new file mode 100644 index 0000000..a4fc5b2 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseNotificationPreferencesResponse.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { NotificationPreferencesResponse } from './notificationPreferencesResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseNotificationPreferencesResponse { + success?: boolean; + data?: NotificationPreferencesResponse; + /** @nullable */ + message?: string | null; + /** @nullable */ + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseNsDelegationResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseNsDelegationResponse.ts new file mode 100644 index 0000000..15fe093 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseNsDelegationResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { NsDelegationResponse } from './nsDelegationResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseNsDelegationResponse { + success?: boolean; + data?: NsDelegationResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseOrderResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponseOrderResponse.ts new file mode 100644 index 0000000..a02c50b --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseOrderResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { OrderResponse } from './orderResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponseOrderResponse { + success?: boolean; + data?: OrderResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponsePageDomainExpiryMonitoringResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponsePageDomainExpiryMonitoringResponse.ts new file mode 100644 index 0000000..e1f40ae --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponsePageDomainExpiryMonitoringResponse.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { PageDomainExpiryMonitoringResponse } from './pageDomainExpiryMonitoringResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponsePageDomainExpiryMonitoringResponse { + success?: boolean; + data?: PageDomainExpiryMonitoringResponse; + /** @nullable */ + message?: string | null; + /** @nullable */ + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponsePageDomainResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponsePageDomainResponse.ts new file mode 100644 index 0000000..92f5534 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponsePageDomainResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { PageDomainResponse } from './pageDomainResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponsePageDomainResponse { + success?: boolean; + data?: PageDomainResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponsePageOrderResponse.ts b/domains-frontend/src/api/models/domain-order/apiResponsePageOrderResponse.ts new file mode 100644 index 0000000..e80dba5 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponsePageOrderResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { PageOrderResponse } from './pageOrderResponse'; +import type { ApiError } from './apiError'; + +export interface ApiResponsePageOrderResponse { + success?: boolean; + data?: PageOrderResponse; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponsePageZone.ts b/domains-frontend/src/api/models/domain-order/apiResponsePageZone.ts new file mode 100644 index 0000000..bbec91c --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponsePageZone.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { PageZone } from './pageZone'; +import type { ApiError } from './apiError'; + +export interface ApiResponsePageZone { + success?: boolean; + data?: PageZone; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseString.ts b/domains-frontend/src/api/models/domain-order/apiResponseString.ts new file mode 100644 index 0000000..5a47115 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseString.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { ApiError } from './apiError'; + +export interface ApiResponseString { + success?: boolean; + data?: string; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseVoid.ts b/domains-frontend/src/api/models/domain-order/apiResponseVoid.ts new file mode 100644 index 0000000..8c8bf0e --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseVoid.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { ApiResponseVoidData } from './apiResponseVoidData'; +import type { ApiError } from './apiError'; + +export interface ApiResponseVoid { + success?: boolean; + data?: ApiResponseVoidData; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/apiResponseVoidData.ts b/domains-frontend/src/api/models/domain-order/apiResponseVoidData.ts new file mode 100644 index 0000000..2ddf191 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseVoidData.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type ApiResponseVoidData = { [key: string]: unknown }; diff --git a/domains-frontend/src/api/models/domain-order/apiResponseZone.ts b/domains-frontend/src/api/models/domain-order/apiResponseZone.ts new file mode 100644 index 0000000..d4500ed --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/apiResponseZone.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { Zone } from './zone'; +import type { ApiError } from './apiError'; + +export interface ApiResponseZone { + success?: boolean; + data?: Zone; + message?: string; + error?: ApiError; +} diff --git a/domains-frontend/src/api/models/domain-order/cartItemResponse.ts b/domains-frontend/src/api/models/domain-order/cartItemResponse.ts new file mode 100644 index 0000000..0807ec0 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/cartItemResponse.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { CartItemResponseAction } from './cartItemResponseAction'; +import type { CartItemResponseTerm } from './cartItemResponseTerm'; + +export interface CartItemResponse { + id?: string; + action?: CartItemResponseAction; + term?: CartItemResponseTerm; + fqdn?: string; + price?: number; + createdAt?: string; + updatedAt?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/cartItemResponseAction.ts b/domains-frontend/src/api/models/domain-order/cartItemResponseAction.ts new file mode 100644 index 0000000..d1497c3 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/cartItemResponseAction.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type CartItemResponseAction = + (typeof CartItemResponseAction)[keyof typeof CartItemResponseAction]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const CartItemResponseAction = { + register: 'register', + renew: 'renew', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/cartItemResponseTerm.ts b/domains-frontend/src/api/models/domain-order/cartItemResponseTerm.ts new file mode 100644 index 0000000..84a16cc --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/cartItemResponseTerm.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type CartItemResponseTerm = + (typeof CartItemResponseTerm)[keyof typeof CartItemResponseTerm]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const CartItemResponseTerm = { + monthly: 'monthly', + yearly: 'yearly', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/cartResponse.ts b/domains-frontend/src/api/models/domain-order/cartResponse.ts new file mode 100644 index 0000000..6b63ac2 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/cartResponse.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { CartItemResponse } from './cartItemResponse'; + +export interface CartResponse { + id?: string; + userId?: string; + items?: CartItemResponse[]; + createdAt?: string; + updatedAt?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/createARecordRequest.ts b/domains-frontend/src/api/models/domain-order/createARecordRequest.ts new file mode 100644 index 0000000..76fa31b --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createARecordRequest.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateARecordRequest { + domainId: string; + name: string; + /** @pattern ^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$ */ + ipv4Address: string; + ttl: number; +} diff --git a/domains-frontend/src/api/models/domain-order/createAaaaRecordRequest.ts b/domains-frontend/src/api/models/domain-order/createAaaaRecordRequest.ts new file mode 100644 index 0000000..ae0ac9a --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createAaaaRecordRequest.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateAaaaRecordRequest { + domainId: string; + name: string; + /** @pattern ^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$|^::1$|^::$ */ + ipv6Address: string; + ttl: number; +} diff --git a/domains-frontend/src/api/models/domain-order/createCaaRecordRequest.ts b/domains-frontend/src/api/models/domain-order/createCaaRecordRequest.ts new file mode 100644 index 0000000..d6ad4b5 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createCaaRecordRequest.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateCaaRecordRequest { + domainId: string; + name: string; + /** @pattern ^[0-9]$ */ + flags: string; + /** @pattern ^(issue|issuewild|iodef)$ */ + tag: string; + value: string; + ttl: number; +} diff --git a/domains-frontend/src/api/models/domain-order/createCnameRecordRequest.ts b/domains-frontend/src/api/models/domain-order/createCnameRecordRequest.ts new file mode 100644 index 0000000..7ff93ed --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createCnameRecordRequest.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateCnameRecordRequest { + domainId: string; + name: string; + canonicalName: string; + ttl: number; +} diff --git a/domains-frontend/src/api/models/domain-order/createDomainRequest.ts b/domains-frontend/src/api/models/domain-order/createDomainRequest.ts new file mode 100644 index 0000000..4324565 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createDomainRequest.ts @@ -0,0 +1,12 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateDomainRequest { + fqdn: string; + zoneId: string; + expiresAt: string; +} diff --git a/domains-frontend/src/api/models/domain-order/createMxRecordRequest.ts b/domains-frontend/src/api/models/domain-order/createMxRecordRequest.ts new file mode 100644 index 0000000..09b2ed6 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createMxRecordRequest.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateMxRecordRequest { + domainId: string; + name: string; + mailExchange: string; + /** @minimum 0 */ + priority: number; + ttl: number; +} diff --git a/domains-frontend/src/api/models/domain-order/createOrderRequest.ts b/domains-frontend/src/api/models/domain-order/createOrderRequest.ts new file mode 100644 index 0000000..f42bb47 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createOrderRequest.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateOrderRequest { + cartItemIds: string[]; +} diff --git a/domains-frontend/src/api/models/domain-order/createSrvRecordRequest.ts b/domains-frontend/src/api/models/domain-order/createSrvRecordRequest.ts new file mode 100644 index 0000000..122107a --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createSrvRecordRequest.ts @@ -0,0 +1,25 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateSrvRecordRequest { + domainId: string; + serviceName: string; + target: string; + /** @minimum 0 */ + priority: number; + /** + * @minimum 0 + * @maximum 65535 + */ + weight: number; + /** + * @minimum 1 + * @maximum 65535 + */ + port: number; + ttl: number; +} diff --git a/domains-frontend/src/api/models/domain-order/createTxtRecordRequest.ts b/domains-frontend/src/api/models/domain-order/createTxtRecordRequest.ts new file mode 100644 index 0000000..b2e97a3 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createTxtRecordRequest.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateTxtRecordRequest { + domainId: string; + name: string; + textValue: string; + ttl: number; +} diff --git a/domains-frontend/src/api/models/domain-order/createZoneRequest.ts b/domains-frontend/src/api/models/domain-order/createZoneRequest.ts new file mode 100644 index 0000000..d4d4582 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/createZoneRequest.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface CreateZoneRequest { + name: string; + price: number; +} diff --git a/domains-frontend/src/api/models/domain-order/dnsRecordResponse.ts b/domains-frontend/src/api/models/domain-order/dnsRecordResponse.ts new file mode 100644 index 0000000..6f4a351 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/dnsRecordResponse.ts @@ -0,0 +1,20 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface DnsRecordResponse { + id?: string; + domainId?: string; + recordType?: string; + name?: string; + value?: string; + ttl?: number; + priority?: number; + weight?: number; + port?: number; + flags?: string; + tag?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/domainExpiryAlertResponse.ts b/domains-frontend/src/api/models/domain-order/domainExpiryAlertResponse.ts new file mode 100644 index 0000000..0b8daed --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/domainExpiryAlertResponse.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { ExpiryAlertPreference } from './expiryAlertPreference'; + +export interface DomainExpiryAlertResponse { + alerts?: ExpiryAlertPreference[]; +} diff --git a/domains-frontend/src/api/models/domain-order/domainExpiryMonitoringResponse.ts b/domains-frontend/src/api/models/domain-order/domainExpiryMonitoringResponse.ts new file mode 100644 index 0000000..b94d588 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/domainExpiryMonitoringResponse.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ + +export interface DomainExpiryMonitoringResponse { + domainId?: string; + fqdn?: string; + expiresAt?: string; + /** @nullable */ + activatedAt?: string | null; + daysUntilExpiry?: number; + alertSent?: boolean; + /** @nullable */ + lastAlertSentAt?: string | null; +} diff --git a/domains-frontend/src/api/models/domain-order/domainResponse.ts b/domains-frontend/src/api/models/domain-order/domainResponse.ts new file mode 100644 index 0000000..af24df8 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/domainResponse.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface DomainResponse { + id?: string; + fqdn?: string; + zoneId?: string; + zoneName?: string; + activatedAt?: string; + expiresAt?: string; + createdAt?: string; + updatedAt?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/domainSearchResult.ts b/domains-frontend/src/api/models/domain-order/domainSearchResult.ts new file mode 100644 index 0000000..6f2c398 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/domainSearchResult.ts @@ -0,0 +1,12 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface DomainSearchResult { + fqdn?: string; + free?: boolean; + price?: number; +} diff --git a/domains-frontend/src/api/models/domain-order/expiryAlertPreference.ts b/domains-frontend/src/api/models/domain-order/expiryAlertPreference.ts new file mode 100644 index 0000000..2b36667 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/expiryAlertPreference.ts @@ -0,0 +1,12 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ + +export interface ExpiryAlertPreference { + id?: string; + daysBefore?: number; + enabled?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/getAllDomainsParams.ts b/domains-frontend/src/api/models/domain-order/getAllDomainsParams.ts new file mode 100644 index 0000000..adba2e1 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/getAllDomainsParams.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { Pageable } from './pageable'; + +export type GetAllDomainsParams = { + pageable: Pageable; +}; diff --git a/domains-frontend/src/api/models/domain-order/getAllZonesParams.ts b/domains-frontend/src/api/models/domain-order/getAllZonesParams.ts new file mode 100644 index 0000000..0428fea --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/getAllZonesParams.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { Pageable } from './pageable'; + +export type GetAllZonesParams = { + pageable: Pageable; +}; diff --git a/domains-frontend/src/api/models/domain-order/getDomainsParams.ts b/domains-frontend/src/api/models/domain-order/getDomainsParams.ts new file mode 100644 index 0000000..1d81410 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/getDomainsParams.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Domain Order Service API + * OpenAPI spec version: 1.0.0 + */ + +export type GetDomainsParams = { + /** + * @minimum 0 + */ + page?: number; + /** + * @minimum 1 + */ + size?: number; + sort?: string[]; +}; diff --git a/domains-frontend/src/api/models/domain-order/getDomainsSearchParams.ts b/domains-frontend/src/api/models/domain-order/getDomainsSearchParams.ts new file mode 100644 index 0000000..0d3a1bd --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/getDomainsSearchParams.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Domain Order Service API + * OpenAPI spec version: 1.0.0 + */ + +export type GetDomainsSearchParams = { + query: string; +}; diff --git a/domains-frontend/src/api/models/domain-order/getNotificationsExpiryMonitoringDomainsParams.ts b/domains-frontend/src/api/models/domain-order/getNotificationsExpiryMonitoringDomainsParams.ts new file mode 100644 index 0000000..e055989 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/getNotificationsExpiryMonitoringDomainsParams.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ + +export type GetNotificationsExpiryMonitoringDomainsParams = { + /** + * @minimum 0 + */ + page?: number; + /** + * @minimum 1 + */ + size?: number; + sort?: string[]; +}; diff --git a/domains-frontend/src/api/models/domain-order/getOrdersParams.ts b/domains-frontend/src/api/models/domain-order/getOrdersParams.ts new file mode 100644 index 0000000..754e025 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/getOrdersParams.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { Pageable } from './pageable'; + +export type GetOrdersParams = { + pageable: Pageable; +}; diff --git a/domains-frontend/src/api/models/domain-order/getZonesParams.ts b/domains-frontend/src/api/models/domain-order/getZonesParams.ts new file mode 100644 index 0000000..069e97a --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/getZonesParams.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Domain Order Service API + * OpenAPI spec version: 1.0.0 + */ + +export type GetZonesParams = { + /** + * @minimum 0 + */ + page?: number; + /** + * @minimum 1 + */ + size?: number; + sort?: string[]; +}; diff --git a/domains-frontend/src/api/models/domain-order/index.ts b/domains-frontend/src/api/models/domain-order/index.ts new file mode 100644 index 0000000..9a253b8 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/index.ts @@ -0,0 +1,91 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export * from './addCartItemRequest'; +export * from './addCartItemRequestAction'; +export * from './addCartItemRequestTerm'; +export * from './apiError'; +export * from './apiErrorDetails'; +export * from './apiResponseCartItemResponse'; +export * from './apiResponseCartResponse'; +export * from './apiResponseDnsRecordResponse'; +export * from './apiResponseDomainExpiryAlertResponse'; +export * from './apiResponseDomainResponse'; +export * from './apiResponseListDnsRecordResponse'; +export * from './apiResponseListDomainSearchResult'; +export * from './apiResponseMonitoringDashboardResponse'; +export * from './apiResponseNotificationPreferencesResponse'; +export * from './apiResponseNsDelegationResponse'; +export * from './apiResponseOrderResponse'; +export * from './apiResponsePageDomainExpiryMonitoringResponse'; +export * from './apiResponsePageDomainResponse'; +export * from './apiResponsePageOrderResponse'; +export * from './apiResponsePageZone'; +export * from './apiResponseString'; +export * from './apiResponseVoid'; +export * from './apiResponseVoidData'; +export * from './apiResponseZone'; +export * from './cartItemResponse'; +export * from './cartItemResponseAction'; +export * from './cartItemResponseTerm'; +export * from './cartResponse'; +export * from './createARecordRequest'; +export * from './createAaaaRecordRequest'; +export * from './createCaaRecordRequest'; +export * from './createCnameRecordRequest'; +export * from './createDomainRequest'; +export * from './createMxRecordRequest'; +export * from './createOrderRequest'; +export * from './createSrvRecordRequest'; +export * from './createTxtRecordRequest'; +export * from './createZoneRequest'; +export * from './dnsRecordResponse'; +export * from './domainExpiryAlertResponse'; +export * from './domainExpiryMonitoringResponse'; +export * from './domainResponse'; +export * from './domainSearchResult'; +export * from './expiryAlertPreference'; +export * from './getAllDomainsParams'; +export * from './getAllZonesParams'; +export * from './getDomainsParams'; +export * from './getDomainsSearchParams'; +export * from './getNotificationsExpiryMonitoringDomainsParams'; +export * from './getOrdersParams'; +export * from './getZonesParams'; +export * from './itemAction'; +export * from './itemTerm'; +export * from './monitoringDashboardResponse'; +export * from './notificationPreferencesResponse'; +export * from './notificationType'; +export * from './nsDelegationRequest'; +export * from './nsDelegationResponse'; +export * from './orderItemResponse'; +export * from './orderItemResponseAction'; +export * from './orderItemResponseTerm'; +export * from './orderResponse'; +export * from './orderResponseStatus'; +export * from './orderStatus'; +export * from './pageDomainExpiryMonitoringResponse'; +export * from './pageDomainResponse'; +export * from './pageOrderResponse'; +export * from './pageZone'; +export * from './pageable'; +export * from './pageableObject'; +export * from './putOrdersIdStatusParams'; +export * from './searchDomainsParams'; +export * from './sendNotificationRequest'; +export * from './sendNotificationRequestParameters'; +export * from './sortObject'; +export * from './updateDnsRecordRequest'; +export * from './updateDomainRequest'; +export * from './updateExpiryAlertsRequest'; +export * from './updateNotificationPreferencesRequest'; +export * from './updateOrderStatusParams'; +export * from './updateOrderStatusStatus'; +export * from './updateZoneRequest'; +export * from './userIdHeaderParameter'; +export * from './zone'; diff --git a/domains-frontend/src/api/models/domain-order/itemAction.ts b/domains-frontend/src/api/models/domain-order/itemAction.ts new file mode 100644 index 0000000..0f9d66f --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/itemAction.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Domain Order Service API + * OpenAPI spec version: 1.0.0 + */ + +export type ItemAction = (typeof ItemAction)[keyof typeof ItemAction]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const ItemAction = { + register: 'register', + renew: 'renew', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/itemTerm.ts b/domains-frontend/src/api/models/domain-order/itemTerm.ts new file mode 100644 index 0000000..f35331f --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/itemTerm.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Domain Order Service API + * OpenAPI spec version: 1.0.0 + */ + +export type ItemTerm = (typeof ItemTerm)[keyof typeof ItemTerm]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const ItemTerm = { + monthly: 'monthly', + yearly: 'yearly', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/monitoringDashboardResponse.ts b/domains-frontend/src/api/models/domain-order/monitoringDashboardResponse.ts new file mode 100644 index 0000000..4a79480 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/monitoringDashboardResponse.ts @@ -0,0 +1,16 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ + +export interface MonitoringDashboardResponse { + domainsExpiringIn30Days?: number; + domainsExpiringIn14Days?: number; + domainsExpiringIn7Days?: number; + domainsExpiringIn3Days?: number; + domainsExpiringIn1Day?: number; + expiredDomains?: number; + totalActiveDomains?: number; +} diff --git a/domains-frontend/src/api/models/domain-order/notificationPreferencesResponse.ts b/domains-frontend/src/api/models/domain-order/notificationPreferencesResponse.ts new file mode 100644 index 0000000..034926a --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/notificationPreferencesResponse.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { ExpiryAlertPreference } from './expiryAlertPreference'; + +export interface NotificationPreferencesResponse { + expiryAlerts?: ExpiryAlertPreference[]; + orderNotificationsEnabled?: boolean; + paymentNotificationsEnabled?: boolean; + domainActivationNotificationsEnabled?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/notificationType.ts b/domains-frontend/src/api/models/domain-order/notificationType.ts new file mode 100644 index 0000000..c4b7cb7 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/notificationType.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ + +export type NotificationType = + (typeof NotificationType)[keyof typeof NotificationType]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const NotificationType = { + ORDER_CREATED: 'ORDER_CREATED', + PAYMENT_APPROVED: 'PAYMENT_APPROVED', + DOMAIN_ACTIVATED: 'DOMAIN_ACTIVATED', + DOMAIN_EXPIRING_SOON: 'DOMAIN_EXPIRING_SOON', + DOMAIN_EXPIRED: 'DOMAIN_EXPIRED', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/nsDelegationRequest.ts b/domains-frontend/src/api/models/domain-order/nsDelegationRequest.ts new file mode 100644 index 0000000..fffb910 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/nsDelegationRequest.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface NsDelegationRequest { + /** + * @minItems 1 + * @maxItems 10 + */ + nsServers: string[]; +} diff --git a/domains-frontend/src/api/models/domain-order/nsDelegationResponse.ts b/domains-frontend/src/api/models/domain-order/nsDelegationResponse.ts new file mode 100644 index 0000000..a2b8e3f --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/nsDelegationResponse.ts @@ -0,0 +1,12 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface NsDelegationResponse { + domainId?: string; + isDelegated?: boolean; + nsServers?: string[]; +} diff --git a/domains-frontend/src/api/models/domain-order/orderItemResponse.ts b/domains-frontend/src/api/models/domain-order/orderItemResponse.ts new file mode 100644 index 0000000..e721d77 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/orderItemResponse.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { OrderItemResponseAction } from './orderItemResponseAction'; +import type { OrderItemResponseTerm } from './orderItemResponseTerm'; + +export interface OrderItemResponse { + id?: string; + action?: OrderItemResponseAction; + term?: OrderItemResponseTerm; + domainId?: string; + createdAt?: string; + updatedAt?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/orderItemResponseAction.ts b/domains-frontend/src/api/models/domain-order/orderItemResponseAction.ts new file mode 100644 index 0000000..f47fe41 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/orderItemResponseAction.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type OrderItemResponseAction = + (typeof OrderItemResponseAction)[keyof typeof OrderItemResponseAction]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const OrderItemResponseAction = { + register: 'register', + renew: 'renew', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/orderItemResponseTerm.ts b/domains-frontend/src/api/models/domain-order/orderItemResponseTerm.ts new file mode 100644 index 0000000..42d714c --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/orderItemResponseTerm.ts @@ -0,0 +1,15 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type OrderItemResponseTerm = + (typeof OrderItemResponseTerm)[keyof typeof OrderItemResponseTerm]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const OrderItemResponseTerm = { + monthly: 'monthly', + yearly: 'yearly', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/orderResponse.ts b/domains-frontend/src/api/models/domain-order/orderResponse.ts new file mode 100644 index 0000000..de9a94a --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/orderResponse.ts @@ -0,0 +1,19 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { OrderResponseStatus } from './orderResponseStatus'; +import type { OrderItemResponse } from './orderItemResponse'; + +export interface OrderResponse { + id?: string; + userId?: string; + status?: OrderResponseStatus; + totalAmount?: number; + items?: OrderItemResponse[]; + createdAt?: string; + paidAt?: string; + updatedAt?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/orderResponseStatus.ts b/domains-frontend/src/api/models/domain-order/orderResponseStatus.ts new file mode 100644 index 0000000..91b0578 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/orderResponseStatus.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type OrderResponseStatus = + (typeof OrderResponseStatus)[keyof typeof OrderResponseStatus]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const OrderResponseStatus = { + created: 'created', + pending_payment: 'pending_payment', + paid: 'paid', + cancelled: 'cancelled', + failed: 'failed', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/orderStatus.ts b/domains-frontend/src/api/models/domain-order/orderStatus.ts new file mode 100644 index 0000000..5c0e309 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/orderStatus.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Domain Order Service API + * OpenAPI spec version: 1.0.0 + */ + +export type OrderStatus = (typeof OrderStatus)[keyof typeof OrderStatus]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const OrderStatus = { + created: 'created', + pending_payment: 'pending_payment', + paid: 'paid', + cancelled: 'cancelled', + failed: 'failed', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/pageDomainExpiryMonitoringResponse.ts b/domains-frontend/src/api/models/domain-order/pageDomainExpiryMonitoringResponse.ts new file mode 100644 index 0000000..741e934 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/pageDomainExpiryMonitoringResponse.ts @@ -0,0 +1,19 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { DomainExpiryMonitoringResponse } from './domainExpiryMonitoringResponse'; + +export interface PageDomainExpiryMonitoringResponse { + content?: DomainExpiryMonitoringResponse[]; + totalElements?: number; + totalPages?: number; + size?: number; + number?: number; + first?: boolean; + last?: boolean; + numberOfElements?: number; + empty?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/pageDomainResponse.ts b/domains-frontend/src/api/models/domain-order/pageDomainResponse.ts new file mode 100644 index 0000000..38c8356 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/pageDomainResponse.ts @@ -0,0 +1,23 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { DomainResponse } from './domainResponse'; +import type { SortObject } from './sortObject'; +import type { PageableObject } from './pageableObject'; + +export interface PageDomainResponse { + totalPages?: number; + totalElements?: number; + first?: boolean; + size?: number; + content?: DomainResponse[]; + number?: number; + sort?: SortObject[]; + numberOfElements?: number; + pageable?: PageableObject; + last?: boolean; + empty?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/pageOrderResponse.ts b/domains-frontend/src/api/models/domain-order/pageOrderResponse.ts new file mode 100644 index 0000000..2349179 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/pageOrderResponse.ts @@ -0,0 +1,23 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { OrderResponse } from './orderResponse'; +import type { SortObject } from './sortObject'; +import type { PageableObject } from './pageableObject'; + +export interface PageOrderResponse { + totalPages?: number; + totalElements?: number; + first?: boolean; + size?: number; + content?: OrderResponse[]; + number?: number; + sort?: SortObject[]; + numberOfElements?: number; + pageable?: PageableObject; + last?: boolean; + empty?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/pageZone.ts b/domains-frontend/src/api/models/domain-order/pageZone.ts new file mode 100644 index 0000000..5ae9915 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/pageZone.ts @@ -0,0 +1,23 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { Zone } from './zone'; +import type { SortObject } from './sortObject'; +import type { PageableObject } from './pageableObject'; + +export interface PageZone { + totalPages?: number; + totalElements?: number; + first?: boolean; + size?: number; + content?: Zone[]; + number?: number; + sort?: SortObject[]; + numberOfElements?: number; + pageable?: PageableObject; + last?: boolean; + empty?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/pageable.ts b/domains-frontend/src/api/models/domain-order/pageable.ts new file mode 100644 index 0000000..c374db0 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/pageable.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface Pageable { + /** @minimum 0 */ + page?: number; + /** @minimum 1 */ + size?: number; + sort?: string[]; +} diff --git a/domains-frontend/src/api/models/domain-order/pageableObject.ts b/domains-frontend/src/api/models/domain-order/pageableObject.ts new file mode 100644 index 0000000..8fad0b6 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/pageableObject.ts @@ -0,0 +1,16 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { SortObject } from './sortObject'; + +export interface PageableObject { + offset?: number; + sort?: SortObject[]; + pageNumber?: number; + pageSize?: number; + paged?: boolean; + unpaged?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/putOrdersIdStatusParams.ts b/domains-frontend/src/api/models/domain-order/putOrdersIdStatusParams.ts new file mode 100644 index 0000000..120adac --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/putOrdersIdStatusParams.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Domain Order Service API + * OpenAPI spec version: 1.0.0 + */ +import type { OrderStatus } from './orderStatus'; + +export type PutOrdersIdStatusParams = { + status: OrderStatus; +}; diff --git a/domains-frontend/src/api/models/domain-order/searchDomainsParams.ts b/domains-frontend/src/api/models/domain-order/searchDomainsParams.ts new file mode 100644 index 0000000..e934bb1 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/searchDomainsParams.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type SearchDomainsParams = { + query: string; +}; diff --git a/domains-frontend/src/api/models/domain-order/sendNotificationRequest.ts b/domains-frontend/src/api/models/domain-order/sendNotificationRequest.ts new file mode 100644 index 0000000..92ca464 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/sendNotificationRequest.ts @@ -0,0 +1,19 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { NotificationType } from './notificationType'; +import type { SendNotificationRequestParameters } from './sendNotificationRequestParameters'; + +export interface SendNotificationRequest { + userId: string; + type: NotificationType; + /** @nullable */ + subject?: string | null; + /** @nullable */ + template?: string | null; + /** @nullable */ + parameters?: SendNotificationRequestParameters; +} diff --git a/domains-frontend/src/api/models/domain-order/sendNotificationRequestParameters.ts b/domains-frontend/src/api/models/domain-order/sendNotificationRequestParameters.ts new file mode 100644 index 0000000..8b74969 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/sendNotificationRequestParameters.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ + +/** + * @nullable + */ +export type SendNotificationRequestParameters = { + [key: string]: unknown; +} | null; diff --git a/domains-frontend/src/api/models/domain-order/sortObject.ts b/domains-frontend/src/api/models/domain-order/sortObject.ts new file mode 100644 index 0000000..ae915c9 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/sortObject.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface SortObject { + direction?: string; + nullHandling?: string; + ascending?: boolean; + property?: string; + ignoreCase?: boolean; +} diff --git a/domains-frontend/src/api/models/domain-order/updateDnsRecordRequest.ts b/domains-frontend/src/api/models/domain-order/updateDnsRecordRequest.ts new file mode 100644 index 0000000..e2a2650 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/updateDnsRecordRequest.ts @@ -0,0 +1,16 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface UpdateDnsRecordRequest { + value: string; + ttl: number; + priority?: number; + weight?: number; + port?: number; + flags?: string; + tag?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/updateDomainRequest.ts b/domains-frontend/src/api/models/domain-order/updateDomainRequest.ts new file mode 100644 index 0000000..ccdc8aa --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/updateDomainRequest.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface UpdateDomainRequest { + expiresAt?: string; + activatedAt?: string; +} diff --git a/domains-frontend/src/api/models/domain-order/updateExpiryAlertsRequest.ts b/domains-frontend/src/api/models/domain-order/updateExpiryAlertsRequest.ts new file mode 100644 index 0000000..c548bbf --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/updateExpiryAlertsRequest.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { ExpiryAlertPreference } from './expiryAlertPreference'; + +export interface UpdateExpiryAlertsRequest { + alerts?: ExpiryAlertPreference[]; +} diff --git a/domains-frontend/src/api/models/domain-order/updateNotificationPreferencesRequest.ts b/domains-frontend/src/api/models/domain-order/updateNotificationPreferencesRequest.ts new file mode 100644 index 0000000..db34bfc --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/updateNotificationPreferencesRequest.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ +import type { ExpiryAlertPreference } from './expiryAlertPreference'; + +export interface UpdateNotificationPreferencesRequest { + expiryAlerts?: ExpiryAlertPreference[]; + /** @nullable */ + orderNotificationsEnabled?: boolean | null; + /** @nullable */ + paymentNotificationsEnabled?: boolean | null; + /** @nullable */ + domainActivationNotificationsEnabled?: boolean | null; +} diff --git a/domains-frontend/src/api/models/domain-order/updateOrderStatusParams.ts b/domains-frontend/src/api/models/domain-order/updateOrderStatusParams.ts new file mode 100644 index 0000000..2af3747 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/updateOrderStatusParams.ts @@ -0,0 +1,11 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { UpdateOrderStatusStatus } from './updateOrderStatusStatus'; + +export type UpdateOrderStatusParams = { + status: UpdateOrderStatusStatus; +}; diff --git a/domains-frontend/src/api/models/domain-order/updateOrderStatusStatus.ts b/domains-frontend/src/api/models/domain-order/updateOrderStatusStatus.ts new file mode 100644 index 0000000..d7198eb --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/updateOrderStatusStatus.ts @@ -0,0 +1,18 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export type UpdateOrderStatusStatus = + (typeof UpdateOrderStatusStatus)[keyof typeof UpdateOrderStatusStatus]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const UpdateOrderStatusStatus = { + created: 'created', + pending_payment: 'pending_payment', + paid: 'paid', + cancelled: 'cancelled', + failed: 'failed', +} as const; diff --git a/domains-frontend/src/api/models/domain-order/updateZoneRequest.ts b/domains-frontend/src/api/models/domain-order/updateZoneRequest.ts new file mode 100644 index 0000000..7cb67e7 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/updateZoneRequest.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface UpdateZoneRequest { + price?: number; +} diff --git a/domains-frontend/src/api/models/domain-order/userIdHeaderParameter.ts b/domains-frontend/src/api/models/domain-order/userIdHeaderParameter.ts new file mode 100644 index 0000000..c431fc9 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/userIdHeaderParameter.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Notification Service API + * OpenAPI spec version: 1.0.0 + */ + +export type UserIdHeaderParameter = string; diff --git a/domains-frontend/src/api/models/domain-order/zone.ts b/domains-frontend/src/api/models/domain-order/zone.ts new file mode 100644 index 0000000..cc1b653 --- /dev/null +++ b/domains-frontend/src/api/models/domain-order/zone.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ + +export interface Zone { + id?: string; + name?: string; + price?: number; + createdAt?: string; + updatedAt?: string; +} diff --git a/domains-frontend/src/api/models/exdns/deleteZonesDomain200.ts b/domains-frontend/src/api/models/exdns/deleteZonesDomain200.ts new file mode 100644 index 0000000..7a44dc0 --- /dev/null +++ b/domains-frontend/src/api/models/exdns/deleteZonesDomain200.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ + +export type DeleteZonesDomain200 = { + status?: string; +}; diff --git a/domains-frontend/src/api/models/exdns/error.ts b/domains-frontend/src/api/models/exdns/error.ts new file mode 100644 index 0000000..fdc0505 --- /dev/null +++ b/domains-frontend/src/api/models/exdns/error.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ + +export interface Error { + error?: string; +} diff --git a/domains-frontend/src/api/models/exdns/index.ts b/domains-frontend/src/api/models/exdns/index.ts new file mode 100644 index 0000000..1c978cd --- /dev/null +++ b/domains-frontend/src/api/models/exdns/index.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ + +export * from './deleteZonesDomain200'; +export * from './error'; +export * from './postZonesDomain201'; +export * from './putZonesDomain200'; +export * from './record'; +export * from './recordType'; +export * from './zone'; diff --git a/domains-frontend/src/api/models/exdns/postZonesDomain201.ts b/domains-frontend/src/api/models/exdns/postZonesDomain201.ts new file mode 100644 index 0000000..6c3f442 --- /dev/null +++ b/domains-frontend/src/api/models/exdns/postZonesDomain201.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ + +export type PostZonesDomain201 = { + status?: string; +}; diff --git a/domains-frontend/src/api/models/exdns/putZonesDomain200.ts b/domains-frontend/src/api/models/exdns/putZonesDomain200.ts new file mode 100644 index 0000000..8742319 --- /dev/null +++ b/domains-frontend/src/api/models/exdns/putZonesDomain200.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ + +export type PutZonesDomain200 = { + status?: string; +}; diff --git a/domains-frontend/src/api/models/exdns/record.ts b/domains-frontend/src/api/models/exdns/record.ts new file mode 100644 index 0000000..9dc15c4 --- /dev/null +++ b/domains-frontend/src/api/models/exdns/record.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ +import type { RecordType } from './recordType'; + +export interface Record { + name: string; + type: RecordType; + ttl: number; + data: unknown; +} diff --git a/domains-frontend/src/api/models/exdns/recordType.ts b/domains-frontend/src/api/models/exdns/recordType.ts new file mode 100644 index 0000000..27e5694 --- /dev/null +++ b/domains-frontend/src/api/models/exdns/recordType.ts @@ -0,0 +1,20 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ + +export type RecordType = (typeof RecordType)[keyof typeof RecordType]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const RecordType = { + A: 'A', + AAAA: 'AAAA', + NS: 'NS', + PTR: 'PTR', + MX: 'MX', + TXT: 'TXT', + SOA: 'SOA', + CNAME: 'CNAME', +} as const; diff --git a/domains-frontend/src/api/models/exdns/zone.ts b/domains-frontend/src/api/models/exdns/zone.ts new file mode 100644 index 0000000..3bf916a --- /dev/null +++ b/domains-frontend/src/api/models/exdns/zone.ts @@ -0,0 +1,13 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ +import type { Record } from './record'; + +export interface Zone { + name: string; + version: number; + records: Record[]; +} diff --git a/domains-frontend/src/api/services/auth.ts b/domains-frontend/src/api/services/auth.ts new file mode 100644 index 0000000..473a7c9 --- /dev/null +++ b/domains-frontend/src/api/services/auth.ts @@ -0,0 +1,203 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { + ApiResponseBoolean, + ApiResponseLoginResponse, + ApiResponseString, + ApiResponseTwoFactorSetupResponse, + ApiResponseUserResponse, + Enable2FAWithSecretRequest, + LoginRequest, + RefreshTokenRequest, + RegisterRequest, + ResendVerificationEmailParams, + VerifyEmailParams, +} from '../models/auth'; + +import { customInstance } from '../apiClient'; +type SecondParameter unknown> = Parameters[1]; + +export const resendVerificationEmail = ( + params: ResendVerificationEmailParams, + options?: SecondParameter> +) => { + return customInstance( + { url: `/auth/resend-verification`, method: 'POST', params }, + options + ); +}; + +export const register = ( + registerRequest: RegisterRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/auth/register`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: registerRequest, + }, + options + ); +}; + +export const refreshToken = ( + refreshTokenRequest: RefreshTokenRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/auth/refresh`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: refreshTokenRequest, + }, + options + ); +}; + +export const login = ( + loginRequest: LoginRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/auth/login`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: loginRequest, + }, + options + ); +}; + +export const enable2FA = ( + enable2FAWithSecretRequest: Enable2FAWithSecretRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/auth/2fa/enable`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: enable2FAWithSecretRequest, + }, + options + ); +}; + +export const disable2FA = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/auth/2fa/disable`, method: 'POST' }, + options + ); +}; + +export const getUserById = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/users/${id}`, method: 'GET' }, + options + ); +}; + +export const getUserEmail = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/users/${id}/email`, method: 'GET' }, + options + ); +}; + +export const getCurrentUser = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/users/me`, method: 'GET' }, + options + ); +}; + +export const verifyEmail = ( + params: VerifyEmailParams, + options?: SecondParameter> +) => { + return customInstance( + { url: `/auth/verify-email`, method: 'GET', params }, + options + ); +}; + +export const health = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/auth/health`, method: 'GET' }, + options + ); +}; + +export const get2FAStatus = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/auth/2fa/status`, method: 'GET' }, + options + ); +}; + +export const generateSetup = ( + options?: SecondParameter< + typeof customInstance + > +) => { + return customInstance( + { url: `/auth/2fa/setup`, method: 'GET' }, + options + ); +}; + +export type ResendVerificationEmailResult = NonNullable< + Awaited> +>; +export type RegisterResult = NonNullable>>; +export type RefreshTokenResult = NonNullable< + Awaited> +>; +export type LoginResult = NonNullable>>; +export type Enable2FAResult = NonNullable< + Awaited> +>; +export type Disable2FAResult = NonNullable< + Awaited> +>; +export type GetUserByIdResult = NonNullable< + Awaited> +>; +export type GetUserEmailResult = NonNullable< + Awaited> +>; +export type GetCurrentUserResult = NonNullable< + Awaited> +>; +export type VerifyEmailResult = NonNullable< + Awaited> +>; +export type HealthResult = NonNullable>>; +export type Get2FAStatusResult = NonNullable< + Awaited> +>; +export type GenerateSetupResult = NonNullable< + Awaited> +>; diff --git a/domains-frontend/src/api/services/domain-order.ts b/domains-frontend/src/api/services/domain-order.ts new file mode 100644 index 0000000..64bfef6 --- /dev/null +++ b/domains-frontend/src/api/services/domain-order.ts @@ -0,0 +1,631 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * OpenAPI definition + * OpenAPI spec version: v0 + */ +import type { + AddCartItemRequest, + ApiResponseCartItemResponse, + ApiResponseCartResponse, + ApiResponseDnsRecordResponse, + ApiResponseDomainResponse, + ApiResponseListDnsRecordResponse, + ApiResponseListDomainSearchResult, + ApiResponseNsDelegationResponse, + ApiResponseOrderResponse, + ApiResponsePageDomainResponse, + ApiResponsePageOrderResponse, + ApiResponsePageZone, + ApiResponseString, + ApiResponseVoid, + ApiResponseZone, + CreateARecordRequest, + CreateAaaaRecordRequest, + CreateCaaRecordRequest, + CreateCnameRecordRequest, + CreateDomainRequest, + CreateMxRecordRequest, + CreateOrderRequest, + CreateSrvRecordRequest, + CreateTxtRecordRequest, + CreateZoneRequest, + GetAllDomainsParams, + GetAllZonesParams, + GetOrdersParams, + NsDelegationRequest, + SearchDomainsParams, + UpdateDnsRecordRequest, + UpdateDomainRequest, + UpdateOrderStatusParams, + UpdateZoneRequest, +} from '../models/domain-order'; + +import { customInstance } from '../apiClientDomains'; +type SecondParameter unknown> = Parameters[1]; + +export const getZoneById = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/zones/${id}`, method: 'GET' }, + options + ); +}; + +export const updateZone = ( + id: string, + updateZoneRequest: UpdateZoneRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/zones/${id}`, + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + data: updateZoneRequest, + }, + options + ); +}; + +export const deleteZone = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/zones/${id}`, method: 'DELETE' }, + options + ); +}; + +export const updateOrderStatus = ( + id: string, + params: UpdateOrderStatusParams, + options?: SecondParameter> +) => { + return customInstance( + { url: `/orders/${id}/status`, method: 'PUT', params }, + options + ); +}; + +export const getDomainById = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/domains/${id}`, method: 'GET' }, + options + ); +}; + +export const updateDomain = ( + id: string, + updateDomainRequest: UpdateDomainRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/domains/${id}`, + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + data: updateDomainRequest, + }, + options + ); +}; + +export const deleteDomain = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/domains/${id}`, method: 'DELETE' }, + options + ); +}; + +export const getRecordById = ( + recordId: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/dns/records/${recordId}`, method: 'GET' }, + options + ); +}; + +export const updateRecord = ( + recordId: string, + updateDnsRecordRequest: UpdateDnsRecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/${recordId}`, + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + data: updateDnsRecordRequest, + }, + options + ); +}; + +export const deleteRecord = ( + recordId: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/dns/records/${recordId}`, method: 'DELETE' }, + options + ); +}; + +export const getDelegation = ( + domainId: string, + options?: SecondParameter< + typeof customInstance + > +) => { + return customInstance( + { url: `/dns/delegation/domain/${domainId}`, method: 'GET' }, + options + ); +}; + +export const setDelegation = ( + domainId: string, + nsDelegationRequest: NsDelegationRequest, + options?: SecondParameter< + typeof customInstance + > +) => { + return customInstance( + { + url: `/dns/delegation/domain/${domainId}`, + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + data: nsDelegationRequest, + }, + options + ); +}; + +export const removeDelegation = ( + domainId: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/dns/delegation/domain/${domainId}`, method: 'DELETE' }, + options + ); +}; + +export const getAllZones = ( + params: GetAllZonesParams, + options?: SecondParameter> +) => { + return customInstance( + { url: `/zones`, method: 'GET', params }, + options + ); +}; + +export const createZone = ( + createZoneRequest: CreateZoneRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/zones`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createZoneRequest, + }, + options + ); +}; + +export const getOrders = ( + params: GetOrdersParams, + options?: SecondParameter> +) => { + return customInstance( + { url: `/orders`, method: 'GET', params }, + options + ); +}; + +export const createOrder = ( + createOrderRequest: CreateOrderRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/orders`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createOrderRequest, + }, + options + ); +}; + +export const cancelOrder = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/orders/${id}/cancel`, method: 'POST' }, + options + ); +}; + +export const getAllDomains = ( + params: GetAllDomainsParams, + options?: SecondParameter< + typeof customInstance + > +) => { + return customInstance( + { url: `/domains`, method: 'GET', params }, + options + ); +}; + +export const createDomain = ( + createDomainRequest: CreateDomainRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/domains`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createDomainRequest, + }, + options + ); +}; + +export const activateDomain = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/domains/${id}/activate`, method: 'POST' }, + options + ); +}; + +export const createTxtRecord = ( + createTxtRecordRequest: CreateTxtRecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/txt`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createTxtRecordRequest, + }, + options + ); +}; + +export const createSrvRecord = ( + createSrvRecordRequest: CreateSrvRecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/srv`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createSrvRecordRequest, + }, + options + ); +}; + +export const createMxRecord = ( + createMxRecordRequest: CreateMxRecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/mx`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createMxRecordRequest, + }, + options + ); +}; + +export const createCnameRecord = ( + createCnameRecordRequest: CreateCnameRecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/cname`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createCnameRecordRequest, + }, + options + ); +}; + +export const createCaaRecord = ( + createCaaRecordRequest: CreateCaaRecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/caa`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createCaaRecordRequest, + }, + options + ); +}; + +export const createAaaaRecord = ( + createAaaaRecordRequest: CreateAaaaRecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/aaaa`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createAaaaRecordRequest, + }, + options + ); +}; + +export const createARecord = ( + createARecordRequest: CreateARecordRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/dns/records/a`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: createARecordRequest, + }, + options + ); +}; + +export const addItem = ( + addCartItemRequest: AddCartItemRequest, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/cart/items`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: addCartItemRequest, + }, + options + ); +}; + +export const getZoneByName = ( + name: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/zones/name/${name}`, method: 'GET' }, + options + ); +}; + +export const getOrderById = ( + id: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/orders/${id}`, method: 'GET' }, + options + ); +}; + +export const searchDomains = ( + params: SearchDomainsParams, + options?: SecondParameter< + typeof customInstance + > +) => { + return customInstance( + { url: `/domains/search`, method: 'GET', params }, + options + ); +}; + +export const getDomainByFqdn = ( + fqdn: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/domains/fqdn/${fqdn}`, method: 'GET' }, + options + ); +}; + +export const health = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/dns/records/health`, method: 'GET' }, + options + ); +}; + +export const getRecordsByDomain = ( + domainId: string, + options?: SecondParameter< + typeof customInstance + > +) => { + return customInstance( + { url: `/dns/records/domain/${domainId}`, method: 'GET' }, + options + ); +}; + +export const health1 = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/dns/delegation/health`, method: 'GET' }, + options + ); +}; + +export const getCart = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/cart`, method: 'GET' }, + options + ); +}; + +export const clearCart = ( + options?: SecondParameter> +) => { + return customInstance( + { url: `/cart`, method: 'DELETE' }, + options + ); +}; + +export const removeItem = ( + itemId: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/cart/items/${itemId}`, method: 'DELETE' }, + options + ); +}; + +export type GetZoneByIdResult = NonNullable< + Awaited> +>; +export type UpdateZoneResult = NonNullable< + Awaited> +>; +export type DeleteZoneResult = NonNullable< + Awaited> +>; +export type UpdateOrderStatusResult = NonNullable< + Awaited> +>; +export type GetDomainByIdResult = NonNullable< + Awaited> +>; +export type UpdateDomainResult = NonNullable< + Awaited> +>; +export type DeleteDomainResult = NonNullable< + Awaited> +>; +export type GetRecordByIdResult = NonNullable< + Awaited> +>; +export type UpdateRecordResult = NonNullable< + Awaited> +>; +export type DeleteRecordResult = NonNullable< + Awaited> +>; +export type GetDelegationResult = NonNullable< + Awaited> +>; +export type SetDelegationResult = NonNullable< + Awaited> +>; +export type RemoveDelegationResult = NonNullable< + Awaited> +>; +export type GetAllZonesResult = NonNullable< + Awaited> +>; +export type CreateZoneResult = NonNullable< + Awaited> +>; +export type GetOrdersResult = NonNullable< + Awaited> +>; +export type CreateOrderResult = NonNullable< + Awaited> +>; +export type CancelOrderResult = NonNullable< + Awaited> +>; +export type GetAllDomainsResult = NonNullable< + Awaited> +>; +export type CreateDomainResult = NonNullable< + Awaited> +>; +export type ActivateDomainResult = NonNullable< + Awaited> +>; +export type CreateTxtRecordResult = NonNullable< + Awaited> +>; +export type CreateSrvRecordResult = NonNullable< + Awaited> +>; +export type CreateMxRecordResult = NonNullable< + Awaited> +>; +export type CreateCnameRecordResult = NonNullable< + Awaited> +>; +export type CreateCaaRecordResult = NonNullable< + Awaited> +>; +export type CreateAaaaRecordResult = NonNullable< + Awaited> +>; +export type CreateARecordResult = NonNullable< + Awaited> +>; +export type AddItemResult = NonNullable>>; +export type GetZoneByNameResult = NonNullable< + Awaited> +>; +export type GetOrderByIdResult = NonNullable< + Awaited> +>; +export type SearchDomainsResult = NonNullable< + Awaited> +>; +export type GetDomainByFqdnResult = NonNullable< + Awaited> +>; +export type HealthResult = NonNullable>>; +export type GetRecordsByDomainResult = NonNullable< + Awaited> +>; +export type Health1Result = NonNullable>>; +export type GetCartResult = NonNullable>>; +export type ClearCartResult = NonNullable< + Awaited> +>; +export type RemoveItemResult = NonNullable< + Awaited> +>; diff --git a/domains-frontend/src/api/services/exdns.ts b/domains-frontend/src/api/services/exdns.ts new file mode 100644 index 0000000..ba08f15 --- /dev/null +++ b/domains-frontend/src/api/services/exdns.ts @@ -0,0 +1,92 @@ +/** + * Generated by orval v7.17.2 🍺 + * Do not edit manually. + * Exdns HTTP API + * OpenAPI spec version: 0.1.0 + */ +import type { + DeleteZonesDomain200, + PostZonesDomain201, + PutZonesDomain200, + Zone, +} from '../models/exdns'; + +import { customInstance } from '../apiClientExdns'; +type SecondParameter unknown> = Parameters[1]; + +/** + * @summary Get zone + */ +export const getZonesDomain = ( + domain: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/zones/${domain}`, method: 'GET' }, + options + ); +}; + +/** + * @summary Create zone + */ +export const postZonesDomain = ( + domain: string, + zone: Zone, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/zones/${domain}`, + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + data: zone, + }, + options + ); +}; + +/** + * @summary Update zone + */ +export const putZonesDomain = ( + domain: string, + zone: Zone, + options?: SecondParameter> +) => { + return customInstance( + { + url: `/zones/${domain}`, + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + data: zone, + }, + options + ); +}; + +/** + * @summary Delete zone + */ +export const deleteZonesDomain = ( + domain: string, + options?: SecondParameter> +) => { + return customInstance( + { url: `/zones/${domain}`, method: 'DELETE' }, + options + ); +}; + +export type GetZonesDomainResult = NonNullable< + Awaited> +>; +export type PostZonesDomainResult = NonNullable< + Awaited> +>; +export type PutZonesDomainResult = NonNullable< + Awaited> +>; +export type DeleteZonesDomainResult = NonNullable< + Awaited> +>; diff --git a/domains-frontend/src/api/specs/exdns.json b/domains-frontend/src/api/specs/exdns.json new file mode 100644 index 0000000..b98db6d --- /dev/null +++ b/domains-frontend/src/api/specs/exdns.json @@ -0,0 +1,244 @@ +{ + "openapi": "3.0.3", + "info": { + "title": "Exdns HTTP API", + "version": "0.1.0" + }, + "servers": [ + { + "url": "http://localhost:8080" + } + ], + "components": { + "securitySchemes": { + "bearerAuth": { + "type": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + } + }, + "schemas": { + "Zone": { + "type": "object", + "required": ["name", "version", "records"], + "properties": { + "name": { "type": "string" }, + "version": { "type": "integer" }, + "records": { + "type": "array", + "items": { "$ref": "#/components/schemas/Record" } + } + } + }, + "Record": { + "type": "object", + "required": ["name", "type", "ttl", "data"], + "properties": { + "name": { "type": "string" }, + "type": { + "type": "string", + "enum": ["A", "AAAA", "NS", "PTR", "MX", "TXT", "SOA", "CNAME"] + }, + "ttl": { "type": "integer" }, + "data": {} + } + }, + "Error": { + "type": "object", + "properties": { + "error": { "type": "string" } + } + } + } + }, + "security": [ + { + "bearerAuth": [] + } + ], + "paths": { + "/zones/{domain}": { + "get": { + "summary": "Get zone", + "parameters": [ + { + "name": "domain", + "in": "path", + "required": true, + "schema": { "type": "string" } + } + ], + "responses": { + "200": { + "description": "Zone data", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Zone" } + } + } + }, + "404": { + "description": "Zone not found", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + } + } + }, + "post": { + "summary": "Create zone", + "parameters": [ + { + "name": "domain", + "in": "path", + "required": true, + "schema": { "type": "string" } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Zone" } + } + } + }, + "responses": { + "201": { + "description": "Created", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { "status": { "type": "string" } } + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + } + } + }, + "put": { + "summary": "Update zone", + "parameters": [ + { + "name": "domain", + "in": "path", + "required": true, + "schema": { "type": "string" } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Zone" } + } + } + }, + "responses": { + "200": { + "description": "Updated", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { "status": { "type": "string" } } + } + } + } + }, + "404": { + "description": "Zone not found", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + } + } + }, + "delete": { + "summary": "Delete zone", + "parameters": [ + { + "name": "domain", + "in": "path", + "required": true, + "schema": { "type": "string" } + } + ], + "responses": { + "200": { + "description": "Deleted", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { "status": { "type": "string" } } + } + } + } + }, + "404": { + "description": "Zone not found", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Error" } + } + } + } + } + } + } + } +} diff --git a/domains-frontend/src/assets/bg.png b/domains-frontend/src/assets/bg.png new file mode 100644 index 0000000000000000000000000000000000000000..7596e31099aa00aeca073760196049ec01f45f5a GIT binary patch literal 590914 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�AqW;1*UiWDd3U#ge1NOPuH& z(w#?`nfhVBaAs_}6D#9C${y_Fe($4(P-&G@O8A=UtO)jMyZ8uzCoEpz0+fr85T(k3 zbhiV0vztBY&fV!F&u=Se-Pce^d#o_O4xYzl^9gfZ79UZ;yMuPd}* z7>#Yl$BoJljvYNIV%MJ?i~pk2Fy;%(dk8g?c#=4<;ph?J$&c>hCm>I?-?M;JKIi)4 zGB5wU3|^Z5FFP3~&TDv$Xq#G+7Jj_n6vAKpoYGz%QEK6v1~-&>#yk;|KG0n39AR)m zY~5d_cRVN&!as;F#M1 zXSoZ<%0Diw7pbjroR?>@CE1 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

S^^DV( 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

7gK^Rk+XSr_j7;@P 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%0D(Y$zxA?8Aw@h&g}%=b>}eL}K$s>sgt)DX zd!&xtWW|G;C3*VK`6`JF=cn~oaKzg`EmaoB{^bkd zf@%K<&mCAss*H|Iog`^~E>tgbP?RT?uQf|)qEPr~`AR>S_w*|IdjUW;kOc0;u1i=y zbAm5~*lvDZz(w{yc+gehmFg9t8e`s_SeJRcfO&)TGA?OP@J{Y1c7az;c*AVV@Uw;c z)5vi1EtYsj@PHH$>CINBXA9(cG<^?7iuBB3<8Ze-83CU0)p3!RIQ|TOdLJJ7EXaoP@W;WlW~$pMpYk~AJIJIb16TL8pd&H&cZlS8DoeK+F#_l#9)L? zs*&Cy7-avJa8D-@79kxOkPaG*(B-bga=Cm*f`I_I==LX4EX0tr6%k=Ba&H7|YJ3}o zVxonhr23!XBjnd~a4XNY;<}%#WgJatH+DeSwwuEjz4oj&pL3PtZMX88%erkrA1mJ% z4mgt`t)mDLBT3DwSMUJa7P6OBvCM0pLD^lPk7?4iU7F@lN|A}HFi^6VOya))5=7Ig zZD0;fvrTGuNBd}s0Y&QR*j@7o$U`mLixx|f{yg&q7xYy6f6@(Q2j68T&+oVx5ZlvI zXVNDw3cOPR#C>O#hx=!OihngoJK>#xhLD_~I*b$pS{IM|kLC&Dz<%tJ2=L@yY&J9= zC>L|T4%u?}4hidq$b*N8<6OhkhgN|}YkgG(#tTeHKpYu<0RYh}HBf;iyDwY*sB`sb zJ69dDUd)vk>e9{g(J&xRZMVb=UO4QpJnMNB6lgX(f|A<|#AmmP_+)`(DIW5&NVwSS zK`Ln2_ksd253fVxSxGgXz!RKnc^C*XSSm<5cM31So!{`}#>_(?^4F|q<_S9VXAn|k z6Xw3c43e#0x1V$zQ->U9dK?GP&!S?G+}zy032W)#t$g(($m5&`2Gx0&3f$s?>_PeY zrfz}<%<&{+8^>4PSui6cOw&O>bG)(b+ZjH1tDVRmE6~q{sk0qU4;7B+Sn##AE*F~^ zZNxrC2V`LI?088_xTa`OQu+3{t1S;=Z--)nrnOPU66TBj2L|dU>7aEYe4ktlY83jR z>bg!`C>Q`Dnq?wWQ?WWOoA8YJDNcs>ANtR&*E!(7SV^!ee2Cq`?WaPtIZpUc=dVE7 z`A_CvSw^WSoUndExLtx*s`!g-r3fk*6hK8}kyRA_72>tb6AQAvkOGUjQ@L>q9z<{Z zi~POHiUb~n@(zi`v%+glGi?~N6VC`Dui)KgHN6;wb-=TakvWJZ6$yjIfqMqA*cNQ5 zT`mN2+YO%U<)hT)&N8H`(l957_E7~NjRc7z%q4B9?qFTiFZ*E7s>_DYIwiXYrxD2( zrUIlMXOA~{v=lX0n+2OX(fy3Rkr*^o8O(=^2EXEB!wo>xeYI-`SXNgvG)wlPIw@PP z9Uk`e`O&*+S=^W7EF0jF6ruso`S<0IJ=;gw`&hs;W?z=uU6BzDt^9^M&t5+{H=2RH zeBAa};3PpAhA&}--Gk?=O=YH(E5`3GaVTN7ma8a*e?)qi2EGh7V5%A~@O&s;?maLd zD?FfFY}5ya091!K6}Shq9k_V*_Jop+H1RyI+-#~gF~iI`smv8ivSISSB+LAUpv;9{ ziS^F_>NA=!Z8V;es;^8QXV!=Q5H?5U)^sEaSa;c%VgDMm%K7mA)5dKX3MmrgTdIS1y>cec1oW<7DzL=ONH5 zOJ&YpgbhiVWH}89Zq1j+w?ll2+%!9x6fXgNJ`n&?VubK2HbPeyYAV-J=%5?qHU9OB z0(udkOE3LKtT8wTmmwiTUfc@ih2F+B=+x~~Y4{)u2luo*f|RS?IR5oBNN2~E5wxVzK$2aMTQ zo?ck~^S!Et!55`}MPKovHMt|MkSxpab;OI|OU9lPU9^rN)feEiK!VEW?Wloq@}U$7 zT75VtNTcHQ@vlb352XzCOEFJ(G)6$|+AS7+WdTzfG>?)FKel&>Qfu|;_s!EX|B#UQ z!u#w*q81sG^}sPq-5Y@NnAgyH+RYeG^b#;V<~az=o>qe}m}qn0<7@!Ymc|$zc{X?; zt=0o#mO_a|o()PCytu0Iq$l`7B%mM{?@=;*c3SHCNk@CY-tq*8T@Df@Gq_?!0!WCpN)z7LDuI3QE82Ygl=m+n=s)#S@ z@4vN6B18ayvOqt3hJIjNB^Sg#)!(Pd=!elC>by?#t1-AQx<~4>BcRVog1v0rj`~XX zdik}7sHKWMMLNJ+01DWti^zgV4C0i;(vYKoKHB`MLr6Q^6M{h@22|nx1mI~tQgZaC zVL8&Q)e<#~NP8)h9n?KUspG5pYYM9sq#WPQ! zjll_`fAvTCO1J-}zrXv^pQ#ShWkV&I0%~joaLqA174L_>H$MiDkm*@{GP*~{N$xBg zE1aO!M{|M-9~BRC=p>Reak4+e! zl#r{!L1PeV4Yea#fRzjD^ZTt+{=>!QWg<*{`|*2*x+EH)}I=y>R_2j?-ApJNjEDf06;;Mh8T>q9}R1Qz${ub6U54*oCi?%-0>iU z!kRGRz*bMOa#EO$;#%$&@1pwmufl-(Jp8VZrH>{M7+*uYV!B~u^st3#^qS-DpbHcK zWA+aMhb3{9D{k{z?`|dD&x0ex#9_wGSGxNWzRbS-{gHlA$*iooMMdJ6ka{y=x zRmv8*=EqCO+RUXJDog8d)tl{IiyH!k6%FC2cmhODLqBLKd)ldd={5#bh=Od7RXxeD zwg)R2HMceJLOOiPy%ThXcMQRRhChUuCsOv+U9Ne7zn@hZK$UaI_45M-fida?5)e%? zv=@CC_BvAUjsB34-%Wq)xVrKYj!vUd0Q#u3BC=!a+0#l~4xuWChuh%&P<)~`I7X&b z>AD?FHXIY1V{~z`A^0&MN2<|TAQ@_Hj!P?wGFo~aU2+|pf|cL z1CmI3@GHw70-L<@{_cV&aV_>_gV7Q#5e8X^G{8c&&i$u+wHNM)j zeN^pn)hF8w`aU5hGFy#{nz>#E8~6-|4!p4$%0K4?S^w00MMBz#0mQ@d3&gs6wgLKL z>WG<(5X&F>KNp1utaYg!qc)jd$C?pJ1uDuLS5yyO)@(0y5fC^J%+G*@3z={pU{u;{3mau4Y!t?u2slp^ zNeN^-HPo>6J_UY|=fD-R;uG1SI(JKo)>&YL#EV$Mt#*aNI&eo`hR+NEEAaRfV1*R0 zzw!FF+5eI5=#^~$mDXOn-ykI}G%+{4-@;yz7hyVI$?gl@$s+RuD=cP1djf0mu86rq zOC)m95+2iSdS%|bZX$XvqH*HQADkHwW>fJuD9Ya#ny-n}Nlb^K_v0vIgn5yd7+w}&w}{a+=X#Ya15(^91fDpNO%-k^k$|YHEyyU5T-w zSRkRwn`F_P0O!hMn(Ia2BWL@8NRZ(fk#01Rm_rXq1p=m^krNk026N@iqot*8(B(-v z9N&tEy-Np54vKt@`*NBfnck0p0R`#H+YZfDqJ0kfD;uAi0z}YhxFE2B_$F`y8mR3j zum)Ob2_&X7>wYf-6YzJI90-7zNRhtwvXxcoR-`10NAQJ{c)+Er5w@uypG$(|Y@4o4 zc$A1oxRQxUEGmpc6j5rp&e~!AB`~0~U_e|CfQdHLZ89vXA`KK)kurCB_{y_Mu$TBr zDBDU?zy{kw;Tb=-oy_ApGI5qlz%eZpm6aFfKloWNV+eKD1b3?A6;WbE`8CZ>^D&^< z9(>qj<%s9)md|D&^k?!osp=V*g;aanFy~jzgLmi8fUZL5M~C)*y7)wJ}<=(1&4gw|q-(hkQ)FkRRlxed=(2q{R zT~j7-5Bi{8CHML8oua);wa+p#i5G|26qc_-C8DAJuFmwC;ZJkAS+ zJ#+D9(hF9HX~O$1k)S8@zob@yr_up<$OfOzbzb^%9VO&=6y;w3j9EL}+)yL^>WoO) z8m&%vF7$Ty+J|cgPRE;|hH7;@4-Ai|4j#%*wT4`EIw8>IekNG`d8%gB;ft{tHVkff z?K!1O04)3y`C6fzEUm^IpxlSda(7iZR# zKgYd@c|-tQ=CMP!q}Eo$b7AG66WnYR7cxNwC3SL^w)>#0$&^L|}#6M4lju z=~%Z9GIvICboT?J(AE2+vMrKo!MY4My@PFh$}5=%ee5lx!Lr{dA29}iXn43Da?1uJ z5!}1gr??V$slt_(=D`YB`<7cj+|pbNxIdreo&j`0{Y47ZLYvVn)d=6ap_>D{wN8^i0{BSDlkb$mOQvC?!v6O;}U1z z-ga8Tj)@RT2X2#ItO_y5^WdX>G6s|#B(;;3m;)UpxI1%)Kjzs^s{gJ6TTBb+a9q>s z#ehUpm$_rV97(CSz@FS+<70sVpT z^K1zA;scB@&Bi9+zV+cU4_yj+%;!9xd*O%e&WDm-T^Z|Qj6x=fr%!->j%;)lj+4RZ zIBI>~cZDpdAm9#~=G{PmOgJjf0@0jJnXe1O$Zj6ySe=DCb7IMrcK!QCUXEfS z@l_PQ40{kzE65FYAs#8BhMBV|iVo5y>=?_x(Hs}rbnlpLq@07Ak@2X4L{pv97!GuD zK0djSp4N{<(FV{D zs~j0WUNZ$FJxtU6ce?+g5?@B{eW`ji{+9^|WeGn>VtAHrnS}@=(nw=#7ADrU6f-vO zFrB$1(GniFW~3=7NlCFOF4~nHkddHua5q1J3KaU|u#>A9Dkq*Xpp$5Yjy=>3)cV3X zB?Iefs6?1>T!wcQDHUk_5mX>e-A4G%@S#rX>nv`dSDHgh@m_S@*r0lT_E)d|{EC!` zfVN`?s%AI64Exz7Lqs)0tH@VXv#|{n*M~c*=laS&F8mqiVbC74dRe6pTcQYHhe(tW z6ig@aIuQj^)=mQ2LrJu{m3%~Kh}g!Ru5tijmV|n7F;3L|bG2ZM0Uh~D4g>N!ItKH< zu&BVY=^6xv40wvjT&V*zyoA)-c&L*Oq=RUPoz2RcWEZW5%jiNUo$h}2$a8@m$$550 z@LSo?eCwQx4U-egpGFB;?=wPJ`ZTT)08@Y2#q#;^)=!*sN_NoCQ7CwyP{KLE+T6J! z0Qy;}oX08aO~-A#e8w^P{#Qy4p1-N|5|*@iB|Hb?MVo{<cLgRqSgnKj*h99QcVM<@=`|=IXGbGa^Z+amw471^@ts*1{shnjEef;bg zpe?4!nMf%PmvSXRd196~2|Imv&+;b zSxII5DkNJfy?Sx2gs)Tnx^;p{w_#yH?}VFk)G$Io138S73ZJl+yU2D<-7D9wAR~t# zqEZ${;Ww5KmiZr0zgY85ItK2+atp+g@u9>2Jm%bM->s7Z`hIN5&K#8ZLYvY1H4 zx(@hnCi<6y{VuN|8m$e?B?>FX<}KH^a4zVA^=Q<(M{rKe^x;QKX+DJh77~-;88L<6 zBb>Sy;h(Uh5ENLdnKbmx(gmw4WTVFHj=V>RFLKr$^b;tVg>s*9d{q*(G))11%?qxZ zIE$58f+(*%`H)FBV_ zfkK4<#r=FBK~;sF?F`&R`o_#-pK-%1zu|JbYt){3;9A}K1i=(@snmUYjRYhq=CiBo z+;{{k=IcEBa15wyr1#2+b{4|+vFGK)9(D}kK#?@wl!%-!KJF z+D^1*-Jm_e`i{nOR8gLjO1vKZvBLiI3G^<8%!vnW%QYPKeWvUHr79d@on)TZ9|pKWI$08%RM5uZJ#nD}vszot^Y#fn6MTSrn)_+3QVvBXRU%FArC~=npE=-kk zXpaHU&AwT8ZDkp_x8xW@g4PKYkUhe|`dJGpvApm5FL1RcOcx4>Y!}i+b&P&Yy-aT)BjL;OSAvw&nG0x8i0W+%LHOw&9R@U@ ztBYkT=$mR9NFFHTocA1^CpYdMse&~FIuKh0E0=@#+JF%ts%*jBW|-W3gs#MOW*S6r^IJU*;Q0$Fu)qunB$aW6vMQ`F|<;uaP9 zZRO6G{pSKe;<3dVg5NXw7qI z9>7Zr%z4L7)Y9Cuo2$oe$A!^FWpbGu@4{qFAdCv3C{rPS5}OY2#MB6GD2`%4Ae%%Xol^mxANEU0xjdzWP^JFS9ScA9H4DE=`q}*5mYO$vC^N!lbpIGm^Cz zEVkg!bEjWTn9f#i7SOEj#3A21?axHPR}(yCMm|H!$# z$u$5-)I+fcfQ}2(Ge@c4M^+$JPK#vSG{bqHB?{+VX17Xs%|PTDxO?PDbiF^sQHoGP z;u~H^^x(#de23v014mYhMAno)TE3Uple%2|K$?jW&4C=Ohj2hZX11S1MIBt0s=e`% z12R?*NAs`>Y&CSZVSjriBxC!2qo!&ILIJ96`7+MR25>K92b2q0Fu z_jtDNPGt2*>|4 zKb2o6Hg*8e7a6J_As{lWx=b2GXS}Sdr5K!y*|OBx6%*W`F1F?>Mm`Mm6Ih+igJ%i2 z&*ufAU+0(E>h&~w(1r`odf*S^3n2=b(C*6norf;wRfg1iU4crcxvL-Be#~u;$278Y}FR4J?)X$&R^iTOBe6v=uTc87>S$xrcp5Sv0W4a_i4D{M6@K z_g{CYVV0s$b87;{mT9DGLl{x9oMzV1cK~Hg#gK@$TSpW0`@XB+7LYXkNvD$US-41roJ$hA9yhCrt@!ZTRCnuyk<%P^9{)AwUE^7ly#H;ddTo{)z>sIVcZA(P9#CMZ3F^6C22*eyJcs86us|N7z__!5b-tIZt zLyfh@hkj0)e$@i~6xUfl)relqV+;j#|6%t3PIu+kAK3?dh)p&o5MVCys(iecPwY+B zZ>Gqz-Zx4zc9sJDkfG|cszjLWN?6CK8kEF3CJJ$mln0PDJqzYubKE9Xz~0p*!2KE3=xnmY42_lD;K(BH~jLHnpOX3vRJ3@-AwpTiDPw^XaDRkoRle z|HA;fy%|*{jzT0;Hy;XCG#Zx<=%;-Bfb6qJ#DjGVx~`8S~LXq&Bra@itrOc#2KeZ%GIOT(e2yBtSNB%oz`q_@$LGDi*0 zuLBcmWCM4YvmLM?Bcnc@wt1U3mf??Os*8JJ3c-^5~tP;SESEJ*2v0TmCi zWAI!{8Y7`^9cgF;r~x+ej7Two9t;3dHs5>*ZkiGUg)dfN^4fIE5vY{Ne%CwKsImpm z-o+^Q%t;^$%2V7sl5LOE5gxQ2=#TgP86N$i(Rwa`GCyc<3ARdx)Y7ME#2MRHp&tS-D3qO8NPEFF&o`|$oW4Zq_7`R;jw{sjiMs-JbnHg6 zX3(b%7|O3QW%9<~?!cf}Wj&GV=4JtxO8rdevIl|Pn!glyn_Rqk|J!TcNv0hP%^v3d z{2c)x({m51E%6MHVUj~s#l#l415SYcPzV$yK;daGc&}vl<%<0?GQR?;mpxA4@-x9u zH1eR2C;N0jWF*gT!S=(fC)a4O1vbh@rqi8I4o01ml{UtjdQKn8?SS?JmyMB6$M}wQ zERtu z6ua{}0I0l=H>7!GgGc0=g&lT8dnR#D)AbW&_|a$E$` z9^37W?bzDzp~a6!PcwRkc4-AG#CB4Fxf{3W7Iek;Wu_R=zD?GxUoGqABsw!)e>Mh0 z)GAoX92fZ`8dyAr*4YKdo%B|4%$ZggK*i7i5G{s50^s5B!t|fOu}IBsV>o>xz(K5k z?wJiZ4UWd5d3io$xyY?!?vHGDFI0X-*?8Qa3i`8qKlBIOnPkmP9k zwY={U+L&A|;M=+(R!lF=;ZF>+f2X@Y>`5XopK>WG?@)cLmom?0=m*d2`|0jYgUvIW zMm?!SN4A&QNLwoWbZ#Xk2pX!X&zk(3@~Td%fwW?SOlo^6gW!lHQAoKo^agk$s{kLj z#ef%p&K3A0Z=nU{?L?uX3dFSS#`JMc5bo^gUYAcw;AZPy<=r>V#Dn^M%Hw9&XUP*s z?s=10VF(P>)SBMoMPsJCMYQ*d&YRFKftH$^_rDth=$Z*r*iY7;Z9!G351(=>gnkVq zlto%e-I7P*DDXVcB87e?`gKayJZ4ka!#O{-M>95W;^hxV2rlXs@rPC=QEOJEd3KD#n4wxiYY-uXtJ&d@;vo z=6-&a5G2r#{6m3(*b96qG|u-xf)FFJa!&Yp`cO_hs1}P%vQcjK?J1RUfsq>waZk@U z_z7ECO3q8NqJHW9#Ci%V@N9no3ssPS_5eCpjT`}Fx=n@opAhPOlbZmE$AWyIhi*ln zXW>|fLGrDPF1CdT!LE(4?y*?PpiT;C9o54ZK<_%=l)mH};(-!O~6VEuEP_9lSj2nzH;KT$~6E&QWB_r5=`M1Nf7S2POx zQ~0YvJ4v>GUjRjj!$=bR6uTd1Q=MooLAtKe!~6L*u$Q9Q6Z(_xf7AN+S#?k6G=cl+ z2;Hn2e#=|Ksp^{w4A;Q=F{75Cxlp`k%1oKTyzB>Xx#B)m6t5^MF-MJ{k3(}fdK>xL z2Y4rMW$bNu_|3A0Eec?N=0Bl5*guBV#?(uB}gXhroiQoz_lK@OO;@I~G$*eE zXToEk05W?0oh4u)%vPhN8S(Cw{PkHC^x^uF0ghM(zvnP@i=Rny^vsAzOm@!X=zRFj z4qx<&C)m!`g8SrYFYXrmOqUN>y8lUcUqFBKu}AHzjkh^>^4WTrIxF*Pl`XJoQQn3< znHP7$j;}=a+v?K}f}dxtSfH@vxxxBdVz>g&J&>2?xM~N-({N zCQuEEtrh8*Lz`6ztL5>m^i0SjF|&W?Dg?_~h{X5({3CVL9?+b3!mZB4FEEVV+#iR> zab4otHgso*a5}eP-ntisB-!0e_p8LoDLUWnqS4%Y%^xXdJeY9#MQEt!Ws6LG)vF@Hm=^-I5GZ~#y5|Ln8f4|+(S z+Ez4}(Dlgbh1oOwE6B^@TTbd{LqAY3rCYXUCz0!knC^g= z4>B_T`-%2eZnizsu`&Nf4ozo`1&0M4&x}UVR};M3MpKjvcqqT+7IfoDxt?Wa7{r11 z?v`lm9C;Maof(T9%0~wb&2h?1ScI<3l0`0%F1xaN@>wrs1AhyD- z{U!(K!w+6x1gr1=EWc;F0pLDKAHI)qM&&kLm6cX{;AHV1?2jPvBCiyk=c(l+7#58- zYyy%Uo#+g?^4Y$)7Q*ssu{1U6D;DBG=R8#Q3Udk}} zrG~i(0lvB_HN~n+L}Esd^Z~)rYhje2W5-VMgRcw>1=x_|2YF7={^dvz==$QxitD+$ zn~a0OuR!Uy#@dEuXquwE%A^f8&nnB-5;`uZ-?l^I!*em9Yd$IWV5yh|ts3Mr=L{~A z6YpmnPi_N1fT+eHo-pp9HdO=U#35rI7){W~4Y$!D-CTY?Tbp+^gf9D7*5S?{p@As% zW&pxPgV4Z%aijvf-p{Al250yhXKargy~ZLCicylHb_ob@#iFh0{3n#G^W{9so+$4|j$sQ?OwP_YhhEUCCTob-sQh5wR1|C%s&> zKpo;_0Gi^=)KeqL;gZf;;_9B%xMpe@laIyy*<_x*czCl$z?nTedH!cayledV z(xE?)_FO?6Zk|U%4dxCdEt?cNWs+xUzG^(0t#wg!{Fo3+;w_;c<|rk>jbJmx=H6!< z%c^vhRXY??d!crcd{S{I%+!szSqmbF56K-|8v4`&*~-DUYEmJfk2kfLVj@1v()|;!-}w5a0v9KeAV36Mq|kb~y3QMd;hUU*^6MTz_vwmK z=JEi(*+@sgmr=OM3uU*t*}oHl%*jERFtVV(b5^iUZsz9e0y{?8QHe#)3+xo;$%?gz zs#1u=z$o6|0swM$+!wyw*msou;k>>pxDP+uWiQu|T~)<>2vGPD^*EtxKW6_8M&*w> zt{-pVK3TiV4~3@?uEY-sJrYx#;*lg)92Ws&xo>D!f9Qt_y9tMwih+@7RKA!Oqdy$) zN1z_0Npw?i^~kVbp)T$l{tJrbFZ?qZheE%VP!^fARUzitreOFhuNGcX1KtdNpxFc2 z-Gb`5WUi12$w9}EA~ciiuvSix8HEnkp#R?*@kpCLKm~HL4m5#R+c_WzLajm}zCzOT z(+W^BfY9JiE)L#J5oW!<<8hlLve${31azrUB2vI10Dx$yzP-6-#0Dr?kFYq6dPy!c zNa)dKJCnne(KI_K2}m&}&IuAYqYI-AF3v|ybiVVQSf$>K;-~JMK{STx3arByf!xz> z;RxpJyef029-UeN&TdPabLE)eINN@L5~KwKV*KlLhvAn?NsC2gd<>ztR{K98zf>Mu z27ngB06;1SCcEwj!AJJ`l~rwvz-`K?ygC3S+ot!X`rZiVVivYD{i$sQSjICg!52da zQ6J!es?RY_9+WP=)bISH=L-GM0Am@r%wV`xM;!Xq{3`qUGP~bk zy*-_%rFm68d`+B;-jG8ba+D$-6-Y)w9r`gNuzsxkcA|AeRdzzzV9qqI&Z+}R?)+yl zW+r-wi>9I3QnF?(Lb-9J`!C_<94`b1OimHxB62zg`gLSvbL8FxbQNKy()F{ljDB+YtHpge4RviH z`>DuVEP-0@muVq$U2$S&rI^ufF%d3Ly0U_@3AvkT2jm`$|AlO*Q2faDukKZGp0>eP z|A(HB7O^)4>-92Ou{@k!Bc1&4_mY4WD*V9_wGvQ3khu!eNBZY1uH|qQfirX=xXfHZ zpNaajsEHs>7o`g^WFR!QtHiUA)kgYKbDXA1&h%&~NH^?19Za0EZj`nMXbxrlB+w5q zU6?XD)=x32;;a|h2O;zZB*U^1&D7SB=!HOzk<|q`s}g_wuF6{;yE}R0&RjpFAM+k+ z(Xuuep23%%_VEL4qf~j5RVVAD!r(Ca?B)OB{55;JN=zM5gQLK-PgB@Mgjh z7()wb|4zaKdgiRP0Py@Hs#$M2Kfri18t6*a!oS_ov_)n&X3NC7`ar3%9|-_L zG71t#|HM*XMIBIFc@tT$` zibilfcLXb-Kl`_8-Cd4&Ak%yQ2b@4Fa-8M#D|zS3rf8R5mA`>TdusMy>F&>L1mC?I z`wWaMDtT3CYA&3N-pcD|E8JBX6+e&lqtMU7kko@;a2Ij6C*h-Wn!o3s#1C<%2KAq-UHm)%yado|sflujAhVlM+*Vf1d1c4{-y zqtGoNbfzHifsnGogs9oRT!A1ftf`G9?!u1#j_YS7aV(YmvMZ@-luk~!<}VKb;c^2G z5JMJJB*K95^tqWRm<*(M)ex?tiu+(MfakH=wS*Lm@?IJVDOB92NWCL^u76To1%O11 zwg$TNt+)^9MWRF_=!Z6L;rZ9~kRvEgQ}m5f5B(sXsojv@Jl*t%RdRdA^$7HFmO6At zHo%5c2i`GD*#mzL=VlKhawbbhf5WYEza|){Ztz}N;RLkP4O;N#u5je6>J#(|br{Wu zHv!Dw%gis7bwHRI&+QF25OISB35cf_i=LGJ0WAg`50m$nHz_yS!&pcq556nfT5(h( zF2s5v62Y%O7(1+xE%MXB#)UgQ9?Xu?JSfX!0p$AOUvX9;m^4($7{E6(;DiKpoOdwy zv6@vM1qLp6i01Ze?lwY9wGjtXZ*kpne0wGos1w(yVWy4&F^LJte%|^I>*sIb_*1M< zdnf3&7c}X-A^ON*{c%J5O?4{>7Jz9)XHszeYE3Cjpa%hf4D8|A)aiazfpx@7_QIfvfv-`AUbr*s-Zt8%p`>TKXyFjb(bRXq@bb5X$0-Ipl9bV|7-##;qc|@_5j3C6gi@sV3 zOnH;dI&i{2202-%=Md0l0;{G(7!cqST1|7)pu|()VvxNI04jR<)n^jcAi#gZ2Y~Tl ze{fAs4hec@K$}4()I#0LySoBatUV}V4D`tByao;oc1%bxyylN-2kvFZXhEz3U2^_^ z3&MGx$Xw+H1*03A16<`Zx^8@!h&dr-v6o{lbtUd?jd--1kxcRDrx81?)ipC|68BdB~C+ z(sj~h9Pvy}xegBWse&*0 zle?JfbOBpIPcA)-h~7ci5Yrn4Ej`VuHacM0=svG1HjZXb0#QyIiJ^52@R+R62A|8Q zNa$n}8ktkd)8QxGPhk67eqVl_(d}dXU3Lrt!n6StD3G~e4E;FJC*!aB`Y;C2C8>43Aq=S9-#)VvD#&eS+ZCA#rT5%q|J)Ug(^R><(MK^$0MhM*9mO1*?~2C0{H)Epw- z1pTxszl?eb#WX5M2t`16n}~%F6DA>#RBz6w_>CE!1Pate1ZEpw9m76I1ctJxY?Db)XonoB|Q{r%wv~DDDHTeY*RdlHu&PhddbRKr}58XELW1N;(X=&DF!vjQ_fP zCvCux8-ZJiIVbJg7O*=oJ0by1oH2`WZM9N2grQFW0^5D0eY&Ji6*3qU|AyUO`M)i5v3Z_Dtz;A1OQ!84_Z}4ot)`Z&Phqm zh>Os^AEEhhJQj$)64JyVpT7{ccK#u!(|Ft63Vf4r+?5G3?F?ty!CV0Bp~NZY+o7LU z^rsLMgX69Th>R5Qr;FwC=hk{z6%A7GssvY)md_Ypdr z>T!gzH5WH~xp(PHXF**lyLaWd1z-@13KNJ<)p;JZ1rTM55k0gpS_kHo(Y+w&xtZvV zlXV9wP}t5Ll#9FShDt~#7rWmVF9==%43r%uYWfJ9L!#YoiWjB8)cuk$7kvP^pzeZi zitI~gvJg)9U+Lk8A4UTH_TNxm+&=lpNSk2`8;|o~8Xm0ijTj>3$`%?iX2o!7oVN{e ztIGwu!G<`)4Vvw2?(M(<(=3BL_<`kku4%k95wEWe)$ag|IQ1&0DBuY;a8x8DONA-T zO|FLvdXwruPd_ah%z_9OfQEg}Be;Z!{bc(!C!8_e|6CFY2LphxjJt^+ub(@P4CUxQ zu^?P0XIOIu_X&uoG&-8WFlZb2V${!Q$O(n}1Jd+sB*4P9qjPYSOs<>|KsLNvybt;V z^fU5~KjJI*?$0bymXb~AFLAw2&Z2omx|0CW0k*xn&E{SCON4ouYx}zAibg$mQf+lm8G!-_#n$n9d z#dvlcSm)v==bXi^cICKpYI?MEtv=wMspI>5P*20u-zOF#v<%xcrPV zG&cvM!F5ame}m)GhO8gWT9TmgT+ke=xQ}D~XxF4i=K#;!+eAY0K8C=!E%64(BXPI7iuQl|Ikrm9MwP`GXZou(g^4P^QFK4z6n{xYsVJU!Z>WjlTV%TJmjSOkfrmL?bk07YH!P33tlJL^_@lYlr> zC`ck7U`K^b0J|EmN84C940~pMKG&6BM1L;vOb>`Y5SS49<_@S)iuFvtY3$|rEZu<&==Sp89gaMcMRe*hce zSNZ)vPK*EVFV1h%uScx5Q(#zQF4S>t{@(2#;Ad?<3kQpwB*}=RSP}?lxlf}4SM`>v z+J#&NIUs=U@I5#GD;PUna(tRL!MfDT^Q<%;4-c47$aX#>OsHZE{mj()xN09I7b>k` zKmihDLa+(Y&q03$OsQih`Is(=;wuIaCI9hCv}oXJx7i=dh;w?8@LA~lMeL1P>NXB<}=#^eH4 z;RzL}TXO}8?27Mxam~px6$>!hxHsw{GJV~M((0REYff4Diaf3NMZ+#8$pcfk7ailN zIQ-O@pIojVDox^v2Y?Pg?Eui_{SAy`FiOUU{1Xom5% ztPQHdjc^d|ytzsOiblwTm$Wjmg1-IuvpkRoDAGui%&_%)k95Xt?cc)IZ(BVFYk-9C73T4oa2 zwRkUYf(*SBb$L5WA8nJBeFrIKR{UVXB6jjioN=TNTqsj?MU@tjrq+OF*6>)`0d4WY zV~U&LmEi^24l#EK**Qpb8SJ~kJX~=i48;Z`^j-v9$AWx2SbEF-|wZIj7CPYDGuG1dpHN&HL6G&V= zy8?A9l-Vtd7sHhzi48ujnBHw1$d$jS9QX4{60(&~SyWlcuUU{*LTZkWh%6A_&I5Lw zhynl|7y!x{0LnZ7R2Np%H9MpNTcUP9j)tTd$(6%rZ4UJ5J0hNnWBvD;3 zpp*w|Iurhc2qE3@eK0)lewFKdy#S>rQ8EOMt?Z$)2`OvkOOI`dZhQ;?a#tR~Rd@Eo zTt{K&k2w#ed{lYFWxSnSTiwV_xUtJ(1Lv6zfEw>XOZT2TZF zf_{cxu}GS8wYoP#dZB{^TMT{>f{c-|z+OL* zL~$QEwEitj53hoTiAKCfE((2gpdUgrfqq;VF*^yC4YFC6Pi|R3N#6N^*c|Eh-vmtT zConnPhu~Dv11>T5tfkj5eTHbSa??ZyxzYj?fRc$_#v(oZoPY$Kps^w(NC3G1c3l3q z)9SycyKl_P6R5OuXSCcE-??P^)Lyr#sZQg`FTosc{S(>^e!)d$84}(C1k_Ojs$p`# zBQ9P`0dxdEQi28#Dg%fo_tA6<_iq95Al#k=UmMA{=VbdLE$Ta0)@;<*c(E@0cbE)` zrgsHtWx}y)0VPL?Kb&}#tQ2Ty`K9%j$AJ9JVDVnI(<5_+S6NRG->m#TrxD7=Q4I?| zyd||EdJab*F#VZ{?CT8}@3K25A?s(UoZgyuy>6+^(9g?Ym*-k&)vKb)UpV^|z`{Ev zSziBSG#k&o&&Vhsf^;T;5&>$hMTT8E;|=%W-}Ej=+krdlN8{K!m`5nifiWP&uW zRabLFEerK27?9ioScKjMh2SPG#Gi!`pZ%Z80HXiQXlAl#0Du~(a8~wbn3Rw8sn0p5 z#p!%xLVphLJ~>59?2|1hQ&^!w&j!$NHWaWbvHc33I^5A%%p+Mmn4Z>lUzGa;^yih&f(ZK9Q%w7d&tU4&%z#RiNc*FqK&x7N zlAiOMt?y%#W9!GRE^|$wpSLcy4O=4UXjyr+V=|Sr_KURBWR=NGh`k9Qp~D2^fT=w? zi{ib;7G;6*^f`Ua2eE$czaT|k>zk|uD>Iu0O=v2HJAWjbf5eOb-(mK@Zod8>tAGEO z_3!`te)hkeHh%yN3TQ#O=|TC)Z^1wvuq36PRKTE+h7$5oemVVEZX9O^nQCy}f!8v> zR?5=};hV(;`m^$`tKLH^vP$8x$%d4Q#3$N=NkpVX>hNu7aHaaXvkkObHLK>^m!pD# z0o4Q1Ypt;KnnT2#H5zpCL99D%1eY+|K>%w#;EAe!e!el8ufBBw!K?a;%!#pk%p0QG3Tv%*&x|=o?cG6c`k>jHT$!n zX7a&-?v=av1L5B(5s$fe7L$oBwg+YZsbNj5v z>Nc+p^I(5bz7dlglp_?o$nWpDuMy6Kf+cvkUj1-+kVl_1&Ka; z2FnSv|GA(J$v5S`ooxRteE3W9&SL-&z?XT(I`sSaYjED+Dfhtn8djQ)g5H1WJwknWAqABpk1<-N50S5nj?Z6;nwWcEIC}ZdH>4JU&Z}I6 z>7GrXlk>TtTYxNEeSS^5j5$z&0rnk11y;$I^htulpc{NcNwlAjC}Cp;)5()|X~=H^ z45%1eU5iia`_f@E?lmwJ_qe~!GCQ{+vJ^L+n^@p!)|Bd*MNs;Y4yCm51 z+05MN%csM91`I@7x+Kf2x>*vCOpgO}1BA3f)K3ot02OTj(D4xf2>IpWxpUXEsUVaX zU;{Zd9JktFdtY~0C_gfSS*IuqYn;AjI|hvnnPsn=F+kSM+#mP654H;xlCY`DvKRB< ze6&K&=#SK{?@jy>hst?iQ@tAqD{PULjH6t0aUzby4dmkV=3Al?ujJxqNK_aXu>#LP zSwBu?qR}+)T16bn-no<(uNTd|kMGYjfuX8Ffx;lw+Yz>72ci`trafN%x6Rl8bN)a6 z=jdPm^Wq=>*VE>oHih^AgLBn01*lLf5|s7^fG$u7A5PW&PkvP|uIZpFY5NOaU{bZ? zwHM%JJ^8ESB&x?+VaIz6Ez|uMC8F)VoQXFZBXP$?SwhL&yYSF15Ic9FqVF?Mfqs}+ zvfv39^pqj#+aBjBaU5OD5~~~5*}}cEQ~noTAV)C*D)GF2^j+tBk+rBD|#6hAf4uH z&&lMw_gE?*{cX5KXBepLa-aR)U=(t9;11h`q=yOe*XEp00Yw-CKvRTCC%WffC#eb1 zgYo(?hQ{(0FbX(giUAFP36lGUJh16{L=`PmZ2qxjXy$C&HdRJ)ftKF$mf$5c58^2Y zWGn14FK4?6nTaF~r(}1AMSaQ9DwX`#iPA&5u|&^e_T;wKHwa1S1=KpYZQB6@D*tb4 z;u+1);(6fP6#_t$Wb;R!?OW`79sq#A1msTXJ{pTiQ^~|y2t-6RMP71X&10IRsRn5~ z-;@rs|8kgkajjs^6s}^grTxpm1(89`hmYkVYXU|t<~l*KuY^%R`nFOlMjzn!4C0R! zzDx)`jMJ-+f&Or7b6Qq`3|3AhZ-4z$hZyR(kv-i;!!dKC(9cXZhuF&$q-PP-Oa@37 z1}+~B1Km1b@{SQ&&w+sgxTmfq%Bql1EvY?czN*+Q9~a5?PjmP(``;AnR&K>Jnj1%RTL7%)( zW^Z{?uB)7p``AYM4FUWcVX7m#p1lK!sez#-k3C5-DD91S7^4&h_a~lkojo=TEG>jL z8#=zY6BY4Wy0@Xr`0GJ@a|Au*Fd*r04j${I_MJnC^c#s+>H44&Sh+ zDX8Rvt(g4Gyu)!LSzytiZASB0LMy^BTm4aS872_&yo{=16QoQO5N#L`#~2-%!gH5n zD~Dl;N9mw=2k;ckLqb#Ud4c55}&cary(EE+-M|H_LXOta{cn7vyXw4 zoEjbEZw9QEHI-8PAFYup#l0a0&?o?qxCnu*dDn2B_Yeo{lHL&Fub-;n)MdJg$xf^C zBO@F5>jEijR#gK^X5+kh{wnJq05nxT-H1c6`IieOUAaKA|%QbPDV0^?)Fil_Rg_aPRn2w~SZ$bz1Ct9FYYAj9 zQyo?^1mx-by}WIWOw>;t>31xIQ@u|%e;gM7wcLOzYe=kEiEk|Wmweont!6`F_3~RK|jb(p}sZYB3w^X1abVz`T~yvFJ{uR=cx?v%$>xto-0 z>9oodh`iXJ3t~(!$*d_cFJD=#?4A?H_DKk0!r;ytIME7iJgwgHX`%-TtQ-VaiN`Ho zt2|L=5Z=MEut^KzfSqH|1z&amIbU;IUF8mitxa zO}OXJ>W>=&C7Q-BH`q=2DgJQpzXz!QxgyU05|o~)KfeYqd5vcDv>iV)0S z@Bu>Hc{futAPGnsl?S9r3rSntkI?}GhvMCFNi9vcVy6)v*s{b4A^_3ed~Yd{fXJVC z)(3gHC{ZeA;F$|s_Hu8Br1M3~CN3k;xt z<<}%&cY>;FEk9HBneE+uQIW7<`VZWBrZkm}LvD3L50jl%DRX}gq4SYxA64=mva~Wm ziC)tW3urEMnDfx|oLtc#q$nI;w$2IU+IaI6Z&~o>vachLpRE8u(Qq~e*PFwE%93=) zS+Q0O(Wllc*WUTcvls6v_m2kSR^!@4AjW5>?aW-EpDEN{GpN0Mtjg8QrtGZ&pc^f! zKs*ZNV8We+G2+s>V=lD`Ug$)Ur78D+s-U)rX}|Qc*ww8qC@B2EuR>nVsU~i4s(}>@ z>$CKgoZSf*vBu9jWW5l734LU#z8ok8R<8X49>2gKsVa3RExB zWCK+Bx6P!gU+>C>Xu?)5G&1O2w_^Q^j0Up0gs6(GQaA@8h}qK@(iu<$n4zE_3?z(_%OKukqr4FKY{a{tH<&2|Sp~kMPaq&geWq85T*i_i{f=Wk1c- zhp5#820be3!qZHv_Szw2-Wv2Fp4#3UE%P8n@CbJWW-?w*AjqP9LzS56}Cl_l93(>dNGFVYz0sY3BOA-Ak|Q@h0Okp~Eze_{1vy%qc~T z0o83>bW0`Da-!Spz?1usuGH|Rr~E{T8-p-*?R^Ur|^L$cU2Ql(*2hM zfT;Fm@ZEC(ZtrR8hBi{ha6keQKOIF~2M~f;Zw3Sms2DHKj4_~`h@3erEiWejl_w6R z)lxV7yGTGWJB1I}UfS^bcUpC4tMZ076Z#K~exlqQDy*Nk zwL`vKT6xPJsL9tZMja>*j7rI+beX3S4B8QYq;0t23qlg?38U>y&y;USsQUv8w(@_` zZcJwU@wD-U|4V-Xe~15O_;bGXr+xF^(Z8ubLEyQWm+4h*+)T9*XnE2Vo36672zD8J z{k$iIx{@3pU;Y!jAA*XS zac@m=Y13{h@DQ?7$3&0ca`HAIL4L0Iamlu7Lq9$MsgzRD1A%*y6V(ypqsT@D1-0 zP0%fdK6I$iwBRSNo$#|`4xLz##x=hc(+2<&o13zv6CM!q8Tv3dEZgELWWRv<_vzh3 zh^XXP%f9OK)Y^pY8DYEouXO*dyQ|M7D68{y_wUQ){V)JzU^_Kya%=AR&#|JCO@X=* zt;HAZX;S`O;#>jxbNH#+rC&LuSp22%<uZd#&& zhk6W;88Z@2q1iJ-KZ}s{(*pgxqia=@!Yd6(H1J&^Zp&K7OOe=wQId7Jau8{MDl6@& zmDfyPYG8VDJSl~T1lhqiq0zYOl_Xx=WsWa`@i}LCPb6#m0F*#q^nLuD$)A7o-%+$E zc!dyB9Q>h7H@^(N!tC-ljD~;XC*zbk;%hwNTtYUP;m8`mVJms(lCF;YaX=aT6VL_E zoiU39`>+>>PxX;!Q~xiU00=$>8VZplfQu2neXZdc^?H}(605vwxSY+(r z17S8_Us?wwJUJB(<>JsEI<6+_yF8U(LTakhCSt<hX)@4MG8$*b@rOo#i3jlLZ<*4!UKN7!z!} z%FVj|pjA5%F8kCsv1&HqFd&t;unMN>cVSk)l*OZrjB-1+tYaU>i*azL1MxahtHq~0 zt!EaAh$N?bGmO9>D$U6;1P7-8Kx{7^&)5y5$h%kkM@AL(evN?vc^D`UD)mc7!(H4W zY7RvRHcFz|r4~#A`@m#Lnm7)uw59sv4v$!Bq>thhJ|rqvzIi<6N&?z-Iy4y88mha&WuRI`S7TC^rT=J^Co>~Brx5a=se~ne@A%b?9ZqDMtefdzQyFYc!_>@)7 z$+~Q-le_CNJ3g*8mcDQIor? z&9Hb8;umj@yH#@580KD$tocf;c7j#Ff;mT_*H6~WMSWY<0`~brQiFF$i4h)g<}zU_ zfY;1H7~)u3c0Ejz6@+4~QZGolM7I@R2(nm<;D-&$i-CCsNxBY1pDEjINvc@{mhf}c z+)acCQl3+Qd;IG-(eEdj5{NF4AaIKgKPkE3ee+=_q#>GgPUQQ;4}V3zWcjcVq*Z=u z;O6CKwJgkvJMNqTAmlYu4Mr~^p6BKNO&0o}fo#x|lIDR*hHa$gKzV)y#!?gsuW#pX zm@(Fti0iR|@o{-0-dO?$BAM99=-Q-yj0a7@y~ zr07USxQ3Big?okdP~YO^;YoJi`}zNVT>ay;{(~r9q4f`0QBIk$7IX+BZVmJdCzur{ z(Q7lm;E}e}tLJE?*+q7pIGFMXf(q7mF0aMeXJf_rKcp8<9UQ4TsSgS)>p^!yxwfi$ zOH*9V#TncnrMz@8)VvP?(X{xh@u7I89c3aKN-s-%N0OIBFjDQNa$wLCv3j`>vei34 zc&bzN#2LF{utNMk^)NK0Zt%EJ1`xeSkw>n0CWDEUiRb-DOu5`s1@#7h-fczEou`#i z?VXFkRxqYB*(&97(yz|L=jQmtZifNo(hWMsTzxof>E=QR)*t7xLdo7?c$x&!F=tZwR@e~Q`>>_Q%X#q zFGK1-7mG{1V!Hi}!PTjDNjd4lB5d(4RUl`*&G77-J60)X21|}sFdFmPbS}`8t{wf! z+VWnV_{-h#*T|7%gvQgyf$fLb*;;y@)AB{m)(ORZ@Xml~&4=C@2%Z z&gyO%lmSbyc$WOKn22-KPo}VjvZBD53g}BfJQ!n|`OEH7o+Sc^Lz&%u5hV>?6MaoJ z07TdZ+<5+ayUv+}Y6oSME!C}^KMdhMIskWz!;1V0T}LJgzzG~-H=5~wuZh}~hf|E5 zA_rbruOhJ_h(ndreiASL`)U1;boX6vfSD!@>z^ulcr>7zlC#CMrDuUV{5#2OAB6HNBBYKo08 zH@pl9;ob5^Z*VcszU9y-j_UX&J1Ygg(ZT$d_}D9PgC>(>_D`W27q~l(Pe)}4KQ#Yj zXDAp0jh$W*5(EeX>IxH>ELoFlcq~FN1%PBot{8VOw0f@&yCXr>)l_(LU(&?AVdnXk z9W)34A_4M9hR}Li5e5`11~d-{o^>#kO%`c3)$@+Pt}bHg&5&*&=N#$6aw2q2(dI{< zQuFcw-V7cz7L0=p)Q?XAKQeXJV@sgbo2P@}Y+dlE?A**gR&$(Vl%06JxUC(rsXQJ65oY=utbcJUXXKa}{+6W~b;O|LGlDcoGj75ZlTnxi4x zXJa8ybOac!US6TM;vwrYNc&p7Cg{h02=v1= za8LXh+HR?hYP1l}yBB{glzEW7{naz7v!N7o_Nh=g^CDBB7JbibbUcQZqhQpZ^c;F8 zx6Rn9(t(1)uWb=xK+Z&&;HOymA1hV>U?Z9V*

?gd#^6-y!H{4(S=|!Zu?6Y{fWL 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 z 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Ⓢ#6CAGg| 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

  • %i6mzU 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 literal 0 HcmV?d00001 diff --git a/domains-frontend/src/assets/bg.webp b/domains-frontend/src/assets/bg.webp new file mode 100644 index 0000000000000000000000000000000000000000..231b1ef8f01dd1b6e84a758a2b211c866268c97d GIT binary patch literal 14062 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 literal 0 HcmV?d00001 diff --git a/domains-frontend/src/common/atoms.ts b/domains-frontend/src/common/atoms.ts new file mode 100644 index 0000000..4593bda --- /dev/null +++ b/domains-frontend/src/common/atoms.ts @@ -0,0 +1,2 @@ +export const $ok = Symbol('Ok'); +export const $error = Symbol('Error'); diff --git a/domains-frontend/src/components/AppLink.tsx b/domains-frontend/src/components/AppLink.tsx new file mode 100644 index 0000000..a9f44a4 --- /dev/null +++ b/domains-frontend/src/components/AppLink.tsx @@ -0,0 +1,22 @@ +import { Link } from '@chakra-ui/react'; +import React, { type MouseEvent, type ReactNode } from 'react'; +import { useNavigate, type NavigateOptions } from 'react-router'; + +type Props = { + children: ReactNode; + to: string; + options?: NavigateOptions; +}; + +const AppLink = (props: Props) => { + const navigate = useNavigate(); + const handleClick = (e: MouseEvent) => { + e.preventDefault(); + + navigate(props.to, props.options); + }; + + return {props.children}; +}; + +export default AppLink; diff --git a/domains-frontend/src/components/DateText.tsx b/domains-frontend/src/components/DateText.tsx new file mode 100644 index 0000000..30afb5b --- /dev/null +++ b/domains-frontend/src/components/DateText.tsx @@ -0,0 +1,23 @@ +import { Text } from '@chakra-ui/react'; +import type { Dayjs } from 'dayjs'; +import dayjs from 'dayjs'; +import React, { type JSX } from 'react'; + +type Props = { + children: string | Date | Dayjs; + as?: string | (() => JSX.Element); +}; + +const DateText = (props: Props) => { + const date = dayjs(props.children); + const format = dayjs().year() === date.year() ? 'DD MMMM' : 'DD MMM YYYY'; + const dateText = date.locale('ru').format(format); + + if (props.as) { + return React.createElement(props.as, null, dateText); + } + + return {dateText}; +}; + +export default DateText; diff --git a/domains-frontend/src/components/admin/zones/CreateZoneDialog.tsx b/domains-frontend/src/components/admin/zones/CreateZoneDialog.tsx new file mode 100644 index 0000000..534526e --- /dev/null +++ b/domains-frontend/src/components/admin/zones/CreateZoneDialog.tsx @@ -0,0 +1,122 @@ +import { Button, Field, Input, Stack, Text } from '@chakra-ui/react'; +import { + DialogBackdrop, + DialogBody, + DialogCloseTrigger, + DialogContent, + DialogFooter, + DialogHeader, + DialogPositioner, + DialogRoot, + DialogTitle, + DialogTrigger, +} from '@chakra-ui/react'; +import { useState, type FormEvent } from 'react'; +import { createZone } from '~/api/services/domain-order'; + +type Props = { + onCreated?: () => void | Promise; +}; + +const CreateZoneDialog = ({ onCreated }: Props) => { + const [isCreating, setIsCreating] = useState(false); + const [createError, setCreateError] = useState(''); + const [zoneName, setZoneName] = useState(''); + const [zonePrice, setZonePrice] = useState(''); + + const handleCreateZone = async (event: FormEvent) => { + event.preventDefault(); + const name = zoneName.trim(); + const price = Number(zonePrice); + + if (!name || Number.isNaN(price)) { + setCreateError('Введие корректное имя и(или) цену.'); + return; + } + + setIsCreating(true); + setCreateError(''); + + try { + await createZone({ name, price }); + setZoneName(''); + setZonePrice(''); + if (onCreated) { + await onCreated(); + } + } catch { + setCreateError('Не удалось создать зону. Попробуйте снова'); + } finally { + setIsCreating(false); + } + }; + + const isSubmitDisabled = + isCreating || + !zoneName.trim() || + !zonePrice.trim() || + Number.isNaN(Number(zonePrice)); + + return ( + + + + + + + + + Создать зону + + +

    + + + Название зоны + setZoneName(event.target.value)} + /> + + + Цена + setZonePrice(event.target.value)} + /> + + {createError && ( + + {createError} + + )} + + + + + + + + + + + + + ); +}; + +export default CreateZoneDialog; diff --git a/domains-frontend/src/components/admin/zones/ManageZoneDialog.tsx b/domains-frontend/src/components/admin/zones/ManageZoneDialog.tsx new file mode 100644 index 0000000..326ebce --- /dev/null +++ b/domains-frontend/src/components/admin/zones/ManageZoneDialog.tsx @@ -0,0 +1,154 @@ +import { Button, Field, Input, Stack, Text } from '@chakra-ui/react'; +import { + DialogBackdrop, + DialogBody, + DialogCloseTrigger, + DialogContent, + DialogFooter, + DialogHeader, + DialogPositioner, + DialogRoot, + DialogTitle, + DialogTrigger, +} from '@chakra-ui/react'; +import { useEffect, useState, type FormEvent } from 'react'; +import type { Zone } from '~/api/models/domain-order'; +import { deleteZone, updateZone } from '~/api/services/domain-order'; + +type Props = { + zone: Zone; + onUpdated?: () => void | Promise; +}; + +const ManageZoneDialog = ({ zone, onUpdated }: Props) => { + const [price, setPrice] = useState(''); + const [isSaving, setIsSaving] = useState(false); + const [isDeleting, setIsDeleting] = useState(false); + const [error, setError] = useState(''); + + useEffect(() => { + setPrice(zone.price === undefined ? '' : String(zone.price)); + setError(''); + }, [zone.id, zone.price]); + + const handleSave = async (event: FormEvent) => { + event.preventDefault(); + + if (!zone.id) { + setError('Зона не найдена.'); + return; + } + + const nextPrice = Number(price); + if (Number.isNaN(nextPrice)) { + setError('Введите корректную цену.'); + return; + } + + setIsSaving(true); + setError(''); + + try { + await updateZone(zone.id, { price: nextPrice }); + if (onUpdated) { + await onUpdated(); + } + } catch { + setError('Не удалось обновить зону. Попробуйте снова.'); + } finally { + setIsSaving(false); + } + }; + + const handleDelete = async () => { + if (!zone.id) { + setError('Зона не найдена.'); + return; + } + + setIsDeleting(true); + setError(''); + + try { + await deleteZone(zone.id); + if (onUpdated) { + await onUpdated(); + } + } catch { + setError('Не удалось удалить зону. Попробуйте снова.'); + } finally { + setIsDeleting(false); + } + }; + + const isSubmitDisabled = + isSaving || isDeleting || !price.trim() || Number.isNaN(Number(price)); + const formId = `manage-zone-form-${zone.id ?? zone.name ?? 'zone'}`; + + return ( + + + + + + + + + Управление зоной + + +
    + + + Зона + {zone.name ?? '-'} + + + Цена + setPrice(event.target.value)} + /> + + {error && ( + + {error} + + )} + +
    +
    + + + + + + + +
    +
    +
    + ); +}; + +export default ManageZoneDialog; diff --git a/domains-frontend/src/components/app/profile/ChangePassword.tsx b/domains-frontend/src/components/app/profile/ChangePassword.tsx new file mode 100644 index 0000000..8884d39 --- /dev/null +++ b/domains-frontend/src/components/app/profile/ChangePassword.tsx @@ -0,0 +1,103 @@ +import { Button, Field, Input, Stack, Text } from '@chakra-ui/react'; +import { + DialogActionTrigger, + DialogBackdrop, + DialogBody, + DialogCloseTrigger, + DialogContent, + DialogFooter, + DialogHeader, + DialogPositioner, + DialogRoot, + DialogTitle, + DialogTrigger, +} from '@chakra-ui/react'; +import { useState, type FormEvent } from 'react'; + +const ChangePassword = () => { + const [currentPassword, setCurrentPassword] = useState(''); + const [newPassword, setNewPassword] = useState(''); + const [confirmPassword, setConfirmPassword] = useState(''); + + const isMismatch = + newPassword.length > 0 && + confirmPassword.length > 0 && + newPassword !== confirmPassword; + + const isSubmitDisabled = + !currentPassword || !newPassword || !confirmPassword || isMismatch; + + const handleSubmit = (e: FormEvent) => { + e.preventDefault(); + }; + + return ( + + + + + + + + + Смена пароля + + +
    + + + Текущий пароль + setCurrentPassword(e.target.value)} + /> + + + Новый пароль + setNewPassword(e.target.value)} + /> + + + Повторите новый пароль + setConfirmPassword(e.target.value)} + /> + + {isMismatch && ( + + Пароли не совпадают + + )} + +
    +
    + + + + + + + + +
    +
    +
    + ); +}; + +export default ChangePassword; diff --git a/domains-frontend/src/components/app/profile/EnableTwoFactorDialog.tsx b/domains-frontend/src/components/app/profile/EnableTwoFactorDialog.tsx new file mode 100644 index 0000000..6dfd630 --- /dev/null +++ b/domains-frontend/src/components/app/profile/EnableTwoFactorDialog.tsx @@ -0,0 +1,152 @@ +import { Button, Field, Input, Stack, Text } from '@chakra-ui/react'; +import { + DialogBackdrop, + DialogBody, + DialogCloseTrigger, + DialogContent, + DialogFooter, + DialogHeader, + DialogPositioner, + DialogRoot, + DialogTitle, + DialogTrigger, +} from '@chakra-ui/react'; +import { useState, type FormEvent } from 'react'; +import type { TwoFactorSetupResponse } from '~/api/models/auth'; +import { enable2FA, generateSetup } from '~/api/services/auth'; + +type Props = { + onEnabled?: () => void | Promise; +}; + +const EnableTwoFactorDialog = ({ onEnabled }: Props) => { + const [setup, setSetup] = useState(null); + const [code, setCode] = useState(''); + const [isLoadingSetup, setIsLoadingSetup] = useState(false); + const [isEnabling, setIsEnabling] = useState(false); + const [error, setError] = useState(''); + const [success, setSuccess] = useState(''); + + const handleOpen = async () => { + setError(''); + setSuccess(''); + if (setup || isLoadingSetup) return; + + setIsLoadingSetup(true); + try { + const response = await generateSetup(); + setSetup(response?.data ?? null); + } catch { + setError('Не удалось получить настройки 2FA. Попробуйте еще раз.'); + } finally { + setIsLoadingSetup(false); + } + }; + + const handleEnable = async (event: FormEvent) => { + event.preventDefault(); + setError(''); + setSuccess(''); + + const secret = setup?.secret ?? setup?.manualEntryKey; + if (!secret) { + setError('Настройки 2FA не найдены. Попробуйте еще раз.'); + return; + } + + if (!code.trim()) { + setError('Введите корректный код.'); + return; + } + + setIsEnabling(true); + try { + await enable2FA({ secret, code: code.trim() }); + setSuccess('Двухфакторная аутентификация включена.'); + setCode(''); + if (onEnabled) { + await onEnabled(); + } + } catch { + setError('Не удалось включить 2FA. Попробуйте еще раз.'); + } finally { + setIsEnabling(false); + } + }; + + const isSubmitDisabled = isEnabling || !code.trim() || isLoadingSetup; + + return ( + + + + + + + + + Включить 2FA + + +
    + + {isLoadingSetup ? ( + Загрузка настроек... + ) : ( + <> + {setup?.qrCodeUrl && ( + 2FA QR code + )} + + Ключ настройки + + + + Код + setCode(event.target.value)} + /> + + + )} + {error && ( + + {error} + + )} + {success && ( + + {success} + + )} + +
    +
    + + + + + + +
    +
    +
    + ); +}; + +export default EnableTwoFactorDialog; diff --git a/domains-frontend/src/components/dashboard/DomainList.tsx b/domains-frontend/src/components/dashboard/DomainList.tsx new file mode 100644 index 0000000..a0ed656 --- /dev/null +++ b/domains-frontend/src/components/dashboard/DomainList.tsx @@ -0,0 +1,48 @@ +import React from 'react'; +import type { DomainResponse } from '../../api/models'; +import { Button, Grid, GridItem, HStack, Stack, Text } from '@chakra-ui/react'; +import DateText from '../DateText'; +import { ArrowRight } from 'lucide-react'; + +type Props = { + domains: DomainResponse[]; +}; + +const DomainList = (props: Props) => { + return ( + + {props.domains.map((domain) => ( + + + {domain.fqdn} + + + + до {domain.expiresAt} + + + + + + + + + + ))} + + ); +}; + +export default DomainList; diff --git a/domains-frontend/src/components/dashboard/EventList.tsx b/domains-frontend/src/components/dashboard/EventList.tsx new file mode 100644 index 0000000..0c015aa --- /dev/null +++ b/domains-frontend/src/components/dashboard/EventList.tsx @@ -0,0 +1,53 @@ +import React from 'react'; +import type { DomainResponse } from '../../api/models'; +import { + Badge, + Button, + Grid, + GridItem, + HStack, + Stack, + Text, +} from '@chakra-ui/react'; +import DateText from '../DateText'; +import { ArrowRight, Proportions } from 'lucide-react'; +import type { Dayjs } from 'dayjs'; + +type Props = { + events: { + id: string; + type: 'SYSTEM' | 'USER'; + message: string; + at: string | Date | Dayjs; + }[]; +}; + +const EventList = (props: Props) => { + return ( + + {props.events.map((event) => ( + + + + {event.type === 'SYSTEM' ? 'Система' : 'Пользователь'} + + + {event.message} + + {event.at} + + + ))} + + ); +}; + +export default EventList; diff --git a/domains-frontend/src/components/domainsTable/DomainRow.tsx b/domains-frontend/src/components/domainsTable/DomainRow.tsx new file mode 100644 index 0000000..45adbff --- /dev/null +++ b/domains-frontend/src/components/domainsTable/DomainRow.tsx @@ -0,0 +1,29 @@ +import type { ReactNode } from 'react'; +import type { DomainQuery } from '../../api/models/DomainQuery'; +import { Button, Table, Text } from '@chakra-ui/react'; + +type Props = { + domain: DomainQuery; + buttonsFunction?: (domain: DomainQuery) => ReactNode; +}; + +const DomainRow = (props: Props) => { + const { domain, buttonsFunction } = props; + return ( + + {domain.fqdn} + {domain.price}₽ / месяц + + {buttonsFunction ? ( + buttonsFunction(domain) + ) : domain.free ? ( + + ) : ( + Домен занят + )} + + + ); +}; + +export default DomainRow; diff --git a/domains-frontend/src/components/domainsTable/DomainsTable.tsx b/domains-frontend/src/components/domainsTable/DomainsTable.tsx new file mode 100644 index 0000000..3901c0c --- /dev/null +++ b/domains-frontend/src/components/domainsTable/DomainsTable.tsx @@ -0,0 +1,39 @@ +import { Table } from '@chakra-ui/react'; +import React, { type ReactNode } from 'react'; +import type { DomainQuery } from '~/api/models/DomainQuery'; +import DomainRow from './DomainRow'; + +type Props = { + domains: DomainQuery[]; + buttonsFunction?: (domain: DomainQuery) => ReactNode; +}; + +const DomainsTable = (props: Props) => { + return ( + + + + + + Домен + + + Цена + + + + + + {props.domains.map((domain) => ( + + ))} + + + ); +}; + +export default DomainsTable; diff --git a/domains-frontend/src/components/layouts/AdminLayout.tsx b/domains-frontend/src/components/layouts/AdminLayout.tsx new file mode 100644 index 0000000..093904f --- /dev/null +++ b/domains-frontend/src/components/layouts/AdminLayout.tsx @@ -0,0 +1,123 @@ +import { + Box, + Grid, + GridItem, + Heading, + HStack, + Spinner, + Stack, +} from '@chakra-ui/react'; +import { useEffect, useLayoutEffect, useRef, useState } from 'react'; +import AppLink from '../AppLink'; +import { Outlet, useNavigate } from 'react-router'; +import { refreshToken as apiRefreshToken } from '~/api/services/auth'; +import { getAccessToken, getRefreshToken, setTokens } from '~/utils/authTokens'; + +const AdminLayout = () => { + const navigate = useNavigate(); + const [isAuthReady, setIsAuthReady] = useState(false); + const headerRef = useRef(null); + const navRef = useRef(null); + + useEffect(() => { + let isActive = true; + + const ensureAuth = async () => { + const accessToken = getAccessToken(); + if (accessToken) { + setIsAuthReady(true); + return; + } + + const refreshToken = getRefreshToken(); + if (!refreshToken) { + navigate('/'); + setIsAuthReady(true); + return; + } + + try { + const response = await apiRefreshToken({ refreshToken }); + const nextAccessToken = response?.data?.accessToken; + const nextRefreshToken = response?.data?.refreshToken ?? refreshToken; + + if (!nextAccessToken) { + navigate('/'); + setIsAuthReady(true); + return; + } + + setTokens({ access: nextAccessToken, refresh: nextRefreshToken }); + setIsAuthReady(true); + } catch { + if (isActive) { + navigate('/'); + } + setIsAuthReady(true); + } + }; + + ensureAuth(); + + return () => { + isActive = false; + }; + }, [navigate]); + + useLayoutEffect(() => { + if (navRef.current?.style.width) + navRef.current.style.width = headerRef.current?.offsetWidth + ? `${headerRef.current?.offsetWidth}px` + : 'auto'; + }, []); + + if (!isAuthReady) { + return ( + + + + ); + } + + return ( + + + + Хрофорс Домены + + + + + администратор + + + + + Домены + Пользователи + Финансы + События + Зоны + + + + + + + + + ); +}; + +export default AdminLayout; diff --git a/domains-frontend/src/components/layouts/AppLayout.tsx b/domains-frontend/src/components/layouts/AppLayout.tsx new file mode 100644 index 0000000..1dac9a3 --- /dev/null +++ b/domains-frontend/src/components/layouts/AppLayout.tsx @@ -0,0 +1,118 @@ +import { + Box, + Grid, + GridItem, + Heading, + HStack, + Spinner, + Stack, + Text, +} from '@chakra-ui/react'; +import { useEffect, useState } from 'react'; +import AppLink from '../AppLink'; +import { Outlet, useNavigate } from 'react-router'; +import { getAccessToken, getRefreshToken, setTokens } from '~/utils/authTokens'; +import { refreshToken as apiRefreshToken } from '~/api/services/auth'; +import { useStores } from '~/store'; + +const AppLayout = () => { + const navigate = useNavigate(); + const [isAuthReady, setIsAuthReady] = useState(false); + const { userStore } = useStores(); + const { fetchMe } = userStore; + + useEffect(() => { + let isActive = true; + + const ensureAuth = async () => { + const accessToken = getAccessToken(); + if (accessToken) { + setIsAuthReady(true); + return; + } + + const refreshToken = getRefreshToken(); + if (!refreshToken) { + navigate('/'); + setIsAuthReady(true); + return; + } + + try { + const response = await apiRefreshToken({ refreshToken }); + const nextAccessToken = response?.data?.accessToken; + const nextRefreshToken = response?.data?.refreshToken ?? refreshToken; + + if (!nextAccessToken) { + navigate('/'); + setIsAuthReady(true); + return; + } + + setTokens({ access: nextAccessToken, refresh: nextRefreshToken }); + fetchMe(); + setIsAuthReady(true); + } catch { + if (isActive) { + navigate('/'); + } + setIsAuthReady(true); + } + }; + + ensureAuth(); + + return () => { + isActive = false; + }; + }, [navigate]); + + if (!isAuthReady) { + return ( + + + + ); + } + + return ( + + + + Хрофорс Домены + + + + + пользователь + + + + + Домены + DNS + Корзина + События + + + + + + + + + ); +}; + +export default AppLayout; diff --git a/domains-frontend/src/components/layouts/AuthLayout.tsx b/domains-frontend/src/components/layouts/AuthLayout.tsx new file mode 100644 index 0000000..3ae4831 --- /dev/null +++ b/domains-frontend/src/components/layouts/AuthLayout.tsx @@ -0,0 +1,19 @@ +import { Stack } from '@chakra-ui/react'; +import { Outlet } from 'react-router'; + +const AuthLayout = () => { + return ( + + + + + + ); +}; + +export default AuthLayout; diff --git a/domains-frontend/src/components/layouts/Layout.tsx b/domains-frontend/src/components/layouts/Layout.tsx new file mode 100644 index 0000000..2f8d2ee --- /dev/null +++ b/domains-frontend/src/components/layouts/Layout.tsx @@ -0,0 +1,18 @@ +import { Provider } from '../ui/provider.tsx'; +import { Outlet } from 'react-router'; +import { Toaster } from '../ui/toaster.tsx'; +import 'dayjs/locale/ru'; +import { StoreProvider } from '~/store/index.tsx'; + +const Layout = () => { + return ( + + + + + + + ); +}; + +export default Layout; diff --git a/domains-frontend/src/components/layouts/PublicLayout.tsx b/domains-frontend/src/components/layouts/PublicLayout.tsx new file mode 100644 index 0000000..30bbfac --- /dev/null +++ b/domains-frontend/src/components/layouts/PublicLayout.tsx @@ -0,0 +1,37 @@ +import { Button, Heading, HStack, Stack } from '@chakra-ui/react'; +import { Outlet, useNavigate } from 'react-router'; +import AppLink from '../AppLink'; + +const PublicLayout = () => { + const navigate = useNavigate(); + + return ( + + + + Хрофорс Домены + + + + + + Контакты + Политика конфиденциальности + Правила использования + + + ); +}; + +export default PublicLayout; diff --git a/domains-frontend/src/components/ui/color-mode.tsx b/domains-frontend/src/components/ui/color-mode.tsx new file mode 100644 index 0000000..b1dd9f5 --- /dev/null +++ b/domains-frontend/src/components/ui/color-mode.tsx @@ -0,0 +1,108 @@ +'use client'; + +import type { IconButtonProps, SpanProps } from '@chakra-ui/react'; +import { ClientOnly, IconButton, Skeleton, Span } from '@chakra-ui/react'; +import { ThemeProvider, useTheme } from 'next-themes'; +import type { ThemeProviderProps } from 'next-themes'; +import * as React from 'react'; +import { LuMoon, LuSun } from 'react-icons/lu'; + +export interface ColorModeProviderProps extends ThemeProviderProps {} + +export function ColorModeProvider(props: ColorModeProviderProps) { + return ( + + ); +} + +export type ColorMode = 'light' | 'dark'; + +export interface UseColorModeReturn { + colorMode: ColorMode; + setColorMode: (colorMode: ColorMode) => void; + toggleColorMode: () => void; +} + +export function useColorMode(): UseColorModeReturn { + const { resolvedTheme, setTheme, forcedTheme } = useTheme(); + const colorMode = forcedTheme || resolvedTheme; + const toggleColorMode = () => { + setTheme(resolvedTheme === 'dark' ? 'light' : 'dark'); + }; + return { + colorMode: colorMode as ColorMode, + setColorMode: setTheme, + toggleColorMode, + }; +} + +export function useColorModeValue(light: T, dark: T) { + const { colorMode } = useColorMode(); + return colorMode === 'dark' ? dark : light; +} + +export function ColorModeIcon() { + const { colorMode } = useColorMode(); + return colorMode === 'dark' ? : ; +} + +interface ColorModeButtonProps extends Omit {} + +export const ColorModeButton = React.forwardRef< + HTMLButtonElement, + ColorModeButtonProps +>(function ColorModeButton(props, ref) { + const { toggleColorMode } = useColorMode(); + return ( + }> + + + + + ); +}); + +export const LightMode = React.forwardRef( + function LightMode(props, ref) { + return ( + + ); + } +); + +export const DarkMode = React.forwardRef( + function DarkMode(props, ref) { + return ( + + ); + } +); diff --git a/domains-frontend/src/components/ui/provider.tsx b/domains-frontend/src/components/ui/provider.tsx new file mode 100644 index 0000000..e3e4f2c --- /dev/null +++ b/domains-frontend/src/components/ui/provider.tsx @@ -0,0 +1,13 @@ +'use client'; + +import { ChakraProvider } from '@chakra-ui/react'; +import { ColorModeProvider, type ColorModeProviderProps } from './color-mode'; +import { system } from '../../theme'; + +export function Provider(props: ColorModeProviderProps) { + return ( + + + + ); +} diff --git a/domains-frontend/src/components/ui/toaster.tsx b/domains-frontend/src/components/ui/toaster.tsx new file mode 100644 index 0000000..8032ce7 --- /dev/null +++ b/domains-frontend/src/components/ui/toaster.tsx @@ -0,0 +1,43 @@ +'use client'; + +import { + Toaster as ChakraToaster, + Portal, + Spinner, + Stack, + Toast, + createToaster, +} from '@chakra-ui/react'; + +export const toaster = createToaster({ + placement: 'bottom-end', + pauseOnPageIdle: true, +}); + +export const Toaster = () => { + return ( + + + {(toast) => ( + + {toast.type === 'loading' ? ( + + ) : ( + + )} + + {toast.title && {toast.title}} + {toast.description && ( + {toast.description} + )} + + {toast.action && ( + {toast.action.label} + )} + {toast.closable && } + + )} + + + ); +}; diff --git a/domains-frontend/src/components/ui/tooltip.tsx b/domains-frontend/src/components/ui/tooltip.tsx new file mode 100644 index 0000000..e92d201 --- /dev/null +++ b/domains-frontend/src/components/ui/tooltip.tsx @@ -0,0 +1,46 @@ +import { Tooltip as ChakraTooltip, Portal } from '@chakra-ui/react'; +import * as React from 'react'; + +export interface TooltipProps extends ChakraTooltip.RootProps { + showArrow?: boolean; + portalled?: boolean; + portalRef?: React.RefObject; + content: React.ReactNode; + contentProps?: ChakraTooltip.ContentProps; + disabled?: boolean; +} + +export const Tooltip = React.forwardRef( + function Tooltip(props, ref) { + const { + showArrow, + children, + disabled, + portalled = true, + content, + contentProps, + portalRef, + ...rest + } = props; + + if (disabled) return children; + + return ( + + {children} + + + + {showArrow && ( + + + + )} + {content} + + + + + ); + } +); diff --git a/domains-frontend/src/env.d.ts b/domains-frontend/src/env.d.ts new file mode 100644 index 0000000..698ba8b --- /dev/null +++ b/domains-frontend/src/env.d.ts @@ -0,0 +1,11 @@ +/// + +/** + * Imports the SVG file as a React component. + * @requires [@rsbuild/plugin-svgr](https://npmjs.com/package/@rsbuild/plugin-svgr) + */ +declare module '*.svg?react' { + import type React from 'react'; + const ReactComponent: React.FunctionComponent>; + export default ReactComponent; +} diff --git a/domains-frontend/src/index.tsx b/domains-frontend/src/index.tsx new file mode 100644 index 0000000..9fe74fd --- /dev/null +++ b/domains-frontend/src/index.tsx @@ -0,0 +1,15 @@ +import '@fontsource-variable/jost'; +import '@fontsource/golos-text'; +import React from 'react'; +import ReactDOM from 'react-dom/client'; +import App from './App'; + +const rootEl = document.getElementById('root'); +if (rootEl) { + const root = ReactDOM.createRoot(rootEl); + root.render( + // + + // + ); +} diff --git a/domains-frontend/src/pages/CheckDomainPage.tsx b/domains-frontend/src/pages/CheckDomainPage.tsx new file mode 100644 index 0000000..abca09b --- /dev/null +++ b/domains-frontend/src/pages/CheckDomainPage.tsx @@ -0,0 +1,82 @@ +import { Button, HStack, Input, Stack, Table, Text } from '@chakra-ui/react'; +import { useCallback, useEffect, useState, type FormEvent } from 'react'; +import { useSearchParams } from 'react-router'; +import DomainRow from '../components/domainsTable/DomainRow'; +import { validateDomain } from '../utils/validateDomain'; +import { $ok } from '../common/atoms'; +import DomainsTable from '~/components/domainsTable/DomainsTable'; + +const CheckDomainPage = () => { + const [searchParams, _] = useSearchParams(); + const query = searchParams.get('q'); + const [input, setInput] = useState(query ?? ''); + const [error, setError] = useState(''); + + const [domains, setDomains] = useState( + query + ? ['.goip.pw', '.godns.pw', '.gofrom.pw'].map((domain) => ({ + fqdn: `${query}${domain}`, + price: 50, + free: Math.random() > 0.5, + })) + : [] + ); + + const fetchDomains = (domain: string) => { + console.log('Fetch Domains'); + + // TODO Fetch domains + }; + + const handleSubmit = useCallback( + (e: FormEvent) => { + e.preventDefault(); + + const domain = input.trim().toLocaleLowerCase(); + const [result, reason] = validateDomain(domain); + + if (result === $ok) { + fetchDomains(domain); + } else { + setError(reason); + } + }, + [input] + ); + + useEffect(() => { + if (!query) return; + + fetchDomains(query); + }, []); + + return ( + +
    + + { + setInput(e.target.value); + setError(''); + }} + /> + + + {error && ( + + {error} + + )} +
    + +
    + ); +}; + +export default CheckDomainPage; diff --git a/domains-frontend/src/pages/NotFound.tsx b/domains-frontend/src/pages/NotFound.tsx new file mode 100644 index 0000000..43e8d76 --- /dev/null +++ b/domains-frontend/src/pages/NotFound.tsx @@ -0,0 +1,29 @@ +import { Heading, Link, Stack } from '@chakra-ui/react'; +import React from 'react'; +import { Link as RLink } from 'react-router'; + +type Props = { + fullPage?: boolean; +}; + +const NotFound = (props: Props) => { + return ( + + + 404 + + Такой страницы не существует + {/* @ts-ignore */} + + Вернуться на главную + + + ); +}; + +export default NotFound; diff --git a/domains-frontend/src/pages/WelcomePage.tsx b/domains-frontend/src/pages/WelcomePage.tsx new file mode 100644 index 0000000..20f06fc --- /dev/null +++ b/domains-frontend/src/pages/WelcomePage.tsx @@ -0,0 +1,103 @@ +import { Box, Button, HStack, Input, Stack, Text } from '@chakra-ui/react'; +import { useCallback, useEffect, useState, type FormEvent } from 'react'; +import { useNavigate } from 'react-router'; +import { validateDomain } from '../utils/validateDomain'; +import { $ok } from '../common/atoms'; + +const WelcomePage = () => { + const [input, setInput] = useState(''); + const [error, setError] = useState(''); + const domains = ['.goip.pw', '.godns.pw', '.gofrom.pw']; + const [domainIndex, setDomainIndex] = useState(0); + const [isFading, setIsFading] = useState(false); + const navigate = useNavigate(); + + useEffect(() => { + const intervalId = setInterval(() => { + setIsFading(true); + const timeoutId = setTimeout(() => { + setDomainIndex((prev) => (prev + 1) % domains.length); + setIsFading(false); + }, 300); + + return () => clearTimeout(timeoutId); + }, 4000); + + return () => clearInterval(intervalId); + }, [domains.length]); + + const handleSubmit = useCallback( + (e: FormEvent) => { + e.preventDefault(); + const domain = input.trim().toLocaleLowerCase(); + const [result, reason] = validateDomain(domain); + if (result === $ok) { + navigate(`/check-domain?q=${domain}`); + } else { + setError(reason); + } + }, + [input] + ); + + return ( + + + + Проверьте доступность домена + +
    + + + { + setInput(e.target.value); + if (error) setError(''); + }} + /> + + + {domains[domainIndex]} + + + + + + {error && ( + + {error} + + )} +
    +
    +
    + ); +}; + +export default WelcomePage; diff --git a/domains-frontend/src/pages/admin/AdminDashboardPage.tsx b/domains-frontend/src/pages/admin/AdminDashboardPage.tsx new file mode 100644 index 0000000..416990f --- /dev/null +++ b/domains-frontend/src/pages/admin/AdminDashboardPage.tsx @@ -0,0 +1,83 @@ +import { + Box, + Button, + Heading, + HStack, + Input, + Stack, + Text, +} from '@chakra-ui/react'; + +const AdminDashboardPage = () => { + return ( + + Админ-панель + + + Кол-во пользователей + + 1135 + + + + + Кол-во доменов + + 115 + + + + + Оборот за неделю + + 1555 рублей + + + + + Оборот за месяц + + 15550 рублей + + + + + + Отчёт + + С + + по + + + + + + ); +}; + +export default AdminDashboardPage; diff --git a/domains-frontend/src/pages/admin/FinancesPage.tsx b/domains-frontend/src/pages/admin/FinancesPage.tsx new file mode 100644 index 0000000..77fd225 --- /dev/null +++ b/domains-frontend/src/pages/admin/FinancesPage.tsx @@ -0,0 +1,85 @@ +import { + Button, + Grid, + GridItem, + Heading, + HStack, + Stack, + Text, +} from '@chakra-ui/react'; +import React from 'react'; +import DateText from '~/components/DateText'; + +const FinancesPage = () => { + return ( + + Финансы + + Оборот за месяц: 18514 рублей + Оборот за неделю: 1321 рублей + + + + Счета + + + пользователь + + + операция + + + статус + + + дата + + + сумма + + + + ivain@zinch.me + поступление(карта) + совершена + + {new Date()} + + 1500 рублей + + + + + + + ivain@zinch.me + поступление(карта) + ожидание оплаты + + {new Date()} + + 1500 рублей + + + + + + + + + ); +}; + +export default FinancesPage; diff --git a/domains-frontend/src/pages/admin/SystemEventsPage.tsx b/domains-frontend/src/pages/admin/SystemEventsPage.tsx new file mode 100644 index 0000000..021550e --- /dev/null +++ b/domains-frontend/src/pages/admin/SystemEventsPage.tsx @@ -0,0 +1,37 @@ +import { Grid, GridItem, Heading, Stack, Text } from '@chakra-ui/react'; +import DateText from '~/components/DateText'; + +const SystemEventsPage = () => { + return ( + + События + + + пользователь + + + действие + + + дата + + + ivan@zinch.me + покупка домена some.godns.pw + + {new Date()} + + + + ); +}; + +export default SystemEventsPage; diff --git a/domains-frontend/src/pages/admin/UsersDomainsPage.tsx b/domains-frontend/src/pages/admin/UsersDomainsPage.tsx new file mode 100644 index 0000000..066c541 --- /dev/null +++ b/domains-frontend/src/pages/admin/UsersDomainsPage.tsx @@ -0,0 +1,79 @@ +import { + Button, + Grid, + GridItem, + Heading, + HStack, + Stack, + Text, +} from '@chakra-ui/react'; +import React from 'react'; +import DateText from '~/components/DateText'; + +const UsersDomainsPage = () => { + return ( + + + Домены + + + + + + домен + + + пользователь + + + истекает + + + + hello.example.com + hello@zinch.com + + {new Date(2026, 1, 3)} + + + + + + + + + omg.example.com + omg@zinch.com + + {new Date(2026, 3, 3)} + + + + + + + + + + ); +}; + +export default UsersDomainsPage; diff --git a/domains-frontend/src/pages/admin/UsersPage.tsx b/domains-frontend/src/pages/admin/UsersPage.tsx new file mode 100644 index 0000000..0685feb --- /dev/null +++ b/domains-frontend/src/pages/admin/UsersPage.tsx @@ -0,0 +1,61 @@ +import { + Button, + Grid, + GridItem, + Heading, + HStack, + Stack, + Text, +} from '@chakra-ui/react'; + +const UsersPage = () => { + return ( + + Пользователи + + + + Email + + + кол-во доменов + + + + some@email.com + 5 + + + + + + + + another@email.com + 7 + + + + + + + + + + ); +}; + +export default UsersPage; diff --git a/domains-frontend/src/pages/app/CartPage.tsx b/domains-frontend/src/pages/app/CartPage.tsx new file mode 100644 index 0000000..c5b192d --- /dev/null +++ b/domains-frontend/src/pages/app/CartPage.tsx @@ -0,0 +1,280 @@ +import { + Box, + Button, + Field, + Heading, + HStack, + Input, + Stack, + Text, +} from '@chakra-ui/react'; +import { useCallback, useEffect, useMemo, useState, type FormEvent } from 'react'; +import type { DomainQuery } from '~/api/models/DomainQuery'; +import { RecordType, type Zone as ExdnsZone } from '~/api/models/exdns'; +import { + AddCartItemRequestAction, + AddCartItemRequestTerm, +} from '~/api/models/domain-order'; +import { + addItem, + clearCart, + createDomain, + getCart, + getZoneByName, + removeItem, + searchDomains, +} from '~/api/services/domain-order'; +import { postZonesDomain } from '~/api/services/exdns'; +import DomainsTable from '~/components/domainsTable/DomainsTable'; + +type CartDomain = DomainQuery & { itemId?: string }; + +type DomainSearchItem = { + fqdn?: string; + price?: number; + free?: boolean; +}; + +type CartItem = { + id?: string; + fqdn?: string; + price?: number; +}; + +const mapCartItems = (items: CartItem[]): CartDomain[] => + items.map((item) => ({ + itemId: item.id, + fqdn: item.fqdn ?? '', + price: item.price ?? 0, + free: false, + })); + +const mapSearchItems = (items: DomainSearchItem[]): DomainQuery[] => + items.map((item) => ({ + fqdn: item.fqdn ?? '', + price: item.price ?? 0, + free: Boolean(item.free), + })); + +const resolveZoneId = async (fqdn: string) => { + const parts = fqdn.split('.').filter(Boolean); + if (parts.length <= 2) return ''; + + const zoneName = `${parts[parts.length - 2]}.${parts[parts.length - 1]}`; + const zoneResponse = await getZoneByName(zoneName); + return zoneResponse?.data?.id ?? ''; +}; + +const buildZonePayload = (fqdn: string): ExdnsZone => ({ + name: fqdn, + version: 1, + records: [ + { + name: '@', + type: RecordType.A, + ttl: 300, + data: '127.0.0.1', + }, + ], +}); + +const CartPage = () => { + const [query, setQuery] = useState(''); + const [cartDomains, setCartDomains] = useState([]); + const [domains, setDomains] = useState([]); + const [isCartLoading, setIsCartLoading] = useState(false); + const [isSearchLoading, setIsSearchLoading] = useState(false); + const [error, setError] = useState(''); + + const cartCount = useMemo(() => cartDomains.length, [cartDomains]); + + const loadCart = useCallback(async () => { + setIsCartLoading(true); + setError(''); + + try { + const response = await getCart(); + const items = response?.data?.items ?? []; + setCartDomains(mapCartItems(items)); + } catch { + setError('Не удалось загрузить корзину. Попробуйте еще раз.'); + } finally { + setIsCartLoading(false); + } + }, []); + + useEffect(() => { + loadCart(); + }, [loadCart]); + + const handleSubmit = useCallback( + async (e: FormEvent) => { + e.preventDefault(); + const search = query.trim(); + if (!search) return; + + setIsSearchLoading(true); + setError(''); + + try { + const response = await searchDomains({ query: search }); + const items = response?.data ?? []; + setDomains(mapSearchItems(items)); + } catch { + setError('Не удалось выполнить поиск доменов. Попробуйте еще раз.'); + } finally { + setIsSearchLoading(false); + } + }, + [query] + ); + + const handlePurchase = useCallback(async () => { + if (cartDomains.length === 0) return; + + setIsCartLoading(true); + setError(''); + + try { + for (const domain of cartDomains) { + const fqdn = domain.fqdn.trim(); + if (!fqdn) continue; + + const zoneId = await resolveZoneId(fqdn); + if (!zoneId) { + throw new Error('zone'); + } + + const expiresAt = new Date(); + expiresAt.setFullYear(expiresAt.getFullYear() + 1); + + await createDomain({ + fqdn, + zoneId, + expiresAt: expiresAt.toISOString(), + }); + await postZonesDomain(fqdn, buildZonePayload(fqdn)); + } + + await clearCart(); + setCartDomains([]); + } catch { + setError('Не удалось оформить покупку. Попробуйте еще раз.'); + } finally { + setIsCartLoading(false); + } + }, [cartDomains]); + + const handleAddToCart = useCallback( + async (domain: DomainQuery) => { + if (!domain.free) return; + + setIsCartLoading(true); + setError(''); + + try { + await addItem({ + action: AddCartItemRequestAction.register, + term: AddCartItemRequestTerm.yearly, + fqdn: domain.fqdn, + price: domain.price, + }); + await loadCart(); + } catch { + setError('Не удалось добавить домен в корзину. Попробуйте еще раз.'); + } finally { + setIsCartLoading(false); + } + }, + [loadCart] + ); + + const handleRemoveFromCart = useCallback(async (domain: CartDomain) => { + if (!domain.itemId) return; + + setIsCartLoading(true); + setError(''); + + try { + await removeItem(domain.itemId); + setCartDomains((prev) => prev.filter((item) => item.itemId !== domain.itemId)); + } catch { + setError('Не удалось удалить домен из корзины. Попробуйте еще раз.'); + } finally { + setIsCartLoading(false); + } + }, []); + + return ( + + + Корзина + + {cartCount} доменов + + + +
    + + + Домен + setQuery(e.target.value)} + /> + + + +
    + {error && ( + + {error} + + )} + ( + + )} + /> + + Доступные домены + + domain.free ? ( + + ) : ( + Недоступен + ) + } + /> +
    + ); +}; + +export default CartPage; diff --git a/domains-frontend/src/pages/app/DNSPage.tsx b/domains-frontend/src/pages/app/DNSPage.tsx new file mode 100644 index 0000000..2332013 --- /dev/null +++ b/domains-frontend/src/pages/app/DNSPage.tsx @@ -0,0 +1,210 @@ +import { + Accordion, + Box, + Button, + createListCollection, + Field, + Grid, + GridItem, + Heading, + HStack, + Input, + InputGroup, + Portal, + Select, + Stack, + Text, +} from '@chakra-ui/react'; + +const DNSPage = () => { + const frameworks = createListCollection({ + items: [ + { label: 'hello.zom.com', value: 'hello.zom.com' }, + { label: 'omg.com.com', value: 'omg.com.com' }, + { label: 'why.me.co', value: 'why.me.co' }, + { label: 'not.my.domain.com', value: 'not.my.domain.com' }, + ], + }); + + const DNSTypes = createListCollection({ + items: [ + { label: 'A', value: 'a' }, + { label: 'AAAA', value: 'aaaa' }, + { label: 'SOA', value: 'soa' }, + { label: 'CNAME', value: 'cname' }, + { label: 'TXT', value: 'txt' }, + { label: 'MX', value: 'mx' }, + { label: 'SRV', value: 'srv' }, + { label: 'CAA', value: 'caa' }, + ], + }); + + return ( + + DNS + + + Выберите домен + + + + + + + + + + + + {frameworks.items.map((framework) => ( + + {framework.label} + + + ))} + + + + + + + + + + + + Добавить запись + + + + + + + + Название + + + + + + Тип + + + + + + + + + + + + + + {DNSTypes.items.map((type) => ( + + {type.label} + + + ))} + + + + + + + + Значение + + + + + + + + + + + + + Записи + + + + + + + + + @ + + + + + + + A + 5.153.135.4 + + + + + TXT + gasvfcda + + + + + + + + + + + + www + + + + + + + A + 5.153.135.4 + + + + + TXT + gasvfcda + + + + + + + + + + + + + + + + ); +}; + +export default DNSPage; diff --git a/domains-frontend/src/pages/app/DashboardPage.tsx b/domains-frontend/src/pages/app/DashboardPage.tsx new file mode 100644 index 0000000..1b176d5 --- /dev/null +++ b/domains-frontend/src/pages/app/DashboardPage.tsx @@ -0,0 +1,62 @@ +import { Stack } from '@chakra-ui/react'; +import React from 'react'; +import AppLink from '../../components/AppLink'; +import { ArrowRight, MoveRight } from 'lucide-react'; +import dayjs from 'dayjs'; +import DomainList from '../../components/dashboard/DomainList'; +import EventList from '../../components/dashboard/EventList'; + +const DashboardPage = () => { + const domains = [ + { + id: 'e29d0a63-1e74-4d44-b433-59524ecc67ae', + fqdn: 'hello.example.com', + expiresAt: dayjs(new Date(2026, 1, 3)), + }, + { + id: '25c12320-addf-4a80-bce2-c10aa8be177f', + fqdn: 'hello.omg.com', + expiresAt: dayjs(new Date(2026, 2, 6)), + }, + { + id: 'e9a0b6d3-a82e-412f-861e-a313c4f3d91b', + fqdn: 'goodbye.example.com', + expiresAt: dayjs(new Date(2026, 2, 12)), + }, + ]; + + const events = [ + { + id: 'e9a0b6d3-a82e-412f-861e-a313c4f3d91b', + type: 'SYSTEM', + message: 'Что-то произошло', + at: dayjs(new Date(2026, 2, 12)), + }, + { + id: 'e9a0bvd3-a82e-412f-861e-a313c4f3d91b', + type: 'USER', + message: 'Выполнен вход в систему', + at: dayjs(new Date(2026, 2, 12)), + }, + ]; + + return ( + + + + Мои домены {' '} + + + + + + + Мои события {' '} + + + + + ); +}; + +export default DashboardPage; diff --git a/domains-frontend/src/pages/app/DomainsPage.tsx b/domains-frontend/src/pages/app/DomainsPage.tsx new file mode 100644 index 0000000..afad480 --- /dev/null +++ b/domains-frontend/src/pages/app/DomainsPage.tsx @@ -0,0 +1,54 @@ +import { Button, Heading, HStack, Stack, Text } from '@chakra-ui/react'; +import { useEffect, useState } from 'react'; +import type { DomainResponse } from '~/api/models/domain-order'; +import { getAllDomains } from '~/api/services/domain-order'; +import DomainList from '../../components/dashboard/DomainList'; + +const DomainsPage = () => { + const [domains, setDomains] = useState([]); + + useEffect(() => { + let isMounted = true; + + const loadDomains = async () => { + try { + const response = await getAllDomains({ + pageable: { + page: 0, + size: 50, + }, + }); + if (isMounted) { + setDomains(response?.data?.content ?? []); + } + } catch { + if (isMounted) { + setDomains([]); + } + } + }; + + loadDomains(); + + return () => { + isMounted = false; + }; + }, []); + + return ( + + + Мои домены + + 15 доменов + + + + + + ); +}; + +export default DomainsPage; diff --git a/domains-frontend/src/pages/app/EventsPage.tsx b/domains-frontend/src/pages/app/EventsPage.tsx new file mode 100644 index 0000000..5a31941 --- /dev/null +++ b/domains-frontend/src/pages/app/EventsPage.tsx @@ -0,0 +1,29 @@ +import { Heading, Stack } from '@chakra-ui/react'; +import dayjs from 'dayjs'; +import EventList from '~/components/dashboard/EventList'; + +const EventsPage = () => { + const events = [ + { + id: 'e9a0b6d3-a82e-412f-861e-a313c4f3d91b', + type: 'SYSTEM', + message: 'Что-то произошло', + at: dayjs(new Date(2026, 2, 12)), + }, + { + id: 'e9a0bvd3-a82e-412f-861e-a313c4f3d91b', + type: 'USER', + message: 'Выполнен вход в систему', + at: dayjs(new Date(2026, 2, 12)), + }, + ]; + + return ( + + События + + + ); +}; + +export default EventsPage; diff --git a/domains-frontend/src/pages/app/ProfilePage.tsx b/domains-frontend/src/pages/app/ProfilePage.tsx new file mode 100644 index 0000000..4cd9ae5 --- /dev/null +++ b/domains-frontend/src/pages/app/ProfilePage.tsx @@ -0,0 +1,84 @@ +import { + Box, + Button, + Grid, + GridItem, + Heading, + HStack, + Spinner, + Stack, + Text, + VStack, +} from '@chakra-ui/react'; +import { observer } from 'mobx-react-lite'; +import { useEffect, useState } from 'react'; +import { get2FAStatus } from '~/api/services/auth'; +import EnableTwoFactorDialog from '~/components/app/profile/EnableTwoFactorDialog'; +import { useStores } from '~/store'; + +const ProfilePage = observer(() => { + const { userStore } = useStores(); + const { user } = userStore; + + const [tfaStatus, setTfaStatus] = useState(undefined); + + useEffect(() => { + get2FAStatus().then((status) => setTfaStatus(Boolean(status.data))); + }, []); + + return ( + + Профиль + + + Данные + + + Email + {user?.email ?? '??'} + + {/* + + */} + + + + 2FA + + {tfaStatus === undefined && ( + + + + )} + {tfaStatus === true && ( + <> + + Подключена 2FA по TOTP + + + + + + )} + {tfaStatus === false && ( + <> + 2FA не подключена + setTfaStatus(true)} /> + + )} + + + + + {/* */} + {/* */} + + + + + ); +}); + +export default ProfilePage; diff --git a/domains-frontend/src/pages/auth/CheckEmailPage.tsx b/domains-frontend/src/pages/auth/CheckEmailPage.tsx new file mode 100644 index 0000000..8fba5a7 --- /dev/null +++ b/domains-frontend/src/pages/auth/CheckEmailPage.tsx @@ -0,0 +1,68 @@ +import { Heading, Stack, Text } from '@chakra-ui/react'; +import type { AxiosError } from 'axios'; +import { observer } from 'mobx-react-lite'; +import { useCallback, useEffect, useMemo, useState } from 'react'; +import { resendVerificationEmail } from '~/api/services/auth'; +import { toaster } from '~/components/ui/toaster'; +import { useStores } from '~/store'; + +const CheckEmailPage = observer(() => { + const [wait, setWait] = useState(120); + const waitText = useMemo(() => `Через ${wait} секунд`, [wait]); + const { authStore: registrationStore } = useStores(); + + const handleClick = useCallback(() => { + if (wait > 0) return; + resendVerificationEmail({ email: registrationStore.email }) + .then(() => { + toaster.create({ + title: 'Отправлено подтверждающее письмо по электронной почте', + }); + }) + .catch((e: AxiosError<{ message: string }>) => { + toaster.create({ + title: 'Не удалось повторно отправить подтверждающее письмо', + description: e?.response?.data?.message, + type: 'error', + }); + }); + }, [registrationStore.email, wait]); + + useEffect(() => { + if (wait <= 0) return; + const intervalId = setInterval(() => { + setWait((prev) => (prev > 0 ? prev - 1 : 0)); + }, 1000); + + return () => clearInterval(intervalId); + }, [wait]); + + return ( + + Проверьте свою электронную почту + + Мы отправили подтверждающую ссылку на ваш адрес электронной почты. + Перейдите по ссылке, чтобы завершить регистрацию. + + + Если вы не получили электронное письмо, вы можете запросить новое.{' '} + 0 ? 'fg.subtle' : 'secondary.solid'} + > + Повторно отправить электронное письмо + {' '} + {waitText}. + + + Проверьте папку со спамом или попробуйте снова через несколько минут, + если письмо не пришло. + + + ); +}); + +export default CheckEmailPage; diff --git a/domains-frontend/src/pages/auth/ForgetPasswordPage.tsx b/domains-frontend/src/pages/auth/ForgetPasswordPage.tsx new file mode 100644 index 0000000..18a5307 --- /dev/null +++ b/domains-frontend/src/pages/auth/ForgetPasswordPage.tsx @@ -0,0 +1,56 @@ +import { + Button, + Field, + Heading, + HStack, + Input, + Stack, + Text, +} from '@chakra-ui/react'; +import AppLink from '../../components/AppLink'; +import { useCallback, useState, type FormEvent } from 'react'; + +const ForgetPasswordPage = () => { + const [email, setEmail] = useState(''); + + const handleSubmit = useCallback( + (e: FormEvent) => { + e.preventDefault(); + }, + [email] + ); + + return ( + + Сбросить пароль + + Введите свой адрес электронной почты, и мы вышлем вам ссылку для сброса + пароля. + +
    + + + + Email + + setEmail(e.target.value)} + /> + + + +
    + + Войти + +
    + ); +}; + +export default ForgetPasswordPage; diff --git a/domains-frontend/src/pages/auth/SignInPage.tsx b/domains-frontend/src/pages/auth/SignInPage.tsx new file mode 100644 index 0000000..1f53ba7 --- /dev/null +++ b/domains-frontend/src/pages/auth/SignInPage.tsx @@ -0,0 +1,136 @@ +import { + Alert, + Button, + Field, + Heading, + HStack, + Input, + Stack, +} from '@chakra-ui/react'; +import AppLink from '../../components/AppLink'; +import type { AxiosError } from 'axios'; +import { useNavigate, useSearchParams } from 'react-router'; +import { useForm } from 'react-hook-form'; +import { getUserById, login } from '~/api/services/auth'; +import { setTokens } from '~/utils/authTokens'; +import { useState } from 'react'; +import { useStores } from '~/store'; + +const SignInPage = () => { + const [params, _] = useSearchParams(); + const [error, setError] = useState(''); + const [isSubmitting, setIsSubmitting] = useState(false); + const { userStore, authStore } = useStores(); + + const navigate = useNavigate(); + const { register, handleSubmit } = useForm<{ + email: string; + password: string; + }>(); + + const onSubmit = handleSubmit(async (formData) => { + setIsSubmitting(true); + setError(''); + + try { + const response = await login({ + ...formData, + }); + const accessToken = response?.data?.accessToken; + const refreshToken = response?.data?.refreshToken; + const userId = response?.data?.userId; + + if (!accessToken || !refreshToken || !userId) { + setError( + response?.message ?? + 'Не удалось войти в систему. Проверьте свои учетные данные и повторите попытку.' + ); + return; + } + + setTokens({ access: accessToken, refresh: refreshToken }); + const user = await getUserById(userId); + if (user.data) userStore.setUser(user.data); + navigate('/app'); + } catch (e) { + const apiError = e as AxiosError<{ error: { message?: string, code?: string } }>; + if (apiError.response?.data?.error?.code === 'TOTP_REQUIRED') { + authStore.setEmail(formData.email); + authStore.setPassword(formData.password); + navigate('/auth/2fa/totp'); + return; + } + setError( + apiError?.response?.data?.error?.message ?? + 'Не удалось войти в систему. Проверьте свои учетные данные и повторите попытку.' + ); + } finally { + setIsSubmitting(false); + } + }); + + return ( + + Войти + + {params.has('success') && ( + + + + Учетная запись подтверждена + + Не удалось войти в систему. Проверьте свои учетные данные и + повторите попытку. + + + + )} + +
    + + {error && ( + + + + {error} + + + )} + + + Email + + + + + + Пароль + + + + + +
    + + Зарегистрироваться + Забыли пароль + +
    + ); +}; + +export default SignInPage; diff --git a/domains-frontend/src/pages/auth/SignUpPage.tsx b/domains-frontend/src/pages/auth/SignUpPage.tsx new file mode 100644 index 0000000..788f8a0 --- /dev/null +++ b/domains-frontend/src/pages/auth/SignUpPage.tsx @@ -0,0 +1,145 @@ +import { + Alert, + Button, + Checkbox, + Field, + Heading, + HStack, + Input, + Link, + Stack, +} from '@chakra-ui/react'; +import AppLink from '../../components/AppLink'; +import type { AxiosError } from 'axios'; +import { useNavigate } from 'react-router'; +import { useForm } from 'react-hook-form'; +import { register as apiRegister } from '~/api/services/auth'; +import { useState } from 'react'; +import { useStores } from '~/store'; + +const SignUpPage = () => { + const navigate = useNavigate(); + const [error, setError] = useState(''); + const [isSubmitting, setIsSubmitting] = useState(false); + const { authStore: registrationStore } = useStores(); + + const { register, handleSubmit, getValues } = useForm<{ + email: string; + password: string; + confirmPassword: string; + policyAccepted: boolean; + marketingAccepted: boolean; + }>(); + + const onSubmit = handleSubmit(async (data) => { + const email = data.email.trim().toLowerCase(); + setIsSubmitting(true); + setError(''); + + try { + await apiRegister({ + email, + password: data.password, + }); + registrationStore.setEmail(email); + navigate('/auth/check-email', { state: { email } }); + } catch (e) { + const apiError = e as AxiosError<{ message?: string }>; + setError( + apiError?.response?.data?.message ?? + 'Не удалось зарегистрироваться. Проверьте данные и попробуйте снова.' + ); + } finally { + setIsSubmitting(false); + } + }); + + return ( + + Регистрация +
    + + {error && ( + + + + {error} + + + )} + + + Email + + + + + + Пароль + + + + + + Подтверждение пароля + + value === getValues('password'), + })} + /> + + + + + + + Я принимаю условия сервиса и политику конфиденциальности.{' '} + + Условия + + + + + + + + Хочу получать маркетинговые рассылки.{' '} + + Политика рассылок + + + + + + +
    + + Вход + +
    + ); +}; + +export default SignUpPage; diff --git a/domains-frontend/src/pages/auth/TFAPage.tsx b/domains-frontend/src/pages/auth/TFAPage.tsx new file mode 100644 index 0000000..182eba7 --- /dev/null +++ b/domains-frontend/src/pages/auth/TFAPage.tsx @@ -0,0 +1,23 @@ +import { Button, Heading, Stack } from '@chakra-ui/react'; +import { Clock, KeyRound } from 'lucide-react'; +import React from 'react'; +import { useNavigate } from 'react-router'; + +const TFAPage = () => { + const navigate = useNavigate(); + + return ( + + Выберите метод двухфакторной аутентификации + + + + ); +}; + +export default TFAPage; diff --git a/domains-frontend/src/pages/auth/TFATotpPage.tsx b/domains-frontend/src/pages/auth/TFATotpPage.tsx new file mode 100644 index 0000000..e88fe0f --- /dev/null +++ b/domains-frontend/src/pages/auth/TFATotpPage.tsx @@ -0,0 +1,104 @@ +import { Alert, Button, Heading, HStack, PinInput, Stack } from '@chakra-ui/react'; +import type { AxiosError } from 'axios'; +import { observer } from 'mobx-react-lite'; +import { useEffect, useState, type FormEvent } from 'react'; +import { useNavigate } from 'react-router'; +import { getUserById, login } from '~/api/services/auth'; +import { useStores } from '~/store'; +import { setTokens } from '~/utils/authTokens'; + +const TFATotpPage = observer(() => { + const [value, setValue] = useState(['', '', '', '', '', '']); + const [error, setError] = useState(''); + const [isSubmitting, setIsSubmitting] = useState(false); + const { authStore, userStore } = useStores(); + const { email, password } = authStore; + const navigate = useNavigate(); + + useEffect(() => { + if (!email || !password) { + navigate('/auth/sign-in'); + } + }, [email, password, navigate]); + + const handleSubmit = async (event: FormEvent) => { + event.preventDefault(); + + const totpCode = value.join('').trim(); + if (totpCode.length !== 6) { + setError('Введите 6-значный код.'); + return; + } + + setIsSubmitting(true); + setError(''); + + try { + const response = await login({ + email, + password, + totpCode, + }); + const accessToken = response?.data?.accessToken; + const refreshToken = response?.data?.refreshToken; + const userId = response?.data?.userId; + + if (!accessToken || !refreshToken || !userId) { + setError(response?.message ?? 'Не удалось войти в систему. Повторите попытку.'); + return; + } + + setTokens({ access: accessToken, refresh: refreshToken }); + const user = await getUserById(userId); + if (user.data) userStore.setUser(user.data); + authStore.setEmail(''); + authStore.setPassword(''); + navigate('/app'); + } catch (e) { + const apiError = e as AxiosError<{ message?: string }>; + setError(apiError?.response?.data?.message ?? 'Не удалось войти в систему. Повторите попытку.'); + } finally { + setIsSubmitting(false); + } + }; + + return ( +
    + + Введите 6-значный код из приложения-аутентификатора. + {error && ( + + + + {error} + + + )} + + setValue(e.value)} + > + + + + + + + + + + + + + +
    + ); +}); + +export default TFATotpPage; diff --git a/domains-frontend/src/pages/auth/TFAWebAuthnPage.tsx b/domains-frontend/src/pages/auth/TFAWebAuthnPage.tsx new file mode 100644 index 0000000..5c070c2 --- /dev/null +++ b/domains-frontend/src/pages/auth/TFAWebAuthnPage.tsx @@ -0,0 +1,16 @@ +import { Button, Heading, Stack } from '@chakra-ui/react'; +import { KeyRound } from 'lucide-react'; +import React from 'react'; + +const TFAWebAuthnPage = () => { + return ( + + Пройдите аутентификацию при помощи PassKey + + + ); +}; + +export default TFAWebAuthnPage; diff --git a/domains-frontend/src/pages/auth/VerificateEmailPage.tsx b/domains-frontend/src/pages/auth/VerificateEmailPage.tsx new file mode 100644 index 0000000..1b78048 --- /dev/null +++ b/domains-frontend/src/pages/auth/VerificateEmailPage.tsx @@ -0,0 +1,53 @@ +import { Stack, Heading, Spinner, VStack, Text } from '@chakra-ui/react'; +import type { AxiosError } from 'axios'; +import React, { useEffect, useState } from 'react'; +import { useNavigate, useSearchParams } from 'react-router'; +import { verifyEmail } from '~/api/services/auth'; + +const VerificateEmailPage = () => { + const [param, _] = useSearchParams(); + const token = param.get('token'); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(''); + const navigate = useNavigate(); + + useEffect(() => { + if (!token) { + setError( + 'Проверка не удалась. Ссылка может быть недействительной или истекшим сроком действия.' + ); + setLoading(false); + return; + } + + verifyEmail({ token: token }) + .then(() => { + navigate('/auth/sign-in?success'); + }) + .catch((e: AxiosError<{ message: string }>) => { + setError( + e?.response?.data?.message ?? + 'Проверка не удалась. Ссылка может быть недействительной или истекшим сроком действия.' + ); + setLoading(false); + }); + }, [navigate, token]); + + return ( + + Подтверждение адреса электронной почты + {loading ? ( + + + + ) : ( + <> + Мы не смогли подтвердить ваш адрес электронной почты. + {error} + + )} + + ); +}; + +export default VerificateEmailPage; diff --git a/domains-frontend/src/pages/auth/ZonesPage.tsx b/domains-frontend/src/pages/auth/ZonesPage.tsx new file mode 100644 index 0000000..45363c7 --- /dev/null +++ b/domains-frontend/src/pages/auth/ZonesPage.tsx @@ -0,0 +1,82 @@ +import { Grid, GridItem, Heading, HStack, Stack, Text } from '@chakra-ui/react'; +import { Fragment, useCallback, useEffect, useState } from 'react'; +import type { Zone } from '~/api/models/domain-order'; +import { getAllZones } from '~/api/services/domain-order'; +import CreateZoneDialog from '~/components/admin/zones/CreateZoneDialog'; +import ManageZoneDialog from '~/components/admin/zones/ManageZoneDialog'; + +const ZonesPage = () => { + const [zones, setZones] = useState([]); + const [isLoading, setIsLoading] = useState(false); + + const loadZones = useCallback(async () => { + setIsLoading(true); + try { + const response = await getAllZones({ + pageable: { + page: 0, + size: 50, + }, + }); + setZones(response?.data?.content ?? []); + } catch { + setZones([]); + } finally { + setIsLoading(false); + } + }, []); + + useEffect(() => { + loadZones(); + }, [loadZones]); + + return ( + + + Зоны 2-го уровня + + {zones.length} зон + + + + {isLoading ? ( + Загрузка... + ) : ( + + + Зона + + + Цена + + + {zones.map((zone) => ( + + + {zone.name ?? '-'} + + + {`${zone.price ?? '-'} рублей / месяц`} + + + + + + + + ))} + + )} + + ); +}; + +export default ZonesPage; diff --git a/domains-frontend/src/router/index.tsx b/domains-frontend/src/router/index.tsx new file mode 100644 index 0000000..7ef13b0 --- /dev/null +++ b/domains-frontend/src/router/index.tsx @@ -0,0 +1,73 @@ +import { Route, Routes } from 'react-router'; +import WelcomePage from '../pages/WelcomePage.tsx'; +import Layout from '../components/layouts/Layout.tsx'; +import PublicLayout from '../components/layouts/PublicLayout.tsx'; +import CheckDomainPage from '../pages/CheckDomainPage.tsx'; +import NotFound from '../pages/NotFound.tsx'; +import AuthLayout from '../components/layouts/AuthLayout.tsx'; +import SignInPage from '../pages/auth/SignInPage.tsx'; +import SignUpPage from '../pages/auth/SignUpPage.tsx'; +import ForgetPasswordPage from '../pages/auth/ForgetPasswordPage.tsx'; +import CheckEmailPage from '../pages/auth/CheckEmailPage.tsx'; +import TFAPage from '../pages/auth/TFAPage.tsx'; +import TFATotpPage from '../pages/auth/TFATotpPage.tsx'; +import TFAWebAuthnPage from '../pages/auth/TFAWebAuthnPage.tsx'; +import VerificateEmailPage from '../pages/auth/VerificateEmailPage.tsx'; +import AppLayout from '../components/layouts/AppLayout.tsx'; +import DashboardPage from '../pages/app/DashboardPage.tsx'; +import DomainsPage from '../pages/app/DomainsPage.tsx'; +import EventsPage from '../pages/app/EventsPage.tsx'; +import CartPage from '../pages/app/CartPage.tsx'; +import DNSPage from '../pages/app/DNSPage.tsx'; +import ProfilePage from '../pages/app/ProfilePage.tsx'; +import AdminLayout from '~/components/layouts/AdminLayout.tsx'; +import AdminDashboardPage from '~/pages/admin/AdminDashboardPage.tsx'; +import UsersDomainsPage from '~/pages/admin/UsersDomainsPage.tsx'; +import UsersPage from '~/pages/admin/UsersPage.tsx'; +import SystemEventsPage from '~/pages/admin/SystemEventsPage.tsx'; +import FinancesPage from '~/pages/admin/FinancesPage.tsx'; +import ZonesPage from '~/pages/auth/ZonesPage.tsx'; + +const Index = () => { + return ( + + }> + } /> + }> + } /> + } /> + + }> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + }> + } /> + } /> + } /> + } /> + } /> + } /> + + }> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + + + ); +}; + +export default Index; diff --git a/domains-frontend/src/store/AutoStore.ts b/domains-frontend/src/store/AutoStore.ts new file mode 100644 index 0000000..067c85c --- /dev/null +++ b/domains-frontend/src/store/AutoStore.ts @@ -0,0 +1,18 @@ +import { makeAutoObservable } from 'mobx'; + +export class AuthStore { + email: string = ''; + password: string = ''; + + constructor() { + makeAutoObservable(this, {}, { autoBind: true }); + } + + setEmail(mail: string) { + this.email = mail; + } + + setPassword(p: string) { + this.password = p; + } +} diff --git a/domains-frontend/src/store/RootStore.ts b/domains-frontend/src/store/RootStore.ts new file mode 100644 index 0000000..a435a4c --- /dev/null +++ b/domains-frontend/src/store/RootStore.ts @@ -0,0 +1,12 @@ +import { AuthStore } from './AutoStore'; +import { UserStore } from './UserStore'; + +export class RootStore { + authStore: AuthStore; + userStore: UserStore; + + constructor() { + this.authStore = new AuthStore(); + this.userStore = new UserStore(); + } +} diff --git a/domains-frontend/src/store/UserStore.ts b/domains-frontend/src/store/UserStore.ts new file mode 100644 index 0000000..de62b5d --- /dev/null +++ b/domains-frontend/src/store/UserStore.ts @@ -0,0 +1,22 @@ +import { makeAutoObservable, runInAction } from 'mobx'; +import type { UserResponse } from '~/api/models/auth'; +import { getCurrentUser } from '~/api/services/auth'; + +export class UserStore { + user!: UserResponse; + + constructor() { + makeAutoObservable(this, {}, { autoBind: true }); + } + + setUser(user: UserResponse) { + this.user = user; + } + + async fetchMe() { + const user = await getCurrentUser(); + runInAction(() => { + if (user.data) this.user = user.data; + }); + } +} diff --git a/domains-frontend/src/store/index.tsx b/domains-frontend/src/store/index.tsx new file mode 100644 index 0000000..dada06c --- /dev/null +++ b/domains-frontend/src/store/index.tsx @@ -0,0 +1,11 @@ +import React, { createContext, useContext } from 'react'; +import { RootStore } from './RootStore'; + +const rootStore = new RootStore(); +const StoreContext = createContext(rootStore); + +export const StoreProvider = ({ children }: { children: React.ReactNode }) => ( + {children} +); + +export const useStores = () => useContext(StoreContext); diff --git a/domains-frontend/src/theme/index.ts b/domains-frontend/src/theme/index.ts new file mode 100644 index 0000000..b42b037 --- /dev/null +++ b/domains-frontend/src/theme/index.ts @@ -0,0 +1,68 @@ +import { createSystem, defaultConfig, defineConfig } from '@chakra-ui/react'; + +const config = defineConfig({ + theme: { + tokens: { + colors: { + accent: { + 50: { value: '#fdf9e6' }, + 100: { value: '#fbf1c8' }, + 200: { value: '#f7e79c' }, + 300: { value: '#f3dc6f' }, + 400: { value: '#f0d45f' }, + 500: { value: '#eed059' }, + 600: { value: '#d8b84f' }, + 700: { value: '#b3923f' }, + 800: { value: '#8b6f30' }, + 900: { value: '#6a5425' }, + }, + secondary: { + 50: { value: '#eef1ff' }, + 100: { value: '#d6defe' }, + 200: { value: '#b2c1fc' }, + 300: { value: '#8da4f8' }, + 400: { value: '#6f8cf3' }, + 500: { value: '#5976ee' }, + 600: { value: '#4e63d7' }, + 700: { value: '#3f4eb6' }, + 800: { value: '#323c8c' }, + 900: { value: '#262d69' }, + }, + }, + radii: { + sm: { value: '20px' }, + md: { value: '20px' }, + lg: { value: '20px' }, + xl: { value: '20px' }, + }, + fonts: { + heading: { value: "'Jest', 'Jost Variable', sans-serif" }, + body: { value: "'Golos Text', sans-serif" }, + }, + }, + semanticTokens: { + colors: { + accent: { + solid: { value: '{colors.accent.500}' }, + contrast: { value: '{colors.accent.900}' }, + fg: { value: '{colors.accent.700}' }, + muted: { value: '{colors.accent.100}' }, + subtle: { value: '{colors.accent.200}' }, + emphasized: { value: '{colors.accent.300}' }, + focusRing: { value: '{colors.accent.500}' }, + }, + secondary: { + solid: { value: '{colors.secondary.500}' }, + contrast: { value: 'white' }, + fg: { value: '{colors.secondary.700}' }, + muted: { value: '{colors.secondary.100}' }, + subtle: { value: '{colors.secondary.200}' }, + emphasized: { value: '{colors.secondary.300}' }, + focusRing: { value: '{colors.secondary.500}' }, + }, + }, + }, + }, +}); + +export const system = createSystem(defaultConfig, config); diff --git a/domains-frontend/src/types.d.ts b/domains-frontend/src/types.d.ts new file mode 100644 index 0000000..4ca5cd8 --- /dev/null +++ b/domains-frontend/src/types.d.ts @@ -0,0 +1,10 @@ +export {}; + +declare global { + interface Window { + _hrofors?: { + access?: string; + refresh?: string; + }; + } +} diff --git a/domains-frontend/src/utils/authTokens.ts b/domains-frontend/src/utils/authTokens.ts new file mode 100644 index 0000000..44d6696 --- /dev/null +++ b/domains-frontend/src/utils/authTokens.ts @@ -0,0 +1,60 @@ +type TokenState = { + access?: string; + refresh?: string; +}; + +const STORAGE_KEY = 'hrofors_refresh'; + +const getWindowStore = () => { + if (typeof window === 'undefined') { + return undefined; + } + + if (!window._hrofors) { + window._hrofors = {}; + } + + return window._hrofors; +}; + +const readStoredRefresh = () => { + if (typeof window === 'undefined') { + return undefined; + } + + return localStorage.getItem(STORAGE_KEY) || undefined; +}; + +export const getAccessToken = () => getWindowStore()?.access; + +export const getRefreshToken = () => { + const store = getWindowStore(); + const stored = readStoredRefresh(); + + if (store && !store.refresh && stored) { + store.refresh = stored; + } + + return store?.refresh ?? stored; +}; + +export const setTokens = ({ access, refresh }: TokenState) => { + const store = getWindowStore(); + + if (store) { + if (access !== undefined) { + store.access = access; + } + if (refresh !== undefined) { + store.refresh = refresh; + } + } + + if (typeof window !== 'undefined' && refresh !== undefined) { + if (refresh) { + localStorage.setItem(STORAGE_KEY, refresh); + } else { + localStorage.removeItem(STORAGE_KEY); + } + } +}; diff --git a/domains-frontend/src/utils/validateDomain.ts b/domains-frontend/src/utils/validateDomain.ts new file mode 100644 index 0000000..d2057a6 --- /dev/null +++ b/domains-frontend/src/utils/validateDomain.ts @@ -0,0 +1,17 @@ +import { $error, $ok } from '../common/atoms'; + +export const validateDomain = ( + domain: string +): [typeof $ok, string] | [typeof $error, string] => { + const regex = new RegExp( + '^(?=.{1,253}$)(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)(?:\\.(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?))*$', + 'i' + ); + if (domain.length === 0) + return [$error, 'Домен должен содержать хотя бы одну букву']; + if (domain.length > 63) + return [$error, 'Домен не может быть больше 63 символов']; + if (!regex.test(domain)) + return [$error, 'Домен содержит недопустимую последовательность символов']; + return [$ok, domain]; +}; diff --git a/domains-frontend/tsconfig.json b/domains-frontend/tsconfig.json new file mode 100644 index 0000000..a095d49 --- /dev/null +++ b/domains-frontend/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "lib": ["DOM", "ES2020"], + "jsx": "react-jsx", + "target": "ES2020", + "noEmit": true, + "skipLibCheck": true, + "useDefineForClassFields": true, + + /* modules */ + "module": "ESNext", + "moduleDetection": "force", + "moduleResolution": "bundler", + "verbatimModuleSyntax": true, + "resolveJsonModule": true, + "allowImportingTsExtensions": true, + "noUncheckedSideEffectImports": true, + + /* type checking */ + "strict": true, + + "paths": { + "~/*": ["./src/*"] + } + }, + "include": ["src"] +}

    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