feat: Add customer address methods to sdk (#7445)

This commit is contained in:
Stevche Radevski
2024-05-24 19:01:11 +02:00
committed by GitHub
parent 2b55208c1c
commit 8acba7aba6
4 changed files with 106 additions and 0 deletions

View File

@@ -380,5 +380,67 @@ export class Store {
}
)
},
createAddress: async (
body: HttpTypes.StoreCreateCustomerAddress,
query?: SelectParams,
headers?: ClientHeaders
) => {
return this.client.fetch<{
customer: HttpTypes.StoreCustomer
}>(`/store/customers/me/addresses`, {
method: "POST",
headers,
body,
query,
})
},
updateAddress: async (
addressId: string,
body: HttpTypes.StoreUpdateCustomerAddress,
query?: SelectParams,
headers?: ClientHeaders
) => {
return this.client.fetch<{ customer: HttpTypes.StoreCustomer }>(
`/store/customers/me/addresses/${addressId}`,
{
method: "POST",
headers,
body,
query,
}
)
},
listAddress: async (
query?: FindParams & HttpTypes.StoreCustomerAddressFilters,
headers?: ClientHeaders
) => {
return this.client.fetch<
PaginatedResponse<{ addresses: HttpTypes.StoreCustomerAddress[] }>
>(`/store/customers/me/addresses`, {
query,
headers,
})
},
retrieveAddress: async (
addressId: string,
query?: SelectParams,
headers?: ClientHeaders
) => {
return this.client.fetch<{ address: HttpTypes.StoreCustomerAddress }>(
`/store/customers/me/addresses/${addressId}`,
{
query,
headers,
}
)
},
deleteAddress: async (addressId: string, headers?: ClientHeaders) => {
return this.client.fetch<
DeleteResponse<"address", HttpTypes.StoreCustomer>
>(`/store/customers/me/addresses/${addressId}`, {
method: "DELETE",
headers,
})
},
}
}

View File

@@ -1,11 +1,13 @@
import {
BaseCreateCustomer,
BaseCreateCustomerAddress,
BaseCustomer,
BaseCustomerAddress,
BaseCustomerAddressFilters,
BaseCustomerFilters,
BaseCustomerGroup,
BaseUpdateCustomer,
BaseUpdateCustomerAddress,
CustomerGroupInCustomerFilters,
} from "./common"
@@ -23,3 +25,6 @@ export interface AdminCustomerAddressFilters
export interface AdminCreateCustomer extends BaseCreateCustomer {}
export interface AdminUpdateCustomer extends BaseUpdateCustomer {}
export interface AdminCreateCustomerAddress extends BaseCreateCustomerAddress {}
export interface AdminUpdateCustomerAddress extends BaseUpdateCustomerAddress {}

View File

@@ -95,3 +95,37 @@ export interface BaseUpdateCustomer {
phone?: string
metadata?: Record<string, unknown>
}
export interface BaseCreateCustomerAddress {
first_name?: string
last_name?: string
phone?: string
company?: string
address_1?: string
address_2?: string
city?: string
country_code?: string
province?: string
postal_code?: string
metadata?: Record<string, unknown>
address_name?: string
is_default_shipping?: boolean
is_default_billing?: boolean
}
export interface BaseUpdateCustomerAddress {
first_name?: string
last_name?: string
phone?: string
company?: string
address_1?: string
address_2?: string
city?: string
country_code?: string
province?: string
postal_code?: string
metadata?: Record<string, unknown> | null
address_name?: string
is_default_shipping?: boolean
is_default_billing?: boolean
}

View File

@@ -1,10 +1,12 @@
import {
BaseCreateCustomer,
BaseCreateCustomerAddress,
BaseCustomer,
BaseCustomerAddress,
BaseCustomerAddressFilters,
BaseCustomerFilters,
BaseUpdateCustomer,
BaseUpdateCustomerAddress,
} from "./common"
export interface StoreCustomer extends BaseCustomer {}
@@ -15,3 +17,6 @@ export interface StoreCustomerAddressFilters
export interface StoreCreateCustomer extends BaseCreateCustomer {}
export interface StoreUpdateCustomer extends BaseUpdateCustomer {}
export interface StoreCreateCustomerAddress extends BaseCreateCustomerAddress {}
export interface StoreUpdateCustomerAddress extends BaseUpdateCustomerAddress {}