@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,100 @@
|
|
|
1
|
+
import * as Enums from "../enums";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Serializer for OTP request.
|
|
5
|
+
*
|
|
6
|
+
* Request model (no read-only fields).
|
|
7
|
+
*/
|
|
8
|
+
export interface OTPRequestRequest {
|
|
9
|
+
/** Email address or phone number for OTP delivery */
|
|
10
|
+
identifier: string;
|
|
11
|
+
/** Delivery channel: 'email' or 'phone'. Auto-detected if not provided.
|
|
12
|
+
|
|
13
|
+
* `email` - Email
|
|
14
|
+
* `phone` - Phone */
|
|
15
|
+
channel?: Enums.OTPRequestRequestChannel;
|
|
16
|
+
/** Source URL for tracking registration (e.g., https://dashboard.unrealon.com) */
|
|
17
|
+
source_url?: string;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* OTP request response.
|
|
22
|
+
*
|
|
23
|
+
* Response model (includes read-only fields).
|
|
24
|
+
*/
|
|
25
|
+
export interface OTPRequestResponse {
|
|
26
|
+
/** Success message */
|
|
27
|
+
message: string;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Error response for OTP operations.
|
|
32
|
+
*
|
|
33
|
+
* Response model (includes read-only fields).
|
|
34
|
+
*/
|
|
35
|
+
export interface OTPErrorResponse {
|
|
36
|
+
/** Error message */
|
|
37
|
+
error: string;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Serializer for OTP verification.
|
|
42
|
+
*
|
|
43
|
+
* Request model (no read-only fields).
|
|
44
|
+
*/
|
|
45
|
+
export interface OTPVerifyRequest {
|
|
46
|
+
/** Email address or phone number used for OTP request */
|
|
47
|
+
identifier: string;
|
|
48
|
+
otp: string;
|
|
49
|
+
/** Delivery channel: 'email' or 'phone'. Auto-detected if not provided.
|
|
50
|
+
|
|
51
|
+
* `email` - Email
|
|
52
|
+
* `phone` - Phone */
|
|
53
|
+
channel?: Enums.OTPVerifyRequestChannel;
|
|
54
|
+
/** Source URL for tracking login (e.g., https://dashboard.unrealon.com) */
|
|
55
|
+
source_url?: string;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* OTP verification response.
|
|
60
|
+
*
|
|
61
|
+
* Response model (includes read-only fields).
|
|
62
|
+
*/
|
|
63
|
+
export interface OTPVerifyResponse {
|
|
64
|
+
/** JWT refresh token */
|
|
65
|
+
refresh: string;
|
|
66
|
+
/** JWT access token */
|
|
67
|
+
access: string;
|
|
68
|
+
user: Record<string, any>;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Serializer for user details.
|
|
73
|
+
*
|
|
74
|
+
* Response model (includes read-only fields).
|
|
75
|
+
*/
|
|
76
|
+
export interface User {
|
|
77
|
+
id: number;
|
|
78
|
+
email: string;
|
|
79
|
+
first_name?: string;
|
|
80
|
+
last_name?: string;
|
|
81
|
+
/** Get user's full name. */
|
|
82
|
+
full_name: string;
|
|
83
|
+
/** Get user's initials for avatar fallback. */
|
|
84
|
+
initials: string;
|
|
85
|
+
/** Get formatted username for display. */
|
|
86
|
+
display_username: string;
|
|
87
|
+
company?: string;
|
|
88
|
+
phone?: string;
|
|
89
|
+
position?: string;
|
|
90
|
+
avatar: string | null;
|
|
91
|
+
/** Designates whether the user can log into this admin site. */
|
|
92
|
+
is_staff: boolean;
|
|
93
|
+
/** Designates that this user has all permissions without explicitly assigning them. */
|
|
94
|
+
is_superuser: boolean;
|
|
95
|
+
date_joined: string;
|
|
96
|
+
last_login: string | null;
|
|
97
|
+
/** Get count of unanswered messages for the user. */
|
|
98
|
+
unanswered_messages_count: number;
|
|
99
|
+
}
|
|
100
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as Models from "./models";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* API endpoints for Auth.
|
|
6
|
+
*/
|
|
7
|
+
export class CfgAuthAPI {
|
|
8
|
+
private client: any;
|
|
9
|
+
|
|
10
|
+
constructor(client: any) {
|
|
11
|
+
this.client = client;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Refresh JWT token.
|
|
16
|
+
*/
|
|
17
|
+
async accountsTokenRefreshCreate(data: Models.TokenRefreshRequest): Promise<Models.TokenRefresh> {
|
|
18
|
+
const response = await this.client.request('POST', "/cfg/accounts/token/refresh/", { body: data });
|
|
19
|
+
return response;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
*
|
|
3
|
+
* Request model (no read-only fields).
|
|
4
|
+
*/
|
|
5
|
+
export interface TokenRefreshRequest {
|
|
6
|
+
refresh: string;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
* Response model (includes read-only fields).
|
|
12
|
+
*/
|
|
13
|
+
export interface TokenRefresh {
|
|
14
|
+
access: string;
|
|
15
|
+
refresh: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import * as Models from "./models";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* API endpoints for User Profile.
|
|
6
|
+
*/
|
|
7
|
+
export class CfgUserProfileAPI {
|
|
8
|
+
private client: any;
|
|
9
|
+
|
|
10
|
+
constructor(client: any) {
|
|
11
|
+
this.client = client;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Get current user profile
|
|
16
|
+
*
|
|
17
|
+
* Retrieve the current authenticated user's profile information.
|
|
18
|
+
*/
|
|
19
|
+
async accountsProfileRetrieve(): Promise<Models.User> {
|
|
20
|
+
const response = await this.client.request('GET', "/cfg/accounts/profile/");
|
|
21
|
+
return response;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Upload user avatar
|
|
26
|
+
*
|
|
27
|
+
* Upload avatar image for the current authenticated user. Accepts
|
|
28
|
+
* multipart/form-data with 'avatar' field.
|
|
29
|
+
*/
|
|
30
|
+
async accountsProfileAvatarCreate(data: FormData): Promise<Models.User> {
|
|
31
|
+
const response = await this.client.request('POST', "/cfg/accounts/profile/avatar/", { formData: data });
|
|
32
|
+
return response;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Partial update user profile
|
|
37
|
+
*
|
|
38
|
+
* Partially update the current authenticated user's profile information.
|
|
39
|
+
* Supports avatar upload.
|
|
40
|
+
*/
|
|
41
|
+
async accountsProfilePartialUpdate(data: Models.UserProfileUpdateRequest): Promise<Models.User> {
|
|
42
|
+
const response = await this.client.request('PUT', "/cfg/accounts/profile/partial/", { body: data });
|
|
43
|
+
return response;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Partial update user profile
|
|
48
|
+
*
|
|
49
|
+
* Partially update the current authenticated user's profile information.
|
|
50
|
+
* Supports avatar upload.
|
|
51
|
+
*/
|
|
52
|
+
async accountsProfilePartialPartialUpdate(data?: Models.PatchedUserProfileUpdateRequest): Promise<Models.User> {
|
|
53
|
+
const response = await this.client.request('PATCH', "/cfg/accounts/profile/partial/", { body: data });
|
|
54
|
+
return response;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Update user profile
|
|
59
|
+
*
|
|
60
|
+
* Update the current authenticated user's profile information.
|
|
61
|
+
*/
|
|
62
|
+
async accountsProfileUpdateUpdate(data: Models.UserProfileUpdateRequest): Promise<Models.User> {
|
|
63
|
+
const response = await this.client.request('PUT', "/cfg/accounts/profile/update/", { body: data });
|
|
64
|
+
return response;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Update user profile
|
|
69
|
+
*
|
|
70
|
+
* Update the current authenticated user's profile information.
|
|
71
|
+
*/
|
|
72
|
+
async accountsProfileUpdatePartialUpdate(data?: Models.PatchedUserProfileUpdateRequest): Promise<Models.User> {
|
|
73
|
+
const response = await this.client.request('PATCH', "/cfg/accounts/profile/update/", { body: data });
|
|
74
|
+
return response;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serializer for user details.
|
|
3
|
+
*
|
|
4
|
+
* Response model (includes read-only fields).
|
|
5
|
+
*/
|
|
6
|
+
export interface User {
|
|
7
|
+
id: number;
|
|
8
|
+
email: string;
|
|
9
|
+
first_name?: string;
|
|
10
|
+
last_name?: string;
|
|
11
|
+
/** Get user's full name. */
|
|
12
|
+
full_name: string;
|
|
13
|
+
/** Get user's initials for avatar fallback. */
|
|
14
|
+
initials: string;
|
|
15
|
+
/** Get formatted username for display. */
|
|
16
|
+
display_username: string;
|
|
17
|
+
company?: string;
|
|
18
|
+
phone?: string;
|
|
19
|
+
position?: string;
|
|
20
|
+
avatar: string | null;
|
|
21
|
+
/** Designates whether the user can log into this admin site. */
|
|
22
|
+
is_staff: boolean;
|
|
23
|
+
/** Designates that this user has all permissions without explicitly assigning them. */
|
|
24
|
+
is_superuser: boolean;
|
|
25
|
+
date_joined: string;
|
|
26
|
+
last_login: string | null;
|
|
27
|
+
/** Get count of unanswered messages for the user. */
|
|
28
|
+
unanswered_messages_count: number;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Serializer for updating user profile.
|
|
33
|
+
*
|
|
34
|
+
* Request model (no read-only fields).
|
|
35
|
+
*/
|
|
36
|
+
export interface UserProfileUpdateRequest {
|
|
37
|
+
first_name?: string;
|
|
38
|
+
last_name?: string;
|
|
39
|
+
company?: string;
|
|
40
|
+
phone?: string;
|
|
41
|
+
position?: string;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Serializer for updating user profile.
|
|
46
|
+
*
|
|
47
|
+
* Request model (no read-only fields).
|
|
48
|
+
*/
|
|
49
|
+
export interface PatchedUserProfileUpdateRequest {
|
|
50
|
+
first_name?: string;
|
|
51
|
+
last_name?: string;
|
|
52
|
+
company?: string;
|
|
53
|
+
phone?: string;
|
|
54
|
+
position?: string;
|
|
55
|
+
}
|
|
56
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as Models from "./models";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* API endpoints for Endpoints.
|
|
6
|
+
*/
|
|
7
|
+
export class CfgEndpointsAPI {
|
|
8
|
+
private client: any;
|
|
9
|
+
|
|
10
|
+
constructor(client: any) {
|
|
11
|
+
this.client = client;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Return endpoints status data.
|
|
16
|
+
*/
|
|
17
|
+
async drfRetrieve(): Promise<Models.EndpointsStatus> {
|
|
18
|
+
const response = await this.client.request('GET', "/cfg/endpoints/drf/");
|
|
19
|
+
return response;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serializer for overall endpoints status response.
|
|
3
|
+
*
|
|
4
|
+
* Response model (includes read-only fields).
|
|
5
|
+
*/
|
|
6
|
+
export interface EndpointsStatus {
|
|
7
|
+
/** Overall status: healthy, degraded, or unhealthy */
|
|
8
|
+
status: string;
|
|
9
|
+
/** Timestamp of the check */
|
|
10
|
+
timestamp: string;
|
|
11
|
+
/** Total number of endpoints checked */
|
|
12
|
+
total_endpoints: number;
|
|
13
|
+
/** Number of healthy endpoints */
|
|
14
|
+
healthy: number;
|
|
15
|
+
/** Number of unhealthy endpoints */
|
|
16
|
+
unhealthy: number;
|
|
17
|
+
/** Number of endpoints with warnings */
|
|
18
|
+
warnings: number;
|
|
19
|
+
/** Number of endpoints with errors */
|
|
20
|
+
errors: number;
|
|
21
|
+
/** Number of skipped endpoints */
|
|
22
|
+
skipped: number;
|
|
23
|
+
/** List of all endpoints with their status */
|
|
24
|
+
endpoints: Array<Endpoint>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Serializer for single endpoint status.
|
|
29
|
+
*
|
|
30
|
+
* Response model (includes read-only fields).
|
|
31
|
+
*/
|
|
32
|
+
export interface Endpoint {
|
|
33
|
+
/** Resolved URL (for parametrized URLs) or URL pattern */
|
|
34
|
+
url: string;
|
|
35
|
+
/** Original URL pattern (for parametrized URLs) */
|
|
36
|
+
url_pattern?: string | null;
|
|
37
|
+
/** Django URL name (if available) */
|
|
38
|
+
url_name?: string | null;
|
|
39
|
+
/** URL namespace */
|
|
40
|
+
namespace?: string;
|
|
41
|
+
/** URL group (up to 3 depth) */
|
|
42
|
+
group: string;
|
|
43
|
+
/** View function/class name */
|
|
44
|
+
view?: string;
|
|
45
|
+
/** Status: healthy, unhealthy, warning, error, skipped, pending */
|
|
46
|
+
status: string;
|
|
47
|
+
/** HTTP status code */
|
|
48
|
+
status_code?: number | null;
|
|
49
|
+
/** Response time in milliseconds */
|
|
50
|
+
response_time_ms?: number | null;
|
|
51
|
+
/** Whether endpoint is healthy */
|
|
52
|
+
is_healthy?: boolean | null;
|
|
53
|
+
/** Error message if check failed */
|
|
54
|
+
error?: string;
|
|
55
|
+
/** Error type: database, general, etc. */
|
|
56
|
+
error_type?: string;
|
|
57
|
+
/** Reason for warning/skip */
|
|
58
|
+
reason?: string;
|
|
59
|
+
/** Timestamp of last check */
|
|
60
|
+
last_checked?: string | null;
|
|
61
|
+
/** Whether URL has parameters that were resolved with test values */
|
|
62
|
+
has_parameters?: boolean;
|
|
63
|
+
/** Whether endpoint required JWT authentication */
|
|
64
|
+
required_auth?: boolean;
|
|
65
|
+
/** Whether endpoint returned 429 (rate limited) */
|
|
66
|
+
rate_limited?: boolean;
|
|
67
|
+
}
|
|
68
|
+
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as Models from "./models";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* API endpoints for Health.
|
|
6
|
+
*/
|
|
7
|
+
export class CfgHealthAPI {
|
|
8
|
+
private client: any;
|
|
9
|
+
|
|
10
|
+
constructor(client: any) {
|
|
11
|
+
this.client = client;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Return comprehensive health check data.
|
|
16
|
+
*/
|
|
17
|
+
async drfRetrieve(): Promise<Models.HealthCheck> {
|
|
18
|
+
const response = await this.client.request('GET', "/cfg/health/drf/");
|
|
19
|
+
return response;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Return minimal health status.
|
|
24
|
+
*/
|
|
25
|
+
async drfQuickRetrieve(): Promise<Models.QuickHealth> {
|
|
26
|
+
const response = await this.client.request('GET', "/cfg/health/drf/quick/");
|
|
27
|
+
return response;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serializer for health check response.
|
|
3
|
+
*
|
|
4
|
+
* Response model (includes read-only fields).
|
|
5
|
+
*/
|
|
6
|
+
export interface HealthCheck {
|
|
7
|
+
/** Overall health status: healthy, degraded, or unhealthy */
|
|
8
|
+
status: string;
|
|
9
|
+
/** Timestamp of the health check */
|
|
10
|
+
timestamp: string;
|
|
11
|
+
/** Service name */
|
|
12
|
+
service: string;
|
|
13
|
+
/** Django-CFG version */
|
|
14
|
+
version: string;
|
|
15
|
+
/** Detailed health checks for databases, cache, and system */
|
|
16
|
+
checks: Record<string, any>;
|
|
17
|
+
/** Environment information */
|
|
18
|
+
environment: Record<string, any>;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Serializer for quick health check response.
|
|
23
|
+
*
|
|
24
|
+
* Response model (includes read-only fields).
|
|
25
|
+
*/
|
|
26
|
+
export interface QuickHealth {
|
|
27
|
+
/** Quick health status: ok or error */
|
|
28
|
+
status: string;
|
|
29
|
+
/** Timestamp of the health check */
|
|
30
|
+
timestamp: string;
|
|
31
|
+
/** Error message if health check failed */
|
|
32
|
+
error?: string;
|
|
33
|
+
}
|
|
34
|
+
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import * as Models from "./models";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* API endpoints for Leads.
|
|
6
|
+
*/
|
|
7
|
+
export class CfgLeadsAPI {
|
|
8
|
+
private client: any;
|
|
9
|
+
|
|
10
|
+
constructor(client: any) {
|
|
11
|
+
this.client = client;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async list(page?: number, page_size?: number): Promise<Models.PaginatedLeadSubmissionList>;
|
|
15
|
+
async list(params?: { page?: number; page_size?: number }): Promise<Models.PaginatedLeadSubmissionList>;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* ViewSet for Lead model. Provides only submission functionality for leads
|
|
19
|
+
* from frontend forms.
|
|
20
|
+
*/
|
|
21
|
+
async list(...args: any[]): Promise<Models.PaginatedLeadSubmissionList> {
|
|
22
|
+
const isParamsObject = args.length === 1 && typeof args[0] === 'object' && args[0] !== null && !Array.isArray(args[0]);
|
|
23
|
+
|
|
24
|
+
let params;
|
|
25
|
+
if (isParamsObject) {
|
|
26
|
+
params = args[0];
|
|
27
|
+
} else {
|
|
28
|
+
params = { page: args[0], page_size: args[1] };
|
|
29
|
+
}
|
|
30
|
+
const response = await this.client.request('GET', "/cfg/leads/", { params });
|
|
31
|
+
return response;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* ViewSet for Lead model. Provides only submission functionality for leads
|
|
36
|
+
* from frontend forms.
|
|
37
|
+
*/
|
|
38
|
+
async create(data: Models.LeadSubmissionRequest): Promise<Models.LeadSubmission> {
|
|
39
|
+
const response = await this.client.request('POST', "/cfg/leads/", { body: data });
|
|
40
|
+
return response;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* ViewSet for Lead model. Provides only submission functionality for leads
|
|
45
|
+
* from frontend forms.
|
|
46
|
+
*/
|
|
47
|
+
async retrieve(id: number): Promise<Models.LeadSubmission> {
|
|
48
|
+
const response = await this.client.request('GET', `/cfg/leads/${id}/`);
|
|
49
|
+
return response;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* ViewSet for Lead model. Provides only submission functionality for leads
|
|
54
|
+
* from frontend forms.
|
|
55
|
+
*/
|
|
56
|
+
async update(id: number, data: Models.LeadSubmissionRequest): Promise<Models.LeadSubmission> {
|
|
57
|
+
const response = await this.client.request('PUT', `/cfg/leads/${id}/`, { body: data });
|
|
58
|
+
return response;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* ViewSet for Lead model. Provides only submission functionality for leads
|
|
63
|
+
* from frontend forms.
|
|
64
|
+
*/
|
|
65
|
+
async partialUpdate(id: number, data?: Models.PatchedLeadSubmissionRequest): Promise<Models.LeadSubmission> {
|
|
66
|
+
const response = await this.client.request('PATCH', `/cfg/leads/${id}/`, { body: data });
|
|
67
|
+
return response;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* ViewSet for Lead model. Provides only submission functionality for leads
|
|
72
|
+
* from frontend forms.
|
|
73
|
+
*/
|
|
74
|
+
async destroy(id: number): Promise<void> {
|
|
75
|
+
const response = await this.client.request('DELETE', `/cfg/leads/${id}/`);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import * as Enums from "../enums";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
*
|
|
5
|
+
* Response model (includes read-only fields).
|
|
6
|
+
*/
|
|
7
|
+
export interface PaginatedLeadSubmissionList {
|
|
8
|
+
/** Total number of items across all pages */
|
|
9
|
+
count: number;
|
|
10
|
+
/** Current page number (1-based) */
|
|
11
|
+
page: number;
|
|
12
|
+
/** Total number of pages */
|
|
13
|
+
pages: number;
|
|
14
|
+
/** Number of items per page */
|
|
15
|
+
page_size: number;
|
|
16
|
+
/** Whether there is a next page */
|
|
17
|
+
has_next: boolean;
|
|
18
|
+
/** Whether there is a previous page */
|
|
19
|
+
has_previous: boolean;
|
|
20
|
+
/** Next page number (null if no next page) */
|
|
21
|
+
next_page?: number | null;
|
|
22
|
+
/** Previous page number (null if no previous page) */
|
|
23
|
+
previous_page?: number | null;
|
|
24
|
+
/** Array of items for current page */
|
|
25
|
+
results: Array<LeadSubmission>;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Serializer for lead form submission from frontend.
|
|
30
|
+
*
|
|
31
|
+
* Request model (no read-only fields).
|
|
32
|
+
*/
|
|
33
|
+
export interface LeadSubmissionRequest {
|
|
34
|
+
name: string;
|
|
35
|
+
email: string;
|
|
36
|
+
company?: string | null;
|
|
37
|
+
company_site?: string | null;
|
|
38
|
+
/** * `email` - Email
|
|
39
|
+
* `whatsapp` - WhatsApp
|
|
40
|
+
* `telegram` - Telegram
|
|
41
|
+
* `phone` - Phone
|
|
42
|
+
* `other` - Other */
|
|
43
|
+
contact_type?: Enums.LeadSubmissionRequestContactType;
|
|
44
|
+
contact_value?: string | null;
|
|
45
|
+
subject?: string | null;
|
|
46
|
+
message: string;
|
|
47
|
+
extra?: string | null;
|
|
48
|
+
/** Frontend URL where form was submitted */
|
|
49
|
+
site_url: string;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Serializer for lead form submission from frontend.
|
|
54
|
+
*
|
|
55
|
+
* Response model (includes read-only fields).
|
|
56
|
+
*/
|
|
57
|
+
export interface LeadSubmission {
|
|
58
|
+
name: string;
|
|
59
|
+
email: string;
|
|
60
|
+
company?: string | null;
|
|
61
|
+
company_site?: string | null;
|
|
62
|
+
/** * `email` - Email
|
|
63
|
+
* `whatsapp` - WhatsApp
|
|
64
|
+
* `telegram` - Telegram
|
|
65
|
+
* `phone` - Phone
|
|
66
|
+
* `other` - Other */
|
|
67
|
+
contact_type?: Enums.LeadSubmissionContactType;
|
|
68
|
+
contact_value?: string | null;
|
|
69
|
+
subject?: string | null;
|
|
70
|
+
message: string;
|
|
71
|
+
extra?: string | null;
|
|
72
|
+
/** Frontend URL where form was submitted */
|
|
73
|
+
site_url: string;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Serializer for lead form submission from frontend.
|
|
78
|
+
*
|
|
79
|
+
* Request model (no read-only fields).
|
|
80
|
+
*/
|
|
81
|
+
export interface PatchedLeadSubmissionRequest {
|
|
82
|
+
name?: string;
|
|
83
|
+
email?: string;
|
|
84
|
+
company?: string | null;
|
|
85
|
+
company_site?: string | null;
|
|
86
|
+
/** * `email` - Email
|
|
87
|
+
* `whatsapp` - WhatsApp
|
|
88
|
+
* `telegram` - Telegram
|
|
89
|
+
* `phone` - Phone
|
|
90
|
+
* `other` - Other */
|
|
91
|
+
contact_type?: Enums.PatchedLeadSubmissionRequestContactType;
|
|
92
|
+
contact_value?: string | null;
|
|
93
|
+
subject?: string | null;
|
|
94
|
+
message?: string;
|
|
95
|
+
extra?: string | null;
|
|
96
|
+
/** Frontend URL where form was submitted */
|
|
97
|
+
site_url?: string;
|
|
98
|
+
}
|
|
99
|
+
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as Models from "./models";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* API endpoints for Lead Submission.
|
|
6
|
+
*/
|
|
7
|
+
export class CfgLeadSubmissionAPI {
|
|
8
|
+
private client: any;
|
|
9
|
+
|
|
10
|
+
constructor(client: any) {
|
|
11
|
+
this.client = client;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Submit Lead Form
|
|
16
|
+
*
|
|
17
|
+
* Submit a new lead from frontend contact form with automatic Telegram
|
|
18
|
+
* notifications.
|
|
19
|
+
*/
|
|
20
|
+
async leadsSubmitCreate(data: Models.LeadSubmissionRequest): Promise<Models.LeadSubmissionResponse> {
|
|
21
|
+
const response = await this.client.request('POST', "/cfg/leads/submit/", { body: data });
|
|
22
|
+
return response;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
}
|