hey-pharmacist-ecommerce 1.0.0

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 (287) hide show
  1. package/README.md +269 -0
  2. package/dist/index.d.mts +564 -0
  3. package/dist/index.d.ts +564 -0
  4. package/dist/index.js +7541 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/index.mjs +7485 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/package.json +70 -0
  9. package/src/components/CartItem.tsx +103 -0
  10. package/src/components/EmptyState.tsx +27 -0
  11. package/src/components/Footer.tsx +147 -0
  12. package/src/components/Header.tsx +151 -0
  13. package/src/components/OrderCard.tsx +98 -0
  14. package/src/components/ProductCard.tsx +122 -0
  15. package/src/components/ui/Badge.tsx +31 -0
  16. package/src/components/ui/Button.tsx +61 -0
  17. package/src/components/ui/Input.tsx +45 -0
  18. package/src/components/ui/Modal.tsx +79 -0
  19. package/src/components/ui/Skeleton.tsx +46 -0
  20. package/src/hooks/useOrders.ts +98 -0
  21. package/src/hooks/useProducts.ts +125 -0
  22. package/src/index.ts +71 -0
  23. package/src/lib/Apis/api.ts +46 -0
  24. package/src/lib/Apis/apis/addresses-api.ts +1461 -0
  25. package/src/lib/Apis/apis/auth-api.ts +945 -0
  26. package/src/lib/Apis/apis/blogs-api.ts +582 -0
  27. package/src/lib/Apis/apis/cart-api.ts +456 -0
  28. package/src/lib/Apis/apis/categories-api.ts +725 -0
  29. package/src/lib/Apis/apis/chats-api.ts +1101 -0
  30. package/src/lib/Apis/apis/contact-us-api.ts +394 -0
  31. package/src/lib/Apis/apis/discounts-api.ts +763 -0
  32. package/src/lib/Apis/apis/drafts-api.ts +448 -0
  33. package/src/lib/Apis/apis/events-api.ts +1311 -0
  34. package/src/lib/Apis/apis/file-proccesor-api.ts +293 -0
  35. package/src/lib/Apis/apis/health-api.ts +119 -0
  36. package/src/lib/Apis/apis/images-api.ts +271 -0
  37. package/src/lib/Apis/apis/inventory-api.ts +375 -0
  38. package/src/lib/Apis/apis/marketing-api.ts +3099 -0
  39. package/src/lib/Apis/apis/notifications-api.ts +843 -0
  40. package/src/lib/Apis/apis/open-aiapi.ts +513 -0
  41. package/src/lib/Apis/apis/orders-api.ts +1343 -0
  42. package/src/lib/Apis/apis/payment-methods-api.ts +411 -0
  43. package/src/lib/Apis/apis/payments-api.ts +469 -0
  44. package/src/lib/Apis/apis/product-attributes-api.ts +538 -0
  45. package/src/lib/Apis/apis/product-favorite-list-api.ts +321 -0
  46. package/src/lib/Apis/apis/product-variants-api.ts +648 -0
  47. package/src/lib/Apis/apis/products-api.ts +1442 -0
  48. package/src/lib/Apis/apis/review-api.ts +1383 -0
  49. package/src/lib/Apis/apis/roles-api.ts +614 -0
  50. package/src/lib/Apis/apis/shipping-api.ts +703 -0
  51. package/src/lib/Apis/apis/statistics-api.ts +234 -0
  52. package/src/lib/Apis/apis/stores-api.ts +1519 -0
  53. package/src/lib/Apis/apis/sub-categories-api.ts +1208 -0
  54. package/src/lib/Apis/apis/user-groups-api.ts +1198 -0
  55. package/src/lib/Apis/apis/users-api.ts +1403 -0
  56. package/src/lib/Apis/apis/web-hooks-api.ts +198 -0
  57. package/src/lib/Apis/base.ts +70 -0
  58. package/src/lib/Apis/configuration.ts +75 -0
  59. package/src/lib/Apis/index.ts +17 -0
  60. package/src/lib/Apis/models/add-contact-to-list-dto.ts +33 -0
  61. package/src/lib/Apis/models/add-message-dto.ts +56 -0
  62. package/src/lib/Apis/models/address-created-request.ts +134 -0
  63. package/src/lib/Apis/models/address.ts +164 -0
  64. package/src/lib/Apis/models/allow-user-credit-dto.ts +27 -0
  65. package/src/lib/Apis/models/appointment.ts +75 -0
  66. package/src/lib/Apis/models/available-dates-dto.ts +33 -0
  67. package/src/lib/Apis/models/available-suggested-dates-dto.ts +33 -0
  68. package/src/lib/Apis/models/blog.ts +75 -0
  69. package/src/lib/Apis/models/browser-stats-response-dto.ts +40 -0
  70. package/src/lib/Apis/models/bulk-move-subcategories-dto.ts +33 -0
  71. package/src/lib/Apis/models/bulk-unassign-subcategories-dto.ts +27 -0
  72. package/src/lib/Apis/models/campaign-content-response-dto.ts +40 -0
  73. package/src/lib/Apis/models/campaign-draft-dto.ts +175 -0
  74. package/src/lib/Apis/models/campaign-draft-response-dto.ts +40 -0
  75. package/src/lib/Apis/models/campaign-draft-schedule-dto.ts +49 -0
  76. package/src/lib/Apis/models/campaign-draft-schedule-response-dto.ts +40 -0
  77. package/src/lib/Apis/models/campaign-draft-sending-dto.ts +43 -0
  78. package/src/lib/Apis/models/campaign-draft-sending-response-dto.ts +40 -0
  79. package/src/lib/Apis/models/cart-body-dto.ts +40 -0
  80. package/src/lib/Apis/models/cart-body-populated.ts +47 -0
  81. package/src/lib/Apis/models/cart-item-populated.ts +41 -0
  82. package/src/lib/Apis/models/cart-item.ts +33 -0
  83. package/src/lib/Apis/models/cart-response-dto.ts +70 -0
  84. package/src/lib/Apis/models/categories-paginated-response-dto.ts +52 -0
  85. package/src/lib/Apis/models/category-filters.ts +40 -0
  86. package/src/lib/Apis/models/category-populated.ts +106 -0
  87. package/src/lib/Apis/models/category-sub-category-populated.ts +51 -0
  88. package/src/lib/Apis/models/category.ts +99 -0
  89. package/src/lib/Apis/models/categorys-headlines-response-dto.ts +40 -0
  90. package/src/lib/Apis/models/change-user-email-dto.ts +27 -0
  91. package/src/lib/Apis/models/chat.ts +33 -0
  92. package/src/lib/Apis/models/check-notifications-response-dto.ts +33 -0
  93. package/src/lib/Apis/models/contact-aggregated-stats-response-dto.ts +40 -0
  94. package/src/lib/Apis/models/contact-full-dto.ts +93 -0
  95. package/src/lib/Apis/models/contact-full-response-dto.ts +40 -0
  96. package/src/lib/Apis/models/contact-list-stats-response-dto.ts +40 -0
  97. package/src/lib/Apis/models/contact-lists-response-dto.ts +40 -0
  98. package/src/lib/Apis/models/contact-us.ts +81 -0
  99. package/src/lib/Apis/models/country-stats-response-dto.ts +40 -0
  100. package/src/lib/Apis/models/create-address-dto.ts +134 -0
  101. package/src/lib/Apis/models/create-blog-dto.ts +45 -0
  102. package/src/lib/Apis/models/create-category-dto.ts +45 -0
  103. package/src/lib/Apis/models/create-chat-dto.ts +39 -0
  104. package/src/lib/Apis/models/create-contact-dto.ts +39 -0
  105. package/src/lib/Apis/models/create-contact-list-dto.ts +27 -0
  106. package/src/lib/Apis/models/create-discount-dto.ts +208 -0
  107. package/src/lib/Apis/models/create-draft-dto.ts +67 -0
  108. package/src/lib/Apis/models/create-email-template-dto.ts +51 -0
  109. package/src/lib/Apis/models/create-event-dto.ts +52 -0
  110. package/src/lib/Apis/models/create-marketing-campaign-dto.ts +81 -0
  111. package/src/lib/Apis/models/create-message-dto.ts +57 -0
  112. package/src/lib/Apis/models/create-notification-dto.ts +75 -0
  113. package/src/lib/Apis/models/create-product-attribute-dto.ts +33 -0
  114. package/src/lib/Apis/models/create-product-dto.ts +94 -0
  115. package/src/lib/Apis/models/create-review-dto.ts +63 -0
  116. package/src/lib/Apis/models/create-role-dto.ts +57 -0
  117. package/src/lib/Apis/models/create-single-variant-product-dto.ts +155 -0
  118. package/src/lib/Apis/models/create-store-address-dto.ts +134 -0
  119. package/src/lib/Apis/models/create-store-dto.ts +105 -0
  120. package/src/lib/Apis/models/create-sub-category-dto.ts +45 -0
  121. package/src/lib/Apis/models/create-user-dto.ts +89 -0
  122. package/src/lib/Apis/models/create-user-group-dto.ts +39 -0
  123. package/src/lib/Apis/models/create-variant-dto.ts +119 -0
  124. package/src/lib/Apis/models/create-zone-dto.ts +82 -0
  125. package/src/lib/Apis/models/custom-product-dto.ts +63 -0
  126. package/src/lib/Apis/models/default-payment-method-request-dto.ts +27 -0
  127. package/src/lib/Apis/models/delete-file-dto.ts +27 -0
  128. package/src/lib/Apis/models/delete-many-files-dto.ts +27 -0
  129. package/src/lib/Apis/models/discount-paginated-response.ts +52 -0
  130. package/src/lib/Apis/models/discount.ts +245 -0
  131. package/src/lib/Apis/models/discounts-insights-dto.ts +57 -0
  132. package/src/lib/Apis/models/draft.ts +79 -0
  133. package/src/lib/Apis/models/email-invoice-dto.ts +45 -0
  134. package/src/lib/Apis/models/email-template-response-dto.ts +117 -0
  135. package/src/lib/Apis/models/event.ts +76 -0
  136. package/src/lib/Apis/models/extended-product-dto.ts +204 -0
  137. package/src/lib/Apis/models/fileproccesor-upload-body.ts +27 -0
  138. package/src/lib/Apis/models/forget-password.ts +27 -0
  139. package/src/lib/Apis/models/frequently-bought-product-dto.ts +71 -0
  140. package/src/lib/Apis/models/general-stats-response-dto.ts +40 -0
  141. package/src/lib/Apis/models/generate-day-slots-dto.ts +51 -0
  142. package/src/lib/Apis/models/generate-month-slots-dto.ts +57 -0
  143. package/src/lib/Apis/models/generate-week-slots-dto.ts +57 -0
  144. package/src/lib/Apis/models/google-analytics-request-dto.ts +55 -0
  145. package/src/lib/Apis/models/google-analytics-response-dto.ts +39 -0
  146. package/src/lib/Apis/models/group-with-no-users-dto.ts +75 -0
  147. package/src/lib/Apis/models/group-with-users-dto.ts +76 -0
  148. package/src/lib/Apis/models/images-upload-body.ts +27 -0
  149. package/src/lib/Apis/models/index.ts +197 -0
  150. package/src/lib/Apis/models/inventory-paginated-response.ts +75 -0
  151. package/src/lib/Apis/models/link-stats-response-dto.ts +40 -0
  152. package/src/lib/Apis/models/login-dto.ts +33 -0
  153. package/src/lib/Apis/models/manual-discount.ts +49 -0
  154. package/src/lib/Apis/models/manual-order-dto.ts +133 -0
  155. package/src/lib/Apis/models/manual-shipping-dto.ts +45 -0
  156. package/src/lib/Apis/models/marketing-campaign-content-dto.ts +27 -0
  157. package/src/lib/Apis/models/marketing-list-contact-dto.ts +51 -0
  158. package/src/lib/Apis/models/move-subcategory-dto.ts +27 -0
  159. package/src/lib/Apis/models/my-favorite-list-dto.ts +52 -0
  160. package/src/lib/Apis/models/notification.ts +93 -0
  161. package/src/lib/Apis/models/object-id.ts +21 -0
  162. package/src/lib/Apis/models/open-api.ts +33 -0
  163. package/src/lib/Apis/models/order-paginated-response.ts +52 -0
  164. package/src/lib/Apis/models/order.ts +214 -0
  165. package/src/lib/Apis/models/orders-insights-dto.ts +69 -0
  166. package/src/lib/Apis/models/paginated-products-dto.ts +52 -0
  167. package/src/lib/Apis/models/payment-method-data.ts +34 -0
  168. package/src/lib/Apis/models/payment-method.ts +51 -0
  169. package/src/lib/Apis/models/payment-time-line-dto.ts +56 -0
  170. package/src/lib/Apis/models/payment.ts +182 -0
  171. package/src/lib/Apis/models/payments-insights-dto.ts +69 -0
  172. package/src/lib/Apis/models/payments-paginated-response.ts +52 -0
  173. package/src/lib/Apis/models/pick-type-class.ts +51 -0
  174. package/src/lib/Apis/models/populated-chat-dto.ts +95 -0
  175. package/src/lib/Apis/models/populated-discount.ts +246 -0
  176. package/src/lib/Apis/models/populated-order.ts +209 -0
  177. package/src/lib/Apis/models/prefered-pick-or-delivery-time-dto.ts +33 -0
  178. package/src/lib/Apis/models/price-range.ts +33 -0
  179. package/src/lib/Apis/models/product-attribute.ts +57 -0
  180. package/src/lib/Apis/models/product-variant.ts +167 -0
  181. package/src/lib/Apis/models/product.ts +136 -0
  182. package/src/lib/Apis/models/products-insights-dto.ts +45 -0
  183. package/src/lib/Apis/models/rate-dto.ts +123 -0
  184. package/src/lib/Apis/models/refill-request-dto.ts +75 -0
  185. package/src/lib/Apis/models/refill-request.ts +105 -0
  186. package/src/lib/Apis/models/register-or-login-with-gmail.ts +27 -0
  187. package/src/lib/Apis/models/reserve-appointment.ts +261 -0
  188. package/src/lib/Apis/models/review.ts +93 -0
  189. package/src/lib/Apis/models/role.ts +69 -0
  190. package/src/lib/Apis/models/schedule-campaign-draft-dto.ts +27 -0
  191. package/src/lib/Apis/models/send-test-email-dto.ts +28 -0
  192. package/src/lib/Apis/models/shallow-parent-category-dto.ts +33 -0
  193. package/src/lib/Apis/models/shipment-details-dto.ts +88 -0
  194. package/src/lib/Apis/models/shipment-status-dto.ts +117 -0
  195. package/src/lib/Apis/models/shipment-with-order.ts +105 -0
  196. package/src/lib/Apis/models/shipment.ts +104 -0
  197. package/src/lib/Apis/models/shipping-info.ts +88 -0
  198. package/src/lib/Apis/models/single-browser-stats-dto.ts +45 -0
  199. package/src/lib/Apis/models/single-contact-aggregated-stats-dto.ts +129 -0
  200. package/src/lib/Apis/models/single-contact-list-stats-dto.ts +117 -0
  201. package/src/lib/Apis/models/single-country-stats-dto.ts +39 -0
  202. package/src/lib/Apis/models/single-general-stats.ts +153 -0
  203. package/src/lib/Apis/models/single-link-stats-dto.ts +39 -0
  204. package/src/lib/Apis/models/single-message-populated.ts +59 -0
  205. package/src/lib/Apis/models/single-notification-dto.ts +99 -0
  206. package/src/lib/Apis/models/single-product-media.ts +74 -0
  207. package/src/lib/Apis/models/single-recipient-dto.ts +33 -0
  208. package/src/lib/Apis/models/single-suggest-attribute.ts +33 -0
  209. package/src/lib/Apis/models/statistic-dto.ts +171 -0
  210. package/src/lib/Apis/models/store-entity.ts +117 -0
  211. package/src/lib/Apis/models/store.ts +135 -0
  212. package/src/lib/Apis/models/sub-category-headlines-only-response-dto.ts +39 -0
  213. package/src/lib/Apis/models/sub-category.ts +93 -0
  214. package/src/lib/Apis/models/suggest-attributes.ts +28 -0
  215. package/src/lib/Apis/models/suggested-slot.ts +33 -0
  216. package/src/lib/Apis/models/table-cell-dto.ts +33 -0
  217. package/src/lib/Apis/models/table-dto.ts +34 -0
  218. package/src/lib/Apis/models/tadmin-session-data.ts +47 -0
  219. package/src/lib/Apis/models/track-dto.ts +94 -0
  220. package/src/lib/Apis/models/tracking-status-location-base.ts +45 -0
  221. package/src/lib/Apis/models/tracking-status-substatus.ts +39 -0
  222. package/src/lib/Apis/models/tracking-status.ts +71 -0
  223. package/src/lib/Apis/models/transfere-patient-request.ts +123 -0
  224. package/src/lib/Apis/models/transfere-patients-request-dto.ts +99 -0
  225. package/src/lib/Apis/models/tuser-session-data.ts +34 -0
  226. package/src/lib/Apis/models/update-address-dto.ts +134 -0
  227. package/src/lib/Apis/models/update-blog-dto.ts +45 -0
  228. package/src/lib/Apis/models/update-campaign-draft-content-dto.ts +27 -0
  229. package/src/lib/Apis/models/update-category-dto.ts +45 -0
  230. package/src/lib/Apis/models/update-discount-dto.ts +208 -0
  231. package/src/lib/Apis/models/update-event-dto.ts +52 -0
  232. package/src/lib/Apis/models/update-items-order-dto.ts +27 -0
  233. package/src/lib/Apis/models/update-marketing-camp-draft-dto.ts +81 -0
  234. package/src/lib/Apis/models/update-message-dto.ts +57 -0
  235. package/src/lib/Apis/models/update-product-attribute-dto.ts +33 -0
  236. package/src/lib/Apis/models/update-product-dto.ts +96 -0
  237. package/src/lib/Apis/models/update-product-variant-dto.ts +119 -0
  238. package/src/lib/Apis/models/update-refill-request-dto.ts +75 -0
  239. package/src/lib/Apis/models/update-review-dto.ts +63 -0
  240. package/src/lib/Apis/models/update-role-dto.ts +57 -0
  241. package/src/lib/Apis/models/update-store-dto.ts +105 -0
  242. package/src/lib/Apis/models/update-sub-category-dto.ts +45 -0
  243. package/src/lib/Apis/models/update-transfere-patients-request-dto.ts +99 -0
  244. package/src/lib/Apis/models/update-user-dto.ts +239 -0
  245. package/src/lib/Apis/models/update-user-group-dto.ts +39 -0
  246. package/src/lib/Apis/models/update-zone-dto.ts +82 -0
  247. package/src/lib/Apis/models/upload-pdf-body.ts +27 -0
  248. package/src/lib/Apis/models/used-by.ts +87 -0
  249. package/src/lib/Apis/models/user-entity.ts +220 -0
  250. package/src/lib/Apis/models/user-group.ts +75 -0
  251. package/src/lib/Apis/models/user-insights-dto.ts +39 -0
  252. package/src/lib/Apis/models/user-with-no-id.ts +226 -0
  253. package/src/lib/Apis/models/user.ts +232 -0
  254. package/src/lib/Apis/models/users-paginated-response.ts +52 -0
  255. package/src/lib/Apis/models/verify-email-dto.ts +33 -0
  256. package/src/lib/Apis/models/zone-single-size.ts +51 -0
  257. package/src/lib/Apis/models/zone.ts +106 -0
  258. package/src/lib/Apis/wrapper.ts +37 -0
  259. package/src/lib/api/auth.ts +81 -0
  260. package/src/lib/api/cart.ts +42 -0
  261. package/src/lib/api/client.ts +118 -0
  262. package/src/lib/api/orders.ts +53 -0
  263. package/src/lib/api/products.ts +51 -0
  264. package/src/lib/api-adapter/auth-adapter.ts +196 -0
  265. package/src/lib/api-adapter/cart-adapter.ts +193 -0
  266. package/src/lib/api-adapter/config.ts +76 -0
  267. package/src/lib/api-adapter/index.ts +13 -0
  268. package/src/lib/api-adapter/mappers.ts +147 -0
  269. package/src/lib/api-adapter/orders-adapter.ts +195 -0
  270. package/src/lib/api-adapter/products-adapter.ts +194 -0
  271. package/src/lib/types/index.ts +152 -0
  272. package/src/lib/utils/colors.ts +51 -0
  273. package/src/lib/utils/format.ts +48 -0
  274. package/src/providers/AuthProvider.tsx +117 -0
  275. package/src/providers/CartProvider.tsx +131 -0
  276. package/src/providers/EcommerceProvider.tsx +34 -0
  277. package/src/providers/ThemeProvider.tsx +57 -0
  278. package/src/screens/CartScreen.tsx +140 -0
  279. package/src/screens/CheckoutScreen.tsx +340 -0
  280. package/src/screens/CurrentOrdersScreen.tsx +85 -0
  281. package/src/screens/LoginScreen.tsx +149 -0
  282. package/src/screens/OrdersScreen.tsx +86 -0
  283. package/src/screens/ProductDetailScreen.tsx +255 -0
  284. package/src/screens/ProfileScreen.tsx +211 -0
  285. package/src/screens/RegisterScreen.tsx +200 -0
  286. package/src/screens/ShopScreen.tsx +233 -0
  287. package/src/styles/globals.css +51 -0
@@ -0,0 +1,648 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Hey Pharamcist API
5
+ * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
6
+ *
7
+ * OpenAPI spec version: 1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by the swagger code generator program.
11
+ * https://github.com/swagger-api/swagger-codegen.git
12
+ * Do not edit the class manually.
13
+ */
14
+ import globalAxios, { AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';
15
+ import { Configuration } from '../configuration';
16
+ // Some imports not used depending on template conditions
17
+ // @ts-ignore
18
+ import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';
19
+ import { CreateVariantDto } from '../models';
20
+ import { ProductVariant } from '../models';
21
+ import { SuggestAttributes } from '../models';
22
+ import { UpdateProductVariantDto } from '../models';
23
+ /**
24
+ * ProductVariantsApi - axios parameter creator
25
+ * @export
26
+ */
27
+ export const ProductVariantsApiAxiosParamCreator = function (configuration?: Configuration) {
28
+ return {
29
+ /**
30
+ *
31
+ * @summary Create bulk variants for a product
32
+ * @param {Array<CreateVariantDto>} body
33
+ * @param {string} productId Product ID
34
+ * @param {*} [options] Override http request option.
35
+ * @throws {RequiredError}
36
+ */
37
+ createBulkVariants: async (body: Array<CreateVariantDto>, productId: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
38
+ // verify required parameter 'body' is not null or undefined
39
+ if (body === null || body === undefined) {
40
+ throw new RequiredError('body','Required parameter body was null or undefined when calling createBulkVariants.');
41
+ }
42
+ // verify required parameter 'productId' is not null or undefined
43
+ if (productId === null || productId === undefined) {
44
+ throw new RequiredError('productId','Required parameter productId was null or undefined when calling createBulkVariants.');
45
+ }
46
+ const localVarPath = `/product-variants/create-bulk-variants/{productId}`
47
+ .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
48
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
49
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
50
+ let baseOptions;
51
+ if (configuration) {
52
+ baseOptions = configuration.baseOptions;
53
+ }
54
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options};
55
+ const localVarHeaderParameter = {} as any;
56
+ const localVarQueryParameter = {} as any;
57
+
58
+ // authentication bearer required
59
+ // http bearer authentication required
60
+ if (configuration && configuration.accessToken) {
61
+ const accessToken = typeof configuration.accessToken === 'function'
62
+ ? await configuration.accessToken()
63
+ : await configuration.accessToken;
64
+ localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
65
+ }
66
+
67
+ // authentication x-store-key required
68
+ if (configuration && configuration.apiKey) {
69
+ const localVarApiKeyValue = typeof configuration.apiKey === 'function'
70
+ ? await configuration.apiKey("x-store-key")
71
+ : await configuration.apiKey;
72
+ localVarHeaderParameter["x-store-key"] = localVarApiKeyValue;
73
+ }
74
+
75
+ localVarHeaderParameter['Content-Type'] = 'application/json';
76
+
77
+ const query = new URLSearchParams(localVarUrlObj.search);
78
+ for (const key in localVarQueryParameter) {
79
+ query.set(key, localVarQueryParameter[key]);
80
+ }
81
+ for (const key in options.params) {
82
+ query.set(key, options.params[key]);
83
+ }
84
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
85
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
86
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
87
+ const needsSerialization = (typeof body !== "string") || (localVarRequestOptions.headers ||= {})['Content-Type'] === 'application/json';
88
+ localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || "");
89
+
90
+ return {
91
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
92
+ options: localVarRequestOptions,
93
+ };
94
+ },
95
+ /**
96
+ *
97
+ * @summary Create a variant for a product
98
+ * @param {CreateVariantDto} body
99
+ * @param {string} productId Product ID
100
+ * @param {*} [options] Override http request option.
101
+ * @throws {RequiredError}
102
+ */
103
+ createVariant: async (body: CreateVariantDto, productId: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
104
+ // verify required parameter 'body' is not null or undefined
105
+ if (body === null || body === undefined) {
106
+ throw new RequiredError('body','Required parameter body was null or undefined when calling createVariant.');
107
+ }
108
+ // verify required parameter 'productId' is not null or undefined
109
+ if (productId === null || productId === undefined) {
110
+ throw new RequiredError('productId','Required parameter productId was null or undefined when calling createVariant.');
111
+ }
112
+ const localVarPath = `/product-variants/create/{productId}`
113
+ .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
114
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
115
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
116
+ let baseOptions;
117
+ if (configuration) {
118
+ baseOptions = configuration.baseOptions;
119
+ }
120
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options};
121
+ const localVarHeaderParameter = {} as any;
122
+ const localVarQueryParameter = {} as any;
123
+
124
+ // authentication bearer required
125
+ // http bearer authentication required
126
+ if (configuration && configuration.accessToken) {
127
+ const accessToken = typeof configuration.accessToken === 'function'
128
+ ? await configuration.accessToken()
129
+ : await configuration.accessToken;
130
+ localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
131
+ }
132
+
133
+ // authentication x-store-key required
134
+ if (configuration && configuration.apiKey) {
135
+ const localVarApiKeyValue = typeof configuration.apiKey === 'function'
136
+ ? await configuration.apiKey("x-store-key")
137
+ : await configuration.apiKey;
138
+ localVarHeaderParameter["x-store-key"] = localVarApiKeyValue;
139
+ }
140
+
141
+ localVarHeaderParameter['Content-Type'] = 'application/json';
142
+
143
+ const query = new URLSearchParams(localVarUrlObj.search);
144
+ for (const key in localVarQueryParameter) {
145
+ query.set(key, localVarQueryParameter[key]);
146
+ }
147
+ for (const key in options.params) {
148
+ query.set(key, options.params[key]);
149
+ }
150
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
151
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
152
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
153
+ const needsSerialization = (typeof body !== "string") || (localVarRequestOptions.headers ||= {})['Content-Type'] === 'application/json';
154
+ localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || "");
155
+
156
+ return {
157
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
158
+ options: localVarRequestOptions,
159
+ };
160
+ },
161
+ /**
162
+ *
163
+ * @summary Delete a variant
164
+ * @param {string} variantId
165
+ * @param {*} [options] Override http request option.
166
+ * @throws {RequiredError}
167
+ */
168
+ deleteVariant: async (variantId: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
169
+ // verify required parameter 'variantId' is not null or undefined
170
+ if (variantId === null || variantId === undefined) {
171
+ throw new RequiredError('variantId','Required parameter variantId was null or undefined when calling deleteVariant.');
172
+ }
173
+ const localVarPath = `/product-variants/{variantId}`
174
+ .replace(`{${"variantId"}}`, encodeURIComponent(String(variantId)));
175
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
176
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
177
+ let baseOptions;
178
+ if (configuration) {
179
+ baseOptions = configuration.baseOptions;
180
+ }
181
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'DELETE', ...baseOptions, ...options};
182
+ const localVarHeaderParameter = {} as any;
183
+ const localVarQueryParameter = {} as any;
184
+
185
+ // authentication bearer required
186
+ // http bearer authentication required
187
+ if (configuration && configuration.accessToken) {
188
+ const accessToken = typeof configuration.accessToken === 'function'
189
+ ? await configuration.accessToken()
190
+ : await configuration.accessToken;
191
+ localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
192
+ }
193
+
194
+ // authentication x-store-key required
195
+ if (configuration && configuration.apiKey) {
196
+ const localVarApiKeyValue = typeof configuration.apiKey === 'function'
197
+ ? await configuration.apiKey("x-store-key")
198
+ : await configuration.apiKey;
199
+ localVarHeaderParameter["x-store-key"] = localVarApiKeyValue;
200
+ }
201
+
202
+ const query = new URLSearchParams(localVarUrlObj.search);
203
+ for (const key in localVarQueryParameter) {
204
+ query.set(key, localVarQueryParameter[key]);
205
+ }
206
+ for (const key in options.params) {
207
+ query.set(key, options.params[key]);
208
+ }
209
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
210
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
211
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
212
+
213
+ return {
214
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
215
+ options: localVarRequestOptions,
216
+ };
217
+ },
218
+ /**
219
+ *
220
+ * @summary Edit a variant
221
+ * @param {UpdateProductVariantDto} body
222
+ * @param {string} variantId
223
+ * @param {*} [options] Override http request option.
224
+ * @throws {RequiredError}
225
+ */
226
+ editVariant: async (body: UpdateProductVariantDto, variantId: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
227
+ // verify required parameter 'body' is not null or undefined
228
+ if (body === null || body === undefined) {
229
+ throw new RequiredError('body','Required parameter body was null or undefined when calling editVariant.');
230
+ }
231
+ // verify required parameter 'variantId' is not null or undefined
232
+ if (variantId === null || variantId === undefined) {
233
+ throw new RequiredError('variantId','Required parameter variantId was null or undefined when calling editVariant.');
234
+ }
235
+ const localVarPath = `/product-variants/{variantId}`
236
+ .replace(`{${"variantId"}}`, encodeURIComponent(String(variantId)));
237
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
238
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
239
+ let baseOptions;
240
+ if (configuration) {
241
+ baseOptions = configuration.baseOptions;
242
+ }
243
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'PATCH', ...baseOptions, ...options};
244
+ const localVarHeaderParameter = {} as any;
245
+ const localVarQueryParameter = {} as any;
246
+
247
+ // authentication bearer required
248
+ // http bearer authentication required
249
+ if (configuration && configuration.accessToken) {
250
+ const accessToken = typeof configuration.accessToken === 'function'
251
+ ? await configuration.accessToken()
252
+ : await configuration.accessToken;
253
+ localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
254
+ }
255
+
256
+ // authentication x-store-key required
257
+ if (configuration && configuration.apiKey) {
258
+ const localVarApiKeyValue = typeof configuration.apiKey === 'function'
259
+ ? await configuration.apiKey("x-store-key")
260
+ : await configuration.apiKey;
261
+ localVarHeaderParameter["x-store-key"] = localVarApiKeyValue;
262
+ }
263
+
264
+ localVarHeaderParameter['Content-Type'] = 'application/json';
265
+
266
+ const query = new URLSearchParams(localVarUrlObj.search);
267
+ for (const key in localVarQueryParameter) {
268
+ query.set(key, localVarQueryParameter[key]);
269
+ }
270
+ for (const key in options.params) {
271
+ query.set(key, options.params[key]);
272
+ }
273
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
274
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
275
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
276
+ const needsSerialization = (typeof body !== "string") || (localVarRequestOptions.headers ||= {})['Content-Type'] === 'application/json';
277
+ localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || "");
278
+
279
+ return {
280
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
281
+ options: localVarRequestOptions,
282
+ };
283
+ },
284
+ /**
285
+ *
286
+ * @summary Get all variants of a product
287
+ * @param {string} productId Product ID
288
+ * @param {*} [options] Override http request option.
289
+ * @throws {RequiredError}
290
+ */
291
+ getAllVariants: async (productId: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
292
+ // verify required parameter 'productId' is not null or undefined
293
+ if (productId === null || productId === undefined) {
294
+ throw new RequiredError('productId','Required parameter productId was null or undefined when calling getAllVariants.');
295
+ }
296
+ const localVarPath = `/product-variants/allVariants/{productId}`
297
+ .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
298
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
299
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
300
+ let baseOptions;
301
+ if (configuration) {
302
+ baseOptions = configuration.baseOptions;
303
+ }
304
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'GET', ...baseOptions, ...options};
305
+ const localVarHeaderParameter = {} as any;
306
+ const localVarQueryParameter = {} as any;
307
+
308
+ // authentication bearer required
309
+ // http bearer authentication required
310
+ if (configuration && configuration.accessToken) {
311
+ const accessToken = typeof configuration.accessToken === 'function'
312
+ ? await configuration.accessToken()
313
+ : await configuration.accessToken;
314
+ localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
315
+ }
316
+
317
+ // authentication x-store-key required
318
+ if (configuration && configuration.apiKey) {
319
+ const localVarApiKeyValue = typeof configuration.apiKey === 'function'
320
+ ? await configuration.apiKey("x-store-key")
321
+ : await configuration.apiKey;
322
+ localVarHeaderParameter["x-store-key"] = localVarApiKeyValue;
323
+ }
324
+
325
+ const query = new URLSearchParams(localVarUrlObj.search);
326
+ for (const key in localVarQueryParameter) {
327
+ query.set(key, localVarQueryParameter[key]);
328
+ }
329
+ for (const key in options.params) {
330
+ query.set(key, options.params[key]);
331
+ }
332
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
333
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
334
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
335
+
336
+ return {
337
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
338
+ options: localVarRequestOptions,
339
+ };
340
+ },
341
+ /**
342
+ *
343
+ * @summary Get suggested product attributes
344
+ * @param {SuggestAttributes} body
345
+ * @param {*} [options] Override http request option.
346
+ * @throws {RequiredError}
347
+ */
348
+ getSuggestedProductAttributes: async (body: SuggestAttributes, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
349
+ // verify required parameter 'body' is not null or undefined
350
+ if (body === null || body === undefined) {
351
+ throw new RequiredError('body','Required parameter body was null or undefined when calling getSuggestedProductAttributes.');
352
+ }
353
+ const localVarPath = `/product-variants/suggested-product-attributes`;
354
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
355
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
356
+ let baseOptions;
357
+ if (configuration) {
358
+ baseOptions = configuration.baseOptions;
359
+ }
360
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options};
361
+ const localVarHeaderParameter = {} as any;
362
+ const localVarQueryParameter = {} as any;
363
+
364
+ // authentication bearer required
365
+ // http bearer authentication required
366
+ if (configuration && configuration.accessToken) {
367
+ const accessToken = typeof configuration.accessToken === 'function'
368
+ ? await configuration.accessToken()
369
+ : await configuration.accessToken;
370
+ localVarHeaderParameter["Authorization"] = "Bearer " + accessToken;
371
+ }
372
+
373
+ // authentication x-store-key required
374
+ if (configuration && configuration.apiKey) {
375
+ const localVarApiKeyValue = typeof configuration.apiKey === 'function'
376
+ ? await configuration.apiKey("x-store-key")
377
+ : await configuration.apiKey;
378
+ localVarHeaderParameter["x-store-key"] = localVarApiKeyValue;
379
+ }
380
+
381
+ localVarHeaderParameter['Content-Type'] = 'application/json';
382
+
383
+ const query = new URLSearchParams(localVarUrlObj.search);
384
+ for (const key in localVarQueryParameter) {
385
+ query.set(key, localVarQueryParameter[key]);
386
+ }
387
+ for (const key in options.params) {
388
+ query.set(key, options.params[key]);
389
+ }
390
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
391
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
392
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
393
+ const needsSerialization = (typeof body !== "string") || (localVarRequestOptions.headers ||= {})['Content-Type'] === 'application/json';
394
+ localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || "");
395
+
396
+ return {
397
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
398
+ options: localVarRequestOptions,
399
+ };
400
+ },
401
+ }
402
+ };
403
+
404
+ /**
405
+ * ProductVariantsApi - functional programming interface
406
+ * @export
407
+ */
408
+ export const ProductVariantsApiFp = function(configuration?: Configuration) {
409
+ return {
410
+ /**
411
+ *
412
+ * @summary Create bulk variants for a product
413
+ * @param {Array<CreateVariantDto>} body
414
+ * @param {string} productId Product ID
415
+ * @param {*} [options] Override http request option.
416
+ * @throws {RequiredError}
417
+ */
418
+ async createBulkVariants(body: Array<CreateVariantDto>, productId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<Array<ProductVariant>>>> {
419
+ const localVarAxiosArgs = await ProductVariantsApiAxiosParamCreator(configuration).createBulkVariants(body, productId, options);
420
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
421
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
422
+ return axios.request(axiosRequestArgs);
423
+ };
424
+ },
425
+ /**
426
+ *
427
+ * @summary Create a variant for a product
428
+ * @param {CreateVariantDto} body
429
+ * @param {string} productId Product ID
430
+ * @param {*} [options] Override http request option.
431
+ * @throws {RequiredError}
432
+ */
433
+ async createVariant(body: CreateVariantDto, productId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<ProductVariant>>> {
434
+ const localVarAxiosArgs = await ProductVariantsApiAxiosParamCreator(configuration).createVariant(body, productId, options);
435
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
436
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
437
+ return axios.request(axiosRequestArgs);
438
+ };
439
+ },
440
+ /**
441
+ *
442
+ * @summary Delete a variant
443
+ * @param {string} variantId
444
+ * @param {*} [options] Override http request option.
445
+ * @throws {RequiredError}
446
+ */
447
+ async deleteVariant(variantId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>> {
448
+ const localVarAxiosArgs = await ProductVariantsApiAxiosParamCreator(configuration).deleteVariant(variantId, options);
449
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
450
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
451
+ return axios.request(axiosRequestArgs);
452
+ };
453
+ },
454
+ /**
455
+ *
456
+ * @summary Edit a variant
457
+ * @param {UpdateProductVariantDto} body
458
+ * @param {string} variantId
459
+ * @param {*} [options] Override http request option.
460
+ * @throws {RequiredError}
461
+ */
462
+ async editVariant(body: UpdateProductVariantDto, variantId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<ProductVariant>>> {
463
+ const localVarAxiosArgs = await ProductVariantsApiAxiosParamCreator(configuration).editVariant(body, variantId, options);
464
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
465
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
466
+ return axios.request(axiosRequestArgs);
467
+ };
468
+ },
469
+ /**
470
+ *
471
+ * @summary Get all variants of a product
472
+ * @param {string} productId Product ID
473
+ * @param {*} [options] Override http request option.
474
+ * @throws {RequiredError}
475
+ */
476
+ async getAllVariants(productId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<Array<ProductVariant>>>> {
477
+ const localVarAxiosArgs = await ProductVariantsApiAxiosParamCreator(configuration).getAllVariants(productId, options);
478
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
479
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
480
+ return axios.request(axiosRequestArgs);
481
+ };
482
+ },
483
+ /**
484
+ *
485
+ * @summary Get suggested product attributes
486
+ * @param {SuggestAttributes} body
487
+ * @param {*} [options] Override http request option.
488
+ * @throws {RequiredError}
489
+ */
490
+ async getSuggestedProductAttributes(body: SuggestAttributes, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>> {
491
+ const localVarAxiosArgs = await ProductVariantsApiAxiosParamCreator(configuration).getSuggestedProductAttributes(body, options);
492
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
493
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
494
+ return axios.request(axiosRequestArgs);
495
+ };
496
+ },
497
+ }
498
+ };
499
+
500
+ /**
501
+ * ProductVariantsApi - factory interface
502
+ * @export
503
+ */
504
+ export const ProductVariantsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
505
+ return {
506
+ /**
507
+ *
508
+ * @summary Create bulk variants for a product
509
+ * @param {Array<CreateVariantDto>} body
510
+ * @param {string} productId Product ID
511
+ * @param {*} [options] Override http request option.
512
+ * @throws {RequiredError}
513
+ */
514
+ async createBulkVariants(body: Array<CreateVariantDto>, productId: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<ProductVariant>>> {
515
+ return ProductVariantsApiFp(configuration).createBulkVariants(body, productId, options).then((request) => request(axios, basePath));
516
+ },
517
+ /**
518
+ *
519
+ * @summary Create a variant for a product
520
+ * @param {CreateVariantDto} body
521
+ * @param {string} productId Product ID
522
+ * @param {*} [options] Override http request option.
523
+ * @throws {RequiredError}
524
+ */
525
+ async createVariant(body: CreateVariantDto, productId: string, options?: AxiosRequestConfig): Promise<AxiosResponse<ProductVariant>> {
526
+ return ProductVariantsApiFp(configuration).createVariant(body, productId, options).then((request) => request(axios, basePath));
527
+ },
528
+ /**
529
+ *
530
+ * @summary Delete a variant
531
+ * @param {string} variantId
532
+ * @param {*} [options] Override http request option.
533
+ * @throws {RequiredError}
534
+ */
535
+ async deleteVariant(variantId: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>> {
536
+ return ProductVariantsApiFp(configuration).deleteVariant(variantId, options).then((request) => request(axios, basePath));
537
+ },
538
+ /**
539
+ *
540
+ * @summary Edit a variant
541
+ * @param {UpdateProductVariantDto} body
542
+ * @param {string} variantId
543
+ * @param {*} [options] Override http request option.
544
+ * @throws {RequiredError}
545
+ */
546
+ async editVariant(body: UpdateProductVariantDto, variantId: string, options?: AxiosRequestConfig): Promise<AxiosResponse<ProductVariant>> {
547
+ return ProductVariantsApiFp(configuration).editVariant(body, variantId, options).then((request) => request(axios, basePath));
548
+ },
549
+ /**
550
+ *
551
+ * @summary Get all variants of a product
552
+ * @param {string} productId Product ID
553
+ * @param {*} [options] Override http request option.
554
+ * @throws {RequiredError}
555
+ */
556
+ async getAllVariants(productId: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<ProductVariant>>> {
557
+ return ProductVariantsApiFp(configuration).getAllVariants(productId, options).then((request) => request(axios, basePath));
558
+ },
559
+ /**
560
+ *
561
+ * @summary Get suggested product attributes
562
+ * @param {SuggestAttributes} body
563
+ * @param {*} [options] Override http request option.
564
+ * @throws {RequiredError}
565
+ */
566
+ async getSuggestedProductAttributes(body: SuggestAttributes, options?: AxiosRequestConfig): Promise<AxiosResponse<void>> {
567
+ return ProductVariantsApiFp(configuration).getSuggestedProductAttributes(body, options).then((request) => request(axios, basePath));
568
+ },
569
+ };
570
+ };
571
+
572
+ /**
573
+ * ProductVariantsApi - object-oriented interface
574
+ * @export
575
+ * @class ProductVariantsApi
576
+ * @extends {BaseAPI}
577
+ */
578
+ export class ProductVariantsApi extends BaseAPI {
579
+ /**
580
+ *
581
+ * @summary Create bulk variants for a product
582
+ * @param {Array<CreateVariantDto>} body
583
+ * @param {string} productId Product ID
584
+ * @param {*} [options] Override http request option.
585
+ * @throws {RequiredError}
586
+ * @memberof ProductVariantsApi
587
+ */
588
+ public async createBulkVariants(body: Array<CreateVariantDto>, productId: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<Array<ProductVariant>>> {
589
+ return ProductVariantsApiFp(this.configuration).createBulkVariants(body, productId, options).then((request) => request(this.axios, this.basePath));
590
+ }
591
+ /**
592
+ *
593
+ * @summary Create a variant for a product
594
+ * @param {CreateVariantDto} body
595
+ * @param {string} productId Product ID
596
+ * @param {*} [options] Override http request option.
597
+ * @throws {RequiredError}
598
+ * @memberof ProductVariantsApi
599
+ */
600
+ public async createVariant(body: CreateVariantDto, productId: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<ProductVariant>> {
601
+ return ProductVariantsApiFp(this.configuration).createVariant(body, productId, options).then((request) => request(this.axios, this.basePath));
602
+ }
603
+ /**
604
+ *
605
+ * @summary Delete a variant
606
+ * @param {string} variantId
607
+ * @param {*} [options] Override http request option.
608
+ * @throws {RequiredError}
609
+ * @memberof ProductVariantsApi
610
+ */
611
+ public async deleteVariant(variantId: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<void>> {
612
+ return ProductVariantsApiFp(this.configuration).deleteVariant(variantId, options).then((request) => request(this.axios, this.basePath));
613
+ }
614
+ /**
615
+ *
616
+ * @summary Edit a variant
617
+ * @param {UpdateProductVariantDto} body
618
+ * @param {string} variantId
619
+ * @param {*} [options] Override http request option.
620
+ * @throws {RequiredError}
621
+ * @memberof ProductVariantsApi
622
+ */
623
+ public async editVariant(body: UpdateProductVariantDto, variantId: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<ProductVariant>> {
624
+ return ProductVariantsApiFp(this.configuration).editVariant(body, variantId, options).then((request) => request(this.axios, this.basePath));
625
+ }
626
+ /**
627
+ *
628
+ * @summary Get all variants of a product
629
+ * @param {string} productId Product ID
630
+ * @param {*} [options] Override http request option.
631
+ * @throws {RequiredError}
632
+ * @memberof ProductVariantsApi
633
+ */
634
+ public async getAllVariants(productId: string, options?: AxiosRequestConfig) : Promise<AxiosResponse<Array<ProductVariant>>> {
635
+ return ProductVariantsApiFp(this.configuration).getAllVariants(productId, options).then((request) => request(this.axios, this.basePath));
636
+ }
637
+ /**
638
+ *
639
+ * @summary Get suggested product attributes
640
+ * @param {SuggestAttributes} body
641
+ * @param {*} [options] Override http request option.
642
+ * @throws {RequiredError}
643
+ * @memberof ProductVariantsApi
644
+ */
645
+ public async getSuggestedProductAttributes(body: SuggestAttributes, options?: AxiosRequestConfig) : Promise<AxiosResponse<void>> {
646
+ return ProductVariantsApiFp(this.configuration).getSuggestedProductAttributes(body, options).then((request) => request(this.axios, this.basePath));
647
+ }
648
+ }