@uappi/public-sdk 1.2.9 → 1.2.10
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/.gitlab-ci.yml +43 -0
- package/.vscode/extensions.json +4 -4
- package/.vscode/settings.json +6 -6
- package/README.md +67 -0
- package/components/Animations/ExpandTransition.ts +89 -89
- package/components/Animations/index.ts +1 -1
- package/components/ColorTheme/ColorTheme.ts +80 -80
- package/components/ColorTheme/index.ts +1 -1
- package/components/ColorTheme/types.ts +18 -18
- package/components/SocialAuth/FacebookAuth/types.ts +2 -2
- package/components/SocialAuth/GoogleAuth/types.ts +2 -2
- package/components/SocialAuth/index.ts +1 -1
- package/components/index.ts +2 -2
- package/main.ts +4 -4
- package/modules/Api/README.md +469 -469
- package/modules/Api/endpoints/CommonComposable.ts +24 -24
- package/modules/Api/endpoints/CouponComposable.ts +18 -18
- package/modules/Api/endpoints/LoggoutComposable.ts +8 -8
- package/modules/Api/endpoints/MFAComposable.ts +43 -43
- package/modules/Api/endpoints/PaymentComposable.ts +14 -14
- package/modules/Api/endpoints/PublicComposable.ts +8 -8
- package/modules/Api/endpoints/TemplateComposable.ts +7 -7
- package/modules/Api/endpoints/ThirdPartyComposable.ts +13 -13
- package/modules/Api/endpoints/UpsellComposable.ts +17 -17
- package/modules/Api/endpoints/VerifyComposable.ts +7 -7
- package/modules/Api/endpoints/WalletComposable.ts +36 -36
- package/modules/Api/paramsSerializer/encodeWafNormalizer.ts +7 -7
- package/modules/Api/types/endpoints/cart/cart.interfaces.ts +161 -161
- package/modules/Api/types/endpoints/cart/cart.types.ts +27 -27
- package/modules/Api/types/endpoints/common/common.interfaces.ts +21 -21
- package/modules/Api/types/endpoints/country/country.types.ts +7502 -7502
- package/modules/Api/types/endpoints/coupon/coupon.interfaces.ts +13 -13
- package/modules/Api/types/endpoints/discounts/discounts.interfaces.ts +9 -9
- package/modules/Api/types/endpoints/mfa/mfa.interfaces.ts +51 -51
- package/modules/Api/types/endpoints/payment/payment.interfaces.ts +103 -103
- package/modules/Api/types/endpoints/payment/payment.types.ts +27 -27
- package/modules/Api/types/endpoints/price/price.interfaces.ts +21 -21
- package/modules/Api/types/endpoints/template/template.interfaces.ts +29 -29
- package/modules/Api/types/endpoints/third-party/oauth.interfaces.ts +5 -5
- package/modules/Api/types/endpoints/upsell/upsell.interfaces.ts +12 -12
- package/modules/Api/types/endpoints/wallet/wallet-obsearch.ts +8 -8
- package/modules/Api/types/endpoints/wallet/wallet.interfaces.ts +57 -57
- package/modules/Api/types/endpoints/zipcode/zipcode.interfaces.ts +23 -23
- package/modules/Api/types/index.ts +504 -504
- package/modules/Tracking/endpoints/CartComposable.ts +75 -75
- package/modules/Tracking/endpoints/CustomerComposable.ts +71 -71
- package/modules/Tracking/endpoints/types.ts +11 -11
- package/modules/Tracking/events/actions/addPaymentInfo.ts +31 -31
- package/modules/Tracking/events/actions/addShippingInfo.ts +27 -27
- package/modules/Tracking/events/actions/addToCart.ts +35 -35
- package/modules/Tracking/events/actions/beginCheckout.ts +28 -28
- package/modules/Tracking/events/actions/customerProfile.ts +36 -36
- package/modules/Tracking/events/actions/generateLead.ts +12 -12
- package/modules/Tracking/events/actions/login.ts +8 -8
- package/modules/Tracking/events/actions/purchase.ts +42 -42
- package/modules/Tracking/events/actions/removeFromCart.ts +52 -52
- package/modules/Tracking/events/actions/search.ts +8 -8
- package/modules/Tracking/events/actions/selectItem.ts +64 -64
- package/modules/Tracking/events/actions/selectPromotion.ts +24 -24
- package/modules/Tracking/events/actions/shippingCalculation.ts +7 -7
- package/modules/Tracking/events/actions/signup.ts +8 -8
- package/modules/Tracking/events/actions/upsertToCart.ts +62 -62
- package/modules/Tracking/events/views/viewCart.ts +28 -28
- package/modules/Tracking/events/views/viewHome.ts +5 -5
- package/modules/Tracking/events/views/viewItem.ts +31 -31
- package/modules/Tracking/events/views/viewItemList.ts +65 -65
- package/modules/Tracking/events/views/viewNotFound.ts +5 -5
- package/modules/Tracking/events/views/viewOther.ts +5 -5
- package/modules/Tracking/events/views/viewPayment.ts +7 -7
- package/modules/Tracking/events/views/viewPromotion.ts +28 -28
- package/modules/Tracking/events/views/viewShipping.ts +7 -7
- package/modules/Tracking/index.ts +84 -84
- package/modules/Tracking/publicApiTracking.ts +35 -35
- package/modules/Tracking/types/actions/add-payment-info.interfaces.ts +12 -12
- package/modules/Tracking/types/actions/add-shipping-info.interfaces.ts +11 -11
- package/modules/Tracking/types/actions/add-to-cart.interfaces.ts +10 -10
- package/modules/Tracking/types/actions/begin-checkout.interfaces.ts +12 -12
- package/modules/Tracking/types/actions/customer-profile.interfaces.ts +19 -19
- package/modules/Tracking/types/actions/file-download.interfaces.ts +4 -4
- package/modules/Tracking/types/actions/generate-lead.interfaces.ts +12 -12
- package/modules/Tracking/types/actions/login.interfaces.ts +4 -4
- package/modules/Tracking/types/actions/purchase.interfaces.ts +18 -18
- package/modules/Tracking/types/actions/remove-from-cart.interfaces.ts +10 -10
- package/modules/Tracking/types/actions/search.interfaces.ts +4 -4
- package/modules/Tracking/types/actions/select-item.interfaces.ts +16 -16
- package/modules/Tracking/types/actions/select-promotion.interfaces.ts +8 -8
- package/modules/Tracking/types/actions/share.interfaces.ts +4 -4
- package/modules/Tracking/types/actions/shipping-calculation.interfaces.ts +3 -3
- package/modules/Tracking/types/actions/signup.interfaces.ts +4 -4
- package/modules/Tracking/types/event.types.ts +54 -54
- package/modules/Tracking/types/index.ts +37 -37
- package/modules/Tracking/types/item.interfaces.ts +30 -30
- package/modules/Tracking/types/views/view-cart.interfaces.ts +11 -11
- package/modules/Tracking/types/views/view-home.interfaces.ts +3 -3
- package/modules/Tracking/types/views/view-item-list.interfaces.ts +11 -11
- package/modules/Tracking/types/views/view-item.interfaces.ts +15 -15
- package/modules/Tracking/types/views/view-not-found.interfaces.ts +3 -3
- package/modules/Tracking/types/views/view-other.interfaces.ts +3 -3
- package/modules/Tracking/types/views/view-payment.interfaces.ts +3 -3
- package/modules/Tracking/types/views/view-promotion.interfaces.ts +8 -8
- package/modules/Tracking/types/views/view-shipping.interfaces.ts +3 -3
- package/modules/Tracking/utils/cart.ts +100 -100
- package/modules/Tracking/utils/pushDatalayer.ts +7 -7
- package/modules/index.ts +1 -1
- package/package.json +1 -1
- package/scripts/release.sh +34 -0
package/modules/Api/README.md
CHANGED
|
@@ -1,469 +1,469 @@
|
|
|
1
|
-
# ../../api
|
|
2
|
-
|
|
3
|
-
Composables Vue 3 + TypeScript para integração simplificada com a API pública da Uappi, facilitando o consumo, gerenciamento e reutilização de endpoints em aplicações modernas.
|
|
4
|
-
|
|
5
|
-
## Instalação
|
|
6
|
-
|
|
7
|
-
Adicione ao seu projeto:
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
npm install ../../api
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## Escopos Disponíveis
|
|
14
|
-
|
|
15
|
-
O pacote expõe os seguintes escopos, cada um agrupando recursos relacionados:
|
|
16
|
-
|
|
17
|
-
- [**cart**](#cart): Operações de carrinho, como adicionar/remover produtos, simular frete, pagamentos e condições.
|
|
18
|
-
- listDetail Lista detalhes do carrinho
|
|
19
|
-
- addProduct Adiciona um produto ao carrinho
|
|
20
|
-
- deleteProduct Remove um produto do carrinho
|
|
21
|
-
- upsertProduct Atualiza ou insere produto
|
|
22
|
-
- shipmentQuote Lista opções de frete com base no carrinho
|
|
23
|
-
- selectShipment Seleciona opção de frete
|
|
24
|
-
- applyAddresses Aplica endereços entrega/faturamento ao carrinho
|
|
25
|
-
- listPayments Lista formas de pagamento
|
|
26
|
-
- buy: Finaliza a compra
|
|
27
|
-
- paymentConditions: Lista condições de pagamento
|
|
28
|
-
|
|
29
|
-
- [**common**](#common): Utilitários como consulta de CEP, países e bandeiras de cartão.
|
|
30
|
-
- listZipcode: Lista detalhes de endereço de CEP
|
|
31
|
-
- listContries: Lista detalhes de países
|
|
32
|
-
- countryDetail: Detalhes de um país
|
|
33
|
-
- listCardFlags: Retorna dados utilitários sobre cada bandeira de cartão (regex de validação, etc)
|
|
34
|
-
|
|
35
|
-
- [**customer**](#customer): Recursos para autenticação, cadastro, endereços, pedidos, newsletter, avaliações e histórico do cliente.
|
|
36
|
-
- addNewsletter: Inscreve na newsletter da loja por email e name
|
|
37
|
-
- deleteNewsletter: Remove inscrição na newsletter (apenas cliente logado)
|
|
38
|
-
- createProductReview: Avalia um produto (apenas clientes logado)
|
|
39
|
-
- listProductReview: Listagem paginada de todas avaliações do produto
|
|
40
|
-
- listStoreReview: Listagem paginada de todas avaliações da loja
|
|
41
|
-
- createInterest: Cria uma solicitação de interesse em um produto fora de estoque
|
|
42
|
-
- changePasswordByAuthenticated: Alteração de senha com cliente autenticado
|
|
43
|
-
- changePasswordByCode: Alteração de senha através de código enviado por e-mail
|
|
44
|
-
- check: Verifica existencia de cliente com base no e-mail ou documento
|
|
45
|
-
- listAddress: Listagem de endereços do cliente logado
|
|
46
|
-
- createAddress: Cria novo endereço do cliente logado
|
|
47
|
-
- deleteAddress: Remove um endereço do cliente logado
|
|
48
|
-
- updateAddress: Atualiza endereço do cliente logado
|
|
49
|
-
- updatePrimaryAddress: Define um endereço como principal
|
|
50
|
-
- detail: Detalhes do cliente logado
|
|
51
|
-
- passwordRecovery: Recuperação de senha
|
|
52
|
-
- signinByDocument: Login por documento
|
|
53
|
-
- signinByEmail: Login por e-mail
|
|
54
|
-
- signup: Cadastro de novo cliente
|
|
55
|
-
- update: Atualiza dados do cliente
|
|
56
|
-
- loggout: Logout
|
|
57
|
-
- detailOrderGroup: Detalhes de pedido
|
|
58
|
-
- listOrderGroups: Lista pedidos
|
|
59
|
-
- listOrderItemHistory: Exibe o histórico de atualizações do pedido
|
|
60
|
-
- listCustomerHistory: Exibe o histórico de atualizações do cliente (senha, endereço, etc.)
|
|
61
|
-
- listCustomerReview: Lista avaliações do cliente em produto
|
|
62
|
-
- listWalletTransaction: Lista transações da carteira
|
|
63
|
-
- claimGiftCard: Resgata gift card
|
|
64
|
-
|
|
65
|
-
- [**customization**](#customization): Listagem de banners, vitrines e menus customizados.
|
|
66
|
-
- listShowcase: Lista detalhes de vitrines
|
|
67
|
-
- listBanners: Lista detalhes de banners
|
|
68
|
-
- listMenu: Lista detalhes de menus
|
|
69
|
-
- listTemplateSettings: Lista as configurações de settings e apps da loja com base na URI
|
|
70
|
-
|
|
71
|
-
- [**product**](#product): Consulta de marcas, variações, busca, comentários e informações de produtos.
|
|
72
|
-
- listBrands: Listagem de marcas ativas
|
|
73
|
-
- listVariation: Lista variações de um produto
|
|
74
|
-
- getUrl: Consulta URL de produto (categorias, institucionais, detalhe de produto, etc.)
|
|
75
|
-
- getSearch: Pesquisa produtos por termo
|
|
76
|
-
- listShipmentQuoteProduct: Lista opções frete com base em um produto
|
|
77
|
-
- deleteProductComment: Remove um comentário no produto
|
|
78
|
-
- createProductComment: Adiciona um comentário no produto
|
|
79
|
-
- listProductComments: Lista comentários de produto
|
|
80
|
-
|
|
81
|
-
- [**promotional**](#promotional): Ofertas, cupons, carteiras e pontos promocionais.
|
|
82
|
-
- listPairOffers: Lista ofertas em pares de um produto (compre junto)
|
|
83
|
-
- addCoupon: Adiciona cupom no carrinho
|
|
84
|
-
- deleteCoupon: Remove cupom no carrinho
|
|
85
|
-
- applyWallet: Aplica carteira saldo da carteira no carrinho
|
|
86
|
-
- deleteWallet: Remove carteira saldo da carteira no carrinho
|
|
87
|
-
- applyPoint: Aplica saldo de pontos no carrinho
|
|
88
|
-
- deletePoint: Remove saldo de pontos no carrinho
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## Exemplos de Uso por Escopo
|
|
93
|
-
|
|
94
|
-
### [cart](#cart)
|
|
95
|
-
```ts
|
|
96
|
-
import api from '../../api';
|
|
97
|
-
|
|
98
|
-
// Listar detalhes do carrinho
|
|
99
|
-
await api.cart.listDetail(): CartResponse;
|
|
100
|
-
|
|
101
|
-
// Adiciona produto ao carrinho
|
|
102
|
-
await api.cart.addProduct(
|
|
103
|
-
payload: UpsertCartRequest
|
|
104
|
-
): CartResponse;
|
|
105
|
-
|
|
106
|
-
// Remover um ou varios produtos do carrinho
|
|
107
|
-
await api.cart.deleteProduct(
|
|
108
|
-
payload: DeleteCartRequest
|
|
109
|
-
): CartResponse;
|
|
110
|
-
|
|
111
|
-
// Adiciona ou atualiza a quantidade do produto no carrinho
|
|
112
|
-
await api.cart.upsertProduct(
|
|
113
|
-
payload: UpsertCartRequest
|
|
114
|
-
): CartResponse;
|
|
115
|
-
|
|
116
|
-
// Retorna opções de frete no contexto do carrinho
|
|
117
|
-
await api.cart.shipmentQuote(
|
|
118
|
-
payload: ShipmentQuoteCartRequest
|
|
119
|
-
): CartResponse;
|
|
120
|
-
|
|
121
|
-
// Seleciona uma opção de frete no contexto do carrinho.
|
|
122
|
-
await api.cart.selectShipment(
|
|
123
|
-
payload: SelectShipimentRequest
|
|
124
|
-
): CartResponse;
|
|
125
|
-
|
|
126
|
-
// Aplica endereço no contexto do carrinho.
|
|
127
|
-
await api.cart.applyAddresses(
|
|
128
|
-
payload: AddressesToCartRequest
|
|
129
|
-
): CartResponse;
|
|
130
|
-
|
|
131
|
-
// Lista as opções de pagamento no contexto do carrinho.
|
|
132
|
-
await api.cart.listPayments(): PaymentResponse;
|
|
133
|
-
|
|
134
|
-
// Informa as condições do pagamento, para verificar condições do mix de pagamento
|
|
135
|
-
await api.cart.paymentConditions(
|
|
136
|
-
payload: PaymentConditionsRequest
|
|
137
|
-
): PaymentConditionsResponse;
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
### [common](#common)
|
|
141
|
-
```ts
|
|
142
|
-
import api from '../../api';
|
|
143
|
-
|
|
144
|
-
// Consultar CEP
|
|
145
|
-
await api.common.listZipcode(zipcode: string): ZipcodeResponse;
|
|
146
|
-
|
|
147
|
-
// Retorna dados complementares de cada pais
|
|
148
|
-
await api.common.listContries(): Array<CountryResponse>;
|
|
149
|
-
|
|
150
|
-
// Retorna os detalhes de um pais
|
|
151
|
-
await api.common.countryDetail(code: CountryAlpha3): CountryResponse;
|
|
152
|
-
|
|
153
|
-
// Retorna dados utilitários sobre cada bandeira de cartão
|
|
154
|
-
await api.common.listCardFlags(): CardFlags;
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
### [customer](#customer)
|
|
158
|
-
```ts
|
|
159
|
-
import api from '../../api';
|
|
160
|
-
|
|
161
|
-
// Inscreve na newsletter da loja por email e name
|
|
162
|
-
await api.customer.addNewsletter(): CustomerOrderResponse;
|
|
163
|
-
|
|
164
|
-
// Remove inscrição na newsletter (apenas clientes logado)
|
|
165
|
-
await api.customer.deleteNewsletter(): CustomerOrderResponse;
|
|
166
|
-
|
|
167
|
-
// Avalia um produto (apenas clientes logado)
|
|
168
|
-
await api.customer.createProductReview(
|
|
169
|
-
productId: number,
|
|
170
|
-
payload: ProductReviewRequest,
|
|
171
|
-
): ProductReviewResponse;
|
|
172
|
-
|
|
173
|
-
// Listagem paginada de todas avaliações do produto
|
|
174
|
-
await api.customer.listProductReview(
|
|
175
|
-
options?: Pick<
|
|
176
|
-
ApiParams<ReviewFields, ReviewSortFields, ReviewConditionFields>,
|
|
177
|
-
'condition' | 'order' | 'fields' | 'limit' | 'offset'
|
|
178
|
-
>
|
|
179
|
-
): ProductReviewResponse;
|
|
180
|
-
|
|
181
|
-
// Listagem paginada de todas avaliações da loja
|
|
182
|
-
await api.customer.listStoreReview(): ProductReviewResponse;
|
|
183
|
-
|
|
184
|
-
//
|
|
185
|
-
await api.customer.createInterest(
|
|
186
|
-
payload: RequestInterest
|
|
187
|
-
): ResponseInterest;
|
|
188
|
-
|
|
189
|
-
// Alteração de senha com cliente autenticado
|
|
190
|
-
await api.customer.changePasswordByAuthenticated(
|
|
191
|
-
payload: ChangePasswordCustomerAuthenticated,
|
|
192
|
-
): boolean;
|
|
193
|
-
|
|
194
|
-
// Alteração de senha através de código enviado por e-mail
|
|
195
|
-
await api.customer.changePasswordByCode(
|
|
196
|
-
payload: ChangePasswordCustomerByCode
|
|
197
|
-
): boolean;
|
|
198
|
-
|
|
199
|
-
// Verifica existencia de cliente com base no e-mail ou documento
|
|
200
|
-
await api.customer.check(
|
|
201
|
-
payload: CheckCustomer
|
|
202
|
-
): boolean;
|
|
203
|
-
|
|
204
|
-
// Listagem de endereços do cliente logado
|
|
205
|
-
await api.customer.listAddress(): CustomerAddressesResponse;
|
|
206
|
-
|
|
207
|
-
// Cria novo endereço do cliente logado
|
|
208
|
-
await api.customer.createAddress(
|
|
209
|
-
payload: UpsertCustomerAddressRequest
|
|
210
|
-
): CustomerAddressResponse;
|
|
211
|
-
|
|
212
|
-
// Remove um endereço do cliente logado
|
|
213
|
-
await api.customer.deleteAddress(
|
|
214
|
-
addressId: number
|
|
215
|
-
): CustomerAddressResponse;
|
|
216
|
-
|
|
217
|
-
// Atualiza endereço do cliente logado
|
|
218
|
-
await api.customer.updateAddress(
|
|
219
|
-
addressId: number,
|
|
220
|
-
payload: UpsertCustomerAddressRequest,
|
|
221
|
-
): CustomerAddressResponse;
|
|
222
|
-
|
|
223
|
-
//
|
|
224
|
-
await api.customer.updatePrimaryAddress(
|
|
225
|
-
addressId: number
|
|
226
|
-
): CustomerAddressResponse;
|
|
227
|
-
|
|
228
|
-
//
|
|
229
|
-
await api.customer.detail(
|
|
230
|
-
options?: Pick<
|
|
231
|
-
ApiParams<CustomerFields, CustomerSortFields, CustomerConditionFields>,
|
|
232
|
-
'condition' | 'fields' | 'order'
|
|
233
|
-
>
|
|
234
|
-
): CustomerResponse;
|
|
235
|
-
|
|
236
|
-
//
|
|
237
|
-
await api.customer.passwordRecovery(
|
|
238
|
-
payload: PasswordRecoveryCustomer
|
|
239
|
-
): boolean;
|
|
240
|
-
|
|
241
|
-
//
|
|
242
|
-
await api.customer.signinByDocument(
|
|
243
|
-
payload: SigninCustomerByDocument
|
|
244
|
-
): ResponseSigninCustomer;
|
|
245
|
-
|
|
246
|
-
//
|
|
247
|
-
await api.customer.signinByEmail(
|
|
248
|
-
payload: SigninCustomerByEmail
|
|
249
|
-
): ResponseSigninCustomer;
|
|
250
|
-
|
|
251
|
-
//
|
|
252
|
-
await api.customer.signup(
|
|
253
|
-
payload: SignupCustomer
|
|
254
|
-
): CustomerResponse;
|
|
255
|
-
|
|
256
|
-
//
|
|
257
|
-
await api.customer.update(
|
|
258
|
-
payload: UpdateCustomer
|
|
259
|
-
): CustomerResponse;
|
|
260
|
-
|
|
261
|
-
//
|
|
262
|
-
await api.customer.loggout(): boolean;
|
|
263
|
-
|
|
264
|
-
//
|
|
265
|
-
await api.customer.detailOrderGroup(
|
|
266
|
-
orderId: number,
|
|
267
|
-
options?: Pick<ApiParams<CustomerOrderGroupFields>, 'fields'>,
|
|
268
|
-
): CustomerOrderResponse;
|
|
269
|
-
|
|
270
|
-
//
|
|
271
|
-
await api.customer.listOrderGroups(
|
|
272
|
-
options?: Pick<
|
|
273
|
-
ApiParams<
|
|
274
|
-
CustomerOrderGroupFields,
|
|
275
|
-
CustomerOrderGroupSortFields,
|
|
276
|
-
CustomerOrderGroupConditionFields
|
|
277
|
-
>,
|
|
278
|
-
'condition' | 'fields' | 'limit' | 'offset' | 'order'
|
|
279
|
-
>,
|
|
280
|
-
): CustomerOrdersResponse;
|
|
281
|
-
|
|
282
|
-
//
|
|
283
|
-
await api.customer.listOrderItemHistory(
|
|
284
|
-
orderId: number,
|
|
285
|
-
options?: Pick<
|
|
286
|
-
ApiParams<
|
|
287
|
-
'',
|
|
288
|
-
CustomerOrderItemHistorySortFields,
|
|
289
|
-
CustomerOrderItemHistoryConditionFields
|
|
290
|
-
>,
|
|
291
|
-
'condition' | 'fields' | 'limit' | 'offset' | 'order'
|
|
292
|
-
>,
|
|
293
|
-
): CustomerOrderItemHistoriesResponse;
|
|
294
|
-
|
|
295
|
-
//
|
|
296
|
-
await api.customer.listCustomerHistory(
|
|
297
|
-
options?: Pick<
|
|
298
|
-
ApiParams<
|
|
299
|
-
'',
|
|
300
|
-
CustomerHistorySortFields,
|
|
301
|
-
CustomerHistoryConditionFields
|
|
302
|
-
>,
|
|
303
|
-
'condition' | 'limit' | 'offset' | 'order'
|
|
304
|
-
>,
|
|
305
|
-
): CustomerHistoryResponse;
|
|
306
|
-
|
|
307
|
-
//
|
|
308
|
-
await api.customer.listCustomerReview(
|
|
309
|
-
options?: Pick<
|
|
310
|
-
ApiParams<
|
|
311
|
-
ReviewFields,
|
|
312
|
-
ReviewSortFields,
|
|
313
|
-
ReviewConditionFields
|
|
314
|
-
>,
|
|
315
|
-
'condition' | 'order' | 'fields' | 'limit' | 'offset'
|
|
316
|
-
>,
|
|
317
|
-
): ProductReviewResponse;
|
|
318
|
-
|
|
319
|
-
//
|
|
320
|
-
await api.customer.listWalletTransaction(
|
|
321
|
-
options?: Pick<
|
|
322
|
-
ApiParams<
|
|
323
|
-
'',
|
|
324
|
-
WalletSortFields,
|
|
325
|
-
WalletConditionFields
|
|
326
|
-
>,
|
|
327
|
-
'condition' | 'order' | 'limit' | 'offset'
|
|
328
|
-
>,
|
|
329
|
-
): WalletTransactionResponse;
|
|
330
|
-
|
|
331
|
-
//
|
|
332
|
-
await api.customer.claimGiftCard(
|
|
333
|
-
payload: ClaimGiftCardRequest
|
|
334
|
-
): ClaimGiftCardResponse;
|
|
335
|
-
```
|
|
336
|
-
|
|
337
|
-
### [customization](#customization)
|
|
338
|
-
```ts
|
|
339
|
-
import api from '../../api';
|
|
340
|
-
|
|
341
|
-
// Esse método possui sobrecarga de função, permitindo uma mesma função possuir duas assinaturas.
|
|
342
|
-
// Retorna uma ou varias vitrines com base nos code passado como parametro
|
|
343
|
-
await api.customization.listShowcase(codes: Array<string>): Array<Showcase>;
|
|
344
|
-
await api.customization.listShowcase(code: string): Showcase;
|
|
345
|
-
|
|
346
|
-
// Esse método possui sobrecarga de função, permitindo uma mesma função possuir duas assinaturas.
|
|
347
|
-
// Esse método possui Generic AdditionalParameters usado para definir a tipagem dos parametros personalizados e dinamicos cadastrados no grupo de banner.
|
|
348
|
-
// Retorna uma ou varios grupos de banner com base nos code passado como parametro
|
|
349
|
-
await api.customization.listBanners<AdditionalParameters>(codes: Array<string>): Array<Banners<AdditionalParameters>>;
|
|
350
|
-
await api.customization.listBanners<AdditionalParameters>(code: string): Banners<AdditionalParameters>;
|
|
351
|
-
|
|
352
|
-
// Esse método possui sobrecarga de função, permitindo uma mesma função possuir duas assinaturas.
|
|
353
|
-
// Retorna uma ou varias vitrines com base nos code passado como parametro
|
|
354
|
-
await api.customization.listMenu(codes: Array<string>) Array<Menu>;
|
|
355
|
-
await api.customization.listMenu(code: string) Menu;
|
|
356
|
-
```
|
|
357
|
-
|
|
358
|
-
### [product](#product)
|
|
359
|
-
```ts
|
|
360
|
-
import api from '../../api';
|
|
361
|
-
|
|
362
|
-
// Listar marcas
|
|
363
|
-
await api.product.listBrands(
|
|
364
|
-
options?: Pick<
|
|
365
|
-
ApiParams<BrandFields, BrandOrders, BrandConditions>,
|
|
366
|
-
'condition' | 'fields' | 'offset' | 'limit' | 'order'
|
|
367
|
-
>
|
|
368
|
-
): Brand;
|
|
369
|
-
|
|
370
|
-
// Buscar variações de um produto
|
|
371
|
-
await api.product.listVariation(
|
|
372
|
-
variationData: VariationData,
|
|
373
|
-
options?: Pick<
|
|
374
|
-
ApiParams<ProductFields, ProductSortFields, ProductConditionFields>,
|
|
375
|
-
'condition' | 'fields' | 'meta'
|
|
376
|
-
>
|
|
377
|
-
): Product;
|
|
378
|
-
|
|
379
|
-
// Nesse método é necessário definir o Generic UrlType conforme a request da página que espera ser retornado, exemplo: para buscar uma página de catalogo é informamos UrlListing. Todos os tipos podem ser conferidos na documentação oficial.
|
|
380
|
-
// Request com dados da página (categoria, detalhe de produto, institucional, marca, etc)
|
|
381
|
-
await api.product.getUrl<UrlType>(
|
|
382
|
-
path: string,
|
|
383
|
-
options?: Pick<
|
|
384
|
-
ApiParams<ProductFields, ProductOrderFields, ProductConditionFields>,
|
|
385
|
-
'condition' | 'fields' | 'limit' | 'offset' | 'meta' | 'order'
|
|
386
|
-
>
|
|
387
|
-
): UrlType;
|
|
388
|
-
|
|
389
|
-
// Retorna uma lista de produtos com base no termo de pesquisa. Pode ser usado para criar uma sugestão no header do site e também para criar uma listagem paginada de busca de produto
|
|
390
|
-
await api.product.getSearch(
|
|
391
|
-
term: string,
|
|
392
|
-
options?: Pick<
|
|
393
|
-
ApiParams<ProductFields, ProductSortFields, ProductConditionFields>,
|
|
394
|
-
'condition' | 'fields' | 'limit' | 'meta' | 'offset' | 'order'
|
|
395
|
-
>
|
|
396
|
-
): Search;
|
|
397
|
-
|
|
398
|
-
// Usado para cotar frete no contexto do produto informado na requisição. Não considera produtos persistidos no carrinho.
|
|
399
|
-
await api.product.listShipmentQuoteProduct(
|
|
400
|
-
payload: Pick<ApiParams, 'targetCountryCode' | 'targetZipCode' | 'items'>,
|
|
401
|
-
): ShipmentQuoteProductResponse;
|
|
402
|
-
|
|
403
|
-
// Permite o cliente deletar seu comentário/pergunta realizada no produto.
|
|
404
|
-
await api.product.deleteProductComment(
|
|
405
|
-
commentId: number
|
|
406
|
-
): boolean;
|
|
407
|
-
|
|
408
|
-
// Permite o cliente criar um comentário/pergunta no produto.
|
|
409
|
-
await api.product.createProductComment(
|
|
410
|
-
productId: number,
|
|
411
|
-
payload: CreateProductComment,
|
|
412
|
-
): ProductComment;
|
|
413
|
-
|
|
414
|
-
// Retorna uma listagem paginada de todos os comentários do produto
|
|
415
|
-
await api.product.listProductComments(
|
|
416
|
-
options?: Pick<
|
|
417
|
-
ApiParams<
|
|
418
|
-
ProductCommentFields,
|
|
419
|
-
ProductCommentSortFields,
|
|
420
|
-
ProductCommentConditionFields
|
|
421
|
-
>,
|
|
422
|
-
'condition' | 'order' | 'limit' | 'offset' | 'fields'
|
|
423
|
-
>
|
|
424
|
-
): ProductCommentsResponse;
|
|
425
|
-
```
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
### [promotional](#promotional)
|
|
429
|
-
```ts
|
|
430
|
-
import api from '../../api';
|
|
431
|
-
|
|
432
|
-
// Retorna a listagem de opções de compre junto no contexto do produto.
|
|
433
|
-
await api.promotional.listPairOffers(
|
|
434
|
-
productId: number,
|
|
435
|
-
options?: Pick<ApiParams<ProductFields>, 'fields' | 'variationMap'>
|
|
436
|
-
): PairOfferResponse;
|
|
437
|
-
|
|
438
|
-
// Adiciona cupom no contexto do carrinho.
|
|
439
|
-
await api.promotional.addCoupon(
|
|
440
|
-
payload: AddCouponRequest
|
|
441
|
-
): CartResponse;
|
|
442
|
-
|
|
443
|
-
// Remove cupom no contexto do carrinho.
|
|
444
|
-
await api.promotional.deleteCoupon(): CartResponse;
|
|
445
|
-
|
|
446
|
-
// Aplica saldo em carteira como forma de desconto no contexto carrinho.
|
|
447
|
-
await api.promotional.applyWallet(): CartResponse;
|
|
448
|
-
|
|
449
|
-
// Remove saldo em carteira aplicado no contexto do carrinho.
|
|
450
|
-
await api.promotional.deleteWallet(): CartResponse;
|
|
451
|
-
|
|
452
|
-
// Aplica saldo de pontos como forma de desconto no contexto do carrinho.
|
|
453
|
-
await api.promotional.applyPoint(): CartResponse;
|
|
454
|
-
|
|
455
|
-
// Remove saldo de pontos aplicado no contexto do carrinho.
|
|
456
|
-
await api.promotional.deletePoint(): CartResponse;
|
|
457
|
-
```
|
|
458
|
-
|
|
459
|
-
## Tipos
|
|
460
|
-
|
|
461
|
-
Todos os métodos retornam dados tipados para melhor experiência com TypeScript.
|
|
462
|
-
|
|
463
|
-
## Contribuição
|
|
464
|
-
|
|
465
|
-
Contribuições são bem-vindas! Abra uma issue ou envie um pull request.
|
|
466
|
-
|
|
467
|
-
## Licença
|
|
468
|
-
|
|
469
|
-
ISC
|
|
1
|
+
# ../../api
|
|
2
|
+
|
|
3
|
+
Composables Vue 3 + TypeScript para integração simplificada com a API pública da Uappi, facilitando o consumo, gerenciamento e reutilização de endpoints em aplicações modernas.
|
|
4
|
+
|
|
5
|
+
## Instalação
|
|
6
|
+
|
|
7
|
+
Adicione ao seu projeto:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install ../../api
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Escopos Disponíveis
|
|
14
|
+
|
|
15
|
+
O pacote expõe os seguintes escopos, cada um agrupando recursos relacionados:
|
|
16
|
+
|
|
17
|
+
- [**cart**](#cart): Operações de carrinho, como adicionar/remover produtos, simular frete, pagamentos e condições.
|
|
18
|
+
- listDetail Lista detalhes do carrinho
|
|
19
|
+
- addProduct Adiciona um produto ao carrinho
|
|
20
|
+
- deleteProduct Remove um produto do carrinho
|
|
21
|
+
- upsertProduct Atualiza ou insere produto
|
|
22
|
+
- shipmentQuote Lista opções de frete com base no carrinho
|
|
23
|
+
- selectShipment Seleciona opção de frete
|
|
24
|
+
- applyAddresses Aplica endereços entrega/faturamento ao carrinho
|
|
25
|
+
- listPayments Lista formas de pagamento
|
|
26
|
+
- buy: Finaliza a compra
|
|
27
|
+
- paymentConditions: Lista condições de pagamento
|
|
28
|
+
|
|
29
|
+
- [**common**](#common): Utilitários como consulta de CEP, países e bandeiras de cartão.
|
|
30
|
+
- listZipcode: Lista detalhes de endereço de CEP
|
|
31
|
+
- listContries: Lista detalhes de países
|
|
32
|
+
- countryDetail: Detalhes de um país
|
|
33
|
+
- listCardFlags: Retorna dados utilitários sobre cada bandeira de cartão (regex de validação, etc)
|
|
34
|
+
|
|
35
|
+
- [**customer**](#customer): Recursos para autenticação, cadastro, endereços, pedidos, newsletter, avaliações e histórico do cliente.
|
|
36
|
+
- addNewsletter: Inscreve na newsletter da loja por email e name
|
|
37
|
+
- deleteNewsletter: Remove inscrição na newsletter (apenas cliente logado)
|
|
38
|
+
- createProductReview: Avalia um produto (apenas clientes logado)
|
|
39
|
+
- listProductReview: Listagem paginada de todas avaliações do produto
|
|
40
|
+
- listStoreReview: Listagem paginada de todas avaliações da loja
|
|
41
|
+
- createInterest: Cria uma solicitação de interesse em um produto fora de estoque
|
|
42
|
+
- changePasswordByAuthenticated: Alteração de senha com cliente autenticado
|
|
43
|
+
- changePasswordByCode: Alteração de senha através de código enviado por e-mail
|
|
44
|
+
- check: Verifica existencia de cliente com base no e-mail ou documento
|
|
45
|
+
- listAddress: Listagem de endereços do cliente logado
|
|
46
|
+
- createAddress: Cria novo endereço do cliente logado
|
|
47
|
+
- deleteAddress: Remove um endereço do cliente logado
|
|
48
|
+
- updateAddress: Atualiza endereço do cliente logado
|
|
49
|
+
- updatePrimaryAddress: Define um endereço como principal
|
|
50
|
+
- detail: Detalhes do cliente logado
|
|
51
|
+
- passwordRecovery: Recuperação de senha
|
|
52
|
+
- signinByDocument: Login por documento
|
|
53
|
+
- signinByEmail: Login por e-mail
|
|
54
|
+
- signup: Cadastro de novo cliente
|
|
55
|
+
- update: Atualiza dados do cliente
|
|
56
|
+
- loggout: Logout
|
|
57
|
+
- detailOrderGroup: Detalhes de pedido
|
|
58
|
+
- listOrderGroups: Lista pedidos
|
|
59
|
+
- listOrderItemHistory: Exibe o histórico de atualizações do pedido
|
|
60
|
+
- listCustomerHistory: Exibe o histórico de atualizações do cliente (senha, endereço, etc.)
|
|
61
|
+
- listCustomerReview: Lista avaliações do cliente em produto
|
|
62
|
+
- listWalletTransaction: Lista transações da carteira
|
|
63
|
+
- claimGiftCard: Resgata gift card
|
|
64
|
+
|
|
65
|
+
- [**customization**](#customization): Listagem de banners, vitrines e menus customizados.
|
|
66
|
+
- listShowcase: Lista detalhes de vitrines
|
|
67
|
+
- listBanners: Lista detalhes de banners
|
|
68
|
+
- listMenu: Lista detalhes de menus
|
|
69
|
+
- listTemplateSettings: Lista as configurações de settings e apps da loja com base na URI
|
|
70
|
+
|
|
71
|
+
- [**product**](#product): Consulta de marcas, variações, busca, comentários e informações de produtos.
|
|
72
|
+
- listBrands: Listagem de marcas ativas
|
|
73
|
+
- listVariation: Lista variações de um produto
|
|
74
|
+
- getUrl: Consulta URL de produto (categorias, institucionais, detalhe de produto, etc.)
|
|
75
|
+
- getSearch: Pesquisa produtos por termo
|
|
76
|
+
- listShipmentQuoteProduct: Lista opções frete com base em um produto
|
|
77
|
+
- deleteProductComment: Remove um comentário no produto
|
|
78
|
+
- createProductComment: Adiciona um comentário no produto
|
|
79
|
+
- listProductComments: Lista comentários de produto
|
|
80
|
+
|
|
81
|
+
- [**promotional**](#promotional): Ofertas, cupons, carteiras e pontos promocionais.
|
|
82
|
+
- listPairOffers: Lista ofertas em pares de um produto (compre junto)
|
|
83
|
+
- addCoupon: Adiciona cupom no carrinho
|
|
84
|
+
- deleteCoupon: Remove cupom no carrinho
|
|
85
|
+
- applyWallet: Aplica carteira saldo da carteira no carrinho
|
|
86
|
+
- deleteWallet: Remove carteira saldo da carteira no carrinho
|
|
87
|
+
- applyPoint: Aplica saldo de pontos no carrinho
|
|
88
|
+
- deletePoint: Remove saldo de pontos no carrinho
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Exemplos de Uso por Escopo
|
|
93
|
+
|
|
94
|
+
### [cart](#cart)
|
|
95
|
+
```ts
|
|
96
|
+
import api from '../../api';
|
|
97
|
+
|
|
98
|
+
// Listar detalhes do carrinho
|
|
99
|
+
await api.cart.listDetail(): CartResponse;
|
|
100
|
+
|
|
101
|
+
// Adiciona produto ao carrinho
|
|
102
|
+
await api.cart.addProduct(
|
|
103
|
+
payload: UpsertCartRequest
|
|
104
|
+
): CartResponse;
|
|
105
|
+
|
|
106
|
+
// Remover um ou varios produtos do carrinho
|
|
107
|
+
await api.cart.deleteProduct(
|
|
108
|
+
payload: DeleteCartRequest
|
|
109
|
+
): CartResponse;
|
|
110
|
+
|
|
111
|
+
// Adiciona ou atualiza a quantidade do produto no carrinho
|
|
112
|
+
await api.cart.upsertProduct(
|
|
113
|
+
payload: UpsertCartRequest
|
|
114
|
+
): CartResponse;
|
|
115
|
+
|
|
116
|
+
// Retorna opções de frete no contexto do carrinho
|
|
117
|
+
await api.cart.shipmentQuote(
|
|
118
|
+
payload: ShipmentQuoteCartRequest
|
|
119
|
+
): CartResponse;
|
|
120
|
+
|
|
121
|
+
// Seleciona uma opção de frete no contexto do carrinho.
|
|
122
|
+
await api.cart.selectShipment(
|
|
123
|
+
payload: SelectShipimentRequest
|
|
124
|
+
): CartResponse;
|
|
125
|
+
|
|
126
|
+
// Aplica endereço no contexto do carrinho.
|
|
127
|
+
await api.cart.applyAddresses(
|
|
128
|
+
payload: AddressesToCartRequest
|
|
129
|
+
): CartResponse;
|
|
130
|
+
|
|
131
|
+
// Lista as opções de pagamento no contexto do carrinho.
|
|
132
|
+
await api.cart.listPayments(): PaymentResponse;
|
|
133
|
+
|
|
134
|
+
// Informa as condições do pagamento, para verificar condições do mix de pagamento
|
|
135
|
+
await api.cart.paymentConditions(
|
|
136
|
+
payload: PaymentConditionsRequest
|
|
137
|
+
): PaymentConditionsResponse;
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### [common](#common)
|
|
141
|
+
```ts
|
|
142
|
+
import api from '../../api';
|
|
143
|
+
|
|
144
|
+
// Consultar CEP
|
|
145
|
+
await api.common.listZipcode(zipcode: string): ZipcodeResponse;
|
|
146
|
+
|
|
147
|
+
// Retorna dados complementares de cada pais
|
|
148
|
+
await api.common.listContries(): Array<CountryResponse>;
|
|
149
|
+
|
|
150
|
+
// Retorna os detalhes de um pais
|
|
151
|
+
await api.common.countryDetail(code: CountryAlpha3): CountryResponse;
|
|
152
|
+
|
|
153
|
+
// Retorna dados utilitários sobre cada bandeira de cartão
|
|
154
|
+
await api.common.listCardFlags(): CardFlags;
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### [customer](#customer)
|
|
158
|
+
```ts
|
|
159
|
+
import api from '../../api';
|
|
160
|
+
|
|
161
|
+
// Inscreve na newsletter da loja por email e name
|
|
162
|
+
await api.customer.addNewsletter(): CustomerOrderResponse;
|
|
163
|
+
|
|
164
|
+
// Remove inscrição na newsletter (apenas clientes logado)
|
|
165
|
+
await api.customer.deleteNewsletter(): CustomerOrderResponse;
|
|
166
|
+
|
|
167
|
+
// Avalia um produto (apenas clientes logado)
|
|
168
|
+
await api.customer.createProductReview(
|
|
169
|
+
productId: number,
|
|
170
|
+
payload: ProductReviewRequest,
|
|
171
|
+
): ProductReviewResponse;
|
|
172
|
+
|
|
173
|
+
// Listagem paginada de todas avaliações do produto
|
|
174
|
+
await api.customer.listProductReview(
|
|
175
|
+
options?: Pick<
|
|
176
|
+
ApiParams<ReviewFields, ReviewSortFields, ReviewConditionFields>,
|
|
177
|
+
'condition' | 'order' | 'fields' | 'limit' | 'offset'
|
|
178
|
+
>
|
|
179
|
+
): ProductReviewResponse;
|
|
180
|
+
|
|
181
|
+
// Listagem paginada de todas avaliações da loja
|
|
182
|
+
await api.customer.listStoreReview(): ProductReviewResponse;
|
|
183
|
+
|
|
184
|
+
//
|
|
185
|
+
await api.customer.createInterest(
|
|
186
|
+
payload: RequestInterest
|
|
187
|
+
): ResponseInterest;
|
|
188
|
+
|
|
189
|
+
// Alteração de senha com cliente autenticado
|
|
190
|
+
await api.customer.changePasswordByAuthenticated(
|
|
191
|
+
payload: ChangePasswordCustomerAuthenticated,
|
|
192
|
+
): boolean;
|
|
193
|
+
|
|
194
|
+
// Alteração de senha através de código enviado por e-mail
|
|
195
|
+
await api.customer.changePasswordByCode(
|
|
196
|
+
payload: ChangePasswordCustomerByCode
|
|
197
|
+
): boolean;
|
|
198
|
+
|
|
199
|
+
// Verifica existencia de cliente com base no e-mail ou documento
|
|
200
|
+
await api.customer.check(
|
|
201
|
+
payload: CheckCustomer
|
|
202
|
+
): boolean;
|
|
203
|
+
|
|
204
|
+
// Listagem de endereços do cliente logado
|
|
205
|
+
await api.customer.listAddress(): CustomerAddressesResponse;
|
|
206
|
+
|
|
207
|
+
// Cria novo endereço do cliente logado
|
|
208
|
+
await api.customer.createAddress(
|
|
209
|
+
payload: UpsertCustomerAddressRequest
|
|
210
|
+
): CustomerAddressResponse;
|
|
211
|
+
|
|
212
|
+
// Remove um endereço do cliente logado
|
|
213
|
+
await api.customer.deleteAddress(
|
|
214
|
+
addressId: number
|
|
215
|
+
): CustomerAddressResponse;
|
|
216
|
+
|
|
217
|
+
// Atualiza endereço do cliente logado
|
|
218
|
+
await api.customer.updateAddress(
|
|
219
|
+
addressId: number,
|
|
220
|
+
payload: UpsertCustomerAddressRequest,
|
|
221
|
+
): CustomerAddressResponse;
|
|
222
|
+
|
|
223
|
+
//
|
|
224
|
+
await api.customer.updatePrimaryAddress(
|
|
225
|
+
addressId: number
|
|
226
|
+
): CustomerAddressResponse;
|
|
227
|
+
|
|
228
|
+
//
|
|
229
|
+
await api.customer.detail(
|
|
230
|
+
options?: Pick<
|
|
231
|
+
ApiParams<CustomerFields, CustomerSortFields, CustomerConditionFields>,
|
|
232
|
+
'condition' | 'fields' | 'order'
|
|
233
|
+
>
|
|
234
|
+
): CustomerResponse;
|
|
235
|
+
|
|
236
|
+
//
|
|
237
|
+
await api.customer.passwordRecovery(
|
|
238
|
+
payload: PasswordRecoveryCustomer
|
|
239
|
+
): boolean;
|
|
240
|
+
|
|
241
|
+
//
|
|
242
|
+
await api.customer.signinByDocument(
|
|
243
|
+
payload: SigninCustomerByDocument
|
|
244
|
+
): ResponseSigninCustomer;
|
|
245
|
+
|
|
246
|
+
//
|
|
247
|
+
await api.customer.signinByEmail(
|
|
248
|
+
payload: SigninCustomerByEmail
|
|
249
|
+
): ResponseSigninCustomer;
|
|
250
|
+
|
|
251
|
+
//
|
|
252
|
+
await api.customer.signup(
|
|
253
|
+
payload: SignupCustomer
|
|
254
|
+
): CustomerResponse;
|
|
255
|
+
|
|
256
|
+
//
|
|
257
|
+
await api.customer.update(
|
|
258
|
+
payload: UpdateCustomer
|
|
259
|
+
): CustomerResponse;
|
|
260
|
+
|
|
261
|
+
//
|
|
262
|
+
await api.customer.loggout(): boolean;
|
|
263
|
+
|
|
264
|
+
//
|
|
265
|
+
await api.customer.detailOrderGroup(
|
|
266
|
+
orderId: number,
|
|
267
|
+
options?: Pick<ApiParams<CustomerOrderGroupFields>, 'fields'>,
|
|
268
|
+
): CustomerOrderResponse;
|
|
269
|
+
|
|
270
|
+
//
|
|
271
|
+
await api.customer.listOrderGroups(
|
|
272
|
+
options?: Pick<
|
|
273
|
+
ApiParams<
|
|
274
|
+
CustomerOrderGroupFields,
|
|
275
|
+
CustomerOrderGroupSortFields,
|
|
276
|
+
CustomerOrderGroupConditionFields
|
|
277
|
+
>,
|
|
278
|
+
'condition' | 'fields' | 'limit' | 'offset' | 'order'
|
|
279
|
+
>,
|
|
280
|
+
): CustomerOrdersResponse;
|
|
281
|
+
|
|
282
|
+
//
|
|
283
|
+
await api.customer.listOrderItemHistory(
|
|
284
|
+
orderId: number,
|
|
285
|
+
options?: Pick<
|
|
286
|
+
ApiParams<
|
|
287
|
+
'',
|
|
288
|
+
CustomerOrderItemHistorySortFields,
|
|
289
|
+
CustomerOrderItemHistoryConditionFields
|
|
290
|
+
>,
|
|
291
|
+
'condition' | 'fields' | 'limit' | 'offset' | 'order'
|
|
292
|
+
>,
|
|
293
|
+
): CustomerOrderItemHistoriesResponse;
|
|
294
|
+
|
|
295
|
+
//
|
|
296
|
+
await api.customer.listCustomerHistory(
|
|
297
|
+
options?: Pick<
|
|
298
|
+
ApiParams<
|
|
299
|
+
'',
|
|
300
|
+
CustomerHistorySortFields,
|
|
301
|
+
CustomerHistoryConditionFields
|
|
302
|
+
>,
|
|
303
|
+
'condition' | 'limit' | 'offset' | 'order'
|
|
304
|
+
>,
|
|
305
|
+
): CustomerHistoryResponse;
|
|
306
|
+
|
|
307
|
+
//
|
|
308
|
+
await api.customer.listCustomerReview(
|
|
309
|
+
options?: Pick<
|
|
310
|
+
ApiParams<
|
|
311
|
+
ReviewFields,
|
|
312
|
+
ReviewSortFields,
|
|
313
|
+
ReviewConditionFields
|
|
314
|
+
>,
|
|
315
|
+
'condition' | 'order' | 'fields' | 'limit' | 'offset'
|
|
316
|
+
>,
|
|
317
|
+
): ProductReviewResponse;
|
|
318
|
+
|
|
319
|
+
//
|
|
320
|
+
await api.customer.listWalletTransaction(
|
|
321
|
+
options?: Pick<
|
|
322
|
+
ApiParams<
|
|
323
|
+
'',
|
|
324
|
+
WalletSortFields,
|
|
325
|
+
WalletConditionFields
|
|
326
|
+
>,
|
|
327
|
+
'condition' | 'order' | 'limit' | 'offset'
|
|
328
|
+
>,
|
|
329
|
+
): WalletTransactionResponse;
|
|
330
|
+
|
|
331
|
+
//
|
|
332
|
+
await api.customer.claimGiftCard(
|
|
333
|
+
payload: ClaimGiftCardRequest
|
|
334
|
+
): ClaimGiftCardResponse;
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
### [customization](#customization)
|
|
338
|
+
```ts
|
|
339
|
+
import api from '../../api';
|
|
340
|
+
|
|
341
|
+
// Esse método possui sobrecarga de função, permitindo uma mesma função possuir duas assinaturas.
|
|
342
|
+
// Retorna uma ou varias vitrines com base nos code passado como parametro
|
|
343
|
+
await api.customization.listShowcase(codes: Array<string>): Array<Showcase>;
|
|
344
|
+
await api.customization.listShowcase(code: string): Showcase;
|
|
345
|
+
|
|
346
|
+
// Esse método possui sobrecarga de função, permitindo uma mesma função possuir duas assinaturas.
|
|
347
|
+
// Esse método possui Generic AdditionalParameters usado para definir a tipagem dos parametros personalizados e dinamicos cadastrados no grupo de banner.
|
|
348
|
+
// Retorna uma ou varios grupos de banner com base nos code passado como parametro
|
|
349
|
+
await api.customization.listBanners<AdditionalParameters>(codes: Array<string>): Array<Banners<AdditionalParameters>>;
|
|
350
|
+
await api.customization.listBanners<AdditionalParameters>(code: string): Banners<AdditionalParameters>;
|
|
351
|
+
|
|
352
|
+
// Esse método possui sobrecarga de função, permitindo uma mesma função possuir duas assinaturas.
|
|
353
|
+
// Retorna uma ou varias vitrines com base nos code passado como parametro
|
|
354
|
+
await api.customization.listMenu(codes: Array<string>) Array<Menu>;
|
|
355
|
+
await api.customization.listMenu(code: string) Menu;
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
### [product](#product)
|
|
359
|
+
```ts
|
|
360
|
+
import api from '../../api';
|
|
361
|
+
|
|
362
|
+
// Listar marcas
|
|
363
|
+
await api.product.listBrands(
|
|
364
|
+
options?: Pick<
|
|
365
|
+
ApiParams<BrandFields, BrandOrders, BrandConditions>,
|
|
366
|
+
'condition' | 'fields' | 'offset' | 'limit' | 'order'
|
|
367
|
+
>
|
|
368
|
+
): Brand;
|
|
369
|
+
|
|
370
|
+
// Buscar variações de um produto
|
|
371
|
+
await api.product.listVariation(
|
|
372
|
+
variationData: VariationData,
|
|
373
|
+
options?: Pick<
|
|
374
|
+
ApiParams<ProductFields, ProductSortFields, ProductConditionFields>,
|
|
375
|
+
'condition' | 'fields' | 'meta'
|
|
376
|
+
>
|
|
377
|
+
): Product;
|
|
378
|
+
|
|
379
|
+
// Nesse método é necessário definir o Generic UrlType conforme a request da página que espera ser retornado, exemplo: para buscar uma página de catalogo é informamos UrlListing. Todos os tipos podem ser conferidos na documentação oficial.
|
|
380
|
+
// Request com dados da página (categoria, detalhe de produto, institucional, marca, etc)
|
|
381
|
+
await api.product.getUrl<UrlType>(
|
|
382
|
+
path: string,
|
|
383
|
+
options?: Pick<
|
|
384
|
+
ApiParams<ProductFields, ProductOrderFields, ProductConditionFields>,
|
|
385
|
+
'condition' | 'fields' | 'limit' | 'offset' | 'meta' | 'order'
|
|
386
|
+
>
|
|
387
|
+
): UrlType;
|
|
388
|
+
|
|
389
|
+
// Retorna uma lista de produtos com base no termo de pesquisa. Pode ser usado para criar uma sugestão no header do site e também para criar uma listagem paginada de busca de produto
|
|
390
|
+
await api.product.getSearch(
|
|
391
|
+
term: string,
|
|
392
|
+
options?: Pick<
|
|
393
|
+
ApiParams<ProductFields, ProductSortFields, ProductConditionFields>,
|
|
394
|
+
'condition' | 'fields' | 'limit' | 'meta' | 'offset' | 'order'
|
|
395
|
+
>
|
|
396
|
+
): Search;
|
|
397
|
+
|
|
398
|
+
// Usado para cotar frete no contexto do produto informado na requisição. Não considera produtos persistidos no carrinho.
|
|
399
|
+
await api.product.listShipmentQuoteProduct(
|
|
400
|
+
payload: Pick<ApiParams, 'targetCountryCode' | 'targetZipCode' | 'items'>,
|
|
401
|
+
): ShipmentQuoteProductResponse;
|
|
402
|
+
|
|
403
|
+
// Permite o cliente deletar seu comentário/pergunta realizada no produto.
|
|
404
|
+
await api.product.deleteProductComment(
|
|
405
|
+
commentId: number
|
|
406
|
+
): boolean;
|
|
407
|
+
|
|
408
|
+
// Permite o cliente criar um comentário/pergunta no produto.
|
|
409
|
+
await api.product.createProductComment(
|
|
410
|
+
productId: number,
|
|
411
|
+
payload: CreateProductComment,
|
|
412
|
+
): ProductComment;
|
|
413
|
+
|
|
414
|
+
// Retorna uma listagem paginada de todos os comentários do produto
|
|
415
|
+
await api.product.listProductComments(
|
|
416
|
+
options?: Pick<
|
|
417
|
+
ApiParams<
|
|
418
|
+
ProductCommentFields,
|
|
419
|
+
ProductCommentSortFields,
|
|
420
|
+
ProductCommentConditionFields
|
|
421
|
+
>,
|
|
422
|
+
'condition' | 'order' | 'limit' | 'offset' | 'fields'
|
|
423
|
+
>
|
|
424
|
+
): ProductCommentsResponse;
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
### [promotional](#promotional)
|
|
429
|
+
```ts
|
|
430
|
+
import api from '../../api';
|
|
431
|
+
|
|
432
|
+
// Retorna a listagem de opções de compre junto no contexto do produto.
|
|
433
|
+
await api.promotional.listPairOffers(
|
|
434
|
+
productId: number,
|
|
435
|
+
options?: Pick<ApiParams<ProductFields>, 'fields' | 'variationMap'>
|
|
436
|
+
): PairOfferResponse;
|
|
437
|
+
|
|
438
|
+
// Adiciona cupom no contexto do carrinho.
|
|
439
|
+
await api.promotional.addCoupon(
|
|
440
|
+
payload: AddCouponRequest
|
|
441
|
+
): CartResponse;
|
|
442
|
+
|
|
443
|
+
// Remove cupom no contexto do carrinho.
|
|
444
|
+
await api.promotional.deleteCoupon(): CartResponse;
|
|
445
|
+
|
|
446
|
+
// Aplica saldo em carteira como forma de desconto no contexto carrinho.
|
|
447
|
+
await api.promotional.applyWallet(): CartResponse;
|
|
448
|
+
|
|
449
|
+
// Remove saldo em carteira aplicado no contexto do carrinho.
|
|
450
|
+
await api.promotional.deleteWallet(): CartResponse;
|
|
451
|
+
|
|
452
|
+
// Aplica saldo de pontos como forma de desconto no contexto do carrinho.
|
|
453
|
+
await api.promotional.applyPoint(): CartResponse;
|
|
454
|
+
|
|
455
|
+
// Remove saldo de pontos aplicado no contexto do carrinho.
|
|
456
|
+
await api.promotional.deletePoint(): CartResponse;
|
|
457
|
+
```
|
|
458
|
+
|
|
459
|
+
## Tipos
|
|
460
|
+
|
|
461
|
+
Todos os métodos retornam dados tipados para melhor experiência com TypeScript.
|
|
462
|
+
|
|
463
|
+
## Contribuição
|
|
464
|
+
|
|
465
|
+
Contribuições são bem-vindas! Abra uma issue ou envie um pull request.
|
|
466
|
+
|
|
467
|
+
## Licença
|
|
468
|
+
|
|
469
|
+
ISC
|