@faststore/api 3.9.2 → 3.11.4

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.
Files changed (163) hide show
  1. package/dist/cjs/package.json +2 -4
  2. package/dist/cjs/src/directives/cacheControl.d.ts +2 -2
  3. package/dist/cjs/src/directives/cacheControl.js +6 -6
  4. package/dist/cjs/src/directives/cacheControl.js.map +1 -1
  5. package/dist/cjs/src/directives/index.d.ts +1 -1
  6. package/dist/cjs/src/index.d.ts +1 -1
  7. package/dist/cjs/src/index.js +4 -3
  8. package/dist/cjs/src/index.js.map +1 -1
  9. package/dist/cjs/src/platforms/errors.js.map +1 -1
  10. package/dist/cjs/src/platforms/vtex/clients/commerce/index.d.ts +3 -3
  11. package/dist/cjs/src/platforms/vtex/clients/commerce/index.js +2 -2
  12. package/dist/cjs/src/platforms/vtex/clients/commerce/index.js.map +1 -1
  13. package/dist/cjs/src/platforms/vtex/clients/commerce/types/Product.js.map +1 -1
  14. package/dist/cjs/src/platforms/vtex/clients/search/index.d.ts +1 -1
  15. package/dist/cjs/src/platforms/vtex/clients/search/index.js +2 -2
  16. package/dist/cjs/src/platforms/vtex/clients/search/index.js.map +1 -1
  17. package/dist/cjs/src/platforms/vtex/index.d.ts +1 -1
  18. package/dist/cjs/src/platforms/vtex/loaders/index.js +1 -1
  19. package/dist/cjs/src/platforms/vtex/loaders/index.js.map +1 -1
  20. package/dist/cjs/src/platforms/vtex/loaders/salesChannel.d.ts +4 -4
  21. package/dist/cjs/src/platforms/vtex/loaders/salesChannel.js.map +1 -1
  22. package/dist/cjs/src/platforms/vtex/loaders/simulation.js.map +1 -1
  23. package/dist/cjs/src/platforms/vtex/loaders/sku.js +1 -1
  24. package/dist/cjs/src/platforms/vtex/loaders/sku.js.map +1 -1
  25. package/dist/cjs/src/platforms/vtex/resolvers/aggregateOffer.js +1 -1
  26. package/dist/cjs/src/platforms/vtex/resolvers/aggregateOffer.js.map +1 -1
  27. package/dist/cjs/src/platforms/vtex/resolvers/facet.js.map +1 -1
  28. package/dist/cjs/src/platforms/vtex/resolvers/offer.js +1 -1
  29. package/dist/cjs/src/platforms/vtex/resolvers/offer.js.map +1 -1
  30. package/dist/cjs/src/platforms/vtex/resolvers/organization.d.ts +2 -2
  31. package/dist/cjs/src/platforms/vtex/resolvers/organization.js.map +1 -1
  32. package/dist/cjs/src/platforms/vtex/resolvers/product.d.ts +1 -1
  33. package/dist/cjs/src/platforms/vtex/resolvers/product.js +1 -1
  34. package/dist/cjs/src/platforms/vtex/resolvers/product.js.map +1 -1
  35. package/dist/cjs/src/platforms/vtex/resolvers/query.d.ts +2 -2
  36. package/dist/cjs/src/platforms/vtex/resolvers/query.js +3 -4
  37. package/dist/cjs/src/platforms/vtex/resolvers/query.js.map +1 -1
  38. package/dist/cjs/src/platforms/vtex/resolvers/searchResult.d.ts +1 -1
  39. package/dist/cjs/src/platforms/vtex/resolvers/searchResult.js +1 -1
  40. package/dist/cjs/src/platforms/vtex/resolvers/searchResult.js.map +1 -1
  41. package/dist/cjs/src/platforms/vtex/resolvers/skuVariations.js.map +1 -1
  42. package/dist/cjs/src/platforms/vtex/resolvers/validateCart.js.map +1 -1
  43. package/dist/cjs/src/platforms/vtex/resolvers/validateSession.js +2 -2
  44. package/dist/cjs/src/platforms/vtex/resolvers/validateSession.js.map +1 -1
  45. package/dist/cjs/src/platforms/vtex/utils/channel.js +1 -1
  46. package/dist/cjs/src/platforms/vtex/utils/channel.js.map +1 -1
  47. package/dist/cjs/src/platforms/vtex/utils/createNewAddress.d.ts +2 -2
  48. package/dist/cjs/src/platforms/vtex/utils/facets.js +14 -14
  49. package/dist/cjs/src/platforms/vtex/utils/facets.js.map +1 -1
  50. package/dist/cjs/src/platforms/vtex/utils/getAddressOrderForm.d.ts +2 -2
  51. package/dist/cjs/src/platforms/vtex/utils/shouldUpdateShippingData.d.ts +2 -2
  52. package/dist/cjs/src/platforms/vtex/utils/skuVariants.d.ts +1 -1
  53. package/dist/cjs/src/platforms/vtex/utils/taxes.js.map +1 -1
  54. package/dist/cjs/src/telemetry/useFaststoreTelemetry.d.ts +1 -1
  55. package/dist/cjs/src/telemetry/useFaststoreTelemetry.js +1 -4
  56. package/dist/cjs/src/telemetry/useFaststoreTelemetry.js.map +1 -1
  57. package/dist/cjs/src/typeDefs/advertisement.graphql +22 -22
  58. package/dist/cjs/src/typeDefs/newsletter.graphql +0 -1
  59. package/dist/cjs/src/typeDefs/objectOrString.graphql +1 -1
  60. package/dist/cjs/src/typeDefs/query.graphql +0 -1
  61. package/dist/esm/package.json +2 -4
  62. package/dist/esm/src/directives/cacheControl.d.ts +2 -2
  63. package/dist/esm/src/directives/cacheControl.js +7 -7
  64. package/dist/esm/src/directives/cacheControl.js.map +1 -1
  65. package/dist/esm/src/directives/index.d.ts +1 -1
  66. package/dist/esm/src/index.d.ts +1 -1
  67. package/dist/esm/src/index.js +4 -3
  68. package/dist/esm/src/index.js.map +1 -1
  69. package/dist/esm/src/platforms/errors.js.map +1 -1
  70. package/dist/esm/src/platforms/vtex/clients/commerce/index.d.ts +3 -3
  71. package/dist/esm/src/platforms/vtex/clients/commerce/index.js +2 -2
  72. package/dist/esm/src/platforms/vtex/clients/commerce/index.js.map +1 -1
  73. package/dist/esm/src/platforms/vtex/clients/commerce/types/Product.js.map +1 -1
  74. package/dist/esm/src/platforms/vtex/clients/search/index.d.ts +1 -1
  75. package/dist/esm/src/platforms/vtex/clients/search/index.js +2 -2
  76. package/dist/esm/src/platforms/vtex/clients/search/index.js.map +1 -1
  77. package/dist/esm/src/platforms/vtex/index.d.ts +1 -1
  78. package/dist/esm/src/platforms/vtex/index.js +1 -1
  79. package/dist/esm/src/platforms/vtex/index.js.map +1 -1
  80. package/dist/esm/src/platforms/vtex/loaders/index.js +1 -1
  81. package/dist/esm/src/platforms/vtex/loaders/index.js.map +1 -1
  82. package/dist/esm/src/platforms/vtex/loaders/salesChannel.d.ts +4 -4
  83. package/dist/esm/src/platforms/vtex/loaders/salesChannel.js +1 -1
  84. package/dist/esm/src/platforms/vtex/loaders/salesChannel.js.map +1 -1
  85. package/dist/esm/src/platforms/vtex/loaders/simulation.js.map +1 -1
  86. package/dist/esm/src/platforms/vtex/loaders/sku.js +1 -1
  87. package/dist/esm/src/platforms/vtex/loaders/sku.js.map +1 -1
  88. package/dist/esm/src/platforms/vtex/resolvers/aggregateOffer.js +1 -1
  89. package/dist/esm/src/platforms/vtex/resolvers/aggregateOffer.js.map +1 -1
  90. package/dist/esm/src/platforms/vtex/resolvers/facet.js.map +1 -1
  91. package/dist/esm/src/platforms/vtex/resolvers/offer.js +1 -1
  92. package/dist/esm/src/platforms/vtex/resolvers/offer.js.map +1 -1
  93. package/dist/esm/src/platforms/vtex/resolvers/organization.d.ts +2 -2
  94. package/dist/esm/src/platforms/vtex/resolvers/organization.js.map +1 -1
  95. package/dist/esm/src/platforms/vtex/resolvers/product.d.ts +1 -1
  96. package/dist/esm/src/platforms/vtex/resolvers/product.js +1 -1
  97. package/dist/esm/src/platforms/vtex/resolvers/product.js.map +1 -1
  98. package/dist/esm/src/platforms/vtex/resolvers/query.d.ts +2 -2
  99. package/dist/esm/src/platforms/vtex/resolvers/query.js +3 -4
  100. package/dist/esm/src/platforms/vtex/resolvers/query.js.map +1 -1
  101. package/dist/esm/src/platforms/vtex/resolvers/searchResult.d.ts +1 -1
  102. package/dist/esm/src/platforms/vtex/resolvers/searchResult.js +1 -1
  103. package/dist/esm/src/platforms/vtex/resolvers/searchResult.js.map +1 -1
  104. package/dist/esm/src/platforms/vtex/resolvers/skuVariations.js.map +1 -1
  105. package/dist/esm/src/platforms/vtex/resolvers/validateCart.js.map +1 -1
  106. package/dist/esm/src/platforms/vtex/resolvers/validateSession.js +2 -2
  107. package/dist/esm/src/platforms/vtex/resolvers/validateSession.js.map +1 -1
  108. package/dist/esm/src/platforms/vtex/utils/channel.js +1 -1
  109. package/dist/esm/src/platforms/vtex/utils/channel.js.map +1 -1
  110. package/dist/esm/src/platforms/vtex/utils/createNewAddress.d.ts +2 -2
  111. package/dist/esm/src/platforms/vtex/utils/facets.js +14 -14
  112. package/dist/esm/src/platforms/vtex/utils/facets.js.map +1 -1
  113. package/dist/esm/src/platforms/vtex/utils/getAddressOrderForm.d.ts +2 -2
  114. package/dist/esm/src/platforms/vtex/utils/shouldUpdateShippingData.d.ts +2 -2
  115. package/dist/esm/src/platforms/vtex/utils/skuVariants.d.ts +1 -1
  116. package/dist/esm/src/platforms/vtex/utils/taxes.js.map +1 -1
  117. package/dist/esm/src/telemetry/useFaststoreTelemetry.d.ts +1 -1
  118. package/dist/esm/src/telemetry/useFaststoreTelemetry.js +3 -6
  119. package/dist/esm/src/telemetry/useFaststoreTelemetry.js.map +1 -1
  120. package/dist/esm/src/typeDefs/advertisement.graphql +22 -22
  121. package/dist/esm/src/typeDefs/newsletter.graphql +0 -1
  122. package/dist/esm/src/typeDefs/objectOrString.graphql +1 -1
  123. package/dist/esm/src/typeDefs/query.graphql +0 -1
  124. package/package.json +3 -5
  125. package/src/directives/cacheControl.ts +34 -36
  126. package/src/directives/index.ts +2 -2
  127. package/src/index.ts +5 -4
  128. package/src/platforms/errors.ts +4 -1
  129. package/src/platforms/vtex/clients/commerce/index.ts +13 -13
  130. package/src/platforms/vtex/clients/commerce/types/OrderForm.ts +6 -6
  131. package/src/platforms/vtex/clients/commerce/types/Product.ts +125 -128
  132. package/src/platforms/vtex/clients/commerce/types/SalesChannel.ts +20 -20
  133. package/src/platforms/vtex/clients/search/index.ts +13 -3
  134. package/src/platforms/vtex/clients/search/types/ProductSearchResult.ts +1 -1
  135. package/src/platforms/vtex/index.ts +1 -1
  136. package/src/platforms/vtex/loaders/index.ts +2 -2
  137. package/src/platforms/vtex/loaders/salesChannel.ts +7 -9
  138. package/src/platforms/vtex/loaders/simulation.ts +10 -7
  139. package/src/platforms/vtex/loaders/sku.ts +14 -9
  140. package/src/platforms/vtex/resolvers/aggregateOffer.ts +3 -3
  141. package/src/platforms/vtex/resolvers/facet.ts +9 -10
  142. package/src/platforms/vtex/resolvers/offer.ts +16 -8
  143. package/src/platforms/vtex/resolvers/organization.ts +3 -3
  144. package/src/platforms/vtex/resolvers/product.ts +5 -5
  145. package/src/platforms/vtex/resolvers/propertyValue.ts +1 -1
  146. package/src/platforms/vtex/resolvers/query.ts +13 -5
  147. package/src/platforms/vtex/resolvers/searchResult.ts +4 -4
  148. package/src/platforms/vtex/resolvers/skuVariations.ts +2 -1
  149. package/src/platforms/vtex/resolvers/validateCart.ts +7 -3
  150. package/src/platforms/vtex/resolvers/validateSession.ts +12 -13
  151. package/src/platforms/vtex/utils/channel.ts +2 -1
  152. package/src/platforms/vtex/utils/createNewAddress.ts +2 -2
  153. package/src/platforms/vtex/utils/facets.ts +21 -21
  154. package/src/platforms/vtex/utils/getAddressOrderForm.ts +2 -2
  155. package/src/platforms/vtex/utils/shouldUpdateShippingData.ts +2 -2
  156. package/src/platforms/vtex/utils/skuVariants.ts +1 -1
  157. package/src/platforms/vtex/utils/taxes.ts +1 -5
  158. package/src/telemetry/useFaststoreTelemetry.ts +5 -7
  159. package/src/typeDefs/advertisement.graphql +22 -22
  160. package/src/typeDefs/newsletter.graphql +0 -1
  161. package/src/typeDefs/objectOrString.graphql +1 -1
  162. package/src/typeDefs/query.graphql +0 -1
  163. package/src/typings/json.d.ts +2 -2
@@ -1,199 +1,196 @@
1
1
  export interface PortalProduct {
2
- productId: string;
3
- productName: string;
4
- brand: string;
5
- brandId: number;
6
- brandImageUrl: null | string;
7
- linkText: string;
8
- productReference: string;
9
- productReferenceCode: string;
10
- categoryId: string;
11
- productTitle: string;
12
- metaTagDescription: string;
13
- releaseDate: Date;
14
- clusterHighlights: unknown;
15
- productClusters: unknown;
16
- searchableClusters: unknown;
17
- categories: Category[];
18
- categoriesIds: CategoriesId[];
19
- link: string;
20
- description: string;
21
- items: Item[];
2
+ productId: string
3
+ productName: string
4
+ brand: string
5
+ brandId: number
6
+ brandImageUrl: null | string
7
+ linkText: string
8
+ productReference: string
9
+ productReferenceCode: string
10
+ categoryId: string
11
+ productTitle: string
12
+ metaTagDescription: string
13
+ releaseDate: Date
14
+ clusterHighlights: unknown
15
+ productClusters: unknown
16
+ searchableClusters: unknown
17
+ categories: Category[]
18
+ categoriesIds: CategoriesId[]
19
+ link: string
20
+ description: string
21
+ items: Item[]
22
22
  }
23
23
 
24
24
  enum Category {
25
- Office = "/Office/",
26
- OfficeChairs = "/Office/Chairs/",
25
+ Office = '/Office/',
26
+ OfficeChairs = '/Office/Chairs/',
27
27
  }
28
28
 
29
29
  enum CategoriesId {
30
- The9282 = "/9282/",
31
- The92829296 = "/9282/9296/",
30
+ The9282 = '/9282/',
31
+ The92829296 = '/9282/9296/',
32
32
  }
33
33
 
34
-
35
-
36
34
  interface Item {
37
- itemId: string;
38
- name: string;
39
- nameComplete: string;
40
- complementName: string;
41
- ean: string;
42
- referenceId: ReferenceId[];
43
- measurementUnit: MeasurementUnit;
44
- unitMultiplier: number;
45
- modalType: null;
46
- isKit: boolean;
47
- images: Image[];
48
- sellers: Seller[];
49
- videos: unknown[];
50
- estimatedDateArrival: null;
35
+ itemId: string
36
+ name: string
37
+ nameComplete: string
38
+ complementName: string
39
+ ean: string
40
+ referenceId: ReferenceId[]
41
+ measurementUnit: MeasurementUnit
42
+ unitMultiplier: number
43
+ modalType: null
44
+ isKit: boolean
45
+ images: Image[]
46
+ sellers: Seller[]
47
+ videos: unknown[]
48
+ estimatedDateArrival: null
51
49
  }
52
50
 
53
51
  interface Image {
54
- imageId: string;
55
- imageLabel: string;
56
- imageTag: string;
57
- imageUrl: string;
58
- imageText: string;
59
- imageLastModified: Date;
52
+ imageId: string
53
+ imageLabel: string
54
+ imageTag: string
55
+ imageUrl: string
56
+ imageText: string
57
+ imageLastModified: Date
60
58
  }
61
59
 
62
60
  enum MeasurementUnit {
63
- Un = "un",
61
+ Un = 'un',
64
62
  }
65
63
 
66
64
  interface ReferenceId {
67
- key: Key;
68
- value: string;
65
+ key: Key
66
+ value: string
69
67
  }
70
68
 
71
69
  enum Key {
72
- RefId = "RefId",
70
+ RefId = 'RefId',
73
71
  }
74
72
 
75
73
  interface Seller {
76
- sellerId: string;
77
- sellerName: SellerName;
78
- addToCartLink: string;
79
- sellerDefault: boolean;
80
- commertialOffer: CommertialOffer;
74
+ sellerId: string
75
+ sellerName: SellerName
76
+ addToCartLink: string
77
+ sellerDefault: boolean
78
+ commertialOffer: CommertialOffer
81
79
  }
82
80
 
83
81
  interface CommertialOffer {
84
- deliverySlaSamplesPerRegion: DeliverySlaSamplesPerRegion;
85
- installments: Installment[];
86
- discountHighLight: unknown[];
87
- giftSkuIds: unknown[];
88
- teasers: unknown[];
89
- buyTogether: unknown[];
90
- itemMetadataAttachment: unknown[];
91
- price: number;
92
- listPrice: number;
93
- priceWithoutDiscount: number;
94
- rewardValue: number;
95
- priceValidUntil: Date;
96
- availableQuantity: number;
97
- isAvailable: boolean;
98
- tax: number;
99
- deliverySlaSamples: DeliverySlaSample[];
100
- getInfoErrorMessage: null;
101
- cacheVersionUsedToCallCheckout: string;
102
- paymentOptions: PaymentOptions;
82
+ deliverySlaSamplesPerRegion: DeliverySlaSamplesPerRegion
83
+ installments: Installment[]
84
+ discountHighLight: unknown[]
85
+ giftSkuIds: unknown[]
86
+ teasers: unknown[]
87
+ buyTogether: unknown[]
88
+ itemMetadataAttachment: unknown[]
89
+ price: number
90
+ listPrice: number
91
+ priceWithoutDiscount: number
92
+ rewardValue: number
93
+ priceValidUntil: Date
94
+ availableQuantity: number
95
+ isAvailable: boolean
96
+ tax: number
97
+ deliverySlaSamples: DeliverySlaSample[]
98
+ getInfoErrorMessage: null
99
+ cacheVersionUsedToCallCheckout: string
100
+ paymentOptions: PaymentOptions
103
101
  }
104
102
 
105
103
  interface DeliverySlaSample {
106
- deliverySlaPerTypes: unknown[];
107
- region: null;
104
+ deliverySlaPerTypes: unknown[]
105
+ region: null
108
106
  }
109
107
 
110
108
  interface DeliverySlaSamplesPerRegion {
111
- the0: DeliverySlaSample;
109
+ the0: DeliverySlaSample
112
110
  }
113
111
 
114
112
  interface Installment {
115
- value: number;
116
- interestRate: number;
117
- totalValuePlusInterestRate: number;
118
- numberOfInstallments: number;
119
- paymentSystemName: PaymentSystemNameEnum;
120
- paymentSystemGroupName: GroupName;
121
- name: Name;
113
+ value: number
114
+ interestRate: number
115
+ totalValuePlusInterestRate: number
116
+ numberOfInstallments: number
117
+ paymentSystemName: PaymentSystemNameEnum
118
+ paymentSystemGroupName: GroupName
119
+ name: Name
122
120
  }
123
121
 
124
122
  enum Name {
125
- BoletoBancárioÀVista = "Boleto Bancário à vista",
126
- FreeÀVista = "Free à vista",
123
+ BoletoBancárioÀVista = 'Boleto Bancário à vista',
124
+ FreeÀVista = 'Free à vista',
127
125
  }
128
126
 
129
127
  enum GroupName {
130
- BankInvoicePaymentGroup = "bankInvoicePaymentGroup",
131
- Custom201PaymentGroupPaymentGroup = "custom201PaymentGroupPaymentGroup",
128
+ BankInvoicePaymentGroup = 'bankInvoicePaymentGroup',
129
+ Custom201PaymentGroupPaymentGroup = 'custom201PaymentGroupPaymentGroup',
132
130
  }
133
131
 
134
132
  enum PaymentSystemNameEnum {
135
- BoletoBancário = "Boleto Bancário",
136
- Free = "Free",
133
+ BoletoBancário = 'Boleto Bancário',
134
+ Free = 'Free',
137
135
  }
138
136
 
139
137
  interface PaymentOptions {
140
- installmentOptions: InstallmentOption[];
141
- paymentSystems: PaymentSystem[];
142
- payments: unknown[];
143
- giftCards: unknown[];
144
- giftCardMessages: unknown[];
145
- availableAccounts: unknown[];
146
- availableTokens: unknown[];
138
+ installmentOptions: InstallmentOption[]
139
+ paymentSystems: PaymentSystem[]
140
+ payments: unknown[]
141
+ giftCards: unknown[]
142
+ giftCardMessages: unknown[]
143
+ availableAccounts: unknown[]
144
+ availableTokens: unknown[]
147
145
  }
148
146
 
149
147
  interface InstallmentOption {
150
- paymentSystem: string;
151
- bin: null;
152
- paymentName: PaymentSystemNameEnum;
153
- paymentGroupName: GroupName;
154
- value: number;
155
- installments: InstallmentElement[];
148
+ paymentSystem: string
149
+ bin: null
150
+ paymentName: PaymentSystemNameEnum
151
+ paymentGroupName: GroupName
152
+ value: number
153
+ installments: InstallmentElement[]
156
154
  }
157
155
 
158
156
  interface InstallmentElement {
159
- count: number;
160
- hasInterestRate: boolean;
161
- interestRate: number;
162
- value: number;
163
- total: number;
164
- sellerMerchantInstallments?: InstallmentElement[];
165
- id?: Id;
157
+ count: number
158
+ hasInterestRate: boolean
159
+ interestRate: number
160
+ value: number
161
+ total: number
162
+ sellerMerchantInstallments?: InstallmentElement[]
163
+ id?: Id
166
164
  }
167
165
 
168
166
  enum Id {
169
- Storeframework = "STOREFRAMEWORK",
167
+ Storeframework = 'STOREFRAMEWORK',
170
168
  }
171
169
 
172
170
  interface PaymentSystem {
173
- id: number;
174
- name: PaymentSystemNameEnum;
175
- groupName: GroupName;
176
- validator: null;
177
- stringId: string;
178
- template: Template;
179
- requiresDocument: boolean;
180
- isCustom: boolean;
181
- description: Description | null;
182
- requiresAuthentication: boolean;
183
- dueDate: Date;
184
- availablePayments: null;
171
+ id: number
172
+ name: PaymentSystemNameEnum
173
+ groupName: GroupName
174
+ validator: null
175
+ stringId: string
176
+ template: Template
177
+ requiresDocument: boolean
178
+ isCustom: boolean
179
+ description: Description | null
180
+ requiresAuthentication: boolean
181
+ dueDate: Date
182
+ availablePayments: null
185
183
  }
186
184
 
187
185
  enum Description {
188
- FreePayToTestCheckoutPayments = "Free pay to test checkout payments",
186
+ FreePayToTestCheckoutPayments = 'Free pay to test checkout payments',
189
187
  }
190
188
 
191
189
  enum Template {
192
- BankInvoicePaymentGroupTemplate = "bankInvoicePaymentGroup-template",
193
- Custom201PaymentGroupPaymentGroupTemplate =
194
- "custom201PaymentGroupPaymentGroup-template",
190
+ BankInvoicePaymentGroupTemplate = 'bankInvoicePaymentGroup-template',
191
+ Custom201PaymentGroupPaymentGroupTemplate = 'custom201PaymentGroupPaymentGroup-template',
195
192
  }
196
193
 
197
194
  enum SellerName {
198
- Vtex = "VTEX",
195
+ Vtex = 'VTEX',
199
196
  }
@@ -1,25 +1,25 @@
1
1
  export interface SalesChannel {
2
- Id: number;
3
- Name: string;
4
- IsActive: boolean;
5
- ProductClusterId: null;
6
- CountryCode: string;
7
- CultureInfo: string;
8
- TimeZone: string;
9
- CurrencyCode: string;
10
- CurrencySymbol: string;
11
- CurrencyLocale: number;
12
- CurrencyFormatInfo: CurrencyFormatInfo;
13
- Origin: null;
14
- Position: number;
15
- ConditionRule: null;
16
- CurrencyDecimalDigits: null;
2
+ Id: number
3
+ Name: string
4
+ IsActive: boolean
5
+ ProductClusterId: null
6
+ CountryCode: string
7
+ CultureInfo: string
8
+ TimeZone: string
9
+ CurrencyCode: string
10
+ CurrencySymbol: string
11
+ CurrencyLocale: number
12
+ CurrencyFormatInfo: CurrencyFormatInfo
13
+ Origin: null
14
+ Position: number
15
+ ConditionRule: null
16
+ CurrencyDecimalDigits: null
17
17
  }
18
18
 
19
19
  export interface CurrencyFormatInfo {
20
- CurrencyDecimalDigits: number;
21
- CurrencyDecimalSeparator: string;
22
- CurrencyGroupSeparator: string;
23
- CurrencyGroupSize: number;
24
- StartsWithCurrencySymbol: boolean;
20
+ CurrencyDecimalDigits: number
21
+ CurrencyDecimalSeparator: string
22
+ CurrencyGroupSeparator: string
23
+ CurrencyGroupSize: number
24
+ StartsWithCurrencySymbol: boolean
25
25
  }
@@ -1,7 +1,11 @@
1
1
  import type { Context, Options } from '../../'
2
2
  import type { IStoreSelectedFacet } from '../../../../__generated__/schema'
3
3
  import { getStoreCookie } from '../../utils/cookies'
4
- import type { FuzzyFacet, OperatorFacet, SelectedFacet } from '../../utils/facets'
4
+ import type {
5
+ FuzzyFacet,
6
+ OperatorFacet,
7
+ SelectedFacet,
8
+ } from '../../utils/facets'
5
9
  import { fetchAPI } from '../fetch'
6
10
  import type {
7
11
  Facet,
@@ -72,7 +76,13 @@ const isOperatorFacet = (facet: SelectedFacet): facet is OperatorFacet => {
72
76
  }
73
77
 
74
78
  export const IntelligentSearch = (
75
- { account, environment, hideUnavailableItems, simulationBehavior, showSponsored }: Options,
79
+ {
80
+ account,
81
+ environment,
82
+ hideUnavailableItems,
83
+ simulationBehavior,
84
+ showSponsored,
85
+ }: Options,
76
86
  ctx: Context
77
87
  ) => {
78
88
  const base = `https://${account}.${environment}.com.br/api/io`
@@ -154,7 +164,7 @@ export const IntelligentSearch = (
154
164
  selectedFacets = [],
155
165
  type,
156
166
  showInvisibleItems,
157
- sponsoredCount
167
+ sponsoredCount,
158
168
  }: SearchArgs): Promise<T> => {
159
169
  const params = new URLSearchParams({
160
170
  page: (page + 1).toString(),
@@ -230,4 +230,4 @@ export interface Attribute {
230
230
  name: string
231
231
  value: string
232
232
  visible: boolean
233
- }
233
+ }
@@ -9,7 +9,7 @@ import { StoreCollection } from './resolvers/collection'
9
9
  import {
10
10
  StoreFacet,
11
11
  StoreFacetBoolean,
12
- StoreFacetRange
12
+ StoreFacetRange,
13
13
  } from './resolvers/facet'
14
14
  import { StoreFacetValueBoolean } from './resolvers/faceValue'
15
15
  import { Mutation } from './resolvers/mutation'
@@ -1,4 +1,4 @@
1
- import { getSalesChannelLoader } from './salesChannel';
1
+ import { getSalesChannelLoader } from './salesChannel'
2
2
  import { getSimulationLoader } from './simulation'
3
3
  import { getSkuLoader } from './sku'
4
4
  import { getCollectionLoader } from './collection'
@@ -16,6 +16,6 @@ export const getLoaders = (options: Options, { clients }: Context) => {
16
16
  skuLoader,
17
17
  simulationLoader,
18
18
  collectionLoader,
19
- salesChannelLoader
19
+ salesChannelLoader,
20
20
  }
21
21
  }
@@ -1,15 +1,13 @@
1
- import DataLoader from "dataloader";
1
+ import DataLoader from 'dataloader'
2
2
 
3
- import { Options } from "..";
4
- import { Clients } from "../clients";
3
+ import type { Options } from '..'
4
+ import type { Clients } from '../clients'
5
5
 
6
- import type { SalesChannel } from "./../clients/commerce/types/SalesChannel";
6
+ import type { SalesChannel } from './../clients/commerce/types/SalesChannel'
7
7
 
8
8
  export const getSalesChannelLoader = (_: Options, clients: Clients) => {
9
9
  const loader = async (channels: readonly string[]) =>
10
- Promise.all(
11
- channels.map((sc) => clients.commerce.catalog.salesChannel(sc)),
12
- );
10
+ Promise.all(channels.map((sc) => clients.commerce.catalog.salesChannel(sc)))
13
11
 
14
- return new DataLoader<string, SalesChannel>(loader);
15
- };
12
+ return new DataLoader<string, SalesChannel>(loader)
13
+ }
@@ -29,15 +29,18 @@ export const getSimulationLoader = (_: Options, clients: Clients) => {
29
29
 
30
30
  // Sort and filter simulation since Checkout API may return
31
31
  // items that we didn't ask for
32
- const simulated = simulation.items.reduce((acc, item) => {
33
- const index = item.requestIndex
32
+ const simulated = simulation.items.reduce(
33
+ (acc, item) => {
34
+ const index = item.requestIndex
34
35
 
35
- if (typeof index === 'number' && index < acc.length) {
36
- acc[index] = item
37
- }
36
+ if (typeof index === 'number' && index < acc.length) {
37
+ acc[index] = item
38
+ }
38
39
 
39
- return acc
40
- }, Array(items.length).fill(null) as Simulation['items'])
40
+ return acc
41
+ },
42
+ Array(items.length).fill(null) as Simulation['items']
43
+ )
41
44
 
42
45
  const itemsIndices = allItems.reduce(
43
46
  (acc, curr) => [...acc, curr.length + acc[acc.length - 1]],
@@ -8,23 +8,28 @@ import type { Clients } from '../clients'
8
8
 
9
9
  export const getSkuLoader = (_: Options, clients: Clients) => {
10
10
  const loader = async (keys: readonly string[]) => {
11
- const skuIds = keys.map((key) => key.split('-')[0]);
12
- const showInvisibleItems = keys.some((key) => key.split('-')[1] === 'invisibleItems')
11
+ const skuIds = keys.map((key) => key.split('-')[0])
12
+ const showInvisibleItems = keys.some(
13
+ (key) => key.split('-')[1] === 'invisibleItems'
14
+ )
13
15
 
14
16
  const { products } = await clients.search.products({
15
17
  query: `sku:${skuIds.join(';')}`,
16
18
  page: 0,
17
19
  count: skuIds.length,
18
- showInvisibleItems
20
+ showInvisibleItems,
19
21
  })
20
22
 
21
- const skuBySkuId = products.reduce((acc, product) => {
22
- for (const sku of product.items) {
23
- acc[sku.itemId] = enhanceSku(sku, product)
24
- }
23
+ const skuBySkuId = products.reduce(
24
+ (acc, product) => {
25
+ for (const sku of product.items) {
26
+ acc[sku.itemId] = enhanceSku(sku, product)
27
+ }
25
28
 
26
- return acc
27
- }, {} as Record<string, EnhancedSku>)
29
+ return acc
30
+ },
31
+ {} as Record<string, EnhancedSku>
32
+ )
28
33
 
29
34
  const skus = skuIds.map((skuId) => skuBySkuId[skuId])
30
35
  const missingSkus = skuIds.filter((skuId) => !skuBySkuId[skuId])
@@ -45,12 +45,12 @@ export const StoreAggregateOffer: Record<string, Resolver<Root>> & {
45
45
  priceCurrency: async (_, __, ctx) => {
46
46
  const {
47
47
  loaders: { salesChannelLoader },
48
- storage: { channel }
48
+ storage: { channel },
49
49
  } = ctx
50
50
 
51
- const sc = await salesChannelLoader.load(channel.salesChannel);
51
+ const sc = await salesChannelLoader.load(channel.salesChannel)
52
52
 
53
- return sc.CurrencyCode ?? '';
53
+ return sc.CurrencyCode ?? ''
54
54
  },
55
55
  offers: (offers) => offers,
56
56
  }
@@ -10,18 +10,17 @@ import type { Resolver } from '..'
10
10
  export type Root = Facet
11
11
 
12
12
  export const StoreFacet: Record<string, Resolver<Root>> = {
13
- __resolveType: ({ type, values }) =>
14
- {
15
- if (type !== 'TEXT') {
16
- return 'StoreFacetRange'
17
- }
13
+ __resolveType: ({ type, values }) => {
14
+ if (type !== 'TEXT') {
15
+ return 'StoreFacetRange'
16
+ }
18
17
 
19
- if (values.every((value) => (value as FacetValueRange).range)) {
20
- return 'StoreFacetRange'
21
- }
18
+ if (values.every((value) => (value as FacetValueRange).range)) {
19
+ return 'StoreFacetRange'
20
+ }
22
21
 
23
- return 'StoreFacetBoolean'
24
- },
22
+ return 'StoreFacetBoolean'
23
+ },
25
24
  }
26
25
 
27
26
  export const StoreFacetBoolean: Record<
@@ -26,14 +26,14 @@ const isOrderFormItem = (item: Root): item is OrderFormProduct =>
26
26
 
27
27
  export const StoreOffer: Record<string, Resolver<Root>> = {
28
28
  priceCurrency: async (_, __, ctx) => {
29
- const {
30
- loaders: { salesChannelLoader },
31
- storage: { channel }
29
+ const {
30
+ loaders: { salesChannelLoader },
31
+ storage: { channel },
32
32
  } = ctx
33
33
 
34
- const sc = await salesChannelLoader.load(channel.salesChannel);
35
-
36
- return sc.CurrencyCode ?? '';
34
+ const sc = await salesChannelLoader.load(channel.salesChannel)
35
+
36
+ return sc.CurrencyCode ?? ''
37
37
  },
38
38
  priceValidUntil: (root) => {
39
39
  if (isSearchItem(root)) {
@@ -90,7 +90,11 @@ export const StoreOffer: Record<string, Resolver<Root>> = {
90
90
  }
91
91
 
92
92
  if (isOrderFormItem(root)) {
93
- return withTax(root.sellingPrice / 1e2, root.tax / 1e2, root.unitMultiplier)
93
+ return withTax(
94
+ root.sellingPrice / 1e2,
95
+ root.tax / 1e2,
96
+ root.unitMultiplier
97
+ )
94
98
  }
95
99
 
96
100
  return null
@@ -119,7 +123,11 @@ export const StoreOffer: Record<string, Resolver<Root>> = {
119
123
  },
120
124
  listPriceWithTaxes: (root) => {
121
125
  if (isSearchItem(root)) {
122
- return withTax(root.ListPrice ?? 0, root?.Tax, root.product.unitMultiplier)
126
+ return withTax(
127
+ root.ListPrice ?? 0,
128
+ root?.Tax,
129
+ root.product.unitMultiplier
130
+ )
123
131
  }
124
132
 
125
133
  if (isOrderFormItem(root)) {
@@ -1,9 +1,9 @@
1
1
  import type { Resolver } from '..'
2
- import { PromiseType } from '../../../typings'
3
- import { StoreOffer } from './offer'
2
+ import type { PromiseType } from '../../../typings'
3
+ import type { StoreOffer } from './offer'
4
4
 
5
5
  export type Root = PromiseType<ReturnType<typeof StoreOffer.seller>>
6
6
 
7
- export const StoreOrganization: Record<string, Resolver<Root>> = {
7
+ export const StoreOrganization: Record<string, Resolver<Root>> = {
8
8
  identifier: () => '',
9
9
  }
@@ -12,7 +12,7 @@ import {
12
12
  VALUE_REFERENCES,
13
13
  } from '../utils/propertyValue'
14
14
  import type { Attachment } from '../clients/commerce/types/OrderForm'
15
- import { StoreImage, StoreProductImageArgs } from '../../..'
15
+ import type { StoreImage, StoreProductImageArgs } from '../../..'
16
16
 
17
17
  type QueryProduct = PromiseType<ReturnType<typeof Query.product>>
18
18
 
@@ -54,7 +54,7 @@ export const StoreProduct: Record<string, Resolver<Root>> & {
54
54
  canonical: canonicalFromProduct(isVariantOf),
55
55
  }),
56
56
  brand: ({ isVariantOf: { brand } }) => ({ name: brand }),
57
- unitMultiplier: ({unitMultiplier}) => unitMultiplier,
57
+ unitMultiplier: ({ unitMultiplier }) => unitMultiplier,
58
58
  breadcrumbList: ({
59
59
  isVariantOf: { categories, productName, linkText },
60
60
  itemId,
@@ -90,13 +90,13 @@ export const StoreProduct: Record<string, Resolver<Root>> & {
90
90
  })
91
91
  )
92
92
 
93
- if(typeof args !== 'object') {
94
- return resolvedImages;
93
+ if (typeof args !== 'object') {
94
+ return resolvedImages
95
95
  }
96
96
 
97
97
  let { context, limit } = args as StoreProductImageArgs
98
98
 
99
- const shouldFilter = context !== "generic"
99
+ const shouldFilter = context !== 'generic'
100
100
 
101
101
  // Normalize count to undefined as we want any negative value to always return the full list of images
102
102
  limit = limit || -1