@djangocfg/api 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +42 -0
- package/dist/index.cjs +28422 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +31214 -0
- package/dist/index.d.ts +31214 -0
- package/dist/index.mjs +28334 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +83 -0
- package/src/cfg/BaseClient.ts +56 -0
- package/src/cfg/contexts/AccountsContext.tsx +205 -0
- package/src/cfg/contexts/LeadsContext.tsx +145 -0
- package/src/cfg/contexts/NewsletterContext.tsx +244 -0
- package/src/cfg/contexts/SupportContext.tsx +256 -0
- package/src/cfg/contexts/index.ts +48 -0
- package/src/cfg/contexts/knowbase/ChatContext.tsx +174 -0
- package/src/cfg/contexts/knowbase/DocumentsContext.tsx +304 -0
- package/src/cfg/contexts/knowbase/SessionsContext.tsx +174 -0
- package/src/cfg/contexts/knowbase/index.ts +58 -0
- package/src/cfg/contexts/payments/ApiKeysContext.tsx +115 -0
- package/src/cfg/contexts/payments/BalancesContext.tsx +118 -0
- package/src/cfg/contexts/payments/CurrenciesContext.tsx +105 -0
- package/src/cfg/contexts/payments/OverviewContext.tsx +141 -0
- package/src/cfg/contexts/payments/PaymentsContext.tsx +131 -0
- package/src/cfg/contexts/payments/README.md +201 -0
- package/src/cfg/contexts/payments/index.ts +65 -0
- package/src/cfg/generated/_utils/fetchers/cfg__accounts.ts +66 -0
- package/src/cfg/generated/_utils/fetchers/cfg__accounts__auth.ts +50 -0
- package/src/cfg/generated/_utils/fetchers/cfg__accounts__user_profile.ts +121 -0
- package/src/cfg/generated/_utils/fetchers/cfg__endpoints.ts +49 -0
- package/src/cfg/generated/_utils/fetchers/cfg__health.ts +64 -0
- package/src/cfg/generated/_utils/fetchers/cfg__leads.ts +122 -0
- package/src/cfg/generated/_utils/fetchers/cfg__leads__lead_submission.ts +50 -0
- package/src/cfg/generated/_utils/fetchers/cfg__newsletter.ts +81 -0
- package/src/cfg/generated/_utils/fetchers/cfg__newsletter__bulk_email.ts +50 -0
- package/src/cfg/generated/_utils/fetchers/cfg__newsletter__campaigns.ts +123 -0
- package/src/cfg/generated/_utils/fetchers/cfg__newsletter__logs.ts +49 -0
- package/src/cfg/generated/_utils/fetchers/cfg__newsletter__newsletters.ts +64 -0
- package/src/cfg/generated/_utils/fetchers/cfg__newsletter__subscriptions.ts +81 -0
- package/src/cfg/generated/_utils/fetchers/cfg__newsletter__testing.ts +50 -0
- package/src/cfg/generated/_utils/fetchers/cfg__payments.ts +2489 -0
- package/src/cfg/generated/_utils/fetchers/cfg__payments__webhooks.ts +109 -0
- package/src/cfg/generated/_utils/fetchers/cfg__support.ts +212 -0
- package/src/cfg/generated/_utils/fetchers/cfg__tasks.ts +182 -0
- package/src/cfg/generated/_utils/fetchers/index.ts +45 -0
- package/src/cfg/generated/_utils/hooks/cfg__accounts.ts +61 -0
- package/src/cfg/generated/_utils/hooks/cfg__accounts__auth.ts +41 -0
- package/src/cfg/generated/_utils/hooks/cfg__accounts__user_profile.ts +128 -0
- package/src/cfg/generated/_utils/hooks/cfg__endpoints.ts +36 -0
- package/src/cfg/generated/_utils/hooks/cfg__health.ts +51 -0
- package/src/cfg/generated/_utils/hooks/cfg__leads.ts +127 -0
- package/src/cfg/generated/_utils/hooks/cfg__leads__lead_submission.ts +41 -0
- package/src/cfg/generated/_utils/hooks/cfg__newsletter.ts +80 -0
- package/src/cfg/generated/_utils/hooks/cfg__newsletter__bulk_email.ts +41 -0
- package/src/cfg/generated/_utils/hooks/cfg__newsletter__campaigns.ts +128 -0
- package/src/cfg/generated/_utils/hooks/cfg__newsletter__logs.ts +36 -0
- package/src/cfg/generated/_utils/hooks/cfg__newsletter__newsletters.ts +51 -0
- package/src/cfg/generated/_utils/hooks/cfg__newsletter__subscriptions.ts +76 -0
- package/src/cfg/generated/_utils/hooks/cfg__newsletter__testing.ts +41 -0
- package/src/cfg/generated/_utils/hooks/cfg__payments.ts +2716 -0
- package/src/cfg/generated/_utils/hooks/cfg__payments__webhooks.ts +100 -0
- package/src/cfg/generated/_utils/hooks/cfg__support.ts +235 -0
- package/src/cfg/generated/_utils/hooks/cfg__tasks.ts +193 -0
- package/src/cfg/generated/_utils/hooks/index.ts +43 -0
- package/src/cfg/generated/_utils/schemas/APIKeyCreate.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/APIKeyCreateRequest.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/APIKeyDetail.schema.ts +35 -0
- package/src/cfg/generated/_utils/schemas/APIKeyList.schema.ts +32 -0
- package/src/cfg/generated/_utils/schemas/APIKeyUpdate.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/APIKeyUpdateRequest.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/APIKeyValidationRequest.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/APIKeyValidationResponse.schema.ts +29 -0
- package/src/cfg/generated/_utils/schemas/APIKeysOverview.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/APIResponse.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/APIResponseRequest.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/AdminPaymentCreate.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/AdminPaymentCreateRequest.schema.ts +27 -0
- package/src/cfg/generated/_utils/schemas/AdminPaymentDetail.schema.ts +50 -0
- package/src/cfg/generated/_utils/schemas/AdminPaymentList.schema.ts +38 -0
- package/src/cfg/generated/_utils/schemas/AdminPaymentStats.schema.ts +29 -0
- package/src/cfg/generated/_utils/schemas/AdminPaymentUpdate.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/AdminPaymentUpdateRequest.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/AdminUser.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/BalanceOverview.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/BulkEmailRequest.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/BulkEmailResponse.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/ChartDataPoint.schema.ts +20 -0
- package/src/cfg/generated/_utils/schemas/ChartSeries.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/Currency.schema.ts +35 -0
- package/src/cfg/generated/_utils/schemas/CurrencyAnalyticsItem.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/CurrencyList.schema.ts +30 -0
- package/src/cfg/generated/_utils/schemas/EmailLog.schema.ts +31 -0
- package/src/cfg/generated/_utils/schemas/Endpoint.schema.ts +35 -0
- package/src/cfg/generated/_utils/schemas/EndpointGroup.schema.ts +28 -0
- package/src/cfg/generated/_utils/schemas/EndpointsStatus.schema.ts +28 -0
- package/src/cfg/generated/_utils/schemas/ErrorResponse.schema.ts +20 -0
- package/src/cfg/generated/_utils/schemas/HealthCheck.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/LeadSubmission.schema.ts +29 -0
- package/src/cfg/generated/_utils/schemas/LeadSubmissionError.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/LeadSubmissionRequest.schema.ts +29 -0
- package/src/cfg/generated/_utils/schemas/LeadSubmissionResponse.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/Message.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/MessageCreate.schema.ts +15 -0
- package/src/cfg/generated/_utils/schemas/MessageCreateRequest.schema.ts +15 -0
- package/src/cfg/generated/_utils/schemas/MessageRequest.schema.ts +15 -0
- package/src/cfg/generated/_utils/schemas/Network.schema.ts +30 -0
- package/src/cfg/generated/_utils/schemas/Newsletter.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/NewsletterCampaign.schema.ts +33 -0
- package/src/cfg/generated/_utils/schemas/NewsletterCampaignRequest.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/NewsletterSubscription.schema.ts +27 -0
- package/src/cfg/generated/_utils/schemas/OTPErrorResponse.schema.ts +19 -0
- package/src/cfg/generated/_utils/schemas/OTPRequestRequest.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/OTPRequestResponse.schema.ts +19 -0
- package/src/cfg/generated/_utils/schemas/OTPVerifyRequest.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/OTPVerifyResponse.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/PaginatedAPIKeyListList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedAdminPaymentListList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedAdminPaymentStatsList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedAdminUserList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedCurrencyListList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedEmailLogList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedEndpointGroupList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedLeadSubmissionList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedMessageList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedNetworkList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedNewsletterCampaignList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedNewsletterList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedNewsletterSubscriptionList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedPaymentListList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedProviderCurrencyList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedRecentPaymentList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedRecentTransactionList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedSubscriptionListList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedTariffList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedTicketList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedTransactionList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedUserBalanceList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedWebhookEventListList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaginatedWebhookStatsList.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PatchedAPIKeyUpdateRequest.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PatchedAdminPaymentUpdateRequest.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/PatchedLeadSubmissionRequest.schema.ts +29 -0
- package/src/cfg/generated/_utils/schemas/PatchedMessageRequest.schema.ts +15 -0
- package/src/cfg/generated/_utils/schemas/PatchedNewsletterCampaignRequest.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/PatchedPaymentRequest.schema.ts +32 -0
- package/src/cfg/generated/_utils/schemas/PatchedSubscriptionRequest.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/PatchedTicketRequest.schema.ts +18 -0
- package/src/cfg/generated/_utils/schemas/PatchedUnsubscribeRequest.schema.ts +19 -0
- package/src/cfg/generated/_utils/schemas/PatchedUserProfileUpdateRequest.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/Payment.schema.ts +48 -0
- package/src/cfg/generated/_utils/schemas/PaymentAnalyticsResponse.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/PaymentCreate.schema.ts +30 -0
- package/src/cfg/generated/_utils/schemas/PaymentCreateRequest.schema.ts +30 -0
- package/src/cfg/generated/_utils/schemas/PaymentList.schema.ts +32 -0
- package/src/cfg/generated/_utils/schemas/PaymentOverview.schema.ts +31 -0
- package/src/cfg/generated/_utils/schemas/PaymentRequest.schema.ts +32 -0
- package/src/cfg/generated/_utils/schemas/PaymentsChartResponse.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/PaymentsDashboardOverview.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/PaymentsMetrics.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/ProviderAnalyticsItem.schema.ts +24 -0
- package/src/cfg/generated/_utils/schemas/ProviderCurrency.schema.ts +36 -0
- package/src/cfg/generated/_utils/schemas/QueueAction.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/QueueActionRequest.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/QueueStatus.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/QuickHealth.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/RecentPayment.schema.ts +32 -0
- package/src/cfg/generated/_utils/schemas/RecentTransaction.schema.ts +29 -0
- package/src/cfg/generated/_utils/schemas/SendCampaignRequest.schema.ts +19 -0
- package/src/cfg/generated/_utils/schemas/SendCampaignResponse.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/Sender.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/SubscribeRequest.schema.ts +20 -0
- package/src/cfg/generated/_utils/schemas/SubscribeResponse.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/Subscription.schema.ts +41 -0
- package/src/cfg/generated/_utils/schemas/SubscriptionCreate.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/SubscriptionCreateRequest.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/SubscriptionList.schema.ts +32 -0
- package/src/cfg/generated/_utils/schemas/SubscriptionOverview.schema.ts +37 -0
- package/src/cfg/generated/_utils/schemas/SubscriptionRequest.schema.ts +26 -0
- package/src/cfg/generated/_utils/schemas/SuccessResponse.schema.ts +20 -0
- package/src/cfg/generated/_utils/schemas/SupportedProviders.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/Tariff.schema.ts +34 -0
- package/src/cfg/generated/_utils/schemas/TaskStatistics.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/TestEmailRequest.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/Ticket.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/TicketRequest.schema.ts +18 -0
- package/src/cfg/generated/_utils/schemas/TokenRefresh.schema.ts +16 -0
- package/src/cfg/generated/_utils/schemas/TokenRefreshRequest.schema.ts +15 -0
- package/src/cfg/generated/_utils/schemas/Transaction.schema.ts +35 -0
- package/src/cfg/generated/_utils/schemas/Unsubscribe.schema.ts +19 -0
- package/src/cfg/generated/_utils/schemas/UnsubscribeRequest.schema.ts +19 -0
- package/src/cfg/generated/_utils/schemas/User.schema.ts +34 -0
- package/src/cfg/generated/_utils/schemas/UserBalance.schema.ts +29 -0
- package/src/cfg/generated/_utils/schemas/UserProfileUpdateRequest.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/WebhookEvent.schema.ts +31 -0
- package/src/cfg/generated/_utils/schemas/WebhookEventList.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/WebhookEventListRequest.schema.ts +25 -0
- package/src/cfg/generated/_utils/schemas/WebhookEventRequest.schema.ts +30 -0
- package/src/cfg/generated/_utils/schemas/WebhookHealth.schema.ts +21 -0
- package/src/cfg/generated/_utils/schemas/WebhookProviderStats.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/WebhookProviderStatsRequest.schema.ts +23 -0
- package/src/cfg/generated/_utils/schemas/WebhookResponse.schema.ts +27 -0
- package/src/cfg/generated/_utils/schemas/WebhookResponseRequest.schema.ts +27 -0
- package/src/cfg/generated/_utils/schemas/WebhookStats.schema.ts +27 -0
- package/src/cfg/generated/_utils/schemas/WebhookStatsRequest.schema.ts +27 -0
- package/src/cfg/generated/_utils/schemas/WorkerAction.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/WorkerActionRequest.schema.ts +22 -0
- package/src/cfg/generated/_utils/schemas/index.ts +160 -0
- package/src/cfg/generated/api-instance.ts +131 -0
- package/src/cfg/generated/cfg__accounts/client.ts +30 -0
- package/src/cfg/generated/cfg__accounts/index.ts +2 -0
- package/src/cfg/generated/cfg__accounts/models.ts +100 -0
- package/src/cfg/generated/cfg__accounts__auth/client.ts +22 -0
- package/src/cfg/generated/cfg__accounts__auth/index.ts +2 -0
- package/src/cfg/generated/cfg__accounts__auth/models.ts +17 -0
- package/src/cfg/generated/cfg__accounts__user_profile/client.ts +77 -0
- package/src/cfg/generated/cfg__accounts__user_profile/index.ts +2 -0
- package/src/cfg/generated/cfg__accounts__user_profile/models.ts +56 -0
- package/src/cfg/generated/cfg__endpoints/client.ts +22 -0
- package/src/cfg/generated/cfg__endpoints/index.ts +2 -0
- package/src/cfg/generated/cfg__endpoints/models.ts +68 -0
- package/src/cfg/generated/cfg__health/client.ts +30 -0
- package/src/cfg/generated/cfg__health/index.ts +2 -0
- package/src/cfg/generated/cfg__health/models.ts +34 -0
- package/src/cfg/generated/cfg__leads/client.ts +79 -0
- package/src/cfg/generated/cfg__leads/index.ts +2 -0
- package/src/cfg/generated/cfg__leads/models.ts +99 -0
- package/src/cfg/generated/cfg__leads__lead_submission/client.ts +25 -0
- package/src/cfg/generated/cfg__leads__lead_submission/index.ts +2 -0
- package/src/cfg/generated/cfg__leads__lead_submission/models.ts +48 -0
- package/src/cfg/generated/cfg__newsletter/client.ts +38 -0
- package/src/cfg/generated/cfg__newsletter/index.ts +2 -0
- package/src/cfg/generated/cfg__newsletter/models.ts +71 -0
- package/src/cfg/generated/cfg__newsletter__bulk_email/client.ts +24 -0
- package/src/cfg/generated/cfg__newsletter__bulk_email/index.ts +2 -0
- package/src/cfg/generated/cfg__newsletter__bulk_email/models.ts +29 -0
- package/src/cfg/generated/cfg__newsletter__campaigns/client.ts +85 -0
- package/src/cfg/generated/cfg__newsletter__campaigns/index.ts +2 -0
- package/src/cfg/generated/cfg__newsletter__campaigns/models.ts +100 -0
- package/src/cfg/generated/cfg__newsletter__logs/client.ts +35 -0
- package/src/cfg/generated/cfg__newsletter__logs/index.ts +2 -0
- package/src/cfg/generated/cfg__newsletter__logs/models.ts +51 -0
- package/src/cfg/generated/cfg__newsletter__newsletters/client.ts +45 -0
- package/src/cfg/generated/cfg__newsletter__newsletters/index.ts +2 -0
- package/src/cfg/generated/cfg__newsletter__newsletters/models.ts +42 -0
- package/src/cfg/generated/cfg__newsletter__subscriptions/client.ts +55 -0
- package/src/cfg/generated/cfg__newsletter__subscriptions/index.ts +2 -0
- package/src/cfg/generated/cfg__newsletter__subscriptions/models.ts +92 -0
- package/src/cfg/generated/cfg__newsletter__testing/client.ts +24 -0
- package/src/cfg/generated/cfg__newsletter__testing/index.ts +2 -0
- package/src/cfg/generated/cfg__newsletter__testing/models.ts +24 -0
- package/src/cfg/generated/cfg__payments/client.ts +1814 -0
- package/src/cfg/generated/cfg__payments/index.ts +2 -0
- package/src/cfg/generated/cfg__payments/models.ts +1855 -0
- package/src/cfg/generated/cfg__payments__webhooks/client.ts +75 -0
- package/src/cfg/generated/cfg__payments__webhooks/index.ts +2 -0
- package/src/cfg/generated/cfg__payments__webhooks/models.ts +87 -0
- package/src/cfg/generated/cfg__support/client.ts +133 -0
- package/src/cfg/generated/cfg__support/index.ts +2 -0
- package/src/cfg/generated/cfg__support/models.ts +165 -0
- package/src/cfg/generated/cfg__tasks/client.ts +94 -0
- package/src/cfg/generated/cfg__tasks/index.ts +2 -0
- package/src/cfg/generated/cfg__tasks/models.ts +140 -0
- package/src/cfg/generated/client.ts +302 -0
- package/src/cfg/generated/enums.ts +608 -0
- package/src/cfg/generated/errors.ts +116 -0
- package/src/cfg/generated/http.ts +98 -0
- package/src/cfg/generated/index.ts +299 -0
- package/src/cfg/generated/logger.ts +259 -0
- package/src/cfg/generated/package.json +39 -0
- package/src/cfg/generated/retry.ts +175 -0
- package/src/cfg/generated/schema.ts +18399 -0
- package/src/cfg/generated/storage.ts +158 -0
- package/src/cfg/generated/tsconfig.json +20 -0
- package/src/cfg/services/auth/AuthService.ts +165 -0
- package/src/cfg/services/auth/index.ts +7 -0
- package/src/cfg/services/index.ts +31 -0
- package/src/cfg/services/leads/LeadsService.ts +133 -0
- package/src/cfg/services/leads/index.ts +7 -0
- package/src/cfg/services/newsletter/BulkEmailService.ts +35 -0
- package/src/cfg/services/newsletter/CampaignsService.ts +138 -0
- package/src/cfg/services/newsletter/NewsletterService.ts +79 -0
- package/src/cfg/services/newsletter/NewslettersListService.ts +48 -0
- package/src/cfg/services/newsletter/index.ts +10 -0
- package/src/cfg/services/payments/ApiKeysService.ts +183 -0
- package/src/cfg/services/payments/DashboardService.ts +197 -0
- package/src/cfg/services/payments/PaymentsService.ts +192 -0
- package/src/cfg/services/payments/SubscriptionsService.ts +202 -0
- package/src/cfg/services/payments/index.ts +10 -0
- package/src/cfg/services/support/SupportService.ts +142 -0
- package/src/cfg/services/support/index.ts +7 -0
- package/src/cfg/services/tasks/TasksService.ts +170 -0
- package/src/cfg/services/tasks/index.ts +7 -0
- package/src/cfg/services/webhooks/WebhooksService.ts +108 -0
- package/src/cfg/services/webhooks/index.ts +7 -0
- package/src/index.ts +35 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Knowbase Contexts
|
|
3
|
+
*
|
|
4
|
+
* Contexts for knowledge base functionality:
|
|
5
|
+
* - ChatContext: RAG-powered chat
|
|
6
|
+
* - DocumentsContext: Documents and archives management
|
|
7
|
+
* - SessionsContext: Chat sessions management
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
// Chat Context
|
|
11
|
+
export {
|
|
12
|
+
KnowbaseChatProvider,
|
|
13
|
+
useKnowbaseChatContext,
|
|
14
|
+
} from './ChatContext';
|
|
15
|
+
export type {
|
|
16
|
+
KnowbaseChatContextValue,
|
|
17
|
+
ChatResponse,
|
|
18
|
+
ChatResponseRequest,
|
|
19
|
+
PatchedChatResponseRequest,
|
|
20
|
+
ChatHistory,
|
|
21
|
+
ChatQueryRequest,
|
|
22
|
+
ChatMessage,
|
|
23
|
+
ChatSource,
|
|
24
|
+
} from './ChatContext';
|
|
25
|
+
|
|
26
|
+
// Documents Context
|
|
27
|
+
export {
|
|
28
|
+
KnowbaseDocumentsProvider,
|
|
29
|
+
useKnowbaseDocumentsContext,
|
|
30
|
+
} from './DocumentsContext';
|
|
31
|
+
export type {
|
|
32
|
+
KnowbaseDocumentsContextValue,
|
|
33
|
+
Document,
|
|
34
|
+
DocumentCreateRequest,
|
|
35
|
+
DocumentRequest,
|
|
36
|
+
PatchedDocumentRequest,
|
|
37
|
+
DocumentProcessingStatus,
|
|
38
|
+
DocumentStats,
|
|
39
|
+
DocumentArchive,
|
|
40
|
+
DocumentArchiveDetail,
|
|
41
|
+
PatchedDocumentArchiveRequest,
|
|
42
|
+
ArchiveProcessingResult,
|
|
43
|
+
ArchiveStatistics,
|
|
44
|
+
} from './DocumentsContext';
|
|
45
|
+
|
|
46
|
+
// Sessions Context
|
|
47
|
+
export {
|
|
48
|
+
KnowbaseSessionsProvider,
|
|
49
|
+
useKnowbaseSessionsContext,
|
|
50
|
+
} from './SessionsContext';
|
|
51
|
+
export type {
|
|
52
|
+
KnowbaseSessionsContextValue,
|
|
53
|
+
ChatSession,
|
|
54
|
+
ChatSessionCreateRequest,
|
|
55
|
+
ChatSessionRequest,
|
|
56
|
+
PatchedChatSessionRequest,
|
|
57
|
+
} from './SessionsContext';
|
|
58
|
+
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import React, { createContext, useContext, type ReactNode } from 'react';
|
|
4
|
+
import { api } from '../../BaseClient';
|
|
5
|
+
import {
|
|
6
|
+
usePaymentsApiKeysList,
|
|
7
|
+
usePaymentsApiKeysRetrieve,
|
|
8
|
+
useCreatePaymentsApiKeysCreate,
|
|
9
|
+
useDeletePaymentsApiKeysDestroy,
|
|
10
|
+
} from '../../generated/_utils/hooks';
|
|
11
|
+
import type { API } from '../../generated';
|
|
12
|
+
import type {
|
|
13
|
+
APIKeyDetail,
|
|
14
|
+
APIKeyCreateRequest,
|
|
15
|
+
PaginatedAPIKeyListList,
|
|
16
|
+
} from '../../generated/_utils/schemas';
|
|
17
|
+
|
|
18
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
19
|
+
// Context Type
|
|
20
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
21
|
+
|
|
22
|
+
export interface ApiKeysContextValue {
|
|
23
|
+
// List
|
|
24
|
+
apiKeys: PaginatedAPIKeyListList | undefined;
|
|
25
|
+
isLoadingApiKeys: boolean;
|
|
26
|
+
apiKeysError: Error | undefined;
|
|
27
|
+
refreshApiKeys: () => Promise<void>;
|
|
28
|
+
|
|
29
|
+
// Operations
|
|
30
|
+
getApiKey: (id: string) => Promise<APIKeyDetail | undefined>;
|
|
31
|
+
createApiKey: (data: APIKeyCreateRequest) => Promise<APIKeyDetail>;
|
|
32
|
+
deleteApiKey: (id: string) => Promise<void>;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
36
|
+
// Context
|
|
37
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
38
|
+
|
|
39
|
+
const ApiKeysContext = createContext<ApiKeysContextValue | undefined>(undefined);
|
|
40
|
+
|
|
41
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
42
|
+
// Provider
|
|
43
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
44
|
+
|
|
45
|
+
export function ApiKeysProvider({ children }: { children: ReactNode }) {
|
|
46
|
+
// List API keys
|
|
47
|
+
const {
|
|
48
|
+
data: apiKeys,
|
|
49
|
+
error: apiKeysError,
|
|
50
|
+
isLoading: isLoadingApiKeys,
|
|
51
|
+
mutate: mutateApiKeys,
|
|
52
|
+
} = usePaymentsApiKeysList({}, api as unknown as API);
|
|
53
|
+
|
|
54
|
+
const refreshApiKeys = async () => {
|
|
55
|
+
await mutateApiKeys();
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
// Mutations
|
|
59
|
+
const createApiKeyMutation = useCreatePaymentsApiKeysCreate();
|
|
60
|
+
const deleteApiKeyMutation = useDeletePaymentsApiKeysDestroy();
|
|
61
|
+
|
|
62
|
+
// Get API key
|
|
63
|
+
const getApiKey = async (id: string): Promise<APIKeyDetail | undefined> => {
|
|
64
|
+
const { data } = usePaymentsApiKeysRetrieve(id, api as unknown as API);
|
|
65
|
+
return data;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
// Create API key
|
|
69
|
+
const createApiKey = async (data: APIKeyCreateRequest): Promise<APIKeyDetail> => {
|
|
70
|
+
const result = await createApiKeyMutation(data, api as unknown as API);
|
|
71
|
+
await refreshApiKeys();
|
|
72
|
+
return result as APIKeyDetail;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
// Delete API key
|
|
76
|
+
const deleteApiKey = async (id: string): Promise<void> => {
|
|
77
|
+
await deleteApiKeyMutation(id, api as unknown as API);
|
|
78
|
+
await refreshApiKeys();
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
const value: ApiKeysContextValue = {
|
|
82
|
+
apiKeys,
|
|
83
|
+
isLoadingApiKeys,
|
|
84
|
+
apiKeysError,
|
|
85
|
+
refreshApiKeys,
|
|
86
|
+
getApiKey,
|
|
87
|
+
createApiKey,
|
|
88
|
+
deleteApiKey,
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
return <ApiKeysContext.Provider value={value}>{children}</ApiKeysContext.Provider>;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
95
|
+
// Hook
|
|
96
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
97
|
+
|
|
98
|
+
export function useApiKeysContext(): ApiKeysContextValue {
|
|
99
|
+
const context = useContext(ApiKeysContext);
|
|
100
|
+
if (!context) {
|
|
101
|
+
throw new Error('useApiKeysContext must be used within ApiKeysProvider');
|
|
102
|
+
}
|
|
103
|
+
return context;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
107
|
+
// Re-export types
|
|
108
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
109
|
+
|
|
110
|
+
export type {
|
|
111
|
+
APIKeyDetail,
|
|
112
|
+
APIKeyCreateRequest,
|
|
113
|
+
PaginatedAPIKeyListList,
|
|
114
|
+
};
|
|
115
|
+
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import React, { createContext, useContext, type ReactNode } from 'react';
|
|
4
|
+
import { api } from '../../BaseClient';
|
|
5
|
+
import {
|
|
6
|
+
usePaymentsBalancesList,
|
|
7
|
+
usePaymentsBalancesSummaryRetrieve,
|
|
8
|
+
} from '../../generated/_utils/hooks';
|
|
9
|
+
import { getPaymentsBalancesRetrieve } from '../../generated/_utils/fetchers';
|
|
10
|
+
import { defaultLogger } from '../../generated/logger';
|
|
11
|
+
import type { API } from '../../generated';
|
|
12
|
+
import type {
|
|
13
|
+
UserBalance,
|
|
14
|
+
PaginatedUserBalanceList,
|
|
15
|
+
} from '../../generated/_utils/schemas';
|
|
16
|
+
|
|
17
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
18
|
+
// Context Type
|
|
19
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
20
|
+
|
|
21
|
+
export interface BalancesContextValue {
|
|
22
|
+
// List
|
|
23
|
+
balances: PaginatedUserBalanceList | undefined;
|
|
24
|
+
isLoadingBalances: boolean;
|
|
25
|
+
balancesError: Error | undefined;
|
|
26
|
+
refreshBalances: () => Promise<void>;
|
|
27
|
+
|
|
28
|
+
// Summary
|
|
29
|
+
balanceSummary: UserBalance | undefined;
|
|
30
|
+
isLoadingSummary: boolean;
|
|
31
|
+
summaryError: Error | undefined;
|
|
32
|
+
refreshSummary: () => Promise<void>;
|
|
33
|
+
|
|
34
|
+
// Retrieve balance by ID mutation
|
|
35
|
+
retrieveBalance: (id: number) => Promise<UserBalance | undefined>;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
39
|
+
// Context
|
|
40
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
41
|
+
|
|
42
|
+
const BalancesContext = createContext<BalancesContextValue | undefined>(undefined);
|
|
43
|
+
|
|
44
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
45
|
+
// Provider
|
|
46
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
47
|
+
|
|
48
|
+
export function BalancesProvider({ children }: { children: ReactNode }) {
|
|
49
|
+
// List balances
|
|
50
|
+
const {
|
|
51
|
+
data: balances,
|
|
52
|
+
error: balancesError,
|
|
53
|
+
isLoading: isLoadingBalances,
|
|
54
|
+
mutate: mutateBalances,
|
|
55
|
+
} = usePaymentsBalancesList({}, api as unknown as API);
|
|
56
|
+
|
|
57
|
+
// Balance summary
|
|
58
|
+
const {
|
|
59
|
+
data: balanceSummary,
|
|
60
|
+
error: summaryError,
|
|
61
|
+
isLoading: isLoadingSummary,
|
|
62
|
+
mutate: mutateSummary,
|
|
63
|
+
} = usePaymentsBalancesSummaryRetrieve(api as unknown as API);
|
|
64
|
+
|
|
65
|
+
const refreshBalances = async () => {
|
|
66
|
+
await mutateBalances();
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
const refreshSummary = async () => {
|
|
70
|
+
await mutateSummary();
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
// Retrieve balance by ID
|
|
74
|
+
const retrieveBalance = async (id: number): Promise<UserBalance | undefined> => {
|
|
75
|
+
try {
|
|
76
|
+
const result = await getPaymentsBalancesRetrieve(id, api as unknown as API);
|
|
77
|
+
return result;
|
|
78
|
+
} catch (error) {
|
|
79
|
+
defaultLogger.error('Failed to retrieve balance:', error);
|
|
80
|
+
return undefined;
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
const value: BalancesContextValue = {
|
|
85
|
+
balances,
|
|
86
|
+
isLoadingBalances,
|
|
87
|
+
balancesError,
|
|
88
|
+
refreshBalances,
|
|
89
|
+
balanceSummary,
|
|
90
|
+
isLoadingSummary,
|
|
91
|
+
summaryError,
|
|
92
|
+
refreshSummary,
|
|
93
|
+
retrieveBalance,
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
return <BalancesContext.Provider value={value}>{children}</BalancesContext.Provider>;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
100
|
+
// Hook
|
|
101
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
102
|
+
|
|
103
|
+
export function useBalancesContext(): BalancesContextValue {
|
|
104
|
+
const context = useContext(BalancesContext);
|
|
105
|
+
if (!context) {
|
|
106
|
+
throw new Error('useBalancesContext must be used within BalancesProvider');
|
|
107
|
+
}
|
|
108
|
+
return context;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
112
|
+
// Re-export types
|
|
113
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
114
|
+
|
|
115
|
+
export type {
|
|
116
|
+
UserBalance,
|
|
117
|
+
PaginatedUserBalanceList,
|
|
118
|
+
};
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import React, { createContext, useContext, type ReactNode } from 'react';
|
|
4
|
+
import { api } from '../../BaseClient';
|
|
5
|
+
import {
|
|
6
|
+
usePaymentsCurrenciesList,
|
|
7
|
+
usePaymentsCurrenciesRetrieve,
|
|
8
|
+
usePaymentsCurrenciesRatesRetrieve,
|
|
9
|
+
} from '../../generated/_utils/hooks';
|
|
10
|
+
import type { API } from '../../generated';
|
|
11
|
+
import type {
|
|
12
|
+
Currency,
|
|
13
|
+
PaginatedCurrencyListList,
|
|
14
|
+
} from '../../generated/_utils/schemas';
|
|
15
|
+
|
|
16
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
17
|
+
// Context Type
|
|
18
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
19
|
+
|
|
20
|
+
export interface CurrenciesContextValue {
|
|
21
|
+
// List
|
|
22
|
+
currencies: PaginatedCurrencyListList | undefined;
|
|
23
|
+
isLoadingCurrencies: boolean;
|
|
24
|
+
currenciesError: Error | undefined;
|
|
25
|
+
refreshCurrencies: () => Promise<void>;
|
|
26
|
+
|
|
27
|
+
// Operations
|
|
28
|
+
getCurrency: (id: number) => Promise<Currency | undefined>;
|
|
29
|
+
getCurrencyRates: (baseCurrency: string, currencies: string) => Promise<Currency | undefined>;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
33
|
+
// Context
|
|
34
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
35
|
+
|
|
36
|
+
const CurrenciesContext = createContext<CurrenciesContextValue | undefined>(undefined);
|
|
37
|
+
|
|
38
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
39
|
+
// Provider
|
|
40
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
41
|
+
|
|
42
|
+
export function CurrenciesProvider({ children }: { children: ReactNode }) {
|
|
43
|
+
// List currencies
|
|
44
|
+
const {
|
|
45
|
+
data: currencies,
|
|
46
|
+
error: currenciesError,
|
|
47
|
+
isLoading: isLoadingCurrencies,
|
|
48
|
+
mutate: mutateCurrencies,
|
|
49
|
+
} = usePaymentsCurrenciesList({}, api as unknown as API);
|
|
50
|
+
|
|
51
|
+
const refreshCurrencies = async () => {
|
|
52
|
+
await mutateCurrencies();
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
// Get currency
|
|
56
|
+
const getCurrency = async (id: number): Promise<Currency | undefined> => {
|
|
57
|
+
const { data } = usePaymentsCurrenciesRetrieve(id, api as unknown as API);
|
|
58
|
+
return data;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
// Get currency rates
|
|
62
|
+
const getCurrencyRates = async (
|
|
63
|
+
baseCurrency: string,
|
|
64
|
+
currencies: string
|
|
65
|
+
): Promise<Currency | undefined> => {
|
|
66
|
+
const { data } = usePaymentsCurrenciesRatesRetrieve(
|
|
67
|
+
{ base_currency: baseCurrency, currencies },
|
|
68
|
+
api as unknown as API
|
|
69
|
+
);
|
|
70
|
+
return data;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
const value: CurrenciesContextValue = {
|
|
74
|
+
currencies,
|
|
75
|
+
isLoadingCurrencies,
|
|
76
|
+
currenciesError,
|
|
77
|
+
refreshCurrencies,
|
|
78
|
+
getCurrency,
|
|
79
|
+
getCurrencyRates,
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
return <CurrenciesContext.Provider value={value}>{children}</CurrenciesContext.Provider>;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
86
|
+
// Hook
|
|
87
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
88
|
+
|
|
89
|
+
export function useCurrenciesContext(): CurrenciesContextValue {
|
|
90
|
+
const context = useContext(CurrenciesContext);
|
|
91
|
+
if (!context) {
|
|
92
|
+
throw new Error('useCurrenciesContext must be used within CurrenciesProvider');
|
|
93
|
+
}
|
|
94
|
+
return context;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
98
|
+
// Re-export types
|
|
99
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
100
|
+
|
|
101
|
+
export type {
|
|
102
|
+
Currency,
|
|
103
|
+
PaginatedCurrencyListList,
|
|
104
|
+
};
|
|
105
|
+
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import React, { createContext, useContext, type ReactNode } from 'react';
|
|
4
|
+
import { SWRConfig } from 'swr';
|
|
5
|
+
import { api } from '../../BaseClient';
|
|
6
|
+
import {
|
|
7
|
+
usePaymentsOverviewDashboardOverviewRetrieve,
|
|
8
|
+
usePaymentsOverviewDashboardMetricsRetrieve,
|
|
9
|
+
usePaymentsOverviewDashboardBalanceOverviewRetrieve,
|
|
10
|
+
usePaymentsOverviewDashboardApiKeysOverviewRetrieve,
|
|
11
|
+
usePaymentsOverviewDashboardChartDataRetrieve,
|
|
12
|
+
usePaymentsOverviewDashboardRecentPaymentsList,
|
|
13
|
+
usePaymentsOverviewDashboardRecentTransactionsList,
|
|
14
|
+
usePaymentsOverviewDashboardSubscriptionOverviewRetrieve,
|
|
15
|
+
} from '../../generated/_utils/hooks';
|
|
16
|
+
import type { API } from '../../generated';
|
|
17
|
+
import type {
|
|
18
|
+
PaymentsDashboardOverview,
|
|
19
|
+
PaymentsMetrics,
|
|
20
|
+
BalanceOverview,
|
|
21
|
+
APIKeysOverview,
|
|
22
|
+
PaymentsChartResponse,
|
|
23
|
+
PaginatedRecentPaymentList,
|
|
24
|
+
PaginatedRecentTransactionList,
|
|
25
|
+
SubscriptionOverview,
|
|
26
|
+
} from '../../generated/_utils/schemas';
|
|
27
|
+
|
|
28
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
29
|
+
// Context Type
|
|
30
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
31
|
+
|
|
32
|
+
export interface OverviewContextValue {
|
|
33
|
+
// Dashboard data
|
|
34
|
+
overview: PaymentsDashboardOverview | undefined;
|
|
35
|
+
metrics: PaymentsMetrics | undefined;
|
|
36
|
+
balanceOverview: BalanceOverview | undefined;
|
|
37
|
+
apiKeysOverview: APIKeysOverview | undefined;
|
|
38
|
+
subscriptionOverview: SubscriptionOverview | undefined;
|
|
39
|
+
chartData: PaymentsChartResponse | undefined;
|
|
40
|
+
recentPayments: PaginatedRecentPaymentList | undefined;
|
|
41
|
+
recentTransactions: PaginatedRecentTransactionList | undefined;
|
|
42
|
+
|
|
43
|
+
// Loading states
|
|
44
|
+
isLoadingOverview: boolean;
|
|
45
|
+
overviewError: Error | undefined;
|
|
46
|
+
|
|
47
|
+
// Operations
|
|
48
|
+
refreshOverview: () => Promise<void>;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
52
|
+
// Context
|
|
53
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
54
|
+
|
|
55
|
+
const OverviewContext = createContext<OverviewContextValue | undefined>(undefined);
|
|
56
|
+
|
|
57
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
58
|
+
// Provider
|
|
59
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
60
|
+
|
|
61
|
+
export function OverviewProvider({ children }: { children: ReactNode }) {
|
|
62
|
+
// SWR config for overview data - disable auto-revalidation
|
|
63
|
+
const swrConfig = {
|
|
64
|
+
revalidateOnFocus: false,
|
|
65
|
+
revalidateOnReconnect: false,
|
|
66
|
+
revalidateIfStale: false,
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
// Dashboard overview
|
|
70
|
+
const { data: overview, error: overviewError, isLoading: isLoadingOverview1, mutate: mutateOverview } = usePaymentsOverviewDashboardOverviewRetrieve(api as unknown as API);
|
|
71
|
+
const { data: metrics, mutate: mutateMetrics } = usePaymentsOverviewDashboardMetricsRetrieve(api as unknown as API);
|
|
72
|
+
const { data: balanceOverview, mutate: mutateBalanceOverview } = usePaymentsOverviewDashboardBalanceOverviewRetrieve(api as unknown as API);
|
|
73
|
+
const { data: apiKeysOverview, mutate: mutateApiKeysOverview } = usePaymentsOverviewDashboardApiKeysOverviewRetrieve(api as unknown as API);
|
|
74
|
+
const { data: subscriptionOverview, mutate: mutateSubscriptionOverview } = usePaymentsOverviewDashboardSubscriptionOverviewRetrieve(api as unknown as API);
|
|
75
|
+
const { data: chartData, mutate: mutateChartData } = usePaymentsOverviewDashboardChartDataRetrieve({}, api as unknown as API);
|
|
76
|
+
const { data: recentPayments, mutate: mutateRecentPayments } = usePaymentsOverviewDashboardRecentPaymentsList({}, api as unknown as API);
|
|
77
|
+
const { data: recentTransactions, mutate: mutateRecentTransactions } = usePaymentsOverviewDashboardRecentTransactionsList({}, api as unknown as API);
|
|
78
|
+
|
|
79
|
+
const isLoadingOverview = isLoadingOverview1;
|
|
80
|
+
|
|
81
|
+
const refreshOverview = async () => {
|
|
82
|
+
await Promise.all([
|
|
83
|
+
mutateOverview(),
|
|
84
|
+
mutateMetrics(),
|
|
85
|
+
mutateBalanceOverview(),
|
|
86
|
+
mutateApiKeysOverview(),
|
|
87
|
+
mutateSubscriptionOverview(),
|
|
88
|
+
mutateChartData(),
|
|
89
|
+
mutateRecentPayments(),
|
|
90
|
+
mutateRecentTransactions(),
|
|
91
|
+
]);
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
const value: OverviewContextValue = {
|
|
95
|
+
overview,
|
|
96
|
+
metrics,
|
|
97
|
+
balanceOverview,
|
|
98
|
+
apiKeysOverview,
|
|
99
|
+
subscriptionOverview,
|
|
100
|
+
chartData,
|
|
101
|
+
recentPayments,
|
|
102
|
+
recentTransactions,
|
|
103
|
+
isLoadingOverview,
|
|
104
|
+
overviewError,
|
|
105
|
+
refreshOverview,
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
return (
|
|
109
|
+
<SWRConfig value={swrConfig}>
|
|
110
|
+
<OverviewContext.Provider value={value}>{children}</OverviewContext.Provider>
|
|
111
|
+
</SWRConfig>
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
116
|
+
// Hook
|
|
117
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
118
|
+
|
|
119
|
+
export function useOverviewContext(): OverviewContextValue {
|
|
120
|
+
const context = useContext(OverviewContext);
|
|
121
|
+
if (!context) {
|
|
122
|
+
throw new Error('useOverviewContext must be used within OverviewProvider');
|
|
123
|
+
}
|
|
124
|
+
return context;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
128
|
+
// Re-export types
|
|
129
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
130
|
+
|
|
131
|
+
export type {
|
|
132
|
+
PaymentsDashboardOverview,
|
|
133
|
+
PaymentsMetrics,
|
|
134
|
+
BalanceOverview,
|
|
135
|
+
APIKeysOverview,
|
|
136
|
+
SubscriptionOverview,
|
|
137
|
+
PaymentsChartResponse,
|
|
138
|
+
PaginatedRecentPaymentList,
|
|
139
|
+
PaginatedRecentTransactionList,
|
|
140
|
+
};
|
|
141
|
+
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import React, { createContext, useContext, type ReactNode } from 'react';
|
|
4
|
+
import { api } from '../../BaseClient';
|
|
5
|
+
import {
|
|
6
|
+
usePaymentsPaymentList,
|
|
7
|
+
usePaymentsPaymentRetrieve,
|
|
8
|
+
useCreatePaymentsPaymentCreate,
|
|
9
|
+
useCreatePaymentsPaymentCancelCreate,
|
|
10
|
+
useCreatePaymentsPaymentCheckStatusCreate,
|
|
11
|
+
} from '../../generated/_utils/hooks';
|
|
12
|
+
import type { API } from '../../generated';
|
|
13
|
+
import type {
|
|
14
|
+
Payment,
|
|
15
|
+
PaymentCreate,
|
|
16
|
+
PaymentCreateRequest,
|
|
17
|
+
PaymentRequest,
|
|
18
|
+
PaginatedPaymentListList,
|
|
19
|
+
} from '../../generated/_utils/schemas';
|
|
20
|
+
|
|
21
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
22
|
+
// Context Type
|
|
23
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
24
|
+
|
|
25
|
+
export interface PaymentsContextValue {
|
|
26
|
+
// List
|
|
27
|
+
payments: PaginatedPaymentListList | undefined;
|
|
28
|
+
isLoadingPayments: boolean;
|
|
29
|
+
paymentsError: Error | undefined;
|
|
30
|
+
refreshPayments: () => Promise<void>;
|
|
31
|
+
|
|
32
|
+
// Operations
|
|
33
|
+
getPayment: (id: string) => Promise<Payment | undefined>;
|
|
34
|
+
createPayment: (data: PaymentCreateRequest) => Promise<PaymentCreate>;
|
|
35
|
+
cancelPayment: (id: string, data: PaymentRequest) => Promise<Payment>;
|
|
36
|
+
checkPaymentStatus: (id: string, data: PaymentRequest) => Promise<Payment>;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
40
|
+
// Context
|
|
41
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
42
|
+
|
|
43
|
+
const PaymentsContext = createContext<PaymentsContextValue | undefined>(undefined);
|
|
44
|
+
|
|
45
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
46
|
+
// Provider
|
|
47
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
48
|
+
|
|
49
|
+
export function PaymentsProvider({ children }: { children: ReactNode }) {
|
|
50
|
+
// List payments
|
|
51
|
+
const {
|
|
52
|
+
data: payments,
|
|
53
|
+
error: paymentsError,
|
|
54
|
+
isLoading: isLoadingPayments,
|
|
55
|
+
mutate: mutatePayments,
|
|
56
|
+
} = usePaymentsPaymentList({}, api as unknown as API);
|
|
57
|
+
|
|
58
|
+
const refreshPayments = async () => {
|
|
59
|
+
await mutatePayments();
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
// Mutations
|
|
63
|
+
const createPaymentMutation = useCreatePaymentsPaymentCreate();
|
|
64
|
+
const cancelPaymentMutation = useCreatePaymentsPaymentCancelCreate();
|
|
65
|
+
const checkStatusMutation = useCreatePaymentsPaymentCheckStatusCreate();
|
|
66
|
+
|
|
67
|
+
// Get single payment
|
|
68
|
+
const getPayment = async (id: string): Promise<Payment | undefined> => {
|
|
69
|
+
const { data } = usePaymentsPaymentRetrieve(id, api as unknown as API);
|
|
70
|
+
return data;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
// Create payment
|
|
74
|
+
const createPayment = async (data: PaymentCreateRequest): Promise<PaymentCreate> => {
|
|
75
|
+
const result = await createPaymentMutation(data, api as unknown as API);
|
|
76
|
+
await refreshPayments();
|
|
77
|
+
return result as PaymentCreate;
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
// Cancel payment
|
|
81
|
+
const cancelPayment = async (id: string, data: PaymentRequest): Promise<Payment> => {
|
|
82
|
+
const result = await cancelPaymentMutation(id, data, api as unknown as API);
|
|
83
|
+
await refreshPayments();
|
|
84
|
+
return result as Payment;
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
// Check payment status
|
|
88
|
+
const checkPaymentStatus = async (id: string, data: PaymentRequest): Promise<Payment> => {
|
|
89
|
+
const result = await checkStatusMutation(id, data, api as unknown as API);
|
|
90
|
+
await refreshPayments();
|
|
91
|
+
return result as Payment;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
const value: PaymentsContextValue = {
|
|
95
|
+
payments,
|
|
96
|
+
isLoadingPayments,
|
|
97
|
+
paymentsError,
|
|
98
|
+
refreshPayments,
|
|
99
|
+
getPayment,
|
|
100
|
+
createPayment,
|
|
101
|
+
cancelPayment,
|
|
102
|
+
checkPaymentStatus,
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
return <PaymentsContext.Provider value={value}>{children}</PaymentsContext.Provider>;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
109
|
+
// Hook
|
|
110
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
111
|
+
|
|
112
|
+
export function usePaymentsContext(): PaymentsContextValue {
|
|
113
|
+
const context = useContext(PaymentsContext);
|
|
114
|
+
if (!context) {
|
|
115
|
+
throw new Error('usePaymentsContext must be used within PaymentsProvider');
|
|
116
|
+
}
|
|
117
|
+
return context;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
121
|
+
// Re-export types
|
|
122
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
123
|
+
|
|
124
|
+
export type {
|
|
125
|
+
Payment,
|
|
126
|
+
PaymentCreate,
|
|
127
|
+
PaymentCreateRequest,
|
|
128
|
+
PaymentRequest,
|
|
129
|
+
PaginatedPaymentListList,
|
|
130
|
+
};
|
|
131
|
+
|