Skip to content

Commit 53ddf56

Browse files
committed
♻️ Migrate travel-desk-travel-agencies-api to TypeScript
1 parent ba25863 commit 53ddf56

File tree

2 files changed

+76
-90
lines changed

2 files changed

+76
-90
lines changed

web/src/api/travel-desk-travel-agencies-api.js

Lines changed: 0 additions & 90 deletions
This file was deleted.
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
import http from "@/api/http-client"
2+
import {
3+
type FiltersOptions,
4+
type Policy,
5+
type QueryOptions,
6+
type WhereOptions,
7+
} from "@/api/base-api"
8+
9+
/** Keep in sync with api/src/models/travel-desk-travel-agency.ts */
10+
export type TravelDeskTravelAgency = {
11+
id: number
12+
agencyName: string
13+
contactName: string | null
14+
contactEmail: string | null
15+
contactPhoneNumber: string | null
16+
agencyInfo: string | null
17+
}
18+
19+
export type TravelDeskTravelAgencyWhereOptions = WhereOptions<
20+
TravelDeskTravelAgency,
21+
"id" | "agencyName" | "contactName" | "contactEmail" | "contactPhoneNumber"
22+
>
23+
24+
/** must match model scopes */
25+
export type TravelDeskTravelAgencyFiltersOptions = FiltersOptions<Record<never, never>>
26+
27+
export type TravelDeskTravelAgenciesQueryOptions = QueryOptions<
28+
TravelDeskTravelAgencyWhereOptions,
29+
TravelDeskTravelAgencyFiltersOptions
30+
>
31+
32+
export const travelDeskTravelAgenciesApi = {
33+
async list(params: TravelDeskTravelAgenciesQueryOptions = {}): Promise<{
34+
travelDeskTravelAgencies: TravelDeskTravelAgency[]
35+
totalCount: number
36+
}> {
37+
const { data } = await http.get("/api/travel-desk-travel-agencies", {
38+
params,
39+
})
40+
return data
41+
},
42+
43+
async get(travelDeskTravelAgencyId: number): Promise<{
44+
travelDeskTravelAgency: TravelDeskTravelAgency
45+
policy: Policy
46+
}> {
47+
const { data } = await http.get(`/api/travel-desk-travel-agencies/${travelDeskTravelAgencyId}`)
48+
return data
49+
},
50+
51+
async create(attributes: Partial<TravelDeskTravelAgency>): Promise<{
52+
travelDeskTravelAgency: TravelDeskTravelAgency
53+
}> {
54+
const { data } = await http.post("/api/travel-desk-travel-agencies", attributes)
55+
return data
56+
},
57+
58+
async update(
59+
travelDeskTravelAgencyId: number,
60+
attributes: Partial<TravelDeskTravelAgency>
61+
): Promise<{
62+
travelDeskTravelAgency: TravelDeskTravelAgency
63+
}> {
64+
const { data } = await http.patch(
65+
`/api/travel-desk-travel-agencies/${travelDeskTravelAgencyId}`,
66+
attributes
67+
)
68+
return data
69+
},
70+
71+
async delete(travelDeskTravelAgencyId: number): Promise<void> {
72+
await http.delete(`/api/travel-desk-travel-agencies/${travelDeskTravelAgencyId}`)
73+
},
74+
}
75+
76+
export default travelDeskTravelAgenciesApi

0 commit comments

Comments
 (0)