mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-09-29 22:06:38 +08:00
5d6898b633
- Implemented ApplyLogItem interface for logging purposes. - Created API functions for managing domains including CRUD operations. - Developed ManagedDomainsPage component for domain management UI with form handling and state management. - Defined ManagedDomainItem and related types for domain data structure. - Added API functions for managing TLS certificates including creation, deletion, and file import. - Built TlsCertificatesPage component for certificate management with manual and file import options. - Introduced types for TLS certificate items and mutation payloads.
36 lines
982 B
TypeScript
36 lines
982 B
TypeScript
import { apiRequest } from '@/lib/api/client';
|
|
|
|
import type {
|
|
ManagedDomainCertificateOption,
|
|
ManagedDomainItem,
|
|
ManagedDomainMutationPayload,
|
|
} from '@/features/managed-domains/types';
|
|
|
|
export function getManagedDomains() {
|
|
return apiRequest<ManagedDomainItem[]>('/managed-domains/');
|
|
}
|
|
|
|
export function createManagedDomain(payload: ManagedDomainMutationPayload) {
|
|
return apiRequest<ManagedDomainItem>('/managed-domains/', {
|
|
method: 'POST',
|
|
body: JSON.stringify(payload),
|
|
});
|
|
}
|
|
|
|
export function updateManagedDomain(id: number, payload: ManagedDomainMutationPayload) {
|
|
return apiRequest<ManagedDomainItem>(`/managed-domains/${id}`, {
|
|
method: 'PUT',
|
|
body: JSON.stringify(payload),
|
|
});
|
|
}
|
|
|
|
export function deleteManagedDomain(id: number) {
|
|
return apiRequest<void>(`/managed-domains/${id}`, {
|
|
method: 'DELETE',
|
|
});
|
|
}
|
|
|
|
export function getManagedDomainCertificates() {
|
|
return apiRequest<ManagedDomainCertificateOption[]>('/tls-certificates/');
|
|
}
|